/*
Theme Name: Original Winning Theme
Theme URI: https://winning.llc
Author: NoCodeNomad
Author URI: https://makeitandmarket.com
Description: The Original Winning Theme — a bold, editorial, premium WooCommerce theme for Winning. Full-bleed hero, modular brand-story blocks, big product cards, gold crest footer, complete shopping & checkout flow. Dark & light.
Version: 2.0.3
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: winning-venue
WC requires at least: 7.0
WC tested up to: 9.0
*/

:root{
  /* DEFAULT = high-end light. Warm bone white dominant, near-black ink, muted antique gold (no yellow). */
  --bg:#fbfaf7;
  --bg2:#f4f2ec;
  --bg3:#ece9e1;
  --ink:#16140f;
  --gold:#9a7f55;            /* muted antique champagne — reads metallic/expensive, not yellow */
  --gold-soft:#7e6743;
  --accent:#9a7f55;
  --line:rgba(22,20,15,0.14);
  --line-soft:rgba(22,20,15,0.06);
  --mute:rgba(22,20,15,0.66);
  --display:'Archivo',sans-serif;        /* tight modern grotesque headline */
  --serif:'Instrument Serif',serif;      /* editorial serif accents — clean letterforms, no wonky f */
  --ui:'Space Grotesk',sans-serif;       /* clean UI */
  --script:'Italianno',cursive;
  --ease:cubic-bezier(.19,1,.22,1);
  --shadow:0 30px 90px -52px rgba(22,20,15,.30);
  --shadow-sm:0 18px 50px -32px rgba(22,20,15,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--ui);font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}

/* DARK MODE — opt-in only (never default). Kept available via the toggle. */
[data-theme="dark"]{
  --bg:#0c0b0a;
  --bg2:#141210;
  --bg3:#1c1b18;
  --ink:#f3efe6;
  --line:rgba(243,239,230,0.13);
  --line-soft:rgba(243,239,230,0.07);
  --mute:rgba(243,239,230,0.70);
  --gold:#b39463;
  --gold-soft:#a4854f;
  --shadow:0 30px 90px -50px rgba(0,0,0,.8);
  --shadow-sm:0 18px 50px -30px rgba(0,0,0,.7);
}

.reveal{opacity:0;transform:translateY(38px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
/* ── subtle luxury motion ── */
/* slow Ken-Burns zoom on key images as they enter view */
.kb{overflow:hidden}
.kb img,.kb .v-slide{transition:transform 9s ease-out;transform:scale(1.01)}
.kb.in img,.kb.in .v-slide{transform:scale(1.14)}
/* gentle parallax drift on scroll (set via JS --py) */
.parallax{will-change:transform}
.split-media img,.split-media .v-slides{transition:transform .15s linear}
/* soft fade-up used on section headings/eyebrows */
.fade-up{opacity:0;transform:translateY(22px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease)}
.fade-up.in{opacity:1;transform:none}
/* underline-grow links feel more crafted */
.hover-line{position:relative}
.hover-line::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .5s var(--ease)}
.hover-line:hover::after{width:100%}
.reveal.in{opacity:1;transform:none}
.wipe{clip-path:inset(0 0 100% 0);transition:clip-path .9s var(--ease)}
/* safety: if JS hasn't toggled .in within view, never leave content permanently hidden */
.no-js .reveal,.no-js .wipe{opacity:1!important;transform:none!important;clip-path:none!important}
.wipe.in{clip-path:inset(0 0 0 0)}
@media(prefers-reduced-motion:reduce){.reveal,.wipe,.fade-up{opacity:1;transform:none;clip-path:none;transition:none}.kb.in img,.kb.in .v-slide{transform:none}.parallax{transform:none!important}}

.maxw{max-width:1560px;margin:0 auto}
.pad{padding:clamp(20px,4vw,56px)}
.section{padding:clamp(70px,10vw,140px) clamp(20px,4vw,56px)}
.eyebrow{font-family:var(--ui);font-size:11px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--gold)}

/* ── announcement ── */
.announce{background:var(--bg2);text-align:center;padding:11px 16px;font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid var(--line-soft)}
body.has-photo-hero .announce{display:none}

/* ── header — light bone, black text, gold hairline accents (high-end, readable on every page) ── */
.site-header{position:sticky;top:0;z-index:90;background:rgba(251,250,247,.92);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--line)}
.site-header .announce{background:var(--bg2);color:var(--mute);border-bottom:1px solid var(--line-soft)}
.site-header .nav-left a,.site-header .nav-right a,.site-header .nav-right button,.site-header .menu-toggle span{color:var(--ink)}
.site-header .brand{color:var(--gold)}
.site-header .nav-left a{color:var(--mute)}
.site-header .nav-left a:hover{color:var(--ink)}
.site-header .nav-left a::after{background:var(--gold)}
.site-header .nav-right a:hover,.site-header .nav-right button:hover{color:var(--gold)}
.site-header .menu-toggle span{background:var(--ink)}
.site-header .bag-count{background:var(--gold);color:#fff}
/* keep the header solid & readable even over a light hero — no transparent-over-art mode anymore */
body.home.has-photo-hero .site-header,body.front-page.has-photo-hero .site-header{position:sticky;background:rgba(251,250,247,.92);border-bottom:1px solid var(--line)}
body.has-photo-hero .site-header .announce{display:none}
/* dark mode keeps a dark header */
[data-theme="dark"] .site-header{background:rgba(12,11,10,.9);border-bottom:1px solid rgba(255,255,255,.1)}
[data-theme="dark"] .site-header .nav-left a,[data-theme="dark"] .site-header .nav-right a,[data-theme="dark"] .site-header .nav-right button,[data-theme="dark"] .site-header .menu-toggle span{color:#fff}
[data-theme="dark"] .site-header .nav-left a{color:rgba(255,255,255,.78)}
[data-theme="dark"] .site-header .menu-toggle span{background:#fff}

/* ── art hero (LIGHT, high-end) — bone background, crest contained (not full-screen), text below in ink ── */
.art-hero{position:relative;background:var(--bg);overflow:hidden;padding:clamp(28px,4vw,48px) clamp(20px,4vw,56px) clamp(40px,6vw,80px);text-align:center}
.art-hero-media{position:relative;width:min(1100px,94vw);margin:0 auto;border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden}
.art-hero-media img{width:100%;height:auto;max-height:62vh;object-fit:cover;object-position:center;display:block}
.art-hero::after{display:none}
.art-hero-inner{position:relative;left:auto;right:auto;bottom:auto;z-index:3;text-align:center;padding:clamp(26px,3.4vw,40px) 0 0;display:flex;flex-direction:column;align-items:center}
.art-hero .kicker{display:block;margin-bottom:16px;color:var(--gold)}
.art-hero h1{display:none}
.art-hero .lede{font-family:var(--ui);font-size:13px;line-height:1.7;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);max-width:520px;margin:0 0 26px;text-shadow:none}
.art-hero .v-hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.art-hero .btn{border-color:var(--line);color:var(--ink)}
.art-hero .btn::before{background:var(--gold)}
.art-hero .btn:hover{color:#fff;border-color:var(--gold)}
.art-hero .btn.solid{background:var(--gold);color:#fff;border-color:var(--gold)}
.art-hero .btn.solid::before{background:var(--ink)}
.art-hero .btn.solid:hover{color:var(--gold)}
.art-hero .v-hero-scroll{position:absolute;right:clamp(20px,4vw,40px);bottom:clamp(24px,4vw,46px);z-index:3;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--mute);writing-mode:vertical-rl}
@media(max-width:700px){.art-hero-media img{max-height:48vh}.art-hero .v-hero-scroll{display:none}}

/* ── crest hero (light, alt) ── */
.crest-hero{position:relative;padding:clamp(40px,7vw,90px) clamp(20px,4vw,56px) clamp(34px,5vw,60px);text-align:center;overflow:hidden}
.crest-hero-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.crest-hero .kicker{display:block;margin-bottom:22px;color:var(--gold)}
.crest-hero-art{width:min(440px,78vw);margin:0 0 18px}
.crest-hero-art img{width:100%;height:auto;display:block}
.crest-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(38px,5vw,76px);line-height:1.0;letter-spacing:-.025em;margin-bottom:18px}
.crest-hero h1 b{font-weight:600}
.crest-hero .lede{font-family:var(--ui);font-size:16px;line-height:1.8;color:var(--mute);max-width:440px;margin:0 0 30px}
.crest-hero .v-hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(24px,4vw,56px);gap:20px}
.nav-left,.nav-right{display:flex;align-items:center;gap:26px;flex:1;min-width:0}
.nav-right{justify-content:flex-end;gap:20px;white-space:nowrap}
.header-inner .brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap}
.nav-left a,.nav-right a,.nav-right button{font-family:var(--ui);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);background:none;border:none;position:relative;transition:color .4s}
.nav-left a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--gold);transition:width .4s var(--ease)}
.nav-left a:hover{color:var(--ink)}
.nav-left a:hover::after{width:100%}
.nav-right a:hover,.nav-right button:hover{color:var(--gold)}
.brand{font-family:var(--script);font-size:40px;line-height:.7;color:var(--gold)}
.brand img{max-height:46px;width:auto}
.tt-dark{display:inline}.tt-light{display:none}[data-theme="dark"] .tt-dark{display:none}[data-theme="dark"] .tt-light{display:inline}
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none}
.menu-toggle span{width:24px;height:1.5px;background:var(--ink)}
.bag-link{display:inline-flex;align-items:center;gap:7px}
.bag-count{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;background:var(--gold);color:var(--bg);border-radius:50%;font-size:9px;padding:0 5px}
@media(max-width:860px){
  .nav-left{display:none}
  .nav-right a:not(.bag-link),.nav-right .theme-toggle{display:none}
  .nav-right{gap:18px}
  .menu-toggle{display:flex}
  .header-inner .brand{font-size:34px}
  .header-inner{padding:16px 20px}
}

