/* Fukubag — Editorial boutique: ink black · soft blush · chalk white */
:root{
  --es-ink:#0D0D0F;
  --es-ink-soft:#1A1A1E;
  --es-ink-lift:#242428;
  --es-chalk:#F5F2EF;
  --es-chalk-dim:#C8C2BA;
  --es-white:#FAFAF8;
  --es-blush:#E8B4B8;
  --es-blush-deep:#D49298;
  --es-blush-soft:#F2D4D6;
  --es-sand:#E6DDD2;
  --es-gray:#8A8580;
  --es-line:rgba(245,242,239,.12);
  --es-line-dark:rgba(13,13,15,.1);
  --font-display:"Bodoni Moda","Noto Sans JP",serif;
  --font-brand:"Bodoni Moda","Noto Sans JP",serif;
  --font-body:"Figtree","Noto Sans JP",system-ui,sans-serif;
  --font-es-brand:var(--font-brand);
  --font-es-body:var(--font-body);
  --ease:cubic-bezier(.19,1,.22,1);
  --es-ease:var(--ease);
  --pad:clamp(1.15rem,4.2vw,3.75rem);
  --nav-h:4.25rem;
  --tap:44px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0;overflow-x:hidden}
html,body{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none;width:0;height:0}

body.es-body{
  font-family:var(--font-body);
  color:var(--es-ink);
  background:var(--es-chalk);
  line-height:1.78;
  -webkit-font-smoothing:antialiased;
}
body.es-body.is-nav-open{overflow:hidden;touch-action:none}

img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3{font-family:var(--font-display);margin:0 0 .45em;line-height:1.08;font-weight:500;letter-spacing:-.015em}
p{margin:0 0 1em}
address{font-style:normal}
::selection{background:var(--es-blush);color:var(--es-ink)}
:focus-visible{outline:2px solid var(--es-blush);outline-offset:3px}
button,input,textarea,select,summary{font:inherit}

.es-skip{
  position:absolute;top:0;left:-9999px;z-index:200;
  background:var(--es-blush);color:var(--es-ink);padding:.75rem 1rem;font-weight:700;min-height:var(--tap)
}
.es-skip:focus{left:0}

/* ── NAV ── */
.es-nav{
  position:fixed;inset:0 0 auto;z-index:90;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  min-height:var(--nav-h);
  padding:.65rem max(1rem,env(safe-area-inset-right)) .65rem max(1.15rem,env(safe-area-inset-left));
  background:rgba(245,242,239,.78);
  color:var(--es-ink);
  backdrop-filter:blur(18px) saturate(1.05);
  -webkit-backdrop-filter:blur(18px) saturate(1.05);
  border-bottom:1px solid transparent;
  transition:background .4s var(--ease),border-color .4s,box-shadow .4s,color .4s;
}
.es-nav.is-solid,body.is-nav-open .es-nav{
  background:rgba(245,242,239,.96);
  border-bottom-color:var(--es-line-dark);
  box-shadow:0 8px 28px rgba(13,13,15,.08);
}
.es-home-page .es-nav:not(.is-solid){
  background:transparent;color:var(--es-white);border-bottom-color:transparent;box-shadow:none
}
.es-home-page .es-nav:not(.is-solid) .es-nav__mark{background:var(--es-blush);color:var(--es-ink)}
.es-home-page .es-nav:not(.is-solid) .es-nav__links a{color:var(--es-white)}
.es-home-page .es-nav:not(.is-solid) .es-nav__cta{background:var(--es-blush);color:var(--es-ink)}
.es-home-page .es-nav:not(.is-solid) .es-burger{border-color:rgba(250,250,248,.25);background:rgba(13,13,15,.35);color:var(--es-white)}
.es-home-page .es-nav.is-solid,body.es-home-page.is-nav-open .es-nav{
  background:rgba(13,13,15,.96);color:var(--es-white);border-bottom-color:var(--es-line)
}
.es-home-page .es-nav.is-solid .es-nav__mark{background:var(--es-blush);color:var(--es-ink)}
.es-home-page .es-nav.is-solid .es-nav__links a{color:var(--es-white)}
.es-home-page .es-nav.is-solid .es-nav__links a::after{background:var(--es-blush)}
.es-home-page .es-nav.is-solid .es-nav__cta{background:var(--es-blush);color:var(--es-ink)}

