/* LHG v2 — white-led layer (Master Website Content, 22 Sep 2026)
   White, black and warm metallic gold · Glacial Indifference · dark reserved for HBOT, Fink, closing CTAs and footer */

body.v2{background:#fff}
.v2 .sec-warm{background:var(--ivory)}
.v2 .sec-white{background:#fff}
.v2 .lead{color:#55504A}
.v2 .sec-dark .lead,.v2 .page-hero.is-dark .lead,.v2 .bleed .lead,.v2 .cta-giant .lead{color:#CFCAC0}
.v2 h2{letter-spacing:-.015em}
.v2 .sec-head h2{max-width:24ch}
.v2 .sec-head.single h2{max-width:30ch}
.muted-l{color:#BDB7AC;max-width:60ch}
.gold-t{background:linear-gradient(100deg,#8C6420 0%,#C9A04A 40%,#B48430 70%,#8C6420 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.sec-dark .gold-t,.bleed .gold-t{background:linear-gradient(100deg,#C9A04A,#FCF0A8 50%,#C9A04A);-webkit-background-clip:text;background-clip:text}
a.inline{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.h3-l{font-size:clamp(20px,1.7vw,26px);line-height:1.3;margin:6px 0 14px}

/* ---------- Header: light by default ---------- */
.v2 .site-header.scrolled{background:rgba(255,255,255,.92);color:var(--obsidian);box-shadow:0 1px 0 var(--hair);--mark-gap:#fff}
.v2 .site-header.scrolled .brand .wm i{color:var(--bronze)}
.v2 .site-header.scrolled .nav .btn{background:var(--obsidian);border-color:var(--obsidian);color:var(--ivory)}
.v2 .site-header.scrolled .nav .btn .arr{background:rgba(255,255,255,.14);color:var(--gold)}
.v2 .site-header{--mark-gap:#fff}
.v2 .mega{background:#fff;color:var(--obsidian);border:1px solid var(--hair);box-shadow:0 40px 80px -40px rgba(10,10,11,.3)}
.v2 .mega ul a{border-color:var(--hair)}
.v2 .mega ul a small,.v2 .mega .intro p{color:var(--stone)}
.v2 .mega ul a:hover{color:var(--bronze)}
.v2 .mega .code{color:var(--bronze)}
.v2 .mega .intro h3{color:var(--obsidian)}

/* ---------- Home hero ---------- */
.hero2{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--header-h) + 40px) 0 40px;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#fff 0%,#FBFAF6 100%)}
.hero2 .hero-infinity{top:auto;bottom:-6%;right:auto;left:-14vw;width:min(90vw,1300px);opacity:.55;z-index:-1}
.hero2 .hero-infinity .base{stroke:rgba(140,100,32,.14)}
.h2-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(30px,5vw,90px);align-items:center}
.hero2 .display{font-size:clamp(42px,5.6vw,86px);line-height:1.02;max-width:14ch;letter-spacing:-.025em}
.metal{background:linear-gradient(100deg,#84540C 0%,#B48430 28%,#E2C274 48%,#B48430 68%,#84540C 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:metalSheen 7s var(--inout) infinite}
.metal .wi{background:inherit;-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes metalSheen{0%,40%{background-position:100% 0}100%{background-position:-100% 0}}
.sub-head{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin:26px 0 0;line-height:1.7;max-width:60ch}
.page-hero.is-dark .sub-head{color:var(--gold)}
.hero2 .lead{margin-top:22px;max-width:52ch}
.hero2 .btn-row{margin-top:34px}
.h2-fig{aspect-ratio:4/5;max-height:74vh;background:var(--ivory)}
.h2-fig img{transform:scale(1.08)}
.h2-foot{margin-top:clamp(36px,5vw,64px);padding-top:22px;border-top:1px solid var(--hair);font-size:15px;color:var(--stone);max-width:none}
.h2-foot span{display:block;max-width:90ch}

/* ---------- Page heroes ---------- */
.page-hero.ph-light{background:#fff;padding-top:calc(var(--header-h) + clamp(50px,7vw,100px));padding-bottom:clamp(50px,6vw,90px)}
.page-hero.ph-light.no-img{background:linear-gradient(180deg,#fff,#FBFAF6)}
.ph-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(30px,5vw,90px);align-items:end}
.ph-light.no-img .ph-grid{grid-template-columns:1fr}
.ph-light h1{max-width:22ch;font-size:clamp(34px,4.2vw,62px);letter-spacing:-.02em}
.ph-light.no-img h1{max-width:26ch}
.ph-fig{aspect-ratio:4/3;background:var(--ivory)}
.ph-light .btn-row{margin-top:32px}
.page-hero.is-dark h1{max-width:22ch}
.art-h{font-size:clamp(30px,3.4vw,46px)!important}

/* ---------- Statement / moments ---------- */
.pos-h{font-size:clamp(30px,3.6vw,54px);line-height:1.1;max-width:26ch}
.q-big{font-size:clamp(26px,3vw,46px);font-weight:700;line-height:1.18;letter-spacing:-.015em;max-width:30ch;margin:0;padding-left:clamp(20px,3vw,44px);border-left:2px solid var(--gold)}
.q-moment{max-width:1100px}
.q-moment .lead{margin-bottom:26px}
.closing{margin:clamp(40px,5vw,70px) 0 0;padding-top:26px;border-top:1px solid var(--hair);font-size:clamp(19px,1.6vw,24px);font-weight:700;letter-spacing:-.005em;max-width:56ch}
.closing::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:14px}
.closing.sm{font-size:17px;margin-top:22px;padding-top:16px}
.sec-dark .closing{border-color:var(--hair-dark)}
.signature{margin:clamp(50px,6vw,90px) 0 0;font-size:clamp(24px,2.8vw,42px);font-weight:700;line-height:1.2;letter-spacing:-.015em;max-width:32ch}
.st-grid{align-items:center}
.st-grid .figure.tall{max-height:640px}
.st-grid.flip{grid-template-columns:1fr 1fr}
.st-narrow{max-width:900px}
.st-narrow h2{max-width:26ch}
.sec-tagline{text-align:center;padding-block:clamp(100px,12vw,190px)}
.tagline-moment{max-width:1100px;margin:0 auto}
.tl-mark{width:90px;height:45px;margin:0 auto 34px;color:var(--gold)}
.tl{font-size:clamp(34px,5vw,78px);font-weight:700;line-height:1.05;letter-spacing:-.025em;margin:0 auto;max-width:18ch;background:linear-gradient(100deg,#F8F6F1 20%,#E2C274 50%,#F8F6F1 80%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:metalSheen 9s var(--inout) infinite}
.tagline-moment .lead{margin:30px auto 0;color:#CFCAC0}
.vm{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,110px)}
.vm-t{font-size:clamp(22px,2.2vw,32px);font-weight:700;line-height:1.3;letter-spacing:-.01em;margin:0}

/* ---------- Six vertical tiles (3x2) ---------- */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.tile{position:relative;display:flex;flex-direction:column;min-height:clamp(340px,28vw,430px);padding:clamp(26px,2.6vw,40px);background:#fff;overflow:hidden;isolation:isolate;transition:color .6s var(--expo)}
.sec-warm .tile{background:var(--ivory)}
.tile .t-img{position:absolute;inset:0;z-index:-2;opacity:0;transition:opacity .8s var(--expo)}
.tile .t-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.42);transform:scale(1.12);transition:transform 1.6s var(--expo)}
.tile::before{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:var(--metal);transition:width .8s var(--expo);z-index:1}
.tile:hover::before,.tile:focus-visible::before{width:100%}
.tile:hover .t-img,.tile:focus-visible .t-img{opacity:1}
.tile:hover .t-img img{transform:scale(1)}
.tile:hover,.tile:focus-visible{color:var(--ivory)}
.t-top{display:flex;justify-content:space-between;align-items:flex-start}
.t-num{font-size:clamp(44px,4vw,64px);font-weight:700;line-height:.9;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1px var(--gold);transition:color .6s}
.tile:hover .t-num{color:var(--gold)}
.tile .glyph{width:42px;height:42px;color:var(--bronze);transition:color .6s}
.tile:hover .glyph{color:var(--gold)}
.t-body{margin-top:auto}
.tile h3{font-size:clamp(21px,1.8vw,27px);line-height:1.2;margin-bottom:12px;max-width:18ch}
.tile p{font-size:15.5px;line-height:1.55;color:var(--stone);margin:0 0 18px;max-width:44ch;transition:color .6s}
.tile:hover p{color:#D8D3C8}
.tile .link{color:inherit}

/* ---------- Who we work with (horizontal cards) ---------- */
.w-track{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(260px,24vw,340px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:18px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}
.w-card{scroll-snap-align:start;background:#fff;border:1px solid var(--hair);padding:0 0 26px;display:flex;flex-direction:column;transition:box-shadow .5s var(--expo),transform .5s var(--expo)}
.w-card:hover{box-shadow:0 30px 60px -40px rgba(10,10,11,.35);transform:translateY(-4px)}
.w-card figure{margin:0 0 22px;aspect-ratio:4/3;overflow:hidden;background:var(--ivory)}
.w-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .8s,transform 1.4s var(--expo)}
.w-card:hover img{filter:grayscale(.1);transform:scale(1.05)}
.w-card .code,.w-card h3,.w-card p{padding-inline:24px}
.w-card h3{font-size:20px;margin:8px 0 8px}
.w-card p{font-size:15px;color:var(--stone);margin:0}

/* ---------- Horizontal timeline ---------- */
.htl{position:relative;margin-top:10px}
.htl ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),1fr);gap:0}
.htl-line{position:absolute;left:0;right:0;top:19px;height:1px;background:var(--hair)}
.sec-dark .htl-line{background:var(--hair-dark)}
.htl-line i{position:absolute;left:0;top:0;height:1px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#B48430,#FCF0A8,#C9A04A);transition:transform 2.2s var(--expo) .2s}
.htl.in .htl-line i{transform:scaleX(1)}
.htl li{position:relative;padding:0 22px 0 0}
.htl .dot{position:relative;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#fff;border:1px solid var(--hair);font-size:11.5px;font-weight:700;color:var(--stone);margin-bottom:22px;transition:background .5s,border-color .5s,color .5s}
.sec-warm .htl .dot{background:var(--ivory)}
.htl.in li .dot{background:var(--obsidian);border-color:var(--gold);color:var(--gold)}
.htl.in li:nth-child(1) .dot{transition-delay:.2s}.htl.in li:nth-child(2) .dot{transition-delay:.45s}.htl.in li:nth-child(3) .dot{transition-delay:.7s}.htl.in li:nth-child(4) .dot{transition-delay:.95s}.htl.in li:nth-child(5) .dot{transition-delay:1.2s}.htl.in li:nth-child(6) .dot{transition-delay:1.45s}.htl.in li:nth-child(7) .dot{transition-delay:1.7s}.htl.in li:nth-child(8) .dot{transition-delay:1.95s}
.htl h3{font-size:clamp(17px,1.4vw,21px);letter-spacing:.02em;margin-bottom:8px}
.htl p{font-size:14.5px;color:var(--stone);line-height:1.5;margin:0}
.htl.compact h3{font-size:clamp(14px,1.05vw,16px);letter-spacing:.1em;text-transform:uppercase}

/* ---------- Columns / cards ---------- */
.cols3{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hair)}
.cols3 .col{padding:clamp(28px,3vw,46px) clamp(20px,2.4vw,40px) 10px 0}
.cols3 .col+.col{padding-left:clamp(20px,2.4vw,40px);border-left:1px solid var(--hair)}
.col-k{display:block;font-size:13px;font-weight:700;letter-spacing:.2em;color:var(--bronze);margin-bottom:clamp(30px,4vw,70px)}
.cols3.big h3{font-size:clamp(28px,3vw,46px);line-height:1.05;letter-spacing:-.02em;margin-bottom:16px}
.cols3 p{color:var(--stone);max-width:36ch}
.card-grid{display:grid;gap:16px}
.card-grid.n2{grid-template-columns:repeat(2,1fr)}.card-grid.n3{grid-template-columns:repeat(3,1fr)}.card-grid.n4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--hair);padding:clamp(24px,2.4vw,34px);position:relative;transition:border-color .5s,box-shadow .5s var(--expo)}
.sec:not(.sec-warm) .card{background:var(--ivory)}
.card::before{content:"";position:absolute;left:-1px;top:-1px;height:2px;width:0;background:var(--metal);transition:width .7s var(--expo)}
.card:hover::before{width:calc(100% + 2px)}
.card:hover{box-shadow:0 30px 60px -45px rgba(10,10,11,.35)}
.c-top{display:flex;justify-content:space-between;align-items:center;min-height:30px;margin-bottom:26px}
.c-top .glyph{width:34px;height:34px;color:var(--bronze)}
.card h3{font-size:clamp(18px,1.4vw,21px);line-height:1.3}
.card p{font-size:15.5px;color:var(--stone);margin:10px 0 0;line-height:1.55}
.pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pills li{padding:10px 16px;border:1px solid var(--hair);border-radius:999px;font-size:14.5px;background:#fff;transition:border-color .3s,background .3s}
.sec:not(.sec-warm) .pills li{background:var(--ivory)}
.pills li:hover{border-color:var(--gold)}
.pills.sm li{padding:7px 12px;font-size:13.5px}
.pills.lg li{padding:14px 22px;font-size:17px;font-weight:700}
.pills.on-dark li,.sec-dark .pills li{background:transparent;border-color:var(--hair-dark);color:#DCD7CC}
.ticks.tk2{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
.ticks.tk3{display:grid;grid-template-columns:repeat(3,1fr);column-gap:40px}
.notice-inline{border-left:2px solid var(--gold);padding:14px 0 14px 20px;font-size:15.5px;color:var(--stone);line-height:1.6;background:linear-gradient(90deg,rgba(201,160,74,.07),transparent)}
.notice-inline strong{color:var(--obsidian)}
.sec-dark .notice-inline{color:var(--ash)}.sec-dark .notice-inline strong{color:var(--ivory)}

/* ---------- Question lists ---------- */
.qlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair);display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(30px,5vw,80px)}
.qlist li{display:grid;grid-template-columns:54px 1fr;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--hair);transition:padding .5s var(--expo)}
.qlist li:hover{padding-left:8px}
.qlist .n{font-size:13px;font-weight:700;letter-spacing:.16em;color:var(--bronze)}
.qlist .qq{font-size:clamp(18px,1.5vw,22px);font-weight:700;line-height:1.3}
.qlist.big{grid-template-columns:1fr}
.qlist.big li{padding:clamp(18px,2vw,28px) 0}
.qlist.big .qq{font-size:clamp(22px,2.6vw,40px);letter-spacing:-.015em;line-height:1.15}
.qlist.named li{grid-template-columns:54px minmax(140px,22%) 1fr}
.qlist.named .qk{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--stone)}

/* ---------- Engagement blocks / phases ---------- */
.eng{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.eng-b{background:#fff;padding:clamp(22px,2.2vw,32px);min-height:210px;display:flex;flex-direction:column;transition:background .5s}
.sec-warm .eng-b{background:var(--ivory)}
.eng-b:hover{background:var(--obsidian);color:var(--ivory)}
.eng-b:hover p{color:var(--ash)}
.eng-b h3{margin-top:auto;font-size:clamp(18px,1.4vw,21px)}
.eng-b p{font-size:14.5px;color:var(--stone);margin:8px 0 0}
.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ph{background:var(--ivory);border:1px solid var(--hair);padding:28px;position:relative;overflow:hidden}
.ph-k{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze)}
.ph h3{font-size:clamp(24px,2.2vw,32px);margin:34px 0 4px}
.ph-w{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--stone)}
.ph p{font-size:15px;color:var(--stone);margin:16px 0 0}
.ph-bar{position:absolute;left:0;bottom:0;height:3px;width:calc(25% * var(--k,1));background:var(--metal);transform-origin:0 50%;transform:scaleX(0);transition:transform 1.4s var(--expo)}
.ph:nth-child(1) .ph-bar{width:25%}.ph:nth-child(2) .ph-bar{width:50%}.ph:nth-child(3) .ph-bar{width:75%}.ph:nth-child(4) .ph-bar{width:100%}
.ph.in .ph-bar{transform:scaleX(1)}

/* ---------- Flow ---------- */
.flow ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0;align-items:stretch}
.flow li{position:relative;flex:1 1 0;min-width:120px;display:flex;align-items:center}
.flow li span{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;min-height:86px;padding:14px 16px;background:#fff;border:1px solid var(--hair);font-weight:700;font-size:15px;line-height:1.3;transition:background .5s,color .5s,border-color .5s}
.sec:not(.sec-warm) .flow li span{background:var(--ivory)}
.flow li+li::before{content:"";flex:none;width:clamp(12px,1.6vw,26px);height:1px;background:var(--gold)}
.flow li+li::after{content:"";position:absolute;left:clamp(6px,1.2vw,20px);top:50%;width:6px;height:6px;border-top:1px solid var(--gold);border-right:1px solid var(--gold);transform:translateY(-50%) rotate(45deg)}
.flow.in li span{animation:flowLit 1s var(--expo) both}
.flow.in li:nth-child(2) span{animation-delay:.12s}.flow.in li:nth-child(3) span{animation-delay:.24s}.flow.in li:nth-child(4) span{animation-delay:.36s}.flow.in li:nth-child(5) span{animation-delay:.48s}.flow.in li:nth-child(6) span{animation-delay:.6s}.flow.in li:nth-child(7) span{animation-delay:.72s}.flow.in li:nth-child(8) span{animation-delay:.84s}
@keyframes flowLit{0%{border-color:var(--hair)}40%{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,160,74,.15)}100%{border-color:var(--hair)}}
.flow li:hover span{background:var(--obsidian);color:var(--ivory);border-color:var(--obsidian)}

/* ---------- Pillars ---------- */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:10px}
.pillars>div{position:relative;background:#fff;padding:26px 20px 24px;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end}
.sec-warm .pillars>div{background:var(--ivory)}
.pillars i{position:absolute;left:20px;top:26px;width:2px;height:0;background:var(--metal);transition:height 1.2s var(--expo)}
.pillars>div.in i{height:50px}
.pillars span{font-weight:700;font-size:16px;line-height:1.3}

/* ---------- Market map ---------- */
.mmap-wrap{background:var(--ivory);border:1px solid var(--hair);padding:clamp(10px,2vw,30px)}
.mmap{width:100%;height:auto;overflow:visible}
.mmap .fd{fill:#D9D2C2}
.mmap .arc{fill:none;stroke:var(--gold);stroke-width:1.4;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2s var(--expo) .3s}
.mmap-wrap.in .arc{stroke-dashoffset:0}
.mmap .nd{fill:#fff;stroke:var(--bronze);stroke-width:2}
.mmap .nd.hub{fill:var(--obsidian);stroke:var(--gold);stroke-width:3}
.mmap .pulse{fill:none;stroke:var(--gold);stroke-width:1;opacity:.6;transform-box:fill-box;transform-origin:center;animation:pulse 2.8s ease-out infinite}
@keyframes pulse{from{transform:scale(.4);opacity:.8}to{transform:scale(1.6);opacity:0}}
.mmap .t1{font-family:var(--sans);font-weight:700;font-size:27px;fill:var(--obsidian)}
.mmap .t2{font-family:var(--sans);font-size:18px;fill:var(--stone);letter-spacing:.08em;text-transform:uppercase}
.mm-grid{align-items:center}
.regions{display:grid;gap:0;border-top:1px solid var(--hair)}
.region{padding:22px 0;border-bottom:1px solid var(--hair)}
.region h3{font-size:22px;margin:6px 0 8px}
.region p{color:var(--stone);font-size:15.5px;margin:0 0 6px}

/* ---------- Hub diagram ---------- */
.hub-wrap{max-width:1000px;margin:0 auto}
.hub{width:100%;height:auto;overflow:visible}
.hub .ring{fill:none;stroke:var(--hair);stroke-width:1}
.hub .ring2{fill:none;stroke:var(--hair);stroke-dasharray:3 6}
.hub .spoke{stroke:var(--gold);stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1;opacity:.7;transition:stroke-dashoffset 1.6s var(--expo)}
.hub-wrap.in .spoke{stroke-dashoffset:0}
.hub .nd{fill:#fff;stroke:var(--bronze);stroke-width:2}
.hub .core{fill:var(--obsidian)}
.hub .inf{fill:none;stroke:url(#metalStroke);stroke:var(--gold);stroke-width:4}
.hub .ct{font-family:var(--roman);font-size:26px;letter-spacing:8px;fill:var(--ivory)}
.hub .t1{font-family:var(--sans);font-weight:700;font-size:20px;fill:var(--obsidian)}

/* ---------- Logo slots ---------- */
.logo-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ls{background:#fff;border:1px dashed #D8D1C2;padding:22px;display:flex;flex-direction:column;gap:16px;min-height:170px}
.ls-cat{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze)}
.ls-box{display:flex;gap:10px;margin-top:auto}
.ls-box i{flex:1;height:34px;border-radius:3px;background:repeating-linear-gradient(135deg,#F3EFE6 0 6px,#fff 6px 12px)}
.ls-note{font-size:12.5px;color:var(--stone)}

/* ---------- Leadership cards ---------- */
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.lead-card{display:grid;grid-template-columns:clamp(120px,12vw,180px) 1fr;gap:clamp(20px,2.4vw,36px);background:#fff;border:1px solid var(--hair);padding:clamp(18px,2vw,28px);align-items:center;transition:box-shadow .5s var(--expo)}
.lead-card:hover{box-shadow:0 30px 60px -40px rgba(10,10,11,.35)}
.lc-portrait{aspect-ratio:4/5;background:radial-gradient(120% 90% at 30% 20%,#26262B,#0E0E10 70%);display:grid;place-items:center}
.lc-portrait .mono{font-weight:700;font-size:clamp(34px,3.4vw,52px);letter-spacing:.08em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead-card .eyebrow{margin-bottom:10px}
.lead-card h3{font-size:clamp(22px,2vw,28px)}
.lead-card p{font-size:15.5px;color:var(--stone);margin:10px 0 16px}
.awards{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.awards li{display:grid;grid-template-columns:80px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--hair);font-size:16.5px}
.awards b{color:var(--bronze);font-size:14px;letter-spacing:.14em}
.v2 .timeline>li span{color:inherit}
.v2 .founder .portrait{background:radial-gradient(120% 90% at 30% 20%,#26262B,#0E0E10 70%)}

/* ---------- Capabilities page ---------- */
.sg{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.sg-cell{background:#fff;padding:22px 18px;display:flex;flex-direction:column;gap:14px;min-height:190px;transition:background .5s,color .5s}
.sg-cell .glyph{width:34px;height:34px;color:var(--bronze)}
.sg-cell b{margin-top:auto;font-size:16px;line-height:1.3}
.sg-cell:hover{background:var(--obsidian);color:var(--ivory)}
.sg-cell:hover .glyph{color:var(--gold)}
.vrows{border-top:1px solid var(--hair)}
.vrow{display:grid;grid-template-columns:120px 1.5fr 1fr;gap:clamp(20px,4vw,70px);padding:clamp(40px,5vw,70px) 0;border-bottom:1px solid var(--hair);scroll-margin-top:110px}
.vr-num{display:block;font-size:clamp(46px,4.4vw,72px);font-weight:700;line-height:.9;color:transparent;-webkit-text-stroke:1px var(--gold)}
.vr-head .glyph{width:36px;height:36px;color:var(--bronze);margin-top:20px}
.vrow h3{font-size:clamp(24px,2.4vw,34px);line-height:1.15}
.vr-tag{font-size:17px;color:var(--bronze);font-weight:700;margin:10px 0 22px}
.vr-side h4{font-size:12px;color:var(--bronze);margin-bottom:8px}
.vr-side p{color:var(--stone);font-size:15.5px}
.duo{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(20px,3vw,50px);align-items:start}
.duo h3{font-size:clamp(20px,1.8vw,26px);margin-bottom:18px}
.duo-x{font-size:clamp(40px,4vw,64px);font-weight:700;color:var(--gold);line-height:1;align-self:center}
.cap-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--hair-dark)}
.cap-grid li{padding:14px 0;border-bottom:1px solid var(--hair-dark);color:#E3DED4;font-weight:700;font-size:15.5px;display:flex;gap:12px;align-items:center}
.cap-grid li::before{content:"";width:14px;height:1px;background:var(--gold)}

/* ---------- Equipment stack ---------- */
.stack{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.stack li{background:#fff;padding:20px 16px;display:flex;flex-direction:column;gap:18px;min-height:150px;transition:background .5s,color .5s}
.stack .glyph{width:32px;height:32px;color:var(--bronze)}
.stack span{margin-top:auto;font-weight:700;font-size:15px;line-height:1.3}
.stack li:hover{background:var(--obsidian);color:var(--ivory)}
.stack li:hover .glyph{color:var(--gold)}

/* ---------- Membership tiers ---------- */
.tiers{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;align-items:end}
.tier{background:#fff;border:1px solid var(--hair);padding:22px;display:flex;flex-direction:column}
.tier-bar{display:block;height:calc(var(--h) * 34px);background:linear-gradient(180deg,#E2C274,#B48430);margin-bottom:22px;transform-origin:50% 100%;transform:scaleY(0);transition:transform 1.2s var(--expo)}
.tier.in .tier-bar{transform:scaleY(1)}
.tier h3{font-size:18px}
.tier p{font-size:14.5px;color:var(--stone);margin:8px 0 0}

/* ---------- HBOT / Fink ---------- */
.fink-band{overflow:hidden}
.draw-dark{position:relative;border:1px solid var(--hair-dark);aspect-ratio:16/10;display:grid;place-items:center;padding:30px;background:radial-gradient(90% 90% at 50% 40%,#1A1A1D,#0A0A0B)}
.draw-dark svg{width:100%;height:100%;color:var(--gold)}
.draw-dark .tag,.draw-lg .tag{position:absolute;top:18px;left:18px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:6px 10px;border:1px solid currentColor;color:var(--gold)}
.draw-lg .tag{color:var(--bronze)}
.models{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.model{background:#fff;border:1px solid var(--hair);display:flex;flex-direction:column}
.m-draw{aspect-ratio:16/10;background:var(--ivory);border-bottom:1px solid var(--hair);padding:18px;display:grid;place-items:center}
.m-draw svg{width:100%;height:100%;color:var(--bronze)}
.m-body{padding:26px;display:flex;flex-direction:column;flex:1}
.model h3{font-size:30px;margin:8px 0 18px}
.model h3 small{font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--stone)}
.model .btn{margin-top:auto;align-self:flex-start}
.spec-panel{border:1px solid rgba(201,160,74,.45);background:linear-gradient(180deg,#141416,#0C0C0E);padding:clamp(22px,2.6vw,36px)}
.sp-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid rgba(201,160,74,.45)}
.sp-head span{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ash)}
.sp-head b{font-size:clamp(22px,2vw,28px);color:var(--gold)}
.spec-panel table{width:100%;border-collapse:collapse;font-size:15.5px}
.spec-panel th,.spec-panel td{text-align:left;padding:13px 0;border-bottom:1px solid var(--hair-dark);vertical-align:top}
.spec-panel th{width:36%;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash);padding-right:16px}
.spec-panel td{color:var(--ivory)}
.sp-src{font-size:12.5px;color:var(--ash);margin:16px 0 0}

/* ---------- Insights ---------- */
.feature{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.feature .figure{aspect-ratio:16/11}
.feature .figure img{filter:grayscale(1)}
.feature h2 a:hover{color:var(--bronze)}
.filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:34px;scrollbar-width:none}
.filters::-webkit-scrollbar{display:none}
.filters button{flex:none;border:1px solid var(--hair);background:#fff;padding:10px 16px;border-radius:999px;font-size:13.5px;font-weight:700;cursor:pointer;color:var(--stone);white-space:nowrap}
.filters button[aria-pressed=true]{background:var(--obsidian);border-color:var(--obsidian);color:var(--ivory)}
.post-card[hidden]{display:none}
.post-card.planned{border:1px solid var(--hair);background:var(--ivory);padding:26px;display:flex;flex-direction:column}
.post-card.planned h3{margin-top:18px;color:#3E3A34}
.post-card.planned .byline{margin-top:auto}
.byline{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--stone);margin:10px 0 0}
.v2 .reports{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.v2 .report{min-height:340px}
.chk-group{border:0;padding:0;margin:0}
.chk-group legend{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--stone);margin-bottom:10px;padding:0}
.chk-pills{display:flex;flex-wrap:wrap;gap:8px}
.chk-pills label{position:relative;cursor:pointer}
.chk-pills input{position:absolute;opacity:0;inset:0}
.chk-pills span{display:inline-block;padding:9px 14px;border:1px solid var(--hair);border-radius:999px;font-size:14px;background:var(--ivory);transition:all .25s}
.chk-pills label:hover span{border-color:var(--gold)}
.chk-pills input:checked+span{background:var(--obsidian);border-color:var(--obsidian);color:var(--ivory)}
.chk-pills input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}

/* ---------- Contact ---------- */
.fprog{height:3px;background:var(--hair);margin:-8px 0 26px;position:relative;overflow:hidden}
.fprog i{position:absolute;inset:0;transform-origin:0 50%;transform:scaleX(var(--fp,.33));background:var(--metal);transition:transform .8s var(--expo)}
.v2 .intent-grid{grid-template-columns:repeat(2,1fr)}
.v2 .intent-grid label:last-child:nth-child(odd){grid-column:1/-1}
.resp{list-style:none;counter-reset:r;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.resp li{counter-increment:r;border-top:2px solid var(--gold);padding-top:12px;font-size:14.5px}
.resp li::before{content:"Step " counter(r);display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);margin-bottom:4px}
.resp.sm{grid-template-columns:1fr 1fr}
.done .btn-row{gap:10px 26px}
.news-done h3{font-size:26px;margin:6px 0 8px}
.cta-support{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:18px 0 0}
.f-cols li{color:#CFCAC0;font-size:15.5px}

/* Compare (Why LHG) */
.compare.vs thead th:last-child{background:linear-gradient(100deg,#A97A2A,#E2C274 45%,#C9A04A);color:var(--obsidian)}
.compare.vs td:last-child{font-weight:700;background:#FCFAF4}

/* ---------- Responsive ---------- */
@media (max-width:1280px){.stack{grid-template-columns:repeat(5,1fr)}.tiers{grid-template-columns:repeat(3,1fr)}.eng{grid-template-columns:repeat(3,1fr)}.sg{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1100px){
  .tiles{grid-template-columns:repeat(2,1fr)}
  .card-grid.n4{grid-template-columns:repeat(2,1fr)}
  .logo-slots{grid-template-columns:repeat(2,1fr)}
  .phases{grid-template-columns:repeat(2,1fr)}
  .lead-grid{grid-template-columns:1fr}
  .models{grid-template-columns:1fr 1fr}
  .htl{overflow-x:auto;padding-bottom:10px;scrollbar-width:none}
  .htl ol{min-width:calc(var(--n) * 150px)}
  .htl-line{min-width:calc(var(--n) * 150px)}
  .vrow{grid-template-columns:90px 1fr}
  .vr-side{grid-column:2}
}
@media (max-width:860px){
  .h2-grid,.ph-grid,.vm,.feature,.duo{grid-template-columns:1fr}
  .hero2{min-height:0;padding-top:calc(var(--header-h) + 36px)}
  .h2-fig{aspect-ratio:16/11;max-height:none}
  .ph-fig{aspect-ratio:16/10}
  .duo-x{justify-self:start}
  .cols3{grid-template-columns:1fr}
  .cols3 .col+.col{padding-left:0;border-left:0;border-top:1px solid var(--hair)}
  .col-k{margin-bottom:18px}
  .card-grid.n3,.card-grid.n2{grid-template-columns:1fr}
  .qlist{grid-template-columns:1fr}
  .qlist.named li{grid-template-columns:44px 1fr}
  .qlist.named .qq{grid-column:2}
  .ticks.tk2,.ticks.tk3{grid-template-columns:1fr}
  .stack{grid-template-columns:repeat(3,1fr)}
  .flow ol{flex-direction:column}
  .flow li{flex-direction:column;align-items:stretch}
  .flow li+li::before{width:1px;height:18px;margin:0 auto}
  .flow li+li::after{left:50%;top:9px;transform:translateX(-50%) rotate(135deg)}
  .flow li span{min-height:58px}
  .resp{grid-template-columns:1fr 1fr}
  .v2 .intent-grid{grid-template-columns:1fr}
  .tiers{grid-template-columns:repeat(2,1fr)}
  .models{grid-template-columns:1fr}
  .eng{grid-template-columns:1fr 1fr}
  .w-track{grid-auto-columns:78%}
}
@media (max-width:600px){
  .tiles,.card-grid.n4,.logo-slots,.phases{grid-template-columns:1fr}
  .tile{min-height:0}
  .tile .t-body{margin-top:40px}
  .hero2 .display{font-size:clamp(36px,10.4vw,48px)}
  .sub-head{font-size:11.5px;letter-spacing:.14em}
  .stack{grid-template-columns:1fr 1fr}
  .sg{grid-template-columns:1fr 1fr}
  .sg-cell{min-height:130px}
  .vrow{grid-template-columns:1fr}
  .vr-side{grid-column:auto}
  .lead-card{grid-template-columns:96px 1fr}
  .qlist.big .qq{font-size:22px}
  .pos-h{font-size:28px}
  .mmap .t1{font-size:26px}.mmap .t2{font-size:19px}
}
@media (prefers-reduced-motion:reduce){
  .metal,.tl{animation:none}
  .htl-line i,.ph-bar,.tier-bar{transform:none!important}
  .mmap .arc,.hub .spoke{stroke-dashoffset:0}
  .mmap .pulse{display:none}
}

/* fixes 1 */
.q-big.mt-l{margin-top:clamp(50px,6vw,90px)}
.post-grid.editorial .post-card:not(:first-child) .figure{grid-row:1 / span 4}
.post-grid.editorial .post-card:not(:first-child) .byline{grid-column:2}
.sec.sec-dark .pills li,.pills.on-dark li{background:transparent;border-color:rgba(255,255,255,.18);color:#DCD7CC}
.sec.sec-dark .pills li:hover,.pills.on-dark li:hover{border-color:var(--gold)}

/* =====================================================================
   FROM IDEA TO OPERATION — scroll-driven blueprint + film band (2026-09-24)
   ===================================================================== */
.jr{display:grid;grid-template-columns:7fr 5fr;gap:clamp(30px,5vw,90px);margin-top:10px}
.jr-stick{position:sticky;top:calc(var(--header-h) + 24px);height:calc(100vh - var(--header-h) - 48px);max-height:760px;display:flex;flex-direction:column;gap:18px}
.jr-paper{flex:1;min-height:0;position:relative;background-color:#FBFAF6;background-image:linear-gradient(rgba(140,100,32,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(140,100,32,.07) 1px,transparent 1px);background-size:28px 28px;border:1px solid var(--hair);display:grid;place-items:center;padding:clamp(10px,2vw,30px);overflow:hidden}
.jr-paper::after{content:"LHG · DEVELOPMENT JOURNEY";position:absolute;right:16px;bottom:12px;font-size:10.5px;font-weight:700;letter-spacing:.22em;color:rgba(140,100,32,.55)}
.bp{width:100%;height:100%;max-height:100%}
.bp .ln{fill:none;stroke:#0A0A0B;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p,1))}
.bp .thin{stroke-width:.7;stroke:#8C857A}
.bp .strong{stroke-width:2}
.bp .bar{stroke-width:1}
.bp .gold,.bp .inf{stroke:url(#bpg);stroke-width:2.4}
.bp .inf{stroke-width:3.2}
.bp .dash{stroke-dasharray:1;stroke-width:1.6}
.bp .dot{fill:#C9A04A;opacity:var(--p,1)}
.bp .win{fill:#C9A04A;opacity:var(--p,1)}
.bp-l{transition:opacity .5s var(--ease)}
.jr-meta{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.jr-count{font-size:13px;font-weight:700;letter-spacing:.18em;color:var(--stone)}
.jr-count b{color:var(--obsidian);font-size:18px}
.jr-bar{height:2px;background:var(--hair);position:relative;overflow:hidden}
.jr-bar i{position:absolute;inset:0;transform-origin:0 50%;transform:scaleX(0);background:var(--metal)}
.jr-label{font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze)}
.jr-steps{list-style:none;margin:0;padding:0}
.jr-step{min-height:62vh;display:flex;flex-direction:column;justify-content:center;padding:30px 0;border-top:1px solid var(--hair);opacity:.32;transition:opacity .6s var(--ease)}
.jr-step:first-child{border-top:0}
.jr-step.on{opacity:1}
.jr-n{font-size:clamp(56px,6vw,96px);font-weight:700;line-height:.9;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1px var(--gold);transition:color .6s}
.jr-step.on .jr-n{color:var(--gold)}
.jr-step h3{font-size:clamp(26px,2.6vw,40px);letter-spacing:-.015em;margin:18px 0 12px}
.jr-step p{font-size:18px;color:var(--stone);max-width:40ch;margin:0 0 20px}
.jr-step .link{align-self:flex-start}
.js .jr-step{will-change:opacity}
.no-js .jr-step{opacity:1}

/* Film band */
.film{position:relative;min-height:clamp(520px,82vh,860px);display:flex;align-items:flex-end;color:var(--ivory);overflow:hidden;isolation:isolate;background:#0A0A0B}
.film-media{position:absolute;inset:0;z-index:-2}
.film-loop{width:100%;height:100%;object-fit:cover;opacity:.72}
.film::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,10,11,.25) 0%,rgba(10,10,11,.15) 40%,rgba(10,10,11,.88) 100%)}
.film-inner{padding-block:clamp(70px,9vw,130px);width:100%}
.film .eyebrow{color:var(--gold)}
.film h2{font-size:clamp(34px,4.6vw,72px);line-height:1.04;letter-spacing:-.025em;max-width:18ch;color:var(--ivory)}
.film .lead{color:#D9D4CA;margin-top:20px;max-width:52ch}
.film-play{margin-top:34px;display:inline-flex;align-items:center;gap:18px;background:none;border:0;color:var(--ivory);cursor:pointer;font-size:13.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:0}
.fp-ring{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(201,160,74,.7);position:relative;transition:transform .5s var(--expo),background .4s}
.fp-ring::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(201,160,74,.35);animation:fpPulse 2.6s ease-out infinite}
.fp-ring svg{width:22px;height:22px;color:var(--gold);margin-left:3px}
.film-play:hover .fp-ring{transform:scale(1.08);background:var(--gold)}
.film-play:hover .fp-ring svg{color:var(--obsidian)}
@keyframes fpPulse{from{transform:scale(.9);opacity:.9}to{transform:scale(1.35);opacity:0}}
.film-modal{position:fixed;inset:0;z-index:600;background:rgba(10,10,11,.94);display:grid;place-items:center;padding:clamp(16px,4vw,60px)}
.film-modal[hidden]{display:none}
.fm-video{width:min(1280px,100%);max-height:86vh;aspect-ratio:16/9;background:#000;box-shadow:0 40px 120px rgba(0,0,0,.6)}
.fm-x{position:absolute;top:16px;right:20px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:none;color:#fff;font-size:28px;line-height:1;cursor:pointer}
.fm-x:hover{border-color:var(--gold);color:var(--gold)}

@media (max-width:860px){
  .jr{grid-template-columns:1fr;gap:0}
  .jr-vis{position:sticky;top:var(--header-h);z-index:3;background:#fff;padding:10px 0 8px;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter)}
  .jr-stick{position:static;height:auto;gap:10px}
  .jr-paper{height:31vh;min-height:200px;flex:none;padding:6px}
  .jr-step{min-height:58vh}
  .jr-step h3{font-size:26px}
  .jr-step p{font-size:16.5px}
  .jr-n{font-size:52px}
  .film{min-height:74vh}
}
@media (prefers-reduced-motion:reduce){
  .fp-ring::before{animation:none}
  .jr-step,.bp-l{transition:none}
}

/* Page-transition curtain: full logo lockup, visible for the whole transition (2026-09-24) */
.curtain .c-inner{gap:0}
.curtain .mark{width:clamp(130px,12vw,170px);height:auto;aspect-ratio:2/1;overflow:visible;margin-bottom:22px}
.curtain .c-inner b{font-family:var(--roman);font-weight:500;font-size:clamp(24px,2.4vw,34px);letter-spacing:.24em;padding-left:.24em;line-height:1}
.curtain .c-inner i{display:flex;align-items:center;gap:12px;margin-top:12px;font-style:normal;font-family:var(--sans);font-weight:700;font-size:clamp(10px,.85vw,12px);letter-spacing:.42em;padding-left:.42em;color:var(--gold);white-space:nowrap}
.curtain .c-inner i::before,.curtain .c-inner i::after{content:"";width:22px;height:1px;background:currentColor;opacity:.75}
@keyframes markIn{0%{opacity:0}35%{opacity:1}100%{opacity:1}}
@keyframes markOut{0%,70%{opacity:1}100%{opacity:0}}

/* Approved photo proposals shown in their original colour (Jane 2026-09-24) */
.bleed .bimg img[src$="chamber-multiplace.jpg"],.bleed .bimg img[src$="chamber-hardware.jpg"],.bleed .bimg img[src$="dubai-dawn.jpg"],
.page-hero .bg img[src$="fink-gauge.jpg"]{filter:none}
.page-hero.is-dark .bg img[src$="fink-gauge.jpg"]{opacity:.62}

/* Planned insight cards now carry a photo like the published ones (2026-09-24) */
.post-card.planned{border:0;background:transparent;padding:0;display:block}
.post-card.planned .figure{aspect-ratio:4/3;margin-bottom:22px}
.post-card.planned .figure img{filter:grayscale(1);opacity:.85}
.post-card.planned h3{margin-top:12px}

/* Loading photos never show as a black hole on light sections (2026-09-24) */
.v2 .figure,.w-card figure,.ph-fig,.h2-fig{background:#ECE7DC}
.v2 .sec-dark .figure,.v2 .bleed .figure{background:var(--graphite)}

/* Home leadership: founders text instead of named cards (client comments 1 Oct) */
.founders-text{max-width:880px}
.founders-text p+p{margin-top:18px}

/* Tech-stack grid: cancel the site.css ".stack>*+*" spacing utility, which offset every tile after the first and exposed the grid background */
.stack>li{margin:0}

/* v3 client-approved Higgsfield images (client, 2 Oct): show in full colour, not the greyscale treatment of the old stock photos */
.cta-giant .bg img[src*="/img/v3/"]{filter:none;opacity:.55}
.page-hero .bg img[src*="/img/v3/"]{filter:none;opacity:.55}
.figure img[src*="/img/v3/"],.ph-fig img[src*="/img/v3/"]{filter:none!important;opacity:1}
.sec-head .founders-text{margin-top:18px;max-width:none}
.sec-head:has(.founders-text){align-items:start}
.sec-head .founders-text p.lead+p.lead{margin-top:16px!important}
.grid-2 .founders-text{margin-top:18px;max-width:none}
.founders-text p.lead+p.lead{margin-top:16px!important}
/* v3 heroes: full-width photo behind the text, blended by the dark gradient (Jane, 3 Oct) */
.page-hero .bg img[src*="/img/v3/"]{filter:none;opacity:.85}
/* Leadership hero: keep BOTH executives visible (client asked for male + female): photo on the right 64%, faded into the black on its left edge */
@media (min-width:900px){.page-hero .bg:has(img[src*="lead-executives"]){display:flex;justify-content:flex-end}.page-hero .bg img[src*="lead-executives"]{width:64%;opacity:1;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 28%);mask-image:linear-gradient(90deg,transparent 0%,#000 28%)}}
/* Leadership hero on phones/tablets: show the whole photo (both executives) as a band under the text, not cropped behind it */
@media (max-width:899px){.page-hero:has(img[src*="lead-executives"]){padding-bottom:calc(56.5vw + 24px)}.page-hero .bg:has(img[src*="lead-executives"]){top:auto;bottom:0;height:56.5vw}.page-hero .bg img[src*="lead-executives"]{opacity:1;object-position:50% 50%;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%)}.page-hero.is-dark:has(img[src*="lead-executives"])::after{display:none}}
/* All v3 heroes on phones/tablets: show the whole photo as a band under the text (Jane, 3 Oct: "the proper image on mobile") */
@media (max-width:899px){.page-hero:has(.bg img[src*="/img/v3/"]){padding-bottom:calc(56.5vw + 24px)}.page-hero .bg:has(img[src*="/img/v3/"]){top:auto;bottom:0;height:56.5vw}.page-hero .bg img[src*="/img/v3/"]{opacity:1;object-position:50% 50%;transform:none!important;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%)}.page-hero.is-dark:has(.bg img[src*="/img/v3/"])::after{display:none}}
/* Gold gradient text that wraps over two lines: give every line its own gradient (Safari dropped the first line, client 1 Oct "you removed some text"); brighter gold on the black theme */
.gold-t{-webkit-box-decoration-break:clone;box-decoration-break:clone;-webkit-text-fill-color:transparent}
body.theme-black .gold-t{background-image:linear-gradient(100deg,#C9A04A 0%,#E8CC86 50%,#C9A04A 100%)}
/* Word-split headings: Safari cannot paint background-clip:text through the animated .wi word boxes, so paint the gold on each word instead */
.gold-t:has(.wi){background:none!important}
.gold-t .wi{background-image:linear-gradient(100deg,#C9A04A 0%,#E8CC86 50%,#C9A04A 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

/* Page-transition curtain: ONLY the infinity mark, animated on a loop (Jane, 2026-10-04, v2-57).
   The client's own artwork (lhg-logo-t.png, unmodified) is cropped to the mark by background-size/position;
   the mark occupies x 104-682, y 24-277 of the 800x439 file. A gold light sweeps across it, masked to the
   mark's own shape, while the mark breathes gently. Both loop for as long as the curtain is on screen. */
.curtain .c-inf{position:relative;display:block;width:clamp(170px,17vw,250px);aspect-ratio:578/253;
  background:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;
  animation:infBreathe 2.4s ease-in-out infinite}
.curtain .c-inf::after{content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 30%,rgba(255,244,205,.0) 38%,rgba(255,244,205,.85) 50%,rgba(255,244,205,0) 62%,transparent 70%) 0 0/250% 100% no-repeat;
  -webkit-mask:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;
  mask:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;
  mix-blend-mode:screen;animation:infSweep 1.6s cubic-bezier(.45,0,.25,1) infinite}
@keyframes infBreathe{0%,100%{transform:scale(.96);filter:brightness(.92)}50%{transform:scale(1.03);filter:brightness(1.12)}}
@keyframes infSweep{from{background-position:130% 0}to{background-position:-30% 0}}
@media (prefers-reduced-motion:reduce){.curtain .c-inf,.curtain .c-inf::after{animation:none}}
/* Longer transition so the infinity animation is actually seen (Jane, 2026-10-04, v2-58):
   leaving = curtain slides in (0.62 s) then holds until 1.3 s (motion.js);
   arriving = curtain holds 0.9 s before sliding away, mark stays until ~1.05 s then fades.
   About 2.3 s of mark in total, i.e. one full breathe and nearly two light sweeps. */
.js .curtain{animation:curtainOut 1.05s var(--inout) .9s both}
.js .curtain .c-inner{animation:markOut 1.5s ease both}
.curtain .c-inf::after{animation-duration:1.3s}
/* Curtain shows the FULL real logo again, but ONLY the infinity mark animates (Jane, 2026-10-04, v2-59).
   .c-lockup = the whole 800x439 artwork's footprint; .c-word = the same unmodified PNG clipped to the
   lettering (below y 279), static; .c-inf = the mark (x104-682, y24-277) placed exactly over its spot,
   keeping the light sweep + breathe from v2-57/58. */
.curtain .c-lockup{position:relative;display:block;width:clamp(240px,26vw,360px);aspect-ratio:800/439}
.curtain .c-word{position:absolute;inset:0;background:url(../img/lhg-logo-t.png) 0 0/100% 100% no-repeat;clip-path:inset(63.5% 0 0 0)}
.curtain .c-lockup .c-inf{position:absolute;left:13%;top:5.467%;width:72.25%;aspect-ratio:auto;height:57.63%;transform-origin:50% 55%}

/* ---------- Vision & Mission, redesigned (Jane, 2026-10-04, v2-60) ----------
   Two framed panels on a central gold axis carrying the real infinity mark (same light sweep + breathe as
   the page transition). Engraved gold Cinzel word per panel; pointer-following gold glow on hover.
   Literal colours on purpose: this section is always dark (see light/dark variable traps). */
.vm2 .vm2-head{text-align:center;margin-bottom:clamp(34px,4.5vw,64px)}
.vm2 .vm2-head .eyebrow{justify-content:center}
.vm2-grid{display:grid;grid-template-columns:1fr clamp(90px,9vw,140px) 1fr;align-items:stretch}
.vm2-card{position:relative;overflow:hidden;isolation:isolate;padding:clamp(34px,4vw,60px) clamp(28px,3.4vw,54px) clamp(36px,4vw,58px);
  border:1px solid rgba(201,160,74,.22);border-radius:2px;background:linear-gradient(180deg,#141416 0%,#0c0c0d 100%);
  transition:transform .7s var(--ease),border-color .5s,box-shadow .7s var(--ease)}
.vm2-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .5s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,30%),rgba(201,160,74,.16),transparent 62%)}
.vm2-card::after{content:"";position:absolute;left:0;top:0;height:1px;width:100%;transform:scaleX(0);transform-origin:left;
  background:linear-gradient(90deg,transparent,#C9A04A 30%,#FCF0A8 50%,#C9A04A 70%,transparent);transition:transform 1.4s var(--ease) .2s}
.vm2-card.in::after,.vm2-card.is-in::after,.no-js .vm2-card::after{transform:scaleX(1)}
.vm2-card:hover{transform:translateY(-6px);border-color:rgba(201,160,74,.5);box-shadow:0 30px 60px -30px rgba(0,0,0,.9),0 0 0 1px rgba(201,160,74,.08)}
.vm2-card:hover::before{opacity:1}
.vm2-word{display:block;font-family:var(--roman);font-weight:500;font-size:clamp(40px,4.6vw,72px);line-height:1;letter-spacing:.16em;margin-bottom:clamp(18px,2vw,28px);
  background:linear-gradient(100deg,#84540C 0%,#B48430 28%,#FCF0A8 50%,#B48430 72%,#84540C 100%) 0 0/220% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#C9A04A;
  transition:background-position 1.6s var(--ease)}
.vm2-card:hover .vm2-word{background-position:100% 0}
.vm2-label{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:#C9A04A;margin:0 0 14px}
.vm2-card .vm-t{color:#F3EFE6;font-size:clamp(19px,1.75vw,26px);line-height:1.42}
.vm2-axis{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.vm2-line{flex:1;width:1px;background:linear-gradient(180deg,transparent,rgba(201,160,74,.55),transparent)}
.vm2-inf{position:relative;display:block;width:clamp(74px,7.4vw,112px);aspect-ratio:578/253;flex:none;
  background:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;animation:infBreathe 2.4s ease-in-out infinite}
.vm2-inf::after{content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 30%,rgba(255,244,205,0) 38%,rgba(255,244,205,.85) 50%,rgba(255,244,205,0) 62%,transparent 70%) 0 0/250% 100% no-repeat;
  -webkit-mask:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;mask:url(../img/lhg-logo-t.png) 46.85% 12.9%/138.4% auto no-repeat;
  mix-blend-mode:screen;animation:infSweep 2.2s cubic-bezier(.45,0,.25,1) infinite}
@media (max-width:899px){
  .vm2-grid{grid-template-columns:1fr}
  .vm2-axis{flex-direction:row;height:86px}
  .vm2-line{height:1px;width:auto;background:linear-gradient(90deg,transparent,rgba(201,160,74,.55),transparent)}
}
@media (prefers-reduced-motion:reduce){.vm2-inf,.vm2-inf::after{animation:none}.vm2-card,.vm2-card::after{transition:none}.vm2-card::after{transform:scaleX(1)}}
.vm2-word .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vm2 h3.vm2-word{margin-top:0}
/* v2-61: Cinzel draws lowercase as small capitals, so "Vision" read as a big V + small "ISION".
   Set the gold words in full capitals (like LONGEVITY in the logo), slightly smaller to balance the panel,
   and give the statements the same weight as other lead statements on the site. */
.vm2 h3.vm2-word{text-transform:uppercase;font-size:clamp(34px,3.8vw,60px);letter-spacing:.2em}
.vm2 h3.vm2-word .vh{text-transform:none}
.vm2-card .vm-t{font-weight:500;letter-spacing:0;line-height:1.5}
/* v2-62: NO separate typeface (Jane): the Vision/Mission words use the site's own heading font (var(--sans),
   same as every h2/h3), normal case, in the site's existing black-theme gold (.gold-t gradient). Cinzel removed. */
.vm2 h3.vm2-word{font-family:var(--sans);font-weight:700;text-transform:none;letter-spacing:-.01em;line-height:1.05;
  font-size:clamp(30px,3vw,44px);background:linear-gradient(100deg,#C9A04A 0%,#E8CC86 50%,#C9A04A 100%) 0 0/200% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.vm2-card:hover h3.vm2-word{background-position:100% 0}

/* ---------- Our values, redesigned (Jane, 2026-10-04, v2-63) ----------
   Site fonts only (var(--sans)), site gold. Desktop: spotlight panel (left) + numbered list (right);
   hover/focus/tap a value to spotlight it, otherwise it auto-advances every 4.5 s (motion.js).
   Below 900px: plain stacked list with every sentence visible. Always-dark section: literal colours. */
.vals-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,4vw,72px);align-items:stretch;margin-top:clamp(30px,4vw,56px)}
.vals-stage{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:440px;
  padding:clamp(32px,3.6vw,56px);border:1px solid rgba(201,160,74,.25);border-radius:2px;
  background:radial-gradient(120% 90% at 85% 0%,rgba(201,160,74,.12),transparent 55%),linear-gradient(180deg,#141416,#0c0c0d)}
.vals-stage::after{content:"";position:absolute;left:0;top:0;height:1px;width:100%;background:linear-gradient(90deg,transparent,#C9A04A 30%,#FCF0A8 50%,#C9A04A 70%,transparent)}
.vals-stage-top{display:flex;align-items:center;justify-content:space-between}
.vals-big-n{font-family:var(--sans);font-weight:700;font-size:clamp(64px,7vw,110px);line-height:.9;letter-spacing:-.03em;
  background:linear-gradient(100deg,#C9A04A,#E8CC86 50%,#C9A04A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.vals-inf{width:clamp(64px,6vw,92px)}
.vals-swap{transition:opacity .45s ease,transform .45s var(--ease)}
.vals-swap.out{opacity:0;transform:translateY(10px)}
.vals-big{font-family:var(--sans);font-weight:700;font-size:clamp(30px,3vw,46px);line-height:1.08;letter-spacing:-.01em;color:#F3EFE6;margin:0 0 16px}
.vals-big-d{font-family:var(--sans);font-weight:500;font-size:clamp(18px,1.5vw,22px);line-height:1.5;color:#CFC9BC;margin:0;max-width:36ch}
.vals-prog{height:1px;background:rgba(201,160,74,.18);margin-top:28px;overflow:hidden}
.vals-prog span{display:block;height:100%;width:100%;background:#C9A04A;transform:scaleX(0);transform-origin:left}
.vals-prog span.run{transition:transform 4.5s linear;transform:scaleX(1)}
.vals-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(201,160,74,.18)}
.vals-item{display:flex;gap:22px;align-items:baseline;padding:22px 6px 22px 0;border-bottom:1px solid rgba(201,160,74,.18);cursor:pointer;outline:none;position:relative;transition:padding .5s var(--ease)}
.vals-item::before{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:#C9A04A;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.vals-n{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.14em;color:rgba(201,160,74,.6);min-width:26px;transition:color .4s}
.vals-name{font-family:var(--sans);font-weight:700;font-size:clamp(20px,1.7vw,26px);line-height:1.2;color:rgba(243,239,230,.55);margin:0;transition:color .4s}
.vals-d{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vals-item:hover .vals-name,.vals-item:focus-visible .vals-name,.vals-item.is-on .vals-name{color:#F3EFE6}
.vals-item.is-on .vals-n,.vals-item:hover .vals-n{color:#E8CC86}
.vals-item.is-on{padding-left:14px}
.vals-item.is-on::before{transform:scaleX(1)}
.vals-item:focus-visible{box-shadow:inset 0 0 0 1px rgba(201,160,74,.5)}
@media (max-width:899px){
  .vals-grid{grid-template-columns:1fr}
  .vals-stage{display:none}
  .vals-item{cursor:default;flex-direction:row}
  .vals-item.is-on{padding-left:0}.vals-item::before{display:none}
  .vals-name{color:#F3EFE6;margin-bottom:8px}.vals-n{color:#E8CC86}
  .vals-d{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;font-size:16px;line-height:1.55;color:#CFC9BC;margin:0}
}
@media (prefers-reduced-motion:reduce){.vals-swap,.vals-prog span.run{transition:none}}

/* ---------- Development framework, redesigned (Jane, 2026-10-04, v2-64) ----------
   Seven stages as a rising staircase (Define lowest -> Optimise highest). Columns rise in sequence on reveal,
   a gold light climbs the steps on a slow loop, hover lifts + warms a step. Site fonts only, literal colours. */
.fw{margin-top:clamp(34px,4.5vw,64px)}
.fw-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;align-items:end;min-height:520px}
.fw-step{position:relative;height:calc(250px + var(--i) * 40px)}
.fw-col{position:absolute;inset:0;display:flex;flex-direction:column;padding:26px 18px 22px;border:1px solid rgba(201,160,74,.2);border-top:0;
  background:linear-gradient(180deg,#17171a 0%,#0e0e10 70%,rgba(14,14,16,.4) 100%);transform-origin:bottom;transform:scaleY(.12);opacity:0;
  transition:transform 1.1s var(--ease) calc(var(--i) * .11s),opacity .6s ease calc(var(--i) * .11s),background .5s,box-shadow .6s var(--ease),translate .6s var(--ease)}
.fw.in .fw-col,.no-js .fw-col{transform:none;opacity:1}
.fw-col::before{content:"";position:absolute;left:-1px;right:-1px;top:0;height:2px;background:linear-gradient(90deg,#8C6420,#E8CC86 50%,#8C6420)}
.fw-col::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,rgba(232,204,134,.22),transparent 55%);animation:fwClimb 8.4s ease-in-out infinite;animation-delay:calc(var(--i) * 1.2s)}
@keyframes fwClimb{0%,100%{opacity:0}6%{opacity:1}16%{opacity:0}}
.fw-node{position:absolute;top:-6px;left:18px;width:11px;height:11px;border-radius:50%;background:#0A0A0B;border:1px solid #E8CC86;box-shadow:0 0 0 4px rgba(201,160,74,.12)}
.fw-n{font-family:var(--sans);font-weight:700;font-size:clamp(30px,2.6vw,42px);line-height:1;letter-spacing:-.02em;margin:6px 0 auto;
  background:linear-gradient(100deg,#C9A04A,#E8CC86 50%,#C9A04A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fw-t{font-family:var(--sans);font-weight:700;font-size:clamp(18px,1.45vw,22px);line-height:1.15;color:#F3EFE6;margin:18px 0 8px}
.fw-d{font-family:var(--sans);font-size:14.5px;line-height:1.5;color:#B9B3A6;margin:0}
.fw-steps:hover .fw-col{opacity:.55}
.fw-steps .fw-step:hover .fw-col{opacity:1;translate:0 -8px;background:linear-gradient(180deg,rgba(201,160,74,.2) 0%,#141416 60%,#0e0e10 100%);box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.fw-steps .fw-step:hover .fw-d{color:#E2DCCF}
@media (max-width:1100px){.fw-d{font-size:13.5px}.fw-col{padding:22px 14px 18px}}
@media (max-width:899px){
  .fw-steps{grid-template-columns:1fr;min-height:0;gap:0;position:relative;padding-left:30px}
  .fw-steps::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,#8C6420,#E8CC86,#8C6420)}
  .fw-step{height:auto}
  .fw-col{position:relative;inset:auto;transform:none;opacity:1;border:0;background:none;padding:0 0 26px}
  .fw-col::before,.fw-col::after{display:none}
  .fw-node{left:-30px;top:4px}
  .fw-n{font-size:26px;margin:0}
  .fw-t{margin:6px 0 4px}
  .fw-steps:hover .fw-col{opacity:1}
}
@media (prefers-reduced-motion:reduce){.fw-col{transition:none;transform:none;opacity:1}.fw-col::after{animation:none}}
.fw-steps:hover .fw-col{transition-delay:0s}

/* ---------- Leadership: founders diptych (Jane, 2026-10-04, option A, v2-65) ----------
   two equal panels on a gold axis with "+" (two founders, one approach).
   Small monogram medallions replace the giant LC/CC boxes (client: no oversized personal branding);
   swap .dip-mono for a portrait <img> when photos arrive. Site fonts only, literal colours. */
.lp-dip .dip{display:grid;grid-template-columns:1fr clamp(56px,6vw,96px) 1fr;align-items:stretch;margin-top:clamp(30px,4vw,56px)}
.dip-card{position:relative;padding:clamp(30px,3.4vw,52px);border:1px solid rgba(201,160,74,.22);border-radius:2px;
  background:linear-gradient(180deg,#141416 0%,#0c0c0d 100%);transition:border-color .5s,transform .7s var(--ease),box-shadow .7s var(--ease)}
.dip-card::before{content:"";position:absolute;left:0;top:0;height:1px;width:100%;background:linear-gradient(90deg,transparent,#C9A04A 30%,#FCF0A8 50%,#C9A04A 70%,transparent)}
.dip-card:hover{border-color:rgba(201,160,74,.45);transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.dip-top{display:flex;align-items:center;gap:22px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid rgba(201,160,74,.18)}
.dip-medal{flex:none;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#232327,#0c0c0d 70%);box-shadow:inset 0 0 0 1px rgba(201,160,74,.55),0 0 0 6px rgba(201,160,74,.07)}
.dip-medal img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.dip-mono{font-family:var(--sans);font-weight:700;font-size:28px;letter-spacing:.02em;
  background:linear-gradient(100deg,#C9A04A,#E8CC86 50%,#C9A04A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dip-top .eyebrow{margin-bottom:8px}
.dip-name{font-family:var(--sans);font-weight:700;font-size:clamp(26px,2.4vw,36px);line-height:1.1;color:#F3EFE6;margin:0}
.dip-bio p{color:#CFC9BC;font-size:16.5px;line-height:1.65;margin:0 0 14px}
.dip-bio p.lead{color:#F3EFE6;font-size:clamp(17px,1.35vw,20px);line-height:1.55}
.dip-k{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#C9A04A;margin:26px 0 12px}
.dip-card .awards{margin-top:0}
.dip-axis{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.dip-line{flex:1;width:1px;background:linear-gradient(180deg,transparent,rgba(201,160,74,.55),transparent)}
.dip-plus{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;font-family:var(--sans);font-weight:700;font-size:24px;line-height:1;
  color:#E8CC86;box-shadow:inset 0 0 0 1px rgba(201,160,74,.55);background:#0A0A0B;animation:dipPulse 3.2s ease-in-out infinite}
@keyframes dipPulse{0%,100%{box-shadow:inset 0 0 0 1px rgba(201,160,74,.55),0 0 0 0 rgba(201,160,74,.25)}50%{box-shadow:inset 0 0 0 1px rgba(232,204,134,.9),0 0 0 10px rgba(201,160,74,0)}}
.dip-cap{text-align:center;max-width:46ch;margin:clamp(30px,3.6vw,48px) auto 0;font-family:var(--sans);font-weight:700;font-size:clamp(18px,1.5vw,22px);line-height:1.45;color:#F3EFE6}
@media (max-width:899px){
  .lp-dip .dip{grid-template-columns:1fr}
  .dip-axis{flex-direction:row;height:70px}
  .dip-line{height:1px;width:auto;background:linear-gradient(90deg,transparent,rgba(201,160,74,.55),transparent)}
  .dip-medal{width:68px;height:68px}.dip-mono{font-size:22px}
}
@media (prefers-reduced-motion:reduce){.dip-plus{animation:none}.dip-card{transition:none}}
/* v2-65 fixes: no dash before the role inside the medallion header; gold labels survive the black-theme p colour */
.dip-top .eyebrow::before{display:none}
.dip-top .eyebrow{padding-left:0;gap:0;line-height:1.5}
body.theme-black .lp-dip p.dip-k{color:#C9A04A}
@media (max-width:899px){.dip-top{flex-direction:column;align-items:flex-start;gap:16px}}

/* ---------- Leadership · "What Leadership Brings to a Project": bold motion (Jane, 2026-10-04, v2-66) ----------
   Entrance: cards flip up from below in sequence (3D, rotateX). Hover: pointer-driven 3D tilt + gold glare
   (motion.js sets --rx/--ry/--gx/--gy), a gold light runs round the border (animated conic gradient),
   and the outlined number fills with gold. Site fonts only. */
@property --lpa{syntax:"<angle>";inherits:false;initial-value:0deg}
section.lp-cards .card-grid{perspective:1400px}
section.lp-cards .card{position:relative;isolation:isolate;transform-style:preserve-3d;
  transform:perspective(1400px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .5s var(--ease),border-color .4s,box-shadow .6s var(--ease)}
section.lp-cards .card[data-reveal]{opacity:0;transform:perspective(1400px) rotateX(-78deg) translateY(40px);transform-origin:50% 100%}
section.lp-cards .card[data-reveal].in{opacity:1;transform:perspective(1400px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform 1.15s cubic-bezier(.2,.9,.25,1.15) calc(var(--d,0) * .12s),opacity .7s ease calc(var(--d,0) * .12s)}
section.lp-cards .card[data-reveal].in.settled{transition:transform .5s var(--ease),border-color .4s,box-shadow .6s var(--ease)}
section.lp-cards .card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;opacity:0;transition:opacity .4s;
  background:conic-gradient(from var(--lpa),transparent 0 70%,#8C6420 78%,#FCF0A8 86%,#C9A04A 92%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
section.lp-cards .card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .4s;
  background:radial-gradient(360px circle at var(--gx,50%) var(--gy,0%),rgba(232,204,134,.18),transparent 60%)}
section.lp-cards .card:hover{box-shadow:0 40px 70px -35px rgba(0,0,0,.95),0 0 40px -10px rgba(201,160,74,.25)}
section.lp-cards .card:hover::after{opacity:1;animation:lpTrace 2.4s linear infinite}
section.lp-cards .card:hover::before{opacity:1}
@keyframes lpTrace{to{--lpa:360deg}}
section.lp-cards .card .code{font-family:var(--sans);font-weight:700;font-size:clamp(40px,3.6vw,58px);line-height:1;letter-spacing:-.02em;
  color:transparent;-webkit-text-stroke:1px rgba(201,160,74,.75);transition:color .5s,-webkit-text-stroke-color .5s,transform .6s var(--ease);display:inline-block}
section.lp-cards .card:hover .code{color:#E8CC86;-webkit-text-stroke-color:#E8CC86;transform:translateZ(30px) scale(1.06)}
section.lp-cards .card h3{transition:transform .6s var(--ease)}
section.lp-cards .card:hover h3{transform:translateZ(18px)}
@media (hover:none),(prefers-reduced-motion:reduce){section.lp-cards .card,section.lp-cards .card[data-reveal].in{--rx:0deg;--ry:0deg}}
@media (prefers-reduced-motion:reduce){section.lp-cards .card[data-reveal]{opacity:1;transform:none;transition:none}section.lp-cards .card:hover::after{animation:none}}
section.lp-cards .card::before{left:0;top:0;width:auto;height:auto;transition:opacity .4s}

/* ---------- Leadership · "Our Leadership" without names (client, 2026-10-05, v2-67) ---------- */
.lp-ours .ours{display:grid;grid-template-columns:clamp(70px,8vw,120px) 1fr;gap:clamp(20px,3vw,48px);align-items:stretch;max-width:1080px;margin:clamp(30px,4vw,56px) auto 0}
.ours-mark{display:flex;flex-direction:column;align-items:center;gap:16px}
.ours-mark .vm2-inf{width:100%}
.ours-card .founders-text p{color:#F3EFE6;font-size:clamp(17px,1.4vw,21px);line-height:1.6;margin:0 0 18px}
.ours-card .founders-text strong{color:#E8CC86}
body.theme-black .lp-ours p.dip-k{color:#C9A04A}
@media (max-width:899px){.lp-ours .ours{grid-template-columns:1fr}.ours-mark{flex-direction:row;height:56px}.ours-mark .vm2-inf{width:96px;flex:none}}
.lp-ours .vm2-head{text-align:center;margin-bottom:0}.lp-ours .vm2-head .eyebrow{justify-content:center}

/* Batch 2 images approved by the client 5 Oct (v2-69): full colour in bleed bands too; home HBOT band crop */
.bleed .bimg img[src*="/img/v3/"]{filter:none!important;opacity:1}
.bleed .bimg img[src*="home-hbot-band"]{object-position:40% 60%}

/* ---------- Capabilities hub: ambient motion that runs without scrolling (Jane, 2026-10-05, v2-70) ----------
   1 hero photo drifts (slow Ken Burns), 2 a gold light travels across the six verticals in turn,
   3 the big outlined numbers shimmer in sequence, 4 a gold pulse runs along the "how the verticals connect" chain.
   Scoped to the hub with :has(.six-mark). All off under prefers-reduced-motion. */
main:has(.six-mark) .page-hero .bg img{animation:capDrift 26s ease-in-out infinite alternate;transform-origin:70% 50%}
@keyframes capDrift{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.12) translate3d(-2%,-1%,0)}}

.six-mark .sg-cell{position:relative;overflow:hidden;transition:transform .5s var(--ease),background .5s}
.six-mark .sg-cell::before{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,transparent,#E8CC86,transparent);
  transform:scaleX(0);animation:sgBar 7.2s ease-in-out infinite;animation-delay:calc(var(--i) * 1.2s)}
.six-mark .sg-cell::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 80% at 50% 0%,rgba(201,160,74,.22),transparent 60%);
  opacity:0;animation:sgGlow 7.2s ease-in-out infinite;animation-delay:calc(var(--i) * 1.2s)}
.six-mark .sg-cell .glyph{animation:sgIcon 7.2s ease-in-out infinite;animation-delay:calc(var(--i) * 1.2s)}
@keyframes sgBar{0%,100%{transform:scaleX(0)}6%{transform:scaleX(1)}16%{transform:scaleX(1);opacity:1}22%{opacity:0}}
@keyframes sgGlow{0%,100%{opacity:0}6%,14%{opacity:1}22%{opacity:0}}
@keyframes sgIcon{0%,100%{color:var(--bronze);transform:none}6%,14%{color:#E8CC86;transform:translateY(-3px)}22%{transform:none}}
.six-mark .sg-cell:hover{transform:translateY(-4px)}
.six-mark .sg-cell:nth-child(1){--i:0}.six-mark .sg-cell:nth-child(2){--i:1}.six-mark .sg-cell:nth-child(3){--i:2}
.six-mark .sg-cell:nth-child(4){--i:3}.six-mark .sg-cell:nth-child(5){--i:4}.six-mark .sg-cell:nth-child(6){--i:5}

.vrows .vr-num{background:linear-gradient(100deg,transparent 0 35%,#FCF0A8 48%,#E8CC86 52%,transparent 65% 100%) 0 0/300% 100% no-repeat;
  -webkit-background-clip:text;background-clip:text;animation:vrShine 9s ease-in-out infinite}
.vrows .vrow:nth-child(2) .vr-num{animation-delay:1.5s}.vrows .vrow:nth-child(3) .vr-num{animation-delay:3s}
.vrows .vrow:nth-child(4) .vr-num{animation-delay:4.5s}.vrows .vrow:nth-child(5) .vr-num{animation-delay:6s}.vrows .vrow:nth-child(6) .vr-num{animation-delay:7.5s}
@keyframes vrShine{0%,30%,100%{background-position:100% 0}15%{background-position:0 0}}
.vrows .vr-head .glyph{animation:vrFloat 5s ease-in-out infinite}
@keyframes vrFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.vrows .vrow{position:relative}
.vrows .vrow::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:linear-gradient(90deg,#8C6420,#E8CC86,#8C6420);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) .2s}
.vrows .vrow.in::after{transform:scaleX(1)}

main:has(.six-mark) .flow li span{position:relative;overflow:hidden}
main:has(.six-mark) .flow li span::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px #E8CC86;background:rgba(201,160,74,.12);opacity:0;animation:flowStep 6s ease-in-out infinite}
main:has(.six-mark) .flow li:nth-child(2) span::after{animation-delay:1s}main:has(.six-mark) .flow li:nth-child(3) span::after{animation-delay:2s}
main:has(.six-mark) .flow li:nth-child(4) span::after{animation-delay:3s}main:has(.six-mark) .flow li:nth-child(5) span::after{animation-delay:4s}main:has(.six-mark) .flow li:nth-child(6) span::after{animation-delay:5s}
@keyframes flowStep{0%,100%{opacity:0}6%,14%{opacity:1}22%{opacity:0}}
main:has(.six-mark) .flow li+li::before{background:linear-gradient(90deg,#8C6420,#FCF0A8,#8C6420) 0 0/200% 100%;animation:flowWire 2s linear infinite}
@keyframes flowWire{to{background-position:-200% 0}}

@media (prefers-reduced-motion:reduce){main:has(.six-mark) .page-hero .bg img,.six-mark .sg-cell::before,.six-mark .sg-cell::after,.six-mark .sg-cell .glyph,.vrows .vr-num,.vrows .vr-head .glyph,main:has(.six-mark) .flow li span::after,main:has(.six-mark) .flow li+li::before{animation:none}}