/* ── buttons ── */
.btn{position:relative;display:inline-flex;align-items:center;gap:10px;font-family:var(--ui);font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:18px 44px;border:1px solid var(--line);color:var(--ink);overflow:hidden;z-index:1;background:none;transition:color .5s var(--ease),border-color .5s}
.btn::before{content:"";position:absolute;inset:0;background:var(--gold);transform:translateY(101%);transition:transform .5s var(--ease);z-index:-1}
.btn:hover{color:var(--bg);border-color:var(--gold)}
.btn:hover::before{transform:translateY(0)}
.btn.solid{background:var(--gold);color:var(--bg);border-color:var(--gold)}
.btn.solid::before{background:var(--bg)}
.btn.solid:hover{color:var(--gold)}

/* ───────────────────────── HERO (full-bleed, corner text) ── */
.v-hero{position:relative;height:100vh;min-height:620px;overflow:hidden}
.v-hero-media{position:absolute;inset:0;z-index:0}
.v-hero-media img,.v-hero-media video{width:100%;height:100%;object-fit:cover;object-position:center 22%}
/* crossfading slideshow layers (hero / story / lookbook) */
.v-slides{position:absolute;inset:0;width:100%;height:100%}
.v-slide{position:absolute;inset:0;background-size:cover;background-position:center 22%;opacity:0;transition:opacity 1.6s ease-in-out}
.v-slide.is-active{opacity:1}
.split-media .v-slide,.lookbook .v-slide{background-position:center}
/* localized scrim — only bottom-left where the text lives */
.v-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(118deg,rgba(8,7,6,.8) 0%,rgba(8,7,6,.52) 26%,rgba(8,7,6,.14) 50%,rgba(8,7,6,0) 66%),linear-gradient(0deg,rgba(8,7,6,.58) 0%,rgba(8,7,6,.16) 24%,rgba(8,7,6,0) 44%)}
.v-hero-inner{position:absolute;left:clamp(28px,4vw,72px);bottom:clamp(44px,6vw,84px);z-index:3;max-width:540px}
.v-hero .hero-rule{width:48px;height:1px;background:var(--gold);margin-bottom:24px}
.v-hero .kicker{display:block;margin-bottom:20px;color:var(--gold)}
.v-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(40px,5.4vw,86px);line-height:.98;letter-spacing:-.025em;color:#fff;margin-bottom:20px}
.v-hero h1 b,.v-hero h1 strong{font-weight:600}
.v-hero .lede{font-family:var(--ui);font-style:normal;font-size:16px;line-height:1.8;letter-spacing:.02em;color:rgba(255,255,255,.92);max-width:360px;margin:0 0 32px;text-shadow:0 1px 12px rgba(0,0,0,.4)}
.v-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
/* hero buttons are white-on-image regardless of theme */
.v-hero .btn{border-color:rgba(255,255,255,.6);color:#fff}
.v-hero .btn::before{background:#fff}
.v-hero .btn:hover{color:#111;border-color:#fff}
.v-hero .btn.solid{background:#fff;color:#111;border-color:#fff}
.v-hero .btn.solid::before{background:#111}
.v-hero .btn.solid:hover{color:#fff}
.v-hero-scroll{position:absolute;right:clamp(28px,4vw,64px);bottom:clamp(44px,6vw,84px);z-index:3;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.7);writing-mode:vertical-rl}
@media(max-width:700px){
  .v-hero{height:88vh}
  .v-hero-inner{max-width:none;right:clamp(28px,4vw,72px)}
  .v-hero-media::after{background:linear-gradient(180deg,rgba(8,7,6,.2) 0%,rgba(8,7,6,.3) 50%,rgba(8,7,6,.72) 100%)}
  .v-hero-scroll{display:none}
}

/* ── ticker ── */
.ticker{border-block:1px solid var(--line-soft);overflow:hidden;background:var(--bg)}
.ticker-track{display:flex;gap:0;white-space:nowrap;animation:tick 28s linear infinite}
.ticker-track span{display:inline-flex;align-items:center;font-family:var(--display);font-weight:500;font-size:clamp(15px,1.8vw,24px);text-transform:uppercase;letter-spacing:.04em;padding:13px 0}
.ticker-track i{color:var(--gold);font-style:normal;margin:0 28px;font-size:.7em}
@keyframes tick{to{transform:translateX(-50%)}}

/* ───────────────────────── MODULAR: SPLIT FEATURE ── */
.split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:0}
.split.flip .split-media{order:2}
.split-media{position:relative;min-height:520px;overflow:hidden}
.split-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.5s var(--ease)}
.split:hover .split-media img{transform:scale(1.05)}
.split-body{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,96px)}
.split-body .num{font-family:var(--display);font-size:clamp(40px,5vw,80px);color:var(--gold);line-height:1;margin-bottom:18px;opacity:.9}
.split-body h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,4.4vw,62px);line-height:1.02;letter-spacing:-.015em;margin-bottom:22px}
.split-body h2 em{font-style:italic;color:var(--gold-soft)}
.split-body p{color:var(--mute);line-height:1.85;font-size:18px;max-width:460px;margin-bottom:30px}
@media(max-width:860px){.split{grid-template-columns:1fr}.split.flip .split-media{order:0}.split-media{min-height:360px}}

/* ───────────────────────── COLLECTION (modular product grid) ── */
.coll-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:44px}
.coll-head h2{font-family:var(--display);font-weight:500;font-size:clamp(34px,4.6vw,68px);line-height:.96;letter-spacing:-.025em;position:relative;padding-bottom:18px}
.coll-head h2::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--gold);transition:width 1.1s var(--ease) .2s}
.coll-head h2.in::after{width:64px}
.coll-head:hover h2::after{width:90px}
.coll-head .eyebrow{display:block;margin-bottom:14px}
.coll-head a{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid var(--line);padding-bottom:4px}
.coll-head a:hover{color:var(--gold);border-color:var(--gold)}

/* product grid — force CSS grid over WooCommerce's default floats/column-widths */
ul.products,.v-grid,.woocommerce ul.products,.woocommerce-page ul.products{list-style:none!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:clamp(18px,2vw,32px)!important;margin:0 auto!important;padding:0!important;width:auto!important}
ul.products::before,ul.products::after,.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;content:none!important}
ul.products li.product,.v-grid .v-card,.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.woocommerce ul.products li.first,.woocommerce ul.products li.last{width:100%!important;float:none!important;margin:0!important;clear:none!important}
@media(max-width:900px){ul.products,.v-grid,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:540px){ul.products,.v-grid,.woocommerce ul.products{grid-template-columns:1fr!important}}

li.product,.v-card{position:relative;margin:0;background:var(--bg2);border:1px solid var(--line);overflow:hidden;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
li.product:hover,.v-card:hover{transform:translateY(-10px);box-shadow:var(--shadow);border-color:rgba(184,146,83,.4)}
.v-card-media,li.product>a:first-of-type{position:relative;display:block;overflow:hidden;background:var(--bg3)}
li.product img,.v-card-media img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform 1.3s var(--ease);transform:scale(1.04)}
li.product.in img,.v-card.in .v-card-media img{transform:scale(1)}
li.product:hover img,.v-card:hover .v-card-media img{transform:scale(1.06)}
.v-card-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
li.product:hover .v-card-vid{opacity:1}
.card-tag{position:absolute;top:14px;left:14px;font-family:var(--ui);font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink);background:rgba(251,250,247,.82);backdrop-filter:blur(8px);padding:6px 11px;z-index:2;border:1px solid var(--line-soft)}
.card-fav{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:rgba(251,250,247,.78);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:var(--ink);opacity:0;transform:translateY(-6px);transition:.45s;z-index:2;border:1px solid var(--line-soft)}
li.product:hover .card-fav{opacity:1;transform:none}
.card-quickadd{position:absolute;left:14px;right:14px;bottom:14px;z-index:2;text-align:center;font-family:var(--ui);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;padding:13px;background:rgba(251,250,247,.9);backdrop-filter:blur(10px);color:var(--ink);border:1px solid var(--line);transform:translateY(140%);transition:transform .5s var(--ease)}
li.product:hover .card-quickadd{transform:none}

