@import url("https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=Geist+Mono:wght@400;500;600&display=swap");

/* The artifact host ships this in its reset; a split-out production page
   does not, so it lives here to make `hidden` mean the same in both. */
[hidden]{display:none!important}
:root{color-scheme:dark}

:root{
  --ink:#0B0C0E; --ink-2:#121315; --ink-3:#1B1D22; --paper:#F4F1EC; --paper-2:#EAE7E0; --mute:#A6A8AE; --mute-2:#6B6D73; --body:#4A4C52;
  --line:#24262B; --line-l:#DDD9D0;
  --accent:#C76E02; --accent-2:#DD7900; --accent-3:#FFC77A; --accent-deep:#A85C00;
  --gut:clamp(16px,6vw,96px);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font-family:'Geist','Instrument Sans','Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
h1,h2,h3{margin:0;letter-spacing:-.03em;text-wrap:balance}
p{margin:0}
.mono{font-family:'Geist Mono',ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:500}
.eyebrow{color:var(--accent-2)}
.wrap{padding-inline:var(--gut)}
.band{padding-block:clamp(72px,9vw,120px)}
.band.light{background:var(--paper);color:#121315}
.band.light2{background:var(--paper-2);color:#121315}
.band.dark{background:var(--ink);color:var(--paper)}
.band.dark2{background:var(--ink-2);color:var(--paper)}
.head{display:flex;flex-direction:column;gap:14px;max-width:820px}
.head h2{font-size:clamp(34px,4.2vw,56px);line-height:1;font-weight:800}
.head p{font-size:clamp(16px,1.3vw,18px);line-height:1.5;max-width:620px}
.light .head p,.light2 .head p{color:var(--body)}
.dark .head p,.dark2 .head p{color:#C9CBD0}
.row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap}
.tlink{font-size:15px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:4px;white-space:nowrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 26px;border-radius:8px;font-weight:700;font-size:15px;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease;cursor:pointer;border:0;font-family:inherit;line-height:1}
.btn:active{transform:translateY(1px)}
.btn.solid{background:var(--accent);color:#fff}
.btn.solid:hover{background:var(--accent-2)}
.btn.ghost{border:1px solid rgba(255,255,255,.22);color:var(--paper);background:transparent}
.btn.ghost:hover{border-color:rgba(255,255,255,.5)}
.btn.inkb{background:#121315;color:var(--paper)}
.btn.inkb:hover{background:#2A2C31}
.btn.small{padding:11px 18px;font-size:14px}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g6{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:980px){.g3{grid-template-columns:repeat(2,minmax(0,1fr))}.g6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.g2,.g3{grid-template-columns:1fr}.g6{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* reveal: visible at rest, nudged when JS runs */
.rv{transition:transform .8s cubic-bezier(.2,.7,.1,1),opacity .8s ease}
.js .rv{opacity:0;transform:translateY(24px)}
.js .rv.in{opacity:1;transform:none}

/* NAV */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;gap:32px;padding:18px var(--gut);background:rgba(11,12,14,.72);backdrop-filter:blur(12px) saturate(140%);border-bottom:1px solid rgba(255,255,255,.06)}
.brand{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;font-weight:700;font-size:18px;letter-spacing:-.02em;text-transform:uppercase}
.brand i{width:12px;height:12px;background:var(--accent);display:block}
.brand small{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.18em;color:var(--mute);font-weight:500}
.nav nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:500}
.nav nav a{color:var(--paper);text-decoration:none;opacity:.8}
.nav nav a:hover{opacity:1}
.nav .btn{margin-left:auto}
.nav nav + .btn{margin-left:0}
@media (max-width:820px){.nav nav{display:none}}

/* HERO */
.hero{position:relative;min-height:calc(100svh - 70px);display:grid;isolation:isolate;overflow:hidden}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}
.vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:
  linear-gradient(90deg,rgba(11,12,14,.94) 0%,rgba(11,12,14,.78) 38%,rgba(11,12,14,0) 62%),
  linear-gradient(180deg,rgba(11,12,14,.5) 0%,rgba(11,12,14,0) 30%,rgba(11,12,14,0) 70%,rgba(11,12,14,.95) 100%)}
.copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;gap:22px;padding:clamp(56px,9vh,110px) var(--gut) clamp(96px,14vh,150px);max-width:800px}
h1{font-size:clamp(44px,7.2vw,96px);line-height:.94;letter-spacing:-.045em;font-weight:800}
h1 .line{display:block;overflow:hidden}
h1 .line span{display:block;transform:translateY(110%);animation:rise .9s cubic-bezier(.2,.7,.1,1) forwards}
h1 .line:nth-child(2) span{animation-delay:.12s}
h1 .line:nth-child(3) span{animation-delay:.24s}
h1 em{font-style:normal;color:var(--accent-3)}
.lede{font-size:clamp(16px,1.4vw,20px);line-height:1.5;color:#D6D4CE;max-width:540px;opacity:0;animation:fade .8s .5s ease forwards}
.ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;opacity:0;animation:fade .8s .7s ease forwards}
.proof{display:flex;align-items:center;gap:14px;margin-top:10px;opacity:0;animation:fade .8s .9s ease forwards}
.faces{display:flex}
.faces b{width:36px;height:36px;border-radius:50%;background:#3A3D44;border:2px solid var(--ink);display:block;margin-left:-10px}
.faces b:first-child{margin-left:0}
.proof span{font-size:14px;color:var(--mute)}
.proof strong{color:var(--paper)}
.stats{position:absolute;right:var(--gut);bottom:clamp(24px,6vh,56px);z-index:3;display:flex;gap:28px;opacity:0;animation:fade 1s 1.1s ease forwards}
.stat{display:flex;flex-direction:column;gap:4px}
.stat b{font-size:26px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.stat span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
@keyframes rise{to{transform:translateY(0)}}
@keyframes fade{to{opacity:1}}
@media (max-width:820px){
  .vignette{background:linear-gradient(180deg,rgba(11,12,14,.35) 0%,rgba(11,12,14,.72) 45%,rgba(11,12,14,.96) 100%)}
  .stats{position:static;padding:0 var(--gut) 40px;gap:20px;flex-wrap:wrap}
  .copy{justify-content:flex-end;padding-top:38vh;padding-bottom:32px}
}

/* RATINGS */
.ratings{padding-block:0 0;margin-top:-1px}
.ratings .grid{padding-block:28px 0}
.rate{display:flex;align-items:center;gap:14px;padding:20px 22px;border:1px solid var(--line-l);border-radius:12px;background:#fff;color:#121315}
.rate b{font-size:17px}
.stars{display:flex;gap:3px;color:var(--accent)}
.stars svg{width:15px;height:15px;fill:currentColor}
.rate span{margin-left:auto;font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;color:var(--mute-2)}

/* TESTIMONIALS */
.quote{background:var(--ink-3);border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:16px}
.quote p{font-size:17px;line-height:1.5;color:#E4E2DC}
.who{display:flex;align-items:center;gap:12px;margin-top:auto;border-top:1px solid var(--line);padding-top:16px}
.who i{width:40px;height:40px;border-radius:50%;background:#3A3D44;display:block}
.who div{display:flex;flex-direction:column}
.who strong{font-size:15px}
.who span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}

/* SERVICES */
.svc{background:#fff;border:1px solid var(--line-l);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:18px;color:#121315;transition:transform .25s ease,box-shadow .25s ease}
.svc:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(18,19,21,.10)}
.svc.dark{background:#121315;color:var(--paper);border-color:#121315}
.svc .top{display:flex;align-items:center;justify-content:space-between}
.svc .num{font-family:'Geist Mono',ui-monospace,monospace;font-size:24px;color:var(--accent);font-weight:500}
.svc .tag{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2);border:1px solid var(--line-l);padding:6px 10px;border-radius:999px}
.svc.dark .tag{color:var(--mute);border-color:var(--line)}
.svc h3{font-size:26px;font-weight:700;letter-spacing:-.02em}
.svc p{font-size:16px;line-height:1.5;color:var(--body)}
.svc.dark p{color:#C9CBD0}
.svc ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:15px;color:var(--body)}
.svc.dark ul{color:#C9CBD0}
.svc li{display:flex;gap:10px;align-items:center}
.svc li::before{content:"";width:7px;height:7px;background:var(--accent);display:block;flex:none}
.svc a{margin-top:auto;font-size:15px;font-weight:600;color:var(--accent-deep);text-decoration:none}
.svc.dark a{color:var(--accent-2)}

/* INDUSTRIES */
.ind{border:1px solid var(--line-l);background:#fff;border-radius:12px;padding:22px 14px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;color:#121315;font-size:14px;font-weight:600}
.ind svg{width:28px;height:28px;stroke:#121315;fill:none;stroke-width:1.8}

/* PROCESS */
.step{background:#fff;border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:16px;border-top:4px solid var(--accent);color:#121315}
.step .mono{color:var(--mute-2)}
.step h3{font-size:24px;font-weight:700;letter-spacing:-.02em}
.step p{font-size:16px;line-height:1.5;color:var(--body)}

/* WHY */
.why{border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:12px;background:rgba(255,255,255,.015)}
.why svg{width:28px;height:28px;stroke:var(--accent-2);fill:none;stroke-width:2}
.why h3{font-size:21px;font-weight:700;letter-spacing:-.02em}
.why p{font-size:15px;line-height:1.5;color:#C9CBD0}

/* PARTNERS */
.logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:100%}
.logos div{border:1px solid var(--line-l);border-radius:10px;height:72px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:var(--mute-2)}
@media (max-width:980px){.logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.logos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* FAQ */
.faqgrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px}
@media (max-width:900px){.faqgrid{grid-template-columns:1fr;gap:32px}}
.faq{display:flex;flex-direction:column;border-top:1px solid var(--line-l)}
.faq details{border-bottom:1px solid var(--line-l)}
.faq summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:19px;font-weight:700;letter-spacing:-.01em;color:#121315}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:'Geist Mono',ui-monospace,monospace;font-size:22px;color:var(--accent);flex:none;transition:transform .2s ease}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 22px;font-size:16px;line-height:1.55;color:var(--body);max-width:68ch}

/* CTA */
.cta{position:relative;margin:0 var(--gut) clamp(72px,9vw,120px);border-radius:20px;overflow:hidden;isolation:isolate;background:#0B0C0E;color:var(--paper)}
.cta canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.cta .shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,12,14,.9) 0%,rgba(11,12,14,.6) 50%,rgba(11,12,14,.15) 100%)}
.cta .in{position:relative;z-index:2;padding:clamp(48px,6vw,80px);display:flex;flex-direction:column;gap:20px;max-width:720px}
.cta h2{font-size:clamp(34px,4.6vw,60px);line-height:.98;font-weight:800}
.cta p{font-size:18px;line-height:1.5;color:#D6D4CE;max-width:540px}
.cta .ctas{opacity:1;animation:none}

/* FOOTER */
footer{background:var(--ink);color:var(--paper);padding:64px var(--gut) 40px;display:flex;flex-direction:column;gap:48px;border-top:1px solid var(--line)}
.fgrid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:40px}
@media (max-width:820px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.fgrid{grid-template-columns:1fr}}
.fcol{display:flex;flex-direction:column;gap:12px}
.fcol .mono{color:var(--mute);font-size:11px}
.fcol a{color:var(--paper);font-size:15px;text-decoration:none;opacity:.85}
.fcol a:hover{opacity:1}
.fcol p{font-size:15px;line-height:1.5;color:var(--mute);max-width:340px}
.fbase{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px;font-size:13px;color:var(--mute)}
.fbase div{display:flex;gap:24px}
.fbase a{color:var(--mute);text-decoration:none}

@media (prefers-reduced-motion:reduce){
  h1 .line span,.lede,.ctas,.proof,.stats{animation:none;transform:none;opacity:1}
  .rv,.js .rv{transition:none;opacity:1;transform:none}
  html{scroll-behavior:auto}
}
:focus-visible{outline:2px solid var(--accent-3);outline-offset:3px}


/* inner page hero */
.phero{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);padding:clamp(64px,9vw,120px) var(--gut) clamp(56px,7vw,96px);display:flex;flex-direction:column;gap:20px}
.phero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.phero .shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,12,14,.96) 0%,rgba(11,12,14,.86) 45%,rgba(11,12,14,.35) 100%)}
.phero > *:not(canvas):not(.shade){position:relative;z-index:2}
.phero h1{font-size:clamp(40px,6vw,80px);line-height:.96;letter-spacing:-.04em;font-weight:800;max-width:900px}
.phero p{font-size:clamp(16px,1.4vw,20px);line-height:1.5;color:#D6D4CE;max-width:600px}
.nav nav a[aria-current="page"]{opacity:1;border-bottom:2px solid var(--accent);padding-bottom:4px}
/* pricing */
.toggle{display:inline-flex;border:1px solid var(--line-l);background:#fff;padding:4px;border-radius:999px;gap:2px}
.toggle button{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:none;border:0;padding:10px 18px;border-radius:999px;cursor:pointer;color:var(--mute-2);font-weight:600}
.toggle button[aria-pressed="true"]{background:#121315;color:var(--paper)}
.save{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2)}
.save b{background:var(--accent);color:#fff;padding:4px 8px;border-radius:4px;font-weight:600}
.plan{background:#fff;border:1px solid var(--line-l);border-radius:16px;padding:36px;display:flex;flex-direction:column;gap:16px;color:#121315;position:relative}
.plan.feat{background:#121315;color:var(--paper);border-color:#121315}
.plan .badge{position:absolute;top:0;right:0;background:var(--accent);color:#fff;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;border-radius:0 16px 0 10px;font-weight:600}
.plan .name{font-size:24px;font-weight:800;letter-spacing:-.02em}
.plan .for{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2)}
.plan.feat .for{color:var(--mute)}
.price{display:flex;align-items:baseline;gap:8px;font-variant-numeric:tabular-nums}
.price .amt{font-size:56px;font-weight:800;letter-spacing:-.04em;line-height:1}
.price .per{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2)}
.plan.feat .per{color:var(--mute)}
.psub{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-deep);min-height:14px}
.plan.feat .psub{color:var(--accent-3)}
.plan p{font-size:15px;line-height:1.5;color:var(--body)}
.plan.feat p{color:#C9CBD0}
.plan ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;font-size:15px;color:var(--body)}
.plan.feat ul{color:#C9CBD0}
.plan li{display:flex;gap:10px;align-items:flex-start;line-height:1.4}
.plan li::before{content:"";width:7px;height:7px;background:var(--accent);display:block;flex:none;margin-top:7px}
.plan .btn{margin-top:auto;width:100%}
.setup{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--line-l);border-radius:12px;padding:20px 22px;background:#fff;color:#121315;font-size:15px;line-height:1.5}
.setup .mono{color:var(--accent-deep);flex:none;padding-top:3px}
table.cmp{width:100%;border-collapse:collapse;font-size:15px;color:#121315}
table.cmp th,table.cmp td{padding:14px 12px;border-bottom:1px solid var(--line-l);text-align:left;vertical-align:top}
table.cmp th{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2);font-weight:600}
table.cmp td:not(:first-child){text-align:center;width:18%}
table.cmp td svg{width:18px;height:18px;stroke:var(--accent);fill:none;stroke-width:2.4}
table.cmp td.no{color:#C9C5BB}
.tblwrap{overflow-x:auto}
/* process */
.timeline{display:grid;grid-template-columns:120px minmax(0,1fr);gap:0}
.tl{display:contents}
.tl .when{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-deep);padding:28px 0;border-top:1px solid var(--line-l)}
.tl .what{padding:28px 0 28px 24px;border-top:1px solid var(--line-l);border-left:1px solid var(--line-l);display:flex;flex-direction:column;gap:10px;color:#121315}
.tl h3{font-size:24px;font-weight:700;letter-spacing:-.02em}
.tl p{font-size:16px;line-height:1.55;color:var(--body);max-width:64ch}
.tl ul{margin:4px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:15px;color:var(--body)}
.tl li{display:flex;gap:10px;align-items:center}
.tl li::before{content:"";width:7px;height:7px;background:var(--accent);display:block;flex:none}
@media (max-width:640px){.timeline{grid-template-columns:1fr}.tl .when{padding-bottom:0;border-top:1px solid var(--line-l)}.tl .what{border-top:0;border-left:0;padding-left:0;padding-top:10px}}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:760px){.split{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line-l);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;color:#121315}
.card h3{font-size:22px;font-weight:700;letter-spacing:-.02em}
.card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:15px;color:var(--body)}
.card li{display:flex;gap:10px;align-items:center}
.card li::before{content:"";width:7px;height:7px;background:var(--accent);display:block;flex:none}
.card.dark{background:#121315;color:var(--paper);border-color:#121315}
.card.dark ul{color:#C9CBD0}
/* results */
.case{background:#fff;border:1px solid var(--line-l);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;color:#121315}
.case .shot{aspect-ratio:16/10;background:#1B1D22;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;color:var(--paper)}
.case .shot em{font-style:normal;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.case .shot b{font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1}
.case .meta{padding:20px 24px;display:flex;flex-direction:column;gap:6px}
.case .meta strong{font-size:16px}
.case .meta span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2)}
/* contact form */
.form{background:#fff;border:1px solid var(--line-l);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px;color:#121315}
.form label{display:flex;flex-direction:column;gap:6px;font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute-2)}
.form input,.form select,.form textarea{font:inherit;font-family:'Geist',sans-serif;font-size:15px;padding:13px 14px;border:1px solid var(--line-l);border-radius:8px;background:#FBFAF7;color:#121315}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.form .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:520px){.form .two{grid-template-columns:1fr}}
.form .fine{font-size:13px;color:var(--mute-2);line-height:1.5}
.form .ok{display:none;padding:14px 16px;border-radius:8px;background:#EEF7EA;color:#245A1F;font-size:15px}
.form.sent .ok{display:block}
.contactcol{display:flex;flex-direction:column;gap:18px;color:#121315}
.contactcol .item{display:flex;flex-direction:column;gap:4px}
.contactcol .item b{font-size:18px}
.contactcol .item span{font-size:15px;color:var(--body)}


/* ===== additions: logo, mobile nav, work cards, legal pages, form states ===== */
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--accent);color:#fff;padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:700}
.skip:focus{left:12px}
.brand{gap:0}
.brand img{height:40px;width:auto;display:block}
footer .brand img{height:52px}
.navtoggle{display:none;background:none;border:1px solid rgba(255,255,255,.22);border-radius:8px;width:44px;height:40px;cursor:pointer;color:var(--paper);flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;flex:none}
.navtoggle span{display:block;width:18px;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.navtoggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navtoggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.navtoggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:820px){
  .nav{flex-wrap:wrap;gap:12px;padding-block:12px}
  .brand img{height:34px}
  .navtoggle{display:flex}
  .nav nav + .btn{margin-left:auto}
  .nav .btn.small{padding:10px 14px}
  .nav nav{display:none;order:9;width:100%;flex-direction:column;gap:0;padding:6px 0 4px;border-top:1px solid rgba(255,255,255,.08);margin-top:4px}
  .nav.open nav{display:flex}
  .nav nav a{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:16px;opacity:1}
  .nav nav a[aria-current="page"]{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:14px;color:var(--accent-3)}
}
.work{background:#fff;border:1px solid var(--line-l);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;color:#121315;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}
a.work:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(18,19,21,.12)}
.work img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;border-bottom:1px solid var(--line-l);background:#1B1D22}
.work .meta{padding:18px 22px;display:flex;flex-direction:column;gap:5px}
.work .meta strong{font-size:16px;line-height:1.3}
.work .meta span{font-family:'Geist Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2)}
.work .meta .ext{font-style:normal;font-size:14px;color:var(--accent-deep);font-weight:600;margin-top:6px}
.work.dark{background:#121315;color:var(--paper);border-color:#121315;justify-content:center}
.work.dark .meta{padding:32px 28px;gap:12px}
.work.dark .meta strong{font-size:24px;letter-spacing:-.02em;line-height:1.1}
.work.dark .meta span{color:var(--mute)}
.work.dark .meta p{font-size:15px;line-height:1.5;color:#C9CBD0}
.dark .work,.dark2 .work{border-color:transparent}
.measure{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;background:#121315;color:var(--paper);border-radius:16px;padding:32px;border:1px solid var(--line)}
@media (max-width:900px){.measure{grid-template-columns:repeat(2,minmax(0,1fr))}}
.measure .stat b{font-size:34px}
.measure .stat.hot b{color:var(--accent-3)}
.measure .note{grid-column:1/-1;font-size:14px;color:var(--mute);line-height:1.5;border-top:1px solid var(--line);padding-top:16px;margin-top:4px}
.legal{max-width:72ch;color:var(--body);font-size:16px;line-height:1.6;display:flex;flex-direction:column;gap:14px}
.legal h2{font-size:24px;letter-spacing:-.02em;color:#121315;margin-top:22px}
.legal ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.legal .eff{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2)}
.form .err{display:none;padding:14px 16px;border-radius:8px;background:#F8E8E4;color:#7A2A0C;font-size:15px}
.form.error .err{display:block}
.form button[disabled]{opacity:.6;cursor:default}
.stat.onlight b{color:#121315}

/* v3 additions */


/* v4: hero sizing and inner page heroes match the home hero */
.hero{min-height:min(84svh,900px)}
h1{font-size:clamp(40px,6vw,80px)}
.phero{min-height:min(62svh,620px);justify-content:flex-end;padding-bottom:clamp(48px,7vw,80px)}
.phero h1{font-size:clamp(36px,5.2vw,68px);letter-spacing:-.04em}
.phero .shade{background:linear-gradient(180deg,rgba(11,12,14,.35) 0%,rgba(11,12,14,0) 22%,rgba(11,12,14,0) 70%,rgba(11,12,14,.9) 100%)}
.phero h1,.phero p,.phero .eyebrow{text-shadow:0 2px 24px rgba(11,12,14,.85),0 0 2px rgba(11,12,14,.9)}
@media (max-width:820px){
  .hero{min-height:min(78svh,760px)}
  .hero .copy{justify-content:flex-end;padding-top:clamp(120px,22vh,200px);padding-bottom:36px}
  .phero{min-height:min(56svh,520px);padding-top:clamp(96px,18vh,160px)}
  .phero .shade{background:linear-gradient(180deg,rgba(11,12,14,.3) 0%,rgba(11,12,14,0) 30%,rgba(11,12,14,.55) 70%,rgba(11,12,14,.95) 100%)}
}

.hero .vignette{background:linear-gradient(180deg,rgba(11,12,14,.35) 0%,rgba(11,12,14,0) 22%,rgba(11,12,14,0) 78%,rgba(11,12,14,.9) 100%)}
.hero .copy h1,.hero .copy .lede,.hero .copy .eyebrow,.hero .proof{text-shadow:0 2px 24px rgba(11,12,14,.85),0 0 2px rgba(11,12,14,.9)}
@media (max-width:820px){.hero .vignette{background:linear-gradient(180deg,rgba(11,12,14,.3) 0%,rgba(11,12,14,0) 30%,rgba(11,12,14,.55) 70%,rgba(11,12,14,.95) 100%)}}

.band-marquee{background:var(--accent);color:#fff;overflow:hidden;border-top:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15)}
.band-marquee .track{display:flex;align-items:center;gap:28px;width:max-content;padding:16px 0;animation:marquee 38s linear infinite;font-weight:700;font-size:clamp(15px,1.3vw,19px);letter-spacing:-.01em;white-space:nowrap}
.band-marquee .track i{width:8px;height:8px;background:#121315;display:block;flex:none;border-radius:50%}
.band-marquee:hover .track{animation-play-state:paused}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}
@media (prefers-reduced-motion:reduce){.band-marquee .track{animation:none}}
.deal{position:relative;overflow:hidden}
.dealgrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:48px;align-items:start}
@media (max-width:820px){.dealgrid{grid-template-columns:1fr}}
.dealcol{display:flex;flex-direction:column;gap:18px}
.deallist{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}
.deallist li{font-size:clamp(20px,2.2vw,30px);font-weight:700;letter-spacing:-.02em;line-height:1.15;padding:18px 0;border-top:1px solid var(--line);display:flex;gap:18px;align-items:baseline}
.deallist li:last-child{border-bottom:1px solid var(--line)}
.deallist li::before{content:"";width:12px;height:12px;flex:none;display:block;transform:translateY(-2px)}
.deallist.you li{color:#C9CBD0}
.deallist.you li::before{background:var(--mute-2)}
.deallist.us li{color:var(--paper)}
.deallist.us li::before{background:var(--accent)}
.js .deallist li{opacity:0;transform:translateX(-14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.1,1)}
.js .rv.in .deallist li{opacity:1;transform:none}
.js .rv.in .deallist li:nth-child(1){transition-delay:.05s}.js .rv.in .deallist li:nth-child(2){transition-delay:.12s}.js .rv.in .deallist li:nth-child(3){transition-delay:.19s}.js .rv.in .deallist li:nth-child(4){transition-delay:.26s}.js .rv.in .deallist li:nth-child(5){transition-delay:.33s}.js .rv.in .deallist li:nth-child(6){transition-delay:.40s}.js .rv.in .deallist li:nth-child(7){transition-delay:.47s}.js .rv.in .deallist li:nth-child(8){transition-delay:.54s}.js .rv.in .deallist li:nth-child(9){transition-delay:.61s}
.deallist.us li:hover{color:var(--accent-3)}

/* v5: brand kit lockup is wider than the old stacked mark; keep nav on one row on phones */
@media (max-width:820px){.nav .brand img{height:26px}}


/* ===== site fixes (not in the artifact) ===== */
/* 2026-10-27: the CTA card's bottom margin collapsed out of its padding-less section and showed as dark
   page background against the footer. flow-root keeps the margin inside, so the card sits centred in paper. */
section.band:has(> .cta){display:flow-root}
