:root{--paper:#ffffff;--paper-2:#f7f7f7;--ink:#111111;--ink-2:#3a3a3a;--muted:#6b6b6b;--line:#1a1717;--accent:#b83212;--accent-hot:#ff4a1c;--accent-on-dark:#ffb39c;--on-accent:#ffffff;--accent-ink:#7a1f08;--moss:#19382b;--gold:#c89a3a;--hair:1px solid #ececec;--hair-strong:1px solid #e6e6e6}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:88px;overflow-x:hidden}
html,body{background:var(--paper);color:var(--ink);font-family:"Inter Tight",sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
::selection{background:var(--accent);color:var(--paper)}
img{max-width:100%;height:auto;display:block}
.mono{font-family:"Inter Tight",sans-serif;font-weight:400;letter-spacing:.02em}
.serif{font-family:"Inter Tight",sans-serif;}
.container{max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,28px)}
.rule{border-top:var(--hair-strong)}

nav.top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px 28px;border-bottom:1px solid #eee;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:saturate(140%) blur(8px)}
.brand{display:flex;align-items:baseline;gap:10px}
.brand > .mono{display:none}
.brand .logo{font-family:"Inter Tight",sans-serif;font-weight:650;font-size:26px;letter-spacing:-.03em}
.brand .logo i{font-style:normal;color:var(--accent)}
.brand .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(184,50,18,.18);animation:pulse 2s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(184,50,18,0)}}
nav.top ul{display:flex;gap:18px;justify-content:center;list-style:none;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
nav.top ul a,nav.top ul button{font-family:"Inter Tight",sans-serif;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500}
nav.top ul a{padding:6px 0;border-bottom:1px dashed transparent}
nav.top ul a:hover{border-color:var(--ink)}
.navcta{justify-self:end;display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:1px solid #e4e4e4;border-radius:999px;font-family:"Inter Tight",sans-serif;font-size:14px;letter-spacing:0;text-transform:none;background:#fff;transition:.2s ease;text-align:center;cursor:pointer;position:relative;overflow:hidden;font-weight:600;color:var(--ink)}
.btn:hover{background:#f6f6f6;color:var(--ink)}
.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn.primary:hover{background:#9a2a0f;border-color:#9a2a0f;color:#fff}
.btn .arrow{transition:transform .25s}
.btn:hover .arrow{transform:translateX(4px)}
.btn.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 28%,rgba(255,250,241,.22) 48%,transparent 62%);transform:translateX(-130%);pointer-events:none}
.btn.primary:hover::after{transform:translateX(130%);transition:transform .65s ease}

.hero{padding:72px 0 28px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.eyebrow{display:flex;align-items:center;gap:10px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2);margin-bottom:18px}
.eyebrow .bar{height:1px;width:36px;background:var(--ink)}
h1.display{font-family:"Inter Tight",sans-serif;font-weight:750;font-size:clamp(40px,5vw,56px);line-height:1.08;letter-spacing:-.03em;margin-bottom:22px}
h1.display em{font-style:normal;color:var(--accent);font-weight:inherit}
.hero p.lead{font-size:18px;line-height:1.55;color:var(--ink-2);max-width:46ch;margin-bottom:26px}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.hero-note{margin-top:16px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero-art{position:relative;perspective:1400px}
.hero-art .dash{
  border:1.5px solid var(--ink);border-radius:18px;overflow:hidden;
  box-shadow:0 12px 32px rgba(17,17,17,.08);
  background:#ffffff;
  transform-style:preserve-3d;
  transition:transform .45s cubic-bezier(.2,.7,.2,1);
  animation:floaty 7s ease-in-out infinite;
}
.hero-art .dash svg,.hero-art .dash img{width:100%;height:auto;display:block}
.sale-toast{
  position:absolute;left:-18px;bottom:28px;z-index:2;
  display:flex;flex-direction:column;gap:2px;
  background:var(--moss);color:var(--paper);
  border:1.5px solid var(--ink);border-radius:14px;
  padding:12px 16px 12px 18px;min-width:210px;
  box-shadow:0 12px 32px rgba(17,17,17,.08);
  animation:toastIn .8s .9s cubic-bezier(.2,.7,.2,1) both;
}
.sale-toast span{font-family:"Inter Tight",sans-serif;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#d8cfc0}
.sale-toast strong{font-family:"Inter Tight",sans-serif;font-weight:420;font-size:16px}
.sale-toast em{font-style:italic;color:var(--accent-on-dark);font-family:"Inter Tight",sans-serif;font-size:20px}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes toastIn{from{opacity:0;transform:translate(-12px,18px) scale(.96)}to{opacity:1;transform:none}}
.hero-art .dash polyline[stroke="#ff4a1c"]{
  stroke-dasharray:640;stroke-dashoffset:640;animation:drawLine 1.6s .4s ease forwards
}
@keyframes drawLine{to{stroke-dashoffset:0}}

section{padding:96px 0;position:relative}
.section-head{display:grid;grid-template-columns:140px 1fr;gap:36px;align-items:start;padding-bottom:42px}
.section-num{font-family:"Inter Tight",sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);padding-top:10px;border-top:2px solid var(--ink);align-self:start;width:96px}
.section-title{font-family:"Inter Tight",sans-serif;font-weight:750;font-size:clamp(32px,4vw,42px);line-height:1.12;letter-spacing:-.03em}
.section-title em{font-style:normal;color:var(--accent)}
.section-sub{margin-top:18px;font-size:17px;line-height:1.55;color:var(--ink-2);max-width:62ch}

.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:var(--hair-strong);border-bottom:var(--hair-strong)}
.metric{padding:28px 24px 32px;border-right:var(--hair);border-bottom:var(--hair);min-height:220px}
.metric:nth-child(3n){border-right:0}
.metric .k{font-family:"Inter Tight",sans-serif;font-weight:700;font-size:clamp(42px,5vw,64px);letter-spacing:-.03em;line-height:.9}
.metric .k em{font-style:normal;color:var(--accent)}
.metric h3{font-family:"Inter Tight",sans-serif;font-weight:450;font-size:22px;margin:14px 0 8px}
.metric p{font-size:14.5px;line-height:1.55;color:var(--ink-2);max-width:36ch}
.spark{height:36px;margin:14px 0 4px}
.spark svg{width:100%;height:36px}

.pillars{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.acc details{border-bottom:var(--hair);padding:18px 0}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:18px;font-family:"Inter Tight",sans-serif;font-size:24px;font-weight:420}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-family:"Inter Tight",sans-serif;color:var(--accent)}
.acc details[open] summary::after{content:"−"}
.acc details p{margin-top:10px;font-size:15px;line-height:1.65;color:var(--ink-2);max-width:58ch}

.case-card{
  display:grid;grid-template-columns:1.2fr .8fr;gap:0;
  border:1.5px solid var(--ink);border-radius:16px;overflow:hidden;background:#ffffff;
  box-shadow:0 12px 32px rgba(17,17,17,.08);
}
.case-card .copy{padding:36px}
.case-card .quote{font-family:"Inter Tight",sans-serif;font-weight:380;font-size:clamp(22px,2.6vw,30px);line-height:1.25;letter-spacing:-.015em}
.case-card .who{margin-top:18px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.case-card .stats{display:flex;gap:22px;margin-top:22px;flex-wrap:wrap}
.case-card .stat b{display:block;font-family:"Inter Tight",sans-serif;font-size:32px;font-weight:700}
.case-card .stat b em{font-style:normal;color:var(--accent)}
.case-card .stat small{font-family:"Inter Tight",sans-serif;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.case-card .visual{background:var(--ink);display:grid;place-items:center;padding:28px}

.band{background:var(--ink);color:var(--paper);padding:72px 0}
.band .section-num{color:#c8bdae;border-color:var(--accent-hot)}
.band .section-title{color:var(--paper)}
.band .section-sub{color:#c8bdae}
.band-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.band img,.band svg{border-radius:16px;border:1px solid rgba(255,255,255,.18);width:100%;height:auto;display:block}
.case-card .visual svg{width:100%;height:auto;display:block}

.int-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:var(--hair-strong);border-bottom:var(--hair-strong)}
.int{padding:28px 22px;border-right:var(--hair)}
.int:last-child{border-right:0}
.int .ico{width:42px;height:42px;border:1.5px solid var(--ink);border-radius:10px;display:grid;place-items:center;margin-bottom:16px;background:#ffffff}
.int h3{font-family:"Inter Tight",sans-serif;font-weight:450;font-size:22px;margin-bottom:10px}
.int p{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.int ul{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:6px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}

.pricing{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:var(--hair-strong);border-bottom:var(--hair-strong);margin-top:24px}
.plan{padding:32px 22px;border-right:var(--hair);display:flex;flex-direction:column;gap:15px;position:relative}
.plan:last-child{border-right:0}
.plan.featured{background:var(--ink);color:var(--paper)}
.plan.featured *{color:inherit}
.plan.featured .price small{color:#c8bdae}
.plan .name{font-family:"Inter Tight",sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.plan .price{font-family:"Inter Tight",sans-serif;font-weight:700;font-size:48px;line-height:.9;letter-spacing:-.035em}
.plan .price small{font-size:14px;font-family:"Inter Tight",sans-serif;display:block;color:var(--muted);margin-top:6px;text-transform:uppercase}
.plan ul{list-style:none;display:flex;flex-direction:column;gap:11px;font-size:14px}
.plan ul li{display:flex;gap:10px;align-items:flex-start;line-height:1.4}
.plan ul li::before{content:"→";color:var(--accent);font-family:"Inter Tight",sans-serif;flex-shrink:0}
.plan .ribbon{position:absolute;top:14px;right:14px;font-family:"Inter Tight",sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:var(--accent);color:var(--on-accent);padding:5px 10px;border-radius:4px}
.plan .btn{align-self:flex-start;margin-top:auto}

.demo{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.phone{
  max-width:320px;margin:0 auto;
  filter:drop-shadow(16px 16px 0 var(--ink));
}
.phone svg{width:100%;height:auto;display:block}
.nums{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:var(--hair-strong);border-bottom:var(--hair-strong);margin-top:36px}
.num{padding:28px 18px;border-right:var(--hair);text-align:center}
.num:last-child{border-right:0}
.num b{display:block;font-family:"Inter Tight",sans-serif;font-size:42px;font-weight:700;letter-spacing:-.03em}
.num b em{font-style:normal;color:var(--accent)}
.num small{display:block;margin-top:8px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.contact-grid .field{display:flex;flex-direction:column;gap:6px}
.contact-grid .field span{font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.contact-grid input[type=text],.contact-grid input[type=email],.contact-grid input[type=tel],.contact-grid textarea{
  font-family:"Inter Tight",sans-serif;font-size:15px;padding:11px 14px;border:1.5px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);outline:none
}
.contact-grid input:focus,.contact-grid textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(184,50,18,.18)}
.contact-grid textarea{resize:vertical;min-height:96px}
.contact-grid .checks{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:4px}
.contact-grid .checks label{display:inline-flex;align-items:center;gap:6px;font-size:14px;cursor:pointer;padding:6px 10px;border:1px dashed rgba(20,17,17,.3);border-radius:999px}
.contact-grid .checks label:has(input:checked){background:var(--ink);color:var(--paper);border-color:var(--ink);border-style:solid}
#contact-form{background:#ffffff;border:1.5px solid var(--ink);border-radius:14px;padding:32px;box-shadow:0 12px 32px rgba(17,17,17,.08);display:flex;flex-direction:column;gap:18px}
#form-status{display:none;font-size:14px;line-height:1.5;padding:14px;border-radius:8px}
#form-status.ok{display:block;background:#e8f4ec;border:1px solid var(--moss);color:var(--moss)}
#form-status.err{display:block;background:#fde6df;border:1px solid var(--accent);color:var(--accent-ink)}

.faq{margin-top:8px;border-top:var(--hair-strong)}
.faq details{border-bottom:var(--hair);padding:22px 0}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:24px;font-family:"Inter Tight",sans-serif;font-weight:420;font-size:24px;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:"Inter Tight",sans-serif;font-size:24px;color:var(--accent)}
.faq details[open] summary::after{content:"−"}
.faq details p{margin-top:14px;font-size:15px;line-height:1.6;color:var(--ink-2);max-width:72ch}

.more{margin-top:36px;font-size:15px;line-height:1.65;color:var(--ink-2);max-width:78ch}
.more a{border-bottom:1px dashed var(--ink)}

footer{background:var(--ink);color:var(--paper);padding:72px 0 28px;margin-top:0}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:48px}
footer h6{font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#c8bdae;margin-bottom:16px}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14px}
footer ul a:hover{color:var(--accent-hot)}
.bigword{font-family:"Inter Tight",sans-serif;font-weight:750;font-size:clamp(80px,18vw,220px);line-height:.85;letter-spacing:-.04em;margin-top:42px;border-top:1px solid rgba(255,255,255,.18);padding-top:28px}
.bigword em{font-style:normal;color:var(--accent-hot)}
.foot-line{margin-top:36px;border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9a8e7f}

.js .reveal{opacity:0;transform:translateY(22px)}
.js .reveal.in{opacity:1;transform:none;transition:opacity .85s ease, transform .85s cubic-bezier(.2,.7,.2,1)}
.js .reveal[style*="--d"]{transition-delay:var(--d,0s)}

.story{padding-top:72px}
.story-steps{
  list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border:1.5px solid var(--ink);border-radius:16px;overflow:hidden;background:#ffffff;
  box-shadow:0 12px 32px rgba(17,17,17,.08);
  counter-reset:step;
}
.story-steps li{
  padding:32px 28px 36px;border-right:var(--hair);position:relative;
  counter-increment:step;
}
.story-steps li:last-child{border-right:0}
.story-steps li::before{
  content:counter(step, decimal-leading-zero);
  font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.16em;
  color:var(--accent);display:block;margin-bottom:14px;
}
.story-steps .t{
  display:inline-block;font-family:"Inter Tight",sans-serif;font-size:11px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
  border:1px solid rgba(20,17,17,.25);border-radius:999px;padding:4px 10px;margin-bottom:14px;
}
.story-steps h3{font-family:"Inter Tight",sans-serif;font-weight:700;font-size:28px;letter-spacing:-.02em;margin:10px 0 12px}
.story-steps p{font-size:15.5px;line-height:1.55;color:var(--ink-2);max-width:36ch}
.story-steps li:nth-child(3){background:var(--ink);color:var(--paper)}
.story-steps li:nth-child(3) p{color:#d8cfc0}
.story-steps li:nth-child(3) .t{color:var(--accent-on-dark);border-color:rgba(255,255,255,.28)}
.story-steps li:nth-child(3) h3{color:var(--paper)}
.story-steps li:nth-child(3)::before{color:var(--accent-hot)}

.versus{
  display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:36px;
  border:1.5px solid var(--ink);border-radius:16px;overflow:hidden;
}
.versus article{padding:28px 28px 32px}
.versus article:first-child{background:#ffffff;border-right:var(--hair-strong)}
.versus article:last-child{background:var(--moss);color:var(--paper)}
.versus .kicker{font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}
.versus article:first-child .kicker{color:var(--muted)}
.versus article:last-child .kicker{color:var(--accent-on-dark)}
.versus h3{font-family:"Inter Tight",sans-serif;font-weight:700;font-size:clamp(26px,3vw,36px);letter-spacing:-.02em;line-height:1.15;margin-bottom:16px}
.versus ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:15.5px;line-height:1.45}
.versus article:first-child ul{color:var(--ink-2)}
.versus article:last-child ul{color:#d8cfc0}
.versus li{display:flex;gap:10px}
.versus article:first-child li::before{content:"×";color:var(--accent);font-family:"Inter Tight",sans-serif;flex-shrink:0}
.versus article:last-child li::before{content:"→";color:var(--accent-hot);font-family:"Inter Tight",sans-serif;flex-shrink:0}

.gain{margin-top:48px}
.gain-kicker{font-family:"Inter Tight",sans-serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.gain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:var(--hair-strong);border-bottom:var(--hair-strong)}
.gain-grid article{padding:28px 24px 32px;border-right:var(--hair)}
.gain-grid article:last-child{border-right:0}
.gain-grid b{display:block;font-family:"Inter Tight",sans-serif;font-weight:450;font-size:24px;letter-spacing:-.015em;margin-bottom:10px}
.gain-grid p{font-size:15px;line-height:1.55;color:var(--ink-2);max-width:40ch}

.phone{animation:floaty 8s 1.2s ease-in-out infinite}

@media (max-width:1080px){
  nav.top{grid-template-columns:1fr auto}
  nav.top ul{display:none}
  .hero-grid,.pillars,.case-card,.band-grid,.demo,.contact-grid,.story-steps,.versus,.gain-grid{grid-template-columns:1fr}
  .story-steps li,.versus article:first-child,.gain-grid article{border-right:0;border-bottom:var(--hair)}
  .sale-toast{left:12px;bottom:12px}
  .metrics{grid-template-columns:1fr 1fr}
  .metric:nth-child(2n){border-right:0}
  .int-grid,.pricing{grid-template-columns:1fr 1fr}
  .int:nth-child(2n),.plan:nth-child(2n){border-right:0}
  .int,.plan{border-bottom:var(--hair)}
  .nums{grid-template-columns:1fr 1fr}
  .num:nth-child(2n){border-right:0}
  .foot-grid{grid-template-columns:1fr 1fr}
  .section-head{grid-template-columns:1fr;gap:16px}
}
@media (max-width:640px){
  nav.top{display:flex;flex-wrap:wrap;gap:12px;padding:14px 18px}
  .metrics,.int-grid,.pricing,.nums{grid-template-columns:1fr}
  .metric,.int,.plan,.num{border-right:0}
  section{padding:64px 0}
  .sale-toast{display:none}
  .hero-art .dash{animation:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
  .js .reveal{opacity:1;transform:none}
  .hero-art .dash{animation:none}
  .phone{animation:none}
}