.es-nav__brand{display:flex;align-items:center;gap:.65rem;min-height:var(--tap);z-index:2}
.es-nav__mark{
  display:grid;place-items:center;width:28px;height:28px;
  font-family:var(--font-display);font-size:1rem;font-weight:600;
  color:var(--es-chalk);background:var(--es-ink);border-radius:2px
}
.es-nav__name{font-family:var(--font-display);font-size:1.22rem;letter-spacing:.14em;font-weight:500}
.es-nav__links{display:flex;gap:1.5rem;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.es-nav__links a{opacity:.7;transition:opacity .25s,color .25s;min-height:var(--tap);display:inline-flex;align-items:center;position:relative}
.es-nav__links a::after{content:"";position:absolute;left:0;bottom:.4rem;width:100%;height:1px;background:var(--es-blush);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.es-nav__links a:hover,.es-nav__links a[aria-current="page"]{opacity:1;color:var(--es-blush-deep)}
.es-nav__links a:hover::after,.es-nav__links a[aria-current="page"]::after{transform:scaleX(1)}
.es-nav__cta{
  font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  background:var(--es-ink);color:var(--es-chalk);
  padding:.65rem 1.15rem;min-height:var(--tap);
  display:inline-flex;align-items:center;
  transition:transform .35s var(--ease),background .25s,box-shadow .35s,letter-spacing .35s;
}
.es-nav__cta:hover{background:var(--es-blush);color:var(--es-ink);letter-spacing:.22em;box-shadow:0 6px 28px rgba(232,180,184,.42)}
.es-burger{
  display:none;width:var(--tap);height:var(--tap);padding:0;
  border:1px solid var(--es-line-dark);background:rgba(245,242,239,.55);color:inherit;
  cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;z-index:2
}
.es-burger i{display:block;width:20px;height:1.5px;background:currentColor;transition:transform .35s var(--ease),opacity .25s}
.es-burger[aria-expanded="true"] i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.es-burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.es-burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

.es-drawer-backdrop{
  position:fixed;inset:0;z-index:80;background:rgba(13,13,15,.45);
  opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s
}
.es-drawer-backdrop.is-open{opacity:1;visibility:visible}
.es-drawer-backdrop[hidden]{display:none!important}

.es-drawer{
  position:fixed;inset:0;z-index:85;
  background:
    radial-gradient(ellipse 70% 50% at 12% 0%,rgba(232,180,184,.28),transparent 55%),
    radial-gradient(ellipse 50% 40% at 100% 100%,rgba(230,221,210,.35),transparent 50%),
    var(--es-chalk);
  color:var(--es-ink);
  display:flex;flex-direction:column;justify-content:center;gap:.3rem;
  padding:var(--nav-h) var(--pad) var(--pad);
}
.es-home-page .es-drawer{
  background:
    radial-gradient(ellipse 70% 50% at 12% 0%,rgba(232,180,184,.22),transparent 55%),
    var(--es-ink);
  color:var(--es-white)
}
.es-drawer[hidden]{display:none!important}
.es-drawer.is-open{display:flex}
.es-drawer__head{margin-bottom:1.5rem}
.es-drawer__brand{font-family:var(--font-display);font-size:1.4rem;letter-spacing:.2em;margin:0 0 .35rem;color:var(--es-blush)}
.es-drawer__tag{margin:0;font-size:.85rem;opacity:.7}
.es-drawer__nav{display:flex;flex-direction:column}
.es-drawer__nav a{
  font-family:var(--font-display);font-size:clamp(1.75rem,7vw,2.8rem);
  min-height:var(--tap);display:flex;align-items:center;
  border-bottom:1px solid var(--es-line-dark);padding:.5rem 0;
  transition:color .25s,padding-left .4s var(--ease)
}
.es-home-page .es-drawer__nav a{border-bottom-color:var(--es-line)}
.es-drawer__nav a:hover,.es-drawer__nav a[aria-current="page"]{color:var(--es-blush-deep);padding-left:.5rem}
.es-drawer__cta{
  margin-top:1rem!important;justify-content:center!important;
  background:var(--es-blush)!important;color:var(--es-ink)!important;
  border-bottom:0!important;padding:1rem!important;
  font-family:var(--font-body)!important;font-size:.82rem!important;
  font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase;
  box-shadow:0 8px 28px rgba(232,180,184,.35)
}
.es-drawer__meta{margin-top:1.2rem;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;opacity:.6}
.es-drawer__meta a{border:0;font-size:inherit;min-height:auto;display:inline}

/* Type */
.es-k{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--es-gray);margin-bottom:.85rem}
.es-k--blush{color:var(--es-blush-deep)}
.es-meta{font-size:.74rem;font-weight:500;letter-spacing:.1em;color:var(--es-gray)}
.es-link{display:inline-flex;align-items:center;min-height:var(--tap);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid var(--es-blush);transition:letter-spacing .35s var(--ease),color .25s}
.es-link:hover{letter-spacing:.26em;color:var(--es-blush-deep)}

.es-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:var(--tap);padding:.85rem 1.65rem;
  font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  border:0;cursor:pointer;text-decoration:none;
  transition:transform .4s var(--ease),letter-spacing .4s var(--ease),background .3s,color .3s,box-shadow .35s
}
.es-btn:hover{letter-spacing:.28em}
.es-btn--blush{background:var(--es-blush);color:var(--es-ink);box-shadow:0 4px 24px rgba(232,180,184,.38)}
.es-btn--blush:hover{background:var(--es-blush-deep);color:var(--es-white);box-shadow:0 8px 32px rgba(212,146,152,.5);transform:translateY(-1px)}
.es-btn--outline{background:transparent;color:var(--es-white);border:1px solid rgba(250,250,248,.45)}
.es-btn--outline:hover{background:rgba(250,250,248,.08)}
.es-btn--lg{padding:1rem 2rem;font-size:.76rem}
.es-btn--ink{background:var(--es-ink);color:var(--es-chalk)}
.es-btn--ink:hover{background:var(--es-ink-soft)}

