
:root{
  --black:#090B0D; --char:#17191C; --ink:#0D0E10;
  --gold:#CBA253; --gold-deep:#4A3A18; --gold-2:#7A6128; --gold-3:#A9853C;
  --silver:#C8CBD0; --silver-ink:#E9EAEC;
  --ivory:#EDEDEA; --ivory-2:#E0E0DC;
  --step-small:clamp(.875rem,.85rem + .1vw,.9375rem);
  --step-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --step-head:clamp(2.5rem,1.4rem + 4.4vw,5.5rem);
  --step-hero:clamp(5.5rem,15vw,15rem);
  --m:clamp(16px,2.8vw,40px);
  --ease:cubic-bezier(.16,1,.3,1);
  --font:'Inter Tight',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:clip;font-family:var(--font);font-size:var(--step-body);line-height:1.5;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.02em}
p{margin:0}
.wrap{padding-inline:var(--m)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:10;background:var(--gold);color:var(--black);padding:10px 14px}

/* buttons: one shape, square */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:0 26px;font:500 var(--step-body)/1 var(--font);text-decoration:none;border:0;cursor:pointer;transition:transform .2s var(--ease),background-color .2s,color .2s}
.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(1px)}
.btn-gold{background:var(--gold);color:var(--black)}.btn-gold:hover{background:#DDB664}
.btn-black{background:var(--black);color:var(--ivory)}.btn-black:hover{background:#25282C}
.link{text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:2px;font-weight:500;transition:color .2s}
.link:hover{color:var(--gold)}
.arrow{transition:transform .25s var(--ease)}a:hover .arrow{transform:translateX(5px)}

/* NAV + HERO */
.hero{background:var(--black);color:var(--silver-ink);min-height:100svh;display:flex;flex-direction:column;position:relative;overflow:hidden}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px}
.nav img{height:44px;width:auto}
.nav ul{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0;font-size:var(--step-small);font-weight:500}
.nav ul a{text-decoration:none;color:var(--silver-ink);transition:color .2s}
.nav ul a:hover{color:var(--gold)}
.nav ul a.btn{color:var(--black)}.nav ul a.btn:hover{color:var(--black)}
.nav .btn{min-height:44px;padding:0 18px;font-size:var(--step-small)}
.hero-body{flex:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-content:space-between;padding-top:7vh;padding-bottom:40px}
.hero h1{grid-column:1/-1;font-size:var(--step-hero);line-height:.84;letter-spacing:-.045em;font-weight:700}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.04em}
.hero h1 .ln>span{display:block}
.hero h1 .ln:first-child{color:var(--silver-ink)}
.hero h1 .ln:last-child{color:var(--gold)}
.hero-side{grid-column:8/-1;justify-self:end;max-width:34ch;text-align:left;margin-top:48px}
.hero-side p{font-size:var(--step-lead);line-height:1.35;color:var(--silver-ink)}
.hero-side .actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-top:28px}
.hero-side .actions .link{color:var(--silver-ink)}
.hero-meta{grid-column:1/8;align-self:end;font-size:var(--step-small);color:var(--silver);margin-top:48px}
.hero-meta a{color:var(--gold);text-decoration:none;font-weight:500}

/* PROOF BAND */
.band{background:var(--gold);color:var(--black);height:34vh;min-height:200px;display:flex;align-items:center;overflow:hidden}
.track{display:flex;width:max-content;animation:marquee 48s linear infinite}
.track span{font-size:8vw;font-weight:700;letter-spacing:-.03em;white-space:nowrap;line-height:1;display:flex;align-items:center}
.track span::after{content:"";width:.22em;height:.22em;border-radius:50%;background:var(--black);margin:0 .45em}
@keyframes marquee{to{transform:translateX(-50%)}}
.band-note{background:var(--ivory);padding-top:22px;font-size:var(--step-body);max-width:none}

