/* Shared search overlay and Collections mega-menu presentation. */
@font-face{
  font-family:'ManiKIRA Wordmark';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('ManiKIRA-Wordmark.woff2') format('woff2');
}

body.mk-search-open{overflow:hidden}

/* Canonical site shell: every page inherits the homepage navigation and mega-menu geometry. */
.announce{background:var(--ink);color:var(--cream);text-align:center;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;padding:.6rem 1rem}
header.nav{position:sticky;top:0;z-index:900;background:rgba(250,246,240,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1rem 2.5rem;gap:1.5rem}
.nav-links{display:flex;gap:2rem;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}
.nav-links>span>a{position:relative;padding:.9rem 0;opacity:.78;transition:opacity .3s;display:inline-block}
.nav-links>span>a::after{content:'';position:absolute;left:0;bottom:.5rem;width:100%;height:1px;background:var(--sienna);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
.nav-links>span:hover>a{opacity:1}
.nav-links>span:hover>a::after{transform:scaleX(1);transform-origin:left}
.logo{font-family:var(--serif);font-size:1.55rem;letter-spacing:.2em;text-indent:.2em;text-align:center;font-weight:500;white-space:nowrap}
.logo small{display:block;font-family:var(--sans);font-size:.5rem;letter-spacing:.48em;text-indent:.48em;color:var(--taupe);margin-top:.1rem;text-transform:uppercase}
.logo,.foot-logo{font-family:'ManiKIRA Wordmark',Didot,'Bodoni 72',serif!important;font-weight:500!important}
.nav-right{display:flex;justify-content:flex-end;gap:1.6rem;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;align-items:center}
.bag{position:relative;opacity:.8}.bag:hover{opacity:1}
.bag-count{position:absolute;top:-9px;right:-13px;background:var(--sienna);color:#fff;font-size:.56rem;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.burger{display:none;width:40px;height:40px;position:relative;flex:none}
.burger span{position:absolute;left:9px;right:9px;height:1.5px;background:var(--ink);transition:all .35s var(--ease)}
.burger span:nth-child(1){top:14px}.burger span:nth-child(2){top:20px}.burger span:nth-child(3){top:26px}

.mega-veil{position:fixed;inset:0;background:rgba(20,12,6,.35);opacity:0;pointer-events:none;transition:opacity .4s;z-index:890}
body.mega-open .mega-veil{opacity:1}
.mega-panel{position:absolute;left:0;right:0;top:100%;background:var(--ivory);border-bottom:1px solid var(--line);box-shadow:0 40px 70px -30px rgba(20,12,6,.35);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .32s var(--ease),transform .32s var(--ease);z-index:905}
.mega-panel.open{opacity:1;transform:none;pointer-events:auto}
.mega-inner{max-width:1400px;margin:0 auto;padding:2.4rem 2.5rem 2.2rem;display:grid;gap:2.6rem;align-items:start}
.mg-col h5{font-family:var(--sans);font-weight:400;font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:var(--sienna);margin-bottom:1.1rem;padding-bottom:.65rem;border-bottom:1px solid var(--line)}
.mg-col ul{list-style:none}
.mg-col li{margin-bottom:.6rem}
.mg-col a{font-size:.82rem;color:var(--espresso);transition:color .3s,padding-left .3s;letter-spacing:.03em;display:inline-block}
.mg-col a:hover{color:var(--sienna);padding-left:.35rem}
.mg-coll-name{font-family:var(--serif);font-size:1.02rem;letter-spacing:.04em}
.mg-tag{font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;padding:.16rem .45rem;margin-left:.5rem;vertical-align:.14em}
.mg-tag.live{background:var(--gold-2);color:var(--ink)}
.mg-tag.so{border:1px solid var(--line);color:var(--taupe)}
.mg-mood li{margin-bottom:.9rem}
.mg-mood .mm-n{font-family:var(--serif);font-size:.98rem;display:block;color:var(--ink);transition:color .3s}
.mg-mood .mm-d{font-size:.66rem;line-height:1.65;color:var(--taupe);display:block;max-width:38ch}
.mg-mood a:hover .mm-n{color:var(--sienna)}
.mg-mood a:hover{padding-left:0}
.mg-feature{border:1px solid var(--line);background:var(--cream);display:block;overflow:hidden}
.mg-feature img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .8s var(--ease)}
.mg-feature-wide img{aspect-ratio:16/8.4}
.mg-feature:hover img{transform:scale(1.05)}
.mg-feature .mf-i{padding:1rem 1.1rem 1.2rem}
.mg-feature .mf-k{font-size:.54rem;letter-spacing:.28em;text-transform:uppercase;color:var(--sienna)}
.mg-feature .mf-t{font-family:var(--serif);font-size:1.1rem;margin:.2rem 0 .1rem}
.mg-feature .mf-c{font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.mg-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}
.mg-pc{display:block;text-align:center}
.mg-pc img{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--line);transition:transform .6s var(--ease)}
.mg-pc:hover img{transform:translateY(-4px)}
.mg-pc .n{font-family:var(--serif);font-size:.95rem;display:block;margin-top:.6rem}
.mg-pc .p{font-size:.56rem;letter-spacing:.22em;color:var(--taupe);text-transform:uppercase}
.mg-pc:hover{padding-left:0}
.mega-shop .mega-inner{grid-template-columns:1fr .9fr .8fr 1.4fr .95fr}
.mega-arrivals .mega-inner{grid-template-columns:2.6fr 1fr}
.mega-colls .mega-inner{grid-template-columns:repeat(4,minmax(0,1fr))}
.mega-guide .mega-inner{grid-template-columns:1fr 1fr 1.25fr;padding-bottom:2rem}
.mega-brand .mega-inner{grid-template-columns:1fr 1fr 1.25fr;padding-bottom:2rem}
.mg-tile{display:block;padding:1.6rem 1.4rem;border:1px solid var(--line);text-align:center;transition:transform .5s var(--ease),box-shadow .5s}
.mg-tile:hover{transform:translateY(-4px);box-shadow:0 18px 36px -20px rgba(36,26,18,.35);padding-left:1.4rem}
.mg-tile .k{font-size:.52rem;letter-spacing:.3em;text-transform:uppercase;opacity:.6;display:block}
.mg-tile .t{font-family:var(--serif);font-size:1.5rem;letter-spacing:.04em;display:block;margin:.4rem 0}
.mg-tile .s{font-size:.66rem;line-height:1.7;opacity:.72;display:block}
.mg-tile .st{font-size:.52rem;letter-spacing:.26em;text-transform:uppercase;display:inline-block;margin-top:.7rem;padding:.28rem .7rem;border:1px solid transparent;box-sizing:border-box}
.mg-tile.t-cream{background:#f1e8da;color:var(--ink)}
.mg-tile.t-dark{background:#241a12;color:var(--ivory)}
.mg-tile.t-taupe{background:#9c8672;color:#faf6f0}
.mg-tile.t-noir{background:#171210;color:var(--gold-2)}
.mg-tile.t-dark .st{background:var(--gold-2);color:var(--ink)}
.mg-tile.t-cream .st,.mg-tile.t-taupe .st,.mg-tile.t-noir .st{border:1px solid currentColor;opacity:.7}

.drawer-veil{position:fixed;inset:0;background:rgba(20,12,6,.45);opacity:0;pointer-events:none;transition:opacity .4s;z-index:990}
.drawer{position:fixed;top:0;bottom:0;left:0;width:min(88vw,380px);background:var(--ivory);z-index:995;transform:translateX(-102%);transition:transform .5s var(--ease);overflow-y:auto;box-shadow:30px 0 60px -30px rgba(20,12,6,.4)}
body.drawer-open .drawer{transform:none}
body.drawer-open .drawer-veil{opacity:1;pointer-events:auto}
body.drawer-open .burger span:nth-child(1){top:20px;transform:rotate(45deg)}
body.drawer-open .burger span:nth-child(2){opacity:0}
body.drawer-open .burger span:nth-child(3){top:20px;transform:rotate(-45deg)}
.drawer-head{padding:1.4rem 1.6rem;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.3rem;letter-spacing:.18em}
.drawer-head small{display:block;font-family:var(--sans);font-size:.5rem;letter-spacing:.4em;color:var(--taupe);text-transform:uppercase;margin-top:.15rem}
.dr-group{border-bottom:1px solid var(--line)}
.dr-head{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.15rem 1.6rem;font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;text-align:left}
.dr-head .ic{position:relative;width:11px;height:11px;flex:none}
.dr-head .ic::before,.dr-head .ic::after{content:'';position:absolute;background:var(--sienna);transition:transform .4s var(--ease)}
.dr-head .ic::before{top:50%;left:0;width:100%;height:1px}
.dr-head .ic::after{left:50%;top:0;height:100%;width:1px}
.dr-group.open .dr-head .ic::after{transform:rotate(90deg)}
.dr-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.dr-group.open .dr-body{grid-template-rows:1fr}
.dr-body>div{overflow:hidden}
.dr-body ul{list-style:none;padding:0 1.6rem 1.2rem}
.dr-body li{margin-bottom:.55rem}
.dr-body a{font-size:.85rem;color:var(--espresso)}
.dr-body .sub{font-size:.56rem;letter-spacing:.26em;text-transform:uppercase;color:var(--sienna);margin:.9rem 0 .5rem;display:block}
.drawer-foot{padding:1.4rem 1.6rem;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe);display:flex;gap:1.4rem}

@media(max-width:1080px){
  .nav-links{display:none}
  .burger{display:block}
  .nav-inner{grid-template-columns:auto 1fr auto;padding:.7rem 1.1rem;gap:.8rem}
  .logo{font-size:1.2rem}
  .logo small{font-size:.44rem}
  .nav-right{gap:1rem;font-size:.6rem}
  .nav-right .search-link{display:none}
  .nav-right .account-link{display:none}
  .announce{font-size:.52rem;letter-spacing:.14em;padding:.5rem .8rem}
  .mega-panel{display:none}
}

/* Keep every Composition card's layout intact while omitting the tip-count label. */
#composition .veil-card .count{visibility:hidden}

/* Match the reference card rhythm while keeping all four status controls aligned. */
.mega-colls .mega-inner{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.mega-colls .mg-tile{min-width:0;box-sizing:border-box;align-self:stretch;display:grid;grid-template-rows:auto auto auto auto;align-content:start;justify-items:center}
.mega-colls .mg-tile .s{min-height:calc(.66rem * 1.7 * 2)}
/* ---------------------------------------------------------------------------
   THE FOUR COLLECTION COVERS
   The same plate the homepage uses, rebuilt at mega-menu scale: the tile's own
   ground, a hairline frame set in from the edge, the ghost numeral bleeding off
   the corner, and a call to action that is type rather than a box.
   --------------------------------------------------------------------------- */
.mega-colls .mega-inner{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.8rem;align-items:stretch}
.mega-colls .mg-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;
  aspect-ratio:4/3.4;min-width:0;padding:1.7rem 1.3rem;border:0;
  transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.mega-colls .mg-tile:hover{transform:translateY(-6px);box-shadow:0 34px 60px -32px rgba(36,26,18,.45);padding-left:1.3rem}

/* grounds — the homepage's own four */
.mega-colls .mg-tile.t-cream{background:#f1e8da;color:var(--ink)}
.mega-colls .mg-tile.t-dark {background:#241a12;color:var(--ivory)}
.mega-colls .mg-tile.t-taupe{background:#9c8672;color:#faf6f0}
.mega-colls .mg-tile.t-noir {background:#171210;color:var(--gold-2)}

/* ghost numeral */
.mega-colls .mg-tile .ct-num{position:absolute;right:-.05em;bottom:-.32em;z-index:0;font-family:var(--serif);font-style:italic;font-size:8.2rem;line-height:1;letter-spacing:-.04em;opacity:.07;pointer-events:none;transition:opacity .6s,transform .8s var(--ease)}
.mega-colls .mg-tile:hover .ct-num{opacity:.13;transform:translateX(-5px)}

/* inset frame */
.mega-colls .mg-tile .ct-frame{position:absolute;inset:11px;z-index:1;border:1px solid currentColor;opacity:.22;pointer-events:none;transition:opacity .5s,inset .5s var(--ease)}
.mega-colls .mg-tile:hover .ct-frame{opacity:.55;inset:8px}
.mega-colls .mg-tile.t-dark .ct-frame,.mega-colls .mg-tile.t-noir .ct-frame{border-color:var(--gold-2)}

/* sheen sweep */
.mega-colls .mg-tile .ct-sheen{position:absolute;top:-20%;bottom:-20%;width:34%;left:-45%;z-index:1;background:linear-gradient(100deg,transparent,rgba(255,255,255,.14),transparent);transform:skewX(-14deg);pointer-events:none;transition:left 1.1s var(--ease)}
.mega-colls .mg-tile:hover .ct-sheen{left:120%}
.mega-colls .mg-tile.t-cream .ct-sheen{background:linear-gradient(100deg,transparent,rgba(163,84,38,.08),transparent)}

/* centre composition */
.mega-colls .mg-tile .ct-center{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.7rem 1.2rem}
.mega-colls .mg-tile .ct-k{font-size:.52rem;letter-spacing:.34em;text-transform:uppercase;opacity:.55;margin-bottom:.85rem}
.mega-colls .mg-tile .ct-t{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.1vw,2.05rem);letter-spacing:.06em;line-height:1;display:block}
.mega-colls .mg-tile.t-noir .ct-t{background:linear-gradient(120deg,#d9bc85,#f4e3bb 45%,#b9924f);-webkit-background-clip:text;background-clip:text;color:transparent}
.mega-colls .mg-tile .ct-word{font-size:.5rem;letter-spacing:.5em;text-transform:uppercase;opacity:.6;margin:.7rem 0 .8rem;display:flex;align-items:center;gap:.7rem}
.mega-colls .mg-tile .ct-word::before,.mega-colls .mg-tile .ct-word::after{content:'';width:22px;height:1px;background:currentColor;opacity:.5}
.mega-colls .mg-tile .ct-s{font-size:.66rem;letter-spacing:.04em;line-height:1.8;opacity:.72;max-width:30ch}
.mega-colls .mg-tile .ct-cta{display:inline-block;margin-top:.95rem;font-size:.54rem;letter-spacing:.28em;text-transform:uppercase;opacity:.72;color:inherit;transition:opacity .45s var(--ease),transform .45s var(--ease)}
.mega-colls .mg-tile.t-dark .ct-cta,.mega-colls .mg-tile.t-noir .ct-cta{color:var(--gold-2)}
.mega-colls .mg-tile:hover .ct-cta{opacity:1;transform:translateY(-2px)}

/* the pre-script fallback markup carries bare spans; centre those too */
.mega-colls .mg-tile>.k{font-size:.52rem;letter-spacing:.34em;text-transform:uppercase;opacity:.55;margin-bottom:.85rem;z-index:2}
.mega-colls .mg-tile>.t{font-family:var(--serif);font-size:1.7rem;letter-spacing:.06em;line-height:1;z-index:2}
.mega-colls .mg-tile>.s{font-size:.66rem;line-height:1.8;opacity:.72;max-width:30ch;margin-top:.7rem;z-index:2}
.mega-colls .mg-tile>.st{margin-top:.95rem;font-size:.54rem;letter-spacing:.28em;text-transform:uppercase;opacity:.72;background:none;border:0;padding:0;color:inherit;box-shadow:none;z-index:2}
.mega-colls .mg-tile.t-dark>.st,.mega-colls .mg-tile.t-noir>.st{color:var(--gold-2)}

@media(max-width:1240px){
  .mega-colls .mg-tile{aspect-ratio:4/4.1}
  .mega-colls .mg-tile .ct-num{font-size:7rem}
}

/* ---------------------------------------------------------------------------
   COLLECTION BANNERS
   The four covers ran to 780px, which pushed the collection itself below the
   fold.  Same composition, tightened to 440 on all four: the paragraphs stay
   stacked one above the other, the measure is opened up so each sets in fewer
   lines, and the display sizes and vertical rhythm are pulled in to match.
   --------------------------------------------------------------------------- */
.chero{min-height:440px;padding:2.7rem 2.5rem}
.chero .ch-inner{max-width:700px}
.chero .ch-frame{inset:13px}
.chero .ch-num{font-size:clamp(5.5rem,12vw,9.5rem);bottom:-.28em}
.chero .ch-k{font-size:.56rem;letter-spacing:.32em}
.chero .ch-title{font-size:clamp(1.8rem,3.2vw,2.4rem);line-height:1.12;margin:.4rem 0 .18rem}
.chero .ch-word{font-size:.54rem;letter-spacing:.3em;gap:.7rem;margin-bottom:.55rem}
.chero .ch-word::before,.chero .ch-word::after{width:24px}
.chero .ch-tag{font-size:clamp(.96rem,1.4vw,1.12rem);line-height:1.35;margin-bottom:.72rem}
.chero .ch-copy{max-width:none;font-size:.8rem;line-height:1.78}
.chero .ch-copy + .ch-copy{margin-top:.7rem}
.chero .ch-cta{margin-top:1rem}
.chero .ch-btn{padding:.72rem 1.9rem;font-size:.59rem;letter-spacing:.26em}
.chero .ch-note{margin-top:.55rem;font-size:.54rem}
@media(max-width:900px){
  .chero{min-height:0;padding:2.6rem 1.5rem}
}
@media(max-width:720px){.chero{padding:2.2rem 1.2rem}.chero .ch-copy{font-size:.78rem;line-height:1.8}}

/* A collection banner is a flex row, which out-ranks the browser's own rule for
   [hidden]; say it explicitly so the catalogue can hide it on a filtered view. */
.chero[hidden]{display:none}

/* Series names are independent navigation links without changing their original visual treatment. */
a.stage-tag,.panel a.eyebrow,.sticky-bar a.series-inline{color:inherit;text-decoration:none}
a.stage-tag:hover,.panel a.eyebrow:hover,.sticky-bar a.series-inline:hover{text-decoration:underline;text-underline-offset:4px}

/* Keep the mobile document locked to the viewport without disabling intentional in-section scrollers. */
@media(max-width:1080px){
  html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
  body{position:relative}
  @supports(overflow:clip){html,body{overflow-x:clip}}
}

.mk-search{
  position:fixed;
  inset:0;
  z-index:2000;
  visibility:hidden;
  opacity:0;
  transition:opacity .32s ease,visibility .32s ease;
  font-family:'Jost','Helvetica Neue',sans-serif;
  color:#241a12;
}
.mk-search.is-open{visibility:visible;opacity:1}
.mk-search__backdrop{position:absolute;inset:0;background:rgba(20,12,6,.55);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.mk-search__panel{
  position:relative;
  width:min(100%,980px);
  max-height:min(86vh,820px);
  margin:5vh auto 0;
  background:#faf6f0;
  border:1px solid rgba(61,44,30,.18);
  box-shadow:0 40px 100px rgba(20,12,6,.28);
  overflow:auto;
  transform:translateY(-14px);
  transition:transform .4s cubic-bezier(.22,1,.36,1);
}
.mk-search.is-open .mk-search__panel{transform:none}
.mk-search__head{padding:2rem 2.2rem 1.4rem;border-bottom:1px solid rgba(61,44,30,.14)}
.mk-search__eyebrow{display:block;font-size:.56rem;letter-spacing:.32em;text-transform:uppercase;color:#a35426;margin-bottom:.65rem}
.mk-search__form{display:flex;align-items:center;gap:1rem}
.mk-search__icon{width:18px;height:18px;border:1.5px solid #8a7663;border-radius:50%;position:relative;flex:none}
.mk-search__icon::after{content:'';position:absolute;width:7px;height:1.5px;background:#8a7663;right:-5px;bottom:-2px;transform:rotate(45deg);transform-origin:left center}
.mk-search__input{width:100%;border:0;border-bottom:1px solid rgba(61,44,30,.3);background:transparent;color:#241a12;font-family:'Cormorant Garamond',Georgia,serif;font-size:2rem;font-weight:400;padding:.25rem 0 .45rem;outline:none}
.mk-search__input::placeholder{color:#8a7663;opacity:.62}
.mk-search__input:focus{border-color:#a35426}
.mk-search__close{position:absolute;right:1.35rem;top:1.25rem;width:38px;height:38px;border:1px solid rgba(61,44,30,.18);border-radius:50%;background:#faf6f0;cursor:pointer;z-index:2;transition:border-color .25s,transform .25s}
.mk-search__close:hover{border-color:#a35426;transform:rotate(5deg)}
.mk-search__close::before,.mk-search__close::after{content:'';position:absolute;left:11px;right:11px;top:18px;height:1px;background:#241a12}
.mk-search__close::before{transform:rotate(45deg)}.mk-search__close::after{transform:rotate(-45deg)}
.mk-search__body{padding:1.35rem 2.2rem 2.2rem}
.mk-search__status{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:#8a7663;min-height:1.2em;margin-bottom:1rem}
.mk-search__empty{padding:2.6rem 0 3rem;text-align:center;color:#8a7663;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.2rem;font-style:italic}
.mk-search__quick{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:1.2rem}
.mk-search__quick button{border:1px solid rgba(61,44,30,.18);background:transparent;color:#3d2c1e;padding:.52rem .8rem;font-family:inherit;font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .25s,border-color .25s}
.mk-search__quick button:hover{background:#f3ebe0;border-color:#a35426}
.mk-search__results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.mk-search__result{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:1rem;min-height:80px;border:1px solid rgba(61,44,30,.13);background:#f7f0e7;color:inherit;text-decoration:none;transition:transform .25s,border-color .25s,background .25s;overflow:hidden}
.mk-search__result:hover,.mk-search__result:focus-visible{transform:translateY(-2px);border-color:#a35426;background:#f3ebe0;outline:none}
.mk-search__thumb{width:78px;height:78px;object-fit:cover;display:block}
.mk-search__mark{width:78px;height:78px;display:flex;align-items:center;justify-content:center;background:#e9ddce;color:#a35426;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.25rem;letter-spacing:.08em}
.mk-search__copy{padding:.65rem .8rem .65rem 0;min-width:0}
.mk-search__type{display:block;font-size:.5rem;letter-spacing:.24em;text-transform:uppercase;color:#a35426;margin-bottom:.2rem}
.mk-search__name{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.16rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mk-search__desc{display:block;font-size:.62rem;color:#8a7663;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.15rem}

@media(max-width:1080px){
  .drawer-foot{flex-wrap:wrap}
  .dr-body .sub{padding-top:.25rem}
  .dr-body li:has(.sub){margin-bottom:.35rem}
  .dr-body li.dr-mood{margin-bottom:.8rem}
  .dr-body .dr-mood a{display:block;padding-left:.8rem;border-left:1px solid rgba(163,84,38,.3)}
  .dr-body .dr-mood span{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:1rem;letter-spacing:.02em;color:#3d2c1e}
  .dr-body .dr-mood small{display:block;margin-top:.15rem;font-size:.62rem;line-height:1.5;color:#8a7663}
}
@media(max-width:720px){
  .mk-search__panel{width:calc(100% - 1rem);max-height:calc(100vh - 1rem);margin:.5rem auto 0}
  .mk-search__head{padding:4.4rem 1.2rem 1.15rem}
  .mk-search__input{font-size:1.55rem}
  .mk-search__body{padding:1.1rem 1.2rem 1.5rem}
  .mk-search__results{grid-template-columns:1fr}
  .mk-search__close{right:1rem;top:1rem}
}

/* Shared commerce states: one treatment for catalogue cards, search, product pages and Vitrine. */
.mk-offer-price{display:inline-flex;align-items:baseline;justify-content:inherit;gap:.42em;flex-wrap:wrap;line-height:1.15}
.mk-offer-price .mk-was{font-size:.68em;color:var(--taupe,#8a7663);text-decoration-line:line-through;text-decoration-thickness:1px;text-decoration-color:currentColor;opacity:.82}
.mk-offer-price .mk-now{color:var(--sienna,#a35426)}
.mk-offer-price .mk-special{font-family:'Jost',Arial,sans-serif;font-size:.42em;letter-spacing:.18em;text-transform:uppercase;color:var(--sienna,#a35426);white-space:nowrap}
.price{white-space:nowrap}
.price .mk-offer-price{gap:.38em;flex-wrap:nowrap}
.price .mk-offer-price .mk-was{font-size:.52em}
.price .mk-offer-price .mk-special{font-size:.24em;border:1px solid rgba(163,84,38,.38);padding:.42em .65em;transform:translateY(-.18em)}
.price .mk-currency{font-family:'Jost',Arial,sans-serif;font-size:.4em;letter-spacing:.1em;color:var(--taupe,#8a7663);vertical-align:.28em}
.card .mk-offer-price,.pcard .mk-offer-price,.shelf-card .mk-offer-price,.so-card .mk-offer-price,.bitem .mk-offer-price{justify-content:center}
.card .row .mk-offer-price{justify-content:flex-start}
.bitem .mk-offer-price{display:flex;gap:.28em;line-height:1.35}
.bitem .mk-offer-price .mk-special{flex-basis:100%;font-size:.72em}
.sticky-bar .mk-offer-price .mk-was{color:rgba(243,235,224,.58)}
.sticky-bar .mk-offer-price .mk-now,.sticky-bar .mk-offer-price .mk-special{color:var(--gold-2,#d9bc85)}
.mk-search__price{display:block;margin-top:.28rem;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:#a35426}
.mk-search__price .mk-offer-price{gap:.5em}
.mk-search__price .mk-offer-price .mk-special{font-size:.76em}
.mk-sold-out{display:inline-block;font-family:'Jost',Arial,sans-serif;font-size:.62em;letter-spacing:.22em;text-transform:uppercase;color:var(--sienna,#a35426);white-space:nowrap}
.price .mk-sold-out{font-size:.34em;border:1px solid rgba(163,84,38,.38);padding:.58em .8em;vertical-align:.28em}
.mk-sold-card{position:relative}
.mk-sold-card::after{content:'Sold Out';position:absolute;z-index:5;top:.9rem;right:.9rem;padding:.42rem .68rem;background:rgba(36,26,18,.9);color:#f8f3ec;font-family:'Jost',Arial,sans-serif;font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;pointer-events:none}
.mk-sold-card img{filter:saturate(.72)}
.btn-primary:disabled,.btn-ghost:disabled,.qty button:disabled,.qty input:disabled{cursor:not-allowed;opacity:.48}
.btn-primary:disabled .bg{transform:none!important}

@media(max-width:720px){
  .price{white-space:normal}
  .price .mk-offer-price{align-items:center;gap:.3em}
  .price .mk-offer-price .mk-special{flex-basis:auto}
  .card .row .mk-offer-price{max-width:58%}
  .mk-offer-price .mk-special{letter-spacing:.13em}
}

/* Homepage: keep the mobile Vitrine structurally still while its native scroller advances one card at a time. */
@media(max-width:900px){
  .living{width:100%;max-width:100%;overflow:hidden}
  .living .vt-head{padding:2.6rem 1.4rem 0;display:grid;grid-template-columns:minmax(0,1fr);gap:1.35rem;align-items:start}
  .living .vt-head>div{min-width:0}
  .living .vt-title{font-size:clamp(1.85rem,9vw,2.3rem);line-height:1.08}
  .living .vt-sub{font-size:.78rem;line-height:1.8}
  .living .vt-head .btn-gold{width:100%;padding:.95rem 1.2rem;text-align:center}
  .living .belt-wrap{
    width:100%;max-width:100%;margin-top:1.35rem;padding:1rem 0 2.2rem;
    overflow-x:auto!important;overflow-y:hidden;scroll-snap-type:x mandatory;
    scroll-padding-inline:1.4rem;overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-width:none;
  }
  .living .belt-wrap::-webkit-scrollbar{display:none}
  .living .belt-wrap::before,.living .belt-wrap::after{display:none}
  .living .belt{
    display:flex;width:max-content;max-width:none;gap:.85rem;padding:0 1.4rem;
    animation:none!important;transform:none!important;will-change:auto;
  }
  .living .bitem{
    box-sizing:border-box;display:flex;flex-direction:column;
    flex:0 0 min(66vw,205px);width:min(66vw,205px);min-width:min(66vw,205px);
    height:285px;min-height:285px;margin:0;padding:1.55rem 1rem 1.1rem;
    overflow:hidden;border:1px solid rgba(217,188,133,.22);
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
    scroll-snap-align:center;scroll-snap-stop:always;transform:none!important;
  }
  .living .bt-spot{max-width:150%;overflow:hidden}
  .living .lv-nail{
    display:block;flex:0 0 160px;width:80px!important;max-width:80px;height:160px!important;
    margin:0 auto;overflow:hidden;transform:none!important;
  }
  .living .lv-nail canvas{display:block;width:100%!important;height:100%!important}
  .living .mk-mobile-live-svg{overflow:hidden!important;isolation:isolate}
  .living .mk-mobile-material,.living .mk-mobile-material-layer{pointer-events:none}
  .living .bt-ref{display:none}
  .living .bt-plaque{width:100%;margin-top:auto}
  .living .bp-n{font-size:.9rem}
  .living .bp-p{font-size:.48rem}
}

/* Product pages: fixed mobile cards; only the lacquer inside each nail remains animated. */
@media(max-width:900px){
  #composition.block{width:100%;max-width:100%;padding:4.5rem 1.4rem!important;overflow:hidden}
  #composition .sec-title{font-size:clamp(2rem,9vw,2.8rem);line-height:1.08}
  #composition .sec-sub{max-width:38rem;margin-left:auto;margin-right:auto;font-size:.86rem;line-height:1.85}
  #composition .veils{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    width:100%;max-width:680px;gap:1rem;margin:2.5rem auto 0;
    align-items:stretch;transform:none!important;
  }
  #composition .veil-card{
    box-sizing:border-box;display:flex;flex-direction:column;align-items:center;
    width:100%;min-width:0;max-width:100%;overflow:hidden;
    padding:2.6rem 1.35rem 1.7rem;transform:none!important;box-shadow:none!important;
  }
  #composition .veil-card .num{top:1rem;left:1.15rem}
  #composition .veil-nail{
    display:block;flex:0 0 156px;width:78px!important;max-width:78px;
    height:156px!important;min-height:156px;max-height:156px;
    margin:0 auto 1.35rem;overflow:hidden!important;transform:none!important;
  }
  #composition .veil-nail canvas{
    display:block;width:100%!important;height:100%!important;
    max-width:100%!important;max-height:100%!important;
  }
  #composition .mk-mobile-webgl-nail{
    position:relative!important;display:block!important;overflow:hidden!important;
    isolation:isolate;contain:layout paint style;
  }
  #composition .mk-mobile-webgl-nail>.mk-mobile-webgl-canvas{
    position:absolute!important;z-index:1;inset:0!important;display:block!important;
    box-sizing:border-box!important;width:100%!important;height:100%!important;
    min-width:0!important;max-width:100%!important;min-height:0!important;max-height:100%!important;
    margin:0!important;padding:0!important;border:0!important;transform:none!important;
    object-fit:fill;pointer-events:none;
  }
  #composition .mk-mobile-webgl-overlay{
    position:absolute!important;z-index:2;inset:0!important;display:block!important;
    width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
    margin:0!important;padding:0!important;overflow:hidden!important;pointer-events:none;
  }
  #composition .mk-mobile-live-svg{overflow:hidden!important;isolation:isolate}
  #composition .mk-mobile-material,#composition .mk-mobile-material-layer{pointer-events:none}
  #composition .veil-card h3{width:100%;font-size:1.4rem;line-height:1.15;margin-bottom:.35rem}
  #composition .veil-card .count{width:100%;font-size:.56rem;line-height:1.5;margin-bottom:.8rem}
  #composition .veil-card>p:last-child{width:100%;max-width:36ch;margin-left:auto;margin-right:auto;font-size:.8rem;line-height:1.8;overflow-wrap:anywhere}
}

/* ===========================================================================
   GLOBAL READABILITY LAYER
   A restrained 12% type lift, firmer weights and clearer small text.  This is
   deliberately kept in the shared stylesheet so every page receives the same
   treatment without changing page markup or the house typefaces.
   =========================================================================== */
:root{
  --taupe:#6f5c49;
}

html{font-size:112%}
body{font-weight:400}

/* Cormorant's hairlines need one additional weight step at display sizes. */
h1,h2,h3,h4,h5,h6,
.logo,.drawer-head,.mg-coll-name,.mg-mood .mm-n,.mg-feature .mf-t,.mg-pc .n,
.mg-tile .t,.mega-colls .mg-tile .ct-t,.mega-colls .mg-tile>.t,
.chero .ch-title,.chero .ch-tag,.mk-search__input,.mk-search__empty,
.mk-search__mark,.mk-search__name,.dr-body .dr-mood span,
.living .vt-title,.living .bp-n,#composition .sec-title,#composition .veil-card h3,
.price,.pr,.product-name,.story-title,.sec-title{
  font-weight:500!important;
}
strong,b,.mg-col h5,.review .who b,.tbl th,.tline b{font-weight:500}

/* No functional label is allowed to fall below the house's readable minimum. */
.announce,.logo small,.mg-tag,.drawer-head small,.mg-tile .k,.mg-tile .st,
.mg-feature .mf-k,.mega-colls .mg-tile .ct-k,.mega-colls .mg-tile .ct-word,
.mega-colls .mg-tile .ct-cta,.mega-colls .mg-tile>.k,.mega-colls .mg-tile>.st,
.chero .ch-badge,.chero .ch-word,.chero .ch-note,.ct-badge,
.mk-search__type,.mk-sold-card::after,
.living .bp-p,.vp-p,.bp-p,.colcard.best::before,.pcard .c,.tier.feature::before,
.ai-view,.ai-cap .t,.ai-num,.ablx-pair figcaption,.ablx-meta .t,.ablx-meta .k,
.ablx-close,.gc-card .lg small,.gc-card .em,.gc-card .no,.gc-card .kd{
  font-size:.62rem!important;
}
.sec-eyebrow{font-size:.66rem!important}

/* Bring widely tracked microcopy back into readable words, not isolated glyphs. */
.logo small,.mg-col h5,.mg-tag,.drawer-head small,.dr-head,.dr-body .sub,
.mg-feature .mf-k,.mg-feature .mf-c,.mg-pc .p,.mg-tile .k,.mg-tile .st,
.mega-colls .mg-tile .ct-k,.mega-colls .mg-tile .ct-word,
.mega-colls .mg-tile .ct-cta,.mega-colls .mg-tile>.k,.mega-colls .mg-tile>.st,
.sec-eyebrow,.stage-tag,.car-item .cap,.mh-eyebrow,.story-sign small,
.veil-card .count,.rot-hint,.nl-row button,.gallery-note,.price-note,
.spec-table td:first-child,.foot-grid h4,.panel .eyebrow,.opt-label,
.acc-head,.btn-primary,.btn-ghost,.phero .eyebrow,.sec .k,.fld label,
.colcard.best::before,.pcard .c,.chero .ch-k,.chero .ch-word,
.chero .ch-badge,.chero .ch-btn,.chero .ch-note,.ct-badge,
.mk-search__eyebrow,.mk-search__type{
  letter-spacing:.24em!important;
}
.logo small{text-indent:.26em}

/* Use solid, intentional colours instead of fading already-light body copy. */
.mg-tile .s,.mega-colls .mg-tile .ct-s,.mega-colls .mg-tile>.s,
.chero .ch-copy,.ct-center p,.tg,.icat .tg,.ai-cap .d{
  opacity:1!important;
}
.mg-tile .k,.mega-colls .mg-tile .ct-k,.mega-colls .mg-tile>.k{opacity:.88}
.mg-tile .st,.mega-colls .mg-tile .ct-cta,.mega-colls .mg-tile>.st{opacity:1}

/* The footer is dark, so its supporting copy needs the inverse contrast lift. */
.foot-grid p.tag,.newsletter p{color:rgba(243,235,224,.78)}
.foot-grid ul a{color:rgba(243,235,224,.82)}
.foot-base{color:rgba(243,235,224,.68)}
.living .vt-sub{color:rgba(243,235,224,.82)}

/* The larger navigation type still stays on its intended single baseline. */
.nav-links,.nav-links>span,.nav-links>span>a{white-space:nowrap}

/* Keep a regular product price and its currency together after the type lift. */
.price-row .price:not(:has(.mk-offer-price)){flex:none;white-space:nowrap}

/* ===========================================================================
   READABILITY LAYER — FITTINGS
   The 12% lift above is kept exactly as it is.  What follows only gives the
   few places whose width is fixed by design — the masthead lockup and the
   navigation rail, the mega-menu feature card — the room that the larger type
   asks for, so the wordmark sits on the centre line again and no label is
   pushed past its frame.
   =========================================================================== */

/* The lockup is a mark, not copy: it keeps its own scale and its own air. */
.logo small{font-size:.5rem!important;letter-spacing:.48em!important;text-indent:.48em}

/* The navigation is a rail with a fixed budget, so it is fitted in three
   steps.  At each step the wordmark's two flanks stay equal, which is what
   holds it exactly on the centre of the page. */
.nav-inner{padding-left:2rem;padding-right:2rem;gap:1.2rem}
.nav-links{gap:1.5rem;font-size:.63rem;letter-spacing:.18em}
.nav-right{gap:1.3rem;font-size:.63rem;letter-spacing:.18em}
@media(max-width:1366px){
  .nav-inner{padding-left:1.4rem;padding-right:1.4rem;gap:.9rem}
  .nav-links{gap:1.15rem;font-size:.61rem;letter-spacing:.14em}
  .nav-right{gap:1.05rem;font-size:.61rem;letter-spacing:.14em}
}
@media(max-width:1280px){
  .nav-inner{padding-left:1.15rem;padding-right:1.15rem;gap:.8rem}
  .nav-links{gap:.85rem;font-size:.585rem;letter-spacing:.105em}
  .nav-right{gap:.9rem;font-size:.585rem;letter-spacing:.105em}
}
/* Below the desktop rail the drawer takes over, so the bar returns to the
   compact geometry the pages already declare for it. */
@media(max-width:1080px){
  .nav-inner{padding-left:1.1rem;padding-right:1.1rem;gap:.8rem}
  .nav-right{gap:1rem;font-size:.6rem;letter-spacing:.18em}
  .logo small{font-size:.44rem!important;letter-spacing:.4em!important;text-indent:.4em}
}

/* The mega-menu feature card is a fixed column; its two rules of microcopy
   are set to read in words rather than to break across the plate. */
.mg-feature .mf-k{font-size:.56rem!important;letter-spacing:.2em!important}
.mg-feature .mf-c{font-size:.52rem!important;letter-spacing:.12em!important;line-height:1.75}

/* The product page's fixed purchase bar has a fixed width to spend on a phone:
   the set's name holds the line and everything under it is allowed to fold. */
@media(max-width:560px){
  .sticky-inner{gap:.75rem;padding-left:.95rem;padding-right:.95rem}
  .sticky-inner .info{min-width:0}
  .sticky-inner .nm{max-width:100%;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sticky-inner .pr{max-width:100%;font-size:.6rem;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
  .sticky-inner .btn-primary{padding:.82rem 1.15rem;font-size:.56rem;letter-spacing:.16em!important}
}

/* On a single-column product page the gallery column must be free to take the
   width it is given rather than the width its widest caption would like. */
@media(max-width:980px){
  .product{grid-template-columns:minmax(0,1fr)}
  .product>.gallery,.product>.buy{min-width:0}
  .gallery .rot-hint{flex-wrap:wrap}
}

/* Same rule for the story spread, and for the price line: a struck original,
   its new price and the offer mark are allowed to fold onto a second line on a
   phone rather than push the panel past the screen. */
@media(max-width:980px){
  .story-grid{grid-template-columns:minmax(0,1fr)}
  .story-grid>*{min-width:0}
  .story-art{max-width:100%;overflow:hidden}
}
@media(max-width:560px){
  .price-row{flex-wrap:wrap;gap:.6rem 1rem}
  .price .mk-offer-price{flex-wrap:wrap}
  .price .mk-offer-price .mk-special{transform:none}
}

/* ---------------------------------------------------------------------------
   MEGA MENU — VERTICAL FIT
   The panels are drop-downs, not takeovers: after the type lift the Shop panel
   stood 586px tall and reached the bottom of a laptop screen.  The rhythm of
   every panel is tightened by the same amount, and the Shop panel's five
   columns are re-proportioned so The Mood Edit reads on a wider measure — two
   lines instead of three — which is what brings the whole plate back up.
   Nothing is removed: every link, every line of copy is still there.
   --------------------------------------------------------------------------- */
.mega-inner{padding-top:1.85rem;padding-bottom:1.6rem}
.mega-panel .mg-col h5{margin-bottom:.72rem;padding-bottom:.42rem}
.mega-panel .mg-col h5[style]{margin-top:1rem!important}
.mega-panel .mg-col li{margin-bottom:.42rem}
.mega-shop .mega-inner{grid-template-columns:.95fr .88fr .8fr 1.8fr 1fr;gap:1.9rem}
.mega-shop .mg-mood li{margin-bottom:.6rem}
.mega-shop .mg-mood .mm-n{line-height:1.28}
.mega-shop .mg-mood .mm-d{max-width:none;font-size:.63rem;line-height:1.5;margin-top:.08rem}

/* ===========================================================================
   COLLECTION BANNER — one plate for all four
   Indi and Haute carry a call to action that Runway and Press'N Go do not, and
   Indi's opening paragraph runs longer than the others.  Widening the measure
   by eighty pixels lets that copy fold into fewer lines, and setting the call
   to action on a single line recovers the rest — so all four banners stand at
   exactly 440px again with every word of the original copy still in place.
   =========================================================================== */
.chero .ch-inner{max-width:780px}
.chero .ch-cta{
  margin-top:.35rem;display:flex;align-items:center;justify-content:center;
  gap:1.05rem;flex-wrap:wrap;
}
.chero .ch-btn{padding:.54rem 1.65rem}
.chero .ch-note{margin-top:0}
/* Haute and Indi carry a call to action beneath their copy. The button and
   its quiet note stack on two centred lines — the button first, the note
   beneath it in small caps — instead of sitting side by side. The banners
   keep the 440px floor and take only the height the stacked form needs. */
.chero.ch-haute:not(.arch-cta) .ch-cta,.chero.ch-indi .ch-cta{
  margin-top:1.1rem;flex-direction:column;gap:.85rem;
}
.chero.ch-haute:not(.arch-cta) .ch-btn,.chero.ch-indi .ch-btn{padding:.72rem 2.1rem}
.chero.ch-haute:not(.arch-cta) .ch-note,.chero.ch-indi .ch-note{letter-spacing:.26em}
/* The eighth commission at the foot of the Haute page carries the same pair,
   and the same reasoning applies: set side by side, the button and its note
   read as one crowded line. That section stands on its own rather than inside
   a banner, so the two are given a little more air than in the banner above. */
.chero.ch-haute.arch-cta .ch-cta{
  margin-top:1.9rem;flex-direction:column;gap:1.05rem;
}
.chero.ch-haute.arch-cta .ch-btn{padding:.95rem 2.4rem}
.chero.ch-haute.arch-cta .ch-note{letter-spacing:.26em}

/* ---------------------------------------------------------------------------
   HAIRLINES
   Three places measured a few pixels wider than their frame.  None of them
   ever scrolled the page; these rules simply give each one the room its own
   effect asks for, without changing what is drawn.
   --------------------------------------------------------------------------- */
/* The hero's Ken Burns zoom is already clipped by the hero; clipping the slide
   stack at the same edge changes nothing on screen. */
.slides{overflow:clip}
/* The gift card is deliberately tilted 1.5°; the plate now carries the few
   pixels that rotation adds to its corners. */
.gc-plate{padding-left:3.5px;padding-right:3.5px}
/* Two product pages carry longer numerals copy than the other fifty-three; the
   two mobile columns are made strictly equal so the longest line cannot widen
   its own column past the grid. */
@media(max-width:640px){
  .numbers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .num-cell{min-width:0}
  .num-cell .lbl{overflow-wrap:anywhere}
}

/* ===========================================================================
   THE FOOTER — one footer for all ninety-two pages
   The house footer used to exist in three versions: the full four-column one
   on the guide and brand pages, a version on the product pages whose links
   only scrolled that same page, and a single line of copyright on the six
   catalogue pages.  Every page now carries the same markup; these rules are
   the guide pages' own values, lifted here so the pages that never had them
   are styled identically.  Colours are deliberately left to the readability
   layer above, which already sets them.
   =========================================================================== */
/* the six catalogue pages carried a centred, uppercased one-line footer rule;
   this resets the element to the same baseline the other pages give it */
footer{
  background:var(--ink);color:var(--shell);
  text-align:left;padding:0;font-size:1rem;line-height:1.7;letter-spacing:.02em;text-transform:none;
}
footer a{color:inherit;text-decoration:none}
.foot-inner{max-width:1400px;margin:0 auto;padding:5rem 2.5rem 3rem}
.foot-grid{
  display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.3fr;gap:3rem;
  padding-bottom:3.6rem;border-bottom:1px solid rgba(243,235,224,.12);
}
.foot-logo{font-family:var(--serif);font-size:1.6rem;letter-spacing:.2em}
.foot-grid p.tag{font-size:.78rem;line-height:2;margin-top:1.1rem;max-width:28ch}
.foot-grid h4{
  font-family:var(--sans);font-weight:400;font-size:.6rem;letter-spacing:.3em;
  text-transform:uppercase;color:var(--gold-2);margin-bottom:1.2rem;
}
.foot-grid ul{list-style:none}
.foot-grid ul li{margin-bottom:.6rem}
.foot-grid ul a{font-size:.78rem;transition:color .3s}
.foot-grid ul a:hover{color:var(--gold-2)}
.newsletter p{font-size:.78rem;line-height:1.85;margin-bottom:1.1rem}
.nl-row{display:flex;border-bottom:1px solid rgba(243,235,224,.3)}
.nl-row input{flex:1;background:transparent;border:none;color:var(--shell);font-family:var(--sans);font-size:.8rem;padding:.65rem 0;outline:none}
.nl-row input::placeholder{color:rgba(243,235,224,.35)}
.nl-row button{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-2);transition:color .3s}
.nl-row button:hover{color:#fff}
.foot-base{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
  padding-top:2.2rem;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;
}
.foot-base .pol a{margin-left:1.6rem;transition:color .3s}
.foot-base .pol a:hover{color:var(--gold-2)}
@media(max-width:1080px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.foot-grid{grid-template-columns:1fr}.foot-inner{padding:3.5rem 1.4rem 2.4rem}}

/* ===========================================================================
   THE WORDMARK
   One drawing of ManiKIRA, everywhere it appears — navigation, footer and
   the mobile drawer. The wordmark face carries its own fitted spacing, so
   the mark is set nearly solid (.08em) instead of the old display tracking
   that pulled "Mani" apart, and the ATELIER DES ONGLES whisper line is
   tracked so the two lines of the lockup finish at the same width. Kerning
   stays on, and no browser is allowed to fake a weight the face does not
   carry. Same font, same sizes — only the fit is corrected.
   =========================================================================== */
.logo,.foot-logo,.drawer-head{
  font-synthesis:none;
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}
.logo{letter-spacing:.08em;text-indent:.08em}
.logo small{letter-spacing:.28em!important;text-indent:.28em!important}
.foot-logo{letter-spacing:.08em}
.drawer-head{font-family:'ManiKIRA Wordmark',Didot,'Bodoni 72',serif!important;font-weight:500!important;letter-spacing:.08em}
@media(max-width:1080px){
  .logo small{letter-spacing:.26em!important;text-indent:.26em!important}
}

/* ---------------------------------------------------------------------------
   SOLD-OUT OPTION CHIP
   A silhouette or length the atelier still offers but has no stock of stays
   in the row — the set is not withdrawn — and reads as unavailable: dashed
   rule, the word struck through, a small marker, and no way to select it.
   --------------------------------------------------------------------------- */
.chip.sold{
  pointer-events:none;
  overflow:visible;
  border-color:var(--line);
  border-style:dashed;
}
.chip.sold::before{display:none}
.chip.sold span{
  color:var(--taupe);
  opacity:.55;
  text-decoration:line-through;
  text-decoration-thickness:1px;
}
.chip.sold::after{
  content:'Sold out';
  position:absolute;
  top:-.44rem;
  right:.5rem;
  font-family:var(--sans,'Jost','Helvetica Neue',Arial,sans-serif);
  font-size:.44rem;
  font-weight:400;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--sienna);
  background:var(--ivory,#faf6f0);
  padding:0 .3rem;
  line-height:1;
  white-space:nowrap;
  z-index:2;
}
/* The size chips are 46px circles — a printed marker does not fit beside one
   without crowding its neighbour, so a sold-out size is carried by the dashed
   ring and the struck letter alone. */
.chip.round.sold::after{content:none}

/* ---------------------------------------------------------------------------
   THE CORRESPONDENCE — the line the subscribe form answers with
   --------------------------------------------------------------------------- */
.nl-note{
  margin-top:.7rem;
  font-size:.72rem;
  letter-spacing:.06em;
  line-height:1.6;
  color:var(--gold-2,#d9bc85);
  opacity:0;
  transform:translateY(-3px);
  transition:opacity .45s var(--ease,ease),transform .45s var(--ease,ease);
}
.nl-note.show{opacity:.95;transform:none}
.nl-note.bad{color:var(--blush,#e8c4b8)}