.es-section-head{padding:clamp(3rem,8vw,5.5rem) var(--pad) clamp(1.5rem,4vw,2.5rem);max-width:72rem}
.es-section-head h2{font-size:clamp(2rem,5vw,3.2rem)}
.es-section-head p{max-width:38ch;color:var(--es-gray);margin:0}
.es-section-head--split{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}

.js .es-home [data-es],.js .es-home [data-es-clip]{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease) calc(var(--d,0)*.08s),transform .85s var(--ease) calc(var(--d,0)*.08s)}
.js .es-home [data-es-clip]{clip-path:inset(0 0 100% 0);transform:none;transition:clip-path 1s var(--ease) calc(var(--d,0)*.08s),opacity .85s var(--ease) calc(var(--d,0)*.08s)}
.js .es-home [data-es].in,.js .es-home [data-es-clip].in{opacity:1;transform:none;clip-path:inset(0)}

/* ── HERO — dual editorial plates ── */
.es-hero{
  position:relative;min-height:100svh;min-height:100dvh;
  display:flex;align-items:flex-end;overflow:hidden;color:var(--es-white);
  background:var(--es-ink)
}
.es-hero__stage{position:absolute;inset:0;z-index:0;display:grid;grid-template-columns:1.15fr .85fr}
.es-hero__plate{
  position:relative;margin:0;overflow:hidden;isolation:isolate
}
.es-hero__plate--w{clip-path:polygon(0 0,100% 0,92% 100%,0 100%)}
.es-hero__plate--m{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.es-hero__img{
  width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.08);animation:esHeroKen 22s var(--ease) infinite alternate
}
.es-hero__plate--m .es-hero__img{
  object-position:center 20%;
  animation-delay:-8s;animation-duration:26s
}
.es-hero__plate--w .es-hero__img{object-position:center 18%}
.es-hero__plate-tag{
  position:absolute;bottom:1.25rem;left:1.25rem;z-index:2;
  font-family:var(--font-ui,var(--font-body));font-size:.62rem;font-weight:700;
  letter-spacing:.32em;color:rgba(250,250,248,.55);pointer-events:none
}
.es-hero__plate--m .es-hero__plate-tag{left:auto;right:1.25rem}
.es-hero__veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(13,13,15,.35) 0%,transparent 28%,rgba(13,13,15,.55) 62%,rgba(13,13,15,.92) 100%),
    linear-gradient(90deg,rgba(13,13,15,.25) 0%,transparent 40%,rgba(13,13,15,.2) 100%)
}
.es-hero__grain{
  position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.08;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")
}
.es-hero__frame{
  position:relative;z-index:4;width:100%;
  padding:calc(var(--nav-h) + 1rem) var(--pad) clamp(2.75rem,7vw,4.5rem);
  display:flex;flex-direction:column;align-items:flex-start;max-width:min(52rem,100%)
}
.es-hero__locale{
  margin:0 0 .85rem;font-size:.72rem;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--es-blush)
}
.es-hero__brand{
  position:relative;left:auto;top:auto;transform:none;
  font-family:var(--font-brand);font-size:clamp(3.4rem,11vw,7.5rem);
  letter-spacing:-.02em;line-height:.88;margin:0 0 .7rem;color:var(--es-white);
  text-shadow:0 12px 48px rgba(0,0,0,.35);pointer-events:none;white-space:normal
}
.es-hero__brand .es-char{
  display:inline-block;opacity:0;transform:translateY(42px) rotate(-3deg);
  transition:opacity .55s var(--ease),transform .55s var(--ease);
  transition-delay:calc(var(--i,0) * 45ms)
}
.es-hero__brand.is-in .es-char{opacity:1;transform:none}
.es-hero__headline{
  margin:0 0 .85rem;font-family:var(--font-display);font-weight:500;
  font-size:clamp(1.35rem,3.2vw,2rem);line-height:1.25;max-width:16ch;
  color:rgba(250,250,248,.95)
}
.es-hero__lead{
  font-size:clamp(.95rem,1.8vw,1.08rem);line-height:1.7;
  color:rgba(250,250,248,.72);max-width:38ch;margin:0 0 1.5rem
}
.es-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-bottom:1.5rem}
.es-btn--pulse{animation:esBtnPulse 2.4s ease-in-out infinite}
@keyframes esBtnPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(232,180,184,.45)}
  50%{box-shadow:0 0 0 12px rgba(232,180,184,0)}
}
.es-hero__rails{
  display:flex;gap:1.25rem;flex-wrap:wrap
}
.es-hero__rail{
  display:inline-flex;align-items:center;gap:.55rem;
  font-size:.68rem;font-weight:700;letter-spacing:.28em;
  color:rgba(250,250,248,.55);text-decoration:none;
  padding:.45rem 0;border-bottom:1px solid transparent;
  transition:color .3s,border-color .3s
}
.es-hero__rail span{color:var(--es-blush);letter-spacing:.08em}
.es-hero__rail:hover{color:var(--es-white);border-color:var(--es-blush)}
.es-hero__scroll{
  position:absolute;right:var(--pad);bottom:clamp(1.5rem,4vw,2.5rem);z-index:5;
  display:flex;flex-direction:column;align-items:center;gap:.45rem;
  font-size:.62rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(250,250,248,.55);transition:color .25s
}
.es-hero__scroll i{
  display:block;width:1px;height:2.5rem;
  background:linear-gradient(180deg,var(--es-blush),transparent);
  animation:esScrollPulse 2s ease-in-out infinite
}
.es-hero__scroll:hover{color:var(--es-blush)}
@keyframes esScrollPulse{0%,100%{opacity:.4;transform:scaleY(.85)}50%{opacity:1;transform:scaleY(1)}}
@keyframes esHeroKen{from{transform:scale(1.08) translate3d(0,0,0)}to{transform:scale(1.16) translate3d(-1.5%,1%,0)}}