.v-card-body{padding:22px 20px 26px;display:flex;flex-direction:column}
.v-card-body .woocommerce-loop-product__title,.v-card h3{font-family:var(--serif)!important;font-weight:300!important;font-style:italic;font-size:29px!important;letter-spacing:-.01em;line-height:1.05;padding:0!important;margin-bottom:10px;color:var(--ink)}
.v-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.v-card-body .button,.v-card-body .added_to_cart{display:block!important;width:100%;text-align:center;margin:0!important;font-family:var(--ui)!important;font-size:9.5px!important;letter-spacing:.22em!important;text-transform:uppercase;padding:14px 16px!important;background:var(--gold)!important;color:var(--bg)!important;border:none!important;border-radius:0!important;font-weight:500!important;transition:opacity .35s}
.v-card-body .button:hover{opacity:.88}
.v-card-body .added_to_cart{background:none!important;color:var(--gold)!important;border:1px solid var(--line)!important;margin-top:8px!important}
li.product .price,.v-card .price{font-family:var(--ui)!important;font-size:16px!important;letter-spacing:.04em;color:var(--gold)!important;font-weight:400!important}
li.product .price del{opacity:.5;color:var(--mute)!important;margin-right:6px}
li.product .price ins{text-decoration:none;color:var(--gold)!important}
.v-row .swatches{margin-top:0}
.swatches{display:flex;gap:6px;margin-top:12px}
.sw{width:13px;height:13px;border-radius:50%;border:1px solid var(--line);transition:transform .3s}
.sw:hover{transform:scale(1.3)}
li.product .added_to_cart{display:inline-block;margin-top:8px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}

/* ───────────────────────── VALUES (3-up) ── */
.values{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.value{padding:clamp(40px,5vw,70px) 38px;border-right:1px solid var(--line);text-align:center}
.value:last-child{border-right:none}
.value .vnum{font-family:var(--display);font-size:30px;color:var(--gold);margin-bottom:18px}
.value h4{font-family:var(--ui);font-size:12px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:14px}
.value p{color:var(--mute);line-height:1.8;font-size:17px}
@media(max-width:760px){.values{grid-template-columns:1fr}.value{border-right:none;border-bottom:1px solid var(--line)}}

/* ───────────────────────── LOOKBOOK BANNER ── */
.lookbook{position:relative;height:90vh;min-height:620px;overflow:hidden}
.lookbook img,.lookbook video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%}
/* always-on slow Ken-Burns: gentle zoom + slight upward drift so faces stay in view while the logo stays the hero */
.lookbook img,.lookbook .v-slides{animation:lookbook-kb 22s ease-in-out infinite alternate;transform-origin:center 30%;will-change:transform}
.lookbook .v-slide{background-position:center 22%}
@keyframes lookbook-kb{
  from{transform:scale(1.06) translateY(1.5%)}
  to{transform:scale(1.16) translateY(-1.5%)}
}
@media(prefers-reduced-motion:reduce){.lookbook img,.lookbook .v-slides{animation:none;transform:none}}
.lookbook::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,9,8,.85) 0%,rgba(10,9,8,.5) 28%,rgba(10,9,8,.12) 55%,rgba(10,9,8,.2) 100%)}
.lookbook-inner{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;padding:0 24px clamp(44px,6vw,72px);color:#fff}
.lookbook-inner h2{color:#fff}
.lookbook-inner p{color:rgba(255,255,255,.85)}
.lookbook-inner .btn{border-color:rgba(255,255,255,.6);color:#fff}
.lookbook-inner .btn::before{background:#fff}
.lookbook-inner .btn:hover{color:#111;border-color:#fff}
.lookbook-inner h2{font-family:var(--display);font-weight:500;font-size:clamp(30px,4.4vw,60px);text-transform:uppercase;line-height:.94;letter-spacing:-.02em;max-width:16ch;margin-bottom:6px}
.lookbook-inner p{margin-bottom:8px}
.lookbook-inner p{color:var(--ink);letter-spacing:.18em;text-transform:uppercase;font-size:10px;margin:18px 0 28px}
.lookbook-mute{position:absolute;bottom:20px;right:20px;z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(13,13,12,.4);backdrop-filter:blur(8px);color:var(--ink);font-size:14px}
.lookbook-mute:hover{border-color:var(--gold);color:var(--gold)}

/* ── quote ── */
.quote{text-align:center;max-width:1100px;margin:0 auto}
.quote blockquote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(28px,4.4vw,60px);line-height:1.18;letter-spacing:-.01em}
.quote blockquote em{color:var(--gold);font-style:italic}
.quote .by{margin-top:26px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--mute)}

/* ── newsletter ── */
.signup{text-align:center}
.signup h2{font-family:var(--display);font-weight:500;font-size:clamp(40px,7vw,96px);text-transform:uppercase;line-height:.9;letter-spacing:-.02em}
.signup p{color:var(--mute);letter-spacing:.14em;text-transform:uppercase;font-size:12px;margin:18px 0 34px}
.signup-form{display:flex;max-width:480px;margin:0 auto;border-bottom:1px solid var(--line)}
.signup-form input{flex:1;background:none;border:none;outline:none;color:var(--ink);font-family:var(--ui);font-size:12px;letter-spacing:.1em;padding:16px 4px}
.signup-form input::placeholder{color:var(--mute);text-transform:uppercase;letter-spacing:.18em;font-size:10px}
.signup-form button{background:none;border:none;color:var(--gold);font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:0 10px}
.signup-form button:hover{opacity:.6}

/* ── footer ── */
.site-footer{border-top:1px solid var(--line);padding:clamp(60px,8vw,100px) clamp(20px,4vw,56px) 40px}
.foot-crest{text-align:center;margin-bottom:clamp(48px,6vw,80px)}
.foot-crest img{width:min(340px,70vw);height:auto;margin:0 auto;display:block;opacity:.96;filter:drop-shadow(0 1px 0 rgba(22,20,15,.12))}
[data-theme="dark"] .foot-crest img{filter:none}
.foot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;max-width:1560px;margin:0 auto}
.foot-brand .brand{font-size:54px;display:inline-block;margin-bottom:14px}
.foot-brand p{color:var(--mute);font-size:12px;line-height:2;max-width:260px}
.foot-social{display:flex;gap:14px;margin-top:20px}
.foot-social a{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--mute)}
.foot-social a:hover{border-color:var(--gold);color:var(--gold)}
.foot-col h5{font-family:var(--ui);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:18px}
.foot-col ul{list-style:none}
.foot-col a{display:block;color:var(--mute);font-size:12px;margin-bottom:12px}
.foot-col a:hover{color:var(--gold)}
.foot-bot{max-width:1560px;margin:46px auto 0;padding-top:26px;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.foot-credit a{color:var(--gold)}
.foot-credit a:hover{opacity:.7}
/* visually hidden but present in DOM for SEO/accessibility */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.foot-top{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.foot-top{grid-template-columns:1fr}}

/* ── mobile drawer ── */
.drawer{position:fixed;inset:0;z-index:200;pointer-events:none}
.drawer-overlay{position:absolute;inset:0;background:rgba(8,8,7,.55);opacity:0;transition:opacity .5s}
.drawer-panel{position:absolute;top:0;right:0;height:100%;width:min(420px,90vw);background:var(--bg2);border-left:1px solid var(--line);transform:translateX(100%);transition:transform .6s var(--ease);padding:34px 32px;display:flex;flex-direction:column;gap:8px}
.drawer.open{pointer-events:auto}
.drawer.open .drawer-overlay{opacity:1}
.drawer.open .drawer-panel{transform:none}
.drawer-close{align-self:flex-end;background:none;border:none;color:var(--mute);font-size:14px;letter-spacing:.2em;margin-bottom:20px}
.drawer-panel a{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--ink)}
.drawer-panel a:hover{color:var(--gold)}

/* ───────────────────────── SHOP / ARCHIVE ── */
.page-head{text-align:center;padding:clamp(60px,9vw,130px) 24px clamp(34px,4vw,54px)}
.page-head .eyebrow{display:block;margin-bottom:16px}
.shop-sub{max-width:560px;margin:22px auto 0;color:var(--mute);font-size:16px;line-height:1.8;letter-spacing:.01em}
.shop-ticker{margin-bottom:clamp(40px,5vw,64px)}
.shop-outro{padding:clamp(60px,8vw,100px) clamp(20px,4vw,56px) 0;border-top:1px solid var(--line);margin-top:clamp(50px,7vw,90px)}
.page-head h1{font-family:var(--display);font-weight:500;font-size:clamp(44px,8vw,110px);text-transform:uppercase;line-height:.9;letter-spacing:-.025em}
.shop-toolbar{max-width:1560px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,56px) 30px}
.woocommerce-result-count{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.woocommerce-ordering select{background:var(--bg2);color:var(--ink);border:1px solid var(--line);padding:11px 14px;font-family:var(--ui);font-size:11px}
.woocommerce-products-header__title,.woocommerce-products-header{display:none}
ul.products{max-width:1560px!important;margin:0 auto!important;padding:0 clamp(20px,4vw,56px)!important}
.woocommerce-pagination{text-align:center;padding:60px 0}
.woocommerce-pagination ul{list-style:none;display:inline-flex;gap:6px}
.woocommerce-pagination a,.woocommerce-pagination span{display:inline-block;padding:11px 17px;border:1px solid var(--line);font-size:11px}
.woocommerce-pagination .current{background:var(--gold);color:var(--bg);border-color:var(--gold)}

/* notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews{max-width:1560px;margin:0 auto 24px;background:var(--bg2);border:1px solid var(--line);border-left:2px solid var(--gold);color:var(--ink);padding:16px 20px;font-size:12px;list-style:none}
.woocommerce-message a,.woocommerce-info a{color:var(--gold)}

/* ───────────────────────── PRODUCT PAGE ── */
.single-product div.product{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(28px,5vw,72px);max-width:1560px;margin:0 auto;padding:clamp(40px,6vw,80px) clamp(20px,4vw,56px)}
.single-product .woocommerce-product-gallery{margin:0!important;width:100%!important;position:relative}
.single-product .woocommerce-product-gallery__image img{border:1px solid var(--line)}
.single-product .flex-control-thumbs{display:flex;gap:10px;margin-top:12px;list-style:none;padding:0}
.single-product .flex-control-thumbs li{width:72px}
.single-product .flex-control-thumbs img{border:1px solid var(--line);cursor:pointer;opacity:.6}
.single-product .flex-control-thumbs img.flex-active{opacity:1;border-color:var(--gold)}
.single-product .summary{margin:0!important;width:100%!important;display:flex;flex-direction:column;justify-content:center}
.single-product .product_title{font-family:var(--display)!important;font-weight:500!important;font-size:clamp(40px,5.5vw,76px)!important;text-transform:uppercase;line-height:.92;letter-spacing:-.025em;margin-bottom:16px!important}
.single-product .woocommerce-product-rating{margin-bottom:14px}
.single-product .star-rating span{color:var(--gold)}
.single-product .price{font-family:var(--serif)!important;font-size:26px!important;color:var(--gold)!important;margin-bottom:14px!important}
.single-product .price del{opacity:.5;color:var(--mute)!important;margin-right:8px}
.single-product .price ins{text-decoration:none}
.single-product .woocommerce-product-details__short-description{color:var(--mute);line-height:2;font-size:14px;margin:16px 0}
.single-product .stock{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft)}

