:root{color-scheme:light;--ink:#15302c;--pine:#122c29;--pine-deep:#102523;--muted:#65736e;--line:#e4e9e5;--light:#f7f8f3;--lime:#dcf46c;--white:#fff;--radius:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a,select{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.55}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #60c6a5;outline-offset:3px}
[hidden]{display:none!important}
.wrap{max-width:1216px;margin:0 auto;padding-left:28px;padding-right:28px}
.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}
.skip-link{position:absolute;left:10px;top:-60px;z-index:99;background:#fff;padding:12px;border-radius:8px}
.skip-link:focus{top:10px}
.topbar{background:var(--pine-deep);position:relative;z-index:3}
.nav{display:flex;height:86px;align-items:center;gap:40px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:27px;font-weight:850;letter-spacing:-1.4px;color:#fff;line-height:1}
.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:var(--lime);color:var(--pine);border-radius:12px;font-size:23px;transform:rotate(-8deg)}
.brand-accent{font-weight:450}
.brand-dot{color:var(--lime)}
.navigation{display:flex;align-items:center;gap:30px;margin-left:50px;color:#cbd8d1;font-size:14px;font-weight:600}
.navigation a:hover,.footer a:hover{color:var(--lime)}
.nav-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.nav-actions select{border:1px solid #3b5952;background:#1a3733;color:#e1f0e8;border-radius:11px;padding:10px 12px;font-size:13px;font-weight:700}
.nav-cta{background:var(--lime);color:var(--pine);border-radius:12px;padding:14px 18px;font-weight:800;font-size:13px}
.nav-cta:hover{background:#eeff9c}
.hero{position:relative;overflow:hidden;background:var(--pine-deep);color:#fff;padding:74px 0 100px}
.hero-glow{pointer-events:none;position:absolute;inset:0;background:radial-gradient(circle at 75% 50%,rgba(82,145,115,.25),transparent 42%),radial-gradient(circle at 40% 95%,rgba(30,104,85,.17),transparent 40%)}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:65px;align-items:center}
.hero-copy{max-width:650px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#cbe5d7;border:1px solid #41665b;background:#193a34;padding:10px 14px;border-radius:40px;font-size:12px;letter-spacing:.07em;font-weight:750;text-transform:uppercase}
.pulse-dot{width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 4px #dcf46b17}
.hero h1{font-size:clamp(48px,5vw,76px);line-height:1.05;letter-spacing:-.058em;margin:30px 0 25px;font-weight:850}
.highlight{color:var(--lime)}
.hero-description{font-size:17px;line-height:1.8;color:#c9d8cf;max-width:570px;margin:0 0 32px}
.audit-form{max-width:640px}
.audit-form label{display:block;margin-bottom:11px;font-size:13px;color:#dfede3;font-weight:700}
.audit-input-wrap{display:flex;align-items:center;gap:8px;background:#fff;padding:7px 8px 7px 17px;border-radius:15px;box-shadow:0 15px 55px #06120e4d}
.input-globe{font-size:24px;color:#748880;line-height:1}
.audit-input-wrap input{flex:1;min-width:0;border:0;outline:0;color:#223b32;padding:14px 5px;font-size:16px;background:transparent}
.audit-input-wrap input:focus-visible{outline:none}
.audit-input-wrap:focus-within{box-shadow:0 0 0 3px #dcf46a77}
.audit-input-wrap button{display:flex;align-items:center;justify-content:center;gap:13px;white-space:nowrap;border:0;background:var(--lime);color:#172d28;padding:17px 19px;border-radius:10px;font-weight:800;font-size:13px;min-height:52px}
.audit-input-wrap button:hover{background:#d0ed55}
.form-status{font-size:13px;line-height:1.5;margin:9px 0 0;min-height:18px;color:#d1e8dd}
.form-status.error{color:#ffbdb3}
.form-status.success{color:#86e4af}
.hero-facts{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px;color:#c3d3ca;font-size:12px}
.hero-facts>span{display:flex;align-items:center;gap:7px}
.fact-tick{color:var(--lime);font-weight:900}
.hero-visual{position:relative;padding:0 0 20px}
.window{border:1px solid #456158;border-radius:17px;background:#f5f7f3;color:var(--ink);overflow:hidden;box-shadow:0 45px 75px #07191699;transform:rotate(1.2deg)}
.window-top{background:#e9eeea;border-bottom:1px solid #dbe3dc;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;color:#77857d;font-size:11px;font-weight:700}
.traffic-lights{display:flex;gap:5px}
.traffic-lights i{width:8px;height:8px;border-radius:50%;background:#c6d1c7}
.traffic-lights i:first-child{background:#f5a593}.traffic-lights i:nth-child(2){background:#efcf80}.traffic-lights i:nth-child(3){background:#91c99f}
.window-live{letter-spacing:.1em;color:#438967;font-size:9px}
.window-live i{display:inline-block;width:6px;height:6px;background:#64b77c;border-radius:50%;vertical-align:middle}
.window-body{padding:36px 33px 28px}
.window-overline{color:#67937d;font-size:10px;font-weight:850;letter-spacing:.12em}
.window-body h2{margin:12px 0;font-size:29px;line-height:1.1;letter-spacing:-.04em;max-width:330px}
.window-body>p{margin:0 0 25px;color:#6e7e74;font-size:12px;line-height:1.6;max-width:270px}
.audit-preview{display:grid;gap:10px}
.audit-preview>div{display:flex;align-items:center;gap:13px;padding:13px;background:#fff;border:1px solid #e6ebe6;border-radius:11px;font-size:12px;font-weight:750}
.preview-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;font-size:17px}
.mint{background:#e6f8ed;color:#32965a}.peach{background:#fff0df;color:#d39a55}.lilac{background:#f3e9fa;color:#ab85c5}.blue{background:#e7eefb;color:#688cc5}
.preview-lines{margin-left:auto;display:grid;gap:5px;width:70px}
.preview-lines b{display:block;height:5px;border-radius:10px;background:#dfe9e2}
.preview-lines b:nth-child(2){width:60%;background:#e9eee9}
.preview-footer{display:flex;align-items:center;gap:9px;font-size:11px;margin-top:22px;color:#6e8175}
.diamond{color:#2b9970;font-size:16px}
.float-card{position:absolute;right:-24px;bottom:-8px;display:flex;align-items:center;gap:14px;padding:15px 19px;background:var(--white);border:1px solid #e5ede4;border-radius:15px;color:var(--ink);box-shadow:0 10px 45px #091b1a40;transform:rotate(-3deg)}
.float-icon{display:grid;place-items:center;border-radius:10px;background:#ebf7c1;color:#2b5629;font-size:21px;font-weight:900;width:40px;height:40px}
.float-card strong{display:block;font-size:13px}
.float-card small{display:block;color:#718377;font-size:11px;margin-top:4px}
.trust-line{background:#ebf3e9;border-bottom:1px solid #e3ebe0}
.trust-inner{display:flex;align-items:center;gap:16px;min-height:66px;font-size:13px;font-weight:650;color:#496d57}
.trust-symbol{font-size:20px;color:#2e7d50}
.trust-arrow{margin-left:auto;font-size:21px}
.section-spacing{padding:112px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:37px}
.section-head>div{max-width:650px}
.section-head>p{max-width:350px;line-height:1.7;font-size:14px;color:var(--muted);margin:0}
.kicker{font-size:12px;font-weight:850;letter-spacing:.16em;color:#488568;margin:0 0 16px}
.section-head h2,.contact-grid h2{font-size:clamp(35px,4vw,52px);line-height:1.13;letter-spacing:-.045em;margin:0;font-weight:800}
.how-section{background:#fff}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.step-card{position:relative;min-height:270px;border:1px solid #e1e8e2;border-radius:18px;padding:32px;background:#f9faf7;transition:transform .18s,box-shadow .18s}
.step-card:hover{transform:translateY(-4px);box-shadow:0 12px 27px #17382710}
.step-number{position:absolute;right:27px;top:24px;font-size:13px;font-weight:800;color:#a4b1a5}
.step-pictogram{width:54px;height:54px;display:grid;place-items:center;background:#e0f3c7;border-radius:14px;color:#3a7550;font-size:27px;margin-bottom:32px}
.step-card h3{font-size:22px;letter-spacing:-.035em;margin:0 0 9px}
.step-card p{color:var(--muted);line-height:1.75;font-size:14px;margin:0}
.pricing-section{background:#f2f5ef}
.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.price-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dfe6dc;padding:35px;border-radius:20px;min-height:440px}
.price-card.featured{background:#15322c;color:#fff;border-color:#15322c}
.plan-tag{display:inline-block;color:#4c855f;background:#e9f4e2;border-radius:20px;padding:8px 13px;font-size:11px;font-weight:850;letter-spacing:.08em}
.featured-tag{background:#dff571;color:#26412f}
.price-card h3{font-size:25px;margin:20px 0 8px;letter-spacing:-.03em}
.price-card p{color:#758378;line-height:1.6;font-size:14px;margin:0}
.price-card.featured p{color:#c3d6c8}
.price{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid #e2e8e1;padding:26px 0 20px}
.featured .price{border-color:#38564b}
.price strong{font-size:46px;letter-spacing:-.06em}
.price span{font-size:12px;color:#76877a}
.featured .price span{color:#bfd0c2}
.price-card ul{padding:0;list-style:none;margin:23px 0 26px;display:grid;gap:16px}
.price-card li{position:relative;padding-left:27px;font-size:14px;line-height:1.5}
.price-card li::before{content:"✓";position:absolute;left:0;color:#42a671;font-weight:850}
.featured li::before{color:#dbf476}
.plan-link{display:flex;align-items:center;justify-content:center;margin-top:auto;padding:15px;background:#e7f1df;color:#215036;font-weight:800;border-radius:11px;font-size:14px}
.plan-link.dark{background:var(--lime);color:#1d3025}
.price-note{font-size:12px;color:#748178;margin-top:18px}
.contact-section{background:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.contact-grid h2{max-width:450px;margin-bottom:20px}
.contact-grid>div>p:not(.kicker){color:var(--muted);line-height:1.8;max-width:440px}
.contact-note{display:flex;align-items:start;gap:12px;border-left:3px solid #c2e67e;padding:13px 18px;margin-top:35px;max-width:460px;font-size:13px;color:#567063;line-height:1.6;background:#f4f8f0}
.contact-note>span:first-child{font-size:22px}
.lead-form{background:#f8faf7;border:1px solid #e0e8de;padding:32px;border-radius:20px;display:grid;gap:16px}
.field label{display:block;font-size:12px;font-weight:800;margin-bottom:8px}
.field input,.field textarea{width:100%;border:1px solid #d8e2d9;border-radius:10px;padding:14px 15px;background:#fff;color:var(--ink);font-size:14px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#99a69d}
.consent{display:flex;gap:9px;align-items:start;font-size:12px;line-height:1.6;color:#687a70}
.consent input{width:16px;height:16px;margin:2px 0 0;accent-color:#317757;flex-shrink:0}
.submit-lead{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:0;padding:17px;background:#15322c;color:#fff;border-radius:10px;font-weight:800;font-size:14px}
.lead-form .form-status{color:#6d7e71}.lead-form .form-status.error{color:#bc453c}.lead-form .form-status.success{color:#297f4e}
.disclosure{padding:25px 0;background:#f4f5ee;border-top:1px solid #e5e8e0}
.disclosure strong{font-size:13px}
.disclosure p{color:#768379;font-size:12px;line-height:1.7;margin:8px 0 0}
.footer{background:#112825;padding:34px 0;color:#c3d5c7}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer .brand{font-size:21px}
.footer .brand-mark{width:28px;height:28px;font-size:18px;border-radius:9px}
.footer-inner>span,.footer-inner>a:last-child{font-size:12px}
.results-section{padding:85px 0;background:#fcfdfb}
.results-head{align-items:center}
.results-head h2{font-size:clamp(34px,4vw,48px)}
.result-url{max-width:660px;word-break:break-all;color:#5b7066;font-size:13px;line-height:1.5;margin:14px 0 0}
.result-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.secondary-button,.primary-button{border:1px solid #d5e1d5;padding:13px 17px;border-radius:11px;font-size:13px;font-weight:800}
.secondary-button{background:#fff;color:#244d37}
.primary-button{background:#dff472;color:#18382b;border-color:#dff472}
.report-note{font-size:12px;color:#728578;margin:-8px 0 25px}
.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.score-card{background:#fff;padding:25px 15px;border:1px solid #e5eae4;border-radius:16px;text-align:center}
.score-ring{display:grid;place-items:center;width:104px;height:104px;border-radius:50%;margin:0 auto 17px;background:conic-gradient(var(--ring-color) calc(var(--score)*1%),#ecf0eb 0);position:relative}
.score-ring::after{content:"";position:absolute;inset:9px;background:#fff;border-radius:50%}
.score-ring strong{position:relative;z-index:1;font-size:30px;letter-spacing:-.045em}
.score-card p{font-size:14px;font-weight:750;margin:0}
.score-card small{font-size:11px;color:#788579;display:block;margin-top:8px}
.results-subtitle{font-size:23px;margin:38px 0 19px;letter-spacing:-.025em}
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.metric-card{border:1px solid #e1e9e1;border-radius:14px;background:#f4f8f2;padding:22px}
.metric-card small{display:block;color:#667c6f;font-size:12px;min-height:32px;line-height:1.4}
.metric-card strong{display:block;margin-top:9px;font-size:23px;letter-spacing:-.04em}
.issues-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:38px 0 16px}
.issues-title h3{font-size:23px;letter-spacing:-.02em;margin:0}
.issues-title span{font-size:12px;color:#7b8a80}
.issue-list{display:grid;gap:10px}
.issue-item{display:flex;gap:15px;align-items:start;background:#fff;border:1px solid #e3e9e2;border-radius:12px;padding:21px}
.issue-dot{width:10px;height:10px;background:#e2a35b;flex-shrink:0;border-radius:50%;margin-top:6px}
.issue-item strong{font-size:14px}
.issue-item p{color:#6e7e72;font-size:13px;line-height:1.6;margin:7px 0 0}
.issue-item small{display:inline-block;color:#508061;background:#edf5e7;border-radius:6px;padding:4px 7px;font-size:10px;margin-top:10px;text-transform:uppercase;letter-spacing:.04em}
.report-meta{font-size:11px;color:#7b887c;margin:23px 0 0}
@media(max-width:1050px){.hero-grid{gap:32px}.hero h1{font-size:55px}.navigation{margin-left:10px}.contact-grid{gap:35px}.window-body{padding:30px 22px}}
@media(max-width:850px){.wrap{padding-left:23px;padding-right:23px}.hero{padding:50px 0 70px}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:760px}.hero-visual{max-width:620px;margin:5px auto 0;width:100%}.hero h1{max-width:640px}.section-spacing{padding:75px 0}.section-head{align-items:start;flex-direction:column;gap:10px}.steps-grid{grid-template-columns:repeat(3,1fr)}.step-card{padding:23px;min-height:295px}.contact-grid{grid-template-columns:1fr}.contact-grid>div{max-width:650px}.score-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{flex-wrap:wrap}.navigation{display:none}}
@media(max-width:590px){.nav{height:75px;gap:8px}.brand{font-size:22px}.brand-mark{width:31px;height:31px}.nav-actions{gap:7px}.nav-actions select{padding:10px 6px}.nav-cta{font-size:11px;padding:11px 10px}.hero{padding:35px 0 55px}.hero h1{font-size:clamp(42px,11vw,57px);margin:24px 0 18px}.hero-description{font-size:15px;line-height:1.7}.eyebrow{font-size:10px}.audit-input-wrap{flex-wrap:wrap;padding:10px}.audit-input-wrap input{min-width:calc(100% - 45px)}.audit-input-wrap button{width:100%}.hero-facts{gap:10px 15px}.window-body h2{font-size:24px}.float-card{right:-8px;padding:10px}.float-card small{max-width:130px}.section-spacing{padding:65px 0}.section-head h2,.contact-grid h2{font-size:35px}.steps-grid,.pricing-grid{grid-template-columns:1fr}.step-card{min-height:220px}.step-pictogram{margin-bottom:18px}.price-card{min-height:395px;padding:29px}.lead-form{padding:23px}.results-section{padding:55px 0}.score-grid{gap:9px}.score-card{padding:16px 7px}.score-ring{width:80px;height:80px}.score-ring strong{font-size:25px}.score-card p{font-size:12px}.metrics-grid{gap:9px}.metric-card{padding:14px}.metric-card strong{font-size:18px}.results-head{gap:22px}.result-actions{width:100%}.issues-title{align-items:start;flex-direction:column}.footer-inner{justify-content:center;text-align:center}.footer-inner>span{order:3;width:100%}}
@media print{body{background:#fff;color:#111}.topbar,.hero,.trust-line,.how-section,.pricing-section,.contact-section,.disclosure,.footer,.result-actions{display:none!important}.results-section{display:block!important;padding:0}.wrap{max-width:none}.score-card,.metric-card,.issue-item{break-inside:avoid}.results-section h2{font-size:32px}}

/* SVG score rings: no inline styles or fabricated scores */
.score-ring{background:transparent}
.score-ring::after{content:none}
.ring-svg{position:absolute;inset:0;width:100%;height:100%}
.ring-track{fill:none;stroke:#edf1eb;stroke-width:9}
.ring-bar{fill:none;stroke:#df6e5f;stroke-width:9;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50% 50%}
.ring-bar.good{stroke:#269b6a}
.ring-bar.medium{stroke:#e2ac3c}
.ring-bar.low{stroke:#df6e5f}

/* WCAG AA contrast refinements; keep all customer-facing explanatory text readable. */
.window-top{color:#435a4c}
.window-live{color:#36684d}
.window-overline{color:#42694f}
.window-body>p{color:#4c6051}
.preview-footer{color:#4d6153}
.float-card small{color:#4a5d51}
.kicker{color:#316949}
.step-number{color:#526659}
.plan-tag{color:#356448}
.price-card p{color:#526457}
.price-card.featured p{color:#c3d6c8}
.price span{color:#536554}
.featured .price span{color:#bfd0c2}
.price-note{color:#4e6154}
.consent{color:#4e6255}
.lead-form .form-status{color:#4d6054}
.lead-form .form-status.error{color:#ad302a}
.lead-form .form-status.success{color:#276d47}
.disclosure p{color:#4b5f51}

/* Report-mode text must also pass WCAG AA. */
.report-note{color:#526457}
.score-card small{color:#526458}
.metric-card small{color:#4f6354}
.issues-title span{color:#536456}
.issue-item p{color:#526557}
.issue-item small{color:#376448}
.report-meta{color:#536457}
.result-url{color:#4c6255}

/* Actionable improvement plan */
.plan-heading{margin:38px 0 18px}
.plan-heading h3{font-size:24px;letter-spacing:-.03em;margin:0 0 9px}
.plan-heading p{color:#526557;font-size:13px;line-height:1.65;margin:0}
.plan-locale-note:not([hidden]){margin-top:8px;color:#805b1c}
.fix-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fix-step{background:#eff6ed;border:1px solid #d8e7d5;border-radius:14px;padding:23px;break-inside:avoid}
.fix-step-header{display:flex;align-items:center;gap:12px;margin-bottom:13px}
.fix-step-number{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#dceebf;color:#234b30;font-weight:850;font-size:13px}
.fix-step-header small{color:#39664a;text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:10px}
.fix-step h4{font-size:17px;letter-spacing:-.025em;margin:0 0 8px}
.fix-step p{color:#47614f;font-size:13px;line-height:1.65;margin:0}
@media(max-width:590px){.fix-plan{grid-template-columns:1fr}.fix-step{padding:19px}}
@media print{.fix-step{background:#fff!important;border-color:#b9c8b9}.plan-heading{break-after:avoid}}