.js .es-hero [data-es],.js .es-hero [data-es-clip]{opacity:1;transform:none;clip-path:inset(0)}
.js .es-hero .es-hero__frame [data-es]{opacity:0;transform:translateY(22px)}
.js .es-hero .es-hero__frame [data-es].in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .es-hero__img,.es-btn--pulse,.es-hero__scroll i{animation:none!important}
  .es-hero__img{transform:none}
}

/* ── MARQUEE ── */
.es-marquee{
  background:var(--es-ink);color:var(--es-blush);overflow:hidden;
  border-block:1px solid var(--es-line);padding:.85rem 0
}
.es-marquee__track{
  display:flex;gap:2.5rem;width:max-content;
  animation:esMarquee 38s linear infinite;
  font-family:var(--font-display);font-size:clamp(.95rem,2vw,1.15rem);
  letter-spacing:.28em;text-transform:uppercase;white-space:nowrap
}
.es-marquee__track span{opacity:.85}
.es-marquee__track span::after{content:"·";margin-left:2.5rem;color:var(--es-chalk-dim);opacity:.5}
@keyframes esMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── GENDER ── */
.es-gender{display:grid;grid-template-columns:1fr 1fr;min-height:min(56vh,520px)}
.es-gender__strip{
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  padding:clamp(1.5rem,4vw,2.75rem);overflow:hidden;color:var(--es-white);min-height:300px
}
.es-gender__bg{position:absolute;inset:0;margin:0}
.es-gender__bg img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.es-gender__strip:hover .es-gender__bg img{transform:scale(1.07)}
.es-gender__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(13,13,15,.78) 100%)}
.es-gender__edge{
  position:absolute;top:1.25rem;right:1.25rem;z-index:1;
  font-size:.62rem;letter-spacing:.28em;opacity:.7
}
.es-gender__label{position:relative;z-index:1;font-family:var(--font-display);font-size:clamp(2.4rem,6vw,4.2rem);letter-spacing:.08em;line-height:1}
.es-gender__sub{position:relative;z-index:1;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;opacity:.78;margin-top:.4rem}
.es-gender__strip--w .es-gender__shade{background:linear-gradient(180deg,rgba(232,180,184,.18) 0%,rgba(13,13,15,.74) 100%)}
.es-gender__strip--m .es-gender__shade{background:linear-gradient(180deg,rgba(13,13,15,.22) 0%,rgba(13,13,15,.82) 100%)}