/* variations */
.single-product table.variations{width:100%;border-collapse:collapse;margin:18px 0}
.single-product table.variations th{text-align:left;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);padding:12px 14px 12px 0;font-weight:400;vertical-align:middle}
.single-product table.variations td{padding:8px 0}
.single-product table.variations select{background:var(--bg2);border:1px solid var(--line);color:var(--ink);padding:13px 16px;font-family:var(--ui);font-size:12px;border-radius:0;min-width:230px}
.single-product .reset_variations{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-left:10px}
.single-product .woocommerce-variation-price .price{font-size:22px!important}

/* qty + add */
.single-product .quantity{display:inline-flex;border:1px solid var(--line);margin-right:12px}
.single-product .quantity input{width:60px;background:none;border:none;color:var(--ink);text-align:center;font-family:var(--ui);font-size:13px;padding:16px 4px}
.single-product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}
.single-product .single_add_to_cart_button{font-family:var(--ui)!important;font-size:11px!important;letter-spacing:.26em!important;text-transform:uppercase;padding:19px 46px!important;background:var(--gold)!important;color:var(--bg)!important;border:none!important;border-radius:0!important;font-weight:500!important;flex:1;min-width:220px;transition:box-shadow .4s}
.single-product .single_add_to_cart_button:hover{box-shadow:0 16px 34px -16px var(--gold)}
.single-product .product_meta{margin-top:22px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);line-height:2.4}
.single-product .product_meta a{color:var(--gold-soft)}

/* tabs */
.woocommerce-tabs{max-width:1560px;margin:50px auto 0;padding:0 clamp(20px,4vw,56px)}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:34px;border-bottom:1px solid var(--line);margin-bottom:30px;flex-wrap:wrap}
.woocommerce-tabs ul.tabs li{padding-bottom:14px}
.woocommerce-tabs ul.tabs li a{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--mute)}
.woocommerce-tabs ul.tabs li.active a{color:var(--gold)}
.woocommerce-tabs .panel{color:var(--mute);line-height:2;font-size:14px}
.woocommerce-tabs .panel h2{font-family:var(--serif);font-weight:300;color:var(--ink);margin-bottom:14px}
.related.products,.up-sells{max-width:1560px;margin:50px auto 0;padding:60px clamp(20px,4vw,56px);border-top:1px solid var(--line)}
.related.products>h2,.up-sells>h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,5vw,60px);text-transform:uppercase;margin-bottom:30px;letter-spacing:.01em}
@media(max-width:860px){.single-product div.product{grid-template-columns:1fr}}

