:root{--green:#7DC342;--green-dark:#5FA029;--green-xlight:#EBF6DB;--navy:#1A2333;--navy-mid:#2C3E56;--navy-light:#3D5270;--navy-deep:#0E1520;--grey-50:#F4F5F7;--grey-100:#E8EAED;--grey-200:#D1D5DC;--grey-300:#B0B9C6;--grey-400:#8A9BB0;--grey-500:#5E718A;--border:#E2E6EA;--warning:#F5A623;--error:#E84040;--font-display:'Sora',system-ui,sans-serif;--font-body:'Sora',system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,monospace;--wrap:1120px}
@font-face{font-family:'Space Grotesk';src:url('fonts/SpaceGrotesk-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'Inter';src:url('fonts/Inter-VariableFont_opsz_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);color:var(--navy);background:#fff;line-height:1.55;font-size:16px;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}
img{max-width:100%;display:block}
button,input,textarea,select{font-family:inherit}
a{color:var(--green-dark);text-decoration:none}
a:hover{color:var(--navy)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--font-display);letter-spacing:-.025em;margin:0}
.micro{font-size:13px;color:var(--grey-500);line-height:1.5;margin:10px 0 0}
.req{color:var(--green-dark);font-style:normal}

.topbar{position:sticky;top:0;z-index:40;background:rgba(14,21,32,.95);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;border-bottom:1px solid #263248}
.topbar .brand img{height:30px}
.topnav{display:flex;align-items:center;gap:22px}
.topnav a{color:var(--grey-300);font-size:14px}
.topnav a:hover{color:#fff}
.topnav .tel{font-family:var(--font-mono);color:#fff;font-size:14px}
.btn-sm{background:var(--green);color:var(--navy)!important;font-weight:600;padding:8px 15px;border-radius:5px;font-size:14px}
.btn-sm:hover{background:#8fd150}

.ticker{background:var(--green);color:var(--navy);overflow:hidden}
.ticker-in{max-width:var(--wrap);margin:0 auto;padding:9px 24px;display:flex;gap:26px;align-items:center;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap}
.ticker b{font-weight:500}
.ticker .d{color:var(--navy-mid);opacity:.5}

.hero{background:radial-gradient(circle at 12% 8%,rgba(125,195,66,.12) 0,transparent 42%),linear-gradient(168deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;padding:74px 0 78px;position:relative}
.hero::after{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(125,195,66,.09) 1px,transparent 1px);background-size:24px 24px;opacity:.5;pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.eyebrow{font-family:var(--font-mono);font-size:13px;color:var(--green);letter-spacing:.09em;text-transform:uppercase;margin-bottom:20px}
.eyebrow .bk{color:var(--navy-light)}
.hero h1{font-size:clamp(40px,6vw,66px);font-weight:700;line-height:1;letter-spacing:-.038em;margin-bottom:22px}
.hero h1 em{font-style:normal;color:var(--green)}
.hero .lede{font-size:18px;color:var(--grey-300);max-width:47ch;margin:0 0 28px;text-wrap:pretty}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero .micro{color:var(--grey-400)}
.btn{display:inline-block;background:var(--green);color:var(--navy);font-family:var(--font-body);font-weight:600;font-size:16px;padding:14px 26px;border-radius:6px;border:1px solid var(--green);cursor:pointer;line-height:1.2}
.btn:hover{background:#8fd150;color:var(--navy)}
.btn.big{font-size:17px;padding:16px 34px}
.btn-ghost{display:inline-block;background:transparent;color:#fff;border:1px solid var(--navy-light);font-weight:500;font-size:16px;padding:14px 22px;border-radius:6px;cursor:pointer;line-height:1.2}
.btn-ghost:hover{border-color:var(--green);color:var(--green)}
.btn-ghost.sm{font-size:14px;padding:9px 16px;color:var(--navy-mid);border-color:var(--grey-200);background:#fff}
.btn-ghost.sm:hover{border-color:var(--green);color:var(--green-dark)}

.pricecard{background:#fff;border-radius:8px;padding:24px;color:var(--navy);box-shadow:0 18px 44px rgba(0,0,0,.3)}
.pc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.pc-lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--grey-500)}
.pc-badge{background:var(--green-xlight);color:var(--green-dark);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:4px 9px;border-radius:3px;white-space:nowrap}
.pc-rows{display:grid;gap:1px;background:var(--border)}
.pc-row{background:#fff;display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:12px 0}
.pc-row span{font-size:14.5px;color:var(--navy-mid);display:flex;flex-direction:column}
.pc-row span em{font-style:normal;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--grey-400);margin-top:3px}
.pc-row b{font-family:var(--font-display);font-size:19px;font-weight:600;white-space:nowrap}
.pc-row b small{font-size:11px;font-weight:500;color:var(--grey-400)}
.pc-total{margin-top:14px;background:var(--navy);color:#fff;border-radius:5px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.pc-total span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey-300)}
.pc-total b{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--green);letter-spacing:-.02em}
.pc-note{font-size:13px;color:var(--grey-500);margin:14px 0 0;line-height:1.5}

.band{padding:72px 0}
.band.alt{background:var(--grey-50);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sec-label{display:flex;align-items:baseline;gap:16px;margin-bottom:30px;padding-bottom:14px;border-bottom:2px solid var(--navy)}
.sec-label .n{font-family:var(--font-mono);font-size:13px;color:var(--green-dark);letter-spacing:.07em}
.sec-label h2{font-size:clamp(25px,3.4vw,34px);font-weight:700}
.sec-label:has(+ .timeline){border-bottom:none;padding-bottom:0;margin-bottom:22px}

.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:var(--border)}
.timeline li{background:#fff;padding:20px 18px 22px;border-top:3px solid var(--green)}
.tl-lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--green-dark);margin-bottom:8px}
.timeline h3{font-size:17px;font-weight:700;margin-bottom:7px;line-height:1.2}
.timeline p{font-size:14px;color:var(--grey-500);margin:0;line-height:1.5}

.inc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}
.inc li{font-size:14.5px;color:var(--grey-500);padding-top:16px;border-top:1px solid var(--grey-200);line-height:1.5}
.inc li b{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:16px;color:var(--navy);margin-bottom:6px;font-weight:600}
.inc li b::before{content:'';flex:0 0 11px;width:11px;height:11px;background:var(--green);border-radius:2px}

.form-intro{font-size:16px;color:var(--navy-mid);max-width:70ch;margin:0 0 28px;text-wrap:pretty}
.form{display:grid;gap:26px}
#_gotcha{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
fieldset{border:1px solid var(--border);border-radius:8px;padding:22px 22px 24px;margin:0;background:#fff}
legend{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-size:19px;font-weight:700;color:var(--navy);padding:0 10px;letter-spacing:-.02em}
legend em{font-style:normal;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey-400)}
.fs-n{background:var(--navy);color:var(--green);font-family:var(--font-mono);font-size:12px;width:24px;height:24px;display:grid;place-items:center;border-radius:4px;font-weight:500}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px 18px}
.f{display:block;margin-bottom:14px}
.f>span{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--grey-500);margin-bottom:6px}
.f input,.f textarea,.lift input{width:100%;font-family:var(--font-body);font-size:15px;color:var(--navy);background:var(--grey-50);border:1px solid var(--grey-200);border-bottom:2px solid var(--grey-300);border-radius:5px;padding:11px 12px;outline:0;line-height:1.4}
.f textarea{resize:vertical;min-height:52px}
.f input:focus,.f textarea:focus,.lift input:focus{border-color:var(--green);background:var(--green-xlight)}
.f input:user-invalid,.f textarea:user-invalid,.lift input:user-invalid{border-color:var(--error);background:#FDECEC}
.f input::placeholder,.lift input::placeholder{color:var(--grey-300)}
.hint{display:block;font-style:normal;font-size:12px;color:var(--grey-400);margin-top:5px}
.siggy{font-family:var(--font-display)!important;font-size:19px!important;font-weight:500}

.lifts{display:grid;gap:14px}
.lift{background:var(--grey-50);border:1px solid var(--border);border-radius:6px;padding:16px 16px 4px;position:relative}
.lift-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.lift-head h4{font-family:var(--font-mono);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--green-dark);margin:0}
.lift-rm{background:none;border:0;color:var(--grey-400);font-size:12px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:4px}
.lift-rm:hover{color:var(--error)}
.lift .lg{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.lift label{display:block;margin-bottom:12px}
.lift label>span{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--grey-500);margin-bottom:5px}
.lift input{background:#fff;font-size:14.5px;padding:10px 11px}
.lift-actions{display:flex;align-items:center;gap:16px;margin-top:14px}

.calc{border:1px solid var(--border);border-radius:6px;overflow:hidden}
.calc-row{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--border);font-size:15px;color:var(--navy-mid)}
.calc-row:nth-child(even){background:var(--grey-50)}
.calc-row b{font-family:var(--font-mono);color:var(--navy);white-space:nowrap}
.calc-total{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 16px;background:var(--navy);color:#fff}
.calc-total span{font-family:var(--font-display);font-weight:600;font-size:16px;display:flex;align-items:baseline;gap:10px}
.calc-total span em{font-style:normal;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.calc-total b{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--green);letter-spacing:-.02em}

.declare{background:var(--grey-50);border-left:3px solid var(--navy);border-radius:0 5px 5px 0;padding:16px 18px;margin-bottom:16px}
.declare p{font-size:14px;color:var(--grey-500);margin:0 0 8px;line-height:1.5}
.declare p:last-child{margin:0}
.check{display:flex;gap:12px;align-items:flex-start;background:var(--green-xlight);border:1px solid #cfe8ad;border-radius:6px;padding:14px 16px;margin-bottom:18px;cursor:pointer}
.check input{flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;accent-color:var(--green-dark);cursor:pointer}
.check span{font-size:15px;color:var(--navy);line-height:1.45}
.submit-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.submit-row .micro{margin:0;max-width:46ch}
button:disabled{opacity:.55;cursor:not-allowed}
.formerr{background:#FDECEC;border-left:3px solid var(--error);color:#8d1f1f;font-size:14.5px;padding:13px 16px;border-radius:0 5px 5px 0}
.success{background:var(--green-xlight);border:1px solid #cfe8ad;border-radius:8px;padding:34px 30px;text-align:center;max-width:640px;margin:0 auto}
.success .tick{width:48px;height:48px;margin:0 auto 16px;background:var(--green);color:#fff;border-radius:50%;display:grid;place-items:center;font-size:24px}
.success h3{font-size:26px;font-weight:700;margin-bottom:10px}
.success p{color:var(--navy-mid);margin:0 0 8px}

.terms{display:grid;grid-template-columns:1fr 1fr;gap:0 26px}
.terms details,.faq details{border-bottom:1px solid var(--grey-200)}
.terms summary,.faq summary{cursor:pointer;list-style:none;padding:14px 0;font-family:var(--font-display);font-weight:600;font-size:16px;color:var(--navy);display:flex;align-items:baseline;gap:12px}
.terms summary::-webkit-details-marker,.faq summary::-webkit-details-marker{display:none}
.terms summary::after,.faq summary::after{content:'+';margin-left:auto;color:var(--green-dark);font-family:var(--font-mono);font-size:18px;line-height:1}
.terms details[open] summary::after,.faq details[open] summary::after{content:'–'}
.terms summary:hover,.faq summary:hover{color:var(--green-dark)}
.tn{font-family:var(--font-mono);font-size:11.5px;color:var(--green-dark);letter-spacing:.05em;font-weight:400}
.terms p,.faq p{font-size:14.5px;color:var(--grey-500);margin:0 0 15px;padding-left:34px;line-height:1.55;max-width:62ch}
.faq p{padding-left:0}
.faq{max-width:78ch}
.faq summary{font-size:17px}
.note{margin-top:26px;background:#FEF5E5;border-left:3px solid var(--warning);border-radius:0 5px 5px 0;padding:15px 18px}
.note b{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#B36F00;margin-bottom:6px}
.note p{margin:0;font-size:14.5px;color:var(--navy-mid)}

.cta{background:var(--navy);color:#fff;padding:56px 0}
.cta-in{display:flex;justify-content:space-between;align-items:center;gap:36px;flex-wrap:wrap}
.cta h2{font-size:clamp(23px,3vw,30px);font-weight:700;margin-bottom:8px}
.cta p{color:var(--grey-300);margin:0;max-width:52ch;font-size:15.5px}
.cta-acts{display:flex;gap:12px;flex-wrap:wrap}

.foot{background:var(--navy-deep);color:var(--grey-400);padding:48px 0 30px;font-size:14px}
.foot-brand{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid #22304a}
.foot-brand img{height:28px}
.foot-brand p{margin:0;max-width:60ch}
.foot-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:26px 0}
.fl{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:6px}
.foot-cols p{margin:0;color:var(--grey-300);line-height:1.5}
.foot-base{display:flex;gap:24px;flex-wrap:wrap;padding-top:22px;border-top:1px solid #22304a;font-size:13px}
.foot-base a{color:var(--grey-400)}
.foot-base a:hover{color:var(--green)}

@media(max-width:980px){
.hero-grid{grid-template-columns:1fr;gap:36px}
.timeline{grid-template-columns:1fr 1fr}
.terms{grid-template-columns:1fr}
.lift .lg{grid-template-columns:1fr 1fr}
.foot-cols{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
.topnav a:not(.btn-sm):not(.tel){display:none}
.hero{padding:48px 0 54px}
.band{padding:52px 0}
.g2,.g3{grid-template-columns:1fr}
.timeline{grid-template-columns:1fr}
.lift .lg{grid-template-columns:1fr}
.submit-row .btn.big{width:100%;text-align:center}
}
@media print{.topbar,.ticker,.hero-actions,.cta,.submit-row,.topnav{display:none}.band{padding:20px 0}details{open:true}}
