:root{--navy:#07131f;--navy2:#0b2030;--green:#11863f;--green2:#1aa552;--lime:#c9f05a;--ink:#0b1824;--muted:#657482;--paper:#f7faf8;--white:#fff;--line:#dce6e1;--serif:Georgia,"Times New Roman",serif;--display:"Inter", "Segoe UI", Arial, Helvetica, sans-serif;--body:"Inter", "Segoe UI", Arial, Helvetica, sans-serif;background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.65}a{color:inherit}.wrap{max-width:1240px;margin:auto;padding:0 24px}
.utility{background:var(--navy);color:#eaf5ef;font-size:12px}.utility .wrap{height:34px;display:flex;align-items:center;justify-content:space-between}.utility-right{display:flex;gap:18px}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);box-shadow:0 8px 30px rgba(7,19,31,.06)}
.header-inner{min-height:82px;display:flex;align-items:center;gap:28px}.logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.logo img{display:block;width:auto;height:60px;max-width:205px;object-fit:contain}
.search{flex:1;max-width:500px;display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.search input{border:0;outline:0;padding:12px 15px;flex:1;font:inherit}.search button{width:52px;border:0;background:var(--navy);color:white;font-weight:800}
nav{display:flex;align-items:stretch;gap:2px;margin-left:auto}nav>a{position:relative;padding:30px 13px;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.02em;color:#22313e}nav>a:hover{color:var(--green);background:#f4f8f5}.menu-btn{display:none;border:1px solid var(--line);background:white;border-radius:10px;padding:10px 13px;font-weight:800}
.nav-group{position:relative}.mega{display:none;position:absolute;top:78px;left:0;width:720px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:0 0 18px 18px;box-shadow:0 18px 40px rgba(7,19,31,.14);grid-template-columns:repeat(3,1fr);gap:24px}.nav-group:hover .mega{display:grid}.mega strong{font-family:var(--display);font-size:11px;letter-spacing:.05em}.mega a{display:block;padding:6px 0;text-decoration:none;color:var(--muted);font-size:13px}.mega a:hover{color:var(--green)}
.hero{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden;background:var(--navy)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,19,31,.94) 0%,rgba(7,19,31,.76) 36%,rgba(7,19,31,.08) 70%,rgba(7,19,31,.18));z-index:1}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-content{position:relative;z-index:2;max-width:720px;color:#fff;padding:90px 0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--green);font-family:var(--display)}.hero .eyebrow{color:var(--lime)}.hero h1{font-family:var(--display);font-size:clamp(34px,5vw,66px);line-height:1.08;letter-spacing:-.03em;margin:13px 0 20px}.hero p{font-size:19px;max-width:660px;color:#e8f0ed}.cta{display:inline-block;margin-top:18px;padding:12px 18px;background:var(--green);color:white;border-radius:9px;text-decoration:none;font-weight:800;border:1px solid var(--green)}.cta.alt{background:transparent;color:white;border-color:rgba(255,255,255,.55);margin-left:8px}
.impact{position:relative;z-index:3;margin:-42px auto 0;max-width:1160px;background:rgba(8,31,47,.96);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:20px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;box-shadow:0 18px 40px rgba(7,19,31,.2)}.impact div{padding:5px 14px;border-right:1px solid rgba(255,255,255,.16)}.impact div:last-child{border-right:0}.impact strong{display:block;font-family:var(--display);font-size:12px;color:var(--lime)}.impact span{font-size:12px;color:#d7e3df}
.section{padding:76px 0}.section h2,.content h2{font-family:var(--display);line-height:1.15;letter-spacing:-.025em}.section h2{font-size:36px;margin:8px 0 14px}.section>p,.section .intro{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 7px 24px rgba(7,19,31,.045);transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(7,19,31,.10)}.card-body{padding:20px}.card h3{margin:0 0 8px;font-size:21px}.card p{margin:0;color:var(--muted)}.feature-image{display:block;width:100%;height:170px;object-fit:cover}.founder-panel{display:grid;grid-template-columns:230px 1fr;gap:28px;padding:24px;align-items:center}.founder-photo{width:100%;height:240px;object-fit:cover;border-radius:13px}.founder-panel h2{margin:6px 0 8px;color:var(--green)}
.page-hero{position:relative;overflow:hidden;min-height:360px;background:var(--navy);color:#fff;padding:80px 0}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,19,31,.93),rgba(7,19,31,.60),rgba(7,19,31,.22));z-index:1}.page-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero .wrap{position:relative;z-index:2}.page-hero h1{font-family:var(--display);font-size:clamp(34px,5vw,58px);margin:12px 0}.page-hero p{max-width:780px;color:#dce9e5;font-size:18px}.content{max-width:900px;padding:58px 0 90px}.content h2{font-size:30px;margin-top:42px}.content h3{font-size:20px}.content p,.content li{color:#586975}.note{background:#eef8e8;border:1px solid #cde6ca;border-left:4px solid var(--green);padding:20px;border-radius:12px;margin:24px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.city-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.city-photo{width:100%;height:150px;object-fit:cover}.city-grid .card-body{padding:16px}
table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:12px;border:1px solid var(--line)}th{background:#edf4f0}.calc{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 12px 30px rgba(7,19,31,.06)}.calc label{display:block;font-weight:700;margin:13px 0 6px}.calc input{width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;font:inherit}.result{margin-top:18px;padding:18px;background:var(--navy);color:#fff;border-radius:12px;font-weight:800}
footer{background:var(--navy);color:#dce9e5;border-top:5px solid var(--green);padding:55px 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}.footer-logo{height:55px;width:auto;max-width:190px;object-fit:contain}.footer-grid strong{font-family:var(--display);font-size:11px;color:var(--lime)}.footer-grid a{text-decoration:none}.small{font-size:13px;color:#aebfba}
@media(max-width:1100px){.search{display:none}nav>a{padding:30px 8px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.utility{display:none}.header-inner{min-height:70px}.logo img{height:52px;max-width:175px}nav{display:none}.menu-btn{display:block;margin-left:auto}.hero{min-height:510px}.hero-content{padding:70px 0}.impact{margin:0;border-radius:0;grid-template-columns:repeat(2,1fr)}.impact div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.cards,.city-grid,.grid2{grid-template-columns:1fr}.founder-panel{grid-template-columns:1fr}.founder-photo{height:280px}.footer-grid{grid-template-columns:1fr}.mega{position:static;width:auto}}

/* V6 clean corporate usability layer */
.narrow{max-width:940px}.seo-intro{background:#fff}.seo-support{margin-top:18px;padding:14px 18px;border-left:3px solid var(--green);background:#f3f8f5;color:#44545f;border-radius:0 10px 10px 0}.topic-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.topic-pills a{display:inline-flex;padding:9px 13px;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:#fff;font-size:13px;font-weight:700}.topic-pills a:hover{border-color:var(--green);color:var(--green);background:#f7fbf8}.footer-topics{max-width:1240px;margin:0 auto;padding:14px 24px;color:#b9c8c1;font-size:12px;border-top:1px solid rgba(255,255,255,.12)}.footer-topics a{color:#dce9e3;text-decoration:none}.footer-topics a:hover{color:var(--lime)}
@media(max-width:1100px){.header-inner{gap:16px}.search{max-width:300px}nav>a{padding-left:8px;padding-right:8px}.cards{grid-template-columns:repeat(2,1fr)}.impact{grid-template-columns:repeat(3,1fr);margin-left:20px;margin-right:20px}}
@media(max-width:850px){.utility .wrap{height:auto;min-height:34px;padding-top:7px;padding-bottom:7px}.utility-right{display:none}.header-inner{min-height:70px}.logo img{height:52px;max-width:175px}.search{display:none}.menu-btn{display:block;margin-left:auto}nav{display:none;position:absolute!important;top:70px!important;left:0!important;right:0!important;background:#fff!important;padding:12px 18px!important;box-shadow:0 16px 30px rgba(7,19,31,.12);max-height:calc(100vh - 70px);overflow:auto}nav>a,.nav-group>a{width:100%;padding:12px 10px;border-bottom:1px solid var(--line)}.nav-group{width:100%}.nav-group:hover .mega{display:none}.mega{position:static;width:100%;display:block;box-shadow:none;border:0;border-radius:0;padding:8px 12px 14px;grid-template-columns:1fr}.mega>div{margin-top:10px}.mega a{padding:5px 0}.hero{min-height:500px}.hero-content{padding:70px 24px}.hero h1{font-size:clamp(30px,9vw,48px)}.hero p{font-size:16px}.impact{grid-template-columns:1fr 1fr;margin-top:-25px}.impact div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.section{padding:52px 0}.section h2{font-size:28px}.cards{grid-template-columns:1fr}.founder-panel{grid-template-columns:1fr}.founder-photo{height:300px}.footer-grid{grid-template-columns:1fr!important}.footer-topics{padding:16px 20px}}

.contact-strip{padding:12px 0;border-top:1px solid var(--line);background:#f7faf8;font-size:.92rem}.contact-strip .wrap{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.contact-strip a{font-weight:600}.contact-details .card p{margin:.35rem 0}

/* V8 fix: SEO support copy must remain readable on page heroes */
.page-hero .seo-support{color:#44545f!important;background:#f3f8f5!important;position:relative;z-index:3;display:block!important;opacity:1!important;visibility:visible!important}
.seo-support{display:block!important;visibility:visible!important;opacity:1!important;color:#44545f!important}

/* V9: readable modern sans-serif typography */
html,body{font-family:"Inter","Segoe UI",Arial,Helvetica,sans-serif;} body{font-size:16px;line-height:1.65;} h1,h2,h3,h4,h5,h6,nav,button,.btn,.eyebrow,.badge,.tag{font-family:"Inter","Segoe UI",Arial,Helvetica,sans-serif;} h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;} .content p,.content li{line-height:1.75;} .hero p,.page-hero p{line-height:1.7;}
.seo-support-wrap{max-width:940px;margin:24px auto 0;padding:0 24px}.seo-support-wrap .seo-support{display:block!important;visibility:visible!important;opacity:1!important;color:#44545f!important;}

/* V10 bug fix: prevent inherited white text from making page content invisible */
main, .section, .content, .seo-intro, .content .card { color: var(--ink); }
.content p, .content li, .content td, .content th, .content dd, .content dt { color: #44545f !important; }
.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 { color: var(--ink) !important; }
.content a:not(.cta), .section a:not(.cta), .card a:not(.cta) { color: var(--green); }
.content strong, .section strong, .card strong { color: inherit; }
.card p { color: #586975; }
.page-hero { color: #fff; }
.page-hero p { color: #dce9e5; }
footer { color: #dce9e5; }
footer .small { color: #aebfba; }

/* V11: Cost Calculator accessibility + GreenCar-inspired palette */
:root{
  --gc-green:#16a05d;
  --gc-dark:#073b2a;
  --gc-deep:#052a20;
  --gc-light:#eef9f3;
  --gc-mint:#dff4e8;
  --gc-text:#17352a;
}

/* Keep the calculator page text explicitly readable; do not rely on inherited colours. */
.calc-page,
.calc-page .content,
.calc-page .calc,
.calc-page .calc label,
.calc-page .calc input,
.calc-page .calc .result,
.calc-page .small{color:var(--gc-text);}

.calc-page .page-hero{background:linear-gradient(135deg,var(--gc-dark),#0a7650);color:#fff;}
.calc-page .page-hero:after{background:linear-gradient(90deg,rgba(5,42,32,.88),rgba(7,91,62,.55),rgba(7,91,62,.20));}
.calc-page .page-hero h1,
.calc-page .page-hero .eyebrow,
.calc-page .page-hero p{color:#fff!important;}
.calc-page .page-hero .eyebrow{color:#dff8e9!important;}

.calc-page .calc{background:#fff;border:1px solid #cfe7da;box-shadow:0 14px 34px rgba(5,59,42,.10);}
.calc-page .calc label{color:var(--gc-dark)!important;font-weight:750;}
.calc-page .calc input{background:#fff!important;color:#17352a!important;border:1px solid #b9d9c9!important;}
.calc-page .calc input::placeholder{color:#71867d!important;opacity:1;}
.calc-page .calc input:focus{outline:3px solid rgba(22,160,93,.16);border-color:var(--gc-green)!important;}
.calc-page .calc button.cta,
.calc-page .calc button[type="submit"]{display:inline-block!important;background:var(--gc-green)!important;color:#fff!important;border:1px solid var(--gc-green)!important;cursor:pointer;text-shadow:none;}
.calc-page .calc button.cta:hover,
.calc-page .calc button[type="submit"]:hover{background:#0f864c!important;border-color:#0f864c!important;}
.calc-page .result{background:var(--gc-light)!important;color:var(--gc-dark)!important;border:1px solid #c9e7d6;border-left:5px solid var(--gc-green);}
.calc-page .small{color:#526c61!important;}

/* Calculator page header/navigation must remain visible against the white header. */
.calc-page header{background:#fff!important;color:var(--gc-dark)!important;}
.calc-page header nav>a,
.calc-page header .nav-group>a{color:#17352a!important;}
.calc-page header nav>a:hover,
.calc-page header .nav-group>a:hover{color:var(--gc-green)!important;background:#eff9f3!important;}
.calc-page header .mega{background:#fff!important;color:#17352a!important;}
.calc-page header .mega strong{color:var(--gc-dark)!important;}
.calc-page header .mega a{color:#526c61!important;}
.calc-page header .mega a:hover{color:var(--gc-green)!important;}
.calc-page header .search{background:#fff!important;}
.calc-page header .search input{color:#17352a!important;background:#fff!important;}
.calc-page header .search input::placeholder{color:#71867d!important;opacity:1;}

@media (max-width:980px){
  header nav.nav-open{display:flex!important;}
}