/* ── cart / checkout / account ── */
.woocommerce table.shop_table{border:1px solid var(--line);border-collapse:collapse;width:100%;margin-bottom:24px;background:var(--bg2)}
.woocommerce table.shop_table th{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);font-weight:400;padding:16px;text-align:left;border-bottom:1px solid var(--line)}
.woocommerce table.shop_table td{padding:16px;border-bottom:1px solid var(--line-soft);font-size:13px}
.woocommerce .cart_item img{width:72px;border:1px solid var(--line)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .checkout-button,.woocommerce #place_order{font-family:var(--ui)!important;font-size:10.5px!important;letter-spacing:.22em!important;text-transform:uppercase;padding:17px 36px!important;background:var(--gold)!important;color:var(--bg)!important;border:none!important;border-radius:0!important;font-weight:500!important}
.woocommerce a.button:hover,.woocommerce button.button:hover{opacity:.88}
.woocommerce .button.alt,.woocommerce #place_order{width:100%}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #payment{background:var(--bg2);border:1px solid var(--line);padding:24px}
.woocommerce .cart-collaterals h2,.woocommerce-checkout h3{font-family:var(--serif);font-weight:300;margin-bottom:16px}
.woocommerce form .form-row label{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:block;margin-bottom:6px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection,.woocommerce-account .woocommerce-Input{background:var(--bg2)!important;border:1px solid var(--line)!important;color:var(--ink)!important;padding:14px 14px!important;font-family:var(--ui)!important;font-size:13px!important;border-radius:0!important;width:100%}
.woocommerce-cart-form,.woocommerce .cart-collaterals,.woocommerce .checkout,.woocommerce-account .woocommerce,.woocommerce-order,.woocommerce-order-received .woocommerce{max-width:1560px;margin:0 auto;padding:0 clamp(20px,4vw,56px) 70px}
.woocommerce .woocommerce-order-overview,.woocommerce ul.order_details{list-style:none;display:flex;flex-wrap:wrap;gap:30px;border:1px solid var(--line);padding:26px;margin-bottom:30px}
.woocommerce ul.order_details li{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.woocommerce ul.order_details li strong{display:block;font-family:var(--serif);font-size:18px;color:var(--ink);text-transform:none;letter-spacing:0;margin-top:6px}
.woocommerce-MyAccount-navigation ul{list-style:none}
.woocommerce-MyAccount-navigation a{display:block;padding:12px 0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid var(--line-soft)}
.woocommerce-MyAccount-navigation a:hover,.woocommerce-MyAccount-navigation .is-active a{color:var(--gold)}

/* empty cart */
.v-empty{max-width:760px;margin:0 auto;text-align:center;padding:60px 24px 120px}
.v-empty .eyebrow{display:block;margin-bottom:18px}
.v-empty h2{font-family:var(--display);font-weight:400;font-size:clamp(40px,7vw,90px);text-transform:uppercase;margin-bottom:16px;line-height:.9}
.v-empty p{color:var(--mute);line-height:2;font-size:13px;margin-bottom:30px}

/* contact */
.contact-wrap{max-width:1560px;margin:0 auto;padding:0 clamp(20px,4vw,56px) 110px}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(36px,6vw,90px)}
.contact-intro h2{font-family:var(--display);font-weight:400;font-size:clamp(40px,6vw,80px);text-transform:uppercase;margin:10px 0 20px;line-height:.9}
.contact-intro p{color:var(--mute);line-height:2.1;font-size:13px;max-width:380px;margin-bottom:36px}
.contact-detail{padding:18px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px}
.contact-detail:last-child{border-bottom:1px solid var(--line)}
.contact-label{font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.contact-detail a:hover{color:var(--gold)}
.winning-contact-form .cf-row{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}
.winning-contact-form label{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.winning-contact-form input,.winning-contact-form textarea{background:var(--bg2);border:1px solid var(--line);color:var(--ink);font-family:var(--ui);font-size:13px;padding:14px 16px;outline:none;transition:border-color .4s;resize:vertical}
.winning-contact-form input:focus,.winning-contact-form textarea:focus{border-color:var(--gold)}
.winning-contact-form .cf-hp{position:absolute;left:-9999px}
.winning-contact-form .cf-submit{margin-top:6px;width:100%;justify-content:center}
.winning-contact-form .cf-status{margin-top:14px;font-size:11px;min-height:15px}
.winning-contact-form .cf-status.ok{color:var(--gold)}
.winning-contact-form .cf-status.err{color:#d98a6b}
@media(max-width:760px){.contact-grid{grid-template-columns:1fr}}

.page-wrap{max-width:900px;margin:0 auto;padding:0 clamp(20px,4vw,56px) 110px}
.page-wrap p{color:var(--mute);line-height:2;margin-bottom:18px}
.page-wrap h2{font-family:var(--serif);font-weight:300;margin:30px 0 14px}
.page-wrap a{color:var(--gold)}

/* ── slide-out cart ── */
.minicart{position:fixed;inset:0;z-index:250;pointer-events:none}
.minicart-overlay{position:absolute;inset:0;background:rgba(8,8,7,.55);opacity:0;transition:opacity .5s}
.minicart-panel{position:absolute;top:0;right:0;height:100%;width:min(440px,92vw);background:var(--bg2);border-left:1px solid var(--line);transform:translateX(100%);transition:transform .6s var(--ease);display:flex;flex-direction:column}
.minicart.open{pointer-events:auto}
.minicart.open .minicart-overlay{opacity:1}
.minicart.open .minicart-panel{transform:none}
.minicart-head{display:flex;justify-content:space-between;align-items:center;padding:24px 26px;border-bottom:1px solid var(--line)}
.minicart-head h3{font-family:var(--display);font-weight:400;font-size:24px;text-transform:uppercase}
.minicart-head button{background:none;border:none;color:var(--mute);font-size:13px;letter-spacing:.2em}
.minicart-body{flex:1;overflow-y:auto;padding:10px 26px}
.minicart-foot{padding:22px 26px;border-top:1px solid var(--line)}
.minicart .widget_shopping_cart_content ul.cart_list{list-style:none;margin:0;padding:0}
.minicart .cart_list li{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line-soft);font-size:12px}
.minicart .cart_list li img{width:56px!important;height:auto;border:1px solid var(--line);position:static!important;float:none!important;margin:0!important}
.minicart .cart_list a{color:var(--ink)}
.minicart .cart_list a.remove{color:var(--gold);font-size:14px}
.minicart .woocommerce-mini-cart__total{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:14px 0;color:var(--ink)}
.minicart .woocommerce-mini-cart__buttons{display:flex;flex-direction:column;gap:10px}
.minicart .woocommerce-mini-cart__buttons .button{width:100%;text-align:center}
.minicart .woocommerce-mini-cart__empty-message{color:var(--mute);font-size:13px;padding:30px 0;text-align:center}

/* ── manifesto painting feature ── */
.manifesto{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,5vw,72px);padding:clamp(50px,8vw,110px) clamp(20px,4vw,56px);max-width:1400px;margin:0 auto}
.manifesto-art{max-width:480px;width:100%;overflow:hidden;box-shadow:var(--shadow);justify-self:end}
.manifesto-art img{width:100%;height:auto;display:block}
.manifesto-side{max-width:420px}
.manifesto-side .eyebrow{display:block;margin-bottom:18px}
.manifesto-side h2{font-family:var(--display);font-weight:500;font-size:clamp(34px,4.4vw,60px);line-height:.98;letter-spacing:-.02em;margin-bottom:22px}
.manifesto-side p{color:var(--mute);font-size:17px;line-height:1.85;margin-bottom:30px;max-width:380px}
@media(max-width:860px){.manifesto{grid-template-columns:1fr;justify-items:center;text-align:center}.manifesto-art{justify-self:center;max-width:90vw}.manifesto-side p{margin-left:auto;margin-right:auto}}

/* ════════════════════════════════════════════════════════════
   v1.4 — LUXURY POLISH PASS
   1) Hero load sequence  2) Typography air  3) Link/cursor micro-interactions
   4) Creed scene (light)  5) Content-page font lock  6) Inner-page refinement
   ════════════════════════════════════════════════════════════ */

/* ── 1) HERO LOAD SEQUENCE — choreographed entrance on page load, then perfectly still ── */
.hero-load .art-hero-media{opacity:0;transform:translateY(26px) scale(.985);animation:hl-media 1.15s var(--ease) .05s forwards}
.hero-load .kicker{opacity:0;transform:translateY(14px);animation:hl-rise .9s var(--ease) .5s forwards}
.hero-load h1{opacity:0;transform:translateY(16px);animation:hl-rise .9s var(--ease) .62s forwards}
.hero-load .lede{opacity:0;transform:translateY(16px);animation:hl-rise .9s var(--ease) .74s forwards}
.hero-load .v-hero-actions{opacity:0;transform:translateY(16px);animation:hl-rise .9s var(--ease) .88s forwards}
.hero-load .v-hero-scroll{opacity:0;animation:hl-fade 1s ease 1.2s forwards}
@keyframes hl-media{to{opacity:1;transform:none}}
@keyframes hl-rise{to{opacity:1;transform:none}}
@keyframes hl-fade{to{opacity:.7}}
@media(prefers-reduced-motion:reduce){
  .hero-load .art-hero-media,.hero-load .kicker,.hero-load h1,.hero-load .lede,.hero-load .v-hero-actions,.hero-load .v-hero-scroll{opacity:1;transform:none;animation:none}
}

/* ── 2) TYPOGRAPHY AIR — engraved labels, more breathing room on headings ── */
.eyebrow{letter-spacing:.42em;font-size:10.5px}
.section{padding:clamp(84px,11vw,164px) clamp(20px,4vw,56px)}
.coll-head{margin-bottom:clamp(48px,5vw,68px)}
.coll-head h2,.signup h2,.page-head h1,.v-empty h2,.contact-intro h2,.split-body h2,.manifesto-side h2{letter-spacing:-.028em}
.coll-head .eyebrow,.page-head .eyebrow{margin-bottom:18px}
.split-body p,.manifesto-side p,.value p,.shop-sub{line-height:1.92}
.quote blockquote{line-height:1.24;letter-spacing:-.015em}
.page-head{padding:clamp(76px,11vw,150px) 24px clamp(40px,5vw,64px)}
.btn{letter-spacing:.26em;padding:19px 46px}

/* ── 3) LINK & CURSOR MICRO-INTERACTIONS (signature detailing) ── */
/* every nav + footer + utility link draws a gold hairline on hover */
.nav-left a,.nav-right a,.foot-col a,.coll-head a,.contact-detail a,.woocommerce-MyAccount-navigation a{position:relative}
.nav-right a::after,.foot-col a::after,.contact-detail a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:var(--gold);transition:width .45s var(--ease)}
.nav-right a:hover::after,.foot-col a:hover::after,.contact-detail a:hover::after{width:100%}
/* product card: gentle gold frame draw on hover */
li.product::after{content:"";position:absolute;inset:0;border:1px solid transparent;pointer-events:none;transition:border-color .5s var(--ease);z-index:3}
li.product:hover::after{border-color:rgba(154,127,85,.35)}
/* buttons get a soft lift */
.btn{transition:color .5s var(--ease),border-color .5s,transform .5s var(--ease),box-shadow .5s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(22,20,15,.4)}
/* custom cursor ring follows pointer on fine-pointer devices */
.cursor-ring{position:fixed;top:0;left:0;width:30px;height:30px;border:1px solid var(--gold);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease),background-color .3s,border-color .3s;mix-blend-mode:normal;opacity:0}
.cursor-ring.on{opacity:.9}
.cursor-ring.hot{width:54px;height:54px;background:rgba(154,127,85,.08);border-color:var(--gold)}
@media(hover:none),(pointer:coarse){.cursor-ring{display:none}}
@media(prefers-reduced-motion:reduce){.cursor-ring{display:none}}

/* ── 4) CREED SCENE (light, word-by-word reveal — the page's emotional peak) ── */
.creed-scene{position:relative;padding:clamp(110px,15vw,220px) clamp(20px,4vw,56px);text-align:center;background:var(--bg);overflow:hidden}
.creed-scene::before{content:"";position:absolute;left:50%;top:clamp(48px,7vw,90px);transform:translateX(-50%);width:1px;height:clamp(40px,6vw,70px);background:linear-gradient(var(--gold),transparent)}
.creed-scene .eyebrow{display:block;margin-bottom:clamp(34px,5vw,56px)}
.creed-line{max-width:1080px;margin:0 auto;font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(30px,5vw,68px);line-height:1.2;letter-spacing:-.015em;color:var(--ink)}
.creed-line .w{display:inline-block;opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.creed-line.in .w{opacity:1;transform:none}
.creed-line .gold{color:var(--gold);font-style:italic}
.creed-by{margin-top:clamp(34px,5vw,52px);font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--mute)}
.no-js .creed-line .w{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.creed-line .w{opacity:1;transform:none;transition:none}}

/* ── 5) CONTENT-PAGE FONT LOCK — force clean luxury body type on all WP page content ── */
/* overrides any font the client picks in the editor (e.g. the hard-to-read script on About) */
.page-wrap,.page-wrap p,.page-wrap li,.page-wrap span,.page-wrap div{font-family:var(--ui)!important;font-style:normal!important}
.page-wrap{font-size:16px;line-height:2;color:var(--mute)}
.page-wrap p{font-size:16px;line-height:2;letter-spacing:.005em}
.page-wrap h1,.page-wrap h2,.page-wrap h3{font-family:var(--serif)!important;font-weight:300!important;font-style:normal!important;color:var(--ink)}
.page-wrap strong,.page-wrap b{font-weight:500}

/* ── 6) INNER-PAGE REFINEMENT — bring home-page polish to shop/product/cart/account ── */
/* shop header breathes like the homepage */
.page-head h1{line-height:.88}
.shop-sub{font-size:17px;max-width:600px}
.shop-toolbar{padding-bottom:38px}
/* product page: more air, refined meta */
.single-product .product_title{line-height:.9}
.single-product .summary{gap:2px}
.single-product .woocommerce-product-details__short-description{font-size:15px;line-height:2.05;margin:18px 0}
.single-product .single_add_to_cart_button{letter-spacing:.28em!important;transition:box-shadow .45s var(--ease),transform .45s var(--ease)}
.single-product .single_add_to_cart_button:hover{transform:translateY(-2px)}
/* cart/checkout/account headings gain serif elegance + spacing */
.woocommerce .cart-collaterals h2,.woocommerce-checkout h3,.woocommerce-account h2,.woocommerce-account h3{font-family:var(--serif);font-weight:300;letter-spacing:-.01em}
.woocommerce table.shop_table{background:var(--bg2)}
.woocommerce-MyAccount-navigation a{letter-spacing:.18em;transition:color .4s}
/* section dividers feel intentional, not default */
.related.products,.up-sells,.shop-outro,.values{border-color:var(--line)}
/* quote/creed on inner pages match home rhythm */
.quote{padding-block:clamp(20px,3vw,40px)}

/* ════════════════════════════════════════════════════════════
   v1.5 — PREMIUM SPACE & SCALE PASS ($500 theme feel)
   More negative space · bigger small-labels · full-width manifesto close ·
   story portraits shown full · home footer crest removed
   ════════════════════════════════════════════════════════════ */

/* ── bigger small-labels (eyebrows / kickers / little titles) ── */
.eyebrow{font-size:12.5px;letter-spacing:.40em}
.lookbook-inner p,.creed-scene .eyebrow,.manifesto-close .eyebrow{font-size:12.5px;letter-spacing:.40em}
.creed-by{font-size:12.5px;letter-spacing:.36em}
.value h4{font-size:13px;letter-spacing:.26em}
.foot-col h5{font-size:11px;letter-spacing:.26em}
.coll-head a,.shop-toolbar .woocommerce-result-count{font-size:11.5px;letter-spacing:.2em}
.contact-label{font-size:11px;letter-spacing:.28em}

/* ── MORE NEGATIVE SPACE — generous gallery rhythm ── */
.section{padding:clamp(110px,15vw,220px) clamp(24px,5vw,72px)}
.maxw{max-width:1520px}
.coll-head{margin-bottom:clamp(60px,7vw,96px)}
ul.products,.v-grid,.woocommerce ul.products{gap:clamp(28px,2.6vw,48px)!important}
.values{padding-block:0}
.value{padding:clamp(64px,8vw,120px) 46px}
.creed-scene{padding:clamp(150px,20vw,300px) clamp(24px,5vw,72px)}
.signup{padding-top:clamp(40px,6vw,90px)!important;padding-bottom:clamp(120px,15vw,220px)!important}
.split-body{padding:clamp(56px,8vw,130px)}
.page-head{padding:clamp(110px,14vw,200px) 24px clamp(56px,7vw,96px)}
.section.quote,.quote{padding-block:clamp(90px,12vw,170px)}
.site-footer{padding:clamp(90px,11vw,150px) clamp(24px,5vw,72px) 48px}
.foot-top{gap:56px}
.woocommerce-cart-form,.woocommerce .cart-collaterals,.woocommerce .checkout,.woocommerce-account .woocommerce,.woocommerce-order,.woocommerce-order-received .woocommerce{padding-bottom:clamp(90px,12vw,160px)}
.single-product div.product{gap:clamp(40px,6vw,100px);padding:clamp(56px,8vw,120px) clamp(24px,5vw,72px)}

/* ── STORY SPLIT — show portrait images FULL, centered, with real height & air ── */
.split{gap:clamp(40px,5vw,90px);align-items:center;padding:clamp(40px,6vw,90px) clamp(24px,5vw,72px);max-width:1520px;margin:0 auto}
.split-media{min-height:0;border:1px solid var(--line);background:var(--bg2)}
.split-media img{position:relative;width:100%;height:auto;object-fit:contain;max-height:78vh;margin:0 auto}
/* when it's a slideshow (background-image), keep cover but tall */
.split-media .v-slides{position:relative;height:clamp(520px,64vh,760px)}
.split-media .v-slide{background-size:contain;background-repeat:no-repeat;background-position:center;background-color:var(--bg2)}
.split-body{padding-block:clamp(20px,4vw,60px)}
.split-body p{font-size:18px;line-height:2}
@media(max-width:860px){.split{grid-template-columns:1fr}.split-media img{max-height:none}}

/* ── MANIFESTO CLOSE — full-width closing statement (text top, painting below) ── */
.manifesto-close{text-align:center}  /* padding now set once in the final block */
.manifesto-close-head{max-width:760px;margin:0 auto clamp(48px,6vw,80px)}
.manifesto-close-head .eyebrow{display:block;margin-bottom:clamp(22px,3vw,34px)}
.manifesto-close-head h2{font-family:var(--display);font-weight:500;font-size:clamp(40px,6vw,92px);line-height:.96;letter-spacing:-.028em;margin-bottom:clamp(22px,3vw,34px)}
.manifesto-close-head p{color:var(--mute);font-size:18px;line-height:1.95;max-width:520px;margin:0 auto}
.manifesto-close-art{max-width:1320px;margin:0 auto;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.manifesto-close-art img{width:100%;height:auto;display:block}
/* superseded: .manifesto-close-cta spacing set in final block */
/* Ken-Burns on the painting (always-on slow zoom, like the lookbook) */
.manifesto-close-art{overflow:hidden}
.manifesto-close-art img{animation:manifesto-kb 26s ease-in-out infinite alternate;transform-origin:center center;will-change:transform}
@keyframes manifesto-kb{from{transform:scale(1.02)}to{transform:scale(1.09)}}
@media(prefers-reduced-motion:reduce){.manifesto-close-art img{animation:none;transform:none}}

/* ── footer crest removed sitewide — the manifesto painting now closes every page ── */

/* ── slightly larger body copy in key story/value areas for premium scale ── */
.value p{font-size:18px;line-height:1.9}
.shop-sub{font-size:18px}

/* ════════════════════════════════════════════════════════════
   v1.6 — INNER-PAGE SIGNATURE PASS
   #1 Concierge contact · #2 Editorial shop grid · #5 Sticky product ·
   #13 On-brand 404 · #14 Page-load wipe
   ════════════════════════════════════════════════════════════ */

/* ── #14 PAGE-LOAD WIPE (gold sweep + W mark) ── */
.page-wipe{position:fixed;inset:0;z-index:9998;background:var(--bg);display:flex;align-items:center;justify-content:center;transform:translateY(0);transition:transform .55s var(--ease);pointer-events:none}
.page-wipe-mark{font-family:var(--script);font-size:clamp(80px,12vw,150px);color:var(--gold);opacity:.0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
/* on initial load: cover, show mark, then slide up away */
body:not(.wipe-in):not(.wipe-out) .page-wipe-mark{opacity:1;transform:none}
body.wipe-in .page-wipe{transform:translateY(-100%)}
body.wipe-in .page-wipe-mark{opacity:0}
.page-wipe.done{display:none}
/* on navigate away: cover again from bottom */
body.wipe-out .page-wipe{transform:translateY(0);transition:transform .5s var(--ease)}
body.wipe-out .page-wipe-mark{opacity:1;transform:none;transition:opacity .4s var(--ease) .1s}
@media(prefers-reduced-motion:reduce){.page-wipe{display:none}}

/* ── #2 EDITORIAL SHOP GRID — first product becomes the hero tile ── */
.woocommerce ul.products,.woocommerce-page ul.products{grid-auto-flow:row}
/* equal cards — no oversized feature tile (that caused the giant box + cutoffs) */

/* ── #5 STICKY PRODUCT PAGE — buy info pins while gallery scrolls ── */
@media(min-width:861px){
  .single-product div.product{align-items:start}
  .single-product .summary{position:sticky;top:calc(var(--header-h,84px) + 28px);align-self:start}
}
/* refined product meta spacing for the premium feel */
.single-product .summary>*{margin-bottom:0}
.single-product .woocommerce-product-details__short-description{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:20px 0;margin:22px 0}

/* ── #1 CONCIERGE CONTACT — editorial image beside the form, card-styled details ── */
.concierge .contact-grid{grid-template-columns:1fr 1.05fr;gap:clamp(40px,6vw,100px)}
.concierge .contact-intro h2{font-family:var(--display);font-weight:500;font-size:clamp(40px,5.5vw,78px);line-height:.94;letter-spacing:-.028em;margin:12px 0 24px}
.concierge .contact-intro p{font-size:17px;line-height:2;max-width:420px;margin-bottom:40px}
.concierge .contact-detail{padding:22px 0}
.concierge .contact-form-col{position:relative}
.concierge .contact-media{width:100%;height:clamp(220px,30vw,340px);background-size:cover;background-position:center;border:1px solid var(--line);margin-bottom:36px;filter:saturate(102%)}
@media(max-width:760px){.concierge .contact-grid{grid-template-columns:1fr}.concierge .contact-media{height:240px}}

/* ── #13 ON-BRAND 404 ── */
.err-404 h2{font-size:clamp(90px,18vw,220px);line-height:.86;letter-spacing:-.03em}
.err-404 p{max-width:480px;margin-left:auto;margin-right:auto}
.err-404-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}

/* ── v1.6.1 mobile drawer: style search link + theme toggle inside drawer ── */
.drawer-panel .drawer-theme{font-family:var(--ui);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);background:none;border:none;padding:0;margin-top:8px;cursor:pointer;text-align:left}
.drawer-panel .theme-toggle .tt-light,.drawer-panel .theme-toggle .tt-dark{display:none}
.drawer-panel .theme-toggle .tt-dark{display:inline}
[data-theme="dark"] .drawer-panel .theme-toggle .tt-dark{display:none}
[data-theme="dark"] .drawer-panel .theme-toggle .tt-light{display:inline}

/* ── v1.6.3 — shop: authoritative edge padding (overrides .page-head shorthand) ── */
.page-head.shop-head{padding-left:clamp(40px,7vw,120px)!important;padding-right:clamp(40px,7vw,120px)!important}
.shop-toolbar{max-width:1560px;padding-left:clamp(40px,7vw,120px)!important;padding-right:clamp(40px,7vw,120px)!important}
ul.products,.woocommerce ul.products,.woocommerce-page ul.products{padding-left:clamp(40px,7vw,120px)!important;padding-right:clamp(40px,7vw,120px)!important}
.shop-outro{padding-left:clamp(40px,7vw,120px)!important;padding-right:clamp(40px,7vw,120px)!important}
.woocommerce-cart-form,.woocommerce .cart-collaterals,.woocommerce .checkout,.woocommerce-account .woocommerce,.woocommerce-order,.woocommerce-order-received .woocommerce{padding-left:clamp(40px,7vw,120px)!important;padding-right:clamp(40px,7vw,120px)!important}

/* ── v1.6.4 — manifesto text removed, painting stands alone: give it proper top spacing ── */
/* superseded: manifesto padding-top set in final block */

/* ════════════════════════════════════════════════════════════
   v1.7 — footer removed, floating social, ticker/scroll/kicker edits, cursive title test
   ════════════════════════════════════════════════════════════ */

/* ── floating social rail (fixed to screen edge) ── */
.social-rail{position:fixed;right:18px;bottom:24px;z-index:80;display:flex;flex-direction:column;gap:10px}
.social-rail a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(251,250,247,.86);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;font-family:var(--ui);font-size:10px;letter-spacing:.08em;color:var(--ink);transition:.35s var(--ease)}
.social-rail a:hover{background:var(--gold);color:#fff;border-color:var(--gold);transform:translateY(-2px)}
[data-theme="dark"] .social-rail a{background:rgba(20,18,16,.8);color:#fff;border-color:rgba(255,255,255,.16)}
@media(max-width:700px){.social-rail{right:12px;bottom:16px}.social-rail a{width:34px;height:34px;font-size:9px}}

/* ── minimal legal line (replaces full footer) ── */
.site-legal{padding:40px clamp(24px,5vw,72px) 56px;text-align:center;font-family:var(--ui);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);border-top:1px solid var(--line-soft)}

/* painting is now the last visual block — tighten its bottom so legal sits close */
/* superseded: manifesto padding-bottom set in final block */

/* ── cursive script accents on select title words (Italianno) ── */
.script-word{font-family:var(--script)!important;font-style:normal!important;font-size:1.55em;line-height:.65;color:var(--gold);letter-spacing:0;font-weight:400!important;display:inline-block;transform:translateY(.06em);padding:0 .04em}
.split-body h2 em,.creed-line .gold{font-family:var(--script);font-style:normal;font-size:1.4em;line-height:.8;color:var(--gold);letter-spacing:0}
.page-head h1 .script-word{font-size:1.35em}

/* ════════════════════════════════════════════════════════════
   v1.7.2 — MOBILE-ONLY shop tweaks (desktop untouched)
   Client-approved: 2-per-row on phones (2+2+1), bold buttons,
   bigger prices, less white space / less scrolling.
   Everything below is inside max-width:540px so desktop is unaffected.
   ════════════════════════════════════════════════════════════ */
@media(max-width:540px){
  /* 2 products per row on mobile (overrides the old 1-per-row) */
  ul.products,.v-grid,.woocommerce ul.products,.woocommerce-page ul.products{
    grid-template-columns:repeat(2,1fr)!important;
    gap:10px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }

  /* tighter card body so cards are shorter = less scrolling */
  .v-card-body{padding:13px 11px 15px!important}
  .v-card-body .woocommerce-loop-product__title,.v-card h3{font-size:19px!important;margin-bottom:6px!important}
  .v-row{margin-bottom:10px!important;gap:6px!important}

  /* BIGGER prices on mobile */
  li.product .price,.v-card .price{font-size:18px!important;font-weight:600!important}

  /* BOLD "Select Options" buttons on mobile (higher specificity to beat base rule) */
  .woocommerce ul.products li.product .v-card-body .button,
  .woocommerce ul.products li.product .v-card-body .added_to_cart,
  ul.products li.product .v-card-body .button,
  .v-card-body .button,.v-card-body .added_to_cart{
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.12em!important;
    padding:13px 8px!important;
  }

  /* smaller chips/swatches so they fit the narrower card */
  .card-tag,.card-feature{font-size:7px!important;padding:4px 7px!important}
  .sw{width:11px!important;height:11px!important}
  .swatches{gap:5px!important}

  /* trim vertical white space around the shop header + toolbar (less scrolling) */
  .page-head.shop-head{padding-top:clamp(56px,14vw,90px)!important;padding-bottom:26px!important}
  .shop-sub{font-size:14px!important;margin-top:14px!important}
  .shop-toolbar{padding-top:22px!important;padding-bottom:20px!important}
  ul.products{padding-bottom:70px!important}
}

/* ════════════════════════════════════════════════════════════
   v1.8 — Carl edits: no-crop hoodies, lookbook text removed,
   About bottom hoodie, About creed tightened, signup line, social IG-only
   ════════════════════════════════════════════════════════════ */

/* ── PREMIUM UNIFORM PRODUCT CARDS — equal size, fill edge-to-edge, no gaps ──
   Consistent 4:5 portrait ratio, image covers the card, crop focused on the
   upper-center (chest/logo) so the hoodie + print are always in frame. */
li.product .v-card-media,.v-card .v-card-media{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--bg2)}
li.product img,.v-card-media img{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center 32%!important;   /* bias up toward chest/logo, not the floor */
  background:var(--bg2);
}

