:root{--pink:#ff74b7;--pink-soft:#ffe5f0;--ink:#151215;--paper:#fffdfd;--muted:#716970;--line:#e9e2e5;--serif:'Playfair Display',serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;width:100%}button{font:inherit}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:20;background:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.catalog-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:78px;padding:0 clamp(1.25rem,4vw,4.5rem);border-bottom:1px solid var(--line);background:rgba(255,253,253,.94);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--serif);font-size:1.3rem;font-weight:600;line-height:1}.brand small{display:block;margin-top:.32rem;font:600 .56rem var(--sans);letter-spacing:.15em;text-transform:uppercase}.brand-moon{font-size:2.2rem;line-height:1;transform:rotate(-12deg)}nav{display:flex;align-items:center;gap:2rem;font-size:.82rem;font-weight:700}.header-whatsapp,.cta-button{display:inline-flex;align-items:center;gap:.5rem;border-radius:99px;background:var(--ink);color:#fff}.header-whatsapp{padding:.7rem 1rem}.catalog-hero{max-width:1320px;margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.4rem,5vw,5.5rem) clamp(3rem,5vw,5rem)}.back-link{display:inline-block;margin-bottom:3rem;border-bottom:1px solid;padding-bottom:.2rem;font-size:.78rem;font-weight:700}.eyebrow{margin:0 0 1rem;color:var(--pink);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.catalog-hero h1,.catalog-cta h2{margin:0;font-family:var(--serif);font-size:clamp(3.75rem,7.5vw,8rem);font-weight:600;letter-spacing:-.055em;line-height:.88}.catalog-hero h1 em{color:var(--pink);font-style:italic}.catalog-hero>p:last-child{max-width:530px;margin:2rem 0 0;color:var(--muted);font-size:1.05rem}.catalog-content{padding:0 clamp(1.4rem,5vw,5.5rem) clamp(5rem,10vw,9rem)}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:2rem;max-width:1320px;margin:0 auto 2.2rem;border-top:1px solid var(--ink);padding-top:1rem}.catalog-toolbar p{margin:0;font-size:.82rem}.filters{display:flex;gap:.5rem;overflow:auto}.filters button{flex:none;border:1px solid var(--line);border-radius:99px;background:#fff;padding:.65rem .9rem;cursor:pointer;font-size:.74rem;font-weight:700;white-space:nowrap}.filters button.active,.filters button:hover{border-color:var(--ink);background:var(--ink);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1320px;margin:auto}.product-card[hidden]{display:none}.product-image{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--pink-soft)}.product-image img{height:100%;object-fit:cover;transition:transform .5s ease}.product-card:hover .product-image img{transform:scale(1.04)}.product-image span{position:absolute;top:1rem;left:1rem;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#fff;font-size:.66rem;font-weight:700}.product-info{padding:1rem 0 1.8rem}.product-info p{margin:0 0 .3rem;color:var(--pink);font-size:.67rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.product-info h2{margin:0;font-family:var(--serif);font-size:1.65rem;font-weight:600;line-height:1.05}.product-info>span{display:block;margin:.5rem 0 1rem;color:var(--muted);font-size:.82rem}.product-action{display:inline-flex;align-items:center;gap:.4rem;border-bottom:1px solid;padding-bottom:.2rem;font-size:.75rem;font-weight:700}.empty-state{max-width:500px;margin:4rem auto;text-align:center}.empty-state p{color:var(--muted)}.catalog-cta{padding:clamp(6rem,10vw,9rem) 1.4rem;background:var(--pink-soft);text-align:center}.catalog-cta h2{font-size:clamp(3rem,6vw,6.5rem)}.catalog-cta>p:not(.eyebrow){max-width:460px;margin:1.4rem auto 2rem;color:var(--muted)}.cta-button{min-height:54px;padding:.85rem 1.25rem;font-size:.8rem;font-weight:700}footer{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;align-items:end;gap:2rem;padding:3.5rem clamp(1.4rem,5vw,5.5rem);background:var(--ink);color:#fff;font-size:.78rem}footer p{margin:0;color:#c7bec3}footer>a:not(.brand){border-bottom:1px solid #70666c;width:max-content}.fa-whatsapp{color:inherit}@media(max-width:850px){.product-grid{grid-template-columns:repeat(2,1fr)}.catalog-toolbar{align-items:flex-start;flex-direction:column;gap:1rem}.filters{width:100%;padding-bottom:.25rem}.catalog-header{height:68px}footer{grid-template-columns:1fr 1fr}}@media(max-width:560px){.catalog-header nav>a:not(.header-whatsapp){display:none}.catalog-header{padding:0 1.25rem}.catalog-hero{padding-top:3.2rem}.back-link{margin-bottom:2rem}.catalog-hero h1{font-size:clamp(3.4rem,15vw,4.7rem)}.product-grid{grid-template-columns:1fr;gap:.6rem}.product-image{aspect-ratio:1/1}.catalog-content{padding-bottom:5rem}.catalog-cta{padding:5rem 1.4rem}footer{grid-template-columns:1fr}.catalog-cta h2{font-size:3.25rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product-image img{transition:none}}
/* Logotipo institucional en el pie de página. */
.footer-logo{display:block;width:clamp(72px,8vw,108px);border-bottom:0!important}
.footer-logo img{border-radius:50%}
.service-intro{max-width:780px;margin:0 auto 4rem}.service-intro h2,.service-faq h2{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,4.5rem);font-weight:600;line-height:1}.service-intro p{max-width:680px;margin:1.5rem 0 0;color:var(--muted);font-size:1.05rem}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--ink);border:1px solid var(--ink)}.service-list article{padding:2rem;background:var(--paper)}.service-list h3{margin:0;font-family:var(--serif);font-size:1.65rem;line-height:1.1}.service-list p{margin:1rem 0 0;color:var(--muted)}.service-faq{max-width:780px;margin:5rem auto 0}.service-faq details{border-top:1px solid var(--line);padding:1.2rem 0}.service-faq details:last-child{border-bottom:1px solid var(--line)}.service-faq summary{cursor:pointer;font-weight:700}.service-faq p{margin:1rem 0 0;color:var(--muted)}.service-cta{margin-top:5rem;padding:clamp(3rem,6vw,5rem);background:var(--pink-soft);text-align:center}.service-cta h2{margin:0;font-family:var(--serif);font-size:clamp(2.5rem,5vw,5rem);line-height:1}.service-cta p{max-width:540px;margin:1.2rem auto 2rem;color:var(--muted)}@media(max-width:700px){.service-list{grid-template-columns:1fr}.service-faq{margin-top:3.5rem}.service-cta{margin-top:3.5rem}}
