:root{--pink:#ee2b83;--deep:#cf1767;--soft:#fff1f6;--rose:#f8d5e2;--gold:#c59a52;--ink:#2c2428;--muted:#756a70;--line:#eadde2;--white:#fff;--shadow:0 14px 40px rgba(86,38,58,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fffafb}button,input,textarea{font:inherit}.shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}.announcement{background:var(--pink);color:#fff;text-align:center;padding:7px;font-size:.84rem}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-row{height:96px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:15px;color:inherit;text-decoration:none}.brand img{width:76px;height:76px;border-radius:50%;object-fit:cover;box-shadow:0 5px 16px #d5a4b6}.brand strong{display:block;font:700 1.75rem 'Playfair Display';color:#b87523}.brand span{font-size:.78rem;color:var(--muted)}.header-actions{display:flex;gap:12px}.icon-action{position:relative;border:0;background:none;padding:8px 12px;display:grid;justify-items:center;cursor:pointer}.icon-action span{font-size:1.65rem;color:var(--deep)}.icon-action small{font-weight:600}.icon-action b{position:absolute;right:3px;top:2px;background:var(--pink);color:white;border-radius:99px;min-width:19px;padding:2px;font-size:.7rem}.search-row label{height:45px;border:1px solid #edd6df;border-radius:99px;display:flex;align-items:center;background:#fff;box-shadow:0 4px 18px rgba(73,34,50,.07);padding:0 18px}.search-row span{font-size:1.35rem;color:var(--pink)}.search-row input{border:0;outline:0;width:100%;padding:10px;background:transparent;font-size:1rem}.categories{display:flex;justify-content:center;gap:8px;padding:10px 0}.categories button{border:0;background:transparent;padding:10px 18px;border-radius:99px;font-weight:600;cursor:pointer}.categories button.active,.categories button:hover{background:var(--pink);color:#fff}.mobile-menu{display:none}.hero{margin-top:20px;min-height:350px;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;background:radial-gradient(circle at 78% 28%,#fff 0 12%,transparent 34%),linear-gradient(120deg,#fde8f0,#fff8f2);border:1px solid #f4d7e0;box-shadow:var(--shadow)}.hero-copy{padding:55px 8%}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--deep);font-size:.8rem;font-weight:700}.hero h1{font:700 clamp(2.6rem,6vw,5rem)/.92 'Playfair Display';margin:12px 0;color:#7f3d59}.hero h1 em{color:var(--pink)}.hero p{font-size:1.08rem;color:var(--muted)}.primary{border:0;border-radius:12px;background:linear-gradient(135deg,var(--pink),var(--deep));color:#fff;font-weight:700;padding:14px 23px;cursor:pointer;box-shadow:0 8px 20px rgba(238,43,131,.25)}.hero-art{height:100%;display:grid;place-items:center;padding:25px}.hero-art img{width:min(270px,82%);aspect-ratio:1;border-radius:50%;object-fit:cover;filter:drop-shadow(0 18px 20px rgba(123,58,77,.2))}.benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);margin-top:18px;border:1px solid var(--line);border-radius:18px;overflow:hidden}.benefits article{background:#fff;display:flex;align-items:center;gap:11px;padding:18px 12px}.benefits i{font-style:normal;color:var(--pink);font-size:1.45rem}.benefits .whatsapp{color:#17a75a}.benefits b,.benefits small{display:block}.benefits span{font-size:.76rem}.benefits b{font-size:.86rem}.products-section{padding-block:48px}.section-title{display:flex;justify-content:space-between;align-items:end}.section-title span{color:var(--pink);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}.section-title h2{font:700 2rem 'Playfair Display';margin:4px 0}.section-title button{border:0;background:none;color:var(--deep);font-weight:700;cursor:pointer}.status{text-align:center;padding:35px;color:var(--muted)}.status:empty{display:none}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;position:relative;box-shadow:0 5px 18px rgba(87,43,62,.06);transition:.2s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-photo{aspect-ratio:4/5;background:#f8edf1;position:relative;overflow:hidden;cursor:pointer}.product-photo img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;left:10px;bottom:10px;background:var(--pink);color:#fff;border-radius:99px;padding:5px 10px;font-size:.72rem;font-weight:700}.favorite{position:absolute;z-index:2;right:10px;top:10px;width:36px;height:36px;border-radius:50%;border:1px solid #f4bfd2;background:rgba(255,255,255,.92);color:var(--pink);font-size:1.3rem;cursor:pointer}.favorite.on{background:var(--pink);color:#fff}.product-info{padding:14px}.product-info h3{margin:0 0 6px;font-size:1rem}.variant-preview{display:flex;gap:6px;flex-wrap:wrap;min-height:28px}.variant-preview span{border:1px solid var(--line);padding:4px 8px;border-radius:99px;font-size:.72rem}.price{font-size:1.25rem;font-weight:800;margin:10px 0}.product-info .primary{width:100%;padding:11px}.product-info .primary:disabled{background:#aaa;box-shadow:none}.overlay{position:fixed;inset:0;background:rgba(42,25,32,.42);z-index:39;opacity:0;pointer-events:none;transition:.2s}.overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;z-index:40;right:0;top:0;height:100%;width:min(470px,100%);background:white;padding:24px;overflow:auto;transform:translateX(105%);transition:.25s;box-shadow:-20px 0 55px rgba(51,24,35,.16)}.drawer.open{transform:none}.close{border:0;background:#f8edf1;width:38px;height:38px;border-radius:50%;font-size:1.5rem;cursor:pointer}.drawer>.close{float:right}.detail-image{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px;margin-top:12px}.detail h2{font:700 2rem 'Playfair Display';margin:18px 0 5px}.choice{margin:18px 0}.choice>strong{display:block;margin-bottom:8px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer}.chips button.active{border-color:var(--pink);background:var(--soft);color:var(--deep)}.chips button:disabled{opacity:.35;text-decoration:line-through}.quantity{display:flex;align-items:center;gap:14px}.quantity button{width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:#fff}.drawer-title{display:flex;justify-content:space-between;align-items:center}.cart-line{display:grid;grid-template-columns:72px 1fr auto;gap:12px;border-bottom:1px solid var(--line);padding:15px 0}.cart-line img{width:72px;height:86px;object-fit:cover;border-radius:10px;background:#f8edf1}.cart-line h3{font-size:.95rem;margin:0 0 5px}.cart-line small{display:block;color:var(--muted)}.cart-line .remove{border:0;background:none;color:var(--pink);cursor:pointer}.mini-qty{display:flex;align-items:center;gap:7px;margin-top:8px}.mini-qty button{border:1px solid var(--line);background:#fff;border-radius:5px}.coupon{margin:20px 0}.coupon label{font-weight:700;display:block;margin-bottom:7px}.coupon>div{display:flex}.coupon input{border:1px solid var(--line);border-radius:10px 0 0 10px;padding:11px;min-width:0;flex:1}.coupon button{border:0;background:var(--pink);color:#fff;border-radius:0 10px 10px 0;padding:0 14px}.summary p{display:flex;justify-content:space-between;margin:10px 0}.summary .total{border-top:1px solid var(--line);padding-top:14px;font-size:1.25rem}.full{width:100%;margin-top:10px}.whatsapp-btn{border:0;border-radius:12px;background:#18a95b;color:#fff;font-weight:700;padding:14px;cursor:pointer}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:15;border:0;border-radius:99px;background:#18a95b;color:#fff;padding:13px 18px;font-weight:700;box-shadow:var(--shadow)}.checkout{display:none;position:fixed;inset:0;z-index:30;background:#fffafb;overflow:auto}.checkout.open{display:block}.checkout-head{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.checkout-head img{width:62px;height:62px;border-radius:50%}.checkout-head button{border:0;background:none;font-weight:700}.checkout-grid{display:grid;grid-template-columns:1fr 380px;gap:28px;padding-block:30px}.checkout-main,.order-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;height:max-content}.step{display:flex;align-items:center;gap:10px;margin-top:15px}.step span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--pink);color:#fff;font-weight:700}.step h2{font:700 1.35rem 'Playfair Display'}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.option-grid label{border:1px solid var(--line);border-radius:12px;padding:14px;cursor:pointer}.option-grid label:has(input:checked){border-color:var(--pink);background:var(--soft)}.option-grid b,.option-grid small{display:block;margin:5px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label{font-size:.86rem;font-weight:600}.fields input,.fields textarea{display:block;width:100%;border:1px solid var(--line);border-radius:10px;padding:11px;margin-top:6px}.fields textarea{min-height:72px;resize:vertical}.nested{grid-column:1/-1}.wide{grid-column:1/-1}.hidden{display:none!important}.order-card{position:sticky;top:20px}.secure{text-align:center;font-size:.78rem;color:var(--muted)}.toast{position:fixed;z-index:60;bottom:20px;left:50%;transform:translate(-50%,30px);background:#2e2428;color:#fff;padding:12px 18px;border-radius:10px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.site-header{position:relative}.header-row{height:78px}.brand img{width:58px;height:58px}.brand strong{font-size:1.3rem}.brand span{display:none}.mobile-menu{display:block;border:0;background:none;font-size:1.4rem}.header-actions{gap:0}.icon-action small{display:none}.categories{display:none;overflow:auto;justify-content:start}.categories.open{display:flex}.hero{grid-template-columns:1fr .6fr;min-height:280px}.hero-copy{padding:34px}.hero h1{font-size:2.7rem}.benefits{grid-template-columns:repeat(2,1fr)}.benefits article:last-child{grid-column:1/-1}.product-grid{grid-template-columns:repeat(2,1fr)}.checkout-grid{grid-template-columns:1fr}.order-card{position:static}.option-grid{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.nested,.wide{grid-column:auto}}@media(max-width:480px){.shell{width:min(100% - 20px,1180px)}.header-row{height:72px}.brand{gap:7px}.brand img{width:52px;height:52px}.brand strong{font-size:1.08rem}.icon-action{padding:5px}.search-row{padding-bottom:10px}.hero{margin-top:10px;min-height:245px;border-radius:18px;grid-template-columns:1fr .54fr}.hero-copy{padding:24px 20px}.hero h1{font-size:2.2rem}.hero p{font-size:.9rem}.hero-art{padding:8px}.primary{padding:12px 14px}.benefits{display:flex;overflow:auto;border-radius:12px}.benefits article{min-width:155px}.products-section{padding-block:30px}.section-title h2{font-size:1.55rem}.product-grid{gap:10px}.product-card{border-radius:13px}.product-info{padding:10px}.product-info h3{font-size:.9rem}.price{font-size:1.05rem}.product-info .primary{font-size:.78rem}.drawer{padding:16px}.checkout-head span{display:none}.checkout-main,.order-card{padding:16px}.floating-wa{right:12px;bottom:12px}}

/* Diseño boutique compacto basado en las referencias definitivas */
:root{--pink:#ed2d83;--deep:#d81870;--soft:#fff1f7;--rose:#f8d5e4;--gold:#b8893f;--ink:#251f22;--muted:#75666d;--line:#efd8e2;--shadow:0 10px 28px rgba(112,52,77,.13)}
body{background:linear-gradient(180deg,#fff 0,#fff9fb 68%,#fff3f7 100%)}
.shell{width:min(1120px,calc(100% - 28px))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.announcement{padding:5px 12px;background:linear-gradient(90deg,#dc1f70,#f05a9c,#dc1f70);font-size:.72rem;letter-spacing:.04em}
.site-header{position:relative;top:auto;background:#fff;border:0;backdrop-filter:none}
.brand-banner{height:258px;margin-top:10px;border:1px solid #f2d5df;border-radius:19px 19px 8px 8px;background:url('assets/encabezado-referencia.jpeg') center/cover no-repeat;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.brand-home{position:absolute;inset:0}.header-actions{position:absolute;z-index:2;right:22px;top:18px;gap:8px;padding:4px 8px;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.78);backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 7px 20px rgba(93,45,64,.12)}
.icon-action{min-width:74px;padding:5px 9px}.icon-action span{font-size:1.48rem}.icon-action small{font-size:.72rem}.icon-action b{right:5px;top:1px}
.shop-tools{display:flex;align-items:center;margin-top:-23px;position:relative;z-index:4;padding-inline:6%}.mobile-menu{display:none}.search-box{width:100%;height:46px;border:1px solid #efd3de;border-radius:999px;display:flex;align-items:center;background:rgba(255,255,255,.97);box-shadow:0 6px 18px rgba(92,45,64,.14);padding-left:17px}.search-box>span{font-size:1.35rem;color:#9d8e94}.search-box input{min-width:0;flex:1;border:0;outline:0;padding:10px;background:transparent}.search-box>button{width:39px;height:39px;border:0;border-radius:50%;margin-right:3px;background:linear-gradient(135deg,#f14c98,#db1c73);color:#fff;font-size:1.75rem;line-height:1;cursor:pointer}
.categories{margin-top:10px;padding:6px;background:linear-gradient(180deg,#fff6fa,#fde3ed);border:1px solid #f0ccda;border-radius:999px;box-shadow:0 5px 16px rgba(95,43,66,.10);gap:3px;overflow-x:auto;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.categories button{white-space:nowrap;padding:8px 16px;font-size:.82rem}.categories button.active,.categories button:hover{box-shadow:0 5px 12px rgba(218,28,112,.22)}
.hero-carousel{position:relative;margin-top:13px;height:330px;border:1px solid #efd9df;border-radius:15px;overflow:hidden;background:#fbe3eb;box-shadow:var(--shadow);touch-action:pan-y}.carousel-track{height:100%;display:flex;transition:transform .42s cubic-bezier(.2,.7,.2,1)}.carousel-slide{position:relative;flex:0 0 100%;height:100%;overflow:hidden}.carousel-slide>img{width:100%;height:100%;object-fit:cover}.carousel-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 22%,rgba(255,250,251,.88) 39%,rgba(255,250,251,.9) 62%,transparent 78%);pointer-events:none}.slide-copy{position:absolute;z-index:1;left:50%;top:50%;width:42%;transform:translate(-50%,-50%);text-align:center;color:#5b3442;text-shadow:0 1px 0 #fff}.slide-copy>span{font-size:1.75rem;color:var(--gold)}.slide-copy h1,.slide-copy h2{font:700 clamp(2.25rem,4.3vw,4rem)/.84 'Playfair Display';margin:3px 0 14px;color:#7e3654}.slide-copy em{font-weight:600;color:#9c365c}.slide-copy p{margin:0 0 16px;font-weight:600}.slide-copy .primary{padding:11px 24px;border-radius:999px}
.carousel-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:39px;height:39px;border-radius:50%;border:1px solid #e8cad6;background:rgba(255,255,255,.9);color:var(--deep);font-size:2rem;line-height:1;box-shadow:0 4px 14px rgba(64,33,46,.15);cursor:pointer}.carousel-arrow.prev{left:12px}.carousel-arrow.next{right:12px}.carousel-dots{position:absolute;z-index:3;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:8px}.carousel-dots button{width:9px;height:9px;border:1px solid #ba9da8;border-radius:50%;padding:0;background:#fff;cursor:pointer}.carousel-dots button.active{width:21px;border-color:var(--pink);background:var(--pink)}
.benefits{margin-top:10px;border-radius:12px;background:#f4dce5;border-color:#f4dce5}.benefits article{padding:12px 10px}.benefits i{font-size:1.3rem}.benefits b{font-size:.78rem}.benefits span{font-size:.68rem}
.products-section{padding-block:34px 48px}.section-title{align-items:center}.section-title h2{font:700 1.72rem 'DM Sans';margin:0;color:#211d1f}.section-title span{display:block;margin-top:3px;font-size:.68rem;letter-spacing:.08em;color:#be7b35}.product-grid{gap:13px}.product-card{border-radius:13px;box-shadow:0 4px 13px rgba(85,40,57,.08)}.product-card:hover{transform:translateY(-2px)}.product-photo{aspect-ratio:4/4.35}.favorite{width:31px;height:31px;font-size:1.05rem}.product-info{padding:11px}.product-info h3{font-size:.92rem}.variant-preview span{padding:3px 7px}.price{font-size:1.08rem;margin:7px 0}.product-info .primary{border-radius:8px;padding:9px;font-size:.82rem;box-shadow:none}
.drawer{width:min(410px,100%);padding:20px;border-left:1px solid #f1d6e0}.drawer-title h2{font-size:1.25rem}.product-drawer{}.detail-image{aspect-ratio:4/4.4}.detail h2{font-size:1.65rem}.choice{margin:14px 0}.chips button{padding:8px 12px}.cart-line{grid-template-columns:62px 1fr auto;padding:12px 0}.cart-line img{width:62px;height:75px}.coupon{margin:15px 0}.checkout{background:#fff7fa}.checkout-grid{max-width:1050px}.checkout-main,.order-card{border-radius:14px}.floating-wa{font-size:.8rem}
#productDrawer{width:min(820px,100%)}.detail-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,.92fr);gap:23px;clear:both;padding-top:10px}.detail-gallery{min-width:0}.detail-image{width:100%;margin:0;aspect-ratio:4/4.8;border-radius:13px}.empty-photo{display:grid;place-items:center;background:#f8edf1;color:var(--muted)}.detail-thumbs{display:flex;gap:7px;margin-top:8px;overflow-x:auto}.detail-thumbs button{flex:0 0 56px;width:56px;height:65px;padding:2px;border:1px solid var(--line);border-radius:8px;background:#fff}.detail-thumbs button.active{border:2px solid var(--pink)}.detail-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:5px}.detail-heading{display:flex;justify-content:space-between;gap:12px}.detail-heading span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700}.detail-heading h2{margin:3px 0 4px}.detail-fav{flex:0 0 38px;width:38px;height:38px;border:1px solid #efbdd1;border-radius:9px;background:#fff;color:var(--pink);font-size:1.25rem}.detail-fav.on{background:var(--pink);color:#fff}.detail-data>.price{color:var(--deep);font-size:1.45rem}.stock-message{display:block;margin-top:8px;text-align:center;color:var(--muted)}.detail-perks{grid-column:1/-1;display:flex;justify-content:space-around;gap:10px;padding:12px;border-radius:10px;background:#fff4f8;color:#6d4f5b;font-size:.74rem;font-weight:700}
@media(max-width:850px){.brand-banner{height:210px;background-position:center}.header-actions{right:10px;top:10px}.categories{display:flex;justify-content:flex-start}.mobile-menu{display:none}.hero-carousel{height:285px}.slide-copy{width:52%}.carousel-slide:after{background:linear-gradient(90deg,transparent 0 13%,rgba(255,250,251,.9) 35%,rgba(255,250,251,.9) 68%,transparent 88%)}.benefits{display:flex;overflow-x:auto}.benefits article{min-width:190px;grid-column:auto!important}.product-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr}.detail-perks{flex-wrap:wrap}.detail-image{max-height:520px}}
@media(max-width:560px){.shell{width:min(100% - 14px,1120px)}.announcement{font-size:.64rem}.brand-banner{height:145px;margin-top:6px;border-radius:12px 12px 6px 6px;background-position:center}.header-actions{top:6px;right:6px;padding:2px 4px;border-radius:11px}.icon-action{min-width:45px;padding:3px 4px}.icon-action span{font-size:1.18rem}.icon-action small{font-size:.55rem}.icon-action b{font-size:.58rem;min-width:16px}.shop-tools{margin-top:-15px;padding-inline:4%}.search-box{height:40px;padding-left:12px}.search-box input{font-size:.78rem;padding:8px}.search-box>button{width:34px;height:34px}.categories{margin-top:7px;padding:4px;border-radius:12px}.categories button{padding:7px 11px;font-size:.7rem}.hero-carousel{height:215px;margin-top:8px;border-radius:11px}.carousel-slide>img{object-position:center}.carousel-slide:after{background:linear-gradient(90deg,transparent 0 7%,rgba(255,250,251,.9) 28%,rgba(255,250,251,.93) 72%,transparent 94%)}.slide-copy{width:64%}.slide-copy>span{font-size:1rem}.slide-copy h1,.slide-copy h2{font-size:1.7rem;margin:2px 0 7px}.slide-copy p{font-size:.7rem;margin-bottom:9px}.slide-copy .primary{padding:8px 15px;font-size:.7rem}.carousel-arrow{width:31px;height:31px;font-size:1.55rem}.carousel-arrow.prev{left:6px}.carousel-arrow.next{right:6px}.carousel-dots{bottom:6px}.benefits{margin-top:7px;border-radius:9px}.benefits article{min-width:150px;padding:9px 8px}.products-section{padding-block:25px 35px}.section-title h2{font-size:1.35rem}.section-title span{font-size:.58rem}.section-title button{font-size:.72rem}.product-grid{gap:8px}.product-info{padding:9px}.variant-preview{gap:4px}.variant-preview span{font-size:.64rem}.drawer{padding:14px}.floating-wa{right:10px;bottom:10px}}
