/* 2026-09-14 - retired-template prune: 24 selectors removed from this file.
   Each named a class that exists nowhere - not on any of the 370 published
   URLs, not in any post_content/postmeta/option row in any status, not emitted
   by any theme PHP or JS. See the note at the top of style.css for the method
   and the verification. */
/* Vanity or Vice — legacy landing-page and article visual system. */
/* Fonts are enqueued once in functions.php; avoid a second render-blocking request. */
/* Palette owned by assets/tokens/* — do not redeclare hex here. Local type fallbacks only if tokens miss. */
:root{--display:var(--font-display, 'Bodoni Moda',Georgia,serif);--body:var(--font-ui, 'Inter',sans-serif);--mono:var(--font-mono, 'IBM Plex Mono',monospace)}
body.vov-mode{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}body.vov-mode *{box-sizing:border-box}.vv-skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--paper);padding:12px 16px}.vv-skip:focus{left:8px;top:8px}.vv-wordmark{font-family:var(--display);font-size:clamp(1.35rem,2.2vw,2rem);color:var(--ink);text-decoration:none}.vv-wordmark em{color:var(--accent);font-weight:400}.vv-nav{display:flex;gap:22px;flex-wrap:wrap}.vv-nav a{font-family:var(--mono);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-decoration:none}.vv-nav a:hover{color:var(--accent)}.vv-home{overflow:hidden}.vv-bleed{width:100%;position:relative}.vv-h1{font-family:var(--display);font-weight:500;letter-spacing:-.018em;line-height:1.08;margin:0}.vv-h1 em{font-style:italic;font-weight:400}.vv-mono,.vv-kicker{font-family:var(--mono);font-size:.875rem;letter-spacing:.12em;word-spacing:.06em;text-transform:uppercase}.vv-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.vv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.5rem;border:1px solid transparent;font-family:var(--mono);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:transform .2s ease,background .2s ease,color .2s ease}.vv-btn:hover{transform:translateY(-2px)}.vv-btn--primary{background:var(--paper);color:var(--ink)}.vv-btn--primary:hover{background:var(--brass)}.vv-btn--ghost{border-color:rgba(247,244,238,.7);color:var(--color-text-on-dark);background:rgba(13,13,15,.45)}.vv-btn--ghost:hover{background:var(--paper);color:var(--ink)}.vv-hero .vv-btn--ghost{background:rgba(13,13,15,.55);border-color:rgba(247,244,238,.75);color:var(--color-text-on-dark)}.vv-btn--ink{background:var(--ink);color:var(--paper)}.vv-btn--outline{border-color:var(--ink);color:var(--ink)}.vv-btn--outline:hover{background:var(--ink);color:var(--paper)}
.vv-hero{position:relative;isolation:isolate;min-height:min(92vh,900px);background:var(--plum);color:var(--paper);overflow:hidden}.vv-hero__bg,.vv-hero__scrim,.vv-hero__gridline{position:absolute;inset:0}.vv-hero__bg{background-size:cover;background-position:center right;filter:contrast(1.05) saturate(1.05)}.vv-hero__scrim{background:linear-gradient(105deg,rgba(13,13,15,.78) 0%,rgba(13,13,15,.52) 28%,rgba(13,13,15,.22) 48%,rgba(13,13,15,.06) 68%,transparent 82%),linear-gradient(to top,rgba(13,13,15,.45) 0%,transparent 38%)}.vv-hero__gridline{background-image:linear-gradient(to right,rgba(247,240,231,.06) 1px,transparent 1px);background-size:calc(100% / 12) 100%;mix-blend-mode:overlay}.vv-hero__inner{position:relative;z-index:2;padding:clamp(2rem,5vw,4.5rem) clamp(1.25rem,4vw,3rem);min-height:inherit;display:grid;grid-template-rows:auto 1fr}.vv-hero__topbar{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;border-top:1px solid rgba(247,244,238,.35);padding-top:1rem;color:var(--color-accent-metal)}.vv-hero__topbar .vv-mono{display:inline-block;padding:.2rem .55rem;background:rgba(13,13,15,.72);color:var(--color-accent-metal);border-radius:0}.vv-hero__content{align-self:end;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:clamp(2rem,6vw,6rem);align-items:end;padding-bottom:clamp(1rem,4vw,3rem)}.vv-hero__title{font-size:clamp(2.4rem,5vw,3.85rem);max-width:16ch;line-height:1.08;letter-spacing:-.018em}.vv-hero__title em{color:var(--color-accent-metal)}.vv-hero__lede{max-width:44ch;font-size:clamp(1.05rem,1.1vw,1.12rem);line-height:1.7;letter-spacing:.012em;word-spacing:.04em;color:var(--color-text-on-dark)}
.vv-verdict-band{display:grid;grid-template-columns:1.15fr 1fr;background:var(--paper)}.vv-verdict-band__image{min-height:660px;background-size:cover;background-position:center;position:relative}.vv-verdict-band__image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(13,13,15,.45))}.vv-verdict-band__body{padding:clamp(2rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;gap:1.25rem}.vv-verdict-band h2{font-size:clamp(1.85rem,3.2vw,2.85rem);line-height:1.15;letter-spacing:-.016em}.vv-verdict-band h2 em{color:var(--accent)}.vv-verdict-band p{color:var(--quiet);line-height:1.6;max-width:54ch}.vv-verdict-tag{display:inline-flex;align-items:center;padding:.45rem .8rem;color:var(--paper);font-family:var(--mono);font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;align-self:flex-start}.vv-verdict-tag--worth{background:var(--chip-worth-bg,var(--color-status-worth,#5A0E1A))}.vv-verdict-tag--stop{background:var(--chip-stop-bg,var(--color-status-stop,#7A2432))}.vv-verdict-tag--insuff{background:var(--chip-missing-bg,var(--color-status-missing,#0D0D0F))}.vv-kicker{color:var(--accent)}.vv-case-list{list-style:none;margin:2rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--rule)}.vv-case-list li{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--rule)}.vv-case-list small{display:block;font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--quiet);margin-bottom:.35rem}.vv-case-list a{font-family:var(--display);font-style:italic;font-size:clamp(1.2rem,1.8vw,1.6rem);line-height:1.2;color:var(--ink);text-decoration:none}
.vv-split{display:grid;grid-template-columns:1fr 1fr;margin-top:96px}.vv-split__image{min-height:520px;background-size:cover;background-position:center}.vv-split__copy{padding:clamp(2.5rem,6vw,5.25rem);display:flex;flex-direction:column;justify-content:center}.vv-split h2{font-size:clamp(2rem,3.8vw,3.25rem)}.vv-split h2 em{color:var(--accent)}.vv-split__copy>p{color:var(--quiet);line-height:1.65;max-width:50ch}.vv-split--light{margin-left:clamp(20px,5vw,72px);margin-right:clamp(20px,5vw,72px);border:1px solid var(--rule)}.vv-split--dark{background:var(--ink);color:var(--paper)}.vv-split--dark .vv-kicker,.vv-split--dark h2 em{color:var(--brass)}.vv-split--dark .vv-split__copy>p{color:rgba(245,241,235,.72)}
.vv-final{position:relative;margin-top:96px;min-height:520px;color:var(--paper);display:flex;align-items:center;background:var(--plum);overflow:hidden}.vv-final__media,.vv-final__scrim{position:absolute;inset:0}.vv-final__media{background-size:cover;background-position:center right;opacity:.45;mix-blend-mode:luminosity}.vv-final__scrim{background:linear-gradient(90deg,var(--plum) 0%,rgba(13,13,15,.85) 45%,rgba(13,13,15,.2) 100%)}.vv-final__copy{position:relative;z-index:2;padding:clamp(4rem,8vw,7rem) clamp(1.5rem,7vw,6rem);max-width:900px}.vv-final h2{font-size:clamp(2.25rem,5vw,4rem);font-style:italic}.vv-final .vv-kicker{color:var(--brass)}.vv-final p{max-width:52ch;color:rgba(245,241,235,.82);line-height:1.65}
.vv-footer{background:var(--ink);color:var(--paper);padding:clamp(1.75rem,3.5vw,2.75rem) clamp(1.25rem,4vw,3rem) 1.25rem}.vv-footer a{color:var(--paper);text-decoration:none;font-size:.88rem;transition:color .18s ease}.vv-footer a:hover{color:var(--brass)}
/* Slim network footer — one row of house publications, one legal line. */
footer.vv-footer--slim{padding:1.6rem clamp(1.25rem,4vw,3rem)}
footer.vv-footer--slim .vv-footer__row{max-width:1200px;margin:0 auto;display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:.5rem 1.4rem;text-align:center}
footer.vv-footer--slim .vv-footer__row a{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);text-decoration:none}
footer.vv-footer--slim .vv-footer__row a:hover,footer.vv-footer--slim .vv-footer__row a:focus-visible{color:var(--brass)}
footer.vv-footer--slim .vv-footer__suite{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(245,241,235,.14)}
/* Type floor, 2026-09-21: these three were 9.9px. max() keeps the original
   wherever it is larger, and editing them here rather than overriding them
   means the four pages that load without this sheet are left alone. */
footer.vv-footer--slim .vv-footer__suite-label{font-family:var(--mono);font-size:max(12px,.62rem);letter-spacing:.14em;text-transform:uppercase;color:rgba(245,241,235,.58)}
footer.vv-footer--slim .vv-footer__suite a[aria-current]{color:var(--brass)}
footer.vv-footer--slim .vv-footer__legal{max-width:1200px;margin:1rem auto 0;padding-top:.9rem;border-top:1px solid rgba(245,241,235,.18);display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:.3rem 1rem;font-family:var(--mono);font-size:max(12px,.62rem);letter-spacing:.12em;text-transform:uppercase;color:rgba(245,241,235,.72);text-align:center}
footer.vv-footer--slim .vv-footer__legal a{color:inherit;text-decoration:none;font-size:max(12px,.62rem);letter-spacing:.12em}
footer.vv-footer--slim .vv-footer__legal a:hover,footer.vv-footer--slim .vv-footer__legal a:focus-visible{color:var(--brass)}
@media(max-width:900px){.vv-nav{display:none}.vv-hero__content,.vv-verdict-band,.vv-split{grid-template-columns:1fr}.vv-hero{min-height:78vh}.vv-verdict-band__image,.vv-split__image{min-height:56vh}.vv-split--light{margin-left:0;margin-right:0}.vv-split--dark .vv-split__image{order:-1}.vv-case-list li{grid-template-columns:1fr}}@media(max-width:560px){.vv-hero__title{font-size:clamp(2.1rem,9vw,3.1rem);line-height:1.1}.vv-hero__topbar{font-size:.65rem}.vv-verdict-band__body,.vv-split__copy{padding:2.2rem 1.35rem}.vv-actions{align-items:stretch}.vv-btn{width:100%}.vv-final{min-height:480px}}

/* Reduced motion.
   Previously a blanket `*{transition:none!important;animation:none!important}`.
   That removes ornamental travel, which is correct, but it also kills the
   colour and focus-state transitions a reader needs in order to see that a
   control responded. Per the motion spec: strip travel, keep state.
   Ornamental transforms are neutralised; colour/opacity feedback survives at
   an instant duration so a state change is still perceivable. */
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
  .vv-btn,.vv-btn:hover,.vv-pillar,.vv-case-list li{transform:none!important}
  .vv-btn{transition:background-color .001ms linear,color .001ms linear,border-color .001ms linear}
  .vv-footer a{transition:color .001ms linear}
}

/* ---------------------------------------------------------------------------
   AA contrast corrections — homepage hero kickers + SocialSnap icon labels
   (handled by WPCode snippet). Gold raised from #C9A227 / .72 alpha to
   values that clear WCAG AA on the dark hero field (#1A1515 / espresso).

   Previous: .vv-hero__topbar at rgba(247,240,231,.72) and title em at
   var(--brass)=#C9A227. Both now use the brighter metal used in the
   sticky header (#D9A96B / #E8D5A3).

   AA contrast corrections — site-wide, found by a Lighthouse pass on an
   article page. Both live in chrome that appears on every route, so they were
   failing everywhere rather than on one template.

   1. .vv-footer__tagline sat at rgba(245,241,235,.42) over --ink, which
      computes to 3.78:1 — under AA for text at .62rem. It escaped the footer
      "contrast contract" layer because that rule lists block and inline text
      elements but not <span>. Raised to .62 alpha (~7:1).
   2. The header search placeholder sat at .42 alpha over a nearly black
      field, ~3.8:1. Placeholders are still read by sighted users typing a
      query, so the same floor applies.
   --------------------------------------------------------------------------- */


#vv-site-search::placeholder,
.vv-hybrid__search input::placeholder{color:rgba(255,250,245,.66);opacity:1}
/* Third-party overlays — force AA on cookie bar + share tooltips */
.wpconsent-banner,
.wpconsent-banner-body,
.wpconsent-container,
#wpconsent-container,
[class*="wpconsent"]{--wpconsent-text:#ffffff}
.wpconsent-banner a,
.wpconsent-banner .wpconsent-powered-by,
.wpconsent-banner .wpconsent-footer a,
#wpconsent-container a,
[class*="wpconsent"] a{color:#ffffff!important;opacity:1!important}
.wpconsent-banner button,
.wpconsent-accept-all,
button[class*="accept"]{color:var(--brand-near-black,#0D0D0F)!important}
.ss-share-network-tooltip{color:var(--brand-near-black,#0D0D0F)!important;background:var(--brand-parchment,#F7F4EE)!important}

/* Homepage decision map + media integrity. */
.vv-media-img{display:block;width:100%;height:100%;object-fit:cover}
.vv-hero__desks{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem 1rem;margin-top:1.15rem;padding-top:.95rem;border-top:1px solid rgba(247,240,231,.32);font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.vv-hero__desks span{color:#F5E6B8}
.vv-hero__desks a{color:#F7F0E7;text-decoration:none;border-bottom:1px solid rgba(247,240,231,.45);padding-bottom:.18rem}
.vv-hero__desks a:hover,.vv-hero__desks a:focus-visible{color:#F5E6B8;border-color:#F5E6B8}
.vv-pillars{background:var(--paper);padding:clamp(3.5rem,7vw,6rem) clamp(1.25rem,4vw,3rem);border-bottom:1px solid var(--rule)}
.vv-pillars__inner{max-width:1440px;margin:0 auto}
.vv-pillars__head{margin:0 0 clamp(2rem,4vw,3rem)}
.vv-pillars__head .vv-kicker{color:var(--accent);display:block;margin-bottom:1rem}
.vv-pillars__head h2{font-family:var(--display);font-weight:500;font-size:clamp(2rem,4vw,3.25rem);line-height:1.08;letter-spacing:-.018em;margin:0}
.vv-pillars__head h2 em{font-style:italic;color:var(--accent);font-weight:400}
.vv-pillars__head p{color:var(--quiet);line-height:1.65;max-width:58ch;margin:1rem 0 0;font-size:1.05rem}
.vv-pillars__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem)}
.vv-pillar{display:flex;flex-direction:column;background:var(--color-surface-page);border:1px solid var(--rule);border-top:3px solid var(--accent);padding:clamp(1.5rem,2.5vw,2rem)}
.vv-pillar--mk{border-top-color:var(--brass)}
.vv-pillar--sk{border-top-color:var(--accent)}
.vv-pillar--spa{border-top-color:var(--plum)}
.vv-pillar__idx{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;color:var(--accent)}
.vv-pillar__kicker{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:.4rem}
.vv-pillar h3{font-family:var(--display);font-weight:500;font-size:clamp(1.55rem,2.4vw,2.05rem);line-height:1.1;margin:.5rem 0 .6rem;letter-spacing:-.01em}
.vv-pillar p{color:var(--quiet);line-height:1.6;font-size:.98rem;margin:0 0 1.5rem;flex:1}
.vv-pillar .vv-actions{margin-top:0;flex-direction:column;align-items:stretch;gap:.85rem}
.vv-pillar__more{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;align-self:flex-start;border-bottom:1px solid var(--rule);padding-bottom:2px}
.vv-pillar__more:hover{color:var(--accent);border-color:var(--accent)}
.vv-split--dark .vv-btn--outline{color:var(--paper)!important;border-color:rgba(247,240,231,.7)}
.vv-split--dark .vv-btn--outline:hover,.vv-split--dark .vv-btn--outline:focus-visible{background:var(--paper);color:var(--ink)}
body.home .ss-left-sidebar,body.home .ss-popup-overlay,body.home .ss-popup{display:none!important}

/* Look Books are the publication's visual release valve: image-first, playful, and easy to find. */
.vv-lookbooks{display:block;padding:clamp(3.5rem,7vw,7rem) clamp(1.25rem,5vw,5rem);background:var(--ink);color:var(--paper)}
.vv-lookbooks__head{max-width:1440px;margin:0 auto clamp(2rem,4vw,3.5rem);display:flex;justify-content:space-between;align-items:end;gap:2rem}
.vv-lookbooks__head>div{max-width:62rem}.vv-lookbooks__head .vv-kicker{color:var(--brass)}
.vv-lookbooks__head h2{font-family:var(--display);font-weight:500;font-size:clamp(2.5rem,5.4vw,5rem);line-height:.98;letter-spacing:-.035em;margin:.45rem 0 1rem;max-width:13ch}
.vv-lookbooks__head h2 em{font-weight:400;color:var(--brass)}
.vv-lookbooks__head p{max-width:54ch;margin:0;color:var(--paper);font-size:1.05rem;line-height:1.65;opacity:.82}
.vv-lookbooks__all{flex:0 0 auto;color:var(--paper);font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--brass);padding-bottom:.35rem}
.vv-lookbooks__grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,2vw,1.4rem)}
.vv-lookbook-card{min-width:0}.vv-lookbook-card__media{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--plum)}
.vv-lookbook-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.vv-lookbook-card:hover .vv-lookbook-card__media img{transform:scale(1.025)}
.vv-lookbook-card__copy{padding:1.2rem .1rem 0}.vv-lookbook-card__copy>span{font-family:var(--mono);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--brass)}
.vv-lookbook-card h3{font-family:var(--display);font-weight:500;font-size:clamp(1.45rem,2.3vw,2.15rem);line-height:1.05;letter-spacing:-.02em;margin:.5rem 0 .65rem}
.vv-lookbook-card h3 a{color:var(--paper);text-decoration:none}.vv-lookbook-card__copy p{margin:0;color:var(--paper);opacity:.7;line-height:1.55;font-size:.92rem}

.vv-lookbook-archive{background:var(--paper);color:var(--ink)}
.vv-lookbook-archive__hero{background:var(--ink);color:var(--paper);padding:clamp(6.5rem,13vw,12rem) clamp(1.25rem,6vw,6rem) clamp(4rem,8vw,7rem)}
.vv-lookbook-archive__hero>div{max-width:1440px;margin:auto}.vv-lookbook-archive__hero .vv-kicker{color:var(--brass)}
.vv-lookbook-archive__hero h1{font-family:var(--display);font-weight:500;font-size:clamp(4.5rem,12vw,11rem);line-height:.78;letter-spacing:-.065em;margin:.25rem 0 1.8rem}
.vv-lookbook-archive__hero p:last-child{max-width:50rem;margin:0;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.6;opacity:.82}
.vv-lookbook-archive__intro{max-width:1440px;margin:auto;padding:clamp(2rem,4vw,3rem) clamp(1.25rem,4vw,3rem);display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid var(--rule)}
.vv-lookbook-archive__intro p{font-family:var(--display);font-size:clamp(1.45rem,2.5vw,2.25rem);line-height:1.15;max-width:28ch;margin:0}
.vv-lookbook-archive__intro a{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:.3rem}
.vv-lookbook-archive__grid{max-width:1440px;margin:auto;padding:clamp(2rem,5vw,5rem) clamp(1.25rem,4vw,3rem) clamp(5rem,9vw,9rem);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,3vw,2.5rem)}
.vv-lookbook-tile{display:grid;grid-template-columns:1fr;align-content:start}.vv-lookbook-tile--lead{grid-column:1/-1;grid-template-columns:minmax(0,1.55fr) minmax(18rem,.75fr);background:var(--ink);color:var(--paper)}
.vv-lookbook-tile__media{display:block;aspect-ratio:5/4;overflow:hidden;background:var(--plum)}.vv-lookbook-tile--lead .vv-lookbook-tile__media{aspect-ratio:16/9}
.vv-lookbook-tile__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.vv-lookbook-tile:hover .vv-lookbook-tile__media img{transform:scale(1.02)}
.vv-lookbook-tile__copy{padding:clamp(1.2rem,2.5vw,2rem) 0 0}.vv-lookbook-tile--lead .vv-lookbook-tile__copy{padding:clamp(2rem,4vw,4rem);align-self:center}.vv-lookbook-tile__copy .vv-kicker{color:var(--accent)}.vv-lookbook-tile--lead .vv-kicker{color:var(--brass)}
.vv-lookbook-tile h2{font-family:var(--display);font-weight:500;font-size:clamp(2rem,4vw,4rem);line-height:.98;letter-spacing:-.035em;margin:.35rem 0 .8rem}.vv-lookbook-tile h2 a{color:inherit;text-decoration:none}
.vv-lookbook-tile__copy>p:not(.vv-kicker){color:var(--quiet);line-height:1.6;margin:0 0 1rem}.vv-lookbook-tile--lead .vv-lookbook-tile__copy>p:not(.vv-kicker){color:var(--paper);opacity:.72}
.vv-lookbook-tile__open{font-family:var(--mono);font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:inherit;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:.25rem}
.vv-lookbook-archive__empty{padding:5rem 1.25rem;text-align:center}

@media(max-width:900px){.vv-pillars__grid{grid-template-columns:1fr}.vv-lookbooks__head{align-items:start;flex-direction:column}.vv-lookbooks__grid{grid-template-columns:1fr 1fr}.vv-lookbook-card:first-child{grid-column:1/-1}.vv-lookbook-card:first-child .vv-lookbook-card__media{aspect-ratio:16/9}.vv-lookbook-archive__grid{grid-template-columns:1fr}.vv-lookbook-tile--lead{grid-column:auto;grid-template-columns:1fr}.vv-lookbook-tile--lead .vv-lookbook-tile__media{aspect-ratio:4/3}.vv-lookbook-archive__intro{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.vv-hero__desks{display:grid;grid-template-columns:repeat(3,1fr)}.vv-hero__desks span{grid-column:1/-1}.vv-hero__desks a{text-align:center;padding:.55rem .2rem;border:1px solid rgba(247,240,231,.4)}.vv-lookbooks__grid{grid-template-columns:1fr}.vv-lookbook-card:first-child{grid-column:auto}.vv-lookbook-card:first-child .vv-lookbook-card__media,.vv-lookbook-card__media{aspect-ratio:4/5}.vv-lookbook-archive__hero h1{font-size:clamp(4.2rem,23vw,7rem)}}
/* Published Look Book stories use a visual magazine surface, not the evidence-dossier article shell. */
.vv-lookbook-story{background:var(--paper);color:var(--ink)}
.vv-lookbook-story__hero{position:relative;min-height:min(78vh,54rem);display:grid;align-items:end;overflow:hidden;background:var(--ink);color:var(--paper)}
.vv-lookbook-story__hero-media,.vv-lookbook-story__veil{position:absolute;inset:0}.vv-lookbook-story__hero-media{margin:0}.vv-lookbook-story__hero-media img{width:100%;height:100%;object-fit:cover}.vv-lookbook-story__veil{background:linear-gradient(180deg,rgba(16,14,12,.06) 20%,rgba(16,14,12,.78) 100%)}
.vv-lookbook-story__hero-copy{position:relative;z-index:2;width:min(90rem,calc(100% - 2.5rem));margin:0 auto;padding:clamp(7rem,16vh,12rem) 0 clamp(2.5rem,6vw,5rem)}.vv-lookbook-story__hero-copy .vv-kicker{color:var(--brass)}
.vv-lookbook-story__hero-copy h1{max-width:15ch;margin:.3rem 0 1rem;font-family:var(--display);font-weight:500;font-size:clamp(3rem,7vw,7rem);line-height:.88;letter-spacing:-.055em;color:inherit}.vv-lookbook-story__hero-copy>p:not(.vv-kicker){max-width:52rem;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55}.vv-lookbook-story__hero-copy>a{display:inline-block;margin-top:1rem;color:inherit;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--brass);padding-bottom:.3rem}
.vv-lookbook-story__body{padding:clamp(3.5rem,7vw,7rem) 1.25rem}.vv-lookbook-story__content{max-width:none;margin:auto;font-size:1.04rem;line-height:1.78}.vv-lookbook-story__content>p:first-child{font-family:var(--display);font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.35}.vv-lookbook-story__content h2{font-family:var(--display);font-weight:500;font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;letter-spacing:-.035em;margin:3.5rem 0 1rem}.vv-lookbook-story__content>.wp-block-image{width:min(72rem,calc(100vw - 2.5rem));margin:3rem 0 3rem 50%;transform:translateX(-50%)}.vv-lookbook-story__content>.wp-block-image img{width:100%;height:auto;display:block}.vv-lookbook-story__content figcaption{font-family:var(--mono);font-size:.72rem;line-height:1.5;letter-spacing:.04em;color:var(--quiet)}
.vv-lookbook-story__after{display:grid;grid-template-columns:1.4fr .8fr;gap:3rem;align-items:end;background:var(--ink);color:var(--paper);padding:clamp(3rem,6vw,6rem) max(1.25rem,calc((100vw - 90rem)/2))}.vv-lookbook-story__after .vv-kicker{color:var(--brass)}.vv-lookbook-story__after h2{font-family:var(--display);font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95;margin:.35rem 0 1rem;color:inherit}.vv-lookbook-story__after p{max-width:48rem;line-height:1.6}.vv-lookbook-story__after nav{display:grid;gap:.8rem}.vv-lookbook-story__after nav a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(247,243,236,.35);padding:.7rem 0;font-family:var(--mono);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.vv-lookbook-story__related{max-width:90rem;margin:auto;padding:clamp(4rem,8vw,8rem) 1.25rem}.vv-lookbook-story__related>header{margin-bottom:2rem}.vv-lookbook-story__related>header h2{font-family:var(--display);font-size:clamp(2.5rem,5vw,4.75rem);line-height:.95;margin:.4rem 0}.vv-lookbook-story__related>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.vv-lookbook-story__related article{min-width:0}.vv-lookbook-story__related-media{display:block;aspect-ratio:4/3;overflow:hidden}.vv-lookbook-story__related-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.vv-lookbook-story__related article:hover img{transform:scale(1.02)}.vv-lookbook-story__related h3{font-family:var(--display);font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.08;margin:.75rem 0}.vv-lookbook-story__related h3 a{color:inherit;text-decoration:none}
@media(max-width:900px){.vv-lookbook-story__after{grid-template-columns:1fr}.vv-lookbook-story__related>div{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.vv-lookbook-story__hero{min-height:68vh}.vv-lookbook-story__hero-copy{width:calc(100% - 2rem)}.vv-lookbook-story__hero-copy h1{font-size:clamp(2.8rem,14vw,4.5rem)}.vv-lookbook-story__content>.wp-block-image{width:calc(100vw - 1.5rem)}.vv-lookbook-story__related>div{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.vv-lookbook-card__media img,.vv-lookbook-tile__media img,.vv-lookbook-story__related-media img{transition:none}}

/* ---------------------------------------------------------------------------
   2026-09-14 — Look Books: two dark surfaces that were painting ink text.

   The same failure mode documented in publication-system.css. Both
   .vv-lookbook-archive__hero and the lead tile set color:var(--paper) on
   themselves, but assets/tokens/hierarchy.css carries a bare
   h1,h2,h3{color:var(--color-text-primary)}, and a directly matched
   declaration beats an inherited one whatever the source order. So on
   /makeup-lookbooks/ the page title read:

     h1 "Look Books"                     #1A1714 on #0D0D0F   1.09:1
     .vv-kicker (hero)                   #5A0E1A on #0D0D0F   1.40:1
     .vv-kicker (lead tile)              #5A0E1A on #0D0D0F   1.40:1
     lead tile headline link             #1A1714 on #0D0D0F   1.09:1

   The kickers needed !important because assets/tokens/components.css sets
   .vv-kicker{color:var(--kicker-on-light) !important} — oxblood, which is
   correct on parchment and invisible here. --kicker-on-dark is the metal,
   8.03:1 on this ground. Parchment on it is 17.69:1.

   Note for later: components.css already carries a dark-ground kicker list
   that includes ".vv-lookbooks .vv-kicker". That class does not exist; the
   rule was aimed at this page and missed by a name.
   --------------------------------------------------------------------------- */
.vv-lookbook-archive__hero :is(h1,h2,h3),
.vv-lookbook-archive__hero :is(h1,h2,h3) a,
.vv-lookbook-tile--lead :is(h1,h2,h3),
.vv-lookbook-tile--lead :is(h1,h2,h3) a{
  color:var(--color-text-on-dark);
}
.vv-lookbook-archive__hero .vv-kicker,
.vv-lookbook-tile--lead .vv-kicker{
  color:var(--kicker-on-dark) !important;
}
