:root{
  --ink:#0d0c0b; --ink-2:#161412; --line:rgba(237,230,218,.14);
  --bone:#ede6da; --mute:#8f877b; --accent:#ff5b35;
  --serif:"Instrument Serif",Georgia,serif; --sans:"Inter Tight",system-ui,sans-serif; --mono:"JetBrains Mono",ui-monospace,monospace;
  --pad:clamp(20px,4.2vw,72px); --ease:cubic-bezier(.2,.7,0,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--ink);color:var(--bone);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
em{font-family:var(--serif);font-style:italic;font-weight:400}
::selection{background:var(--accent);color:var(--ink)}
.mono{font:500 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.muted{color:var(--mute)}
.fine{color:var(--mute);margin-top:18px}
.eyebrow{color:var(--accent);margin-bottom:28px}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:.95}
h2{font-size:clamp(48px,7.4vw,128px)}
section{padding:clamp(90px,13vw,200px) var(--pad);position:relative}
.grain{position:fixed;inset:-50%;pointer-events:none;z-index:100;opacity:.06;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}100%{transform:translate(1%,3%)}}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;gap:40px;padding:22px var(--pad);mix-blend-mode:difference;transition:transform .5s var(--ease)}
.nav.hide{transform:translateY(-110%)}
.mark{font:400 28px/1 var(--serif);letter-spacing:-.01em}
.mark sup{font:500 9px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-left:6px;vertical-align:top;opacity:.7}
.nav-links{display:flex;gap:30px;margin-left:auto;font-size:14px}
.nav-links a,.link-u{position:relative}
.nav-links a::after,.link-u::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav-links a:hover::after,.link-u:hover::after{transform:scaleX(1);transform-origin:left}
.link-u::after{transform:scaleX(1)} .link-u:hover::after{animation:uline .7s var(--ease)}
@keyframes uline{0%{transform:scaleX(1);transform-origin:right}49%{transform:scaleX(0);transform-origin:right}50%{transform-origin:left}100%{transform:scaleX(1);transform-origin:left}}
.nav-cta{display:flex;gap:10px;align-items:center;font-size:14px;border:1px solid currentColor;border-radius:99px;padding:9px 18px}
.nav-cta i{font-style:normal;transition:transform .4s var(--ease)} .nav-cta:hover i{transform:translateX(4px)}
.burger{display:none;background:none;border:0;width:34px;height:20px;position:relative;margin-left:auto;cursor:pointer}
.burger span{position:absolute;left:0;right:0;height:1.5px;background:var(--bone);transition:.4s var(--ease)}
.burger span:first-child{top:4px}.burger span:last-child{bottom:4px}
.menu-open .burger span:first-child{top:9px;transform:rotate(45deg)}.menu-open .burger span:last-child{bottom:9px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:40;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:var(--pad);gap:8px;clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--ease)}
.mobile-menu a{font:400 54px/1.05 var(--serif)}
.menu-open .mobile-menu{clip-path:inset(0)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:14px;background:var(--bone);color:var(--ink);padding:16px 26px;border-radius:99px;font-weight:500;font-size:15px;position:relative;overflow:hidden;transition:transform .3s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;background:var(--accent);border-radius:inherit;transform:translateY(101%);transition:transform .55s var(--ease)}
.btn:hover::before{transform:none}
.btn span,.btn i{position:relative;font-style:normal}
.btn i{transition:transform .45s var(--ease)} .btn:hover i{transform:translateX(5px) rotate(-45deg)}
.btn-lg{padding:24px 38px;font-size:18px}