/* ── LOOKBOOK ── */
.es-lookbook{background:var(--es-white);padding-bottom:clamp(2rem,5vw,4rem)}
.es-lookbook__masonry{
  display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(140px,auto);gap:.75rem;
  padding:0 var(--pad) clamp(1.5rem,4vw,2.5rem);max-width:90rem;margin:0 auto
}
.es-lookbook__tile{position:relative;margin:0;overflow:hidden;aspect-ratio:3/4;background:var(--es-ink-soft);grid-column:span 3}
.es-lookbook__tile--lead{grid-column:span 6;aspect-ratio:4/5}
.es-lookbook__tile--wide{grid-column:span 6;aspect-ratio:16/10}
.es-lookbook__tile img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.es-lookbook__tile:hover img{transform:scale(1.05)}
.es-lookbook__tile figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:1rem;
  background:linear-gradient(transparent,rgba(13,13,15,.72));color:var(--es-white);
  transform:translateY(6px);opacity:.92;transition:transform .45s var(--ease),opacity .45s
}
.es-lookbook__tile:hover figcaption{transform:none;opacity:1}
.es-lookbook__tile figcaption span{display:block;font-size:.65rem;letter-spacing:.2em;opacity:.7}
.es-lookbook__tile figcaption em{font-family:var(--font-display);font-style:normal;font-size:1.05rem}

.es-film{
  display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:0 var(--pad) 1.25rem;cursor:grab;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;touch-action:pan-y
}
.es-film::-webkit-scrollbar{display:none}
.es-film.is-dragging{cursor:grabbing;scroll-snap-type:none}
.es-film__frame{
  flex:0 0 min(72vw,300px);scroll-snap-align:start;margin:0;
  position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--es-ink-soft)
}
.es-film__frame:nth-child(even){flex-basis:min(68vw,260px);margin-top:1.25rem}
.es-film__frame img{width:100%;height:100%;object-fit:cover;pointer-events:none;transition:transform .9s var(--ease)}
.es-film__frame:hover img{transform:scale(1.04)}
.es-film__frame figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:.85rem 1rem;
  background:linear-gradient(transparent,rgba(13,13,15,.78));color:var(--es-white)
}
.es-film__frame figcaption span{display:block;font-size:.62rem;letter-spacing:.18em;opacity:.7}
.es-film__frame figcaption em{font-family:var(--font-display);font-style:normal}

/* ── COLLECTIONS ── */
.es-collections{background:var(--es-chalk);padding-bottom:clamp(3rem,7vw,5rem)}
.es-collections__list{max-width:72rem;margin:0 auto;padding:0 var(--pad)}
.es-collections__row{
  display:grid;grid-template-columns:auto 120px 1fr auto;gap:1.25rem;align-items:center;
  padding:1.35rem 0;border-bottom:1px solid var(--es-line-dark);
  transition:background .35s,padding-left .4s var(--ease)
}
.es-collections__row:hover{background:rgba(232,180,184,.08);padding-left:.5rem}
.es-collections__num{font-family:var(--font-display);font-size:1.4rem;color:var(--es-blush-deep);min-width:2.5rem}
.es-collections__media{aspect-ratio:4/5;overflow:hidden;background:var(--es-ink-soft)}
.es-collections__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.es-collections__row:hover .es-collections__media img{transform:scale(1.06)}
.es-collections__body h3{font-size:1.35rem;margin-bottom:.25rem}
.es-collections__body p{margin:0 0 .35rem;color:var(--es-gray);max-width:42ch;font-size:.95rem}
.es-collections__arrow{font-size:1.4rem;opacity:.4;transition:opacity .3s,transform .4s var(--ease)}
.es-collections__row:hover .es-collections__arrow{opacity:1;transform:translateX(4px);color:var(--es-blush-deep)}

/* ── ARRIVALS ── */
.es-arrivals{background:var(--es-ink);color:var(--es-white);padding-bottom:clamp(3rem,7vw,5rem)}
.es-arrivals .es-section-head p,.es-arrivals .es-k{color:var(--es-chalk-dim)}
.es-arrivals .es-k--blush{color:var(--es-blush)}
.es-arrivals__track{
  display:flex;gap:1.15rem;overflow-x:auto;padding:0 var(--pad) 1rem;
  scroll-snap-type:x mandatory;scrollbar-width:none
}
.es-arrivals__track::-webkit-scrollbar{display:none}
.es-arrivals__card{flex:0 0 min(70vw,260px);scroll-snap-align:start}
.es-arrivals__media{aspect-ratio:3/4;overflow:hidden;background:var(--es-ink-lift);margin-bottom:.85rem}
.es-arrivals__media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.es-arrivals__card:hover .es-arrivals__media img{transform:scale(1.05)}
.es-arrivals__tag{display:inline-block;font-size:.62rem;letter-spacing:.2em;color:var(--es-blush);margin-bottom:.35rem}
.es-arrivals__card h3{font-size:1.15rem;margin:0 0 .25rem}
.es-arrivals .es-meta{color:var(--es-chalk-dim)}