/* ── lookbook: text removed, don't crop, tighten button-only band ── */
.lookbook{height:auto!important;min-height:0!important}
.lookbook img{position:relative!important;width:100%!important;height:auto!important;object-fit:contain!important;display:block}
.lookbook .v-slides{position:relative!important;height:auto!important}
.lookbook-min{position:absolute;left:0;right:0;bottom:clamp(24px,5vw,60px);display:flex;justify-content:center;padding:0}
.lookbook-min .btn{background:rgba(251,250,247,.9);backdrop-filter:blur(6px)}

/* ── About: bottom hoodie image (no model text), don't crop ── */
.about-hoodie{padding:0 clamp(24px,5vw,72px) clamp(40px,5vw,70px);max-width:1200px;margin:0 auto}
.about-hoodie img{width:100%;height:auto;object-fit:contain;display:block;border:1px solid var(--line);background:var(--bg2)}

/* ── About creed: label removed, tighten dead space ── */
.about-creed{padding-top:clamp(50px,7vw,90px)!important;padding-bottom:clamp(60px,8vw,110px)!important}

/* ── signup sub-line spacing ── */
.signup-sub{font-family:var(--ui);font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--mute);margin-top:14px}

/* ════════════════════════════════════════════════════════════
   v1.9.2 — LOOKBOOK ART DIRECTION
   Two images: a landscape one for desktop, a portrait one for mobile.
   The <picture> element swaps them automatically at 900px.
   Whole image always shows (no crop) — you design the gaps into the image.
   ════════════════════════════════════════════════════════════ */
