:root{--black:#0a0a0a;--ink:#f4f4f0;--muted:#9b9b95;--line:#2a2a28;--soft:#151514;--acid:#d6f55e;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--ink);font-family:'Archivo',Arial,sans-serif;font-size:16px;line-height:1.5}
a{color:inherit;text-decoration:none}
.shell{max-width:var(--max);margin:auto;padding-left:32px;padding-right:32px}
.site-header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - var(--max))/2 + 32px));position:sticky;top:0;z-index:10;background:rgba(10,10,10,.96);backdrop-filter:blur(10px)}
.wordmark{font-size:14px;letter-spacing:.12em;font-weight:700;display:flex;align-items:center;gap:8px}
.wordmark-muted{color:#696963}
.mark{display:flex;gap:2px;align-items:end;width:18px}
.mark i{display:block;width:4px;background:var(--acid);height:12px}
.mark i:nth-child(2){height:18px}.mark i:nth-child(3){height:8px}
.site-nav{display:flex;align-items:center;gap:34px;font-size:13px;color:var(--muted)}
.site-nav a:hover,.text-link:hover{color:var(--ink)}
.nav-cta{color:var(--ink);border:1px solid var(--line);padding:11px 16px}
.nav-cta span,.button span{color:var(--acid);margin-left:18px}
.nav-toggle{display:none;background:none;border:0}
.hero{padding-top:94px}
.eyebrow,.section-kicker,.micro-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.eyebrow{display:flex;align-items:center;gap:9px}
.pulse{width:6px;height:6px;background:var(--acid);border-radius:50%;display:inline-block;box-shadow:0 0 13px var(--acid)}
.hero-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:10%;padding-top:27px}
.hero-copy h1{font-size:clamp(60px,8vw,110px);line-height:.94;letter-spacing:-.075em;margin:0;font-weight:600}
.hero h1 em,.section-heading em,.trust-layout em,.cta-copy em{font-style:normal;color:var(--acid)}
.hero-intro{color:#bdbdb7;font-size:18px;max-width:480px;margin:35px 0 29px;line-height:1.55}
.hero-actions{display:flex;align-items:center;gap:28px}
.button{font:inherit;font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:15px 18px;border:1px solid transparent;cursor:pointer}
.button-light{background:var(--ink);color:var(--black)}.button-light:hover{background:var(--acid)}
.text-link{color:var(--muted);font-size:12px}.text-link span{margin-left:9px;color:var(--acid)}
.hero-aside{padding-top:8px;max-width:270px}.aside-line{height:1px;background:var(--acid);width:40px;margin-bottom:26px}
.micro-label{margin:0 0 12px}.aside-statement{font-size:32px;line-height:1.08;letter-spacing:-.05em;margin:0;font-weight:500}
.aside-statement span{color:var(--acid)}.aside-note{color:var(--muted);font-size:12px;margin-top:22px;max-width:220px}
.stat-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:95px;padding:21px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stat{display:flex;gap:15px;align-items:flex-start;border-right:1px solid var(--line);font-size:12px;color:#bdbdb7;line-height:1.25}
.stat strong{color:var(--acid);font-weight:400}.stat-end{border:0;justify-content:flex-end;color:var(--muted)}
.tiny-arrow{font-size:20px;color:var(--acid);line-height:1}
.chart-section{padding-top:125px}.section-kicker{display:flex;align-items:center;gap:16px}.rule{height:1px;background:var(--line);width:60px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:27px 0 42px}
.section-heading h2,.trust-layout h2,.cta-copy h2,.voices-heading h2,.case-study-heading h2{font-size:clamp(38px,5vw,66px);line-height:.99;letter-spacing:-.07em;font-weight:500;margin:0}
.section-heading p,.voices-heading p,.case-study-heading p{max-width:315px;color:var(--muted);font-size:14px;margin:0 3% 4px 0}
.chart-card{background:var(--soft);border:1px solid var(--line);padding:27px 30px 20px}.chart-top{display:flex;justify-content:space-between;align-items:start}
.chart-top h3{font-size:18px;font-weight:500;margin:0;letter-spacing:-.03em}.chart-meta{font-size:10px;color:var(--muted);padding-top:4px}
.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 7px 0 18px}.legend-dot:first-child{margin-left:0}
.dot-current{background:#5d5d58}.dot-fixed{background:var(--acid)}.chart-wrap{width:100%;overflow:hidden;margin-top:24px}
.comparison-chart{display:block;width:100%;height:auto;min-height:250px}.axis{stroke:#777770;stroke-width:1}.grid-line{stroke:#343430;stroke-width:1;stroke-dasharray:2 5}
.axis-label,.bar-label{fill:#85857e;font-family:'Archivo',Arial,sans-serif;font-size:11px}.bar-label{font-size:12px;fill:#bdbdb7}
.bar-current{fill:#5d5d58}.bar-fixed{fill:var(--acid)}.value{fill:var(--acid);font-size:11px;font-weight:600}
.chart-footnote{border-top:1px solid var(--line);padding-top:15px;margin:0;color:var(--muted);font-size:11px}.chart-footnote span{color:var(--acid);margin-right:7px}
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);margin-top:40px}.pain-grid article{padding:21px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.card-number{font-size:11px;color:var(--acid)}.pain-grid h3{font-weight:500;font-size:18px;letter-spacing:-.03em;margin:24px 0 9px}.pain-grid p{font-size:13px;color:var(--muted);margin:0;line-height:1.55}
.trust-section,.voices-section,.case-study-section{padding-top:124px}.trust-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:28px 0 73px}.trust-lead{color:var(--muted);font-size:15px;max-width:310px;margin-top:30px}
.service{border-top:1px solid var(--line);display:grid;grid-template-columns:40px 1fr 20px;gap:10px;padding:22px 0}.service:last-child{border-bottom:1px solid var(--line)}.service>span{color:var(--acid);font-size:11px}.service h3{margin:0 0 7px;font-size:16px;font-weight:500}.service p{margin:0;color:var(--muted);font-size:13px;max-width:350px}.service b{color:var(--acid);font-weight:400}
.trust-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:19px 0;color:#c9c9c3;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.trust-label{color:var(--muted);text-transform:none;letter-spacing:0}.trust-bar i{color:var(--acid);font-style:normal;margin:0 5px}
.voices-heading,.case-study-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:27px 0 42px}.voices-heading h2 em,.case-study-heading h2 em{font-style:normal;color:var(--acid)}
.testimonial-carousel-wrap{position:relative}.testimonial-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--acid) var(--line);padding:0 0 16px}
.testimonial-card{background:var(--soft);border:1px solid var(--line);display:grid;grid-template-columns:minmax(260px,.9fr) 1fr;flex:0 0 min(760px,calc(100% - 80px));min-width:0;scroll-snap-align:start}.testimonial-media{background:#050505;min-height:100%;display:flex}.testimonial-media video{display:block;width:100%;height:100%;min-height:315px;object-fit:cover}
.testimonial-body{padding:28px 30px 25px;display:flex;flex-direction:column;align-items:flex-start}.client-logo{display:block;width:auto;max-width:130px;height:34px;object-fit:contain;object-position:left center;margin-bottom:16px;filter:grayscale(1) brightness(0) invert(1);opacity:.86}
.review-label{color:var(--acid);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 23px}.testimonial-quote{font-size:19px;line-height:1.35;letter-spacing:-.025em;margin:0;color:#e5e5df}.testimonial-name{margin:25px 0 0;color:var(--acid);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.testimonial-name span{color:var(--muted);letter-spacing:.02em;text-transform:none}
.carousel-control{position:absolute;top:50%;z-index:1;width:38px;height:38px;border:1px solid var(--line);background:var(--black);color:var(--acid);transform:translateY(-50%);cursor:pointer}.carousel-control:hover{background:var(--acid);color:var(--black)}.carousel-prev{left:-19px}.carousel-next{right:-19px}.carousel-status{display:flex;align-items:center;gap:12px;margin-top:13px;color:var(--muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.carousel-count{color:var(--acid)}.carousel-status-line{width:54px;height:1px;background:var(--line)}
.cta-section{padding-top:124px;padding-bottom:80px}.cta-frame{background:var(--acid);color:var(--black);display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:58px 62px}.cta-frame .eyebrow{color:#3f4a1b}.cta-frame .pulse{background:var(--black);box-shadow:none}.cta-copy h2{margin-top:25px}.cta-copy p{max-width:370px;color:#424d22;font-size:14px;margin-top:30px}.cta-copy .performance-note{color:var(--black);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.08em;margin-top:25px}
.cta-frame .cta-copy em{color:var(--black)}
.contact-form{display:flex;flex-direction:column;align-items:stretch;padding-top:4px}.contact-form label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin:11px 0 6px}.contact-form input,.contact-form textarea{font:inherit;background:transparent;color:var(--black);border:0;border-bottom:1px solid #788a2c;border-radius:0;padding:8px 0;outline:0;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--black)}.contact-form textarea::placeholder{color:#69762d}.contact-form .button{align-self:flex-start;margin-top:22px;background:var(--black);color:var(--ink)}.contact-form .button:hover{background:#333}.contact-form small{font-size:11px;color:#59652a;margin-top:15px}.contact-form small a{text-decoration:underline;color:var(--black)}
.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:21px;padding-bottom:27px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.site-footer .wordmark{color:var(--ink);font-size:11px}
.hp-label,.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.testimonial-carousel:focus-visible{outline:2px solid var(--acid);outline-offset:6px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.shell{padding-left:20px;padding-right:20px}.site-header{height:70px;padding:0 20px}.nav-toggle{display:flex;flex-direction:column;gap:4px;padding:8px}.nav-toggle span{display:block;background:var(--ink);height:1px;width:20px}.site-nav{display:none;position:absolute;z-index:3;top:69px;left:0;right:0;background:var(--black);border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{padding:14px 0;border-bottom:1px solid var(--line)}.site-nav .nav-cta{padding:13px 14px;margin-top:13px}.hero{padding-top:61px}.hero-grid,.trust-layout,.cta-frame{grid-template-columns:1fr;gap:50px}.hero-copy h1{font-size:clamp(58px,17vw,90px)}.hero-intro{font-size:16px;margin-top:27px}.hero-aside{padding-top:0}.stat-strip{grid-template-columns:1fr 1fr;margin-top:65px;gap:0}.stat{padding:15px 10px 15px 0;margin-right:10px}.stat-end{justify-content:flex-start;border-top:1px solid var(--line);padding-top:15px}.chart-section,.trust-section,.cta-section{padding-top:82px}.section-heading{display:block;padding-bottom:30px}.section-heading p{margin-top:24px}.chart-card{padding:20px 15px 17px}.chart-top{display:block}.chart-meta{margin-top:16px}.comparison-chart{min-width:650px;height:270px}.chart-wrap{overflow-x:auto}.pain-grid{grid-template-columns:1fr;margin-top:27px}.trust-layout{padding-bottom:45px;gap:34px}.trust-bar{display:grid;grid-template-columns:1fr 1fr;gap:17px;line-height:1.3}.trust-label{grid-column:1/-1}.cta-frame{padding:34px 24px 30px;gap:34px}.cta-frame .section-kicker{display:none}.cta-copy p{margin-top:23px}.site-footer{display:grid;gap:16px;padding-bottom:24px}.site-footer span:last-child{order:3}}

/* Accessibility, interaction, and responsive polish */
:focus-visible {
  outline: 2px solid var(--acid);
  outline-offset: 4px;
}
button:disabled { cursor: wait; opacity: .7; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  background: rgba(10, 10, 10, .96);
  backdrop-filter: blur(10px);
}
.current-value { fill: #bdbdb7; }
.transcript { margin-top: auto; color: var(--muted); font-size: 12px; line-height: 1.5; }
.transcript summary { color: var(--acid); cursor: pointer; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.transcript p { margin: 8px 0 0; }
.confirmation { color: var(--black); font-size: 18px; font-weight: 500; padding: 28px 0; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
@media (max-width: 700px) {
  .hero-copy h1 { font-size: clamp(52px, 15vw, 78px); overflow-wrap: anywhere; }
  .hero-grid { gap: 42px; }
  .hero-aside { max-width: none; }
  .aside-note { max-width: 290px; }
  .section-kicker { gap: 10px; font-size: 9px; }
  .chart-meta { line-height: 2; }
  .comparison-chart { min-width: 650px; }
  .chart-footnote { font-size: 12px; line-height: 1.45; }
  .testimonial-card { flex-basis: calc(100% - 20px); }
}

/* Case-note cards */
.generator-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.generated-card {
  background: var(--soft);
  border: 1px solid var(--line);
  padding: 24px;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.generated-card.pale {
  background: #c9dc74;
  border-color: #c9dc74;
  color: var(--black);
}
.generated-card.dark {
  background: #151514;
  color: var(--ink);
}
.generated-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 27px;
}
.generated-top .label {
  color: var(--muted);
  font-size: 9px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.generated-card.pale .label { color: #4b5c20; }
.generated-card.dark .label { color: var(--acid); }
.generated-card .quote {
  font-size: 19px;
  line-height: 1.35;
  letter-spacing: -.025em;
  margin: 0;
  flex: 1;
}
.generated-data {
  display: grid;
  gap: 11px;
  border-top: 1px solid var(--line);
  margin-top: 27px;
  padding-top: 17px;
}
.generated-card.dark .generated-data { border-color: #454540; }
.generated-data div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}
.generated-data .label { font-size: 9px; }
.generated-data strong { font-size: 12px; text-align: right; }
.outcome {
  border-top: 1px solid var(--line);
  margin-top: 17px;
  padding-top: 15px;
}
.generated-card.dark .outcome { border-color: #454540; }
.outcome .label {
  display: block;
  color: var(--muted);
  font-size: 9px;
  margin-bottom: 5px;
}
.generated-card.pale .outcome .label { color: #4b5c20; }
.outcome b {
  font-size: 18px;
  line-height: 1.1;
  display: block;
  font-weight: 500;
}
@media (max-width: 700px) {
  .generator-grid { grid-template-columns: 1fr; }
  .generated-top { flex-wrap: wrap; }
  .generated-card { padding: 20px; }
}

/* Process diagram */
.process-card {
  background: var(--soft);
  border: 1px solid var(--line);
  padding: 28px 30px 22px;
}
.process-top {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 24px;
}
.process-top h3 {
  font-size: 21px;
  font-weight: 500;
  letter-spacing: -.035em;
  margin: 0;
}
.process-key {
  color: var(--muted);
  font-size: 10px;
  white-space: nowrap;
  margin: 0 0 2px;
}
.key-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin: 0 6px 0 15px;
}
.key-dot:first-child { margin-left: 0; }
.key-leak { background: #76766f; }
.key-repair { background: var(--acid); }
.process-flow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 46px 0 42px;
}
.process-node {
  position: relative;
  flex: 1 1 0;
  min-height: 126px;
  border: 1px solid #42423e;
  padding: 17px 15px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.process-node-leak { border-color: #76766f; }
.process-node-repair { border-color: var(--acid); }
.process-node-end { background: var(--acid); color: var(--black); border-color: var(--acid); }
.node-index { color: var(--acid); font-size: 10px; letter-spacing: .12em; }
.process-node-end .node-index { color: var(--black); }
.process-node strong { font-size: 17px; font-weight: 500; letter-spacing: -.03em; }
.process-node small { color: var(--muted); font-size: 11px; line-height: 1.35; }
.process-node-end small { color: #45521d; }
.node-flag {
  position: absolute;
  top: -10px;
  right: 10px;
  background: var(--black);
  color: var(--acid);
  border: 1px solid currentColor;
  padding: 3px 6px;
  font-size: 9px;
  font-weight: 400;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.process-arrow { color: var(--acid); font-size: 20px; flex: 0 0 auto; }
.process-bottom {
  border-top: 1px solid var(--line);
  padding-top: 15px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: var(--muted);
  font-size: 11px;
}
.process-bottom strong { color: #c9c9c3; font-weight: 400; }
.process-bottom i { color: var(--acid); font-style: normal; margin: 0 5px; }
@media (max-width: 700px) {
  .process-card { padding: 20px 15px 17px; }
  .process-top { display: block; }
  .process-top h3 { font-size: 18px; margin-top: 8px; }
  .process-key { margin-top: 20px; }
  .process-flow { display: grid; grid-template-columns: 1fr auto 1fr; gap: 10px 7px; margin: 34px 0 30px; }
  .process-node { min-height: 116px; padding: 14px 12px; }
  .process-arrow { transform: rotate(90deg); justify-self: center; }
  .process-bottom { display: block; line-height: 1.5; }
  .process-bottom strong { display: block; margin-top: 5px; }
}
