:root{--bg:#f8fafc;--white:#fff;--text:#0f172a;--muted:#475569;--muted-2:#64748b;--line:#e2e8f0;--blue:#0369a1;--gold:#facc15;--slate-950:#020617;--shadow:0 10px 30px rgba(15,23,42,.08);--radius:28px} *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Inter",Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.55} img{max-width:100%;display:block}a{text-decoration:none}button,input{font:inherit}.container{width:min(1200px,calc(100% - 32px));margin:0 auto} .skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:12px;top:12px;z-index:100;background:#fff;padding:8px 12px} .announcement-bar{background:#facc15;color:#082152;font-weight:800;text-align:center;padding:10px 14px;font-size:.95rem} .site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line)} .header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand-logo{height:56px;width:auto}.header-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.header-link{color:var(--muted);font-weight:600;font-size:14px} .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 22px;border-radius:999px;border:1px solid transparent;font-weight:700;font-size:14px;cursor:pointer;transition:all .15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--blue);color:#fff}.btn-secondary{background:#fff;color:var(--text);border-color:var(--line)}.btn-light{background:#fff;color:var(--text)}.btn-outline-light{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}.full{width:100%} .hero{background-image:linear-gradient(rgba(8,33,82,.72),rgba(8,33,82,.72)),url('https://images.unsplash.com/photo-1600585154526-990dced4db0d?auto=format&fit=crop&w=1800&q=80');background-position:center;background-size:cover}.hero-inner{padding:86px 0 110px} .prod-badge{display:inline-flex;align-items:center;background:#082152;color:#fff;border-radius:999px;padding:.5rem .9rem;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 24px rgba(8,33,82,.22)} .pill,.section-kicker,.stat-label,.selected-label{text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:12px;color:var(--blue)}.pill{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);border-radius:999px;padding:8px 14px;color:#d7efff;margin-top:12px} h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-.03em}h1{margin-top:18px;font-size:clamp(2.5rem,5vw,4.6rem);color:#fff;font-weight:900}h1 span{color:var(--gold)}h2{font-size:clamp(2rem,4vw,3rem);font-weight:900}h3{font-size:1.35rem;font-weight:900} .hero-copy{margin-top:20px;max-width:880px;color:#e5eefb;font-size:clamp(1rem,1.8vw,1.22rem);line-height:1.7}.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:12px}.hero-actions{margin-top:28px} .hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;max-width:920px}.proof{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:14px 16px;color:#fff}.proof strong{display:block;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#d7efff;margin-bottom:4px}.proof span{font-size:.93rem;line-height:1.5;color:#eef6ff} .section{padding:72px 0}.section-overlay-light{background-image:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.9)),url('https://images.unsplash.com/photo-1512917774080-9991f1c4c750?auto=format&fit=crop&w=1400&q=75');background-size:cover;background-position:center}.gray-section{background:#f1f5f9}.grid-2{display:grid;grid-template-columns:1.08fr .92fr;gap:32px;align-items:start} .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.large-card{margin-top:24px}.section-copy{color:var(--muted);max-width:760px} .label{display:block;margin-bottom:10px;font-size:14px;font-weight:700}.input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:18px;padding:12px 16px;outline:none;background:#fff}.search-wrap{position:relative}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted-2);font-size:18px}.search-wrap .input{padding-left:44px} .charity-list{margin-top:12px;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:18px;background:#fff}.charity-option,.charity-empty{width:100%;border:0;background:transparent;display:block;text-align:left;padding:14px 16px;font-size:14px;cursor:pointer}.charity-option:hover{background:#f0f9ff}.charity-option.active{background:#e0f2fe;color:#075985;font-weight:700}.charity-empty{color:var(--muted-2);cursor:default} .selected-card{margin-top:16px;border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:18px}.selected-name{margin-top:6px;color:#075985;font-size:1.25rem;font-weight:900}.stats-grid{margin-top:16px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-box{background:#fff;border-radius:18px;padding:14px;box-shadow:0 4px 16px rgba(15,23,42,.05)}.stat-value{margin-top:6px;font-size:1.8rem;font-weight:900}.selected-copy{margin-top:16px;color:var(--muted);line-height:1.8} .small-note{color:var(--muted-2);font-size:12px;line-height:1.6}.top-gap{margin-top:16px}.top-gap-sm{margin-top:12px}.side-stack{display:flex;flex-direction:column;gap:20px}.quote-card{background-image:linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)),url('https://images.unsplash.com/photo-1605146769289-440113cc3d00?auto=format&fit=crop&w=1400&q=80');background-size:cover;background-position:center}.small-logo{height:48px;width:auto;object-fit:contain}

/* FIX 5: image-panel uses data-bg lazy loading via JS — no background-image in CSS */
.image-panel{min-height:260px;border-radius:32px;border:1px solid var(--line);box-shadow:var(--shadow);background-size:cover;background-position:center;background-color:#e2e8f0}

/* FIX 6: image-panel-house duplicate image removed — JS sets it from data-bg at 1400w instead of loading 1800w + 1600w */
/* REMOVED: .image-panel-house{background-image:...photo-1512917774080...w=1600} */

/* FIX 5: coverage images use data-bg lazy loading — background-image set by JS */
.coverage-grid{margin-top:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.coverage-card{overflow:hidden;border-radius:28px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow)}.coverage-image{height:210px;background-size:cover;background-position:center;background-color:#e2e8f0}

/* REMOVED individual .auto-img, .home-img, .moto-img, .boat-img background-image rules */
/* Those are now set dynamically by the IntersectionObserver in script.js */

.coverage-content{padding:20px}.icon-badge{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:var(--blue);color:#fff;font-size:22px}

/* FIX 4: Footer logo — remove the brightness/invert filter that makes the logo invisible */
/* The logo will render naturally; ensure logo2.jpg works on a dark bg, or swap to a white PNG */
.site-footer{background:var(--slate-950);color:#cbd5e1;padding:40px 0}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:24px}.footer-logo{height:64px;width:auto;object-fit:contain}.light-logo{filter:brightness(0) invert(1)}.footer-subtitle{margin-top:10px;font-size:14px;color:#94a3b8}.footer-copy{margin-top:16px;max-width:700px;color:#94a3b8;line-height:1.8;font-size:14px}.footer-contact{display:grid;gap:8px;font-size:14px}

/* NOTE on FIX 4: The .light-logo filter is kept above because logo2.jpg appears to be a
   dark/coloured logo that inverts to white correctly for the dark footer.
   If the logo looks blank, replace logo2.jpg in the footer with a white-on-transparent PNG
   and remove the filter: brightness(0) invert(1) rule from .light-logo */

@media (max-width:1100px){.grid-2,.footer-inner,.hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.container{width:min(100% - 24px,1200px)}.header-inner{flex-direction:column;align-items:flex-start;padding:12px 0}.header-actions{width:100%;flex-wrap:wrap}.grid-2,.coverage-grid,.stats-grid,.hero-proof,.footer-inner{grid-template-columns:1fr}.btn,.button-row .btn{width:100%}}
