:root{
  --green-deep:#1F4D2C; --green-leaf:#4C9A2A; --green-mid:#2E6B3A;
  --cream:#F7F8F3; --paper:#FFFFFF; --ink:#161A15; --sage:#6E7A64;
  --line:#DCE2D3; --gold:#C9A24B; --radius:14px;
  --shadow:0 12px 32px -16px rgba(20,40,20,0.25);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--cream);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.mono{font-family:'IBM Plex Mono',monospace;}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:600;letter-spacing:-0.01em;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--green-mid);font-weight:600;}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}
header{position:sticky;top:0;z-index:50;background:rgba(247,248,243,0.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;max-width:1180px;margin:0 auto;}
.logo{display:flex;align-items:center;gap:9px;font-family:'Fraunces',serif;font-weight:700;font-size:21px;color:var(--green-deep);}
.logo .mark{width:26px;height:20px;position:relative;display:inline-block;}
.logo .mark span{position:absolute;bottom:0;background:var(--green-leaf);border-radius:2px 2px 0 0;}
.logo .mark span:nth-child(1){left:0;width:7px;height:12px;background:var(--green-mid);}
.logo .mark span:nth-child(2){left:9.5px;width:7px;height:20px;}
.logo .mark span:nth-child(3){left:19px;width:7px;height:8px;background:var(--gold);}
nav.links{display:flex;gap:26px;align-items:center;}
nav.links a{font-size:14px;font-weight:500;color:var(--ink);}
nav.links a.active{color:var(--green-mid);}
nav.links a:hover{color:var(--green-mid);}
.nav-cta{display:flex;align-items:center;gap:16px;}
.phone{font-size:13.5px;font-weight:600;font-family:'IBM Plex Mono',monospace;color:var(--green-deep);display:flex;align-items:center;gap:6px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:600;font-size:14.5px;border:1.5px solid transparent;cursor:pointer;transition:all .18s ease;}
.btn-primary{background:var(--green-deep);color:#fff;}
.btn-primary:hover{background:var(--green-mid);transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--green-deep);border-color:var(--green-deep);}
.btn-ghost:hover{background:var(--green-deep);color:#fff;}
section{padding:76px 0;}
.section-head{max-width:640px;margin:0 auto 48px;text-align:center;}
.section-head h2{font-size:clamp(28px,3.4vw,40px);margin-top:10px;}
.section-head p{color:var(--sage);font-size:16.5px;margin-top:12px;}
.section-head.left{margin:0 0 40px;text-align:left;}
.page-hero{padding:56px 0 20px;}
.page-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.08;margin:14px 0 16px;}
.page-hero p.lead{font-size:17px;color:var(--sage);max-width:560px;}
.breadcrumb{font-size:13px;color:var(--sage);font-family:'IBM Plex Mono',monospace;margin-bottom:6px;}
.breadcrumb a{color:var(--green-mid);}
.value-card, .info-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;transition:transform .18s ease, box-shadow .18s ease;}
.value-card:hover, .info-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.icon{width:42px;height:42px;border-radius:10px;background:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-bottom:18px;flex-shrink:0;}
.value-card h3, .info-card h3{font-size:16.5px;margin-bottom:8px;}
.value-card p, .info-card p{font-size:14px;color:var(--sage);}
.closing{background:linear-gradient(135deg,var(--green-deep),var(--green-mid));border-radius:24px;padding:60px 48px;text-align:center;color:#fff;}
.closing h2{color:#fff;font-size:clamp(26px,3.4vw,38px);margin-bottom:14px;}
.closing p{color:#D6E3CC;font-size:16px;margin-bottom:26px;}
.closing .btn-primary{background:#fff;color:var(--green-deep);}
.closing .btn-primary:hover{background:var(--cream);}
footer{background:var(--ink);color:#C9D0C0;padding:64px 0 28px;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.foot-logo{font-family:'Fraunces',serif;font-weight:700;font-size:20px;color:#fff;margin-bottom:12px;}
footer p{font-size:13.5px;color:#8A9280;max-width:280px;}
footer h4{font-size:13px;color:#fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;}
footer ul{list-style:none;}
footer ul li{margin-bottom:10px;font-size:14px;}
footer ul li a:hover{color:#fff;}
.foot-bottom{border-top:1px solid #2B2F26;padding-top:24px;display:flex;justify-content:space-between;font-size:12.5px;color:#7A826F;flex-wrap:wrap;gap:10px;}
.trust-line{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--sage);}
.trust-line svg{width:16px;height:16px;flex-shrink:0;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:12.5px;font-weight:600;color:var(--sage);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.field input[type=text], .field input[type=email], .field input[type=tel], .field input[type=number], .field select, .field textarea{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:9px;font-family:'Inter',sans-serif;font-size:14.5px;color:var(--ink);background:var(--paper);}
.field textarea{resize:vertical;min-height:110px;}
.card-form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);}
@media (max-width: 900px){.foot-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.field-row{grid-template-columns:1fr;}.foot-grid{grid-template-columns:1fr;}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}
.hero{padding:56px 0 40px;position:relative;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;}
.hero h1{font-size:clamp(34px,4.6vw,54px);line-height:1.06;color:var(--ink);margin:14px 0 20px;}
.hero p.lead{font-size:18px;color:var(--sage);max-width:480px;margin-bottom:28px;}
.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:30px;}
.stat-row{display:flex;gap:34px;margin-top:36px;flex-wrap:wrap;}
.stat b{display:block;font-family:'Fraunces',serif;font-size:28px;color:var(--green-deep);}
.stat span{font-size:12.5px;color:var(--sage);text-transform:uppercase;letter-spacing:.06em;}
.podium-scene{position:relative;height:460px;display:flex;align-items:flex-end;justify-content:center;gap:14px;padding:0 10px 36px;}
.podium-block{border-radius:12px 12px 0 0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:18px;box-shadow:var(--shadow);}
.podium-block .bank{font-size:12px;font-weight:700;color:#fff;letter-spacing:.03em;margin-bottom:6px;}
.podium-block .rate{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:600;color:#fff;}
.podium-block .rate-label{font-size:10px;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;}
.podium-block .rank{position:absolute;top:-16px;width:32px;height:32px;border-radius:50%;background:var(--cream);border:2px solid var(--green-deep);color:var(--green-deep);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:700;font-size:15px;}
.p1{width:130px;height:280px;background:linear-gradient(160deg,var(--green-mid),var(--green-deep));z-index:3;}
.p2{width:120px;height:220px;background:linear-gradient(160deg,#8AA57E,#5D7A52);z-index:2;}
.p3{width:120px;height:170px;background:linear-gradient(160deg,#B9C4A8,#8B9A79);z-index:1;}
.p2 .rank{border-color:#5D7A52;color:#5D7A52;}
.p3 .rank{border-color:#8B9A79;color:#8B9A79;}
.podium-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:11px;color:var(--sage);font-family:'IBM Plex Mono',monospace;background:var(--cream);padding-top:4px;z-index:5;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);}
.step{padding:34px 26px;border-right:1px solid var(--line);position:relative;}
.step:last-child{border-right:none;}
.step .num{font-family:'Fraunces',serif;font-size:34px;color:var(--line);font-weight:700;position:absolute;top:20px;right:22px;}
.step h3{font-size:17px;margin:26px 0 8px;position:relative;z-index:1;}
.step p{font-size:14px;color:var(--sage);position:relative;z-index:1;}
.calc-panel{background:var(--green-deep);border-radius:20px;padding:52px;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.calc-panel .copy .eyebrow{color:#B7D9A6;}
.calc-panel h2{color:#fff;font-size:clamp(26px,3vw,34px);margin:12px 0 14px;}
.calc-panel .copy p{color:#D6E3CC;font-size:15.5px;margin-bottom:20px;}
.calc-tabs{display:flex;gap:6px;margin-bottom:22px;}
.calc-tab{flex:1;text-align:center;padding:9px 6px;font-size:12.5px;font-weight:600;background:rgba(255,255,255,.08);border-radius:8px;cursor:pointer;color:#D6E3CC;transition:background .15s ease;}
.calc-tab.active{background:#fff;color:var(--green-deep);}
.calc-form{background:#fff;border-radius:14px;padding:26px;color:var(--ink);}
.calc-result{margin-top:18px;padding:18px;background:var(--cream);border-radius:10px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.calc-result .amt{font-family:'IBM Plex Mono',monospace;font-size:28px;font-weight:600;color:var(--green-deep);}
.calc-result .lbl{font-size:12px;color:var(--sage);text-transform:uppercase;letter-spacing:.05em;}
.calc-disclaimer{font-size:11.5px;color:var(--sage);margin-top:12px;line-height:1.5;}
.calc-cta{width:100%;margin-top:14px;justify-content:center;}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.compare-col{border-radius:var(--radius);padding:32px;}
.compare-col.old{background:#EFEEE7;border:1px dashed #C7C2B2;}
.compare-col.new{background:var(--paper);border:1.5px solid var(--green-leaf);box-shadow:var(--shadow);}
.compare-col h3{font-size:18px;margin-bottom:18px;}
.compare-col.old h3{color:var(--sage);}
.compare-col.new h3{color:var(--green-deep);}
.compare-item{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;font-size:14.5px;}
.partners-strip{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;padding:34px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);}
.partner-slot{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--sage);border:1px dashed var(--line);padding:14px 22px;border-radius:8px;}
@media (max-width: 900px){.hero-grid{grid-template-columns:1fr;}.podium-scene{height:300px;margin-top:20px;}.steps{grid-template-columns:1fr 1fr;}.step{border-bottom:1px solid var(--line);}.value-grid{grid-template-columns:1fr 1fr;}.calc-panel{grid-template-columns:1fr;padding:32px 24px;}.compare{grid-template-columns:1fr;}}
@media (max-width:560px){.steps{grid-template-columns:1fr;}.value-grid{grid-template-columns:1fr;}.stat-row{gap:22px;}}
.calc-tab{padding:10px 6px;background:var(--cream);border:1.5px solid var(--line);color:var(--sage);}
.calc-tab.active{background:var(--green-deep);color:#fff;border-color:var(--green-deep);}
.wizard{max-width:680px;margin:0 auto;}
.progress-bar{display:flex;gap:6px;margin-bottom:32px;}
.progress-seg{flex:1;height:5px;border-radius:99px;background:var(--line);}
.progress-seg.done{background:var(--green-leaf);}
.progress-seg.current{background:var(--green-mid);}
.step-view{display:none;}
.step-view.active{display:block;}
.step-label{font-size:12.5px;color:var(--sage);margin-bottom:4px;font-family:'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.06em;}
.wizard-nav{display:flex;justify-content:space-between;margin-top:26px;gap:12px;}
.radio-group{display:flex;gap:12px;}
.radio-opt{flex:1;padding:14px;border:1.5px solid var(--line);border-radius:10px;text-align:center;cursor:pointer;font-size:14px;font-weight:600;color:var(--sage);}
.radio-opt.selected{border-color:var(--green-deep);background:var(--green-deep);color:#fff;}
.upload-box{border:1.5px dashed var(--line);border-radius:10px;padding:20px;text-align:center;font-size:13.5px;color:var(--sage);cursor:pointer;}
.upload-box:hover{border-color:var(--green-leaf);}
.confirm-screen{text-align:center;padding:40px 20px;}
.confirm-icon{width:64px;height:64px;border-radius:50%;background:var(--green-deep);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;}
.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--sage);margin-bottom:12px;}
.consent-row input{margin-top:3px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{padding:22px 4px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:16px;font-weight:600;}
.faq-q .plus{font-size:20px;color:var(--green-mid);transition:transform .2s ease;flex-shrink:0;margin-left:16px;}
.faq-item.open .faq-q .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;color:var(--sage);font-size:15px;line-height:1.6;}
.faq-item.open .faq-a{max-height:300px;}
.faq-a-inner{padding:0 4px 22px;}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal-visible{opacity:1;transform:translateY(0);}
.btn-primary,.btn-ghost{transition:transform .15s ease, background .18s ease;}
.podium-block{transition:transform .12s ease-out;}
.float-icon{position:absolute;animation:floatIcon 5s ease-in-out infinite;pointer-events:none;}
@keyframes floatIcon{0%,100%{transform:translateY(0) rotate(-3deg);}50%{transform:translateY(-18px) rotate(3deg);}}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1!important;transform:none!important;transition:none!important;}
  .float-icon{animation:none!important;}
}
.hero-car-illustration{position:absolute;right:-40px;bottom:-20px;opacity:0.06;pointer-events:none;z-index:0;}
.hero-grid > div:first-child, .podium-scene{position:relative;z-index:1;}
.step-icon{width:36px;height:36px;margin-bottom:10px;color:var(--green-mid);}
.vehicle-type-opt{display:flex;flex-direction:column;align-items:center;gap:8px;}
.vehicle-type-opt svg{width:28px;height:20px;}
.photo-placeholder{border:1.5px dashed var(--line);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--sage);font-size:12.5px;text-align:center;background:var(--cream);}
.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;flex-shrink:0;}
.menu-toggle svg{width:24px;height:24px;color:var(--green-deep);}
@media (max-width: 900px){
  nav.links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line);padding:16px 28px;gap:16px;box-shadow:var(--shadow);}
  nav.links.mobile-open{display:flex;}
  .menu-toggle{display:block;}
  .nav-cta .phone{display:none;}
  .nav{position:relative;}
}
@media (max-width:560px){
  .nav-cta .btn-primary{padding:10px 16px;font-size:13px;}
}
/* ===== Mobile hardening pass ===== */
html, body { overflow-x: hidden; max-width: 100%; }

/* Prevent iOS auto-zoom on input focus (inputs must be >=16px font-size) */
@media (max-width: 767px){
  .field input, .field select, .field textarea { font-size: 16px !important; }
}

@media (max-width: 900px){
  .wrap{padding:0 20px;}
  section{padding:56px 0;}
  .page-hero{padding:40px 0 16px;}
  .card-form{padding:24px 20px;}
  .closing{padding:44px 28px;}
}

@media (max-width: 767px){
  h1{font-size:clamp(26px,7vw,36px)!important;}
  .hero h1{font-size:clamp(28px,8vw,38px)!important;}
  .btn{padding:13px 20px;font-size:14px;min-height:44px;}
  .hero-actions .btn, .wizard-nav .btn{width:100%;}
  .hero-actions{flex-direction:column;align-items:stretch;}
  
  .hero-car-illustration{width:60%;right:-60px;}
  
  .stat-row{gap:16px;justify-content:space-between;}
  .stat b{font-size:22px;}
  .steps{grid-template-columns:1fr!important;}
  .value-grid{grid-template-columns:1fr!important;}
  .compare{grid-template-columns:1fr!important;}
  .calc-panel{padding:24px 18px!important;}
  .calc-tabs{flex-wrap:wrap;}
  .calc-tab{min-width:calc(50% - 6px);}
  .radio-group{flex-direction:column;}
  .field-row{grid-template-columns:1fr!important;}
  .foot-grid{grid-template-columns:1fr!important;gap:28px;}
  .partners-strip{justify-content:center;}
  .wizard-nav{flex-direction:column-reverse;gap:10px;}
  .wizard-nav .btn{margin:0;}
  .info-card, .value-card{padding:22px 18px;}
  .nav{padding:14px 20px;}
  .logo{font-size:18px;}
  .nav-cta{gap:10px;}
}

@media (max-width: 400px){
  
  .calc-tab{min-width:100%;}
}
.podium-mobile-list{display:none;}
@media (max-width:767px){
  
  .pm-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;margin-bottom:10px;background:var(--paper);border:1px solid var(--line);}
  .pm-rank-1{background:var(--green-deep);border-color:var(--green-deep);box-shadow:var(--shadow);}
  .pm-rank-1 .pm-bank, .pm-rank-1 .pm-rate{color:#fff;}
  .pm-rank-1 .pm-badge{background:#fff;color:var(--green-deep);}
  .pm-badge{width:26px;height:26px;border-radius:50%;background:var(--green-deep);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:700;font-size:13px;flex-shrink:0;}
  .pm-bank{flex:1;font-weight:600;font-size:14px;color:var(--ink);}
  .pm-rate{font-size:16px;font-weight:600;color:var(--green-deep);}
  .value-grid{grid-template-columns:1fr 1fr!important;gap:14px!important;}
  .value-card{padding:18px 14px!important;}
  .value-card .icon{width:34px;height:34px;margin-bottom:12px;}
  .value-card h3{font-size:14.5px!important;}
  .value-card p{font-size:12.5px!important;}
}
@media (max-width:767px){
  .podium-mobile-list{display:none!important;}
  .podium-scene{height:250px;gap:8px;padding:0;margin-top:16px;}
  .p1{width:96px;height:200px;}
  .p2{width:86px;height:158px;}
  .p3{width:86px;height:126px;}
  .podium-block{padding-top:10px;}
  .podium-block .rank{width:24px;height:24px;font-size:11px;top:-12px;}
  .podium-block .bank{font-size:10px;margin-bottom:3px;}
  .podium-block .rate{font-size:15px;}
  .podium-block .rate-label{font-size:7.5px;margin-top:1px;}
  .podium-caption{font-size:9.5px;}
}
@media (max-width:400px){
  .podium-scene{height:220px;gap:6px;}
  .p1{width:84px;height:174px;}
  .p2{width:76px;height:138px;}
  .p3{width:76px;height:110px;}
}
@media (max-width:767px){
  .float-icon{display:none!important;}
  .hero-car-illustration{
    opacity:0.16;
    width:260px;
    height:auto;
    right:auto;
    left:50%;
    bottom:6px;
    transform:translateX(-50%);
  }
}