/* Pijamas Jumy - sitio estático adaptable, listo para Cloudflare Pages */
:root{
  --paper:#fffdfb;
  --cream:#fbf6f1;
  --ink:#31253a;
  --muted:#776c7c;
  --plum:#50336d;
  --plum-dark:#39234e;
  --rose:#d86995;
  --rose-dark:#b94777;
  --line:#e9dfe6;
  --soft-purple:#f1eaf6;
  --ease:cubic-bezier(.2,.75,.24,1);
  --font:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --display:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --container:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.lightbox-open{overflow:hidden}
::selection{background:#e7b0cb;color:#281a38}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible{outline:3px solid #ec97bb;outline-offset:4px}
img{max-width:100%;display:block}
svg{display:block}
.container{width:min(var(--container),calc(100% - 80px));margin-inline:auto}
.section{padding:116px 0}
section[id]{scroll-margin-top:86px}
.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:11px 16px;background:#fff;border-radius:6px;color:#23142f}
.skip-link:focus{top:15px}

.announcement{background:var(--plum-dark);color:#f9eaf1;font:700 10px/1.2 var(--display);letter-spacing:.18em}
.announcement__inner{display:flex;align-items:center;justify-content:center;gap:34px;min-height:36px;text-align:center}
.announcement__divider{width:3px;height:3px;background:#e4a5c0;transform:rotate(45deg)}
.site-header{height:88px;position:sticky;top:0;z-index:30;background:rgba(255,253,251,.96);border-bottom:1px solid rgba(86,53,105,.09);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:height .2s ease,box-shadow .2s ease}
.site-header.is-scrolled{height:76px;box-shadow:0 12px 34px rgba(50,30,67,.065)}
.header__inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative}
.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.brand__mark{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--plum);color:#fff;box-shadow:0 5px 14px rgba(80,51,109,.17)}
.brand__mark svg{width:32px;height:32px}
.brand__text{display:flex;flex-direction:column;line-height:1.02;letter-spacing:.01em}
.brand__text>span{font:800 9px var(--display);letter-spacing:.27em;color:#80658d}
.brand__text strong{font:800 24px/.97 var(--display);letter-spacing:-.045em;color:var(--plum)}
.brand__dot{color:var(--rose)}
.nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.nav__link{font-size:12.5px;font-weight:700;color:#564961;transition:color .2s ease;white-space:nowrap}
.nav__link:hover,.nav__link.is-active{color:var(--rose-dark)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:21px;min-height:53px;padding:13px 22px;border-radius:9px;border:1px solid transparent;font:800 13px/1.25 var(--display);transition:transform .25s var(--ease),background .25s,box-shadow .25s,color .25s;white-space:nowrap;text-align:center}
.button:hover{transform:translateY(-3px)}
.button svg,.inline-link svg,.category-card__link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;transition:transform .2s}
.button:hover svg,.inline-link:hover svg,.category-card__link:hover svg{transform:translateX(4px)}
.button--header{min-height:43px;padding:10px 16px;font-size:12px;color:#fff;background:var(--plum);gap:14px}
.button--header:hover{background:var(--plum-dark);box-shadow:0 8px 20px rgba(80,51,109,.2)}
.menu-toggle{display:none;border:0;background:none;width:43px;height:43px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border-radius:9px}
.menu-toggle span{height:2px;width:24px;border-radius:9px;background:var(--plum);transition:transform .25s ease,opacity .25s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Portada */
.hero{background:linear-gradient(110deg,#fdf8f3 0%,#fefaf6 47%,#f8edf1 100%);position:relative;isolation:isolate;overflow:hidden}
.hero__glow{position:absolute;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(1px)}
.hero__glow--one{width:660px;height:660px;background:radial-gradient(circle,rgba(241,188,208,.27) 0%,rgba(248,221,229,0) 67%);left:-310px;bottom:-360px}
.hero__glow--two{width:850px;height:850px;background:radial-gradient(circle,rgba(224,203,243,.34) 0%,rgba(224,203,243,0) 67%);right:-440px;top:-380px}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:42px;min-height:650px;padding-block:60px 80px}
.hero__copy{position:relative;z-index:2;padding-top:4px}
.eyebrow{display:inline-flex;align-items:center;font:800 10px/1.4 var(--display);letter-spacing:.2em;color:var(--rose-dark);text-transform:uppercase}
.eyebrow--line{gap:12px}
.eyebrow__line{width:30px;height:1px;background:currentColor}
.hero h1{font:800 clamp(3.2rem,5.05vw,5.2rem)/1.095 var(--display);letter-spacing:-.07em;margin:27px 0 23px;max-width:620px}
.hero h1>span{color:var(--plum);display:block}
.hero__period{color:var(--rose)}
.hero__intro{color:#645a65;font-size:16px;line-height:1.9;max-width:450px;margin:0}
.hero__buttons{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:31px}
.button--primary{background:var(--plum);color:#fff;box-shadow:0 10px 22px rgba(78,50,104,.13)}
.button--primary:hover{background:var(--plum-dark);box-shadow:0 15px 27px rgba(78,50,104,.2)}
.button--text{color:var(--plum);padding:13px 0;border:0;border-bottom:1px solid rgba(80,51,109,.32);border-radius:0;min-height:45px}
.hero__facts{display:flex;align-items:center;gap:25px;margin-top:51px}
.hero__facts>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.hero__facts-label{font:800 9px/1.2 var(--display);letter-spacing:.15em;color:#918192}
.hero__facts strong{font:800 21px/1.3 var(--display);letter-spacing:-.03em;color:var(--plum)}
.hero__facts-rule{display:block;width:1px;height:42px;background:#dbcbd8}
.hero__visual{position:relative;min-width:0;padding:24px 10px 22px 19px}
.hero__frame{position:relative;z-index:1;height:515px;overflow:hidden;border-radius:205px 205px 24px 24px;border:7px solid rgba(255,255,255,.86);outline:1px solid #efdae4;box-shadow:0 22px 56px rgba(80,51,109,.17);background:#e8d8e6}
.hero__frame picture,.hero__frame img{width:100%;height:100%;display:block}
.hero__frame img{object-fit:cover;object-position:48% 50%;transition:transform .9s var(--ease)}
.hero__frame:hover img{transform:scale(1.05)}
.hero__image-shade{position:absolute;inset:45% 0 0;background:linear-gradient(to bottom,transparent,rgba(40,18,47,.32))}
.hero__image-corner{position:absolute;right:20px;bottom:20px;display:flex;align-items:flex-end;gap:9px;color:#fff;font:800 12px/1.1 var(--display);letter-spacing:.12em;text-align:right}
.hero__image-star{font-size:28px;font-weight:400;line-height:1}
.hero__tag{position:absolute;z-index:3;left:-30px;bottom:65px;background:rgba(255,255,255,.98);border:1px solid #f0dfeb;box-shadow:0 13px 38px rgba(63,36,85,.13);border-radius:12px;display:flex;align-items:center;gap:12px;padding:16px 21px}
.hero__tag-dot{width:11px;height:11px;flex:0 0 11px;border-radius:50%;background:var(--rose);box-shadow:0 0 0 5px #fce9f1}
.hero__tag strong{display:block;font:800 12.5px/1.3 var(--display);color:var(--plum)}
.hero__tag small{display:block;font-size:11px;color:#88798c;margin-top:3px}
.hero__halo{position:absolute;width:186px;height:186px;border:1px solid rgba(208,128,170,.44);border-radius:50%;top:2px;right:-46px;z-index:0}
.hero__halo::after{content:"";position:absolute;inset:19px;border:1px solid rgba(208,128,170,.32);border-radius:50%}
.hero__bottomline{position:absolute;height:1px;background:rgba(208,128,170,.2);bottom:0;left:0;right:0}
.marquee{background:var(--plum);color:#f9e9f2;overflow:hidden;min-height:52px;display:flex;align-items:center}
.marquee__track{width:min(var(--container),calc(100% - 80px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:25px}
.marquee span{white-space:nowrap;font:800 10px var(--display);letter-spacing:.13em}
.marquee i{width:4px;height:4px;flex:0 0 4px;background:#edb7cb;transform:rotate(45deg)}

/* Encabezados */
.section-heading{margin-bottom:41px}
.section-heading--split{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}
.section-heading h2,.sizes h2,.fabrics h2,.contact h2{font:800 clamp(2.55rem,4vw,4rem)/1.17 var(--display);letter-spacing:-.065em;margin:13px 0 0}
h2 em{font-style:normal;color:var(--rose)}
.section-heading--split>p{max-width:350px;margin:0 0 5px;color:var(--muted);font-size:14.5px;line-height:1.9}

/* Colección */
.collection{background:var(--paper)}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.category-card{padding:27px 27px 24px;border-radius:18px;min-height:426px;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.category-card:hover{transform:translateY(-8px);box-shadow:0 20px 38px rgba(64,42,79,.10)}
.category-card::before{content:"";position:absolute;z-index:-1;right:-92px;top:74px;width:270px;height:270px;border-radius:50%;border:1px solid currentColor;opacity:.1}
.category-card::after{content:"";position:absolute;z-index:-1;right:-55px;top:109px;width:200px;height:200px;border-radius:50%;border:1px solid currentColor;opacity:.1}
.category-card--child{background:#f8eaf0;color:#823e6a}
.category-card--women{background:#eee6f5;color:#654085}
.category-card--men{background:#e8edf5;color:#435d80}
.category-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.category-card__index{font:800 10px var(--display);letter-spacing:.15em}
.category-card__icon{width:61px;height:61px;border-radius:50%;background:rgba(255,255,255,.47);display:grid;place-items:center}
.category-card__icon svg{width:34px;height:34px}
.category-card__body{margin-top:33px;flex:1}
.category-card__small{margin:0 0 0;font-size:12px;color:#7b7081}
.category-card__size{font:800 clamp(2.3rem,3.05vw,3.25rem)/1.2 var(--display);letter-spacing:-.065em;display:block;color:currentColor;white-space:nowrap;margin:2px 0 18px}
.category-card__size span{font-size:19px;font-weight:600;letter-spacing:-.02em}
.category-card h3{font:800 21px/1.3 var(--display);color:#32263e;letter-spacing:-.04em;margin:0 0 8px}
.category-card__body>p:last-child{margin:0;font-size:13px;line-height:1.8;color:#726779;max-width:295px}
.category-card__link{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(78,51,105,.17);padding-top:18px;margin-top:28px;color:#3c294e;font:800 12px var(--display)}

/* Tallas */
.sizes{background:#3e2a52;color:#fff;position:relative;overflow:hidden}
.sizes::after{content:"";position:absolute;right:-200px;top:-280px;width:660px;height:660px;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 95px rgba(255,255,255,.014),0 0 0 190px rgba(255,255,255,.013);pointer-events:none}
.sizes__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:center;position:relative;z-index:1}
.eyebrow--light{color:#f0afc9}
.sizes h2{max-width:380px;font-size:clamp(2.8rem,4.2vw,4.1rem);margin:18px 0}
.sizes h2 em{color:#efafc7}
.sizes__intro>p{max-width:330px;color:#d6cbdc;font-size:14px;line-height:1.9;margin:0 0 26px}
.inline-link{display:inline-flex;align-items:center;gap:17px;font:800 13px var(--display);color:#f8d5e4;padding-bottom:8px;border-bottom:1px solid rgba(249,213,228,.5)}
.sizes__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.size-chip{border:1px solid rgba(239,217,239,.25);background:rgba(255,255,255,.06);padding:26px 27px 25px;border-radius:14px;min-height:130px;display:flex;flex-direction:column;justify-content:center;gap:9px;backdrop-filter:blur(5px)}
.size-chip:nth-child(1){grid-column:span 2;min-height:124px;background:rgba(219,134,172,.14)}
.size-chip>span{font:800 10px var(--display);letter-spacing:.18em;color:#dfb6d2}
.size-chip strong{font:800 clamp(2.2rem,3.2vw,3.3rem)/1.1 var(--display);letter-spacing:-.065em;color:#fff;white-space:nowrap}
.size-chip small{font:400 .6em var(--display);opacity:.5}

/* Telas */
.fabrics{background:#fcf8f5}
.fabrics__grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}
.fabrics__left h2{max-width:490px;margin:18px 0 22px}
.fabrics__left>p{max-width:390px;margin:0;color:var(--muted);font-size:15px;line-height:1.9}
.set-note{display:flex;align-items:center;gap:16px;border-top:1px solid var(--line);margin-top:39px;padding-top:27px}
.set-note__symbol{width:58px;height:58px;border-radius:14px;background:#efe4f2;display:grid;place-items:center;color:var(--plum)}
.set-note__symbol svg{width:31px;height:31px}
.set-note strong,.set-note span:not(.set-note__symbol){display:block}
.set-note strong{font:800 15px/1.4 var(--display);margin-bottom:2px}
.set-note div>span{font-size:13px;color:var(--muted)}
.fabric-stack{display:grid;gap:12px}
.fabric-card{height:110px;border-radius:13px;display:flex;align-items:center;gap:24px;padding:22px 29px;position:relative;overflow:hidden}
.fabric-card__number{font:800 10px var(--display);letter-spacing:.14em;z-index:1}
.fabric-card h3{font:800 clamp(1.5rem,2.7vw,2.2rem)/1.2 var(--display);letter-spacing:-.055em;position:relative;z-index:1;margin:0}
.fabric-card h3 span{font-weight:600}
.fabric-card--cotton{background:#f1e1eb;color:#77466a}
.fabric-card--fleece{background:#e7dfef;color:#684779}
.fabric-card--flannel{background:#ede9e4;color:#6c5d60}
.fabric-card__design{position:absolute;right:-10px;top:-48px;height:200px;width:240px;transform:rotate(-22deg);opacity:.27;pointer-events:none}
.fabric-card--cotton .fabric-card__design{background:radial-gradient(circle at center,transparent 40%,#b97698 42%,#b97698 45%,transparent 47%) 0 0/43px 43px}
.fabric-card--fleece .fabric-card__design{background:repeating-linear-gradient(0deg,transparent 0 13px,#b4a0c6 13px 15px,transparent 15px 30px),repeating-linear-gradient(90deg,transparent 0 13px,#b4a0c6 13px 15px,transparent 15px 30px)}
.fabric-card--flannel .fabric-card__design{background:repeating-linear-gradient(35deg,transparent 0 16px,#c9b9a9 16px 18px,transparent 18px 29px)}

/* Galería */
.gallery-section{background:#fff;border-top:1px solid #f1e8ef}
.gallery-section__heading{margin-bottom:37px}
.photo-grid{display:grid;grid-template-columns:1.23fr .91fr;gap:19px;align-items:stretch}
.photo-card{height:480px;background:#e4d8e2;position:relative;overflow:hidden;border-radius:17px;border:1px solid #e5d8e2;box-shadow:0 10px 32px rgba(69,42,78,.07);text-align:left;padding:0;isolation:isolate}
.photo-card::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 26px 9px rgba(255,243,248,.18);pointer-events:none}
.photo-card img{width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .75s var(--ease)}
.photo-card:hover img{transform:scale(1.06)}
.photo-card--secondary img{object-position:51% 45%}
.photo-card__shade{position:absolute;inset:36% 0 0;background:linear-gradient(180deg,transparent,rgba(30,19,37,.68))}
.photo-card__label{position:absolute;bottom:32px;left:32px;color:#fff;display:flex;flex-direction:column;gap:5px;max-width:calc(100% - 100px)}
.photo-card__label span{font:800 10px var(--display);letter-spacing:.17em;color:#ffe2f2}
.photo-card__label strong{font:800 clamp(1.25rem,2vw,1.75rem)/1.2 var(--display);letter-spacing:-.04em}
.photo-card__expand{position:absolute;right:25px;bottom:31px;width:44px;height:44px;border:1px solid rgba(255,255,255,.68);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff}
.photo-card__expand svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.gallery-section__bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px}
.gallery-section__bottom>span{font:800 10px var(--display);letter-spacing:.12em;color:#8c7e91}
.inline-link--dark{color:var(--plum);border-color:#b7a5c4}

/* Ventas */
.sales{background:#f9f2f6}
.section-heading--center{text-align:center;margin-bottom:42px}
.section-heading--center>p{color:var(--muted);font-size:15px;margin:15px auto 0;line-height:1.9}
.sales__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sale-card{min-height:365px;padding:35px 39px;border:1px solid #e8dce6;border-radius:17px;background:#fff;position:relative;overflow:hidden;box-shadow:0 9px 26px rgba(100,65,97,.035);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.sale-card:hover{transform:translateY(-6px);box-shadow:0 15px 35px rgba(100,65,97,.1)}
.sale-card::after{position:absolute;content:"";width:210px;height:210px;border:1px solid #e7d6e5;border-radius:50%;right:-90px;top:-110px;pointer-events:none}
.sale-card__label{font:800 10px var(--display);letter-spacing:.15em;color:#9e75a0}
.sale-card__symbol{display:grid;place-items:center;width:72px;height:72px;border-radius:17px;background:#f5eaf2;color:#794e81;margin:26px 0 20px}
.sale-card--wholesale .sale-card__symbol{background:#ece7f5;color:#674e92}
.sale-card__symbol svg{width:44px;height:44px}
.sale-card h3{margin:0 0 3px;font:800 29px var(--display);letter-spacing:-.05em}
.sale-card p{font-size:14px;color:var(--muted);margin:0 0 24px}
.button--outline{color:var(--plum);border-color:#d3bed4;background:#fff;min-height:49px;gap:28px}
.button--outline:hover{background:var(--plum);border-color:var(--plum);color:#fff}
.shipping{margin-top:21px;background:#ece3f0;border:1px solid #e0cfe5;border-radius:14px;display:flex;align-items:center;gap:24px;padding:25px 32px;color:var(--plum)}
.shipping__icon{width:58px;height:58px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.62);flex-shrink:0}
.shipping__icon svg{width:35px;height:35px}
.shipping strong{font:800 16px var(--display);letter-spacing:-.02em}
.shipping p{color:#65546e;font-size:14px;margin:3px 0 0}

/* Contacto */
.contact{background:#50336d;color:#fff;position:relative;overflow:hidden;padding:92px 0 100px}
.contact__pattern{position:absolute;pointer-events:none;inset:0;background:radial-gradient(circle at 97% 2%,rgba(230,144,179,.18),transparent 32%),radial-gradient(circle at 1% 100%,rgba(190,155,219,.14),transparent 34%)}
.contact__pattern::before{content:"";position:absolute;right:-100px;top:-170px;width:490px;height:490px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 105px rgba(255,255,255,.016)}
.contact__grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:95px;align-items:center}
.contact h2{font-size:clamp(2.6rem,4.15vw,4rem);max-width:620px;margin:17px 0 19px}
.contact p{max-width:440px;color:#e3d5e8;line-height:1.9;font-size:14.5px;margin:0}
.contact__action{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.19);padding:34px;border-radius:16px;display:flex;flex-direction:column;align-items:flex-start}
.contact__action>span{font:800 10px var(--display);letter-spacing:.17em;color:#f1bacf}
.contact__number{font:800 clamp(1.8rem,3vw,2.6rem)/1.25 var(--display);letter-spacing:-.05em;margin:13px 0 24px;white-space:nowrap}
.button--contact{background:#fff;color:#51346c;width:100%;justify-content:space-between;padding-inline:20px;white-space:normal}
.button--contact:hover{background:#fce9f2}
.footer{background:#2d2039;color:#fff;padding:38px 0}
.footer__inner{display:flex;align-items:center;gap:37px}
.brand--footer .brand__mark{background:#684a80;box-shadow:none;width:42px;height:42px}
.brand--footer .brand__mark svg{width:29px;height:29px}
.brand--footer .brand__text>span{color:#d0b5d7}
.brand--footer .brand__text strong{color:#fff}
.footer p{color:#bfaec9;font-size:11px;line-height:1.8;margin:0 auto 0 0}
.footer__links{display:flex;align-items:center;gap:21px}
.footer__links a{font-weight:600;color:#ded1e4;font-size:12px;transition:color .2s}
.footer__links a:hover{color:#fff}

/* Modal */
.lightbox[hidden]{display:none!important}
.lightbox{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:85px minmax(0,1fr) 85px;align-items:center;padding:52px 20px 28px;color:#fff}
.lightbox__backdrop{position:absolute;inset:0;background:rgba(20,12,25,.95);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.lightbox__content{z-index:1;min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;max-height:100%;pointer-events:none}
.lightbox__content img{max-height:min(76vh,850px);max-width:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 20px 50px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.35);border-radius:9px;pointer-events:auto}
.lightbox__content p{font:700 14px var(--display);margin:6px 0 0;text-align:center}
.lightbox__content>span{font:600 11px var(--display);color:#d6c9d8;letter-spacing:.12em}
.lightbox__arrow,.lightbox__close{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff;display:grid;place-items:center;z-index:2;transition:background .2s}
.lightbox__arrow:hover,.lightbox__close:hover{background:rgba(255,255,255,.28)}
.lightbox__arrow{width:52px;height:52px;justify-self:center}
.lightbox__close{position:absolute;right:28px;top:24px;width:45px;height:45px}
.lightbox svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}

/* Animación: contenido visible si JS no está disponible */


.category-grid [data-reveal]:nth-child(2),.sizes__cards [data-reveal]:nth-child(2),.sales__grid [data-reveal]:nth-child(2){transition-delay:.08s}
.category-grid [data-reveal]:nth-child(3),.sizes__cards [data-reveal]:nth-child(3){transition-delay:.16s}

@media (max-width:1200px){
  .nav{gap:17px}.nav__link{font-size:11.8px}.header__inner{gap:17px}.hero h1{font-size:clamp(3.3rem,5vw,4.65rem)}
}
@media (max-width:1020px){
  .container{width:min(var(--container),calc(100% - 58px))}
  .menu-toggle{display:flex;margin-left:0}
  .nav{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fffdfb;border:1px solid #e8dce5;border-radius:16px;box-shadow:0 18px 40px rgba(65,39,82,.14);padding:14px 18px;flex-direction:column;align-items:stretch;gap:0;margin:0;z-index:45}
  .nav.is-open{display:flex}
  .nav__link{font-size:14px;padding:13px 8px;border-bottom:1px solid #f0e9ef}
  .nav__link:last-child{border-bottom:0}
  .button--header{margin-left:auto}
  .hero__grid{gap:20px;min-height:600px}
  .hero__frame{height:465px}
  .hero h1{font-size:clamp(3rem,5.5vw,4.4rem)}
  .hero__tag{left:-30px}
  .fabrics__grid{gap:55px}
  .sizes__grid{gap:45px}
  .contact__grid{gap:50px}
  .category-card{padding:24px 21px;min-height:448px}
  .category-card h3{font-size:19px}
  .category-card__size{font-size:clamp(2.15rem,3.2vw,2.7rem)}
}
@media (max-width:760px){
  .container{width:calc(100% - 38px)}
  .section{padding:78px 0}
  .announcement__inner{gap:10px;min-height:35px}
  .announcement span{font-size:8px;letter-spacing:.06em}
  .announcement__divider{flex:0 0 3px}
  .site-header,.site-header.is-scrolled{height:72px}
  .brand__mark{width:43px;height:43px;border-radius:13px}
  .brand__mark svg{width:29px;height:29px}
  .brand__text strong{font-size:22px}
  .header__inner{gap:8px}
  .button--header{min-height:40px;font-size:11px;padding:8px 13px;gap:6px}
  .button--header svg{width:16px;height:16px}
  .hero__grid{grid-template-columns:1fr;gap:28px;padding-block:65px 76px}
  .hero__copy{padding-top:0}
  .hero h1{font-size:clamp(3.15rem,9vw,5.2rem);max-width:550px;margin-top:19px}
  .hero__intro{max-width:570px;font-size:15px}
  .hero__facts{margin-top:34px}
  .hero__visual{padding:8px 20px 25px 30px;max-width:540px;width:100%;margin:0 auto}
  .hero__frame{height:min(500px,70vw);min-height:350px;border-radius:180px 180px 23px 23px}
  .hero__tag{left:0;bottom:47px}
  .hero__halo{right:-1px;top:-14px}
  .marquee{min-height:48px}
  .marquee__track{width:max-content;margin:0 auto;justify-content:flex-start;gap:24px;overflow:visible;transform:translateX(0)}
  .marquee span{font-size:9px}
  .section-heading--split{display:block}
  .section-heading--split>p{margin:18px 0 0;max-width:540px}
  .section-heading h2,.sizes h2,.fabrics h2{font-size:clamp(2.65rem,7vw,3.5rem)}
  .category-grid{grid-template-columns:1fr;gap:14px}
  .category-card{min-height:340px;padding:25px 28px}
  .category-card__body{margin-top:10px}
  .category-card__size{font-size:3rem;margin-bottom:10px}
  .category-card__link{margin-top:18px}
  .sizes__grid,.fabrics__grid{grid-template-columns:1fr;gap:30px}
  .sizes__intro>p{max-width:570px}
  .sizes__cards{gap:12px}
  .size-chip{min-height:118px}
  .size-chip strong{font-size:clamp(2.3rem,7.6vw,3.4rem)}
  .fabrics__left h2{max-width:600px}
  .set-note{margin-top:26px}
  .fabric-card{height:104px}
  .photo-grid{grid-template-columns:1fr;gap:14px}
  .photo-card{height:clamp(295px,70vw,480px)}
  .photo-card--secondary{height:clamp(280px,64vw,440px)}
  .gallery-section__bottom{align-items:flex-start;flex-direction:column;gap:15px}
  .sales__grid{grid-template-columns:1fr;gap:14px}
  .sale-card{min-height:315px}
  .contact{padding:76px 0}
  .contact__grid{grid-template-columns:1fr;gap:34px}
  .contact h2{font-size:clamp(2.55rem,8vw,4rem)}
  .contact__action{max-width:520px}
  .footer__inner{flex-wrap:wrap;gap:16px 25px}
  .footer p{margin-left:auto}
  .footer__links{width:100%;flex-wrap:wrap}
}
@media (max-width:450px){
  .container{width:calc(100% - 32px)}
  .announcement span{font-size:7px;letter-spacing:.03em}
  .announcement__inner{gap:7px}
  .brand{gap:8px}
  .brand__mark{height:40px;width:40px}
  .brand__text strong{font-size:20px}
  .brand__text>span{font-size:8px}
  .button--header{padding:8px 10px;font-size:10px}
  .button--header svg{display:none}
  .menu-toggle{width:39px}
  .hero__grid{padding-top:53px;padding-bottom:64px}
  .eyebrow{font-size:9px;letter-spacing:.16em}
  .hero h1{font-size:clamp(2.9rem,12.3vw,3.65rem);letter-spacing:-.067em}
  .hero__intro{font-size:14px}
  .hero__buttons{gap:12px 18px}
  .button--primary{width:100%}
  .button--text{font-size:12px}
  .hero__facts{gap:16px;margin-top:33px}
  .hero__facts-label{font-size:8px;letter-spacing:.08em}
  .hero__facts strong{font-size:19px}
  .hero__visual{padding:9px 10px 33px 10px}
  .hero__frame{height:355px;min-height:0;border-radius:145px 145px 20px 20px;border-width:5px}
  .hero__tag{left:0;bottom:16px;padding:11px 13px}
  .hero__tag strong{font-size:11px}
  .hero__tag small{font-size:10px}
  .hero__halo{right:-14px;width:135px;height:135px}
  .section-heading h2,.sizes h2,.fabrics h2{font-size:2.5rem}
  .category-card{padding:24px}
  .category-card__size{font-size:2.85rem}
  .sizes__cards{grid-template-columns:1fr}
  .size-chip:nth-child(1){grid-column:auto}
  .size-chip{min-height:105px;padding:19px 22px}
  .size-chip strong{font-size:2.65rem}
  .fabric-card{gap:17px;padding:19px 22px;height:93px}
  .fabric-card h3{font-size:1.6rem}
  .photo-card__label{bottom:20px;left:20px}
  .photo-card__expand{right:18px;bottom:20px;width:39px;height:39px}
  .photo-card__label strong{font-size:1.25rem}
  .sale-card{padding:27px 26px}
  .shipping{padding:20px;align-items:flex-start;gap:14px}
  .shipping__icon{width:48px;height:48px;min-width:48px}
  .shipping__icon svg{width:29px;height:29px}
  .shipping strong{font-size:15px}
  .shipping p{font-size:12px}
  .contact__action{padding:25px 21px}
  .contact__number{font-size:clamp(1.7rem,8vw,2.2rem)}
  .button--contact{font-size:12px;padding:13px}
  .footer p{font-size:10px}
  .footer__links{gap:14px}
  .lightbox{grid-template-columns:43px minmax(0,1fr) 43px;padding:70px 5px 35px}
  .lightbox__arrow{width:37px;height:37px}
  .lightbox__close{top:17px;right:18px}
  .lightbox__content img{max-height:68vh}
  .lightbox__content p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}

}