.lookbook-art{position:relative;background:var(--bg);max-width:1560px;margin:0 auto;padding:clamp(16px,2vw,40px) clamp(16px,3vw,50px) clamp(40px,5vw,70px)}
.lookbook-art picture{display:block}
.lookbook-art img{width:100%;height:auto;display:block;object-fit:contain}
/* centred SHOP button floating over the image */
.lookbook-art-cta{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3}
.lookbook-art-cta .btn{background:rgba(251,250,247,.92);backdrop-filter:blur(6px);border-color:var(--line)}



/* ════════════════════════════════════════════════════════════
   v1.9.3 — About cleanup + button fixes
   ════════════════════════════════════════════════════════════ */

/* lookbook SHOP button below the image (baked in, no Customizer CSS needed) */
.lookbook-art{display:flex;flex-direction:column;align-items:center}
.lookbook-art picture,.lookbook-art img{width:100%}
.lookbook-art .lookbook-art-cta{position:static;left:auto;top:auto;transform:none;margin-top:clamp(18px,2.5vw,32px)}

/* center the button LABEL text on mobile (About "Enter the Collection") */
@media(max-width:540px){
  .btn{text-align:center;justify-content:center}
  .split-body .btn{display:flex;align-items:center;justify-content:center}
}

/* ── v1.9.4 — About bottom image (photo under the text) ── */
/* superseded: .about-bottom-img set in the final block */
/* superseded: .about-bottom-img img sizing set in the final block */