/* hero */
.hero{min-height:100vh;padding-top:150px;padding-bottom:80px;display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-content:start}
.hero-meta{grid-column:1/-1;display:flex;align-items:center;gap:14px;color:var(--mute);margin-bottom:clamp(30px,4vw,60px)}
.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.hero-title{grid-column:1/-1;grid-row:2;font-size:clamp(64px,12.2vw,222px);line-height:.86;letter-spacing:-.035em;position:relative;z-index:3;pointer-events:none}
.hero-title .line{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.hero-title .line>span{display:inline-block;transform:translateY(105%);transition:transform 1.3s var(--ease)}
.hero-title .indent{padding-left:18vw}
.loaded .hero-title .line>span{transform:none}
.hero-title .line:nth-child(2)>span{transition-delay:.08s}.hero-title .line:nth-child(3)>span{transition-delay:.16s}.hero-title .line:nth-child(4)>span{transition-delay:.24s}
.accent{color:var(--accent)}
.hero-img{grid-column:8/13;grid-row:2/4;margin-top:4vw;aspect-ratio:4/5;position:relative;z-index:1}
.hero-img img{filter:saturate(.94) contrast(1.02);object-position:32% 30%}
.hero-img figcaption{position:absolute;left:0;bottom:-28px;color:var(--mute)}
.hero-lede{grid-column:1/6;grid-row:3;align-self:end;margin-top:60px;max-width:470px}
.hero-lede p{font-size:18px;color:#cfc7ba}
.hero-lede b{color:var(--bone);font-weight:500}
.hero-actions{display:flex;gap:28px;align-items:center;margin-top:34px;flex-wrap:wrap}
.slip{grid-column:5/9;grid-row:3;align-self:end;justify-self:end;width:min(340px,100%);margin-right:-60px;margin-bottom:-40px;z-index:4;background:#efe8db;color:#1a1714;padding:22px 22px 18px;border-radius:2px;
  box-shadow:0 40px 80px -20px rgba(0,0,0,.7);transform:rotate(-4deg);transition:transform .6s var(--ease);
  background-image:repeating-linear-gradient(0deg,transparent 0 27px,rgba(26,23,20,.06) 27px 28px)}
.slip .mono{font-size:9.5px}
.slip-top{display:flex;justify-content:space-between;border-bottom:1px dashed rgba(26,23,20,.35);padding-bottom:10px;margin-bottom:14px}
.slip-label{opacity:.6}
.slip-name{font:400 26px/1.1 var(--serif);margin:4px 0 14px}.slip-name span{font-size:15px;opacity:.6}
.slip-amt{display:flex;justify-content:space-between;align-items:baseline;border:1px solid #1a1714;padding:10px 12px}
.slip-amt b{font:500 22px var(--mono);letter-spacing:-.02em}
.slip-memo{margin-top:12px}
.slip-foot{margin-top:14px;padding-top:10px;border-top:1px dashed rgba(26,23,20,.35);color:#b23a1c}
.slip-note{margin-top:8px;opacity:.45;font-size:8.5px!important}

/* ledger */
.ledger{display:grid;grid-template-columns:repeat(3,1fr);padding-top:40px;padding-bottom:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ledger-item{padding:30px 0 30px 0;display:flex;flex-direction:column;gap:12px}
.ledger-item+.ledger-item{border-left:1px solid var(--line);padding-left:clamp(20px,3vw,48px)}
.ledger-item b{font:400 clamp(48px,6vw,96px)/1 var(--serif);letter-spacing:-.03em}
.ledger-item span{color:var(--mute)}

/* marquee */
.brands{padding-top:60px;padding-bottom:60px;overflow:hidden}
.brands-label{color:var(--mute);margin-bottom:24px}
.marquee{margin:0 calc(var(--pad)*-1);overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee-track{display:flex;gap:48px;align-items:center;width:max-content;animation:marq 38s linear infinite;font:400 clamp(40px,5vw,80px)/1 var(--sans);letter-spacing:-.04em;white-space:nowrap}
.marquee-track em{letter-spacing:-.01em}
.marquee-track i{font-style:normal;color:var(--accent);font-size:.4em}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}

/* manifesto */
.manifesto{padding-bottom:clamp(60px,8vw,120px)}
.manifesto h2{font-size:clamp(44px,6.6vw,118px);line-height:1;max-width:15ch}
.words .w{opacity:.14;transition:opacity .6s}
.words .w.on{opacity:1}
.manifesto em{color:var(--accent)}

/* process */
.sec-head{display:flex;justify-content:space-between;color:var(--mute);padding-bottom:20px;border-bottom:1px solid var(--line)}
.steps{list-style:none}
.step{display:grid;grid-template-columns:1fr 3fr 4fr 2fr;gap:24px;align-items:baseline;padding:44px 0;border-bottom:1px solid var(--line);position:relative;transition:padding .6s var(--ease)}
.step::before{content:"";position:absolute;left:0;right:0;top:0;bottom:-1px;background:var(--ink-2);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--ease);z-index:-1}
.step:hover::before{transform:none}
.step:hover{padding-left:24px;padding-right:24px}
.step-n{font:400 18px var(--mono);color:var(--accent)}
.step h3{font-size:clamp(40px,4.6vw,76px)}
.step p{color:#c7bfb2;max-width:44ch}
.step-t{color:var(--mute);text-align:right}

/* work */
.work-intro{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:end;margin-bottom:clamp(60px,9vw,140px)}
.work-intro .eyebrow{grid-column:1/-1;margin:0}
.work-intro h2{grid-column:1/8}
.work-intro p.muted{grid-column:9/13;max-width:34ch}
.case{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:end;margin-bottom:clamp(90px,12vw,190px)}
.case figure{overflow:hidden;position:relative}
.case figure img{transform:scale(1.15);will-change:transform}
.case-a figure{grid-column:1/9;aspect-ratio:16/10}
.case-a .case-text{grid-column:9/13}
.case-b figure{grid-column:6/13;grid-row:1;aspect-ratio:4/5}
.case-b .case-text{grid-column:1/5;grid-row:1;align-self:center}
.case-c figure{grid-column:3/11;aspect-ratio:21/9}
.case-c .case-text{grid-column:3/11;display:grid;grid-template-columns:1fr 1fr;gap:10px 40px;margin-top:20px}
.case-c .case-text h3{grid-column:1}.case-c .case-text p{grid-column:1}.case-c blockquote{grid-column:2;grid-row:1/4;align-self:start}
.case-c .case-n{grid-column:1/-1}
.case-n{color:var(--mute);display:block;margin-bottom:18px}
.case h3{font-size:clamp(34px,3.4vw,56px);margin-bottom:16px}
.case h3 em{color:var(--mute)}
.case p{color:#c7bfb2}
.case blockquote{font:400 22px/1.3 var(--serif);font-style:italic;margin-top:26px;padding-left:18px;border-left:1px solid var(--accent)}

/* estimate */
.estimate{background:var(--bone);color:var(--ink);display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,120px);border-radius:0}
.estimate .fine{color:#6f675c}
.estimate em{color:var(--accent)}
.est-form{border-top:1px solid rgba(13,12,11,.2)}
.range{display:grid;grid-template-columns:1fr auto;align-items:baseline;padding:30px 0 22px;border-bottom:1px solid rgba(13,12,11,.2);cursor:pointer}
.range output{font:400 clamp(40px,4.4vw,68px)/1 var(--serif);letter-spacing:-.02em}
.range input{grid-column:1/-1;margin-top:20px;-webkit-appearance:none;appearance:none;width:100%;height:2px;background:linear-gradient(90deg,var(--ink) var(--p,10%),rgba(13,12,11,.18) var(--p,10%));outline:none}
.range input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);border:4px solid var(--bone);box-shadow:0 0 0 1px var(--ink);cursor:grab;transition:transform .2s}
.range input::-webkit-slider-thumb:active{transform:scale(1.25)}
.range input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent);border:4px solid var(--bone);box-shadow:0 0 0 1px var(--ink)}
.est-result{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;gap:24px}
.est-result>div{display:flex;flex-direction:column;gap:10px}
.est-result b{font:400 clamp(48px,5.4vw,90px)/1 var(--serif);letter-spacing:-.03em}
.est-result small{color:#6f675c}
.est-result>div:first-child b{color:#8d857a;text-decoration:line-through;text-decoration-thickness:1px}
.est-result .hl b{color:var(--accent)}

/* about */
.about-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,6vw,110px);align-items:start}
.about-lede{font-size:clamp(40px,4.8vw,84px);line-height:1}
.about-body p{color:#c7bfb2;margin-bottom:20px}
.about-body p:last-child{color:var(--bone);font-size:20px}
.timeline{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(70px,9vw,140px);border-top:1px solid var(--line)}
.timeline li{padding:28px 24px 0 0;position:relative}
.timeline li::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--ink);border:1px solid var(--accent)}
.timeline b{display:block;font:400 clamp(56px,7vw,120px)/1 var(--serif);letter-spacing:-.03em;margin-bottom:10px;color:transparent;-webkit-text-stroke:1px var(--bone);transition:color .5s}
.timeline li:hover b{color:var(--bone)}
.timeline span{color:var(--mute)}
.press{margin-top:clamp(80px,10vw,160px);max-width:900px;margin-left:auto;text-align:right}
.press .mono{color:var(--accent)}
.press blockquote{font:400 clamp(36px,4.4vw,72px)/1.02 var(--serif);font-style:italic;margin:20px 0;letter-spacing:-.02em}

/* audit */
.audit{border-top:1px solid var(--line)}
.audit-title{font-size:clamp(64px,11.5vw,210px);line-height:.88;letter-spacing:-.035em}
.audit-title em{color:var(--accent)}
.audit-row{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:60px;flex-wrap:wrap}
.audit-row p{font-size:20px;color:#c7bfb2;max-width:30ch}
.audit-brands{margin-top:80px;padding-top:24px;border-top:1px solid var(--line);color:#c7bfb2}
.audit-brands .mono{color:var(--mute)}

/* footer */
.foot{padding:0 var(--pad) 30px;overflow:hidden}
.foot-big{font:400 clamp(120px,29vw,560px)/.8 var(--serif);letter-spacing:-.05em;color:var(--ink-2);-webkit-text-stroke:1px rgba(237,230,218,.08);text-align:center;margin-bottom:24px;user-select:none}
.foot-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--mute)}
.foot-row a:hover{color:var(--bone)}

.nf{min-height:80vh;padding:200px var(--pad) 100px}
.nf h1{font-size:clamp(56px,9vw,150px);margin-bottom:50px}

/* reveals */
.reveal{opacity:0;transform:translateY(40px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal-img{position:relative;overflow:hidden}
.reveal-img::after{content:"";position:absolute;inset:-1px;background:var(--ink);transform-origin:top;transition:transform 1.4s var(--ease);z-index:2;pointer-events:none}
.reveal-img.in::after{transform:scaleY(0)}
.hero .reveal-img::after{transition-delay:.3s}

/* ───────── refinements ───────── */
.case figure img{filter:saturate(.94) contrast(1.02)}
.hero-sub{font-size:clamp(18px,1.35vw,21px)!important;line-height:1.5;color:#d6cfc2!important;max-width:34ch}
.hero-sub b{color:var(--bone);font-weight:500}
.hero .btn,.audit .btn{background:var(--accent);color:var(--ink);box-shadow:0 18px 40px -18px rgba(255,91,53,.55)}
.hero .btn::before,.audit .btn::before{background:var(--bone)}
.assure{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;color:var(--mute)}
.assure li{display:flex;align-items:center;gap:9px}
.assure li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex:none}
/* benefits */
.benefits{padding-top:0}
.benefit-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:0 clamp(20px,2.4vw,40px)}
.benefit{padding:34px 0 8px;border-top:1px solid transparent;position:relative}
.benefit::before{content:"";position:absolute;top:-1px;left:0;width:36px;height:1px;background:var(--accent);transition:width .8s var(--ease)}
.benefit:hover::before{width:100%}
.benefit-n{color:var(--accent);display:block;margin-bottom:40px;font-style:italic}
.benefit h3{font-size:clamp(34px,3vw,52px);line-height:1;margin-bottom:18px}
.benefit h3 em{color:var(--bone)}
.benefit p{color:#c7bfb2;max-width:30ch}
/* final cta */
.audit-row{align-items:flex-end}
.next-steps{list-style:none;counter-reset:n;flex:1 1 420px;max-width:560px}
.next-steps li{display:grid;grid-template-columns:44px 1fr;align-items:baseline;padding:16px 0;border-top:1px solid var(--line);font-size:19px;color:#d6cfc2}
.next-steps li:last-child{border-bottom:1px solid var(--line)}
.next-steps .mono{color:var(--accent)}
.audit-act{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.audit-act p{max-width:none;font-size:11px}

/* ───────── responsive ───────── */
html{overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
.burger{width:44px;height:44px;margin-right:-8px;touch-action:manipulation}
.burger span{left:8px;right:8px}
.burger span:first-child{top:17px}.burger span:last-child{bottom:17px}
.menu-open .burger span:first-child{top:21px}.menu-open .burger span:last-child{bottom:21.5px}
.mobile-menu{visibility:hidden;transition:clip-path .7s var(--ease),visibility 0s .7s;overscroll-behavior:contain}
.menu-open .mobile-menu{visibility:visible;transition:clip-path .7s var(--ease)}
.mobile-menu a{font-size:clamp(44px,12.5vw,76px);padding:4px 0;transform:translateY(30px);opacity:0;transition:transform .8s var(--ease),opacity .8s var(--ease)}
.menu-open .mobile-menu a{transform:none;opacity:1}
.menu-open .mobile-menu a:nth-child(2){transition-delay:.05s}.menu-open .mobile-menu a:nth-child(3){transition-delay:.1s}.menu-open .mobile-menu a:nth-child(4){transition-delay:.15s}.menu-open .mobile-menu a:nth-child(5){transition-delay:.2s;color:var(--accent)}
.menu-open{overflow:hidden}
.marquee-track{will-change:transform}

/* touch devices: no sticky hover states */
@media (hover:none){
  .step:hover{padding-left:0;padding-right:0}
  .step:hover::before{transform:scaleY(0)}
  .marquee:hover .marquee-track{animation-play-state:running}
  .range input::-webkit-slider-thumb{width:30px;height:30px}
  .range input::-moz-range-thumb{width:22px;height:22px}
}
/* bigger hit area for the sliders on touch screens, same 2px line */
@media (max-width:1023px),(hover:none){
  .range input{height:34px;background-color:transparent;background-size:100% 2px;background-position:center;background-repeat:no-repeat;margin-top:10px;touch-action:pan-y}
}

/* laptop: 1024–1439 */
@media (max-width:1439px) and (min-width:1024px){
  .hero-lede{grid-column:1/6;max-width:min(400px,100%)}
  .slip{grid-column:6/9;width:min(300px,100%);margin-right:-40px;margin-bottom:-70px}
  .hero-actions{gap:22px}
  .step{grid-template-columns:.7fr 3fr 4fr 2fr}
}

/* tablet & below: hamburger menu */
@media (max-width:1023px){
  .nav{gap:16px;padding-top:14px;padding-bottom:14px}
  .nav-links,.nav-cta{display:none}
  .burger{display:block}
  .hero-lede .fine{font-size:10px;line-height:1.6}
  .hero-actions .link-u{padding:10px 0}
  .hero-actions .link-u::after{bottom:7px}
  .audit-brands .link-u{display:inline-block;padding:8px 0}
  .audit-brands .link-u::after{bottom:5px}
  .foot-row a{padding:12px 0}
  .hero{min-height:0}
  .hero-img figcaption{top:14px;right:14px;left:auto;bottom:auto;color:rgba(237,230,218,.75);text-align:right;max-width:60%;z-index:1;text-shadow:0 1px 8px rgba(0,0,0,.6)}
}

/* tablet: 768–1023 */
@media (max-width:1023px) and (min-width:768px){
  .hero{padding-top:130px;padding-bottom:100px;column-gap:20px}
  .hero-title{font-size:clamp(84px,14.4vw,148px)}
  .hero-title .indent{padding-left:13vw}
  .hero-img{grid-column:6/13;grid-row:3;margin-top:-9vw}
  .slip{grid-column:1/7;grid-row:3;align-self:end;justify-self:start;width:min(310px,100%);margin:0 0 -48px 0}
  .hero-lede{grid-column:1/10;grid-row:4;margin-top:110px;max-width:520px}
  .ledger-item b{font-size:clamp(44px,6.4vw,64px)}
  .step{grid-template-columns:64px 1fr auto;grid-template-areas:"n h t" ". p p";gap:14px 20px;padding:38px 0}
  .step-n{grid-area:n}.step h3{grid-area:h}.step p{grid-area:p}.step-t{grid-area:t}
  .work-intro h2{grid-column:1/-1}
  .work-intro p.muted{grid-column:1/8}
  .case-a figure{grid-column:1/-1}
  .case-a .case-text{grid-column:1/10;margin-top:12px}
  .case-b figure{grid-column:6/13}
  .case-b .case-text{grid-column:1/6}
  .case-c figure{grid-column:1/-1}
  .case-c .case-text{grid-column:1/-1}
  .estimate{grid-template-columns:1fr;gap:48px}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .about-body{max-width:60ch;column-count:2;column-gap:32px}
  .about-body p{break-inside:avoid}
  .timeline li{padding-right:16px}
  .audit-title{font-size:clamp(84px,13vw,140px)}
}

/* mobile: up to 767 */
@media (max-width:767px){
  body{font-size:16px}
  section{padding-top:clamp(80px,22vw,120px);padding-bottom:clamp(80px,22vw,120px)}
  .eyebrow{margin-bottom:20px}
  h2{font-size:clamp(44px,13vw,80px)}

  /* hero */
  .hero{display:flex;flex-direction:column;padding-top:104px;padding-bottom:72px}
  .hero-meta{flex-wrap:wrap;gap:8px 12px;margin-bottom:28px}
  .hero-meta span:not(.dot){white-space:nowrap}
  .hero-title{font-size:clamp(52px,18.4vw,124px);line-height:.88}
  .hero-title .indent{padding-left:9vw}
  .hero-img{width:80%;margin:34px 0 0 auto;max-height:none}
  .slip{width:min(300px,84%);margin:-104px 0 0 0;align-self:flex-start;padding:18px 18px 14px}
  .slip-name{font-size:23px}
  .slip-amt b{font-size:19px}
  .hero-lede{margin-top:52px;max-width:none}
  .hero-lede p{font-size:17px}
  .hero-actions{gap:8px 26px;margin-top:28px}
  .hero-actions .btn{padding:17px 26px}
  .fine{font-size:10px}

  /* stats */
  .ledger{grid-template-columns:1fr;padding-top:8px;padding-bottom:8px}
  .ledger-item{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:16px;padding:24px 0}
  .ledger-item+.ledger-item{border-left:0;border-top:1px solid var(--line);padding-left:0}
  .ledger-item b{font-size:clamp(50px,15.5vw,88px)}
  .ledger-item span{text-align:right;padding-bottom:8px;max-width:16ch;justify-self:end}

  /* marquee */
  .brands{padding-top:52px;padding-bottom:52px}
  .marquee-track{font-size:clamp(34px,10vw,56px);gap:30px;animation-duration:30s}
  .marquee{mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}

  /* manifesto */
  .manifesto h2{font-size:clamp(40px,11.6vw,72px)}

  /* process */
  .sec-head{flex-direction:column;gap:6px}
  .step{grid-template-columns:1fr auto;grid-template-areas:"n t" "h h" "p p";gap:10px 16px;padding:32px 0;align-items:center}
  .step-n{grid-area:n;font-size:15px}.step h3{grid-area:h;font-size:clamp(42px,12.5vw,64px);margin-top:6px}.step p{grid-area:p}.step-t{grid-area:t;text-align:right}

  /* work */
  .work-intro{display:block;margin-bottom:64px}
  .work-intro h2{margin:0 0 20px}
  .case{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-bottom:88px}
  .case:last-child{margin-bottom:0}
  .case figure{width:100%}
  .case-a figure{aspect-ratio:4/3}
  .case-b figure{aspect-ratio:4/5;width:86%;margin-left:auto}
  .case-c figure{aspect-ratio:16/10}
  .case-text{margin-top:26px}
  .case-c .case-text{display:block}
  .case h3{font-size:clamp(32px,9.4vw,48px)}
  .case blockquote{font-size:20px;margin-top:22px}

  /* estimator */
  .estimate{grid-template-columns:1fr;gap:40px}
  .range{padding:24px 0 14px;gap:0 12px}
  .range output{font-size:clamp(36px,11vw,56px)}
  .est-result{grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
  .est-result b{font-size:clamp(34px,10.4vw,60px)}
  .est-result .mono{min-height:2.8em}

  /* about */
  .about-grid{grid-template-columns:1fr;gap:32px}
  .about-lede{font-size:clamp(38px,10.6vw,64px)}
  .timeline{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--line);margin-left:4px;margin-top:72px}
  .timeline li{padding:0 0 40px 28px}
  .timeline li:last-child{padding-bottom:0}
  .timeline li::before{top:16px;left:-5px}
  .timeline b{font-size:clamp(60px,18vw,96px);margin-bottom:6px}
  .press{text-align:left;margin:80px 0 0}
  .press blockquote{font-size:clamp(34px,9.6vw,56px)}

  /* final cta */
  .audit-title{font-size:clamp(48px,15.2vw,110px);line-height:.9}
  .audit-row{flex-direction:column;align-items:stretch;gap:28px;margin-top:40px}
  .audit-row p{font-size:18px}
  .btn-lg{justify-content:space-between;padding:22px 28px;font-size:17px}
  .audit-brands{margin-top:56px;line-height:1.7}

  /* footer */
  .foot-big{font-size:29vw;margin-bottom:16px}
  .foot-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
  .foot-row>*{padding:12px 0;min-height:44px;display:flex;align-items:center}
  .foot-row>:nth-child(even){justify-content:flex-end;text-align:right}
  .foot-row a{color:var(--bone)}
}

/* small mobile: 320–374 */
@media (max-width:374px){
  :root{--pad:18px}
  .hero-title .indent{padding-left:7vw}
  .hero-img{width:84%}
  .slip{width:88%;margin-top:-84px}
  .slip .mono{font-size:8.5px}
  .slip-name span{display:block;font-size:13px}
  .hero-actions .btn{width:100%;justify-content:space-between}
  .ledger-item{grid-template-columns:1fr}
  .ledger-item span{text-align:left;justify-self:start;padding-bottom:0}
  .est-result{grid-template-columns:1fr;gap:22px}
  .est-result .mono{min-height:0}
  .foot-row{grid-template-columns:1fr}
  .foot-row>:nth-child(even){justify-content:flex-start;text-align:left}
}
@media (prefers-reduced-motion:reduce){
  *,*::before{animation:none!important;transition:none!important}
  .reveal,.hero-title .line>span{opacity:1;transform:none}.reveal-img::after{display:none}
}

/* refinements: responsive */
@media (max-width:1279px){ .benefit-list{grid-template-columns:repeat(2,1fr);gap:0 40px} .benefit{padding-bottom:40px} .benefit-n{margin-bottom:22px} }
@media (max-width:767px){
  .hero-sub{max-width:none;font-size:18px!important}
  .assure{flex-direction:column;gap:10px;margin-top:26px}
  .benefit-list{grid-template-columns:1fr}
  .benefit{display:grid;grid-template-columns:40px 1fr;column-gap:8px;padding:28px 0 30px}
  .benefit+.benefit{border-top-color:var(--line)}
  .benefit-n{margin:6px 0 0}
  .benefit h3,.benefit p{grid-column:2}
  .benefit h3{font-size:clamp(32px,9.6vw,44px);margin-bottom:12px}
  .next-steps{flex:none;max-width:none}
  .next-steps li{font-size:17px;grid-template-columns:38px 1fr}
  .audit-act{align-items:stretch}
}
@media (max-width:374px){.hero-meta span:not(.dot){white-space:normal}.hero-meta{font-size:10px}}
@media (min-width:1024px){
  .hero{padding-top:108px}
  .hero-actions{margin-top:24px}
  .hero-meta{margin-bottom:clamp(24px,2.6vw,44px)}
  .hero-title{font-size:clamp(64px,min(9.2vw,14.5vh),190px)}
  .hero-lede{margin-top:22px}
}
@media (max-width:767px){.hero-img figcaption{display:none}}
.benefits{padding-bottom:clamp(30px,4vw,60px)}
.audit-row .audit-act p{font-size:10.5px;color:var(--mute)}

.audit-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px}
.audit-modal[hidden]{display:none}
body.audit-open{overflow:hidden}
.audit-backdrop{position:absolute;inset:0;border:0;background:rgba(8,7,6,.72);cursor:pointer}
.audit-card{position:relative;width:min(520px,100%);max-height:min(92vh,760px);overflow:auto;background:#efe8db;color:#1a1714;padding:36px 32px 28px;border-radius:2px}
.audit-card h2{font-size:clamp(40px,6vw,64px);color:#1a1714}
.audit-card .mono{color:#8a8176}
.audit-x{position:absolute;top:16px;right:16px;border:0;background:none;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#1a1714;cursor:pointer}
#audit-form{display:grid;gap:14px;margin-top:18px}
#audit-form label{display:grid;gap:6px;font:500 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#8a8176}
#audit-form input{border:0;border-bottom:1px solid rgba(26,23,20,.28);background:transparent;color:#1a1714;font:400 18px/1.4 var(--sans);padding:8px 0;border-radius:0;text-transform:none;letter-spacing:0}
#audit-form input:focus{outline:none;border-bottom-color:#ff5b35}
#audit-form .btn{justify-content:space-between;margin-top:8px;background:#1a1714;color:#efe8db}
#audit-form .btn::before{background:var(--accent)}
#audit-form .muted{font-size:10px}
.audit-auth p{margin-top:14px;color:#5c564e}
.audit-auth .googleLoginBtn{margin-top:22px;min-height:44px}
.audit-auth[hidden],#audit-form[hidden]{display:none}

.err{
  min-height:100vh;
  padding:150px var(--pad) 100px;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  column-gap:clamp(40px,6vw,120px);
  align-content:start;
}
.err-kicker{grid-column:1/-1;display:flex;align-items:center;gap:14px;color:var(--mute);margin-bottom:clamp(28px,4vw,48px)}
.err h1{grid-column:1;font-size:clamp(52px,5.4vw,92px);line-height:.92;letter-spacing:-.035em;max-width:10ch}
.err h1 em{color:var(--accent)}
.err-lead{grid-column:1;margin-top:28px;max-width:36ch;color:#cfc7ba;font-size:18px}
.err-actions{grid-column:1;margin-top:40px}
.err-sheet{grid-column:2;grid-row:2 / span 2;align-self:end;border-top:1px solid var(--line)}
.err-sheet div{display:grid;grid-template-columns:148px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.err-sheet dt{font:500 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.err-sheet dd{font:400 22px/1.3 var(--serif)}
.err-sheet .fail{color:var(--accent)}
.err-why{grid-column:2;list-style:none;margin-top:28px;display:grid;gap:10px;color:#c7bfb2}
.err-why li{padding-left:18px;position:relative}
.err-why li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
@media (max-width:900px){
  .err{grid-template-columns:1fr;padding-top:120px}
  .err-kicker,.err h1,.err-lead,.err-sheet,.err-why,.err-actions{grid-column:1;grid-row:auto}
  .err h1{max-width:none}
  .err-sheet{margin-top:36px}
  .err-sheet div{grid-template-columns:1fr;gap:6px}
}