/* ── SPOT ── */
.es-spot{display:grid;grid-template-columns:1.15fr .85fr;min-height:min(72vh,680px)}
.es-spot--flip{grid-template-columns:.85fr 1.15fr}
.es-spot--flip .es-spot__media{order:2}
.es-spot--flip .es-spot__copy{order:1}
.es-spot__media{position:relative;overflow:hidden;background:var(--es-ink);min-height:340px}
.es-spot__media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform 1.2s var(--ease)}
.es-spot:hover .es-spot__media img{transform:scale(1.04)}
.es-spot__badge{
  position:absolute;top:1.25rem;left:1.25rem;z-index:1;
  font-size:.62rem;letter-spacing:.28em;color:var(--es-white);
  background:rgba(13,13,15,.45);backdrop-filter:blur(8px);
  padding:.55rem .8rem;border:1px solid rgba(232,180,184,.35)
}
.es-spot__copy{
  display:flex;flex-direction:column;justify-content:center;
  padding:clamp(2rem,6vw,4rem);background:var(--es-chalk)
}
.es-spot__copy--ink{background:var(--es-ink);color:var(--es-white)}
.es-spot__copy--ink p,.es-spot__copy--ink .es-meta{color:var(--es-chalk-dim)}
.es-spot__copy h2{font-size:clamp(1.8rem,3.5vw,2.6rem)}
.es-spot__copy p{color:var(--es-gray);max-width:36ch}
.es-spot__copy .es-btn{align-self:flex-start;margin-top:.5rem}

/* ── PROCESS ── */
.es-process{background:var(--es-white);padding-bottom:clamp(3rem,7vw,5rem)}
.es-process__grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1.15rem;
  max-width:90rem;margin:0 auto;padding:0 var(--pad)
}
.es-process__grid li{
  display:flex;flex-direction:column;padding:0 0 1.25rem;
  border-top:2px solid var(--es-blush);background:var(--es-chalk)
}
.es-process__media{
  aspect-ratio:4/5;overflow:hidden;background:var(--es-ink-soft);margin-bottom:1rem
}
.es-process__media img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.es-process__grid li:hover .es-process__media img{transform:scale(1.05)}
.es-process__grid b{
  display:block;font-family:var(--font-display);font-size:1.85rem;
  color:var(--es-blush-deep);margin:0 1rem .5rem;font-weight:500
}
.es-process__grid h3{font-size:1.12rem;margin:0 1rem .45rem}
.es-process__grid p{margin:0 1rem;color:var(--es-gray);font-size:.9rem}

/* ── STORE ── */
.es-store{position:relative;min-height:min(72vh,660px);display:grid;align-items:end}
.es-store__photo{position:absolute;inset:0;margin:0}
.es-store__photo img{width:100%;height:100%;object-fit:cover}
.es-store__veil{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(13,13,15,.45) 0%,transparent 55%)
}
.es-store__panel{
  position:relative;z-index:1;margin:var(--pad);
  max-width:28rem;padding:clamp(1.75rem,4vw,2.5rem);
  background:rgba(245,242,239,.94);backdrop-filter:blur(14px);
  border-top:3px solid var(--es-blush);
  box-shadow:0 18px 48px rgba(13,13,15,.18)
}
.es-store__panel .es-btn{margin-top:.5rem}

/* ── VOICES ── */
.es-voices{background:var(--es-chalk);padding-bottom:clamp(3rem,7vw,5rem)}
.es-voices__grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;
  max-width:72rem;margin:0 auto;padding:0 var(--pad)
}
.es-voices__card{
  margin:0;padding:1.75rem 1.5rem;background:var(--es-white);
  border-top:2px solid var(--es-blush);
  transition:transform .45s var(--ease),box-shadow .45s
}
.es-voices__card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(13,13,15,.08)}
.es-voices__face{width:64px;height:64px;border-radius:50%;overflow:hidden;margin-bottom:1rem}
.es-voices__face img{width:100%;height:100%;object-fit:cover}
.es-voices__card p{font-family:var(--font-display);font-size:1.15rem;line-height:1.55;margin-bottom:1rem}
.es-voices__card cite{font-style:normal;font-size:.78rem;letter-spacing:.08em;color:var(--es-gray)}

