:root{
  --bg:#071009;--bg2:#0a120b;--surface:#0e1810;--surface2:#132019;--line:#26392b;
  --text:#f5f7f5;--muted:#aebbb1;--green:#2fb94e;--green2:#62df79;--red:#c9362d;
  --amber:#f1b541;--shadow:0 18px 50px rgba(0,0,0,.34);--radius:22px;--max:1180px;
  --safe-bottom:max(12px,env(safe-area-inset-bottom));
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:linear-gradient(180deg,var(--bg),var(--bg2) 50%,#060b07);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;padding-bottom:92px;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(calc(100% - 32px),var(--max));margin:auto}.eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:850}.muted,.optional,.field-hint{color:var(--muted)}.skip-link{position:fixed;z-index:200;left:12px;top:10px;padding:10px 14px;border-radius:10px;background:#fff;color:#071009;font-weight:850;transform:translateY(-150%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid #8cf19d;outline-offset:3px}
.top-alert{background:#101711;border-bottom:1px solid var(--line);font-size:.85rem}.top-alert-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:12px}.top-alert a{font-weight:850;color:#fff}.site-notice{background:#2a2010;border-bottom:1px solid #57451f;color:#f8e5b7}.site-notice[hidden]{display:none}.notice-inner{min-height:42px;display:flex;align-items:center;gap:10px;font-size:.84rem}.notice-inner strong{color:#ffd776}
.site-header{position:sticky;top:0;z-index:40;background:rgba(7,16,9,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-logo{width:190px;height:auto;max-height:62px;object-fit:contain;object-position:left center}.desktop-nav{display:flex;align-items:center;gap:22px;font-weight:750;font-size:.9rem}.desktop-nav a:hover{color:var(--accent)}
.btn{border:0;border-radius:14px;padding:13px 16px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease;min-height:46px}.btn:hover{transform:translateY(-1px)}.btn:focus-visible,.quick-action:focus-visible,.text-action:focus-visible,.urgent-choice:has(input:focus-visible){outline:3px solid rgba(98,223,121,.45);outline-offset:2px}.btn-primary{background:var(--primary);color:#061108}.btn-danger{background:var(--danger);color:#fff}.btn-dark{background:#152019;color:#fff;border:1px solid var(--line)}.btn-outline{background:transparent;color:#fff;border:1px solid #405244}.btn-small{padding:9px 13px;min-height:40px;font-size:.83rem}.full{width:100%}
.hero{padding:64px 0 42px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(47,185,78,.09);filter:blur(30px);right:-200px;top:-170px;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.hero h1{font-size:clamp(2.7rem,6vw,5.6rem);line-height:.95;letter-spacing:-.055em;margin:12px 0 20px;max-width:850px}.hero h1 em{font-style:normal;color:var(--accent)}.hero .lead{font-size:1.08rem;color:#c8d3ca;max-width:700px;margin:0 0 26px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.trust-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.trust-chip{padding:9px 11px;border:1px solid var(--line);border-radius:999px;color:#c7d3c9;background:rgba(255,255,255,.025);font-size:.79rem;font-weight:700}
.quick-panel{background:linear-gradient(180deg,#111d13,#08100a);border:1px solid #2f4835;border-radius:30px;padding:18px;box-shadow:var(--shadow);max-width:410px;margin-left:auto}.quick-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.live-dot{width:10px;height:10px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px rgba(98,223,121,.1)}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-action{min-height:118px;border-radius:18px;border:1px solid #2a3c2e;background:#122016;padding:15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;color:#fff;text-align:left}.quick-action span{font-size:1.45rem}.quick-action b{font-size:.95rem}.quick-action small{font-size:.72rem;color:var(--muted)}.quick-action.quote{border-color:#2e5838;background:#102817}.quick-action.danger{border-color:#5a302b;background:#21100f}.install-card{margin-top:11px;width:100%;display:flex;align-items:center;gap:12px;background:#0a120c;border:1px dashed #3d5542;color:#fff;border-radius:16px;padding:12px;text-align:left}.install-card>span{width:36px;height:36px;border-radius:11px;background:#16311c;display:grid;place-items:center;color:var(--accent);font-size:1.25rem}.install-card b{display:block}.install-card small{display:block;color:var(--muted)}
.section{padding:56px 0}.compact-section{padding-top:34px}.section h2{font-size:clamp(2rem,4vw,3.55rem);line-height:1;letter-spacing:-.04em;margin:8px 0 14px}.section-intro{max-width:720px;color:var(--muted);margin-bottom:28px}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:end;margin-bottom:24px}.section-head p{margin:0 0 8px;color:var(--muted);max-width:540px}
.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.action-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-height:214px;display:flex;flex-direction:column;align-items:flex-start}.action-card.quote{border-color:#315b3a}.action-card.danger{border-color:#5a2f2b}.action-icon{font-size:1.6rem}.action-card h3{margin:12px 0 7px}.action-card p{color:var(--muted);font-size:.9rem;margin:0 0 18px}.text-action{margin-top:auto;background:none;border:0;color:var(--accent);font-weight:850;padding:0}.danger-text{color:#ff8f87}
.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plan-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;flex-direction:column}.plan-card.featured{border-color:#3b6a45;background:linear-gradient(180deg,#112216,#0d1810)}.plan-card h3{margin:0 0 6px}.plan-price{display:flex;align-items:baseline;gap:7px;margin:10px 0}.plan-price strong{font-size:2rem}.plan-card p{color:var(--muted);font-size:.9rem;margin:0 0 12px}.benefit-list{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:7px;color:#d0dad2;font-size:.84rem}.benefit-list li:before{content:"✓";color:var(--accent);font-weight:900;margin-right:8px}.plan-card .btn{width:100%;margin-top:auto}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{background:linear-gradient(180deg,#101b12,#0b130d);border:1px solid var(--line);border-radius:20px;padding:20px;min-height:176px;display:flex;flex-direction:column;align-items:flex-start}.service-card .service-icon{font-size:1.5rem}.service-card h3{margin:10px 0 7px}.service-card p{margin:0 0 16px;color:var(--muted);font-size:.9rem}.service-card button{margin-top:auto}
.local-proof{border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04);background:rgba(255,255,255,.012)}.gallery{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:12px}.gallery-card{min-height:285px;border-radius:20px;overflow:hidden;border:1px solid var(--line);position:relative;background:#122016}.gallery-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.82))}.gallery-card .gallery-copy{position:absolute;z-index:2;bottom:14px;left:15px;right:15px}.gallery-card b{display:block}.gallery-card small{color:#d3ddd5}.empty-state{border:1px dashed #35493a;border-radius:18px;padding:22px;color:var(--muted)}
.contact-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;background:#0e1810;border:1px solid var(--line);border-radius:28px;padding:24px}.contact-list{display:grid;gap:8px}.contact-item{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:12px 0}.contact-item span{display:block;color:var(--muted);font-size:.8rem}.contact-item strong{display:block}.contact-item a{font-weight:850;text-align:right}.cta-stack{display:grid;gap:10px;align-content:center}
footer{border-top:1px solid var(--line);padding:26px 0 44px;color:var(--muted);font-size:.82rem}.footer-grid{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.footer-grid strong{color:#fff}.footer-tools{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.footer-tools a,.footer-tools button{border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;padding:2px}.footer-credit{flex:0 0 100%;margin-top:2px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.72rem;letter-spacing:.02em;color:rgba(255,255,255,.52)}.footer-credit .footer-credit-brand{color:var(--accent);font-weight:700;text-decoration:none;text-underline-offset:3px}.footer-credit .footer-credit-brand:hover,.footer-credit .footer-credit-brand:focus-visible{text-decoration:underline;color:#8cf19d}.privacy-note a{text-decoration:underline;color:var(--accent)}
.bottom-nav{position:fixed;z-index:50;left:12px;right:12px;bottom:var(--safe-bottom);max-width:620px;margin:auto;height:66px;background:rgba(10,18,12,.97);border:1px solid #324437;border-radius:20px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 10px 30px rgba(0,0,0,.5);backdrop-filter:blur(12px)}.bottom-nav button,.bottom-nav a{background:none;border:0;color:#d3ddd5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.68rem;font-weight:750}.bottom-nav span{font-size:1.15rem}.bottom-nav .danger{color:#ff8b83}.bottom-nav .quote{color:#79e991}
.install-banner{position:fixed;z-index:60;left:12px;right:12px;bottom:calc(82px + var(--safe-bottom));max-width:620px;margin:auto;background:#132019;border:1px solid #3e5f45;border-radius:18px;padding:12px;display:none;align-items:center;gap:11px;box-shadow:var(--shadow)}.install-banner.show{display:flex}.install-banner>div{flex:1}.install-banner b{display:block;font-size:.87rem}.install-banner span{display:block;color:var(--muted);font-size:.74rem}.icon-button{border:0;background:transparent;color:#aab7ad;font-size:1.2rem;width:32px;height:32px}
.modal{position:fixed;z-index:80;inset:0;background:rgba(0,0,0,.76);display:none;align-items:flex-end;justify-content:center;padding:18px}.modal.open{display:flex}.sheet{width:min(100%,680px);max-height:min(92vh,900px);overflow:auto;background:#0d1710;border:1px solid #324438;border-radius:26px;padding:20px;box-shadow:var(--shadow);padding-bottom:max(20px,env(safe-area-inset-bottom))}.sheet-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.sheet-head h2{font-size:2rem;line-height:1;margin:5px 0 7px}.sheet-head p{margin:0;color:var(--muted);font-size:.88rem}.close-x{width:40px;height:40px;border-radius:12px;background:#172019;border:1px solid var(--line);color:#fff;font-size:1.4rem}.danger-note{border:1px solid #62332e;background:#23100f;color:#ffd3cf;border-radius:15px;padding:11px 13px;margin-bottom:14px;font-size:.85rem}.danger-note a{font-weight:900;text-decoration:underline}.form-grid{display:grid;gap:15px}.field{display:grid;gap:7px}.field label,.form-grid>label{font-size:.82rem;font-weight:800}.field input,.field textarea,.field select{width:100%;border-radius:13px;border:1px solid #34483a;background:#0a110c;color:#fff;padding:12px;min-height:46px}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid rgba(98,223,121,.35);border-color:#4a7b55}.field-hint{font-size:.75rem}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{border:1px solid #35483b;border-radius:13px;background:#101a12;padding:12px;display:flex;gap:8px;align-items:center}.choice:has(input:checked){border-color:#4b8558;background:#14281a}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.input-action{display:grid;grid-template-columns:1fr auto;gap:8px}.input-action button{border:1px solid #3b6545;background:#132419;color:#78e98f;border-radius:12px;padding:0 12px;font-weight:850}.remember{display:flex!important;align-items:center;gap:8px;color:#c7d2c9}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}.urgent-types{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.urgent-choice{position:relative;display:flex;align-items:center;gap:9px;min-height:50px;border:1px solid #35483b;border-radius:13px;background:#101a12;padding:10px 12px;font-size:.8rem;font-weight:800}.urgent-choice input{position:absolute;opacity:0;pointer-events:none}.urgent-choice span{font-size:1.15rem}.urgent-choice:has(input:checked){border-color:#d15d54;background:#261210;box-shadow:inset 0 0 0 1px rgba(224,67,56,.2)}.ios-steps{color:#c8d3ca;padding-left:22px}.ios-steps li{margin:10px 0}.toast{position:fixed;z-index:100;left:50%;bottom:calc(92px + var(--safe-bottom));transform:translate(-50%,20px);background:#f3f6f3;color:#0d140f;padding:10px 14px;border-radius:12px;font-weight:800;font-size:.8rem;opacity:0;pointer-events:none;transition:.2s;box-shadow:var(--shadow);text-align:center;max-width:calc(100% - 28px)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:901px){body{padding-bottom:0}.bottom-nav{display:none}.install-banner{bottom:22px}.modal{align-items:center}.sheet{border-radius:26px}.toast{bottom:24px}}
@media(max-width:900px){.desktop-nav{display:none}.hero{padding-top:38px}.hero-grid,.section-head,.contact-panel{grid-template-columns:1fr}.quick-panel{max-width:none;margin:0}.action-grid{grid-template-columns:1fr 1fr}.plans-grid,.service-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.gallery-card:first-child{grid-column:1/-1}.hero h1{font-size:clamp(2.65rem,12vw,4.5rem)}.section-head{gap:4px}.nav{height:68px}.brand-logo{width:168px}}
@media(max-width:620px){.wrap{width:min(calc(100% - 24px),var(--max))}.mobile-hide{display:none}.hero{padding:30px 0 26px}.hero h1{font-size:clamp(2.55rem,14vw,4rem)}.hero .lead{font-size:.98rem}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .btn-dark{grid-column:1/-1}.quick-grid{grid-template-columns:1fr 1fr}.quick-action{min-height:104px}.section{padding:42px 0}.section h2{font-size:2.15rem}.action-grid,.plans-grid,.service-grid{grid-template-columns:1fr}.action-card{min-height:0}.gallery{grid-template-columns:1fr}.gallery-card:first-child{grid-column:auto}.gallery-card{min-height:245px}.contact-item{align-items:flex-start}.contact-item a{font-size:.85rem}.two-col{grid-template-columns:1fr}.urgent-types{grid-template-columns:1fr 1fr}.form-actions{display:grid;grid-template-columns:1fr 1.25fr}.form-actions .btn{width:100%}.notice-inner{align-items:flex-start;flex-direction:column;gap:2px;padding:8px 0}.sheet{padding:16px}.modal{padding:8px}.input-action{grid-template-columns:1fr}.input-action button{min-height:42px}.top-alert-inner{min-height:42px}}
@media(max-width:390px){.hero-actions{grid-template-columns:1fr}.hero-actions .btn-dark{grid-column:auto}.urgent-types{grid-template-columns:1fr}.quick-action small{font-size:.68rem}.bottom-nav{left:8px;right:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* V3.1.2 — responsive conversion + form UX */
.hero-photo{position:relative;margin:0 0 16px;border-radius:20px;overflow:hidden;border:1px solid #314638;background:#08100a;aspect-ratio:16/9}.hero-photo img,.hero-photo video{width:100%;height:100%;object-fit:cover}.hero-photo video[hidden],.hero-photo img[hidden]{display:none}.hero-video-toggle{position:absolute;z-index:4;right:12px;top:12px;border:1px solid rgba(255,255,255,.28);background:rgba(5,12,7,.78);color:#fff;border-radius:999px;padding:7px 10px;font-size:.7rem;font-weight:800;backdrop-filter:blur(6px)}.hero-video-toggle[hidden]{display:none}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.75))}.hero-photo figcaption{position:absolute;z-index:2;left:14px;right:14px;bottom:12px;display:flex;align-items:end;justify-content:space-between;gap:12px}.hero-photo strong{font-size:.86rem;text-transform:uppercase;letter-spacing:.08em}.hero-photo span{font-size:.72rem;color:#d0dad2}.services-toggle{display:none;margin:16px auto 0;border:1px solid #3a5840;background:#101a12;color:#fff;border-radius:12px;padding:11px 16px;font-weight:850}.bottom-nav svg{width:21px;height:21px;fill:currentColor}.bottom-nav .call{color:#d3ddd5}
.compact-fieldset{border:0;padding:0;margin:0;min-width:0}.compact-fieldset legend{font-size:.82rem;font-weight:800;margin-bottom:7px;padding:0}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segmented label{min-width:0}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #35483b;border-radius:13px;background:#101a12;color:#eef3ef;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 12px}.segmented input:checked+span{border-color:#4b8558;background:#17331d;color:#8cf19d;box-shadow:inset 0 0 0 1px rgba(98,223,121,.14)}.segmented.urgency input[value="Yes"]:checked+span{border-color:#a4453e;background:#321513;color:#ffb3ad}.select-shell{position:relative}.select-shell:after{content:"⌄";position:absolute;right:14px;top:50%;transform:translateY(-56%);font-size:1.15rem;pointer-events:none;color:#dce5dd}.select-shell select{appearance:none;padding-right:42px}.field select option{background:#0d1710;color:#fff}.single-action{position:sticky;bottom:-1px;z-index:5;display:block;width:auto;margin:4px -20px -20px;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(13,23,16,.25),#0d1710 22%);border-top:1px solid rgba(255,255,255,.05)}.single-action .btn{width:100%}.sheet-head{position:sticky;top:-1px;z-index:7;background:linear-gradient(180deg,#0d1710 82%,rgba(13,23,16,.93));padding:2px 0 10px}.sheet-head .close-x{flex:0 0 auto}.form-grid{padding-bottom:0}.field input,.field textarea,.field select{font-size:16px}.field textarea{min-height:82px}.remember input{width:21px;height:21px;accent-color:var(--primary)}

@media(min-width:901px){
  .hero-photo{aspect-ratio:16/8.5}.sheet{max-height:min(88dvh,900px)}.quote-sheet{width:min(100%,620px)}.urgent-sheet{width:min(100%,720px)}.service-sheet{width:min(100%,620px)}.single-action{margin-left:-20px;margin-right:-20px}.services-toggle{display:none!important}
}

@media(max-width:900px){
  .quick-panel{padding:0;background:transparent;border:0;box-shadow:none}.quick-panel .quick-head,.quick-panel .quick-grid{display:none}.quick-panel .install-card{display:none}.hero-photo{margin:0;box-shadow:var(--shadow)}
  .mobile-secondary-actions{display:none}.plans-grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding:2px 1px 12px;margin-right:calc((100vw - min(calc(100% - 32px),var(--max)))/-2);scrollbar-width:none}.plans-grid::-webkit-scrollbar{display:none}.plan-card{flex:0 0 min(82vw,430px);scroll-snap-align:start}.gallery{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:none}.gallery::-webkit-scrollbar{display:none}.gallery-card,.gallery-card:first-child{flex:0 0 min(82vw,430px);min-height:280px;scroll-snap-align:start;grid-column:auto}.cta-stack{display:none}.services-toggle{display:block}.service-card.mobile-extra-service{display:none}.service-grid.services-expanded .service-card.mobile-extra-service{display:flex}
}

@media(max-width:620px){
  body{padding-bottom:82px}.top-alert{position:sticky;top:0;z-index:55}.site-header{top:42px}.nav{height:58px}.brand-logo{width:150px;max-height:48px}.hero{padding:24px 0 22px}.hero-grid{gap:18px}.hero h1{font-size:clamp(2.35rem,13vw,3.7rem);margin:8px 0 12px;line-height:.93}.hero .lead{font-size:.92rem;line-height:1.45;margin-bottom:17px}.hero-actions{grid-template-columns:1fr 1fr;gap:8px}.hero-actions .btn{min-height:44px;padding:10px 11px;font-size:.83rem}.hero-actions .btn-dark{grid-column:1/-1}.trust-row{margin-top:14px;gap:6px}.trust-chip{font-size:.7rem;padding:6px 8px}.hero-photo{aspect-ratio:16/9;border-radius:17px}.section{padding:34px 0}.section h2{font-size:1.95rem;margin-bottom:10px}.section-intro{font-size:.88rem;margin-bottom:18px}.plan-card{flex-basis:86vw;padding:16px}.plan-price{margin:7px 0}.plan-price strong{font-size:1.72rem}.benefit-list{gap:5px;font-size:.78rem}.service-grid{gap:9px}.service-card{padding:15px;min-height:0;border-radius:16px}.service-card h3{margin:6px 0 4px;font-size:.95rem}.service-card p{font-size:.8rem;margin-bottom:10px}.service-card .service-icon{font-size:1.25rem}.gallery-card,.gallery-card:first-child{flex-basis:86vw;min-height:240px}.contact-panel{padding:17px;border-radius:20px}.contact-panel h2{font-size:1.85rem}.contact-item{padding:9px 0}.contact-item span{font-size:.72rem}.contact-item strong,.contact-item a{font-size:.8rem}.bottom-nav{height:62px;grid-template-columns:repeat(3,1fr);left:8px;right:8px;border-radius:18px}.bottom-nav small{font-size:.64rem}.bottom-nav svg{width:20px;height:20px}.install-banner{bottom:calc(72px + var(--safe-bottom));padding:10px}.modal{padding:0;align-items:flex-end;background:rgba(0,0,0,.82)}.sheet{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));border-radius:24px 24px 0 0;border-bottom:0;padding:16px 16px 0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sheet-head{margin:0 -2px 12px;padding:2px 2px 10px}.sheet-head h2{font-size:1.85rem;margin:3px 0 5px}.sheet-head p{font-size:.8rem;line-height:1.35}.close-x{width:44px;height:44px;border-radius:14px}.danger-note{margin-bottom:11px;padding:9px 11px;font-size:.78rem}.form-grid{gap:11px}.field{gap:5px}.field label,.form-grid>label,.compact-fieldset legend{font-size:.78rem}.field input,.field textarea,.field select{min-height:44px;border-radius:12px;padding:10px 11px}.field textarea{min-height:72px}.field-hint{font-size:.68rem}.segmented{gap:7px}.segmented span{min-height:44px;font-size:.82rem}.urgent-types{gap:6px}.urgent-choice{min-height:43px;padding:8px 9px;border-radius:11px;font-size:.72rem;gap:6px}.urgent-choice span{font-size:.95rem}.input-action{grid-template-columns:1fr auto;gap:7px}.input-action button{min-height:44px;padding:0 10px;font-size:.73rem}.two-col{gap:8px}.remember{font-size:.75rem;line-height:1.3}.remember input{flex:0 0 20px}.single-action{margin:1px -16px 0;padding:11px 16px max(11px,env(safe-area-inset-bottom))}.single-action .btn{min-height:50px;font-size:.92rem}.ios-sheet{padding-bottom:max(20px,env(safe-area-inset-bottom))}
}

@media(max-width:390px){
  .hero-actions{grid-template-columns:1fr}.hero-actions .btn-dark{grid-column:auto}.urgent-types{grid-template-columns:1fr 1fr}.input-action{grid-template-columns:1fr}.input-action button{width:100%}.plan-card{flex-basis:90vw}.gallery-card,.gallery-card:first-child{flex-basis:90vw}.sheet-head h2{font-size:1.7rem}.segmented span{font-size:.78rem}.urgent-choice{font-size:.69rem}
}


/* V3.1.3 — desktop layout hotfix */
.hero-visual{width:100%;max-width:540px;margin-left:auto;min-width:0}.hero-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.hero-proof-grid div{min-width:0;border:1px solid var(--line);background:#0d1810;border-radius:14px;padding:11px 10px;text-align:center}.hero-proof-grid strong{display:block;color:var(--accent);font-size:.92rem}.hero-proof-grid span{display:block;color:var(--muted);font-size:.68rem;line-height:1.25;margin-top:2px}.hero-install{margin-top:10px}.hero-visual .hero-photo{margin:0;aspect-ratio:16/10;min-height:0}.hero-visual .hero-photo img,.hero-visual .hero-photo video{object-position:center center}.hero-visual .hero-photo figcaption{align-items:flex-end}.hero-visual .hero-photo figcaption strong{font-size:.82rem}.hero-visual .hero-photo figcaption span{max-width:190px;text-align:right}

@media(min-width:1150px){
  :root{--max:1240px}
  .nav{height:82px}.brand-logo{width:236px;max-height:66px}
  .hero{padding:58px 0 50px}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:58px;align-items:center}
  .hero-copy{min-width:0}.hero h1{font-size:clamp(3.7rem,5.15vw,4.85rem);max-width:760px;line-height:.96;margin:12px 0 18px}.hero .lead{max-width:650px;font-size:1.04rem}
  .hero-actions{gap:10px}.trust-row{margin-top:20px}.hero-visual{max-width:520px}
  .compact-section{padding-top:42px}.action-grid{gap:16px}.action-card{min-height:196px}
}

@media(min-width:901px) and (max-width:1149px){
  :root{--max:980px}
  .nav{height:74px}.brand-logo{width:210px;max-height:60px}.desktop-nav{gap:14px;font-size:.82rem}.desktop-nav .btn-small{padding:8px 10px;font-size:.76rem}
  .hero{padding:44px 0 38px}.hero-grid{grid-template-columns:1fr;gap:28px;align-items:start}.hero-copy{max-width:820px}.hero h1{font-size:clamp(3.25rem,7.2vw,4.5rem);max-width:820px;line-height:.96;margin:10px 0 16px}.hero .lead{max-width:700px}.hero-visual{max-width:none;margin:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:14px;align-items:stretch}.hero-visual .hero-photo{grid-row:1/3;aspect-ratio:16/8.8;min-height:310px}.hero-proof-grid{grid-template-columns:1fr;align-content:start;margin:0}.hero-proof-grid div{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:12px 14px}.hero-proof-grid span{margin:0;text-align:right}.hero-install{margin:0;align-self:end}.compact-section{padding-top:30px}.section-head{grid-template-columns:1fr;gap:8px}.action-grid{grid-template-columns:1fr 1fr}.action-card{min-height:180px}.plans-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .hero-visual{max-width:none;margin:0}.hero-visual .hero-photo{aspect-ratio:16/9}.hero-proof-grid{grid-template-columns:repeat(3,1fr)}.hero-install{display:none}
}

@media(max-width:620px){
  .hero-proof-grid{gap:6px;margin-top:8px}.hero-proof-grid div{padding:9px 6px;border-radius:12px}.hero-proof-grid strong{font-size:.78rem}.hero-proof-grid span{font-size:.61rem}.hero-visual .hero-photo figcaption{display:block}.hero-visual .hero-photo figcaption span{display:block;text-align:left;max-width:none;margin-top:2px}
}

/* V3.1.4 — real business + trust */
.trust-section{background:linear-gradient(180deg,rgba(255,255,255,.012),rgba(47,185,78,.025));border-top:1px solid rgba(255,255,255,.04)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.trust-grid article{border:1px solid var(--line);background:#0d1810;border-radius:18px;padding:18px;min-width:0}.trust-grid strong{display:block;color:var(--accent);font-size:1.05rem}.trust-grid span{display:block;font-weight:850;margin:3px 0 8px}.trust-grid small{display:block;color:var(--muted);line-height:1.45}.business-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.business-links a{border:1px solid #35503b;background:#101a12;color:#e8f0ea;border-radius:999px;padding:9px 12px;font-size:.75rem;font-weight:850}.business-links a:hover{border-color:#4b7a55;color:var(--accent)}
@media(max-width:900px){.trust-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hero-photo video{pointer-events:none}.trust-grid{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}.trust-grid::-webkit-scrollbar{display:none}.trust-grid article{flex:0 0 78vw;scroll-snap-align:start;padding:15px}.business-links{gap:6px}.business-links a{font-size:.7rem;padding:8px 10px}.hero-visual .hero-photo img,.hero-visual .hero-photo video{object-position:center center}}

/* V3.1.6 form CTA hotfix */
.form-actions.single-action{display:block!important;grid-template-columns:none!important;justify-content:stretch!important}.form-actions.single-action .btn{display:flex!important;width:100%!important;max-width:none!important;min-height:54px!important;margin:0!important;text-align:center;white-space:normal;line-height:1.15}.danger-action .btn{box-shadow:0 10px 28px rgba(224,67,56,.18)}
@media(max-width:620px){.form-actions.single-action{margin-left:-16px!important;margin-right:-16px!important;padding-left:16px!important;padding-right:16px!important}.form-actions.single-action .btn{border-radius:14px;font-size:.96rem!important}}


/* V3.1.7 Contact Hub redesign */
.contact-hub-section{padding-top:28px}.contact-hub-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px}.contact-hub-head>div:first-child{max-width:640px}.contact-hub-head p{margin:5px 0 0;color:var(--muted);font-size:.9rem}.contact-hub-call{display:flex;align-items:center;gap:12px;border:1px solid #2f5c39;background:linear-gradient(180deg,#0d1b10,#08110a);border-radius:18px;padding:12px 15px;min-width:270px;box-shadow:0 0 0 1px rgba(67,220,91,.05),0 12px 30px rgba(0,0,0,.25)}.contact-hub-call-icon{width:46px;height:46px;border:1px solid #2c6a3a;border-radius:13px;display:grid;place-items:center;background:#0a150c;box-shadow:inset 0 0 18px rgba(53,222,82,.08)}.contact-hub-call-icon svg{width:23px;height:23px;fill:#67eb7d}.contact-hub-call strong{display:block;font-size:1.25rem;line-height:1.1}.contact-hub-call small{display:block;margin-top:4px;color:#69ea7d;font-weight:850;letter-spacing:.04em}.contact-hub-card{background:linear-gradient(180deg,#0d1a10,#09120b);border:1px solid #2b5836;border-radius:24px;padding:8px 20px;box-shadow:0 18px 50px rgba(0,0,0,.26),inset 0 0 35px rgba(56,210,79,.025)}.contact-list-rich{gap:0}.contact-list-rich .contact-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid #213a28}.contact-list-rich .contact-item:last-child{border-bottom:0}.contact-icon-box{width:54px;height:54px;border:1px solid #315e3a;border-radius:16px;display:grid;place-items:center;background:#0b160d;box-shadow:inset 0 0 18px rgba(72,232,95,.04)}.contact-icon-box svg{width:27px;height:27px;fill:none;stroke:#6cf087;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.contact-copy span{font-size:.78rem;color:var(--muted);font-weight:650}.contact-copy strong{font-size:.96rem;margin-top:2px}.contact-action{display:flex;align-items:center;gap:9px;font-weight:900;text-align:right;white-space:nowrap}.contact-action .chev{color:#62e778;font-size:1.3rem;line-height:1}.contact-action.direction-btn{border:1px solid #4eae5e;border-radius:12px;padding:9px 12px;color:#70ee84;background:#0b170d}.connect-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:22px 0 14px}.connect-heading span{height:1px;background:linear-gradient(90deg,transparent,#34563a)}.connect-heading span:last-child{background:linear-gradient(90deg,#34563a,transparent)}.connect-heading strong{font-size:.75rem;letter-spacing:.2em;color:#6ce781}.business-link-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.business-link-cards a{display:block;border:1px solid #2d5335;background:linear-gradient(180deg,#0d1710,#09110b);border-radius:18px;padding:16px;min-height:152px;position:relative;overflow:hidden}.business-link-cards a:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(91,225,111,.08) 1px,transparent 0);background-size:12px 12px;opacity:.45;pointer-events:none}.social-icon-wrap{position:relative;width:54px;height:54px;border:1px solid #356c3e;border-radius:16px;display:grid;place-items:center;margin-bottom:15px;background:#0a140c;box-shadow:0 0 22px rgba(51,218,76,.08)}.social-icon-wrap svg{width:29px;height:29px;position:relative}.social-google svg{fill:#67e77b}.social-facebook{border-color:#275c9d;box-shadow:0 0 22px rgba(53,130,255,.12)}.social-facebook svg{fill:#4b8df8}.social-whatsapp svg{fill:#6fea80}.business-link-cards strong{position:relative;display:block;font-size:.98rem}.business-link-cards small{position:relative;display:flex;align-items:center;justify-content:space-between;margin-top:6px;color:#69e77d;font-size:.76rem;font-weight:800}.business-link-cards small span{font-size:1.05rem}.bottom-nav{border-color:#34563c;box-shadow:0 12px 34px rgba(0,0,0,.55),0 0 0 1px rgba(74,214,95,.03)}
@media(max-width:900px){.contact-hub-head{align-items:stretch;flex-direction:column}.contact-hub-call{min-width:0;width:100%}.business-link-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.contact-hub-section{padding-top:24px}.contact-hub-head{margin-bottom:12px}.contact-hub-head h2{font-size:1.75rem;margin-bottom:4px}.contact-hub-head p{font-size:.78rem}.contact-hub-call{padding:10px 12px;border-radius:15px}.contact-hub-call-icon{width:42px;height:42px}.contact-hub-call strong{font-size:1.02rem}.contact-hub-call small{font-size:.66rem}.contact-hub-card{padding:4px 14px;border-radius:20px}.contact-list-rich .contact-item{grid-template-columns:46px minmax(0,1fr) auto;gap:10px;padding:14px 0}.contact-icon-box{width:46px;height:46px;border-radius:13px}.contact-icon-box svg{width:23px;height:23px}.contact-copy span{font-size:.68rem}.contact-copy strong{font-size:.8rem;line-height:1.25}.contact-action{font-size:.76rem;gap:5px}.contact-action.direction-btn{padding:7px 9px;font-size:.7rem}.connect-heading{margin:18px 0 11px;gap:9px}.connect-heading strong{font-size:.67rem}.business-link-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:9px;padding-bottom:4px;scrollbar-width:none}.business-link-cards::-webkit-scrollbar{display:none}.business-link-cards a{flex:0 0 76vw;min-height:128px;padding:14px;scroll-snap-align:start}.social-icon-wrap{width:48px;height:48px;margin-bottom:11px}.business-link-cards strong{font-size:.9rem}.business-link-cards small{font-size:.72rem}.contact-action.email-action{max-width:41vw;white-space:normal;word-break:break-word}.contact-copy.office-copy strong{max-width:38vw}.contact-hub-section+.footer{margin-top:0}}

/* V3.1.8 — performance, SEO & restrained visual polish */
body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.035;background-image:radial-gradient(circle at 20% 10%,#fff 0 .45px,transparent .6px),radial-gradient(circle at 70% 45%,#fff 0 .35px,transparent .55px);background-size:7px 7px,11px 11px;mix-blend-mode:soft-light}
.hero h1,.section h2,.action-card h3,.plan-card h3,.service-card h3,.trust-grid strong,.contact-hub-head h2{font-family:"Arial Narrow","Aptos Narrow","Roboto Condensed",Inter,system-ui,sans-serif;font-stretch:condensed;letter-spacing:-.025em}
.btn-icon{display:inline-grid;place-items:center;margin-right:7px;vertical-align:middle}.btn-icon .ui-icon{width:18px;height:18px}
.ui-icon{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.action-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #31593a;border-radius:12px;background:#0b160d;color:#69ea7f;margin-bottom:12px}.action-icon .ui-icon{width:21px;height:21px}.action-card.danger .action-icon{border-color:#68352f;color:#ff776d;background:#1a0d0b}
.service-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #31583a;border-radius:13px;background:#0b160d;color:#68e97d;font-size:0}.service-icon .service-svg{width:22px;height:22px}
.action-card,.plan-card,.service-card,.trust-grid article,.contact-hub-card{position:relative}
/* V3.1.14 — remove decorative corner overlays that made card borders look doubled/broken. */
.action-card::before,.action-card::after,.plan-card::before,.plan-card::after,.service-card::before,.service-card::after,.trust-grid article::before,.trust-grid article::after{content:none}
.hero-photo{isolation:isolate}.hero-photo::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,rgba(64,226,89,.08),transparent 34%)}
@media(prefers-reduced-motion:no-preference){.hero-copy>*{animation:etRise .48s ease both}.hero-copy>*:nth-child(2){animation-delay:.05s}.hero-copy>*:nth-child(3){animation-delay:.1s}.hero-copy>*:nth-child(4){animation-delay:.15s}.hero-visual{animation:etRise .55s .1s ease both}@keyframes etRise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.urgent-mini-icon{display:grid;place-items:center;width:22px;height:22px;color:#70ea84}.urgent-mini-icon .ui-icon{width:17px;height:17px}.urgent-choice:has(input:checked) .urgent-mini-icon{color:#061108}


/* V3.1.9 — Quick Access & lead growth */
.quick-access-section{padding:28px 0 22px}.quick-access-shell{position:relative;overflow:hidden;border:1px solid #2d5d38;background:linear-gradient(135deg,#0d1c11 0%,#08100a 58%,#0b1710 100%);border-radius:28px;padding:24px;box-shadow:0 20px 55px rgba(0,0,0,.28),inset 0 0 42px rgba(62,224,90,.025)}.quick-access-shell:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(105,235,127,.09) 1px,transparent 0);background-size:18px 18px;mask-image:linear-gradient(90deg,#000,transparent 80%);opacity:.36;pointer-events:none}.quick-access-head,.quick-access-grid,.quick-access-tools,.quick-access-note{position:relative}.quick-access-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px}.quick-access-head h2{margin:4px 0 8px}.quick-access-head p{max-width:690px;margin:0;color:var(--muted);line-height:1.55}.quick-access-badge{display:flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid #315f3b;background:#0a160d;border-radius:999px;padding:9px 12px;color:#a9b8ac;font-size:.75rem}.quick-access-badge span{width:8px;height:8px;border-radius:50%;background:#65df79;box-shadow:0 0 0 5px rgba(101,223,121,.08)}.quick-access-badge.installed{border-color:#4a8d57;color:#7deb90}.quick-access-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.quick-access-action{min-width:0;border:1px solid #2d4833;background:#0b1510;border-radius:17px;padding:15px 13px;color:#eef4ef;display:flex;gap:11px;align-items:center;text-align:left;min-height:88px;transition:.18s ease}.quick-access-action:hover{border-color:#497456;transform:translateY(-1px)}.quick-access-action.danger{border-color:#61352f;background:#1b0e0d}.quick-access-action.location,.quick-access-action.whatsapp{border-color:#305d39}.quick-access-icon{flex:0 0 42px;width:42px;height:42px;border:1px solid #315f3b;border-radius:13px;display:grid;place-items:center;background:#0a160d}.quick-access-action.danger .quick-access-icon{border-color:#7b4239;background:#210f0e}.quick-access-icon svg{width:22px;height:22px;fill:none;stroke:#70ed85;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quick-access-action.danger svg{stroke:#ff8f87}.quick-access-action strong{display:block;font-size:.84rem;line-height:1.2}.quick-access-action small{display:block;color:var(--muted);font-size:.67rem;line-height:1.3;margin-top:4px}.quick-access-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}.quick-access-tools button{border:1px solid #263c2c;background:#08110b;color:#dce6de;border-radius:14px;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;min-width:0}.quick-access-tools button:hover{border-color:#446d4e}.quick-access-tools svg{flex:0 0 20px;width:20px;height:20px;fill:none;stroke:#69e77e;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quick-access-tools b{display:block;font-size:.77rem}.quick-access-tools small{display:block;color:var(--muted);font-size:.64rem;margin-top:2px}.quick-access-note{margin:12px 2px 0;color:#819087;font-size:.69rem}.assessment-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.privacy-note{border:1px solid #2a4230;background:#0a120c;border-radius:12px;padding:10px 11px;color:#99a79c;font-size:.72rem;line-height:1.45}
@media(max-width:1000px){.quick-access-grid{grid-template-columns:repeat(3,1fr)}.quick-access-grid .quick-access-action:nth-child(4),.quick-access-grid .quick-access-action:nth-child(5){grid-column:span 1}.quick-access-tools{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.quick-access-section{padding:12px 0 20px}.quick-access-shell{border-radius:20px;padding:16px}.quick-access-head{align-items:flex-start;margin-bottom:14px}.quick-access-head h2{font-size:1.75rem}.quick-access-head p{font-size:.82rem}.quick-access-badge{display:none}.quick-access-grid{grid-template-columns:1fr 1fr;gap:8px}.quick-access-action{min-height:76px;padding:11px 10px;gap:8px}.quick-access-grid .quick-access-action:first-child{grid-column:1/-1}.quick-access-icon{width:38px;height:38px;flex-basis:38px}.quick-access-action strong{font-size:.78rem}.quick-access-action small{font-size:.68rem}.quick-access-tools{grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.quick-access-tools button{padding:9px 10px}.quick-access-tools b{font-size:.71rem}.quick-access-tools small{font-size:.68rem}.quick-access-note{font-size:.69rem;line-height:1.45}.assessment-grid{grid-template-columns:1fr}.assessment-sheet .single-action{position:sticky;bottom:0;background:#0d1710;border-top:1px solid #26372b;z-index:2}.footer-tools{justify-content:flex-start}}

/* V3.1.11 — privacy, keyboard access and policy pages */
.privacy-page{min-height:100vh;padding:48px 0 72px}.privacy-card{max-width:820px;margin:auto;background:#0d1810;border:1px solid var(--line);border-radius:24px;padding:clamp(22px,5vw,44px)}.privacy-card h1{font-size:clamp(2.3rem,7vw,4rem);line-height:1;margin:10px 0 20px}.privacy-card h2{font-size:1.3rem;margin:28px 0 8px}.privacy-card p,.privacy-card li{color:#c5d0c7}.privacy-card a{color:var(--accent);text-decoration:underline}.privacy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}


/* V3.1.17 — mobile navigation + motion polish */
#quick-access,#plansSection,#services,#proof,#contact{scroll-margin-top:126px}
.mobile-nav-toggle{display:none;min-height:44px;border:1px solid #35523c;border-radius:13px;background:#101a12;color:#f4f7f4;padding:9px 12px;align-items:center;justify-content:center;gap:9px;font-weight:850}.mobile-nav-toggle:hover{border-color:#4c7756}.mobile-nav-icon{width:20px;height:16px;display:flex;flex-direction:column;justify-content:space-between}.mobile-nav-icon span{display:block;height:2px;border-radius:999px;background:#70ea84;transition:transform .18s ease,opacity .18s ease}.mobile-nav-toggle[aria-expanded="true"] .mobile-nav-icon span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-nav-toggle[aria-expanded="true"] .mobile-nav-icon span:nth-child(2){opacity:0}.mobile-nav-toggle[aria-expanded="true"] .mobile-nav-icon span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav-panel[hidden]{display:none!important}
@media(max-width:900px){.mobile-nav-toggle{display:inline-flex}.mobile-nav-panel{border-top:1px solid rgba(255,255,255,.06);background:rgba(7,16,9,.98);box-shadow:0 18px 34px rgba(0,0,0,.28)}.mobile-nav-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding-top:10px;padding-bottom:10px}.mobile-nav-links a{min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid #283d2d;background:#0c160e;border-radius:12px;padding:8px 9px;font-size:.76rem;font-weight:800;color:#dce6de}.mobile-nav-links a:active{background:#142219;border-color:#41634a;color:#82ed95}}
@media(max-width:620px){.mobile-nav-toggle{padding:8px 10px;gap:7px}.mobile-nav-label{font-size:.76rem}.mobile-nav-links{grid-template-columns:1fr 1fr;gap:7px;padding-top:9px;padding-bottom:11px}.mobile-nav-links a:last-child{grid-column:1/-1}.mobile-nav-links a{justify-content:flex-start;padding:10px 12px;font-size:.78rem}}
@media(prefers-reduced-motion:no-preference){.motion-ready .reveal-on-scroll{opacity:0;transform:translate3d(0,18px,0);transition:opacity .58s cubic-bezier(.22,.8,.24,1),transform .58s cubic-bezier(.22,.8,.24,1)}.motion-ready .reveal-on-scroll.is-visible{opacity:1;transform:none}.motion-ready .action-grid>.reveal-on-scroll:nth-child(2),.motion-ready .plans-grid>.reveal-on-scroll:nth-child(2),.motion-ready .service-grid>.reveal-on-scroll:nth-child(2),.motion-ready .trust-grid>.reveal-on-scroll:nth-child(2){transition-delay:.05s}.motion-ready .action-grid>.reveal-on-scroll:nth-child(3),.motion-ready .plans-grid>.reveal-on-scroll:nth-child(3),.motion-ready .service-grid>.reveal-on-scroll:nth-child(3),.motion-ready .trust-grid>.reveal-on-scroll:nth-child(3){transition-delay:.1s}.motion-ready .action-grid>.reveal-on-scroll:nth-child(4),.motion-ready .service-grid>.reveal-on-scroll:nth-child(4),.motion-ready .trust-grid>.reveal-on-scroll:nth-child(4){transition-delay:.15s}}
@media(prefers-reduced-motion:reduce){.mobile-nav-icon span{transition:none!important}.reveal-on-scroll{opacity:1!important;transform:none!important}}


/* V3.1.19 — service micro-animations */
.service-icon{position:relative;overflow:hidden;isolation:isolate}.service-icon .service-svg{position:relative;z-index:2;transform-origin:50% 50%}.service-icon::before,.service-icon::after{content:"";position:absolute;pointer-events:none;z-index:1;opacity:0}.quick-access-badge span{transform-origin:center}.hero-photo::after{z-index:3}.hero-photo .service-scan{display:none}
@media(prefers-reduced-motion:no-preference){
  .quick-access-badge span{animation:etStatusPulse 2.8s ease-in-out infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="pulse"]{animation:etIconPulse 3.2s ease-in-out .35s infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="shield"] .service-svg{animation:etShieldSettle 3.8s ease-in-out .45s infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="spark"] .service-svg{animation:etSpark 3.4s ease-in-out .5s infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="slide"] .service-svg{animation:etGateSlide 4.2s cubic-bezier(.2,.75,.25,1) .55s infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="ring"] .service-svg{animation:etBellRing 4s ease-in-out .55s infinite}
  .motion-ready .service-card.is-visible .service-icon[data-motion="scan"]::after{width:30px;height:2px;left:6px;top:10px;border-radius:999px;background:linear-gradient(90deg,transparent,#77ee8b,transparent);box-shadow:0 0 8px rgba(104,233,125,.42);opacity:.72;animation:etCameraScan 3.8s ease-in-out .45s infinite}
  .hero-photo::before{animation:etHeroGlow 6s ease-in-out infinite}
  .hero-photo::after{background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.75)),linear-gradient(100deg,transparent 0 45%,rgba(95,238,119,.11) 50%,transparent 55% 100%);background-size:100% 100%,220% 100%;animation:etHeroSweep 7s ease-in-out 1s infinite}
  @keyframes etStatusPulse{0%,72%,100%{box-shadow:0 0 0 5px rgba(101,223,121,.08)}82%{box-shadow:0 0 0 9px rgba(101,223,121,.03),0 0 14px rgba(101,223,121,.24)}}
  @keyframes etIconPulse{0%,72%,100%{box-shadow:inset 0 0 0 0 rgba(104,233,125,0)}82%{box-shadow:inset 0 0 18px rgba(104,233,125,.12),0 0 0 4px rgba(104,233,125,.04)}}
  @keyframes etShieldSettle{0%,75%,100%{transform:translateY(0) scale(1)}82%{transform:translateY(-1px) scale(1.07)}88%{transform:translateY(0) scale(1)}}
  @keyframes etSpark{0%,76%,100%{transform:translate(0,0) rotate(0)}80%{transform:translate(1px,-1px) rotate(2deg)}84%{transform:translate(-1px,1px) rotate(-2deg)}88%{transform:translate(0,0) rotate(0)}}
  @keyframes etGateSlide{0%,72%,100%{transform:translateX(0)}80%{transform:translateX(2px)}88%{transform:translateX(-1px)}94%{transform:translateX(0)}}
  @keyframes etBellRing{0%,74%,100%{transform:rotate(0)}79%{transform:rotate(8deg)}84%{transform:rotate(-7deg)}89%{transform:rotate(4deg)}94%{transform:rotate(0)}}
  @keyframes etCameraScan{0%,68%,100%{transform:translateY(0);opacity:0}72%{opacity:.65}82%{transform:translateY(15px);opacity:.85}92%{transform:translateY(0);opacity:0}}
  @keyframes etHeroGlow{0%,100%{opacity:.72}50%{opacity:1}}
  @keyframes etHeroSweep{0%,72%,100%{background-position:0 0,-120% 0}86%{background-position:0 0,120% 0}}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.service-card:hover .service-icon{border-color:#477a51;background:#0e1c11}.service-card:hover .service-icon .service-svg{filter:drop-shadow(0 0 5px rgba(104,233,125,.28))}}
@media(prefers-reduced-motion:reduce){.quick-access-badge span,.service-icon,.service-icon .service-svg,.service-icon::before,.service-icon::after,.hero-photo::before,.hero-photo::after{animation:none!important}}

/* V3.1.19 — explicit desktop motion */
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
  /* Desktop does not depend on the reveal observer to start the service micro-motion. */
  .service-icon[data-motion="pulse"]{animation:etIconPulse 3.2s ease-in-out .35s infinite}
  .service-icon[data-motion="shield"] .service-svg{animation:etShieldSettle 3.8s ease-in-out .45s infinite}
  .service-icon[data-motion="spark"] .service-svg{animation:etSpark 3.4s ease-in-out .5s infinite}
  .service-icon[data-motion="slide"] .service-svg{animation:etGateSlide 4.2s cubic-bezier(.2,.75,.25,1) .55s infinite}
  .service-icon[data-motion="ring"] .service-svg{animation:etBellRing 4s ease-in-out .55s infinite}
  .service-icon[data-motion="scan"]::after{width:30px;height:2px;left:6px;top:10px;border-radius:999px;background:linear-gradient(90deg,transparent,#77ee8b,transparent);box-shadow:0 0 8px rgba(104,233,125,.42);opacity:.72;animation:etCameraScan 3.8s ease-in-out .45s infinite}

  .service-card,.plan-card,.action-card,.trust-grid article{
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background-color .22s ease;
  }
  .service-card:hover,.plan-card:hover,.action-card:hover,.trust-grid article:hover{
    transform:translateY(-4px);
    border-color:#3e6847;
    box-shadow:0 14px 28px rgba(0,0,0,.22),0 0 0 1px rgba(104,233,125,.035);
  }
  .service-card:hover .service-icon{transform:scale(1.055)}
}

/* V3.1.20 — iOS / touch-mobile motion stabilization
   Keep the richer motion on desktop, but make phones calmer and more stable. */
@media (max-width:900px) and (hover:none) and (pointer:coarse){
  html{scroll-behavior:auto}

  /* Avoid iOS Safari repaint/jitter from large fixed blur + grain layers. */
  body::before{display:none}
  .site-header{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    background:#071009;
  }
  .bottom-nav{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    background:#0a120c;
    box-shadow:0 8px 22px rgba(0,0,0,.42),0 0 0 1px rgba(74,214,95,.03);
  }

  /* Mobile reveal becomes opacity-only: no cards/headings moving up the screen. */
  .motion-ready .reveal-on-scroll{
    transform:none!important;
    transition:opacity .24s ease!important;
    transition-delay:0s!important;
  }
  .motion-ready .reveal-on-scroll.is-visible{transform:none!important}

  /* Stop page-load rise motion on touch phones. */
  .hero-copy>*,.hero-visual{animation:none!important}

  /* Stop continuous motion loops on mobile; desktop keeps them. */
  .quick-access-badge span,
  .service-icon,
  .service-icon .service-svg,
  .service-icon::before,
  .service-icon::after,
  .hero-photo::before,
  .hero-photo::after{
    animation:none!important;
  }

  /* Preserve the normal dark hero overlay without the moving sweep. */
  .hero-photo::after{
    background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.75))!important;
    background-size:100% 100%!important;
  }

  /* Softer horizontal cards: no aggressive snap when a vertical swipe drifts sideways. */
  .plans-grid,.gallery,.trust-grid,.business-link-cards{
    scroll-snap-type:x proximity!important;
    overscroll-behavior-x:contain;
  }
}

/* iPhone-size layout: only one sticky header layer while scrolling. */
@media (max-width:620px) and (hover:none) and (pointer:coarse){
  .top-alert{position:relative;top:auto}
  .site-header{top:0}
}

/* V3.1.21 — Mobile gallery slideshow
   One photo at a time on touch/mobile; no sideways gallery scrolling. */
.gallery-slideshow-controls{display:none}
@media (max-width:900px){
  .gallery-slideshow-controls{display:none}
}
@media (max-width:620px){
  .gallery{
    display:block!important;
    overflow:visible!important;
    padding-bottom:0!important;
    scroll-snap-type:none!important;
    overscroll-behavior-x:auto!important;
    touch-action:pan-y;
  }
  .gallery-card,.gallery-card:first-child{
    display:none;
    width:100%;
    min-height:0!important;
    height:auto;
    aspect-ratio:4/3;
    flex:none!important;
    margin:0;
    scroll-snap-align:none!important;
  }
  .gallery-card.is-active{
    display:block;
    animation:etGalleryFade .22s ease both;
  }
  .gallery-card img{position:absolute}
  .gallery-slideshow-controls{
    display:grid;
    grid-template-columns:minmax(94px,1fr) auto minmax(94px,1fr);
    align-items:center;
    gap:10px;
    margin-top:12px;
  }
  .gallery-slide-btn{
    min-height:46px;
    border:1px solid #31583a;
    border-radius:14px;
    background:#0b160d;
    color:#eaf2eb;
    padding:10px 12px;
    font:inherit;
    font-size:.78rem;
    font-weight:850;
  }
  .gallery-prev{text-align:left}.gallery-next{text-align:right}
  .gallery-slide-status{display:grid;justify-items:center;gap:6px;min-width:70px}
  .gallery-slide-count{font-size:.68rem;color:#aebbb0;font-weight:800;white-space:nowrap}
  .gallery-dots{display:flex;align-items:center;justify-content:center;gap:6px}
  .gallery-dot{
    width:8px;height:8px;min-width:8px;padding:0;border:0;border-radius:999px;
    background:#405046;
  }
  .gallery-dot.is-active{width:20px;background:#69e77e}
  @keyframes etGalleryFade{from{opacity:.45}to{opacity:1}}
}
@media (max-width:360px){
  .gallery-slideshow-controls{grid-template-columns:1fr auto 1fr;gap:6px}
  .gallery-slide-btn{padding:9px 8px;font-size:.72rem}
  .gallery-slide-btn span{display:none}
}
@media (max-width:620px) and (prefers-reduced-motion:reduce){
  .gallery-card.is-active{animation:none!important}
}

/* V3.1.22 — iPhone horizontal overflow elimination
   Touch phones use a strictly vertical document flow. Horizontal card rails are
   disabled so Safari cannot drag the page sideways during normal scrolling. */
@media (max-width:620px) and (hover:none) and (pointer:coarse){
  html,body{max-width:100%;overflow-x:clip}
  body{position:relative}
  main,.section,.wrap,.hero,.site-header,.top-alert{max-width:100%;min-width:0}

  /* Protection plans: stack vertically instead of a sideways rail. */
  .plans-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    margin-right:0!important;
    padding:0!important;
    gap:10px!important;
    scroll-snap-type:none!important;
    overscroll-behavior-x:auto!important;
  }
  .plan-card{
    width:100%!important;
    max-width:100%!important;
    flex:none!important;
    flex-basis:auto!important;
    scroll-snap-align:none!important;
  }

  /* Trust / local proof cards: no partial next card peeking off-screen. */
  .trust-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    padding:0!important;
    gap:10px!important;
    scroll-snap-type:none!important;
    overscroll-behavior-x:auto!important;
  }
  .trust-grid article{
    width:100%!important;
    max-width:100%!important;
    flex:none!important;
    flex-basis:auto!important;
    scroll-snap-align:none!important;
  }

  /* Public business/social links also become a normal vertical list. */
  .business-link-cards{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    padding:0!important;
    gap:9px!important;
    scroll-snap-type:none!important;
    overscroll-behavior-x:auto!important;
  }
  .business-link-cards a{
    width:100%!important;
    max-width:100%!important;
    flex:none!important;
    flex-basis:auto!important;
    scroll-snap-align:none!important;
  }

  /* Gallery remains the one-at-a-time slideshow and never creates x overflow. */
  .gallery{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    overscroll-behavior-x:none!important;
    touch-action:pan-y!important;
  }
  .gallery-card,.gallery-card:first-child{
    width:100%!important;
    max-width:100%!important;
  }

  /* Defensive containment for long labels/content. */
  .section h1,.section h2,.section h3,.section-intro,
  .trust-grid article,.plan-card,.business-link-cards a,
  .contact-panel,.contact-hub-card{min-width:0;overflow-wrap:anywhere}
}

/* V3.1.23 — Emergency voice-note fast path */
.btn-voice{background:#1f6f3a;color:#fff;border:1px solid #3c9a59;box-shadow:0 10px 24px rgba(37,160,74,.14)}
.voice-fast-path{display:grid;gap:11px;border:1px solid #315f3b;background:linear-gradient(135deg,#0d1d12,#0a140d);border-radius:16px;padding:13px;margin-bottom:13px}
.voice-fast-path.compact{margin-top:2px}
.voice-fast-copy{display:flex;gap:11px;align-items:center;min-width:0}
.voice-fast-copy>div{min-width:0}
.voice-fast-copy strong{display:block;font-size:.88rem;line-height:1.2;color:#f0f6f1}
.voice-fast-copy small{display:block;margin-top:3px;color:#9eaca1;font-size:.72rem;line-height:1.4}
.voice-fast-icon{flex:0 0 42px;width:42px;height:42px;border:1px solid #3c7c49;border-radius:13px;background:#0a160d;display:grid;place-items:center}
.voice-fast-icon svg{width:22px;height:22px;fill:none;stroke:#75ef8b;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.voice-fast-path .btn{width:100%;min-height:48px}
.flow-divider{display:flex;align-items:center;gap:10px;margin:4px 0 13px;color:#748178;font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.flow-divider:before,.flow-divider:after{content:"";height:1px;flex:1;background:#24352a}
.quick-access-action.voice-note{border-color:#3b7847;background:#0c1c11}
.quick-access-action.voice-note .quick-access-icon{border-color:#478e55;background:#0b1b10}
.quick-access-action.voice-note .quick-access-icon svg{stroke:#83f098}
@media(min-width:1001px){.quick-access-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:620px){
  .quick-access-action.voice-note{grid-column:1/-1;min-height:72px}
  .voice-fast-path{padding:11px;border-radius:14px}
  .voice-fast-copy strong{font-size:.82rem}.voice-fast-copy small{font-size:.69rem}
  .voice-fast-icon{width:38px;height:38px;flex-basis:38px}
  .voice-fast-path .btn{min-height:50px;font-size:.9rem}
  .flow-divider{margin:2px 0 10px;font-size:.63rem}
}


/* V3.1.25 — temporary live update publisher */
.live-updates-strip{background:#0c160e;border-bottom:1px solid #28412d;padding:10px 0}.live-updates-strip[hidden]{display:none}.live-updates-heading{display:flex;align-items:center;gap:8px;color:#dff6e3;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.live-updates-heading #liveUpdateCount{color:#91a896;font-weight:700;text-transform:none;letter-spacing:0}.live-update-dot{width:9px;height:9px;border-radius:50%;background:#62df79;box-shadow:0 0 0 4px rgba(98,223,121,.09)}.live-updates-list{display:grid;gap:7px}.live-update-item{border:1px solid #2b4330;background:#101c13;border-radius:13px;padding:10px 12px}.live-update-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.live-update-type{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #35543c;background:#17291b;color:#c9f4d0;padding:4px 7px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.live-update-type.type-urgent,.live-update-type.type-security{border-color:#6a3732;background:#2b1513;color:#ffd3cf}.live-update-type.type-traffic{border-color:#65531e;background:#2b240e;color:#ffe7a0}.live-update-meta{color:#9caf9f;font-size:.7rem;text-align:right}.live-update-item p{margin:0;color:#f5f7f5;line-height:1.42;font-size:.9rem;overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:620px){.live-updates-strip{padding:9px 0}.live-update-head{align-items:flex-start;display:block}.live-update-meta{display:block;text-align:left;margin-top:5px}.live-update-item{padding:10px}.live-update-item p{font-size:.86rem}}


/* V3.1.26 — persistent compact header + iPhone notice cleanup
   Keep the local service business logo/navigation reachable while the rest of the page scrolls. */
html{scroll-padding-top:88px}
.site-header{
  top:0!important;
  z-index:72;
  padding-top:env(safe-area-inset-top);
  background:#071009;
  border-bottom:1px solid rgba(98,223,121,.12);
}
.top-alert{position:relative!important;top:auto!important;z-index:auto!important}
.site-notice,.live-updates-strip{position:relative;z-index:1}
.site-header .nav{transition:height .18s ease}
.site-header .brand-logo{transition:width .18s ease,max-height .18s ease}
.mobile-nav-panel{display:none}

.site-header.is-scrolled .nav{height:58px}
.site-header.is-scrolled .brand-logo{width:150px;max-height:46px}
.site-header.is-scrolled{box-shadow:0 8px 22px rgba(0,0,0,.34)}

@media(min-width:901px){
  .site-header.is-scrolled .desktop-nav{display:none}
  .site-header.is-scrolled .mobile-nav-toggle{display:inline-flex}
  .site-header.is-scrolled .mobile-nav-panel:not([hidden]){
    display:block;
    border-top:1px solid rgba(255,255,255,.06);
    background:#071009;
    box-shadow:0 18px 34px rgba(0,0,0,.28);
  }
  .site-header.is-scrolled .mobile-nav-links{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:7px;
    padding-top:10px;
    padding-bottom:10px;
  }
  .site-header.is-scrolled .mobile-nav-links a{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    border:1px solid #283d2d;
    background:#0c160e;
    border-radius:12px;
    padding:8px 9px;
    font-size:.76rem;
    font-weight:800;
    color:#dce6de;
  }
}

@media(max-width:900px){
  .mobile-nav-panel:not([hidden]){display:block}
  .site-header .nav{height:60px}
  .site-header .brand-logo{width:154px;max-height:48px}
}

@media(max-width:620px){
  html{scroll-padding-top:76px}
  .site-header .nav{height:58px}
  .site-header .brand-logo{width:148px;max-height:46px}
  .site-header.is-scrolled .nav{height:54px}
  .site-header.is-scrolled .brand-logo{width:138px;max-height:42px}
}


/* V3.1.27 — iPhone notch safe-area hardening
   iOS standalone uses a non-translucent status bar; these insets also protect landscape cutouts. */
.site-header{
  padding-top:max(env(safe-area-inset-top),0px);
  padding-left:env(safe-area-inset-left);
  padding-right:env(safe-area-inset-right);
}
.site-header .nav{min-width:0}
@media(max-width:620px){
  .site-header{background:#071009}
  .mobile-nav-panel{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
}


/* V3.1.28 — iPhone sticky-header + live-update reliability
   iOS Safari can disable viewport-sticky descendants when an ancestor becomes an
   overflow:hidden scroll container. overflow:clip prevents horizontal page drift
   without creating that scroll container. The live alert then pins directly below
   the measured header height on desktop and mobile. */
:root{--sticky-header-height:76px}
.site-header{position:sticky!important;top:0!important;z-index:72}
.live-updates-strip{position:sticky!important;top:var(--sticky-header-height)!important;z-index:66;box-shadow:0 8px 20px rgba(0,0,0,.2)}
.site-notice{position:relative!important;z-index:1}
@media(max-width:900px){
  html,body{overflow-x:clip!important}
}
@media(max-width:620px) and (hover:none) and (pointer:coarse){
  html,body{overflow-x:clip!important}
  .live-updates-strip{max-width:100%;contain:paint}
}


/* V3.1.29 — live update colour hierarchy
   Live alerts must stand apart from the green brand UI. General/community uses
   amber-gold, traffic uses orange, and security/urgent uses red. The newest
   active update controls the sticky strip accent while each card keeps its own type colour. */
.live-updates-strip{
  --live-accent:#f5b942;
  --live-strip-bg:#211704;
  --live-strip-bg-2:#160f04;
  --live-border:#9a6818;
  --live-panel:#2a1d08;
  --live-panel-border:#8a611b;
  --live-heading:#fff3cf;
  --live-muted:#d8c89f;
  background:linear-gradient(135deg,var(--live-strip-bg),var(--live-strip-bg-2));
  border-bottom:2px solid var(--live-accent);
  box-shadow:0 10px 24px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
.live-updates-strip[data-update-type="security"],
.live-updates-strip[data-update-type="urgent"]{
  --live-accent:#ff6b63;
  --live-strip-bg:#2a0c0b;
  --live-strip-bg-2:#180706;
  --live-border:#9f3732;
  --live-panel:#2c1110;
  --live-panel-border:#8d3530;
  --live-heading:#ffe1de;
  --live-muted:#d9aaa6;
}
.live-updates-strip[data-update-type="traffic"]{
  --live-accent:#fb923c;
  --live-strip-bg:#2b1605;
  --live-strip-bg-2:#180d04;
  --live-border:#a65619;
  --live-panel:#2d1908;
  --live-panel-border:#96521b;
  --live-heading:#ffe5ca;
  --live-muted:#d7b995;
}
.live-updates-heading{color:var(--live-heading)}
.live-updates-heading #liveUpdateCount{color:var(--live-muted)}
.live-update-dot{background:var(--live-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--live-accent) 16%,transparent)}
.live-update-item{border-color:var(--live-panel-border);background:var(--live-panel)}
.live-update-meta{color:var(--live-muted)}
.live-update-item[data-update-type="security"],.live-update-item[data-update-type="urgent"]{border-color:#8d3530;background:#2c1110}
.live-update-item[data-update-type="traffic"]{border-color:#96521b;background:#2d1908}
.live-update-item[data-update-type="community"],.live-update-item[data-update-type="general"]{border-color:#8a611b;background:#2a1d08}
.live-update-item[data-update-type="security"] .live-update-type,.live-update-item[data-update-type="urgent"] .live-update-type{border-color:#a84640;background:#441a18;color:#ffe0dd}
.live-update-item[data-update-type="traffic"] .live-update-type{border-color:#a96623;background:#44260d;color:#ffe7c7}
.live-update-item[data-update-type="community"] .live-update-type,.live-update-item[data-update-type="general"] .live-update-type{border-color:#9a741f;background:#3d2b0e;color:#fff0bf}
@supports not (background:color-mix(in srgb,#fff 10%,transparent)){
  .live-update-dot{box-shadow:0 0 0 4px rgba(245,185,66,.15)}
}

/* V3.1.30 — subtle 1ClickPro platform credit */
@media(max-width:620px){.footer-credit{text-align:left;font-size:.7rem;padding-bottom:4px}}

/* V3.1.35 — long-lived updates + compact sticky alert
   The sticky alert stays small even for multi-day notices. Only the newest
   message is line-clamped in the bar; full text and all active updates open
   in the existing accessible bottom-sheet modal. */
.live-updates-strip{padding:7px 0}
.live-updates-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.live-updates-copy{min-width:0}
.live-updates-heading{margin:0 0 2px;line-height:1.15}
.live-update-summary{margin:0;color:#fff;font-size:.82rem;line-height:1.28;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow-wrap:anywhere}
.live-updates-view{min-height:38px;padding:7px 12px;border-radius:999px;border:1px solid var(--live-accent);background:color-mix(in srgb,var(--live-accent) 14%,#080d09);color:#fff;font-size:.72rem;font-weight:900;white-space:nowrap}
.live-updates-view:hover{background:color-mix(in srgb,var(--live-accent) 24%,#080d09)}
.live-updates-modal-list{display:grid;gap:10px}
.live-updates-sheet .live-update-item{padding:13px 14px}
.live-updates-sheet .live-update-item p{font-size:.92rem;line-height:1.48}
@media(max-width:620px){
  .live-updates-strip{padding:6px 0}
  .live-updates-compact{gap:8px}
  .live-updates-heading{font-size:.66rem;gap:6px}
  .live-update-dot{width:7px;height:7px}
  .live-update-summary{font-size:.76rem;line-height:1.2;-webkit-line-clamp:2;line-clamp:2}
  .live-updates-view{min-height:36px;padding:6px 10px;font-size:.68rem}
  .live-updates-sheet .live-update-head{display:block}
  .live-updates-sheet .live-update-meta{display:block;text-align:left;margin-top:5px}
}
@supports not (background:color-mix(in srgb,#fff 10%,#000)){
  .live-updates-view{background:#171b12}
}


/* V3.1.38 — emergency-first performance optimization
   Critical call/report controls stay immediately available while decorative work is deferred. */
.site-header .nav,.site-header .brand-logo{transition:none!important}
@media(prefers-reduced-motion:no-preference){
  .quick-access-badge span,
  .motion-ready .service-card.is-visible .service-icon,
  .motion-ready .service-card.is-visible .service-icon .service-svg,
  .motion-ready .service-card.is-visible .service-icon::before,
  .motion-ready .service-card.is-visible .service-icon::after,
  .hero-photo::before,
  .hero-photo::after{animation:none!important}
}
.hero-photo::after{background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.75))!important}
@supports(content-visibility:auto){
  #plansSection,#services,#proof,#gallerySection,#contact{content-visibility:auto;contain-intrinsic-size:auto 760px}
  #gallerySection{contain-intrinsic-size:auto 620px}
}

.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.review-card{background:#fff;border:1px solid #d9e1e8;border-radius:18px;padding:18px;color:#102a43}.review-stars{letter-spacing:.08em}.service-image{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin-bottom:10px}@media(max-width:760px){.review-grid{grid-template-columns:1fr}}
