:root{--green:#0b7a33;--green2:#0e8f3e;--ink:#1f2a30;--muted:#5a6763;--line:#dce4df;--soft:#f5f8f6;--white:#fff;--max:1180px;--shadow:0 14px 38px rgba(20,46,31,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}img{max-width:100%;display:block}a{color:var(--green);text-decoration-thickness:1.5px;text-underline-offset:3px}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.skip{position:absolute;left:-999px;top:10px;background:#111;color:#fff;padding:10px 14px;z-index:100}.skip:focus{left:10px}.topbar{background:#14201b;color:#fff;text-align:center;padding:8px 16px;font-size:.9rem}.site-header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:50}.nav{min-height:78px;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{width:58px;height:auto;border-radius:0;object-fit:contain}.brand-copy strong{display:block;letter-spacing:.11em;color:var(--green);font-size:1.22rem}.brand-copy span{display:block;font-size:.72rem;letter-spacing:.12em;font-weight:800}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{color:var(--ink);font-weight:750;text-decoration:none}.nav-links a:hover,.nav-links a:focus{color:var(--green)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:#fff!important;text-decoration:none;font-weight:800;border:2px solid var(--green);border-radius:9px;padding:13px 18px;cursor:pointer;font:inherit}.btn:hover,.btn:focus{background:#075f27;border-color:#075f27}.btn.secondary{background:#fff;color:var(--green)!important}.hero{padding:82px 0 66px;background:linear-gradient(135deg,#fbfdfc 0%,#f1f7f3 100%)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}.eyebrow{color:var(--green);font-weight:850;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem}.hero h1{font-size:clamp(2.7rem,6vw,5rem);line-height:.98;letter-spacing:-.045em;margin:18px 0 24px}.hero h1 em{color:var(--green);font-style:normal}.hero p{font-size:1.22rem;color:var(--muted);max-width:670px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-note{margin-top:22px;font-size:.93rem;color:var(--muted)}.logo-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:36px;box-shadow:var(--shadow)}.logo-card img{width:min(520px,100%);margin:auto}.section{padding:76px 0}.section.soft{background:var(--soft)}.section-head{max-width:760px;margin-bottom:34px}.section-head h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin:10px 0 12px;letter-spacing:-.03em}.section-head p{color:var(--muted);font-size:1.08rem}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.card h3{margin:8px 0 8px;font-size:1.15rem}.card h3 a{color:var(--green);font-weight:850}.card p{margin:0;color:var(--muted)}.service-icon{font-size:1.55rem;color:var(--green);font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{border-radius:20px;padding:34px;background:#16231d;color:#fff}.panel.light{background:#f7faf8;color:var(--ink);border:1px solid var(--line)}.panel p{color:#d8e2dc}.panel.light p{color:var(--muted)}.ticks{padding:0;list-style:none;margin:20px 0}.ticks li{margin:10px 0;padding-left:26px;position:relative}.ticks li:before{content:"✓";position:absolute;left:0;color:#28b75d;font-weight:900}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:step}.step{border-left:4px solid var(--green);padding:6px 0 6px 20px}.step:before{counter-increment:step;content:counter(step);display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--green);color:white;font-weight:900;margin-bottom:10px}.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.trust{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.trust strong{display:block}.trust span{color:var(--muted);font-size:.93rem}.faq{max-width:900px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-weight:850;cursor:pointer}.faq p{color:var(--muted)}.contact-shell{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:start}.contact-copy{position:sticky;top:110px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:780}.field small{color:var(--muted)}input,select,textarea{width:100%;font:inherit;padding:12px 13px;border:1px solid #bfcac4;border-radius:8px;background:#fff;color:var(--ink)}textarea{min-height:150px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(11,122,51,.16);border-color:var(--green)}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:auto;margin-top:4px}.safety-note{padding:14px 16px;background:#fff7df;border:1px solid #efd58b;border-radius:10px;color:#614b0b;font-size:.93rem}.form-status{margin-top:14px;font-weight:700}.hidden-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.footer{background:#14201b;color:#e8efeb;padding:44px 0 28px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer a{color:#fff}.footer h3{margin-top:0;color:#fff}.footer small,.footer p{color:#b9c8c0}.legal{border-top:1px solid rgba(255,255,255,.15);margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.subhero{padding:64px 0 44px;background:var(--soft)}.subhero h1{font-size:clamp(2.3rem,5vw,4.2rem);line-height:1;margin:14px 0}.content{max-width:860px}.content h2{margin-top:42px}.notice{background:#eef7f1;border-left:4px solid var(--green);padding:16px 18px;border-radius:8px}.mobile-toggle{display:none;background:none;border:0;font-size:1.55rem}.badge{display:inline-block;background:#e8f5ed;color:#08642a;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}
.card-wide{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:0 14px;align-items:start}.card-wide .service-icon{grid-row:1/3}.card-wide h3{margin-top:0}
@media(max-width:900px){.nav-links{display:none}.mobile-toggle{display:block}.nav-links.open{display:flex;position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:flex-start}.hero-grid,.split,.contact-shell{grid-template-columns:1fr}.logo-card{order:-1;max-width:500px;margin:auto}.grid3{grid-template-columns:1fr 1fr}.trust-row{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.contact-copy{position:static}.footer-grid{grid-template-columns:1fr}.hero{padding-top:44px}}
@media(max-width:620px){.wrap{width:min(var(--max),calc(100% - 28px))}.grid3,.trust-row,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.hero h1{font-size:3rem}.section{padding:56px 0}.topbar{font-size:.78rem}.brand-copy span{font-size:.62rem}.brand-mark{width:48px;height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.cf-turnstile{margin-top:2px;min-height:65px}


section[id]{scroll-margin-top:108px}
.service-help{margin-top:24px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--soft);display:flex;align-items:center;justify-content:space-between;gap:20px}
.service-help div{display:flex;flex-direction:column;gap:3px}.service-help span{color:var(--muted)}
@media(max-width:620px){.service-help{align-items:flex-start;flex-direction:column}.service-help .btn{width:100%}}

/* Mobile conversion polish: keep value proposition and CTA above the large brand image */
@media(max-width:900px){
  .mobile-toggle{color:var(--green);font-weight:900;line-height:1;padding:8px 4px}
  .hero-grid{gap:28px}
  .logo-card{order:initial;max-width:340px;margin:6px auto 0;padding:22px;border-radius:20px}
  .logo-card img{width:min(280px,100%)}
}
@media(max-width:620px){
  .topbar{padding:7px 14px;font-size:.74rem;line-height:1.35}
  .nav{min-height:72px;gap:14px}
  .brand{gap:8px}
  .brand-mark{width:44px}
  .brand-copy strong{font-size:1.08rem}
  .brand-copy span{font-size:.57rem;letter-spacing:.10em}
  .mobile-toggle{font-size:1.7rem}
  .nav-links.open{top:72px}
  .hero{padding:34px 0 46px}
  .hero-grid{gap:24px}
  .hero h1{font-size:2.7rem;line-height:1.01;margin:14px 0 18px}
  .hero p{font-size:1.05rem}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}
  .hero-actions .btn{width:100%}
  .hero-note{margin-top:16px;font-size:.88rem}
  .logo-card{max-width:290px;padding:16px;margin-top:2px}
  .logo-card img{width:min(240px,100%)}
}

/* Optional dark mode ------------------------------------------------------ */
:root{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark;--ink:#eef5f1;--muted:#b5c3bc;--line:#33433b;--soft:#111b17;--white:#17231e;--shadow:0 14px 38px rgba(0,0,0,.34)}
html[data-theme="dark"] body{background:#0d1512;color:var(--ink)}
html[data-theme="dark"] .site-header{background:rgba(13,21,18,.96);border-color:var(--line)}
html[data-theme="dark"] .brand{color:var(--ink)}
html[data-theme="dark"] .nav-links a{color:var(--ink)}
html[data-theme="dark"] .nav-links a:hover,html[data-theme="dark"] .nav-links a:focus{color:#48c978}
html[data-theme="dark"] .hero{background:linear-gradient(135deg,#0d1512 0%,#14211b 100%)}
html[data-theme="dark"] .logo-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .trust,
html[data-theme="dark"] .contact-card{background:#17231e;border-color:var(--line)}
html[data-theme="dark"] .logo-card img{filter:brightness(.82) contrast(.96)}
html[data-theme="dark"] .panel.light{background:#17231e;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .panel{background:#0a110e}
html[data-theme="dark"] .section.soft,
html[data-theme="dark"] .subhero{background:#111b17}
html[data-theme="dark"] .service-help{background:#17231e;border-color:var(--line)}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{background:#0f1915;color:var(--ink);border-color:#52635a}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#84948c}
html[data-theme="dark"] .btn.secondary{background:#17231e;color:#66da91!important;border-color:#2ea75b}
html[data-theme="dark"] .btn.secondary:hover,html[data-theme="dark"] .btn.secondary:focus{background:#203129}
html[data-theme="dark"] .badge{background:#1d3a2a;color:#8ee5aa}
html[data-theme="dark"] .notice{background:#173021}
html[data-theme="dark"] .safety-note{background:#3a2e0e;border-color:#745f22;color:#f3dfa1}
html[data-theme="dark"] .faq details{border-color:var(--line)}
html[data-theme="dark"] .topbar,
html[data-theme="dark"] .footer{background:#08100c}
html[data-theme="dark"] .footer p,
html[data-theme="dark"] .footer small{color:#adbbb4}
html[data-theme="dark"] .nav-links.open{background:#0d1512;border-color:var(--line)}
html[data-theme="dark"] .skip{background:#f4f7f5;color:#111}

.theme-toggle{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:80;width:72px;height:38px;padding:0;border:1px solid #c8d3cd;border-radius:999px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer;display:flex;align-items:center;justify-content:space-between;color:#33413a}
.theme-toggle:focus-visible{outline:3px solid rgba(11,122,51,.28);outline-offset:3px}
.theme-toggle .theme-icon{width:30px;display:grid;place-items:center;font-size:16px;line-height:1;z-index:2;pointer-events:none}
.theme-toggle .theme-knob{position:absolute;left:3px;top:3px;width:30px;height:30px;border-radius:50%;background:var(--green);box-shadow:0 2px 8px rgba(0,0,0,.22);transition:transform .22s ease}
html[data-theme="dark"] .theme-toggle{background:#17231e;border-color:#42534a;color:#f2f6f4}
html[data-theme="dark"] .theme-toggle .theme-knob{transform:translateX(34px);background:#55cf80}
@media(max-width:620px){.theme-toggle{top:auto;bottom:92px;right:10px;transform:none;width:68px;height:36px}.theme-toggle .theme-knob{width:28px;height:28px}.theme-toggle .theme-icon{width:28px;font-size:15px}html[data-theme="dark"] .theme-toggle .theme-knob{transform:translateX(32px)}}
@media(prefers-reduced-motion:reduce){.theme-toggle .theme-knob{transition:none}}

@media(max-width:620px){.card-wide{grid-template-columns:auto 1fr}}


/* Service imagery: representative examples, not customer project photos */
.visual-section{padding-top:64px}
.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.visual-card{margin:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--white);box-shadow:0 10px 28px rgba(20,46,31,.07)}
.visual-card a{display:block;color:inherit;text-decoration:none}
.visual-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--soft)}
.visual-card figcaption{padding:16px 17px 18px;display:flex;flex-direction:column;gap:5px}
.visual-card figcaption strong{color:var(--ink);font-size:1.05rem}
.visual-card figcaption span{color:var(--muted);font-size:.92rem}
.visual-card a:hover strong,.visual-card a:focus strong{color:var(--green)}
.visual-card a:focus-visible{outline:3px solid rgba(11,122,51,.25);outline-offset:-3px}
.visual-disclosure{margin:18px 0 0;color:var(--muted);font-size:.86rem}
.service-visual-section{padding:34px 0 0;background:var(--soft)}
.service-visual{max-width:920px;margin:0 auto;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--white);box-shadow:var(--shadow)}
.service-visual img{width:100%;aspect-ratio:4/3;object-fit:cover}
.service-visual figcaption{padding:11px 15px;color:var(--muted);font-size:.84rem}
html[data-theme="dark"] .visual-card,html[data-theme="dark"] .service-visual{background:#17231e;border-color:var(--line)}
@media(max-width:900px){.visual-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.visual-grid{grid-template-columns:1fr;gap:16px}.visual-section{padding-top:50px}.visual-card figcaption{padding:14px 15px 16px}.service-visual-section{padding-top:22px}}