/* ── FABRIC ── */
.es-fabric{background:var(--es-white);padding-bottom:clamp(2.5rem,6vw,4rem)}
.es-fabric__strip{
  display:grid;grid-template-columns:repeat(6,1fr);gap:.65rem;
  padding:0 var(--pad);max-width:90rem;margin:0 auto
}
.es-fabric__cell{margin:0;position:relative;aspect-ratio:1;overflow:hidden;background:var(--es-ink-soft)}
.es-fabric__cell img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.es-fabric__cell:hover img{transform:scale(1.08)}
.es-fabric__cell figcaption{
  position:absolute;inset:auto 0 0;padding:.75rem;
  background:linear-gradient(transparent,rgba(13,13,15,.7));color:var(--es-white)
}
.es-fabric__cell span{display:block;font-size:.62rem;letter-spacing:.2em}
.es-fabric__cell em{font-style:normal;font-family:var(--font-display);font-size:.95rem}

/* ── NOTES ── */
.es-notes{background:var(--es-chalk);padding-bottom:clamp(3rem,7vw,5rem)}
.es-notes__grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.35rem;
  max-width:72rem;margin:0 auto;padding:0 var(--pad)
}
.es-notes__card{display:flex;flex-direction:column;background:var(--es-white);transition:transform .4s var(--ease)}
.es-notes__card:hover{transform:translateY(-4px)}
.es-notes__media{aspect-ratio:4/5;overflow:hidden;background:var(--es-ink-soft)}
.es-notes__media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.es-notes__card:hover .es-notes__media img{transform:scale(1.05)}
.es-notes__body{padding:1.25rem 1.15rem 1.5rem}
.es-notes__body h3{font-size:1.2rem;margin:.35rem 0}
.es-notes__body p{margin:0;color:var(--es-gray);font-size:.92rem}

/* ── FAQ ── */
.es-faq{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:0;
  background:var(--es-ink);color:var(--es-white);min-height:min(70vh,640px)
}
.es-faq__photo{margin:0;position:relative;min-height:320px}
.es-faq__photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.es-faq__list{padding:clamp(2.5rem,6vw,4rem) var(--pad);display:flex;flex-direction:column;justify-content:center}
.es-faq__list h2{margin-bottom:1.5rem}
.es-faq details{border-bottom:1px solid var(--es-line);padding:.85rem 0}
.es-faq summary{
  cursor:pointer;list-style:none;font-family:var(--font-display);font-size:1.15rem;
  min-height:var(--tap);display:flex;align-items:center;justify-content:space-between;gap:1rem
}
.es-faq summary::-webkit-details-marker{display:none}
.es-faq summary::after{content:"+";color:var(--es-blush);font-size:1.4rem;line-height:1}
.es-faq details[open] summary::after{content:"–"}
.es-faq details p{color:var(--es-chalk-dim);margin:.65rem 0 0;max-width:42ch;font-size:.95rem}
@keyframes esFaqOpen{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ── CTA ── */
.es-cta{position:relative;min-height:min(58vh,520px);display:grid;place-items:center;color:var(--es-white);overflow:hidden}
.es-cta__photo{position:absolute;inset:0;margin:0}
.es-cta__photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.4s var(--ease)}
.es-cta:hover .es-cta__photo img{transform:scale(1)}
.es-cta__shade{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(13,13,15,.35),rgba(13,13,15,.72)),
    radial-gradient(ellipse 60% 50% at 50% 80%,rgba(232,180,184,.18),transparent 60%)
}
.es-cta__in{position:relative;z-index:1;text-align:center;padding:var(--pad);max-width:36rem}
.es-cta__in h2{font-size:clamp(2rem,5vw,3.2rem)}
.es-cta__in p{color:rgba(250,250,248,.78);margin-bottom:1.5rem}
.es-cta__in .es-btn{margin:0 auto}

/* ── FOOTER ── */
.es-foot{background:var(--es-ink);color:var(--es-white);padding:clamp(2.5rem,6vw,4rem) var(--pad) 2rem}
.es-foot__editorial{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--es-line)
}
.es-foot__side{font-family:var(--font-display);font-size:clamp(1.2rem,3vw,1.8rem);letter-spacing:.2em}
.es-foot__side--w{color:var(--es-blush)}
.es-foot__side--m{color:var(--es-chalk-dim);letter-spacing:.28em}
.es-foot__center{display:flex;flex-direction:column;align-items:center;gap:.5rem}
.es-foot__year{font-size:.7rem;letter-spacing:.28em}
.es-foot__rule{width:48px;height:1px;background:var(--es-blush)}
.es-foot__edition{font-size:.62rem;letter-spacing:.22em;opacity:.55}
.es-foot__mast{margin-bottom:2rem}
.es-foot__brand{display:block;font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);letter-spacing:.12em;font-weight:500}
.es-foot__tagline{margin:.35rem 0 0;opacity:.65;font-size:.95rem}
.es-foot__grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:2rem;margin-bottom:2.5rem}
.es-foot__grid h3{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--es-blush);margin-bottom:1rem;font-family:var(--font-body);font-weight:700}
.es-foot__grid li{margin-bottom:.45rem}
.es-foot__grid a{opacity:.75;transition:opacity .25s,color .25s;min-height:var(--tap);display:inline-flex;align-items:center}
.es-foot__grid a:hover{opacity:1;color:var(--es-blush)}
.es-foot__brand-block p{opacity:.7;max-width:32ch}
.es-foot__social{display:flex;flex-direction:column;gap:.35rem}
.es-foot__copy{margin:0;padding-top:1.5rem;border-top:1px solid var(--es-line);font-size:.78rem;opacity:.5}

