
:root{--ink:#1f2933;--muted:#5c6975;--teal:#007c82;--teal-dark:#005b60;--coral:#ef6f51;--mint:#e8f4f1;--paper:#fff;--line:#d7e2df;--soft:#f6faf9;--charcoal:#111820}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:0;line-height:1.55}
a{color:inherit}
img{max-width:100%;display:block}
.nav-wrap{position:fixed;top:18px;left:0;right:0;z-index:20;display:flex;justify-content:center;pointer-events:none}
.nav-pill{pointer-events:auto;display:inline-flex;align-items:center;gap:26px;width:fit-content;margin:0 auto;padding:10px 12px 10px 18px;border:1px solid rgba(255,255,255,.76);border-radius:999px;background:rgba(255,255,255,.86);box-shadow:0 14px 40px rgba(17,24,32,.14);backdrop-filter:blur(18px)}
.brand img{width:174px;height:auto}
.nav-links{display:flex;gap:20px;margin:0;align-items:center}
.nav-links a{text-decoration:none;font-size:14px;font-weight:700;color:#26343d}
.nav-cta,.btn,.quote-form button{min-height:44px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;text-decoration:none;font-weight:800;white-space:nowrap}
.nav-cta,.btn.primary,.quote-form button{background:var(--coral);color:white;box-shadow:0 10px 24px rgba(239,111,81,.25)}
.btn.secondary{background:#fff;color:var(--teal-dark);border-color:var(--line)}
.mobile-menu-toggle{display:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--charcoal);padding:12px}
.mobile-menu-toggle span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}
.mobile-nav{display:none}
.hero{min-height:94vh;padding:150px clamp(20px,5vw,72px) 72px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:46px;align-items:center;background:linear-gradient(135deg,#f9fcfb 0%,#e8f4f1 52%,#fff 100%)}
.hero-copy h1,.page-hero h1{font-size:clamp(44px,7vw,92px);line-height:.98;margin:10px 0 24px;letter-spacing:0;color:var(--ink)}
.hero-copy p,.page-hero p{font-size:20px;max-width:760px;color:var(--muted);margin:0 0 28px}
.eyebrow{display:inline-flex;text-transform:uppercase;font-weight:900;color:var(--teal-dark);font-size:13px;letter-spacing:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.hero-visual img,.page-hero img,.proof img,.two-col img{border-radius:28px;box-shadow:0 28px 70px rgba(15,36,42,.18);aspect-ratio:16/10;object-fit:cover}
.trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:660px}
.trust-strip span{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.75);padding:14px;color:var(--muted)}
.trust-strip strong{display:block;color:var(--ink);font-size:26px;line-height:1}
.quote-bridge{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,.62fr);gap:34px;align-items:start;padding:54px clamp(20px,5vw,72px);background:var(--charcoal);color:#fff}
.quote-bridge p{color:#dbe6e3}
.quote-bridge .eyebrow{color:#8fe2da}
.quote-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;background:#fff;color:var(--ink);padding:18px;border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.18)}
.quote-form label{display:grid;gap:6px;font-size:13px;font-weight:800;color:#42525e}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 12px;font:inherit;color:var(--ink);background:#fff}
.quote-form .wide,.quote-form button{grid-column:1/-1}
.section{padding:82px clamp(20px,5vw,72px)}
.section-head{max-width:860px;margin:0 0 34px}
.section-head h2,.proof-copy h2,.two-col h2{font-size:clamp(32px,4vw,58px);line-height:1.05;margin:8px 0 14px;letter-spacing:0}
.section-head p,.proof-copy p,.two-col p{color:var(--muted);font-size:18px;margin:0}
.services{background:#fff}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 16px 48px rgba(15,36,42,.08)}
.service-card img{aspect-ratio:1100/740;object-fit:cover;object-position:center}
.service-card div{padding:20px}
.service-card span{color:var(--coral);font-weight:900}
.service-card h3{margin:6px 0 8px;font-size:25px;letter-spacing:0}
.service-card p{color:var(--muted);margin:0 0 16px}
.service-card a{font-weight:900;color:var(--teal-dark);text-decoration:none}
.proof,.two-col{display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,.72fr);gap:42px;align-items:center;background:var(--soft)}
.proof ul,.check-list{padding:0;list-style:none;display:grid;gap:10px}
.proof li,.check-list li{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.reviews{background:var(--mint)}
.gr-summary{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:0 18px 40px rgba(15,36,42,.09)}
.gr-sum-left{display:flex;gap:18px;align-items:center}
.gr-logo{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-weight:900;font-size:30px;color:#4285f4}
.gr-score{font-size:42px;font-weight:900;line-height:1;color:var(--ink)}
.gr-stars{color:#f6a600;font-size:24px;font-weight:900}.gr-stars span{color:#9aa5ad}
.gr-sub{color:var(--muted)}
.gr-cta{background:var(--teal);color:#fff;border-radius:999px;text-decoration:none;font-weight:900;padding:13px 18px;white-space:nowrap}
.faq-preview{background:#fff}
.faq-list{display:grid;gap:12px;max-width:980px}
details{border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 18px}
summary{cursor:pointer;font-weight:900;padding:18px 0}
details p{margin:0 0 18px;color:var(--muted)}
.page-hero{padding:160px clamp(20px,5vw,72px) 74px;background:linear-gradient(135deg,#f9fcfb 0%,#e8f4f1 100%)}
.page-hero.split{display:grid;grid-template-columns:minmax(0,.88fr) minmax(340px,.68fr);gap:38px;align-items:center}
.contact-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px;box-shadow:0 16px 48px rgba(15,36,42,.08)}
.contact-panel a{font-weight:900;color:var(--teal-dark);text-decoration:none}
.site-footer{background:#111820;color:#fff;padding:64px clamp(20px,5vw,72px) 92px}
.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,minmax(0,.8fr));gap:30px}
.footer-logo{width:220px;height:auto;background:#fff;border-radius:14px;padding:10px;margin-bottom:16px}
.site-footer p,.site-footer span{color:#cbd5d1}
.site-footer a{display:block;color:#fff;text-decoration:none;margin:8px 0}
.site-footer h3{margin-top:0}
.footer-badges{display:flex;gap:8px;flex-wrap:wrap}.footer-badges span{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:7px 10px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-credit a{display:inline;color:#fff;text-decoration:underline;margin:0}
.mobile-sticky{display:none}
@media (min-width:1024px){.mobile-menu-toggle{display:none!important}}
@media (max-width:1023px){
  .nav-wrap{top:10px}.nav-pill{width:calc(100% - 24px);justify-content:space-between;border-radius:28px}.brand img{width:145px}.nav-links,.nav-cta{display:none}.mobile-menu-toggle{display:block}
  .mobile-nav{position:fixed;inset:0;background:#fff;z-index:19;padding:100px 24px 30px;display:none;flex-direction:column;gap:16px}.mobile-nav.open{display:flex}.mobile-nav a{font-size:24px;font-weight:900;text-decoration:none;color:var(--ink)}.mobile-phone{color:var(--teal-dark)!important}
  .hero,.quote-bridge,.proof,.two-col,.page-hero.split{grid-template-columns:1fr}.hero{padding-top:125px;min-height:auto}.service-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.trust-strip{grid-template-columns:1fr 1fr 1fr}.gr-summary{align-items:flex-start;flex-direction:column}
  .mobile-sticky{position:fixed;left:0;right:0;bottom:0;z-index:21;display:grid;grid-template-columns:1fr 1fr}.mobile-sticky a{text-align:center;text-decoration:none;color:#fff;font-weight:900;padding:15px}.mobile-sticky a:first-child{background:var(--teal)}.mobile-sticky a:last-child{background:#0a0a0a}
}
@media (max-width:640px){
  .hero-copy h1,.page-hero h1{font-size:42px}.hero-copy p,.page-hero p{font-size:18px}.hero-actions{display:grid}.trust-strip,.quote-form,.service-grid,.footer-grid{grid-template-columns:1fr}.section{padding-top:58px;padding-bottom:58px}.quote-bridge{padding-top:40px;padding-bottom:40px}.gr-score{font-size:34px}
}