/* HOW IT WORKS */
.how{background:var(--ivory);padding-block:clamp(120px,14vw,200px) clamp(120px,12vw,180px)}
.intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:24px;align-items:end}
.intro h2{grid-column:1/7;font-size:var(--step-head);line-height:.95}
.intro p{grid-column:8/12;font-size:var(--step-lead);line-height:1.4}
.acc{display:flex;height:560px;margin-top:64px;overflow:hidden}
.stage{position:relative;flex:1 1 0;min-width:0;overflow:hidden;transition:flex-grow .45s var(--ease)}
.stage[data-open]{flex-grow:5.4}
.stage:nth-child(1){background:var(--gold-deep);color:var(--ivory)}
.stage:nth-child(2){background:var(--gold-2);color:var(--ivory)}
.stage:nth-child(3){background:var(--gold-3);color:var(--black)}
.stage:nth-child(4){background:var(--gold);color:var(--black)}
.stage>button{position:absolute;inset:0;width:100%;background:none;border:0;color:inherit;font:inherit;cursor:pointer;text-align:left;padding:0}
.stage>button .vname{position:absolute;left:22px;bottom:24px;transform:rotate(-90deg);transform-origin:left bottom;translate:1.1em 0;white-space:nowrap;font-size:20px;font-weight:700;transition:opacity .25s}
.stage[data-open]>button{pointer-events:none}
.stage[data-open]>button .vname{opacity:0}
.stage-body{position:absolute;inset:0;padding:36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;opacity:0;visibility:hidden;transition:opacity .35s .15s}
.stage[data-open] .stage-body{opacity:1;visibility:visible}
.stage-text{display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.stage-text h3{font-size:clamp(2rem,1.4rem + 1.6vw,2.75rem);line-height:1}
.stage-text p{max-width:36ch;font-size:var(--step-body)}
.stage-text .price{font-weight:500;margin-top:14px}
.stage-fig{align-self:center;justify-self:center;width:100%;max-width:340px}

/* UI fragments (data-ui) */
[data-ui]{background:#FFFFFF;color:#1B1D21;font-size:14px;line-height:1.4;border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.28);overflow:hidden}
[data-ui] .uibar{background:#F1F2F4;padding:10px 14px;font-size:12.5px;color:#5A5F68;border-bottom:1px solid #E2E4E8}
[data-ui] .row{display:flex;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #EEF0F2}
[data-ui] .row:last-child{border-bottom:0}
[data-ui] .pin{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}
[data-ui] .you{background:#FFF8E8}
[data-ui] .b{font-weight:600}
[data-ui] .s{font-size:12.5px;color:#5A5F68}
[data-ui] .stars{color:#B7862A;letter-spacing:1px;font-size:12px}
.phone{max-width:230px;margin:auto;border-radius:28px;border:8px solid #111;box-shadow:0 18px 40px rgba(0,0,0,.3)} /* taste-skill-ignore: device frame of a data-ui fragment */
.phone .ph-hero{background:#1E2A33;color:#fff;padding:22px 16px}
.phone .ph-hero b{display:block;font-size:19px;line-height:1.15}
.phone .ph-btn{display:block;margin:14px 0 0;background:#E8622C;color:#fff;text-align:center;padding:11px;border-radius:6px;font-weight:600}
.tag{display:inline-block;font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:99px}
.t-new{background:#E6F4EA;color:#1D6B35}.t-hot{background:#FDECE4;color:#A33F14}.t-sch{background:#E8EEF9;color:#2549A0}

/* CALCULATOR */
.calc{background:var(--black);color:var(--silver-ink);padding-block:clamp(120px,13vw,200px)}
.calc h2{font-size:var(--step-head);line-height:.95;max-width:14ch}
.calc-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:56px;margin-top:64px;align-items:start}
.calc form{grid-column:1/6;display:flex;flex-direction:column;gap:36px}
.field label{display:flex;justify-content:space-between;gap:16px;font-size:var(--step-body);font-weight:500;margin-bottom:14px}
.field output{color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums}
input[type=range]{width:100%;height:44px;accent-color:var(--gold);cursor:pointer;margin:0}
.calc-out{grid-column:7/-1}
.calc-out .big{font-size:clamp(4rem,2rem + 7vw,9.5rem);font-weight:700;line-height:.9;letter-spacing:-.04em;color:var(--gold);font-variant-numeric:tabular-nums}
.calc-out .lead{font-size:var(--step-lead);margin-top:22px;max-width:28ch;line-height:1.35}
.calc-out .note{font-size:var(--step-body);color:var(--silver);margin-top:22px;max-width:44ch}
.calc-out .btn{margin-top:36px}

/* PRICING */
.pricing{background:var(--gold);color:var(--black);padding-block:clamp(110px,10vw,160px)}
.steps{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:8px;align-items:end;position:relative}
.steps h2{position:absolute;left:0;top:0;width:calc(33.3% - 8px);font-size:var(--step-head);line-height:.95}
.plan{grid-column:span 4;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:transform .25s var(--ease)}
.plan:hover{transform:translateY(-6px)}
.plan .in{padding:30px}
.plan h3{font-size:28px;line-height:1.1}
.plan .amt{font-size:56px;font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-top:6px}
.plan .amt small{font-size:var(--step-small);font-weight:500;letter-spacing:0;margin-right:6px}
.plan ul{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:17px}
.plan .strip{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-weight:500}
.p1{height:380px;background:var(--ivory)}.p1 .strip{background:var(--ivory-2)}
.p2{height:500px;background:var(--char);color:var(--ivory)}.p2 .strip{background:#2A2D32}
.p3{height:620px;background:var(--black);color:var(--silver-ink)}.p3 .amt{color:var(--gold)}.p3 .strip{background:#22252A;color:var(--gold)}
.ongoing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.ongoing div{background:#BB9446;padding:26px 28px}
.ongoing b{display:block;font-size:20px;line-height:1.2}
.ongoing .amt{font-size:40px;font-weight:700;letter-spacing:-.03em;margin-top:8px;line-height:1}
.ongoing .amt small{font-size:var(--step-small);font-weight:500;letter-spacing:0}
.ongoing p{font-size:16px;margin-top:12px}
.fine{margin-top:28px;font-size:var(--step-body);max-width:60ch}

/* CRM MOSAIC */
.crm{background:var(--ivory);padding-block:clamp(110px,10vw,160px)}
.mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(96px,auto);gap:8px}
.tile{padding:28px;overflow:hidden}
.m-head{grid-column:1/7;grid-row:1/4;background:var(--ivory-2)}
.m-head h2{font-size:var(--step-head);line-height:.95}
.m-hq{grid-column:7/13;grid-row:1/6;background:var(--black);color:var(--silver-ink);display:flex;flex-direction:column;justify-content:space-between}
.m-hq p.st{font-size:clamp(1.5rem,1.1rem + 1.1vw,2rem);line-height:1.2;max-width:22ch}
.m-hq p.st b{color:var(--gold);font-weight:500}
.m-hq .wo{max-width:420px}
.m-fig{grid-column:1/4;grid-row:4/7;background:var(--gold);display:flex;flex-direction:column;justify-content:space-between}
.m-fig .big{font-size:clamp(3.5rem,2rem + 4vw,6rem);font-weight:700;line-height:.9;letter-spacing:-.04em}
.m-list{grid-column:4/7;grid-row:4/7;background:var(--char);color:var(--ivory)}
.m-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:19px}
.m-list li::before{content:"";display:inline-block;width:8px;height:8px;background:var(--gold);margin-right:12px;vertical-align:middle}
.m-sent{grid-column:7/13;grid-row:6/7;background:var(--ivory-2);display:flex;align-items:center}
.m-sent p{font-size:clamp(1.25rem,1rem + .8vw,1.75rem);line-height:1.2}

/* OPERATIONS */
.ops{background:var(--silver);color:var(--black);padding-block:clamp(110px,10vw,160px)}
.ops-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:48px}
.ops-grid>div:first-child{grid-column:1/6}
.ops h2{font-size:var(--step-head);line-height:.95}
.ops .lead{font-size:var(--step-lead);margin-top:28px;line-height:1.35}
.ops .tagline{margin-top:28px;font-weight:700;font-size:var(--step-lead)}
.offers{grid-column:7/-1;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.offers a{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 24px;padding:22px 24px;background:#B8BCC2;text-decoration:none;transition:background-color .2s,transform .25s var(--ease)}
.offers a:hover{background:var(--black);color:var(--gold);transform:translateX(6px)}
.offers b{font-size:clamp(1.375rem,1.1rem + .8vw,1.875rem);letter-spacing:-.01em}
.offers span{font-size:var(--step-body);font-weight:500}

/* ABOUT */
.about{background:var(--ivory);padding:20px}
.panel{background:var(--black);color:var(--silver-ink);min-height:92svh;position:relative;overflow:hidden;padding:56px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.panel h2{grid-column:1/8;font-size:clamp(2.5rem,1.4rem + 3.4vw,4.5rem);line-height:.98;max-width:13ch}
.portrait{position:absolute;left:56px;bottom:-9%;width:38vw;max-width:560px;aspect-ratio:4/5;background:var(--gold) center/cover no-repeat;background-image:url('assets/george-scott.jpg');clip-path:path('M0 1000 L0 300 A300 300 0 0 1 600 300 L600 1000 Z');}
.portrait-wrap{position:absolute;left:56px;bottom:-9%;width:min(38vw,560px)}
.portrait-wrap .portrait{position:static;width:100%;clip-path:none;border-radius:999px 999px 0 0}
.portrait .ph{position:absolute;inset:auto 0 30% 0;text-align:center;color:var(--black);font-weight:500;font-size:var(--step-small)}
.bio{grid-column:8/-1;display:flex;flex-direction:column;gap:56px;padding-top:4px;max-width:360px}
.bio h3{font-size:22px;color:var(--gold);margin-bottom:12px}
.bio p{font-size:var(--step-body);color:var(--silver-ink)}

/* CTA / AUDIT */
.cta{background:var(--gold);color:var(--black);min-height:100svh;padding-block:clamp(120px,12vw,180px) 64px;display:flex;flex-direction:column;justify-content:space-between;gap:64px}
.cta h2{font-size:clamp(4rem,10vw,10rem);line-height:.88;letter-spacing:-.04em}
.cta-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px;align-items:end}
.cta-row>p{grid-column:1/6;font-size:var(--step-lead);line-height:1.35}
.cta-row>p a{font-weight:700}
.cta form{grid-column:7/-1;background:var(--black);color:var(--silver-ink);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cta form label{display:flex;flex-direction:column;gap:8px;font-size:var(--step-small);font-weight:500}
.cta form .full{grid-column:1/-1}
.cta input,.cta select{font:inherit;font-size:16px;min-height:48px;padding:0 14px;background:#16181B;color:var(--ivory);border:1.5px solid #3A3E44;border-radius:0}
.cta input:focus,.cta select:focus{border-color:var(--gold);outline:none}
.cta form .btn{grid-column:1/-1;min-height:56px}
.hidden{display:none}

/* FOOTER */
footer{background:var(--black);color:var(--silver-ink);padding-block:64px 32px}
.wordmark{font-size:clamp(2rem,8.6vw,9rem);font-weight:500;letter-spacing:-.03em;line-height:.9;white-space:nowrap}
.wordmark span{color:var(--gold)}
.foot-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px;margin-top:72px}
.places{grid-column:1/6;display:flex;flex-direction:column;gap:6px}
.places a,.places span{font-size:clamp(1.5rem,1.2rem + 1vw,2.25rem);color:var(--gold);text-decoration:none;letter-spacing:-.01em}
.places a:hover{color:var(--ivory)}
.cols{grid-column:7/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;font-size:15px}
.cols b{display:block;margin-bottom:10px;color:var(--silver)}
.cols a{display:block;text-decoration:none;padding:4px 0;color:var(--silver-ink)}
.cols a:hover{color:var(--gold)}
.legal{display:flex;justify-content:space-between;gap:16px;margin-top:96px;font-size:14px;color:var(--silver)}
.legal a{color:var(--silver)}

/* reveal (only when JS is on) */
.js [data-r]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js [data-r].in{opacity:1;transform:none}
.js .hero h1 .ln>span{transform:translateY(105%);animation:rise .95s var(--ease) forwards}
.js .hero h1 .ln:last-child>span{animation-delay:.11s}
.js .hero-side,.js .hero-meta{opacity:0;animation:fade .7s .7s var(--ease) forwards}
@keyframes rise{to{transform:none}}
@keyframes fade{to{opacity:1}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .track{animation:none}
  .js [data-r]{opacity:1;transform:none;transition:none}
  .js .hero h1 .ln>span,.js .hero-side,.js .hero-meta{animation:none;transform:none;opacity:1}
  .stage,.stage-body{transition:none}
}

/* TABLET */
@media (max-width:1024px){
  .nav ul li:not(.keep){display:none}
  .calc form,.calc-out{grid-column:1/-1}
  .ongoing{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px}
  .ops-grid>div:first-child,.offers{grid-column:1/-1}
  .cta-row>p,.cta form{grid-column:1/-1}
  .intro h2,.intro p{grid-column:1/-1}
  .steps h2{position:static;width:auto;grid-column:1/-1;margin-bottom:32px}
  .plan{grid-column:1/-1;height:auto;margin-top:8px}
  .plan .in{padding-bottom:40px}
  .mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:6px}
  .m-head,.m-hq,.m-sent{grid-column:1/-1;grid-row:auto}
  .m-fig,.m-list{grid-row:auto;min-height:300px}
  .m-fig{grid-column:1/2}.m-list{grid-column:2/3}
  .m-hq .wo{margin-top:28px}
  .bio{grid-column:1/-1;margin-top:48px;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-bottom:58vw}
  .panel h2{grid-column:1/-1}
  .portrait-wrap{width:60vw;left:50%;translate:-50% 0}
}

/* PHONE */
@media (max-width:720px){
  .nav img{height:34px}
  .nav ul{gap:16px}
  .hero-body{padding-top:14vh}
  .hero h1{font-size:30vw}
  .hero-side{grid-column:1/-1;justify-self:start}
  .hero-side .actions .btn{width:100%}
  .hero-meta{grid-column:1/-1}
  .band{height:22vh}.track span{font-size:15vw}
  .intro h2,.intro p{grid-column:1/-1}
  .acc{flex-direction:column;height:auto}
  .stage{flex:none}
  .stage>button{position:relative;height:64px}
  .stage>button .vname{transform:none;translate:0;left:20px;bottom:auto;top:50%;margin-top:-.6em;font-size:18px}
  .stage[data-open]>button{display:none}
  .stage-body{position:relative;inset:auto;display:none;grid-template-columns:1fr;padding:28px 20px}
  .stage[data-open] .stage-body{display:grid}
  .stage-fig{max-width:300px}
  .steps h2{position:static;width:auto;grid-column:1/-1;margin-bottom:32px}
  .plan{grid-column:1/-1;height:auto;margin-top:8px}
  .plan .amt{font-size:44px}
  .ongoing{grid-template-columns:1fr}
  .mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:6px}
  .m-head,.m-hq,.m-sent{grid-column:1/-1;grid-row:auto}
  .m-fig,.m-list{grid-column:1/-1;grid-row:auto;aspect-ratio:auto;min-height:0}
  .m-fig{gap:20px}
  .m-hq .wo{margin-top:28px}
  .about{padding:10px}
  .panel{padding:32px 20px;min-height:auto}
  .bio{grid-template-columns:1fr;padding-bottom:100vw}
  .portrait-wrap{width:86vw;bottom:-6%}
  .cta{min-height:80svh}
  .cta form{grid-template-columns:1fr;padding:24px 20px}
  .foot-row,.cols{grid-template-columns:1fr 1fr}
  .places,.cols{grid-column:1/-1}
  .legal{flex-wrap:wrap}
}

/* duo (home about) */
.duo-panel{min-height:auto;align-items:start;row-gap:40px;padding-block:80px 88px}
.duo-text{grid-column:1/6;display:flex;flex-direction:column;gap:28px}
.duo-text h2{font-size:var(--step-head);line-height:.95;max-width:none}
.duo-text p{font-size:var(--step-lead);line-height:1.4;color:var(--silver-ink);max-width:30ch}
.duo-fig{margin:0}
.duo-fig img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .6s var(--ease)}
.duo-fig:hover img{transform:scale(1.02)}
.duo-fig{overflow:hidden}
.duo-fig figcaption{padding-top:16px;font-size:var(--step-small);color:var(--silver)}
.duo-fig figcaption b{display:block;font-size:22px;color:var(--silver-ink);letter-spacing:-.01em}
.f1{grid-column:7/10}.f2{grid-column:10/13;margin-top:96px}

/* ABOUT PAGE */
.page-hero .hero-body{padding-top:9vh}
.portraits{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;background:var(--black)}
.person{background:var(--ivory);padding-block:clamp(110px,10vw,160px)}
.person.alt{background:var(--silver)}
.person-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:48px;align-items:start}
.person-photo{grid-column:1/6;margin:0;overflow:hidden}
.person-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}
.person-text{grid-column:7/-1}
.alt .person-photo{grid-column:8/-1;grid-row:1}
.alt .person-text{grid-column:1/7;grid-row:1}
.person h2{font-size:var(--step-head);line-height:.95}
.person .role{font-size:var(--step-lead);margin-top:18px;font-weight:500}
.person .copy{display:flex;flex-direction:column;gap:18px;margin-top:36px;max-width:60ch}
.record{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.record li{background:var(--ivory-2);padding:22px 24px}
.alt .record li{background:#B8BCC2}
.record b{display:block;font-size:clamp(1.75rem,1.2rem + 1.4vw,2.5rem);letter-spacing:-.03em;line-height:1}
.record span{display:block;margin-top:8px;font-size:16px}
.split{background:var(--gold);color:var(--black);padding-block:clamp(110px,10vw,160px)}
.split h2{font-size:var(--step-head);line-height:.95}
.split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:56px}
.split-grid div{background:var(--black);color:var(--silver-ink);padding:36px}
.split-grid h3{font-size:28px;color:var(--gold)}
.split-grid p{font-size:var(--step-lead);line-height:1.35;margin-top:16px}
.split-grid ul{margin:24px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.creed{background:var(--black);color:var(--silver-ink);padding-block:clamp(110px,10vw,160px)}
.creed h2{font-size:var(--step-head);line-height:.95}
.creed ol{list-style:none;margin:56px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.creed li{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;padding:28px 0;align-items:baseline}
.creed li b{grid-column:1/8;font-size:clamp(1.75rem,1.1rem + 2vw,3.25rem);letter-spacing:-.025em;line-height:1.05;color:var(--silver-ink)}
.creed li span{grid-column:8/-1;font-size:var(--step-body);color:var(--silver)}
.creed li:nth-child(odd) b{color:var(--gold)}
@media (max-width:1024px){
  .duo-text{grid-column:1/-1}.f1{grid-column:1/7}.f2{grid-column:7/13;margin-top:64px}
  .person-photo,.person-text,.alt .person-photo,.alt .person-text{grid-column:1/-1;grid-row:auto}
  .person-photo{max-width:560px}
  .creed li b,.creed li span{grid-column:1/-1}
  .creed li span{margin-top:10px}
}
@media (max-width:720px){
  .duo-panel{padding-block:40px}
  .record,.split-grid{grid-template-columns:1fr}
  .split-grid div{padding:28px 20px}
}
.duo-fig img,.person-photo img{height:auto}
.hero h1 .ln{padding-bottom:.16em;margin-bottom:-.12em}

/* ===== shared additions for inner pages ===== */
.nav{position:relative}
.nav ul{gap:24px}
.nav ul a[aria-current=page]{color:var(--gold)}
.menu{display:none}
.menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 14px;border:1.5px solid var(--silver);color:var(--silver-ink);font-weight:500}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary,.menu details[open] summary{border-color:var(--gold);color:var(--gold)}
.menu-panel{position:absolute;right:var(--m);top:calc(100% - 8px);z-index:20;background:var(--black);min-width:240px;padding:12px 0;display:flex;flex-direction:column;outline:1.5px solid #2A2D32}
.menu-panel a{padding:12px 22px;font-size:17px;color:var(--silver-ink);text-decoration:none}
.menu-panel a:hover{background:#17191C;color:var(--gold)}
.inner{min-height:88svh}
.inner h1{font-size:clamp(4.25rem,11.5vw,11.5rem)}
.sec-h{font-size:var(--step-head);line-height:.95;margin-bottom:56px}
.creed.light{background:var(--ivory);color:var(--ink)}
.creed.light li b{color:var(--ink)}
.creed.light li:nth-child(odd) b{color:var(--gold-2)}
.creed.light li span{color:var(--ink)}
.creed li{background:transparent}

/* timeline */
.timeline{background:var(--silver);color:var(--black);padding-block:clamp(110px,10vw,160px)}
.timeline .intro h2{grid-column:1/8}
.timeline .intro p{grid-column:8/-1;font-size:var(--step-body)}
.tl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:56px}
.tl>div{background:#B8BCC2;padding:28px;min-height:280px;display:flex;flex-direction:column;gap:12px}
.tl .when{font-weight:700;color:var(--gold-deep);font-size:var(--step-body)}
.tl h3{font-size:clamp(1.5rem,1.2rem + .9vw,2rem);line-height:1.1}
.tl p{font-size:17px}
.gold-tl{background:var(--gold)}
.gold-tl .tl>div{background:#BB9446}
.gold-tl .when{color:var(--black)}

/* faq */
.faq{background:var(--ivory);padding-block:clamp(110px,10vw,160px)}
.faq-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px}
.faq-grid h2{grid-column:1/5;font-size:var(--step-head);line-height:.95}
.faq-list{grid-column:6/-1;display:flex;flex-direction:column;gap:6px}
.faq details{background:var(--ivory-2)}
.faq summary{cursor:pointer;list-style:none;padding:22px 56px 22px 24px;font-size:var(--step-lead);font-weight:500;position:relative;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:24px;top:50%;translate:0 -50%;font-size:28px;font-weight:400;transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--gold-2)}
.faq details p{padding:0 24px 24px;max-width:62ch;font-size:var(--step-body)}

/* local seo scan */
.scan{background:var(--black);color:var(--silver-ink);padding-block:clamp(110px,10vw,160px)}
.scan-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:48px;align-items:center}
.scan-text{grid-column:1/6;display:flex;flex-direction:column;gap:24px}
.scan-text h2{font-size:var(--step-head);line-height:.95}
.scan-text .lead{font-size:var(--step-lead);line-height:1.35}
.scan-text p{color:var(--silver-ink)}
.scan-fig{grid-column:7/-1;margin:0}
.rank-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:18px;background:#1B1E22;border-radius:10px}
.rank-grid span{aspect-ratio:1;display:grid;place-items:center;font-weight:700;font-size:clamp(14px,1.2vw,20px);border-radius:50%}
.rank-grid .g1{background:var(--gold);color:var(--black)}
.rank-grid .g2{background:#7A6128;color:#FFF}
.rank-grid .g3{background:#3A3E44;color:#E9EAEC}
.scan-fig figcaption{margin-top:14px;font-size:var(--step-small);color:var(--silver)}

/* tiers / solo price */
.tiers div{display:flex;flex-direction:column;gap:14px}
.tiers .amt,.solo .amt{font-size:clamp(3rem,2rem + 3vw,4.5rem);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--gold)}
.tiers .amt small,.solo .amt small{font-size:var(--step-body);font-weight:500;letter-spacing:0;color:var(--silver)}
.tiers p{margin-top:0}
.price-solo{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px;align-items:start}
.price-solo h2{grid-column:1/6;font-size:var(--step-head);line-height:.95}
.solo{grid-column:7/-1;background:var(--black);color:var(--silver-ink);padding:40px;display:flex;flex-direction:column;gap:24px}
.solo ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.solo .btn{align-self:flex-start;background:var(--gold);color:var(--black)}
.alt-price{background:var(--ivory)}
.alt-price .ongoing div{background:var(--ivory-2)}

/* operations engagements */
.engagements{background:var(--ivory);padding-block:clamp(110px,10vw,160px)}
.offer-list{display:flex;flex-direction:column;gap:8px}
.offer-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:16px;padding:36px 32px;background:var(--ivory-2);scroll-margin-top:24px;transition:background-color .25s}
.offer-row:hover{background:#D6D6D1}
.offer-row>div{grid-column:1/5}
.offer-row h3{font-size:clamp(1.5rem,1.1rem + 1.2vw,2.25rem);line-height:1.05}
.offer-row .op{margin-top:10px;font-weight:500;color:var(--gold-deep)}
.offer-row .ol{grid-column:5/9;font-size:var(--step-body)}
.offer-row ul{grid-column:9/-1;margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:17px}
.results{background:var(--black);color:var(--silver-ink);padding-block:clamp(110px,10vw,160px)}
.res-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.res-grid>div{background:var(--char);padding:32px;display:flex;flex-direction:column;gap:14px}
.res-grid .big{font-size:clamp(2.5rem,1.6rem + 2.4vw,4rem);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--gold)}
.res-grid h3{font-size:22px}
.results .fine{color:var(--silver)}

/* prose */
.prose{background:var(--ivory);padding-block:clamp(96px,9vw,140px)}
.prose-body{max-width:68ch;display:flex;flex-direction:column;gap:18px}
.prose-body h2{font-size:clamp(1.5rem,1.2rem + 1vw,2.25rem);margin-top:24px}

@media (max-width:1024px){
  .nav ul li:not(.keep){display:none}
  .menu{display:block}
  .timeline .intro h2,.timeline .intro p{grid-column:1/-1}
  .tl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faq-grid h2,.faq-list{grid-column:1/-1}
  .scan-text,.scan-fig{grid-column:1/-1}
  .price-solo h2,.solo{grid-column:1/-1}
  .offer-row>div,.offer-row .ol,.offer-row ul{grid-column:1/-1}
  .res-grid{grid-template-columns:1fr}
}
@media (max-width:720px){
  .tl{grid-template-columns:1fr}
  .tl>div{min-height:0}
  .inner h1{font-size:15vw}
  .offer-row{padding:28px 20px}
  .solo{padding:28px 20px}
  .rank-grid{gap:4px;padding:10px}
}

.vegas-map{width:100%;height:auto;display:block;border-radius:10px}
.scan-fig figcaption{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:16px;font-size:var(--step-small);color:var(--silver-ink)}
.scan-fig .lg{display:inline-flex;align-items:center;gap:8px}
.scan-fig .lg i{width:14px;height:14px;border-radius:50%;display:inline-block}
.k1{background:#CBA253}.k2{background:#7A6128}.k3{background:#4A5058}
.alt .record{grid-template-columns:repeat(3,minmax(0,1fr))}
.alt .record b{font-size:clamp(1.375rem,1rem + 1vw,2rem)}
@media (max-width:720px){.alt .record{grid-template-columns:1fr}}