/* ── INNER PAGES (lightweight) ── */
.es-page{padding:calc(var(--nav-h) + 2rem) var(--pad) 4rem;max-width:72rem;margin:0 auto}
.es-pagehero{
  position:relative;min-height:min(52vh,460px);display:grid;place-items:end start;
  color:var(--es-white);overflow:hidden;margin-top:0
}
.es-pagehero__media{position:absolute;inset:0}
.es-pagehero__media img{width:100%;height:100%;object-fit:cover}
.es-pagehero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,13,15,.35),rgba(13,13,15,.72))}
.es-pagehero__copy{position:relative;z-index:1;padding:clamp(2rem,6vw,4rem) var(--pad)}
.es-pagehero__copy h1{font-size:clamp(2rem,5vw,3.4rem)}
.es-pagehero__copy p{max-width:40ch;opacity:.85}

.es-band{padding:clamp(2.5rem,6vw,4.5rem) var(--pad)}
.es-band--ink{background:var(--es-ink);color:var(--es-white)}
.es-band--chalk{background:var(--es-chalk)}
.es-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.35rem;max-width:72rem;margin:0 auto}
.es-card{background:var(--es-white);overflow:hidden}
.es-card__media{aspect-ratio:4/5;overflow:hidden}
.es-card__media img{width:100%;height:100%;object-fit:cover}
.es-card__body{padding:1.25rem}
.es-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center;max-width:72rem;margin:0 auto}
.es-split__media{overflow:hidden;aspect-ratio:4/5;background:var(--es-ink-soft)}
.es-split__media img{width:100%;height:100%;object-fit:cover}
.es-form{display:flex;flex-direction:column;gap:1rem;max-width:32rem}
.es-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.es-form input,.es-form textarea{
  border:1px solid var(--es-line-dark);background:var(--es-white);padding:.9rem 1rem;
  min-height:var(--tap);font-size:1rem;letter-spacing:0;text-transform:none;font-weight:400
}
.es-form textarea{min-height:140px;resize:vertical}
.es-err{color:#B54545;font-size:.85rem}
.es-success{padding:2rem;background:var(--es-white);border-top:3px solid var(--es-blush)}

.js [data-es]:not(.es-home [data-es]),.js [data-es-clip]:not(.es-home [data-es-clip]){
  opacity:0;transform:translateY(24px);
  transition:opacity .8s var(--ease) calc(var(--d,0)*.08s),transform .8s var(--ease) calc(var(--d,0)*.08s)
}
.js [data-es].in,.js [data-es-clip].in{opacity:1;transform:none}

@media (min-width:769px){
  .es-burger{display:none!important}
  .es-drawer,.es-drawer-backdrop{display:none!important}
}
@media (max-width:900px){
  .es-lookbook__masonry{grid-template-columns:repeat(6,1fr)}
  .es-lookbook__tile{grid-column:span 3}
  .es-lookbook__tile--lead,.es-lookbook__tile--wide{grid-column:span 6}
  .es-collections__row{grid-template-columns:auto 90px 1fr;gap:1rem}
  .es-collections__arrow{display:none}
  .es-process__grid{grid-template-columns:1fr 1fr}
  .es-voices__grid,.es-notes__grid,.es-grid-3{grid-template-columns:1fr}
  .es-fabric__strip{grid-template-columns:repeat(3,1fr)}
  .es-spot,.es-spot--flip,.es-faq,.es-split{grid-template-columns:1fr}
  .es-spot--flip .es-spot__media,.es-spot--flip .es-spot__copy{order:unset}
  .es-foot__grid{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js .es-home [data-es],.js .es-home [data-es-clip],.js [data-es],.js [data-es-clip]{opacity:1;transform:none;clip-path:none}
  .es-hero__brand .es-char{opacity:1;transform:none}
  .es-hero__img,.es-marquee__track{animation:none!important}
}

/* Safety: never leave inner-page content invisible */
html.is-revealed [data-es],
html.is-revealed [data-es-clip],
html:not(.js) [data-es],
html:not(.js) [data-es-clip] {
  opacity: 1 !important;
  transform: none !important;
  clip-path: none !important;
}