/* ════════════════════════════════════════════════════════════
   v1.9.7 — Serif swapped: Fraunces → Instrument Serif
   Fraunces' WONK axis produced the swashy f/g/y the client flagged.
   Instrument Serif has clean, normal letterforms by default — no
   font-feature hacks needed, and it sits in the same modern era as
   Archivo (also answers "shouldn't look Times New Roman").
   ════════════════════════════════════════════════════════════ */

/* ── button text centered on desktop AND mobile (all buttons) ── */
.btn,.button,.v-card-body .button,.split-body .btn,.lookbook-art-cta .btn,.manifesto-close-cta .btn{
  text-align:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* button now sits ABOVE the painting — flip the spacing */
/* superseded: manifesto-close-cta margins set in final block */

/* ── Instrument Serif only ships regular (400) + italic.
   Force serif text to its real weight so the browser never fakes a thin/bold
   version (synthesised weights look mushy). Applies everywhere --serif is used. ── */
.split-body h2,.split-body h2 em,
.page-head h1,.coll-head h2,
.creed-line,.creed-line .w,
.contact-intro h2,.manifesto-close-head h2,
.v-card-body h3,.v-card h3,.woocommerce-loop-product__title,
.single-product .product_title,.single-product .price,
.quote blockquote,blockquote,
.drawer-panel a,
.woocommerce-tabs .panel h2,
.woocommerce .cart-collaterals h2,.woocommerce-checkout h3,
.woocommerce-account h2,.woocommerce-account h3,
.woocommerce ul.order_details li strong,
.page-wrap h1,.page-wrap h2,.page-wrap h3{
  font-weight:400!important;
  font-synthesis-weight:none;
}

/* ════════════════════════════════════════════════════════════
   v1.9.8 — Carl's final round
   1) Shop page text was flush to the window edge
   2) "Client Services" label removed (in template)
   3) Equal spacing above/below "Shop The Collection"
   4) About top image loads sooner (priority hints)
   ════════════════════════════════════════════════════════════ */

/* ── 1) SHOP: force text off the window edge (beats the .page-head shorthand) ── */
body.woocommerce .page-head.shop-head,
body.woocommerce-page .page-head.shop-head,
.page-head.shop-head{
  padding-left:clamp(28px,7vw,120px)!important;
  padding-right:clamp(28px,7vw,120px)!important;
  box-sizing:border-box;
}
body.woocommerce .shop-toolbar,
body.woocommerce-page .shop-toolbar,
.shop-toolbar{
  padding-left:clamp(28px,7vw,120px)!important;
  padding-right:clamp(28px,7vw,120px)!important;
  box-sizing:border-box;
}
/* the shop sub-line inherits the same gutter */
.shop-head .shop-sub{padding-left:0;padding-right:0;margin-left:auto;margin-right:auto}

/* ── 3) EQUAL SPACING around the "Shop The Collection" button ──
   Consolidates the three competing .manifesto-close padding rules into one,
   so the gap ABOVE the button matches the gap BELOW it (before the painting). */
.manifesto-close{
  padding-top:clamp(60px,8vw,110px)!important;
  padding-bottom:clamp(60px,8vw,110px)!important;
  padding-left:clamp(24px,5vw,72px)!important;
  padding-right:clamp(24px,5vw,72px)!important;
  text-align:center;
}
.manifesto-close-cta{
  margin-top:0!important;
  margin-bottom:clamp(60px,8vw,110px)!important;   /* same value as padding-top = equal gaps */
  text-align:center;
}

/* ── 4) About top image: show immediately.
   It had the .wipe reveal (clip-path hides it until JS fires on scroll), which
   made it feel "delayed" even after the file had downloaded. It's the first
   thing on the page, so there's nothing to reveal on scroll — show it at once. */
.split-media.wipe{clip-path:none!important;transition:none!important}
.split-media.wipe img{opacity:1!important;transform:none!important}

/* ════════════════════════════════════════════════════════════
   v1.9.9 — REAL fix for the shop page edge problem
   The visible "Shop" + "Showing all 5 results" + sort dropdown are
   WooCommerce's OWN elements (rendered by woocommerce_content()),
   NOT the theme's .shop-head / .shop-toolbar. They were never styled,
   so they sat flush against the window edge. Now aligned to the grid.
   ════════════════════════════════════════════════════════════ */

:root{ --shop-gutter: clamp(28px,7vw,120px); }

/* hide WooCommerce's duplicate plain "Shop" title (theme shows its own styled one) */
body.woocommerce .woocommerce-products-header,
body.woocommerce-page .woocommerce-products-header,
body.woocommerce h1.page-title,
body.woocommerce-page h1.page-title,
body.woocommerce .woocommerce-products-header__title,
body.woocommerce-page .woocommerce-products-header__title{
  display:none!important;
}

/* result count — high specificity so WooCommerce's own CSS can't win */
body.woocommerce .woocommerce-result-count,
body.woocommerce-page .woocommerce-result-count,
body.woocommerce p.woocommerce-result-count,
body.woocommerce-page p.woocommerce-result-count{
  float:none!important;
  clear:none!important;
  display:block!important;
  width:auto!important;
  margin:clamp(30px,4vw,54px) 0 clamp(18px,2vw,26px) 0!important;
  padding:0 0 0 var(--shop-gutter)!important;
  box-sizing:border-box!important;
}

/* sort dropdown — mirror gutter on the right */
body.woocommerce .woocommerce-ordering,
body.woocommerce-page .woocommerce-ordering,
body.woocommerce form.woocommerce-ordering,
body.woocommerce-page form.woocommerce-ordering{
  float:none!important;
  display:block!important;
  width:auto!important;
  text-align:right!important;
  margin:0 0 clamp(30px,4vw,54px) 0!important;
  padding:0 var(--shop-gutter) 0 0!important;
  box-sizing:border-box!important;
}

/* product grid on the identical gutter so everything lines up */
body.woocommerce ul.products,
body.woocommerce-page ul.products,
ul.products{
  padding-left:var(--shop-gutter)!important;
  padding-right:var(--shop-gutter)!important;
  margin-top:0!important;
  box-sizing:border-box!important;
}

/* theme's own styled shop head uses the same gutter */
body.woocommerce .page-head.shop-head,
body.woocommerce-page .page-head.shop-head,
.page-head.shop-head{
  padding-left:var(--shop-gutter)!important;
  padding-right:var(--shop-gutter)!important;
  box-sizing:border-box!important;
}

/* ── hero lede bold (was in Additional CSS — now baked into the theme) ── */
.art-hero .lede,.v-hero-inner .lede{font-weight:700!important}

/* ════════════════════════════════════════════════════════════
   v2.0.0 — About bottom image + final equal spacing
   ════════════════════════════════════════════════════════════ */

/* ── About bottom image: was carrying .reveal (opacity:0 + translateY)
   which made it render shifted/bleeding until JS fired. Class removed in
   the template; this guarantees it renders clean and contained. ── */
/* ── About bottom image: LUXURY FRAMED PORTRAIT.
   The cleaned photo is tall — cap it into an elegant portrait frame
   (object-fit:cover, fixed ratio) so it never stretches down the page,
   with a slow reveal + subtle zoom that reads as premium/editorial. ── */
.about-bottom-img{
  margin:0 auto;
  padding:clamp(40px,6vw,90px) clamp(24px,5vw,72px) 0;
  text-align:center;
  background:none;
  border:none;
  perspective:1200px;
}
.about-bottom-img img{
  display:block;
  width:100%!important;
  max-width:560px!important;             /* refined, gallery-sized */
  aspect-ratio:4/5!important;            /* elegant portrait frame — no more "very long" */
  height:auto!important;
  object-fit:cover!important;
  object-position:center 28%!important;  /* bias to the gold logo, not the lap */
  margin:0 auto;
  border:none!important;
  background:var(--bg2);
  box-shadow:0 40px 90px -50px rgba(22,20,15,.55)!important;  /* soft luxury lift */
  /* start state for the reveal */
  opacity:0;
  transform:translateY(46px) scale(1.06);
  transition:opacity 1.5s var(--ease),transform 1.9s var(--ease);
  will-change:opacity,transform;
}
/* revealed state (JS adds .in via the existing reveal observer; CSS fallback below) */
.about-bottom-img.in img,
.about-bottom-img img{
  /* the second selector is the resting state once animation settles */
}
.about-bottom-img.reveal-lux img{opacity:1;transform:none}

/* slow, continuous "breathing" zoom so it feels alive/expensive */
@media (prefers-reduced-motion: no-preference){
  .about-bottom-img.reveal-lux img{
    animation:aboutLuxDrift 14s ease-in-out 1.8s infinite alternate;
  }
}
@keyframes aboutLuxDrift{
  from{transform:scale(1)}
  to{transform:scale(1.045)}
}

/* ── Shop The Collection button: EXACTLY equal distance between the
   photo above and the painting below. One rule, no competitors. ── */
.manifesto-close{
  padding-top:0!important;
  padding-bottom:clamp(50px,7vw,90px)!important;
  padding-left:clamp(24px,5vw,72px)!important;
  padding-right:clamp(24px,5vw,72px)!important;
  text-align:center;
}
.manifesto-close-cta{
  margin-top:clamp(70px,9vw,120px)!important;      /* gap ABOVE button  */
  margin-bottom:clamp(70px,9vw,120px)!important;   /* gap BELOW  button — same value */
  text-align:center;
}
