/* style-0-v143.css */

:root{--black:#070b0e;--black2:#0a1116;--ink:#0c0f10;--paper:#f4f5f1;--ice:#eaf5f7;--ice2:#e6f0f2;--line:#d5dad8;--muted:#687378;--teal:#0c8290;--cyan:#9bd6df;--gold:#f2b600;--white:#f6f7f4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.section-shell{width:min(1020px,calc(100% - 86px));margin:0 auto}.micro,.micro-index,.card-no,.open-row,.main-nav,.hero-panel .eyebrow,.hero-panel .stop,.hero-top-tag,.hero-bottom-tag,.hero-bottom-left,.layer-tab,.layer-detail small,.layer-detail a,.stat-grid span,.process-grid>article>span,.coverage-list>div>span,footer{font-family:"Courier New",monospace;letter-spacing:.22em;text-transform:uppercase}
.site-header{height:112px;background:#070b0e;color:white;display:flex;align-items:center;position:relative;z-index:20;border-bottom:1px solid rgba(255,255,255,.04)}.header-inner{width:min(900px,calc(100% - 72px));margin:auto;display:flex;align-items:center;justify-content:space-between}.logo-link{display:block;width:70px;height:61px}.logo-link img{display:block;width:100%;height:100%;object-fit:contain}.main-nav{display:flex;align-items:center;gap:34px;font-size:8px}.main-nav>a:not(.plan-btn){opacity:.83}.plan-btn{border:1px solid #536069;padding:18px 18px 17px;display:flex;gap:35px;align-items:center}.plan-btn span{font:13px Arial}
.hero-scroll{height:100vh;min-height:640px;background:#080c10;position:relative}.hero-stage{height:calc(100vh - 0px);position:sticky;top:0;overflow:hidden;background:#080c10}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#080c10}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,8,11,.16) 0%,rgba(3,8,11,.08) 34%,rgba(3,8,11,.32) 56%,rgba(3,8,11,.93) 100%);pointer-events:none}.hero-edge{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--gold),#b7e3e9 54%,#a9e2e8)}
.hero-panel{position:absolute;right:4.2%;top:47%;transform:translateY(-50%);width:min(640px,43vw);color:#fff;padding:0;background:none;transition:opacity .28s ease;pointer-events:auto}.hero-panel.switching{opacity:1}.reel-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 12px;padding:0 3px;font:8px "Courier New",monospace;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.68)}.reel-meta .eyebrow{display:flex;align-items:center;gap:9px;min-width:0}.reel-meta .eyebrow i{width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 11px rgba(255,255,255,.45);flex:none}.reel-meta .eyebrow span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-panel .stop{color:rgba(255,255,255,.82);white-space:nowrap}.service-reel{position:relative;height:330px;overflow:hidden;isolation:isolate;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 84%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 84%,transparent 100%)}.reel-window{position:absolute;inset:0}.reel-window:before,.reel-window:after{content:"";position:absolute;left:0;right:0;height:1px;background:rgba(255,255,255,.3);z-index:3;pointer-events:none}.reel-window:before{top:127px}.reel-window:after{top:203px}.reel-track{position:absolute;left:0;right:0;top:0;will-change:transform;transition:transform .48s cubic-bezier(.16,.82,.24,1)}.reel-item{height:66px;display:flex;align-items:center;justify-content:flex-end;text-align:right;padding-right:4px;white-space:nowrap;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(18px,1.55vw,26px);font-weight:700;letter-spacing:.035em;line-height:.9;color:#fff;opacity:.28;filter:blur(.15px);transform:scale(.96);transform-origin:right center;transition:font-size .25s cubic-bezier(.2,.8,.2,1),opacity .25s ease,transform .25s cubic-bezier(.2,.8,.2,1),filter .25s ease,text-shadow .25s ease}.reel-item.near{opacity:.52;filter:none}.reel-item.active{font-size:clamp(32px,3.2vw,50px);font-weight:800;letter-spacing:.015em;opacity:1;filter:none;transform:scale(1.025);text-shadow:0 2px 20px rgba(0,0,0,.48)}.reel-item.rolling{opacity:.38;transform:scale(.97)}.reel-number{font:8px "Courier New",monospace;letter-spacing:.15em;margin-right:16px;color:rgba(255,255,255,.52);flex:none}.reel-item.active .reel-number{color:#fff}.service-detail{max-width:520px;margin-left:auto;text-align:right;padding:17px 4px 0 36px;opacity:0;transform:translateY(10px);transition:opacity .38s ease,transform .38s cubic-bezier(.2,.8,.2,1)}.service-detail.revealed{opacity:1;transform:translateY(0)}.reel-accessible-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-lead{font-family:"Bahnschrift Condensed","Arial Narrow",Arial,sans-serif;font-size:15px;letter-spacing:.035em;font-weight:700;margin:0 0 10px;color:#fff;text-transform:uppercase}.hero-copy{font-size:11px;line-height:1.62;color:rgba(255,255,255,.74);max-width:500px;margin-left:auto}.hero-copy p{margin:0 0 7px}.hero-rule{height:1px;background:rgba(255,255,255,.24);margin:15px 0 11px}.hero-tech{display:flex;justify-content:flex-end;gap:18px;font:8px "Courier New",monospace;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5)}.hero-tech strong{font-weight:400;text-align:right;color:rgba(255,255,255,.82)}.hero-standard{margin-top:11px;font-size:10px;line-height:1.5;color:rgba(255,255,255,.74)}
.hero-top-tag,.hero-bottom-tag{position:absolute;right:3.7%;background:rgba(244,248,247,.92);color:#38484d;padding:7px 10px;font-size:7px;display:flex;gap:30px}.hero-top-tag{top:24px}.hero-bottom-tag{bottom:24px}.hero-top-tag b,.hero-bottom-tag b{font-weight:400}.hero-bottom-left{position:absolute;left:3.5%;bottom:28px;color:#7f989e;font-size:7px;display:flex;gap:12px;align-items:center}.hero-bottom-left i{width:28px;height:1px;background:#8fd4dd;display:block}.hero-timeline{position:absolute;bottom:43px;left:42%;width:30%;height:18px}.timeline-line{height:1px;background:rgba(161,219,226,.8);position:absolute;left:0;right:0;top:8px}.timeline-line span{display:block;height:2px;background:var(--gold);width:0}.timeline-dots{position:absolute;inset:0}.timeline-dots i{position:absolute;top:4px;width:7px;height:7px;border-radius:50%;background:#0b1216;border:1px solid #74939a;transform:translateX(-50%)}.timeline-dots i.hit{background:var(--gold);border-color:var(--gold)}
/* Page 2 — authoritative polished game-neighborhood. One map, one marker, one van, one controller; v29 keeps the v28 protection/roof state machine and directly upgrades the service vehicle to a roofing truck with ladder rack + live shield, plus one reusable two-worker arrival animation. */
.page-two-map{position:relative;z-index:1;width:100%;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;background:#040608;color:#fff;isolation:isolate;scroll-snap-align:start;overscroll-behavior:contain;touch-action:pan-x pinch-zoom}
.page-two-map-viewport{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:#050708}
.page-two-world{position:absolute;z-index:1;top:0;right:-1vw;width:72vw;min-width:720px;aspect-ratio:866/1817;transform:translate3d(var(--world-x,0px),calc(-1 * var(--world-y,0px)),0);transform-origin:50% 0;will-change:transform;filter:saturate(.94) contrast(1.055) brightness(.96)}
.page-two-map-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:fill;user-select:none;-webkit-user-drag:none;pointer-events:none}
.page-two-route-svg{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.page-two-route-line{fill:none;stroke:rgba(112,221,255,.2);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 18;opacity:.05;transition:opacity .4s ease;filter:drop-shadow(0 0 5px rgba(59,197,255,.3))}
.page-two-map.is-van-moving .page-two-route-line{opacity:.26;animation:pageTwoRouteFlow 1.25s linear infinite}
.page-two-van{filter:drop-shadow(0 10px 8px rgba(0,0,0,.34)) drop-shadow(0 0 9px rgba(99,217,255,.16));will-change:transform;transform-box:fill-box;transform-origin:center}
.page-two-truck-shield{fill:rgba(76,205,255,.045);stroke:rgba(116,226,255,.56);stroke-width:1.25;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px rgba(78,207,255,.55)) drop-shadow(0 0 13px rgba(37,136,255,.24));transform-box:fill-box;transform-origin:center;animation:pageTwoTruckShield 2.5s ease-in-out infinite}
.page-two-truck-shield-orbit{fill:none;stroke:rgba(173,241,255,.68);stroke-width:1.15;stroke-linecap:round;stroke-dasharray:9 11;vector-effect:non-scaling-stroke;opacity:.64;transform-box:fill-box;transform-origin:center;animation:pageTwoTruckOrbit 4.4s linear infinite}
.page-two-map.is-protecting .page-two-truck-shield{fill:rgba(65,194,255,.08);stroke:rgba(163,239,255,.88);filter:drop-shadow(0 0 7px rgba(112,229,255,.82)) drop-shadow(0 0 18px rgba(44,145,255,.34))}
@keyframes pageTwoTruckShield{0%,100%{opacity:.62;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}
@keyframes pageTwoTruckOrbit{to{transform:rotate(360deg)}}
.page-two-van-shadow{fill:rgba(0,0,0,.28)}
.page-two-van-body{fill:#f5f7f6;stroke:#dce4e6;stroke-width:1.35}
.page-two-van-bed{fill:#dfe7e9;stroke:#cad6d9;stroke-width:.9}
.page-two-van-roof{fill:#e9eff0}
.page-two-van-window{fill:#172a34}
.page-two-van-accent{fill:#72d9f5}
.page-two-van-wheel{fill:#11181c}
.page-two-truck-rack{fill:none;stroke:#27363c;stroke-width:1.45;stroke-linecap:round;vector-effect:non-scaling-stroke}
.page-two-truck-rack-cross{stroke:#4c6068;stroke-width:1.15}
.page-two-truck-ladder{fill:none;stroke:#d5a93e;stroke-width:1.15;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}
.page-two-truck-toolbox{fill:#9ba9ad;stroke:#687a80;stroke-width:.8}
.page-two-worker-team{position:absolute;z-index:7;inset:0;pointer-events:none;overflow:visible}
.page-two-worker{position:absolute;left:0;top:0;width:clamp(17px,1.65vw,25px);aspect-ratio:28/38;opacity:0;transform:translate3d(-200px,-200px,0) translate(-50%,-86%);transform-origin:50% 88%;will-change:transform,opacity;filter:drop-shadow(0 3px 2px rgba(0,0,0,.34))}
.page-two-worker svg{display:block;width:100%;height:100%;overflow:visible}
.page-two-worker .helmet{fill:#f6c62b;stroke:#6d5310;stroke-width:.7}
.page-two-worker .head{fill:#d6aa83}
.page-two-worker .vest{fill:#70d8ef;stroke:#225c69;stroke-width:.7}
.page-two-worker.worker-b .vest{fill:#f0b43d;stroke:#6f4e13}
.page-two-worker .pants{fill:#29363e}.page-two-worker .boot{fill:#151b20}
.page-two-worker .arm,.page-two-worker .leg{transform-box:fill-box;transform-origin:center top}
.page-two-worker.is-running .arm-a,.page-two-worker.is-running .leg-b{animation:pageTwoWorkerLimb .24s ease-in-out infinite alternate}
.page-two-worker.is-running .arm-b,.page-two-worker.is-running .leg-a{animation:pageTwoWorkerLimb .24s ease-in-out infinite alternate-reverse}
.page-two-worker.is-working svg{animation:pageTwoWorkerWork .5s ease-in-out infinite alternate}
@keyframes pageTwoWorkerLimb{from{transform:rotate(-24deg)}to{transform:rotate(24deg)}}
@keyframes pageTwoWorkerWork{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-1.8px) rotate(1deg)}}
.page-two-pond-shimmer{position:absolute;z-index:3;left:64.6%;top:47.4%;width:24.5%;height:17.2%;border-radius:46% 54% 49% 51%;pointer-events:none;overflow:hidden;opacity:.42;mix-blend-mode:screen;transform:rotate(2deg)}
.page-two-pond-shimmer::before{content:"";position:absolute;inset:-20% -70%;background:linear-gradient(110deg,transparent 36%,rgba(198,248,255,.08) 44%,rgba(226,253,255,.42) 50%,rgba(145,226,255,.11) 56%,transparent 64%);animation:pageTwoPondShimmer 5.8s ease-in-out infinite}
@keyframes pageTwoPondShimmer{0%,18%{transform:translateX(-28%)}58%,100%{transform:translateX(28%)}}
.page-two-house-life{position:absolute;z-index:3;inset:0;pointer-events:none}
.page-two-house-life i{position:absolute;left:var(--hx);top:var(--hy);width:clamp(9px,1vw,14px);height:clamp(4px,.48vw,7px);border-radius:2px;background:rgba(255,198,92,.82);box-shadow:0 0 6px rgba(255,189,72,.56),0 0 15px rgba(255,174,48,.14);transform:translate(-50%,-50%);opacity:.24;animation:pageTwoWindowLife 5.6s ease-in-out infinite;animation-delay:var(--delay,0s)}
@keyframes pageTwoWindowLife{0%,100%{opacity:.28;transform:translate(-50%,-50%) scale(.88)}45%{opacity:.78;transform:translate(-50%,-50%) scale(1.12)}62%{opacity:.5}}
.page-two-sparkles{position:absolute;z-index:3;inset:0;pointer-events:none}
.page-two-sparkles i{position:absolute;left:var(--sx);top:var(--sy);width:3px;height:3px;border-radius:50%;background:rgba(188,238,255,.82);box-shadow:0 0 8px rgba(105,215,255,.55);opacity:0;animation:pageTwoSpark 6.4s ease-in-out infinite;animation-delay:var(--delay,0s)}
.page-two-vegetation{position:absolute;z-index:3;inset:0;pointer-events:none;overflow:hidden}
.page-two-vegetation .veg{position:absolute;left:var(--vx);top:var(--vy);transform-origin:50% 100%;will-change:transform;filter:drop-shadow(0 5px 4px rgba(0,0,0,.22));transition:filter .22s ease}
.page-two-vegetation .veg.tree{width:clamp(23px,2.65vw,41px);height:clamp(35px,4.2vw,66px);transform:translate(-50%,-100%) rotate(var(--wind-angle,0deg)) scale(var(--scale,1))}
.page-two-vegetation .veg.tree::before{content:"";position:absolute;left:50%;bottom:12%;width:76%;height:70%;transform:translateX(-50%);border-radius:55% 48% 52% 46%;background:radial-gradient(circle at 38% 28%,#9ec45d 0 18%,#5c923f 42%,#2f6d39 72%,#1e4f32 100%);box-shadow:-10px 8px 0 -4px #477f39,9px 9px 0 -5px #285b32,0 -7px 0 -6px #b5ce6a}
.page-two-vegetation .veg.tree::after{content:"";position:absolute;left:50%;bottom:0;width:14%;height:34%;transform:translateX(-50%);border-radius:4px 4px 2px 2px;background:linear-gradient(90deg,#60452b,#8a6539 52%,#4a3525)}
.page-two-vegetation .veg.bush{width:clamp(26px,2.9vw,46px);height:clamp(16px,1.8vw,28px);transform:translate(-50%,-74%) rotate(var(--wind-angle,0deg)) scale(var(--scale,1));border-radius:50%;background:radial-gradient(circle at 29% 34%,#8cb756 0 18%,transparent 19%),radial-gradient(circle at 58% 24%,#6fa148 0 22%,transparent 23%),radial-gradient(circle at 72% 56%,#3d7d40 0 30%,transparent 31%),radial-gradient(circle at 36% 66%,#4f8d43 0 34%,#2e6437 68%,transparent 69%)}
.page-two-vegetation .veg.flowers{width:clamp(27px,3vw,48px);height:clamp(17px,1.9vw,30px);transform:translate(-50%,-70%) rotate(var(--wind-angle,0deg)) scale(var(--scale,1));border-radius:50%;background:radial-gradient(circle at 18% 38%,#ffd1e1 0 6%,#f27ca6 7% 12%,transparent 13%),radial-gradient(circle at 42% 22%,#f8e28f 0 5%,#f5a45d 6% 11%,transparent 12%),radial-gradient(circle at 68% 44%,#d6b8ff 0 6%,#8d79db 7% 12%,transparent 13%),radial-gradient(circle at 82% 25%,#fff1b2 0 5%,#e1a34e 6% 11%,transparent 12%),radial-gradient(ellipse at 50% 72%,#5d9546 0 48%,#326d3c 70%,transparent 72%)}
.page-two-vegetation.is-stormy .veg{filter:drop-shadow(2px 7px 4px rgba(0,0,0,.27)) saturate(.95)}
@keyframes pageTwoSpark{0%,76%,100%{opacity:0;transform:translate3d(0,5px,0) scale(.55)}82%{opacity:.8}90%{opacity:.42;transform:translate3d(0,-8px,0) scale(1.15)}}
@keyframes pageTwoRouteFlow{to{stroke-dashoffset:-46}}
.page-two-map.is-van-moving .page-two-van-shadow{transform-box:fill-box;transform-origin:center;animation:pageTwoVanShadow 1.1s ease-in-out infinite}
@keyframes pageTwoVanShadow{0%,100%{opacity:.58;transform:scale(.94)}50%{opacity:.28;transform:scale(1.08)}}
.page-two-marker{position:absolute;z-index:4;left:0;top:0;width:var(--marker-size,126px);height:var(--marker-size,126px);border-radius:50%;pointer-events:none;transform:translate3d(var(--marker-x,-300px),var(--marker-y,-300px),0) translate(-50%,-50%);will-change:transform,width,height,opacity;filter:drop-shadow(0 0 12px rgba(84,218,255,.58)) drop-shadow(0 0 32px rgba(25,159,255,.26));transition:opacity .28s ease}
.page-two-marker::before{content:"";position:absolute;inset:12%;border-radius:50%;border:2px solid rgba(164,239,255,.96);background:radial-gradient(circle,rgba(57,188,255,.03) 0 45%,rgba(57,188,255,.09) 58%,transparent 72%);box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 0 20px rgba(84,218,255,.62),0 0 46px rgba(25,159,255,.24);animation:pageTwoMarkerPulse 2.65s ease-in-out infinite}
.page-two-marker::after{content:"";position:absolute;inset:-1%;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 67deg,rgba(182,245,255,.9) 82deg,rgba(57,188,255,.14) 118deg,transparent 145deg 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));opacity:.74;animation:pageTwoMarkerSweep 4.8s linear infinite}
.page-two-marker.is-arriving{animation:pageTwoMarkerLand .72s cubic-bezier(.16,.84,.2,1) both}
@keyframes pageTwoMarkerPulse{0%,100%{transform:scale(.94);opacity:.72}50%{transform:scale(1.045);opacity:1}}
@keyframes pageTwoMarkerSweep{to{transform:rotate(360deg)}}
@keyframes pageTwoMarkerLand{0%{opacity:0;filter:blur(11px) drop-shadow(0 0 0 rgba(84,218,255,0));transform:translate3d(var(--marker-x),var(--marker-y),0) translate(-50%,-50%) scale(1.38)}55%{opacity:1}100%{filter:blur(0) drop-shadow(0 0 12px rgba(84,218,255,.58)) drop-shadow(0 0 32px rgba(25,159,255,.26));transform:translate3d(var(--marker-x),var(--marker-y),0) translate(-50%,-50%) scale(1)}}

/* First-arrival property protection FX — one five-property system, anchored to the same map world. */

/* v28 roof storm: all unprotected roofs can strip with staggered starts; one persistent canvas, 5fps logical damage states, reversible repairs, no duplicate controller. */
.page-two-roof-damage-canvas{position:absolute;z-index:3.65;inset:0;width:100%;height:100%;pointer-events:none;display:block;mix-blend-mode:normal;filter:drop-shadow(0 2px 2px rgba(0,0,0,.12))}

.page-two-property-protection{position:absolute;z-index:4;inset:0;pointer-events:none}
.page-two-property-fx{position:absolute;z-index:4;left:var(--fx-x);top:var(--fx-y);width:var(--fx-size,23%);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;isolation:isolate}
.page-two-property-loader{position:absolute;inset:0;opacity:0;transform:scale(.82);filter:drop-shadow(0 0 10px rgba(95,222,255,.48)) drop-shadow(0 0 28px rgba(38,151,255,.18));transition:opacity .2s ease,transform .35s cubic-bezier(.16,.84,.2,1)}
.page-two-property-loader svg{display:block;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.page-two-property-loader-track,.page-two-property-loader-progress{fill:none;vector-effect:non-scaling-stroke}
.page-two-property-loader-track{stroke:rgba(170,231,246,.16);stroke-width:2.2}
.page-two-property-loader-progress{stroke:#9beaff;stroke-width:4;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;filter:drop-shadow(0 0 4px rgba(151,238,255,.95)) drop-shadow(0 0 10px rgba(53,172,255,.75))}
.page-two-property-loader::before{content:"";position:absolute;inset:10%;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 58deg,rgba(180,244,255,.06) 72deg,rgba(116,224,255,.34) 91deg,rgba(70,176,255,.08) 112deg,transparent 132deg 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 8px),#000 calc(100% - 6px));mask:radial-gradient(farthest-side,transparent calc(100% - 8px),#000 calc(100% - 6px));opacity:.8}
.page-two-property-fx.is-loading .page-two-property-loader{opacity:1;transform:scale(1)}
.page-two-property-fx.is-loading .page-two-property-loader::before{animation:pageTwoProtectSweep 1.05s linear infinite}
.page-two-property-fx.is-loading .page-two-property-loader-progress{animation:pageTwoProtectProgress 2s cubic-bezier(.2,.72,.18,1) forwards}
.page-two-property-dome{position:absolute;left:50%;top:52%;width:88%;height:64%;transform:translate(-50%,-52%) scale(.16,.08);transform-origin:50% 82%;opacity:0;border-radius:50% 50% 44% 44%/62% 62% 38% 38%;border:1.5px solid rgba(142,232,255,.82);background:radial-gradient(ellipse at 50% 20%,rgba(223,252,255,.23) 0%,rgba(99,210,255,.13) 34%,rgba(33,145,255,.08) 55%,rgba(13,89,180,.025) 72%,transparent 78%);box-shadow:inset 0 0 26px rgba(165,239,255,.12),inset 0 -16px 25px rgba(27,126,255,.07),0 0 16px rgba(93,219,255,.22),0 0 44px rgba(31,144,255,.12);overflow:hidden;will-change:transform,opacity,filter}
.page-two-property-dome::before{content:"";position:absolute;inset:-15% -30%;background:linear-gradient(112deg,transparent 38%,rgba(226,253,255,.02) 44%,rgba(226,253,255,.25) 49%,rgba(113,220,255,.06) 54%,transparent 61%);transform:translateX(-42%);opacity:.7;animation:pageTwoShieldScan 4.4s ease-in-out infinite}
.page-two-property-dome::after{content:"";position:absolute;left:6%;right:6%;bottom:-3%;height:20%;border-radius:50%;border:2px solid rgba(125,226,255,.72);background:radial-gradient(ellipse,rgba(85,209,255,.12),transparent 66%);box-shadow:0 0 14px rgba(75,206,255,.45),0 0 34px rgba(28,133,255,.18)}
.page-two-property-lock{position:absolute;left:50%;top:8%;min-width:90px;padding:7px 11px 6px;border:1px solid rgba(151,234,255,.42);border-radius:999px;background:rgba(2,20,31,.58);-webkit-backdrop-filter:blur(5px) saturate(1.12);backdrop-filter:blur(5px) saturate(1.12);box-shadow:0 0 20px rgba(56,179,255,.18);transform:translate(-50%,7px) scale(.9);opacity:0;text-align:center;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.62);white-space:nowrap}
.page-two-property-lock b{display:block;font:900 clamp(8px,.75vw,12px)/1 "Bahnschrift Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.09em}
.page-two-property-lock span{display:block;margin-top:3px;font:700 clamp(6px,.48vw,8px)/1 "Courier New",monospace;letter-spacing:.17em;color:#9beaff}
.page-two-property-fx.is-protected .page-two-property-dome{animation:pageTwoShieldDeploy 1.05s cubic-bezier(.12,.8,.18,1) forwards,pageTwoShieldLive 4.8s ease-in-out 1.05s infinite}
.page-two-property-fx.is-protected .page-two-property-lock{animation:pageTwoProtectedBadge .72s cubic-bezier(.16,.84,.2,1) .48s forwards}
.page-two-property-fx.is-protected:not(.is-current){opacity:.56}
.page-two-property-fx.is-protected:not(.is-current) .page-two-property-lock{opacity:.58!important;filter:saturate(.78)}
.page-two-property-fx.is-current.is-protected{filter:drop-shadow(0 0 12px rgba(65,200,255,.18))}
@keyframes pageTwoProtectProgress{0%{stroke-dashoffset:100}100%{stroke-dashoffset:0}}
@keyframes pageTwoProtectSweep{to{transform:rotate(360deg)}}
@keyframes pageTwoShieldDeploy{0%{opacity:0;filter:blur(9px);transform:translate(-50%,-52%) scale(.16,.08)}52%{opacity:.92;filter:blur(1px);transform:translate(-50%,-52%) scale(1.08,1.04)}100%{opacity:.78;filter:blur(0);transform:translate(-50%,-52%) scale(1)}}
@keyframes pageTwoShieldLive{0%,100%{opacity:.72;filter:brightness(.96) saturate(.96)}50%{opacity:.9;filter:brightness(1.12) saturate(1.08)}}
@keyframes pageTwoShieldScan{0%,20%{transform:translateX(-42%)}70%,100%{transform:translateX(42%)}}
@keyframes pageTwoProtectedBadge{0%{opacity:0;filter:blur(8px);transform:translate(-50%,11px) scale(.88)}100%{opacity:1;filter:blur(0);transform:translate(-50%,0) scale(1)}}

/* Page 2 v25 — protection signs, cross-faded weather, sunny House 5, birds, and interactive vegetation. */
.page-two-property-sign{position:absolute;left:var(--sign-x,64%);top:var(--sign-y,108%);width:clamp(48px,4.75vw,80px);aspect-ratio:1536/1024;transform:translate(-50%,8px) scale(.80) rotate(var(--sign-r,0deg));transform-origin:50% 100%;opacity:0;text-align:center;color:transparent;text-shadow:none;background:none;border:0;box-shadow:none;padding:0;overflow:visible}
.page-two-property-sign::after{display:none}
.page-two-property-sign img{display:block;width:100%;height:auto;pointer-events:none;user-select:none;-webkit-user-drag:none;filter:saturate(.72) contrast(1.22) brightness(1.07) drop-shadow(1.4px 0 0 rgba(22,31,38,.62)) drop-shadow(-1.4px 0 0 rgba(22,31,38,.62)) drop-shadow(0 1.4px 0 rgba(22,31,38,.62)) drop-shadow(0 -1.4px 0 rgba(22,31,38,.54)) drop-shadow(2px 3px 0 rgba(63,94,105,.18));}
.page-two-property-sign b,.page-two-property-sign span{display:none}
.page-two-property-fx[data-house="h1"]{--sign-x:78%;--sign-y:95%;--sign-r:-3.1deg}
.page-two-property-fx[data-house="h2"]{--sign-x:22%;--sign-y:96%;--sign-r:2.4deg}
.page-two-property-fx[data-house="h3"]{--sign-x:79%;--sign-y:98%;--sign-r:-1.8deg}
.page-two-property-fx[data-house="h4"]{--sign-x:77%;--sign-y:95%;--sign-r:2.7deg}
.page-two-property-fx[data-house="h5"]{--sign-x:22%;--sign-y:97%;--sign-r:-2.2deg}
.page-two-property-fx[data-house="ha"]{--sign-x:23%;--sign-y:95%;--sign-r:1.7deg}
.page-two-property-fx[data-house="hb"]{--sign-x:79%;--sign-y:98%;--sign-r:-2.6deg}
.page-two-property-fx[data-house="hc"]{--sign-x:80%;--sign-y:96%;--sign-r:2.2deg}
.page-two-property-fx[data-house="hd"]{--sign-x:77%;--sign-y:94%;--sign-r:-1.4deg}
.page-two-property-fx.is-protected .page-two-property-sign{animation:pageTwoLawnSign .72s cubic-bezier(.16,.84,.2,1) .62s forwards}
@keyframes pageTwoLawnSign{0%{opacity:0;transform:translate(-50%,9px) scale(.70) rotate(calc(var(--sign-r,0deg) - 4deg))}65%{opacity:1;transform:translate(-50%,-2px) scale(1.04) rotate(calc(var(--sign-r,0deg) + .8deg))}100%{opacity:1;transform:translate(-50%,0) scale(1) rotate(var(--sign-r,0deg))}}
.page-two-weather,.page-two-sunshine,.page-two-birds{position:absolute;left:0;top:var(--world-y,0px);width:100%;height:100vh;height:100dvh;pointer-events:none;overflow:hidden}
.page-two-weather{z-index:3;opacity:0;mix-blend-mode:screen;will-change:opacity}
.page-two-rain-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:.9}
.page-two-lightning-flash{position:absolute;inset:-3%;background:radial-gradient(circle at 67% 20%,rgba(239,250,255,.96) 0%,rgba(170,224,255,.38) 17%,rgba(92,166,255,.12) 38%,transparent 68%);opacity:0;will-change:opacity;mix-blend-mode:screen}
.page-two-sunshine{z-index:3;opacity:0;mix-blend-mode:screen;will-change:opacity;background:radial-gradient(circle at 78% 12%,rgba(255,249,205,.72) 0%,rgba(255,224,126,.22) 17%,rgba(255,196,82,.07) 34%,transparent 58%),linear-gradient(145deg,rgba(255,241,181,.08),transparent 44%)}
.page-two-sunshine::after{content:"";position:absolute;right:8%;top:7%;width:24%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,248,208,.42),rgba(255,221,126,.06) 38%,transparent 69%);filter:blur(8px);animation:pageTwoSunBreathe 4.8s ease-in-out infinite}
@keyframes pageTwoSunBreathe{0%,100%{transform:scale(.92);opacity:.68}50%{transform:scale(1.08);opacity:1}}
.page-two-birds{z-index:4;opacity:0;transition:opacity .5s ease}
.page-two-map.is-sunny-stage .page-two-birds{opacity:.78}
.page-two-bird{position:absolute;left:-8%;top:var(--by);width:32px;height:18px;opacity:0;animation:pageTwoBirdFly var(--duration,8s) linear infinite;animation-delay:var(--delay,0s);will-change:transform,opacity}
.page-two-bird::before,.page-two-bird::after{content:"";position:absolute;top:7px;width:17px;height:8px;border-top:2px solid rgba(31,48,54,.76);border-radius:60% 60% 0 0;transform-origin:100% 50%;--bird-rot:12deg;animation:pageTwoBirdWing .52s ease-in-out infinite alternate;will-change:transform}
.page-two-bird::before{right:50%}.page-two-bird::after{left:50%;transform-origin:0 50%;--bird-rot:-12deg;animation-delay:-.26s}
@keyframes pageTwoBirdFly{0%{opacity:0;transform:translate3d(0,12px,0) scale(var(--scale,.8))}8%{opacity:.76}86%{opacity:.65}100%{opacity:0;transform:translate3d(116vw,-88px,0) scale(var(--scale,.8))}}
@keyframes pageTwoBirdWing{from{transform:translate3d(0,-1px,0) rotate(var(--bird-rot))}to{transform:translate3d(0,3px,0) rotate(var(--bird-rot))}}
@media(max-width:760px){.page-two-property-sign{width:46px}.page-two-weather,.page-two-sunshine,.page-two-birds{height:100vh;height:100dvh}.page-two-bird{width:24px}}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){.page-two-property-sign,.page-two-property-fx.is-protected .page-two-property-sign{animation:none!important}.page-two-property-fx.is-protected .page-two-property-sign{opacity:1;transform:translate(-50%,0) scale(1) rotate(var(--sign-r,0deg))}.page-two-rain-canvas{opacity:.38}.page-two-sunshine::after,.page-two-bird{animation:none!important}.page-two-map.is-sunny-stage .page-two-bird{opacity:.55;left:72%}}

.page-two-veil{position:absolute;z-index:5;inset:0;pointer-events:none;background-color:#020405;-webkit-backdrop-filter:blur(10px) saturate(.88);backdrop-filter:blur(10px) saturate(.88);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 29.5%,rgba(0,0,0,.86) 31.5%,rgba(0,0,0,.62) 35%,rgba(0,0,0,.38) 39%,rgba(0,0,0,.20) 43%,rgba(0,0,0,.09) 47%,rgba(0,0,0,.035) 50%,transparent 53%);mask-image:linear-gradient(90deg,#000 0%,#000 29.5%,rgba(0,0,0,.86) 31.5%,rgba(0,0,0,.62) 35%,rgba(0,0,0,.38) 39%,rgba(0,0,0,.20) 43%,rgba(0,0,0,.09) 47%,rgba(0,0,0,.035) 50%,transparent 53%);transition:background-color .9s cubic-bezier(.16,.84,.2,1),-webkit-backdrop-filter .9s ease,backdrop-filter .9s ease}
.page-two-veil::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,transparent 24%,rgba(255,255,255,.75) 30%,rgba(255,255,255,.12) 39%,transparent 51%);opacity:0;transform:translateX(-12%);transition:opacity .22s ease;pointer-events:none}
.page-two-veil::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 18%,transparent 80%,rgba(0,0,0,.18));transition:background .9s ease,opacity .9s ease}
.page-two-map.is-light-story .page-two-veil{background-color:#fff;-webkit-backdrop-filter:blur(8px) saturate(.95) brightness(1.055);backdrop-filter:blur(8px) saturate(.95) brightness(1.055)}
.page-two-map.is-light-story .page-two-veil::before{animation:pageTwoThemeSweep .82s cubic-bezier(.16,.84,.2,1) both}
.page-two-map.is-light-story .page-two-veil::after{background:linear-gradient(180deg,rgba(255,255,255,.13),transparent 18%,transparent 80%,rgba(255,255,255,.13))}
@keyframes pageTwoThemeSweep{0%{opacity:0;transform:translateX(-18%)}35%{opacity:.62}100%{opacity:0;transform:translateX(34%)}}
.page-two-story{position:absolute;z-index:7;left:clamp(26px,3.6vw,66px);top:50%;width:min(410px,27vw);transform:translateY(-48%);pointer-events:none}
.page-two-story-kicker{margin:0 0 19px;font:700 9px/1 "Courier New",monospace;letter-spacing:.24em;text-transform:uppercase;color:rgba(175,232,244,.76);transition:color .72s ease,text-shadow .72s ease}
.page-two-chapters{position:relative;min-height:330px}
.page-two-chapter{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:0;filter:blur(16px);transform:translate3d(0,26px,0) scale(.985);transition:opacity .5s ease,filter .7s ease,transform .7s cubic-bezier(.16,.84,.2,1);will-change:opacity,filter,transform}
.page-two-chapter.is-active{opacity:1;filter:blur(0);transform:translate3d(0,0,0) scale(1)}
.page-two-chapter small{display:block;margin:0 0 15px;font:800 10px/1 "Courier New",monospace;letter-spacing:.2em;text-transform:uppercase;color:#8ee8ff;transition:color .72s ease}
.page-two-chapter h2{margin:0 0 20px;max-width:390px;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(40px,4.15vw,72px);font-weight:900;line-height:.88;letter-spacing:-.035em;text-transform:uppercase;color:#fff;text-shadow:0 8px 36px rgba(0,0,0,.42);transition:color .72s ease,text-shadow .72s ease}
.page-two-chapter p{margin:0;max-width:355px;font-size:clamp(12px,.9vw,15px);line-height:1.58;color:rgba(255,255,255,.73);text-shadow:0 3px 18px rgba(0,0,0,.42);transition:color .72s ease,text-shadow .72s ease}
.page-two-chapter[data-stage="0"] h2{position:relative;min-height:1.76em}
.page-two-chapter[data-stage="0"].is-intro-prepared .page-two-type-char{display:inline-block;opacity:0;filter:blur(5px);transform:translate3d(0,9px,0)}
.page-two-chapter[data-stage="0"] h2.is-typing::after{content:"";display:inline-block;width:.08em;height:.78em;margin-left:.08em;vertical-align:-.04em;background:#8ee8ff;box-shadow:0 0 18px rgba(93,221,255,.62);animation:pageTwoCaret .68s steps(1,end) infinite}
@keyframes pageTwoCaret{0%,49%{opacity:1}50%,100%{opacity:0}}
.page-two-intro-copy{display:grid;gap:10px}
.page-two-intro-line{display:block}
.page-two-chapter[data-stage="0"].is-intro-prepared .page-two-intro-line{opacity:0;filter:blur(7px);transform:translate3d(0,12px,0)}
.page-two-map.is-light-story .page-two-story-kicker{color:rgba(0,82,106,.74);text-shadow:none}
.page-two-map.is-light-story .page-two-chapter small{color:#006c8d}
.page-two-map.is-light-story .page-two-chapter h2{color:#05090b;text-shadow:0 7px 28px rgba(255,255,255,.42)}
.page-two-map.is-light-story .page-two-chapter p{color:rgba(5,9,11,.74);text-shadow:none}
.page-two-progress{position:absolute;z-index:8;left:clamp(26px,3.6vw,66px);bottom:clamp(42px,6vh,72px);display:flex;align-items:center;gap:12px;pointer-events:none;color:rgba(255,255,255,.56);font:700 8px/1 "Courier New",monospace;letter-spacing:.18em;text-transform:uppercase;transition:color .72s ease}
.page-two-progress-track{display:flex;align-items:center;gap:7px}
.page-two-progress-track i{display:block;width:23px;height:2px;background:rgba(255,255,255,.2);transition:width .34s ease,background .72s ease,box-shadow .34s ease}
.page-two-progress-track i.is-active{width:45px;background:#8ee8ff;box-shadow:0 0 12px rgba(90,221,255,.58)}
.page-two-map.is-light-story .page-two-progress{color:rgba(5,9,11,.58)}
.page-two-map.is-light-story .page-two-progress-track i{background:rgba(5,9,11,.18)}
.page-two-map.is-light-story .page-two-progress-track i.is-active{background:#007ea6;box-shadow:0 0 11px rgba(0,126,166,.32)}
.page-two-input-hint{position:absolute;z-index:8;right:clamp(20px,3vw,50px);bottom:clamp(28px,4vh,48px);font:700 8px/1 "Courier New",monospace;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5);pointer-events:none;text-shadow:0 3px 15px rgba(0,0,0,.55)}
.page-two-map.is-van-moving .page-two-input-hint{opacity:.22}
@media(max-width:980px){.page-two-world{right:-7vw;width:79vw;min-width:720px}.page-two-story{width:min(390px,34vw)}.page-two-chapter h2{font-size:clamp(38px,5.5vw,64px)}}
.page-two-entry-cue{position:absolute;z-index:18;inset:0;display:grid;place-items:center;padding:clamp(24px,5vw,72px);background:rgba(1,3,5,.68);-webkit-backdrop-filter:blur(8px) saturate(.78);backdrop-filter:blur(8px) saturate(.78);color:#fff;text-align:center;pointer-events:none;opacity:1;visibility:visible;transition:opacity .62s ease,visibility .62s ease,backdrop-filter .62s ease}
.page-two-entry-cue.is-hidden{opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.page-two-entry-cue-inner{max-width:min(850px,82vw);transform:translateY(0);filter:blur(0);transition:transform .62s cubic-bezier(.16,.84,.2,1),filter .62s ease}
.page-two-entry-cue.is-hidden .page-two-entry-cue-inner{transform:translateY(-14px) scale(.985);filter:blur(8px)}
.page-two-entry-cue strong,.page-two-entry-cue span{display:block;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;text-transform:uppercase;color:#fff;text-shadow:0 7px 34px rgba(0,0,0,.55)}
.page-two-entry-cue strong{font-size:clamp(42px,6vw,92px);font-weight:900;line-height:.88;letter-spacing:-.025em}
.page-two-entry-cue span{margin-top:18px;font-size:clamp(17px,1.7vw,28px);font-weight:800;line-height:1.05;letter-spacing:.045em;color:rgba(255,255,255,.82)}

@media(max-width:760px){.page-two-entry-cue{padding:24px;background:rgba(1,3,5,.72)}.page-two-entry-cue strong{font-size:clamp(38px,12vw,58px)}.page-two-entry-cue span{font-size:clamp(14px,4.7vw,20px);max-width:90vw;margin-left:auto;margin-right:auto}.page-two-map{min-height:100dvh}.page-two-world{right:-28vw;width:max(122vw,520px);filter:saturate(1.02) contrast(1.01) brightness(.95)}.page-two-veil{background-color:#040608;-webkit-mask-image:linear-gradient(0deg,#000 0%,rgba(0,0,0,.97) 18%,rgba(0,0,0,.68) 34%,rgba(0,0,0,.12) 58%,transparent 72%);mask-image:linear-gradient(0deg,#000 0%,rgba(0,0,0,.97) 18%,rgba(0,0,0,.68) 34%,rgba(0,0,0,.12) 58%,transparent 72%)}.page-two-veil::after{opacity:.58}.page-two-map.is-light-story .page-two-veil{background-color:#fff}.page-two-map.is-light-story .page-two-veil::after{background:linear-gradient(0deg,rgba(255,255,255,.12),transparent 58%)}.page-two-story{left:22px;right:22px;top:auto;bottom:90px;width:auto;transform:none}.page-two-story-kicker{margin-bottom:11px}.page-two-chapters{min-height:205px}.page-two-chapter{justify-content:flex-end}.page-two-chapter small{font-size:8px;margin-bottom:10px}.page-two-chapter h2{font-size:clamp(36px,10vw,56px);line-height:.88;margin-bottom:12px;max-width:92%}.page-two-chapter p{font-size:12px;line-height:1.48;max-width:92%}.page-two-progress{left:22px;bottom:45px}.page-two-input-hint{right:20px;bottom:45px;font-size:6px;letter-spacing:.13em}.page-two-marker{--marker-size:104px}}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){.page-two-marker::before,.page-two-marker::after{animation:none}.page-two-chapter,.page-two-route-line,.page-two-entry-cue,.page-two-entry-cue-inner,.page-two-veil,.page-two-story-kicker,.page-two-chapter small,.page-two-chapter h2,.page-two-chapter p,.page-two-progress,.page-two-progress-track i{transition:none}.page-two-van{filter:drop-shadow(0 7px 6px rgba(0,0,0,.3))}.page-two-truck-shield,.page-two-truck-shield-orbit,.page-two-worker *{animation:none!important}}

.systems-section{padding:83px 0 92px;background:var(--paper)}.systems-head{display:grid;grid-template-columns:1fr 370px;align-items:end;margin-bottom:52px}.micro{font-size:7px;color:#678089;margin:0 0 17px}.systems-head h2,.numbers-top h2,.coverage-grid h2,.project-grid h2{font-family:"Arial Narrow",Arial,sans-serif;font-weight:400;letter-spacing:-.055em;line-height:.9;margin:0;font-size:clamp(48px,5vw,72px)}.systems-summary{font-size:12px;line-height:1.55;color:#5a666a;margin:0 0 5px}.systems-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.system-card{min-height:270px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 20px 16px;display:flex;flex-direction:column;transition:background .2s,color .2s}.system-card:hover{background:#08141a;color:white}.system-card:hover p,.system-card:hover .card-no,.system-card:hover .open-row{color:#c2d2d6}.card-no{font-size:7px;color:#78878a}.icon{height:82px;position:relative;margin:9px 0 3px}.icon>*{position:absolute;display:block}.icon.repair i{left:10px;top:28px;width:50px;height:1px;background:#6c7476}.icon.repair i:before{content:"";position:absolute;left:0;top:-14px;width:5px;height:30px;background:var(--gold);transform:skew(-17deg)}.icon.repair b{left:55px;top:17px;width:22px;height:22px;border:1px solid #6c7476;border-radius:50%}.icon.roof i,.icon.insulation i{left:8px;top:16px;width:52px;height:34px;border-top:1px solid #6c7476;border-left:1px solid #6c7476;transform:skew(-16deg)}.icon.roof b,.icon.insulation b{left:40px;top:30px;width:45px;height:27px;border:1px solid var(--gold);transform:skew(-16deg)}.icon.windows i{left:8px;top:11px;width:38px;height:52px;border-left:1px solid #6c7476;border-top:1px solid #6c7476;border-right:1px solid #6c7476}.icon.windows b{left:57px;top:11px;width:19px;height:52px;border:1px solid var(--gold)}.icon.siding i{left:7px;top:28px;width:30px;height:16px;border:1px solid #6c7476}.icon.siding b{left:36px;top:20px;width:28px;height:16px;border:1px solid #6c7476}.icon.siding u{left:21px;top:43px;width:28px;height:16px;border:1px solid #6c7476;text-decoration:none}.icon.framing i{left:16px;top:14px;width:40px;height:40px;border-left:1px solid #6c7476;border-top:1px solid #6c7476;transform:rotate(45deg)}.icon.framing b{left:27px;top:50px;width:49px;height:24px;border:1px solid var(--gold)}.system-card h3{font-family:"Arial Narrow",Arial,sans-serif;font-size:21px;letter-spacing:-.04em;margin:0 0 13px}.system-card p{font-size:10px;line-height:1.55;color:#657075;margin:0 0 26px;max-width:260px}.open-row{border-top:1px solid #8c9495;margin-top:auto;padding-top:11px;display:flex;justify-content:space-between;font-size:6px;color:#525f62}.open-row b{font:11px Arial;font-weight:400}
.layers-section{background:#070d11;color:white;padding:62px 0 74px}.layers-head{display:grid;grid-template-columns:1fr 355px;align-items:end;margin-bottom:46px}.layers-head h2{font-family:"Arial Narrow",Arial,sans-serif;font-weight:400;letter-spacing:-.055em;line-height:.88;font-size:clamp(47px,5vw,72px);margin:0}.layers-head>p{font-size:12px;line-height:1.55;color:#aabdc2;margin:0 0 8px}.layers-grid{display:grid;grid-template-columns:2fr .98fr;min-height:470px}.exploded-figure{margin:0;background:#0b1217;position:relative;overflow:hidden;border:1px solid #1f2a2f}.exploded-figure img{width:100%;height:100%;object-fit:cover;display:block}.exploded-figure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,rgba(7,13,17,.35))}.exploded-figure figcaption{position:absolute;left:16px;bottom:14px;font:6px "Courier New",monospace;letter-spacing:.2em;color:#82949a;z-index:2}.callout{position:absolute;top:43%;left:61%;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#121212;display:grid;place-items:center;font:7px "Courier New",monospace;z-index:3}.layer-menu{border-top:1px solid #1e2c32;border-right:1px solid #1e2c32;border-bottom:1px solid #1e2c32;display:flex;flex-direction:column}.layer-tab{height:48px;background:transparent;color:#71878e;border:0;border-bottom:1px solid #1e2c32;text-align:left;padding:0 16px;display:flex;gap:20px;align-items:center;font-size:7px;cursor:pointer}.layer-tab.active{background:#99d9e1;color:#102025}.layer-tab b{font-weight:400}.layer-detail{padding:30px 22px 18px;margin-top:auto}.layer-detail small{font-size:7px;color:#66a7b0}.layer-detail h3{font-family:"Arial Narrow",Arial,sans-serif;font-weight:400;font-size:30px;line-height:.92;letter-spacing:-.05em;margin:17px 0}.layer-detail p{font-size:10px;line-height:1.55;color:#8ca0a6}.layer-detail a{font-size:6px;display:flex;justify-content:space-between;margin-top:22px}.layer-detail a b{font:11px Arial;font-weight:400}
.numbers-section{background:var(--ice2);padding:64px 0 75px}.numbers-top{display:grid;grid-template-columns:1fr 390px;gap:56px}.numbers-top h2{font-size:55px}.numbers-copy{font-size:12px;line-height:1.6;color:#5b6b70;margin-top:30px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cbd8da}.stat-grid article{padding:28px 20px;display:flex;flex-direction:column;min-height:210px}.stat-grid article+article{border-left:1px solid #cbd8da}.stat-grid strong{font-family:"Arial Narrow",Arial,sans-serif;font-size:40px;letter-spacing:-.04em}.stat-grid p{font-size:10px;line-height:1.55;color:#5b696e;margin-top:42px}.stat-grid span{font-size:6px;margin-top:auto;color:#697c80;border-top:1px solid #cbd8da;padding-top:9px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd8da;border-left:1px solid #cbd8da;margin-top:65px}.process-grid article{border-right:1px solid #cbd8da;padding:18px 18px 22px;min-height:130px}.process-grid>article>span{font-size:6px;color:#73878b}.process-grid h3{font-family:"Arial Narrow",Arial,sans-serif;font-size:21px;font-weight:400;letter-spacing:-.03em;margin:28px 0 10px}.process-grid p{font-size:9px;line-height:1.5;color:#627277}
.coverage-section{background:var(--paper);padding:76px 0}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px}.coverage-list{border-top:1px solid var(--line)}.coverage-list>div{display:grid;grid-template-columns:34px 1fr;border-bottom:1px solid var(--line);padding:20px 0}.coverage-list span{font-size:6px;color:#78898b}.coverage-list h3{font-family:"Arial Narrow",Arial,sans-serif;font-size:20px;font-weight:400;margin:0 0 7px}.coverage-list p{grid-column:2;font-size:9px;color:#677276;margin:0}
.project-section{background:#091116;color:#f1f5f5;padding:78px 0 84px}.project-grid{display:grid;grid-template-columns:1.45fr .7fr;gap:95px;align-items:end}.project-grid h2{font-size:55px}.project-grid>div:last-child p{font-size:12px;line-height:1.65;color:#aabcc0;margin:0 0 28px}.project-btn{border:1px solid #536168;display:flex;justify-content:space-between;padding:18px 20px;font:8px "Courier New",monospace;letter-spacing:.2em}.project-btn span{font:13px Arial}footer{background:#05090b;color:#6e858b;font-size:6px;padding:17px 0;border-top:1px solid #142127}footer .section-shell{display:flex;justify-content:space-between}
@media(max-width:900px){.header-inner,.section-shell{width:calc(100% - 38px)}.main-nav>a:not(.plan-btn){display:none}.hero-scroll{height:520vh}.hero-panel{right:20px;left:20px;bottom:72px;top:auto;transform:none;width:auto;max-height:none;overflow:visible;background:none}.hero-panel.switching{transform:none}.hero-vignette{background:linear-gradient(0deg,rgba(4,9,12,.86),rgba(4,9,12,.05) 65%)}.hero-timeline{left:28%;width:56%}.systems-head,.layers-head,.numbers-top,.coverage-grid,.project-grid{grid-template-columns:1fr;gap:32px}.systems-grid{grid-template-columns:1fr}.layers-grid{grid-template-columns:1fr}.exploded-figure{min-height:420px}.stat-grid{grid-template-columns:1fr}.stat-grid article+article{border-left:0;border-top:1px solid #cbd8da}.process-grid{grid-template-columns:1fr}.project-grid{gap:36px}.hero-top-tag{right:15px}.hero-bottom-tag{right:15px}}


@media(max-width:760px){.hero-panel{right:6%;left:6%;width:auto;top:48%;bottom:auto;transform:translateY(-50%)}.service-reel{height:278px}.reel-window:before{top:105px}.reel-window:after{top:171px}.reel-item{height:55px;font-size:17px}.reel-item.active{font-size:clamp(27px,8.7vw,38px)}.service-detail{padding-left:12px;max-width:92%;font-size:10px}.hero-copy{font-size:10px}.hero-tech{display:block}.hero-tech strong{display:block;margin-top:5px}.reel-meta{font-size:7px}.hero-timeline{left:12%;width:50%}}

/* Vault hero interaction refinement */
.site-header{position:absolute;top:0;left:0;right:0;z-index:30;background:linear-gradient(180deg,rgba(7,11,14,.94) 0%,rgba(7,11,14,.72) 58%,rgba(7,11,14,0) 100%);border-bottom:0}
.hero-scroll{height:100vh;min-height:680px;position:relative;background:#080c10;overscroll-behavior:contain}
.hero-stage{height:100vh;position:sticky;top:0;overflow:hidden;background:#080c10}
.hero-video{z-index:0}
.hero-vignette{z-index:1;background:linear-gradient(90deg,rgba(3,8,11,.12) 0%,rgba(3,8,11,.04) 38%,rgba(3,8,11,.16) 52%,rgba(3,8,11,.42) 100%)}
.hero-right-blur{position:absolute;z-index:2;top:0;right:0;bottom:0;width:55%;pointer-events:none;opacity:0;background:linear-gradient(90deg,rgba(7,11,14,0) 0%,rgba(7,11,14,.08) 18%,rgba(7,11,14,.18) 100%);-webkit-backdrop-filter:blur(13px) saturate(.92) brightness(.82);backdrop-filter:blur(13px) saturate(.92) brightness(.82);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 16%,#000 38%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 16%,#000 38%,#000 100%);transition:opacity .42s ease}
.hero-scroll.service-focus .hero-right-blur{opacity:1}
.hero-edge,.hero-panel,.hero-top-tag,.hero-bottom-tag,.hero-bottom-left,.hero-timeline{z-index:4}
.hero-panel{right:4.5%;top:50%;width:min(780px,48vw);transform:translateY(-49%)}
.reel-meta{margin-bottom:16px;font-size:10px;letter-spacing:.2em}
.service-reel{height:410px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 12%,#000 88%,transparent 100%)}
.reel-window:before{top:159px}.reel-window:after{top:251px}
.reel-item{height:82px;font-size:clamp(25px,2.05vw,38px);font-weight:800;letter-spacing:.025em;text-shadow:0 2px 14px rgba(0,0,0,.42)}
.reel-item.near{opacity:.58}
.reel-item.active{font-size:clamp(53px,4.6vw,78px);letter-spacing:.005em;line-height:.86;transform:scale(1.035);text-shadow:0 4px 28px rgba(0,0,0,.55)}
.reel-number{font-size:10px;margin-right:20px}
.service-detail{max-width:680px;padding:20px 5px 0 22px}
.hero-lead{font-size:clamp(22px,1.65vw,30px);line-height:1.08;letter-spacing:.025em;margin-bottom:14px}
.hero-copy{font-size:clamp(14px,1.02vw,18px);line-height:1.55;max-width:650px;color:rgba(255,255,255,.86)}
.hero-copy p{margin-bottom:10px}
.hero-rule{margin:18px 0 14px}
.hero-tech{font-size:10px;letter-spacing:.15em;gap:22px;color:rgba(255,255,255,.6)}
.hero-tech strong{font-size:11px;line-height:1.45;color:rgba(255,255,255,.92)}
.hero-standard{font-size:13px;line-height:1.5;color:rgba(255,255,255,.82);margin-top:14px}
.hero-scroll-down{position:absolute;z-index:6;left:50%;top:53%;bottom:auto;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:9px;color:#fff;text-align:center;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-weight:800;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 2px 16px rgba(0,0,0,.72);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
.hero-scroll-down span{font-size:clamp(21px,1.7vw,30px)}
.hero-scroll-down b{font:400 clamp(30px,2.5vw,44px)/.8 Arial,sans-serif;animation:vaultArrowDown 1.25s ease-in-out infinite}
.hero-scroll.engaged .hero-scroll-down{opacity:0;transform:translate(-50%,calc(-50% + 12px))}
@keyframes vaultArrowDown{0%,100%{transform:translateY(0);opacity:.65}50%{transform:translateY(9px);opacity:1}}
@media(max-width:960px){.hero-panel{width:min(710px,54vw);right:3.5%}.reel-item.active{font-size:clamp(45px,5.2vw,66px)}.hero-copy{font-size:14px}.hero-lead{font-size:22px}}
@media(max-width:760px){.site-header{height:88px}.hero-scroll{min-height:620px}.hero-panel{left:5%;right:5%;width:auto;top:50%}.hero-right-blur{left:0;width:100%;-webkit-mask-image:linear-gradient(to bottom,transparent 5%,#000 28%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 5%,#000 28%,#000 88%,transparent 100%)}.service-reel{height:330px}.reel-window:before{top:127px}.reel-window:after{top:203px}.reel-item{height:66px;font-size:22px}.reel-item.active{font-size:clamp(40px,10vw,55px)}.service-detail{max-width:100%;padding:15px 0 0}.hero-lead{font-size:20px}.hero-copy{font-size:13px;line-height:1.48}.hero-tech{font-size:9px}.hero-standard{font-size:12px}.hero-scroll-down{top:57%;bottom:auto}.hero-scroll-down span{font-size:20px}}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){.hero-scroll-down b{animation:none}}

/* Final hero-to-Page-2 snap transition */
.hero-scroll.engaged.at-end .hero-scroll-down{
  opacity:1;
  top:auto;
  bottom:34px;
  transform:translateX(-50%);
}
.hero-scroll.engaged.at-end .hero-scroll-down span{font-size:clamp(20px,1.45vw,27px)}
.hero-scroll.engaged.at-end .hero-scroll-down b{font-size:clamp(28px,2.25vw,39px)}
@media(max-width:760px){.hero-scroll.engaged.at-end .hero-scroll-down{bottom:22px}}


/* Hero polish: bottom cues, smoother reel, higher-impact service storytelling */
.hero-scroll-down{
  top:auto!important;
  bottom:74px!important;
  transform:translateX(-50%)!important;
  gap:7px;
  filter:drop-shadow(0 7px 24px rgba(0,0,0,.55));
}
.hero-scroll-down span{
  font-size:clamp(22px,1.75vw,31px)!important;
  letter-spacing:.19em;
}
.hero-scroll-down b{
  font-size:clamp(34px,2.8vw,48px)!important;
}
.hero-scroll.engaged:not(.at-end) .hero-scroll-down{
  opacity:0;
  transform:translateX(-50%) translateY(14px)!important;
}
.hero-scroll.armed .hero-scroll-down{
  opacity:1!important;
  transform:translateX(-50%)!important;
}
.hero-scroll.armed .hero-scroll-down span{
  animation:vaultPromptFlash .72s ease both;
}
@keyframes vaultPromptFlash{
  0%{opacity:.45;letter-spacing:.19em}
  45%{opacity:1;letter-spacing:.27em;text-shadow:0 0 24px rgba(255,255,255,.32)}
  100%{opacity:1;letter-spacing:.21em}
}
.hero-side-cue{
  position:absolute;
  z-index:7;
  right:28px;
  bottom:63px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  color:#fff;
  pointer-events:none;
  transition:opacity .35s ease,transform .35s ease;
  filter:drop-shadow(0 4px 16px rgba(0,0,0,.6));
}
.hero-side-cue i{
  width:1px;
  height:54px;
  background:linear-gradient(to bottom,rgba(255,255,255,.12),rgba(255,255,255,.85));
  display:block;
}
.hero-side-cue b{
  font:400 34px/1 Arial,sans-serif;
  animation:vaultArrowDown 1.25s ease-in-out infinite;
}
.hero-side-cue span{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font:700 8px "Courier New",monospace;
  letter-spacing:.22em;
  opacity:.72;
}
.hero-scroll.engaged:not(.at-end) .hero-side-cue{
  opacity:0;
  transform:translateY(12px);
}
.hero-scroll.armed .hero-side-cue{opacity:1!important;transform:none!important}

.hero-right-blur{
  opacity:1;
  width:57%;
  background:
    radial-gradient(circle at 82% 43%,rgba(18,45,51,.14),transparent 34%),
    linear-gradient(90deg,rgba(7,11,14,0) 0%,rgba(7,11,14,.08) 17%,rgba(7,11,14,.28) 64%,rgba(7,11,14,.48) 100%);
  -webkit-backdrop-filter:blur(14px) saturate(.94) brightness(.78);
  backdrop-filter:blur(14px) saturate(.94) brightness(.78);
}
.hero-scroll:not(.service-focus) .hero-right-blur{opacity:0}

.hero-panel{
  width:min(860px,52vw);
  right:3.7%;
}
.service-reel{height:430px}
.reel-window:before{top:166px}
.reel-window:after{top:264px}
.reel-track{
  transition:transform .62s cubic-bezier(.12,.86,.18,1);
}
.reel-item{
  height:86px;
  font-size:clamp(28px,2.25vw,42px);
  transition:
    font-size .42s cubic-bezier(.14,.84,.18,1),
    opacity .4s ease,
    transform .46s cubic-bezier(.14,.84,.18,1),
    filter .4s ease,
    text-shadow .4s ease;
}
.reel-item.active{
  font-size:clamp(61px,5.25vw,92px);
  transform:scale(1.045);
  text-shadow:0 5px 34px rgba(0,0,0,.62),0 0 22px rgba(255,255,255,.08);
}
.reel-item.active:after{
  content:"";
  width:58px;
  height:3px;
  margin-left:18px;
  background:linear-gradient(90deg,#fff,var(--gold));
  box-shadow:0 0 16px rgba(242,182,0,.32);
}
.reel-number{font-size:11px}

.service-detail{
  max-width:790px;
  padding:24px 4px 0 8px;
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:25px;
  align-items:start;
}
.service-doodle{
  min-height:150px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  opacity:0;
  transform:translateY(12px) scale(.94);
  transition:opacity .45s ease .08s,transform .55s cubic-bezier(.16,.82,.24,1) .08s;
}
.service-detail.revealed .service-doodle{opacity:1;transform:none}
.service-doodle svg{
  width:150px;
  height:auto;
  overflow:visible;
  filter:drop-shadow(0 9px 20px rgba(0,0,0,.28));
}
.service-doodle .d-line,
.service-doodle .d-accent,
.service-doodle .d-soft{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2.2;
  stroke-dasharray:280;
  stroke-dashoffset:280;
}
.service-doodle .d-line{stroke:rgba(255,255,255,.96)}
.service-doodle .d-accent{stroke:var(--gold);stroke-width:2.6}
.service-doodle .d-soft{stroke:rgba(155,214,223,.92)}
.service-detail.revealed .service-doodle .d-line{animation:doodleDraw .78s cubic-bezier(.2,.75,.2,1) forwards .08s}
.service-detail.revealed .service-doodle .d-soft{animation:doodleDraw .9s cubic-bezier(.2,.75,.2,1) forwards .16s}
.service-detail.revealed .service-doodle .d-accent{animation:doodleDraw .72s cubic-bezier(.2,.75,.2,1) forwards .28s}
@keyframes doodleDraw{to{stroke-dashoffset:0}}
.detail-copyblock{
  text-align:right;
  position:relative;
  padding-right:4px;
}
.detail-copyblock:before{
  content:"";
  position:absolute;
  right:0;
  top:-13px;
  width:92px;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold));
  transform-origin:right;
  transform:scaleX(0);
  transition:transform .55s cubic-bezier(.16,.82,.24,1) .12s;
}
.service-detail.revealed .detail-copyblock:before{transform:scaleX(1)}
.hero-lead{
  font-size:clamp(28px,2.05vw,38px);
  line-height:1.02;
  letter-spacing:.012em;
  margin-bottom:16px;
  text-wrap:balance;
  text-shadow:0 4px 25px rgba(0,0,0,.55);
}
.hero-copy{
  font-size:clamp(16px,1.15vw,20px);
  line-height:1.55;
  max-width:640px;
  color:rgba(255,255,255,.94);
  text-shadow:0 2px 14px rgba(0,0,0,.5);
}
.hero-copy p:first-child::first-letter{
  color:var(--gold);
  font-weight:800;
}
.hero-rule{
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.68));
  margin:20px 0 15px;
}
.hero-tech{
  font-size:11px;
  color:rgba(255,255,255,.68);
}
.hero-tech strong{
  font-size:12px;
  letter-spacing:.11em;
  color:#fff;
}
.hero-standard{
  font-size:14px;
  color:rgba(255,255,255,.91);
  border-right:2px solid var(--gold);
  padding-right:12px;
}
.service-detail.revealed .hero-lead{
  animation:vaultLeadIn .6s cubic-bezier(.16,.82,.24,1) both;
}
.service-detail.revealed .hero-copy{
  animation:vaultCopyIn .72s cubic-bezier(.16,.82,.24,1) .08s both;
}
.service-detail.revealed .hero-tech,
.service-detail.revealed .hero-standard{
  animation:vaultCopyIn .7s cubic-bezier(.16,.82,.24,1) .16s both;
}
@keyframes vaultLeadIn{
  from{opacity:0;transform:translateY(14px);letter-spacing:.035em}
  to{opacity:1;transform:none;letter-spacing:.012em}
}
@keyframes vaultCopyIn{
  from{opacity:0;transform:translateY(9px)}
  to{opacity:1;transform:none}
}
@media(max-width:960px){
  .hero-panel{width:min(760px,57vw)}
  .service-detail{grid-template-columns:125px minmax(0,1fr);gap:17px}
  .service-doodle svg{width:122px}
}
@media(max-width:760px){
  .hero-panel{width:auto;right:5%;left:5%}
  .service-detail{grid-template-columns:1fr;gap:8px}
  .service-doodle{display:none}
  .hero-lead{font-size:clamp(22px,6.3vw,29px)}
  .hero-copy{font-size:14px}
  .hero-scroll-down{bottom:62px!important}
  .hero-side-cue{right:12px;bottom:54px}
  .hero-side-cue span{display:none}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .service-detail.revealed .service-doodle .d-line,
  .service-detail.revealed .service-doodle .d-soft,
  .service-detail.revealed .service-doodle .d-accent{animation:none;stroke-dashoffset:0}
  .service-detail.revealed .hero-lead,
  .service-detail.revealed .hero-copy,
  .service-detail.revealed .hero-tech,
  .service-detail.revealed .hero-standard{animation:none}
}


/* Framing fit + cleaner brand pass: widen the cinematic service area and remove HUD/military-style micro UI */
.reel-meta,
.hero-top-tag,
.hero-bottom-left,
.hero-bottom-tag{
  display:none!important;
}
.reel-number{display:none!important}

@media(min-width:961px){
  .hero-panel{
    width:min(1160px,64vw)!important;
    right:2.4%!important;
  }
  .service-reel{
    width:100%;
  }
  .reel-item{
    padding-right:8px;
  }
  .reel-item.active{
    font-size:clamp(60px,4.8vw,88px)!important;
  }
  .service-detail{
    max-width:930px!important;
    grid-template-columns:180px minmax(0,1fr)!important;
    gap:30px!important;
  }
  .detail-copyblock{
    max-width:720px;
    margin-left:auto;
  }
  .hero-copy{max-width:700px!important}
}


/* Header reveal + urgent conversion actions */
.site-header{
  height:auto!important;
  position:fixed!important;
  top:0;left:0;right:0;
  z-index:80!important;
  background:transparent!important;
  border:0!important;
  transform:translateY(calc(-100% + 7px));
  opacity:.985;
  transition:transform .42s cubic-bezier(.16,.84,.2,1),filter .3s ease;
  will-change:transform;
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.18));
}
.site-header.header-open,.site-header:focus-within,.site-header:hover{transform:translateY(0)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:15px;background:transparent}
.urgent-strip{
  height:38px;
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#05080a;
  border-bottom:1px solid rgba(255,255,255,.12);
  color:#fff;
}
.urgent-action{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 22px;
  font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  text-transform:uppercase;
  letter-spacing:.075em;
  transition:background .2s ease,color .2s ease,transform .2s ease;
  position:relative;
  overflow:hidden;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.urgent-action+ .urgent-action{border-left:1px solid rgba(255,255,255,.15)}
.urgent-action strong{font-size:15px;line-height:1;white-space:nowrap}
.urgent-action small{font:700 9px "Courier New",monospace;letter-spacing:.18em;opacity:.72;white-space:nowrap}
.urgent-action b{font:400 14px Arial,sans-serif;margin-left:3px}
.urgent-pulse{width:7px;height:7px;border-radius:50%;flex:none}
.header-main{
  height:78px;
  background:linear-gradient(180deg,rgba(7,11,14,.96) 0%,rgba(7,11,14,.88) 68%,rgba(7,11,14,.76) 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  -webkit-backdrop-filter:blur(15px) saturate(.9);
  backdrop-filter:blur(15px) saturate(.9);
}
.header-inner{height:100%;width:min(980px,calc(100% - 72px))!important}
.logo-link{width:62px!important;height:54px!important}
.main-nav{font-size:8px!important;gap:32px!important}
.plan-btn{padding:14px 16px!important;border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.035)}
@media(hover:hover) and (pointer:fine){
  .urgent-action:hover{transform:translateY(-1px)}
}
.header-reveal-zone{position:fixed;top:0;left:0;right:0;height:18px;z-index:79;pointer-events:none}
@media(max-width:760px){
  .site-header{transform:none!important;opacity:1!important;filter:none}
  .urgent-strip{height:36px;grid-template-columns:1fr 1fr}
  .urgent-action{padding:0 8px;gap:5px}
  .urgent-action strong{font-size:12px;letter-spacing:.035em}
  .urgent-action small{font-size:7px;letter-spacing:.1em}
  .urgent-action b{display:none}
  .urgent-pulse{width:6px;height:6px}
  .header-main{height:58px}
  .header-inner{width:calc(100% - 22px)!important}
  .logo-link{width:48px!important;height:43px!important}
  .main-nav{gap:8px!important}
  .main-nav>a:not(.plan-btn){display:none!important}
  .plan-btn{font-size:7px!important;padding:10px 11px!important;gap:10px!important}
  .plan-btn span{font-size:11px!important}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){.site-header,.urgent-action{transition:none}.urgent-pulse{animation:none}}

/* Page 2 -> Trust transition: one authored transition, no overlay patch stack. */
.page-two-exit-curtain{position:absolute;z-index:11;inset:0;background:#fff;pointer-events:none;opacity:0;transform:scaleX(.295);transform-origin:0 50%;will-change:transform,opacity;box-shadow:18px 0 42px rgba(255,255,255,.18)}
.page-two-exit-curtain::after{content:"";position:absolute;top:0;bottom:0;right:-10vw;width:10vw;background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,0));opacity:.72;filter:blur(1px)}
.page-two-map.is-exiting-down .page-two-exit-curtain{opacity:1;animation:pageTwoWhiteTakeover .92s cubic-bezier(.76,0,.24,1) forwards}
@keyframes pageTwoWhiteTakeover{0%{transform:scaleX(.295)}100%{transform:scaleX(1)}}


/* SECTION 3 — THE LOCKED EXPERIENCE. One viewport, five deliberate trust chapters. */
.trust-reveal-section{
  --trust-ink:#090a0b;
  --trust-muted:rgba(9,10,11,.56);
  --trust-line:rgba(9,10,11,.12);
  --trust-soft:#f3f4f5;
  --trust-green:#228b55;
  --trust-red:#d82032;
  --trust-amber:#c79528;
  position:relative;height:100vh;height:100dvh;min-height:640px;overflow:hidden;background:#fff;color:var(--trust-ink);scroll-snap-align:start;scroll-snap-stop:always;overscroll-behavior:contain;isolation:isolate
}
.trust-reveal-stage{position:absolute;inset:0;background:#fff;overflow:hidden}
.trust-reveal-stage::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 76% 44%,rgba(8,10,12,.025),transparent 28%),linear-gradient(90deg,transparent 0 62%,rgba(8,10,12,.016) 62% 62.08%,transparent 62.08%);opacity:.72}
.trust-intro{position:absolute;inset:0;z-index:8;display:grid;place-items:center;padding:clamp(86px,10vh,126px) clamp(28px,6vw,96px) clamp(42px,6vh,78px);background:#fff;transition:opacity .56s ease,transform .78s cubic-bezier(.76,0,.24,1),filter .56s ease;will-change:transform,opacity,filter}
.trust-reveal-section.is-journey .trust-intro{opacity:0;transform:translateY(-8vh) scale(.95);filter:blur(9px);pointer-events:none}
.trust-reveal-headline{position:relative;width:min(1180px,88vw);margin:0;text-align:center;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.045em;line-height:.82;color:#060708;transform-origin:50% 50%;will-change:transform,opacity,filter}
.trust-reveal-headline .trust-line{display:block;overflow:hidden}
.trust-reveal-headline .trust-line:nth-child(1){font-size:clamp(44px,5vw,78px);letter-spacing:-.03em}
.trust-reveal-headline .trust-line:nth-child(2){font-size:clamp(72px,8.2vw,136px)}
.trust-reveal-headline .trust-line:nth-child(3){margin-top:.16em;font-size:clamp(34px,3.55vw,58px);letter-spacing:-.025em;line-height:.92}
.trust-reveal-word{display:inline-block;opacity:0;filter:blur(12px);transform:translate3d(0,32px,0) scale(.96);will-change:transform,opacity,filter}
.trust-intro-prompt{position:absolute;left:50%;bottom:clamp(34px,5vh,64px);transform:translateX(-50%);display:flex;align-items:center;gap:12px;font:700 9px/1 Inter,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:rgba(9,10,11,.48);opacity:0;transition:opacity .4s ease;white-space:nowrap}
.trust-reveal-section.is-intro-done .trust-intro-prompt{opacity:1}
.trust-intro-prompt::before{content:"";width:34px;height:1px;background:rgba(9,10,11,.34);animation:trustPromptLine 1.8s ease-in-out infinite}
@keyframes trustPromptLine{0%,100%{transform:scaleX(.45);transform-origin:100% 50%;opacity:.35}50%{transform:scaleX(1);transform-origin:100% 50%;opacity:.9}}

.trust-journey{position:absolute;inset:0;z-index:5;opacity:0;pointer-events:none;transform:translateY(5.5vh);transition:opacity .48s ease,transform .72s cubic-bezier(.16,.84,.2,1);background:#fff}
.trust-reveal-section.is-journey .trust-journey{opacity:1;transform:none;pointer-events:auto}
.trust-journey-top{position:absolute;left:clamp(28px,4vw,72px);right:clamp(28px,4vw,72px);top:clamp(92px,11.2vh,132px);z-index:9;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}
.trust-journey-kicker{display:flex;align-items:center;gap:11px;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:rgba(9,10,11,.62)}
.trust-journey-kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:#111;box-shadow:0 0 0 4px rgba(9,10,11,.06)}
.trust-journey-counter{display:flex;align-items:baseline;gap:5px;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;text-transform:uppercase;color:rgba(9,10,11,.48)}
.trust-journey-current{font-size:26px;font-weight:900;color:#0a0b0d;line-height:.8}
.trust-journey-total{font-size:12px;font-weight:800;letter-spacing:.06em}

.trust-chapters{position:absolute;inset:0}
.trust-chapter{--accent:#111;position:absolute;inset:0;padding:clamp(144px,18vh,196px) clamp(28px,4.5vw,78px) clamp(148px,15vh,176px);display:grid;grid-template-columns:minmax(390px,.94fr) minmax(470px,1.06fr);gap:clamp(28px,3.8vw,66px);align-items:center;opacity:0;visibility:hidden;transform:translateY(20px);transition:opacity .42s ease,transform .62s cubic-bezier(.16,.84,.2,1),visibility 0s linear .62s;pointer-events:none}
.trust-chapter.is-active{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .42s ease,transform .62s cubic-bezier(.16,.84,.2,1),visibility 0s;pointer-events:auto}
.trust-chapter[data-step="1"]{--accent:#111}
.trust-chapter[data-step="2"]{--accent:#111}
.trust-chapter[data-step="3"]{--accent:#228b55}
.trust-chapter[data-step="4"]{--accent:#c79528}
.trust-chapter[data-step="5"]{--accent:#111}
.trust-copy{position:relative;z-index:2;max-width:680px}
.trust-step-label{display:flex;align-items:center;gap:12px;margin-bottom:18px;font:800 9px/1 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(9,10,11,.48)}
.trust-step-label b{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid rgba(9,10,11,.18);border-radius:50%;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:17px;letter-spacing:0;color:#0b0d0f}
.trust-step-title{margin:0;max-width:11.4ch;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(52px,5vw,82px);font-weight:900;line-height:.88;letter-spacing:-.035em;text-transform:uppercase;text-wrap:balance}
.trust-step-body{margin:20px 0 0;max-width:61ch;font:500 clamp(13px,1.05vw,16px)/1.52 Inter,Arial,sans-serif;color:rgba(9,10,11,.66)}
.trust-emphasis{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-weight:900;letter-spacing:.015em;text-transform:uppercase;color:var(--trust-red)}
.trust-keyline{position:relative;display:flex;align-items:center;gap:10px;margin-top:17px;max-width:630px;padding:8px 12px 8px 15px;border-left:3px solid var(--trust-red);background:linear-gradient(90deg,rgba(216,32,50,.065),rgba(216,32,50,.012) 68%,transparent);font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(15px,1.15vw,20px);font-weight:900;line-height:1.02;letter-spacing:.025em;text-transform:uppercase;color:#d82032}
.trust-keyline::before{content:"•";font:900 16px/1 Inter,Arial,sans-serif;color:#d82032;flex:0 0 auto}
.trust-proof-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px;max-width:650px}
.trust-proof{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 11px;border-radius:999px;background:#f3f4f5;border:1px solid rgba(9,10,11,.08);font:750 8px/1 Inter,Arial,sans-serif;letter-spacing:.075em;text-transform:uppercase;color:rgba(9,10,11,.78)}
.trust-proof::before{content:"✓";font-size:9px;font-weight:900;color:var(--trust-green)}
.trust-visual{position:relative;min-width:0;height:min(58vh,570px);max-height:570px;display:grid;place-items:center;perspective:1400px}
.trust-visual::before{content:attr(data-watermark);position:absolute;right:2%;top:50%;transform:translateY(-54%);font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-weight:900;font-size:clamp(170px,19vw,310px);line-height:.7;letter-spacing:-.05em;color:rgba(9,10,11,.028);z-index:-1;white-space:nowrap}

/* 01 — whole-home inspection map */
.trust-home-map{position:relative;width:min(770px,100%);height:min(480px,54vh);overflow:visible;display:grid;place-items:center;padding-top:34px}
.trust-home-map-frame{position:absolute;inset:12% 3% 7%;border:1px solid rgba(9,10,11,.10);background:linear-gradient(180deg,#f7f8f8,#fff);box-shadow:0 26px 70px rgba(8,10,12,.075);overflow:hidden}
.trust-home-map-frame::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(9,10,11,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(9,10,11,.028) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);pointer-events:none}
.trust-home-map-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.74) contrast(.98) brightness(1.06);opacity:.93;user-select:none;-webkit-user-drag:none}.trust-home-map-fallback{position:absolute;inset:0;background:linear-gradient(145deg,rgba(244,245,245,.20),rgba(255,255,255,.20)),url("../media/a9f3499c24816e18.webp") center 52%/cover no-repeat;}.trust-home-map-image-new{z-index:1}
.trust-home-scan{position:absolute;left:10%;right:10%;top:14%;height:2px;background:linear-gradient(90deg,transparent,rgba(34,139,85,.16) 8%,rgba(34,139,85,.88) 48%,rgba(34,139,85,.16) 92%,transparent);box-shadow:0 0 18px rgba(34,139,85,.22);opacity:0;z-index:4}
.trust-chapter.is-active .trust-home-scan{animation:trustWholeHomeScan 3.2s cubic-bezier(.45,0,.2,1) .35s infinite}
@keyframes trustWholeHomeScan{0%{top:15%;opacity:0}12%{opacity:.75}77%{opacity:.52}100%{top:82%;opacity:0}}
.trust-inspect-point{--px:50%;--py:50%;--lx:0px;--ly:0px;position:absolute;left:var(--px);top:var(--py);z-index:5;opacity:0;transform:translate(-50%,-50%) scale(.82);transition:opacity .35s ease,transform .48s cubic-bezier(.16,.84,.2,1)}
.trust-chapter.is-active .trust-inspect-point{opacity:1;transform:translate(-50%,-50%) scale(1)}
.trust-inspect-point::before{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;background:#228b55;border:2px solid #fff;box-shadow:0 0 0 1px rgba(9,10,11,.18),0 0 0 6px rgba(34,139,85,.08);transform:translate(-50%,-50%)}
.trust-inspect-point::after{content:"";position:absolute;left:50%;top:50%;width:var(--line,62px);height:1px;background:rgba(9,10,11,.24);transform-origin:0 50%;transform:rotate(var(--ang,0deg));z-index:-1}
.trust-inspect-point span{position:absolute;left:var(--lx);top:var(--ly);min-width:max-content;padding:7px 9px;background:rgba(255,255,255,.94);border:1px solid rgba(9,10,11,.10);box-shadow:0 7px 18px rgba(8,10,12,.065);font:800 7px/1 Inter,Arial,sans-serif;letter-spacing:.075em;text-transform:uppercase;color:rgba(9,10,11,.78);white-space:nowrap}
.trust-inspect-point span::before{content:"✓";margin-right:5px;color:#228b55;font-size:8px}
.trust-inspect-point.p1{--px:51%;--py:25%;--line:70px;--ang:-155deg;--lx:-154px;--ly:-42px;transition-delay:.42s}
.trust-inspect-point.p2{--px:64%;--py:34%;--line:66px;--ang:-25deg;--lx:56px;--ly:-34px;transition-delay:.56s}
.trust-inspect-point.p3{--px:85%;--py:43%;--line:66px;--ang:-6deg;--lx:58px;--ly:-8px;transition-delay:.70s}
.trust-inspect-point.p4{--px:75%;--py:39%;--line:64px;--ang:-12deg;--lx:56px;--ly:10px;transition-delay:.84s}
.trust-inspect-point.p5{--px:49%;--py:61%;--line:62px;--ang:156deg;--lx:-154px;--ly:26px;transition-delay:.98s}
.trust-inspect-point.p6{--px:28%;--py:53%;--line:64px;--ang:188deg;--lx:-158px;--ly:-8px;transition-delay:1.12s}
.trust-inspect-point.p7{--px:47%;--py:33%;--line:56px;--ang:-90deg;--lx:-54px;--ly:-72px;transition-delay:1.26s}
.trust-inspect-point.p8{--px:69%;--py:82%;--line:58px;--ang:62deg;--lx:30px;--ly:45px;transition-delay:1.40s}
.trust-home-map-status{position:absolute;left:7%;bottom:0;display:flex;align-items:center;gap:9px;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(9,10,11,.54)}

.trust-home-map-status i{width:7px;height:7px;border-radius:50%;background:#228b55;box-shadow:0 0 0 4px rgba(34,139,85,.08)}
.trust-home-map-heading{position:absolute;left:3%;right:3%;top:0;display:flex;align-items:baseline;justify-content:space-between;gap:16px;z-index:8;font-family:Inter,Arial,sans-serif}
.trust-home-map-heading strong{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(19px,1.7vw,28px);letter-spacing:-.01em}
.trust-home-map-heading span{font:800 7px/1 Inter,Arial,sans-serif;letter-spacing:.12em;color:rgba(9,10,11,.48);text-align:right}
.trust-step-body strong{color:#090a0b;font-weight:800}
.trust-scope-sheet-detailed{width:min(590px,86%);height:96%;padding:22px 26px 20px!important;transform:rotate(-.8deg)!important}
.trust-scope-head-detailed{align-items:center!important;border-bottom:2px solid #0b0d0f!important;padding-bottom:12px!important}
.trust-scope-logo{display:block;width:150px;height:45px;object-fit:contain;object-position:left center}
.trust-scope-head-detailed .trust-scope-no{font:700 7px/1.45 Inter,Arial,sans-serif!important;letter-spacing:.06em;text-align:right;color:rgba(9,10,11,.54)}
.trust-scope-head-detailed .trust-scope-no strong{font-size:7.5px;color:#090a0b;letter-spacing:.08em}
.trust-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;padding:11px 0;border-bottom:1px solid rgba(9,10,11,.10)}
.trust-customer-grid span{min-width:0}.trust-customer-grid small{display:block;font:800 5.5px/1 Inter,Arial,sans-serif;letter-spacing:.11em;color:rgba(9,10,11,.42)}.trust-customer-grid b{display:block;margin-top:4px;font:650 7px/1.2 Inter,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trust-bill-head,.trust-bill-row{display:grid;grid-template-columns:1.35fr 1fr .32fr .38fr;gap:8px;align-items:center}
.trust-bill-head{padding:9px 0 6px;font:800 5.4px/1 Inter,Arial,sans-serif;letter-spacing:.10em;color:rgba(9,10,11,.42);border-bottom:1px solid rgba(9,10,11,.10)}
.trust-bill-row{min-height:42px;border-bottom:1px solid rgba(9,10,11,.08);font-family:Inter,Arial,sans-serif}.trust-bill-row span{font-size:6.4px;color:rgba(9,10,11,.60)}.trust-bill-row span:first-child b{display:block;font-size:7.3px;color:#0b0d0f}.trust-bill-row span:first-child small{display:block;margin-top:2px;font-size:5.5px;color:rgba(9,10,11,.44)}.trust-bill-row strong{font-size:7.5px;text-align:right}
.trust-bill-note{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0 4px;font-family:Inter,Arial,sans-serif}.trust-bill-note b{font-size:6.2px}.trust-bill-note span{font-size:5.3px;color:rgba(9,10,11,.44)}
.trust-scope-wrap-detailed .trust-fixed-stamp{right:3%;bottom:8%;transform:rotate(-7deg)!important}
.trust-phone-notification{position:absolute;left:9px;right:9px;top:9px;z-index:30;display:grid;grid-template-columns:15px 1fr auto;align-items:center;gap:7px;padding:8px 9px;border-radius:11px;background:rgba(248,250,250,.96);border:1px solid rgba(9,10,11,.08);box-shadow:0 10px 24px rgba(7,9,11,.16);font-family:Inter,Arial,sans-serif;opacity:0;transform:translateY(-12px) scale(.97);pointer-events:none}
.trust-phone-notification i{font-style:normal;color:#d82032;font-size:9px}.trust-phone-notification b{display:block;font-size:5.8px;letter-spacing:.06em}.trust-phone-notification span{display:block;margin-top:2px;font-size:5.6px;color:rgba(9,10,11,.60)}.trust-phone-notification time{font-size:5.3px;color:rgba(9,10,11,.42)}
.trust-phone-notification.is-showing{animation:trustNotice 1.7s cubic-bezier(.16,.84,.2,1) forwards}@keyframes trustNotice{0%{opacity:0;transform:translateY(-12px) scale(.97)}12%,72%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-5px) scale(.985)}}
.trust-phone.is-vibrating{animation:trustPhoneBuzz .16s ease-out 1}@keyframes trustPhoneBuzz{0%,100%{transform:translateY(0) rotateY(0)}20%{transform:translateX(-.8px) rotateZ(-.06deg)}40%{transform:translateX(.8px) rotateZ(.06deg)}60%{transform:translateX(-.55px) rotateZ(-.04deg)}80%{transform:translateX(.4px) rotateZ(.03deg)}}
.trust-live-photo-real{background-size:cover!important;background-position:center!important}.trust-live-photo-real::before{display:none!important}
.trust-photo-tile.trust-photo-real::before{display:none!important}.trust-photo-tile.trust-photo-real img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82) contrast(1.02)}.trust-photo-tile.trust-photo-real span{z-index:2}
.trust-layer-missing{color:#d82032!important;background:rgba(216,32,50,.06)!important;border-color:rgba(216,32,50,.20)!important;text-decoration:line-through;text-decoration-thickness:2px}
.trust-file-brand img{display:block;width:140px;height:40px;object-fit:contain;object-position:left center}.trust-file-brand>span{font:700 7px/1 Inter,Arial,sans-serif;color:#228b55}
.trust-lock-seal-brand{display:grid!important;place-items:center!important;background:#fff!important;border:2px solid #0a0b0d!important;box-shadow:0 18px 38px rgba(8,10,12,.17)!important;overflow:hidden}
.trust-lock-seal-brand::before,.trust-lock-seal-brand::after{display:none!important}.trust-lock-seal-brand img{width:70%;height:70%;object-fit:contain;display:block}
.trust-aftercare-row{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);width:min(430px,70%);display:grid;grid-template-columns:repeat(2,1fr);gap:7px;opacity:0}.trust-chapter.is-active .trust-aftercare-row{animation:trustAftercare .55s ease 1.15s forwards}@keyframes trustAftercare{to{opacity:1;transform:translateX(-50%) translateY(-2px)}}.trust-aftercare-row span{padding:7px 8px;border-top:1px solid rgba(9,10,11,.13);font:650 6px/1.25 Inter,Arial,sans-serif;color:rgba(9,10,11,.52)}.trust-aftercare-row b{display:block;margin-bottom:3px;font:900 8px/1 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;color:#0a0b0d;letter-spacing:.04em}
.trust-warranty-callout{position:absolute;left:-8%;top:8%;z-index:6;width:158px;padding:13px 14px 12px;border:1.5px solid rgba(216,32,50,.72);border-radius:22px;background:rgba(255,255,255,.985);box-shadow:0 15px 34px rgba(8,10,12,.08),0 0 0 5px rgba(216,32,50,.035);opacity:0;transform:translateY(10px) scale(.96)}.trust-chapter.is-active .trust-warranty-callout{animation:trustWarrantyIn .55s cubic-bezier(.16,.84,.2,1) .72s forwards}@keyframes trustWarrantyIn{to{opacity:1;transform:none}}.trust-warranty-callout span{display:block;font:900 31px/.82 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;letter-spacing:-.025em;color:#d82032}.trust-warranty-callout b{display:block;margin-top:6px;font:900 13px/1 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#0a0b0d}.trust-warranty-callout small{display:block;margin-top:6px;font:650 6.2px/1.3 Inter,Arial,sans-serif;color:rgba(9,10,11,.52)}



/* 02 — estimate / written scope */
.trust-scope-wrap{position:relative;width:min(700px,100%);height:min(470px,54vh);display:grid;place-items:center}
.trust-scope-sheet{position:relative;width:78%;height:88%;padding:30px 34px;background:#fff;border:1px solid rgba(9,10,11,.10);box-shadow:0 30px 80px rgba(8,10,12,.11);transform:rotate(-1.4deg) translateY(12px);opacity:.1;transition:transform .72s cubic-bezier(.16,.84,.2,1),opacity .45s ease}
.trust-chapter.is-active .trust-scope-sheet{transform:rotate(-.35deg) translateY(0);opacity:1}
.trust-scope-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:18px;border-bottom:2px solid #111}.trust-scope-brand{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-weight:900;font-size:28px;letter-spacing:.08em}.trust-scope-no{font:700 8px/1.45 Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-align:right;color:rgba(9,10,11,.48)}
.trust-scope-row{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:16px 0;border-bottom:1px solid rgba(9,10,11,.10);font:650 10px/1.2 Inter,Arial,sans-serif}.trust-scope-row span:first-child{display:flex;align-items:center;gap:10px}.trust-scope-row span:first-child::before{content:"✓";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#eef7f1;color:#228b55;font-size:9px}.trust-scope-row b{font-size:9px;letter-spacing:.04em;color:rgba(9,10,11,.62)}
.trust-scope-total{display:flex;justify-content:space-between;align-items:end;padding-top:20px}.trust-scope-total small{font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(9,10,11,.46)}.trust-scope-total strong{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:36px;line-height:.8}
.trust-fixed-stamp{position:absolute;right:-5%;bottom:10%;width:112px;height:112px;border:2px solid #111;border-radius:50%;display:grid;place-items:center;text-align:center;transform:rotate(-9deg) scale(.4);opacity:0;background:#fff;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:19px;font-weight:900;line-height:.88;text-transform:uppercase;letter-spacing:.03em}.trust-fixed-stamp::after{content:"";position:absolute;inset:6px;border:1px dashed #111;border-radius:50%}.trust-chapter.is-active .trust-fixed-stamp{animation:trustStamp .52s cubic-bezier(.2,.9,.25,1.25) 1.0s forwards}@keyframes trustStamp{to{opacity:1;transform:rotate(-9deg) scale(1)}}

/* 03 — live project visibility / interactive phone */
.trust-live-wrap{position:relative;width:min(700px,100%);height:min(500px,56vh);display:grid;place-items:center}
.trust-phone{position:relative;width:252px;height:480px;border-radius:38px;background:#111315;padding:8px;box-shadow:0 32px 80px rgba(7,9,11,.22);transform:translateY(22px) rotateY(-8deg);opacity:.15;transition:transform .72s cubic-bezier(.16,.84,.2,1),opacity .45s ease}.trust-chapter.is-active .trust-phone{transform:translateY(0) rotateY(0);opacity:1}
.trust-phone-screen{position:relative;height:100%;border-radius:31px;background:#fff;overflow:hidden;padding:27px 14px 14px}.trust-phone-notch{position:absolute;left:50%;top:13px;transform:translateX(-50%);width:74px;height:18px;border-radius:20px;background:#111315;z-index:8}
.trust-live-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 3px}.trust-live-head b{font:850 9.5px/1 Inter,Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase}.trust-live-dot{position:relative;width:8px;height:8px;border-radius:50%;background:#228b55}.trust-live-dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;background:rgba(34,139,85,.10);transform:scale(.72);opacity:.8;animation:trustLivePulse 1.8s ease-in-out infinite;will-change:transform,opacity}@keyframes trustLivePulse{50%{transform:scale(1.25);opacity:.12}}
.trust-phone-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:11px;padding:3px;border-radius:10px;background:#f0f2f3}
.trust-phone-tab{height:28px;border:0;border-radius:8px;background:transparent;font:800 6.3px/1 Inter,Arial,sans-serif;letter-spacing:.055em;text-transform:uppercase;color:rgba(9,10,11,.48);transition:background .22s ease,color .22s ease,box-shadow .22s ease;cursor:pointer}
.trust-phone-tab.is-active{background:#fff;color:#111315;box-shadow:0 2px 7px rgba(7,9,11,.08)}
.trust-phone-viewport{position:relative;height:350px;overflow:hidden}
.trust-phone-panel{position:absolute;inset:0;opacity:0;transform:translateX(16px);pointer-events:none;transition:opacity .28s ease,transform .34s cubic-bezier(.16,.84,.2,1)}
.trust-phone-panel.is-active{opacity:1;transform:none;pointer-events:auto}
.trust-live-photo{height:102px;border-radius:12px;background:linear-gradient(135deg,#e9ebed,#fafafa 58%,#dfe2e5);position:relative;overflow:hidden;margin-bottom:11px}.trust-live-photo::before{content:"";position:absolute;left:17%;right:17%;bottom:20%;height:46%;background:#202328;clip-path:polygon(0 48%,50% 0,100% 48%,100% 100%,0 100%);opacity:.88}.trust-live-photo::after{content:"TODAY • 10:42 AM";position:absolute;left:8px;bottom:7px;padding:4px 6px;border-radius:99px;background:rgba(255,255,255,.86);font:800 5.5px/1 Inter,Arial,sans-serif;letter-spacing:.07em}
.trust-timeline{display:grid;gap:0}.trust-event{position:relative;display:grid;grid-template-columns:18px 1fr auto;gap:8px;align-items:start;padding:8px 0;font-family:Inter,Arial,sans-serif}.trust-event:not(:last-child)::after{content:"";position:absolute;left:8px;top:25px;bottom:-3px;width:1px;background:#dfe2e5}.trust-event i{position:relative;z-index:1;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#edf7f1;color:#228b55;font-style:normal;font-size:8px}.trust-event strong{font-size:8px;line-height:1.25}.trust-event small{display:block;margin-top:2px;font-size:6.2px;line-height:1.3;color:rgba(9,10,11,.48)}.trust-event time{font-size:6px;color:rgba(9,10,11,.42)}
.trust-photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.trust-photo-tile{position:relative;height:94px;border-radius:11px;overflow:hidden;background:linear-gradient(145deg,#e6e8ea,#fafafa);border:1px solid rgba(9,10,11,.07)}.trust-photo-tile::before{content:"";position:absolute;left:18%;right:18%;bottom:21%;height:48%;background:#25292e;clip-path:polygon(0 52%,50% 0,100% 52%,100% 100%,0 100%);opacity:.80}.trust-photo-tile:nth-child(2)::before{transform:scale(.82) translateY(7px)}.trust-photo-tile:nth-child(3)::before{clip-path:polygon(0 62%,27% 32%,49% 52%,72% 13%,100% 50%,100% 100%,0 100%)}.trust-photo-tile:nth-child(4)::before{clip-path:polygon(0 40%,38% 40%,38% 15%,64% 15%,64% 58%,100% 58%,100% 100%,0 100%)}.trust-photo-tile span{position:absolute;left:7px;bottom:7px;padding:4px 5px;border-radius:5px;background:rgba(255,255,255,.90);font:800 5.6px/1 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.06em}
.trust-doc-list{display:grid;gap:8px}.trust-phone-doc{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid rgba(9,10,11,.08);border-radius:10px;background:#fafbfb;font-family:Inter,Arial,sans-serif}.trust-phone-doc i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#edf7f1;color:#228b55;font-style:normal;font-size:11px}.trust-phone-doc b{font-size:7.5px}.trust-phone-doc small{display:block;margin-top:3px;font-size:5.8px;color:rgba(9,10,11,.46)}.trust-phone-doc em{font-style:normal;font-size:8px;color:#228b55}
.trust-phone-tap{position:absolute;left:50%;top:77px;width:25px;height:25px;border:1.5px solid rgba(34,139,85,.75);border-radius:50%;z-index:12;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.55);box-shadow:0 0 0 0 rgba(34,139,85,.16)}
.trust-phone.is-demoing .trust-phone-tap{animation:trustTapPulse .52s ease}
@keyframes trustTapPulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.55);box-shadow:0 0 0 0 rgba(34,139,85,.18)}35%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.45);box-shadow:0 0 0 10px rgba(34,139,85,0)}}
.trust-live-card{position:absolute;width:185px;padding:15px 16px;background:#fff;border:1px solid rgba(9,10,11,.10);box-shadow:0 18px 40px rgba(8,10,12,.10);font-family:Inter,Arial,sans-serif;opacity:0;transform:translateY(12px)}.trust-live-card b{display:block;font-size:9px}.trust-live-card span{display:block;margin-top:5px;font-size:7px;color:rgba(9,10,11,.52)}.trust-live-card.c1{left:4%;top:21%}.trust-live-card.c2{right:2%;bottom:20%}.trust-chapter.is-active .trust-live-card{animation:trustFloatCard .55s ease forwards}.trust-chapter.is-active .trust-live-card.c1{animation-delay:.65s}.trust-chapter.is-active .trust-live-card.c2{animation-delay:.9s}@keyframes trustFloatCard{to{opacity:1;transform:none}}

/* 04 — build to spec */
.trust-spec-wrap{position:relative;width:min(720px,100%);height:min(480px,55vh);display:grid;grid-template-columns:1fr .78fr;gap:20px;align-items:center}
.trust-spec-stack,.trust-shortcut-stack{position:relative;padding:22px;background:#fff;border:1px solid rgba(9,10,11,.10);box-shadow:0 22px 55px rgba(8,10,12,.075)}
.trust-spec-stack{transform:translateY(14px);opacity:.2;transition:.65s cubic-bezier(.16,.84,.2,1)}.trust-chapter.is-active .trust-spec-stack{transform:none;opacity:1}
.trust-spec-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font:850 8px/1 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.trust-spec-label span{display:flex;align-items:center;gap:7px}.trust-spec-label span::before{content:"";width:7px;height:7px;border-radius:50%;background:#228b55}.trust-spec-label b{color:#228b55}
.trust-layer{position:relative;height:48px;margin-top:8px;border-radius:4px;display:flex;align-items:center;padding:0 14px;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;transform-origin:50% 100%;opacity:0;transform:translateY(-12px)}.trust-layer:nth-child(2){background:#222831;color:#fff}.trust-layer:nth-child(3){background:#c5c9ce;color:#1c2025}.trust-layer:nth-child(4){background:#eee7db;color:#26211a}.trust-layer:nth-child(5){background:#d8b56b;color:#282015}.trust-chapter.is-active .trust-layer{animation:trustLayerDrop .42s cubic-bezier(.16,.84,.2,1) forwards}.trust-chapter.is-active .trust-layer:nth-child(2){animation-delay:.25s}.trust-chapter.is-active .trust-layer:nth-child(3){animation-delay:.40s}.trust-chapter.is-active .trust-layer:nth-child(4){animation-delay:.55s}.trust-chapter.is-active .trust-layer:nth-child(5){animation-delay:.70s}@keyframes trustLayerDrop{to{opacity:1;transform:none}}
.trust-shortcut-stack{opacity:.72;transform:scale(.92);filter:grayscale(.35)}.trust-shortcut-stack .trust-spec-label span::before{background:#d82032}.trust-shortcut-stack .trust-spec-label b{color:#d82032}.trust-shortcut-stack .trust-layer{opacity:.42!important;transform:none!important;animation:none!important}.trust-shortcut-stack .trust-layer:nth-child(3){display:none}.trust-shortcut-strike{position:absolute;left:12%;right:12%;top:50%;height:3px;background:#d82032;transform:rotate(-8deg) scaleX(0);transform-origin:0 50%;box-shadow:0 0 10px rgba(216,32,50,.18)}.trust-chapter.is-active .trust-shortcut-strike{animation:trustStrike .42s ease .98s forwards}@keyframes trustStrike{to{transform:rotate(-8deg) scaleX(1)}}
.trust-spec-link{position:absolute;left:0;bottom:-42px;display:flex;align-items:center;gap:9px;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:rgba(9,10,11,.58)}.trust-spec-link::before{content:"↗";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid rgba(9,10,11,.14);color:#111}

/* 05 — project file / proof */
.trust-file-wrap{position:relative;width:min(720px,100%);height:min(490px,56vh);display:grid;place-items:center}
.trust-file{position:relative;width:69%;height:74%;border-radius:8px 8px 11px 11px;background:#111315;box-shadow:0 30px 80px rgba(6,8,10,.20);transform:rotateX(9deg) translateY(18px);opacity:.2;transition:.7s cubic-bezier(.16,.84,.2,1);overflow:visible}.trust-chapter.is-active .trust-file{transform:rotateX(0) translateY(0);opacity:1}
.trust-file-tab{position:absolute;left:0;top:-28px;width:44%;height:32px;border-radius:8px 12px 0 0;background:#111315;color:#fff;display:flex;align-items:center;padding-left:18px;font:850 8px/1 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.trust-file-body{position:absolute;inset:18px;background:#fff;border-radius:6px;padding:22px}.trust-file-brand{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid rgba(9,10,11,.12)}.trust-file-brand b{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:25px;letter-spacing:.08em}.trust-file-brand span{font:800 7px/1 Inter,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#228b55}
.trust-docs{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.trust-doc{height:56px;border:1px solid rgba(9,10,11,.10);background:#f7f8f8;padding:10px 11px;display:flex;align-items:center;gap:9px;opacity:0;transform:scale(.94)}.trust-doc::before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#edf7f1;color:#228b55;font-size:8px}.trust-doc b{font:800 7px/1.25 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}.trust-chapter.is-active .trust-doc{animation:trustDocIn .4s ease forwards}.trust-chapter.is-active .trust-doc:nth-child(1){animation-delay:.28s}.trust-chapter.is-active .trust-doc:nth-child(2){animation-delay:.42s}.trust-chapter.is-active .trust-doc:nth-child(3){animation-delay:.56s}.trust-chapter.is-active .trust-doc:nth-child(4){animation-delay:.70s}.trust-chapter.is-active .trust-doc:nth-child(5){animation-delay:.84s}.trust-chapter.is-active .trust-doc:nth-child(6){animation-delay:.98s}@keyframes trustDocIn{to{opacity:1;transform:none}}
.trust-lock-seal{position:absolute;right:-54px;bottom:-36px;width:118px;height:118px;border-radius:50%;background:#fff;border:1px solid rgba(9,10,11,.12);box-shadow:0 18px 42px rgba(7,9,11,.16);display:grid;place-items:center;transform:scale(.4) rotate(15deg);opacity:0}.trust-lock-seal::before{content:"";position:absolute;top:23px;width:37px;height:32px;border:6px solid #111;border-bottom:0;border-radius:20px 20px 0 0}.trust-lock-seal::after{content:"LOCKED";position:absolute;bottom:24px;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:19px;font-weight:900;letter-spacing:.08em}.trust-chapter.is-active .trust-lock-seal{animation:trustSeal .55s cubic-bezier(.2,.9,.25,1.25) 1.18s forwards}@keyframes trustSeal{to{opacity:1;transform:scale(1) rotate(-4deg)}}
.trust-final-line{position:absolute;left:50%;bottom:-62px;transform:translateX(-50%);font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-weight:900;font-size:clamp(22px,2vw,32px);letter-spacing:-.015em;text-transform:uppercase;white-space:nowrap}.trust-final-line span{color:#228b55}

/* Stage 05 gets its own breathing room: warranty left, file center, aftercare below. */
@media(min-width:761px){
  .trust-chapter[data-step="5"] .trust-visual{height:min(56vh,520px);max-height:520px;overflow:visible}
  .trust-chapter[data-step="5"] .trust-file-wrap{height:min(490px,55vh);overflow:visible}
  .trust-chapter[data-step="5"] .trust-file{width:74%;height:88%}
  .trust-chapter[data-step="5"] .trust-file-body{inset:14px;padding:18px 20px 20px}
  .trust-chapter[data-step="5"] .trust-file-brand{padding-bottom:12px}
  .trust-chapter[data-step="5"] .trust-docs{gap:8px;margin-top:12px}
  .trust-chapter[data-step="5"] .trust-doc{height:52px;padding:9px 11px}
  .trust-chapter[data-step="5"] .trust-warranty-callout{left:-8%;top:8%;width:158px}
  .trust-chapter[data-step="5"] .trust-lock-seal{right:-56px;bottom:10px;width:106px;height:106px}
  .trust-chapter[data-step="5"] .trust-lock-seal::before{top:20px;width:34px;height:29px;border-width:5px}
  .trust-chapter[data-step="5"] .trust-lock-seal::after{bottom:22px;font-size:17px}
  .trust-chapter[data-step="5"] .trust-aftercare-row{display:none}
  .trust-chapter[data-step="5"] .trust-final-line{bottom:-40px;font-size:clamp(20px,1.75vw,28px)}
}

.trust-progress{position:absolute;left:clamp(28px,4vw,72px);right:clamp(28px,4vw,72px);bottom:72px;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;pointer-events:none;padding:13px 0 8px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.97) 28%,#fff 64%)}
.trust-progress.is-unlocked{pointer-events:auto}
.trust-progress-step{appearance:none;-webkit-appearance:none;position:relative;min-width:0;padding:13px 30px 5px 0;border:0;border-top:1px solid rgba(9,10,11,.13);background:transparent;text-align:left;font:800 7px/1 Inter,Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase;color:rgba(9,10,11,.32);transition:color .3s ease,border-color .3s ease,transform .2s ease;cursor:default}
.trust-progress-step::before{content:"";position:absolute;left:0;top:-1px;width:0;height:2px;background:#111;transition:width .48s cubic-bezier(.16,.84,.2,1),background .28s ease}
.trust-progress-step::after{content:"✓";position:absolute;right:3px;top:7px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:var(--trust-green);color:#fff;font:900 12px/1 Inter,Arial,sans-serif;box-shadow:0 4px 12px rgba(34,139,85,.18);opacity:0;transform:scale(.55);transition:opacity .28s ease,transform .34s cubic-bezier(.2,.9,.25,1.2)}
.trust-progress-step.is-current{color:#111;border-color:rgba(9,10,11,.28)}.trust-progress-step.is-current::before{width:100%}
.trust-progress-step.is-past{color:rgba(9,10,11,.56);border-color:rgba(9,10,11,.25)}.trust-progress-step.is-past::before{width:100%;height:1px;background:rgba(9,10,11,.42)}
.trust-progress-step.is-complete::after{opacity:1;transform:scale(1)}
.trust-progress-step.is-complete:not(.is-current)::before{width:100%;height:2px;background:var(--trust-green)}
.trust-progress.is-unlocked .trust-progress-step:not(:disabled){cursor:pointer}
@media(hover:hover) and (pointer:fine){.trust-progress.is-unlocked .trust-progress-step:not(:disabled):hover{color:#111;transform:translateY(-2px)}}
.trust-progress-step:focus-visible{outline:2px solid rgba(34,139,85,.38);outline-offset:4px}
.trust-progress-step:disabled{opacity:1}
.trust-exit-hint{position:absolute;right:clamp(28px,4vw,72px);bottom:clamp(98px,11vh,122px);z-index:12;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(9,10,11,.42);opacity:0;transform:translateY(6px);transition:.35s ease;pointer-events:none}.trust-reveal-section.is-final-ready .trust-exit-hint{opacity:1;transform:none}

@media(max-width:1080px){
  .trust-chapter{grid-template-columns:minmax(340px,.94fr) minmax(400px,1.06fr);gap:28px;padding-left:34px;padding-right:34px}.trust-step-title{font-size:clamp(46px,5.4vw,66px)}.trust-visual{height:min(54vh,510px)}.trust-live-card.c1{left:-3%}.trust-live-card.c2{right:-3%}
}
@media(max-height:820px) and (min-width:761px){
  .trust-journey-top{top:92px}
  .trust-chapter{padding:108px clamp(30px,4.2vw,70px) 154px;gap:clamp(20px,2.9vw,46px);grid-template-columns:minmax(390px,.96fr) minmax(430px,1.04fr)}
  .trust-copy{max-width:700px}.trust-step-label{margin-bottom:8px}.trust-step-title{font-size:clamp(38px,3.8vw,55px);line-height:.89}.trust-step-body{margin-top:10px;max-width:64ch;font-size:11.7px;line-height:1.36}
  .trust-keyline{margin-top:11px;max-width:650px;padding-top:7px;padding-bottom:7px;font-size:clamp(14px,1.02vw,18px)}.trust-proof-list{margin-top:9px;max-width:660px;gap:5px}.trust-proof{min-height:24px;padding:0 8px;font-size:6.7px}
  .trust-visual{height:min(49vh,405px);max-height:405px}.trust-home-map{height:min(390px,48vh)}.trust-scope-wrap,.trust-live-wrap,.trust-spec-wrap,.trust-file-wrap{height:min(390px,48vh)}
  .trust-scope-sheet{height:92%;padding:21px 25px}.trust-scope-row{padding:11px 0}.trust-scope-total{padding-top:13px}
  .trust-phone{width:207px;height:390px;border-radius:32px}.trust-phone-screen{border-radius:25px;padding:25px 12px 10px}.trust-phone-notch{width:62px;height:15px;top:11px}.trust-phone-viewport{height:278px}.trust-live-photo{height:76px}.trust-event{padding:5px 0}.trust-phone-tab{height:24px}.trust-photo-tile{height:72px}.trust-phone-doc{padding:7px}
  .trust-live-card{width:150px;padding:11px}.trust-live-card.c1{left:0}.trust-live-card.c2{right:0}.trust-spec-stack,.trust-shortcut-stack{padding:15px}.trust-layer{height:38px;margin-top:6px}.trust-spec-link{bottom:-29px}
  .trust-file{height:72%}.trust-file-body{inset:14px;padding:15px}.trust-doc{height:43px;padding:7px}.trust-final-line{bottom:-34px;font-size:22px}.trust-progress{bottom:62px;padding-top:10px}.trust-exit-hint{bottom:112px}
  .trust-chapter[data-step="5"] .trust-visual{height:min(47vh,370px);max-height:370px}
  .trust-chapter[data-step="5"] .trust-file-wrap{height:min(390px,50vh)}
  .trust-chapter[data-step="5"] .trust-file{width:72%;height:86%}
  .trust-chapter[data-step="5"] .trust-warranty-callout{left:-5%;top:5%;width:138px;padding:10px 11px;border-radius:18px}
  .trust-chapter[data-step="5"] .trust-warranty-callout span{font-size:26px}.trust-chapter[data-step="5"] .trust-warranty-callout b{font-size:11px}.trust-chapter[data-step="5"] .trust-warranty-callout small{font-size:5.6px}
  .trust-chapter[data-step="5"] .trust-lock-seal{right:-46px;bottom:8px;width:88px;height:88px}
  .trust-chapter[data-step="5"] .trust-lock-seal::before{top:16px;width:28px;height:24px;border-width:4px}.trust-chapter[data-step="5"] .trust-lock-seal::after{bottom:18px;font-size:14px}
  .trust-chapter[data-step="5"] .trust-aftercare-row{display:none}
  .trust-chapter[data-step="5"] .trust-file-body{inset:11px;padding:13px 14px 15px}
  .trust-chapter[data-step="5"] .trust-doc{height:36px;padding:5px 7px}
  .trust-chapter[data-step="5"] .trust-final-line{bottom:-30px;font-size:19px}
}
@media(max-width:760px){
  .trust-reveal-section{min-height:680px}.trust-intro{padding:96px 22px 58px}.trust-reveal-headline{width:min(94vw,680px)}.trust-reveal-headline .trust-line:nth-child(1){font-size:clamp(31px,9vw,46px)}.trust-reveal-headline .trust-line:nth-child(2){font-size:clamp(54px,15vw,82px)}.trust-reveal-headline .trust-line:nth-child(3){font-size:clamp(25px,7.6vw,40px)}
  .trust-journey-top{top:88px;left:18px;right:18px}.trust-journey-kicker{font-size:8px}.trust-chapter{padding:136px 18px 82px;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:18px;align-items:start}.trust-copy{max-width:none}.trust-step-label{margin-bottom:9px}.trust-step-title{font-size:clamp(38px,11vw,58px);max-width:12ch}.trust-step-body{margin-top:10px;font-size:12px;line-height:1.4;max-width:48ch}.trust-keyline{margin-top:9px;padding:6px 9px 6px 11px;font-size:13px;max-width:46ch}.trust-proof-list{margin-top:11px;gap:5px}.trust-proof{min-height:25px;padding:0 8px;font-size:6.7px}.trust-visual{height:300px;align-self:end}.trust-visual::before{font-size:120px}.trust-home-map{height:270px;padding-top:25px}.trust-home-map-heading strong{font-size:16px}.trust-home-map-heading span{font-size:5px;max-width:52%}.trust-home-map-frame{inset:4% 0 8%}.trust-inspect-point span{font-size:5.3px;padding:5px 6px}.trust-scope-wrap,.trust-live-wrap,.trust-spec-wrap,.trust-file-wrap{height:300px}.trust-scope-sheet{height:94%;width:76%;padding:18px 20px}.trust-scope-sheet-detailed{width:88%;padding:12px 14px!important}.trust-scope-logo{width:96px;height:28px}.trust-customer-grid{gap:5px 10px;padding:6px 0}.trust-bill-row{min-height:27px}.trust-bill-row span:first-child small,.trust-bill-note span{display:none}.trust-bill-head,.trust-bill-row{grid-template-columns:1.2fr .9fr .25fr .3fr}.trust-scope-row{padding:9px 0}.trust-phone{width:158px;height:300px;border-radius:25px}.trust-phone-notification{left:6px;right:6px;top:6px;padding:5px 6px;grid-template-columns:11px 1fr auto}.trust-phone-screen{border-radius:20px;padding:21px 8px 8px}.trust-phone-notch{width:48px;height:12px;top:9px}.trust-phone-tabs{margin-bottom:7px}.trust-phone-tab{height:20px;font-size:4.8px}.trust-phone-viewport{height:215px}.trust-live-photo{height:52px}.trust-event{padding:4px 0}.trust-photo-tile{height:53px}.trust-phone-doc{padding:5px;grid-template-columns:20px 1fr auto}.trust-phone-doc i{width:20px;height:20px}.trust-live-card{width:124px;padding:9px}.trust-spec-wrap{gap:9px}.trust-spec-stack,.trust-shortcut-stack{padding:12px}.trust-layer{height:30px}.trust-spec-link{display:none}.trust-file{width:72%;height:70%}.trust-warranty-callout{left:0;top:0;width:112px;padding:8px 9px;border-radius:15px}.trust-warranty-callout span{font-size:22px}.trust-warranty-callout b{font-size:9px}.trust-warranty-callout small{display:none}.trust-aftercare-row{display:none}.trust-file-body{inset:10px;padding:12px}.trust-doc{height:35px;padding:5px}.trust-lock-seal{width:78px;height:78px;right:-36px;bottom:-24px}.trust-lock-seal::before{top:14px;width:25px;height:22px;border-width:4px}.trust-lock-seal::after{bottom:14px;font-size:12px}.trust-final-line{bottom:-42px;font-size:17px}.trust-progress{left:18px;right:18px;bottom:42px;padding-top:10px}.trust-progress-step{font-size:0;padding:8px 22px 4px 0}.trust-progress-step::after{width:18px;height:18px;top:4px;font-size:10px}.trust-exit-hint{right:18px;bottom:68px;font-size:6.5px}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .page-two-map.is-exiting-down .page-two-exit-curtain{animation:none;transform:scaleX(1)}
  .trust-reveal-word{opacity:1!important;filter:none!important;transform:none!important}.trust-intro-prompt::before,.trust-home-scan,.trust-live-dot,.trust-phone-tap{animation:none!important}.trust-chapter,.trust-intro,.trust-journey{transition:none!important}.trust-inspect-point,.trust-scope-sheet,.trust-fixed-stamp,.trust-phone,.trust-live-card,.trust-phone-panel,.trust-spec-stack,.trust-layer,.trust-shortcut-strike,.trust-file,.trust-doc,.trust-lock-seal{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
}


/* Homepage hero v48 — left-weighted cinematic house + authoritative service navigator. Header intentionally untouched. */
.home-hero{
  position:relative;
  width:100%;
  height:100svh;
  min-height:720px;
  overflow:hidden;
  background:#fff;
  isolation:isolate;
}
.home-hero-stage{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#fff;
}
.home-hero-ambient,
.home-hero-cinematic-wash,
.home-weather-atmos,
.home-weather-clouds,
.home-weather-lightning,
.home-weather-canvas,
.home-weather-sun,
.home-weather-wind,
.home-weather-grain,
.home-weather-wet-sheen,
.home-hero-floor,
.home-hero-media,
.home-service-menu{position:absolute}
.home-hero-ambient{
  inset:0;
  z-index:0;
  pointer-events:none;
  background:#fff;
}
.home-hero-cinematic-wash{
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(ellipse 70% 62% at 28% 48%,rgba(255,255,255,.15),rgba(255,255,255,0) 70%),
    linear-gradient(90deg,rgba(255,255,255,0),rgba(245,245,245,.035));
}
.home-hero-floor{
  z-index:3;
  left:25%;
  top:79%;
  width:min(55vw,980px);
  height:9%;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.105) 0%,rgba(0,0,0,.036) 44%,rgba(0,0,0,0) 75%);
  filter:blur(18px);
  opacity:.48;
  pointer-events:none;
}
.home-hero-media{
  z-index:4;
  left:-6.4vw;
  top:51%;
  width:min(63vw,1215px);
  aspect-ratio:3/2;
  transform:translateY(-47%) scale(.994);
  transform-origin:42% 55%;
  opacity:0;
  pointer-events:none;
  transition:opacity .9s cubic-bezier(.2,.72,.2,1),transform 1.35s cubic-bezier(.16,.82,.24,1);
}
.home-hero.is-ready .home-hero-media{opacity:1;transform:translateY(-47%) scale(1)}
.home-hero-house{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  user-select:none;
  -webkit-user-drag:none;
  opacity:0;
  transition:opacity .32s ease;
  filter:drop-shadow(0 28px 38px rgba(0,0,0,.075));
}
.home-hero-house.is-active{opacity:1}
.home-yard-sign{position:absolute;right:-0.35%;bottom:8.8%;width:clamp(94px,10.4vw,150px);aspect-ratio:1536/1024;z-index:4;pointer-events:none;transform:rotate(-0.8deg);transform-origin:50% 100%;filter:drop-shadow(0 10px 12px rgba(0,0,0,.14)) drop-shadow(0 3px 5px rgba(0,0,0,.08))}
.home-yard-sign img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
@media(max-width:760px){.home-yard-sign{right:-0.15%;bottom:7.2%;width:clamp(78px,22vw,118px)}}
.home-emergency-glow{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  pointer-events:none;
  mix-blend-mode:screen;
  transition:opacity .24s ease;
  animation:homeEmergencyPulse 1.55s ease-in-out infinite;
}
.home-emergency-glow.is-active{opacity:1}
@keyframes homeEmergencyPulse{
  0%,100%{filter:drop-shadow(0 0 9px rgba(255,35,51,.48)) drop-shadow(0 0 24px rgba(255,26,43,.28));opacity:.82}
  50%{filter:drop-shadow(0 0 20px rgba(255,65,76,.82)) drop-shadow(0 0 48px rgba(255,26,43,.48));opacity:1}
}

/* Weather is layered ABOVE the house/background so there can never be a separate white image rectangle. */
.home-weather-atmos{
  inset:0;
  z-index:5;
  pointer-events:none;
  opacity:0;
  background:rgba(255,255,255,0);
  transition:opacity 1.6s ease,background 1.6s ease,backdrop-filter 1.6s ease;
}
.home-weather-clouds{
  left:0;
  right:0;
  top:0;
  bottom:auto;
  height:34%;
  z-index:6;
  pointer-events:none;
  opacity:.82;
  overflow:hidden;
  filter:none;
  mix-blend-mode:normal;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 4%,#000 96%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 4%,#000 96%,transparent 100%);
  transition:opacity 1.55s ease,filter 1.55s ease;
}
.home-weather-clouds::before,.home-weather-clouds::after{content:none!important;display:none!important}
.home-cloud{
  position:absolute;
  display:block;
  width:var(--cw,14vw);
  opacity:var(--co,.40);
  transform-origin:50% 62%;
  will-change:transform,opacity;
  animation:none!important;
  filter:blur(var(--cb,.38px));
}
.home-cloud img{
  display:block;
  width:100%;
  height:auto;
  opacity:.86;
  user-select:none;
  -webkit-user-drag:none;
  filter:grayscale(.72) contrast(.84) brightness(.96) saturate(.20) blur(.20px);
  transform-origin:50% 64%;
  animation:none!important;
}
/* Six unique, feathered cloud formations at different atmospheric depths. */
.home-cloud.c1{left:3%;top:4%;--cw:15.2vw;--co:.44;--cb:.28px;--cs:.98}
.home-cloud.c2{left:26%;top:19%;--cw:12.5vw;--co:.37;--cb:.52px;--cs:.90}
.home-cloud.c3{left:53%;top:7%;--cw:14.0vw;--co:.42;--cb:.34px;--cs:.94}
.home-cloud.c4{left:76%;top:24%;--cw:10.8vw;--co:.34;--cb:.68px;--cs:.84}
.home-cloud.c5{left:40%;top:42%;--cw:9.8vw;--co:.30;--cb:.82px;--cs:.80}
.home-cloud.c6{left:12%;top:38%;--cw:11.4vw;--co:.36;--cb:.58px;--cs:.87}
.home-cloud.storm-extra{display:none!important}
.home-cloud.c7{left:17%;top:12%;--cw:19.5vw;--co:.50;--cb:.46px;--cs:.96}
.home-cloud.c8{left:49%;top:28%;--cw:17.2vw;--co:.46;--cb:.60px;--cs:.92}
.home-cloud.c9{left:70%;top:6%;--cw:21.0vw;--co:.48;--cb:.52px;--cs:.95}
@media(max-width:760px){
  .home-weather-clouds{height:30%}
  .home-cloud.c1{left:1%;--cw:27vw}.home-cloud.c2{left:34%;--cw:22vw}.home-cloud.c3{left:61%;--cw:24vw}.home-cloud.c4{left:72%;--cw:19vw}.home-cloud.c5{left:42%;--cw:18vw}.home-cloud.c6{left:10%;--cw:20vw}
  .home-cloud.c7{left:8%;--cw:32vw}.home-cloud.c8{left:42%;--cw:29vw}.home-cloud.c9{left:63%;--cw:34vw}
}

.home-weather-sun{
  z-index:6;
  pointer-events:none;
  top:4%;
  right:8%;
  width:min(44vw,700px);
  aspect-ratio:1;
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(255,250,229,.98) 0%,rgba(255,244,196,.65) 17%,rgba(255,226,145,.26) 33%,rgba(255,255,255,0) 67%);
  filter:blur(3px);
  opacity:.72;
  transform:scale(.98);
  transition:opacity 1.45s ease,transform 1.45s ease,filter 1.45s ease;
}
.home-weather-wind{
  inset:-14% -12%;
  z-index:7;
  pointer-events:none;
  opacity:0;
  background:
    linear-gradient(110deg,transparent 9%,rgba(170,181,190,.11) 19%,transparent 25%),
    linear-gradient(110deg,transparent 37%,rgba(170,181,190,.14) 49%,transparent 56%),
    linear-gradient(110deg,transparent 67%,rgba(170,181,190,.10) 76%,transparent 82%);
  background-size:460px 100%,620px 100%,780px 100%;
  filter:blur(.6px);
  animation:homeWindSweep 3.8s linear infinite;
  transition:opacity 1.1s ease;
}
@keyframes homeWindSweep{from{background-position:-520px 0,-720px 0,-900px 0}to{background-position:calc(100% + 520px) 0,calc(100% + 720px) 0,calc(100% + 900px) 0}}
.home-weather-wet-sheen{
  inset:0;
  z-index:8;
  pointer-events:none;
  opacity:0;
  background:
    linear-gradient(103deg,transparent 0%,rgba(255,255,255,.08) 23%,rgba(255,255,255,.24) 28%,rgba(255,255,255,.06) 33%,transparent 50%),
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 46%);
  background-size:220% 100%,100% 100%;
  mix-blend-mode:screen;
  transition:opacity 1.1s ease;
  animation:homeWetSweep 4.8s linear infinite;
}
@keyframes homeWetSweep{from{background-position:160% 0,0 0}to{background-position:-80% 0,0 0}}
.home-weather-canvas{
  inset:0;
  z-index:9;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:1;
}
.home-weather-lightning{
  inset:0;
  z-index:10;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 72% 14%,rgba(255,255,255,.98) 0%,rgba(236,245,255,.42) 14%,rgba(255,255,255,0) 40%),
    linear-gradient(180deg,rgba(244,249,255,.78),rgba(255,255,255,.08) 44%,rgba(255,255,255,0));
  mix-blend-mode:screen;
}
.home-weather-grain{
  inset:0;
  z-index:10;
  pointer-events:none;
  opacity:.10;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
}

/* Menu is part of the composition — no separate rounded white card/panel. */
.home-service-menu{
  z-index:12;
  right:clamp(30px,4.1vw,80px);
  top:51%;
  width:min(34vw,570px);
  transform:translateY(-47%);
  display:flex;
  flex-direction:column;
  color:#080808;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.home-service-link{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 26px;
  column-gap:14px;
  align-items:center;
  min-height:80px;
  padding:15px 2px 15px 0;
  border-top:1px solid rgba(8,8,8,.16);
  color:#080808;
  overflow:visible;
  isolation:isolate;
  transition:transform .34s cubic-bezier(.16,.82,.24,1),border-color .28s ease,color .28s ease;
}
.home-service-link:last-child{border-bottom:1px solid rgba(8,8,8,.16)}
.home-service-link::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-18px;
  right:-14px;
  top:4px;
  bottom:4px;
  background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.80) 48%,rgba(255,255,255,.06) 100%);
  box-shadow:0 12px 34px rgba(0,0,0,.045),inset 0 1px 0 rgba(255,255,255,.98);
  opacity:0;
  transform:translateX(-8px);
  transition:opacity .3s ease,transform .36s cubic-bezier(.16,.82,.24,1);
}
.home-service-link::after{
  content:"";
  position:absolute;
  left:-18px;
  top:50%;
  width:2px;
  height:42px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 1px rgba(8,8,8,.05),0 0 20px rgba(255,255,255,.95);
  opacity:0;
  transform:translateY(-50%) scaleY(.25);
  transition:opacity .28s ease,transform .34s cubic-bezier(.16,.82,.24,1);
}
.home-service-copy{min-width:0;transition:transform .34s cubic-bezier(.16,.82,.24,1)}
.home-service-title{
  display:block;
  font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  font-size:clamp(20px,1.55vw,29px);
  font-weight:800;
  line-height:.98;
  letter-spacing:.016em;
  text-transform:uppercase;
  text-wrap:balance;
}
.home-service-meta{
  display:block;
  margin-top:7px;
  font:700 8px/1.35 "Courier New",monospace;
  letter-spacing:.115em;
  text-transform:uppercase;
  color:rgba(8,8,8,.50);
}
.home-service-arrow{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  font:700 14px/1 Arial,sans-serif;
  color:#080808;
  background:rgba(255,255,255,.78);
  box-shadow:inset 0 0 0 1px rgba(8,8,8,.11);
  transform:translateX(-4px);
  transition:transform .34s cubic-bezier(.16,.82,.24,1),background .25s ease,box-shadow .25s ease;
}
.home-service-link:hover,
.home-service-link:focus-visible{outline:none;border-color:rgba(8,8,8,.28)}
.home-service-link:hover::before,
.home-service-link:focus-visible::before{opacity:1;transform:translateX(0)}
.home-service-link:hover::after,
.home-service-link:focus-visible::after{opacity:1;transform:translateY(-50%) scaleY(1)}
.home-service-link:hover .home-service-copy,
.home-service-link:focus-visible .home-service-copy{transform:translateX(6px)}
.home-service-link:hover .home-service-arrow,
.home-service-link:focus-visible .home-service-arrow{background:#fff;box-shadow:0 0 0 1px rgba(8,8,8,.07),0 9px 24px rgba(0,0,0,.07);transform:translateX(0) rotate(45deg)}

/* Whole-screen lighting states. These overlays tint the IMAGE and page together. */
.home-hero.weather-sun .home-weather-atmos{opacity:.18;background:linear-gradient(180deg,rgba(255,234,175,.18),rgba(255,255,255,0) 48%)}
.home-hero.weather-sun .home-weather-sun{opacity:.96;transform:translate(-1.5%,.5%) scale(1.08);filter:blur(2px)}
.home-hero.weather-sun .home-weather-clouds{opacity:.76}
.home-hero.weather-sun .home-weather-wind{opacity:.08}

.home-hero.weather-wind .home-weather-atmos{opacity:.24;background:linear-gradient(180deg,rgba(225,232,237,.22),rgba(255,255,255,.04) 48%,rgba(255,255,255,0))}
.home-hero.weather-wind .home-weather-sun{opacity:.46;filter:blur(5px)}
.home-hero.weather-wind .home-weather-clouds{opacity:.80;filter:none}
.home-hero.weather-wind .home-weather-wind{opacity:1}

.home-hero.weather-storm .home-weather-atmos{opacity:1;background:linear-gradient(180deg,rgba(30,39,49,.48),rgba(73,85,97,.30) 45%,rgba(120,132,143,.18) 72%,rgba(168,177,185,.09) 100%);-webkit-backdrop-filter:brightness(.82) saturate(.82) contrast(1.03);backdrop-filter:brightness(.82) saturate(.82) contrast(1.03)}
.home-hero.weather-storm .home-weather-sun{opacity:.015;filter:blur(18px)}
.home-hero.weather-storm .home-weather-clouds{opacity:.80;filter:brightness(.80) saturate(.76)}
.home-hero.weather-storm .home-weather-wet-sheen{opacity:.52}

.home-hero.weather-hail .home-weather-atmos{opacity:1;background:linear-gradient(180deg,rgba(43,53,64,.44),rgba(86,99,111,.28) 48%,rgba(136,147,157,.14) 76%,rgba(185,193,199,.07) 100%);-webkit-backdrop-filter:brightness(.86) saturate(.84) contrast(1.04);backdrop-filter:brightness(.86) saturate(.84) contrast(1.04)}
.home-hero.weather-hail .home-weather-sun{opacity:.01;filter:blur(20px)}
.home-hero.weather-hail .home-weather-clouds{opacity:.77;filter:brightness(.84) saturate(.80)}
.home-hero.weather-hail .home-weather-wet-sheen{opacity:.44}

/* Navigation follows the scene lighting instead of sitting in a separate panel. */
.home-hero.weather-storm .home-service-menu,
.home-hero.weather-hail .home-service-menu{color:#fff}
.home-hero.weather-storm .home-service-link,
.home-hero.weather-hail .home-service-link{color:#fff;border-color:rgba(255,255,255,.28)}
.home-hero.weather-storm .home-service-link:last-child,
.home-hero.weather-hail .home-service-link:last-child{border-bottom-color:rgba(255,255,255,.28)}
.home-hero.weather-storm .home-service-meta,
.home-hero.weather-hail .home-service-meta{color:rgba(255,255,255,.64)}
.home-hero.weather-storm .home-service-arrow,
.home-hero.weather-hail .home-service-arrow{color:#fff;background:rgba(12,18,24,.28);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.home-hero.weather-storm .home-service-link::before,
.home-hero.weather-hail .home-service-link::before{background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.07) 58%,transparent);box-shadow:0 14px 34px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.16)}
.home-hero.weather-storm .home-service-link:hover .home-service-arrow,
.home-hero.weather-storm .home-service-link:focus-visible .home-service-arrow,
.home-hero.weather-hail .home-service-link:hover .home-service-arrow,
.home-hero.weather-hail .home-service-link:focus-visible .home-service-arrow{background:#fff;color:#101418;box-shadow:0 8px 24px rgba(0,0,0,.18)}

@media(max-width:1200px){
  .home-hero-media{left:-8.5vw;width:65vw}
  .home-service-menu{right:24px;width:36vw}
  .home-service-title{font-size:clamp(18px,2vw,24px)}
  .home-service-meta{font-size:7px}
}
@media(max-width:760px){
  .home-hero{min-height:820px;height:100svh}
  .home-hero-media{left:50%;top:25%;width:118vw;max-height:55svh;transform:translate(-50%,-50%) scale(.994);transform-origin:50% 50%}
  .home-hero.is-ready .home-hero-media{transform:translate(-50%,-50%) scale(1)}
  .home-hero-floor{left:50%;top:43%;width:96vw;height:8%}
  .home-weather-sun{right:-6%;top:4%;width:70vw}
  .home-service-menu{left:16px;right:16px;top:auto;bottom:14px;width:auto;transform:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
  .home-service-link{grid-template-columns:minmax(0,1fr) 20px;column-gap:8px;min-height:86px;padding:10px 4px 10px 0}
  .home-service-title{font-size:clamp(16px,4.6vw,21px)}
  .home-service-meta{font-size:6.4px;letter-spacing:.085em;line-height:1.3}
  .home-service-arrow{width:20px;height:20px;font-size:12px}
}
@media(max-width:520px){
  .home-hero{min-height:860px}
  .home-service-menu{column-gap:12px;left:12px;right:12px;bottom:8px}
  .home-service-link{min-height:92px}
  .home-service-title{font-size:16px}
  .home-service-meta{font-size:6px}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .home-hero-media,.home-hero-house,.home-service-link,.home-service-link::before,.home-service-link::after,.home-service-copy,.home-service-arrow,.home-weather-atmos,.home-weather-clouds,.home-cloud,.home-weather-sun,.home-weather-wind,.home-weather-wet-sheen,.home-emergency-glow{transition:none!important;animation:none!important}
}


/* --- v114 step 1 inspection refinements --- */
.trust-chapter[data-step="1"] .trust-step-body{max-width:680px}
.trust-inspect-sequence{margin-top:18px;max-width:680px;padding:18px 20px 16px;border-radius:24px;background:linear-gradient(180deg,rgba(248,249,249,.98),rgba(242,244,244,.92));border:1px solid rgba(9,10,11,.08);box-shadow:0 18px 44px rgba(9,10,11,.05)}
.trust-inspect-sequence-title{margin-bottom:12px;font:900 clamp(14px,1vw,17px)/1.04 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#090a0b}
.trust-inspect-steps{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:inspect}
.trust-inspect-steps li{position:relative;padding-left:46px;font:540 clamp(14px,.98vw,17px)/1.46 Inter,Arial,sans-serif;color:rgba(9,10,11,.76)}
.trust-inspect-steps li::before{counter-increment:inspect;content:counter(inspect, decimal-leading-zero);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:rgba(34,139,85,.10);border:1px solid rgba(34,139,85,.18);font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.10em;color:var(--trust-green)}
.trust-inspect-steps strong{color:#090a0b}
.trust-home-map--drone{width:min(900px,100%);height:min(530px,58vh);padding-top:42px}
.trust-home-map--drone .trust-home-map-heading{left:1%;right:1%;top:-2px}
.trust-home-map--drone .trust-home-map-frame{inset:7% 0 2% 0;border:none;background:transparent;box-shadow:none;overflow:visible}
.trust-home-map--drone .trust-home-map-frame::before{display:none}
.trust-home-map--drone .trust-home-map-image{position:absolute;inset:auto 0 0 0;width:100%;height:100%;object-fit:contain;object-position:center center;filter:saturate(.96) contrast(1.02) brightness(1.01);opacity:1;transform:scale(1.11) translate(2.5%,2.8%);transform-origin:center center;box-shadow:none}
.trust-home-map--drone .trust-home-scan{display:none!important}
.trust-home-map--drone .trust-inspect-point{display:none!important}
.trust-inspect-stage-note{position:absolute;left:2%;right:2%;bottom:0;font:800 9px/1.2 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(9,10,11,.48)}
.trust-inspect-drone{position:absolute;z-index:8;top:6%;right:-6%;width:clamp(180px,22vw,360px);opacity:0;pointer-events:none;filter:drop-shadow(0 28px 42px rgba(9,10,11,.22));transform-origin:center center}
.trust-chapter[data-step="1"].is-active .trust-inspect-drone{animation:trustDroneInspectFlight 10.8s cubic-bezier(.42,0,.16,1) .18s infinite}
@keyframes trustDroneInspectFlight{0%{opacity:0;transform:translate3d(42%,8%,0) scale(.72) rotate(-8deg)}8%{opacity:1}20%{transform:translate3d(14%,-6%,0) scale(.86) rotate(-3deg)}32%{transform:translate3d(-7%,-15%,0) scale(.93) rotate(1deg)}47%{transform:translate3d(-24%,3%,0) scale(1.01) rotate(3deg)}63%{transform:translate3d(-2%,16%,0) scale(.9) rotate(-2deg)}76%{transform:translate3d(18%,4%,0) scale(.84) rotate(-5deg)}88%{opacity:1;transform:translate3d(34%,-4%,0) scale(.76) rotate(-7deg)}100%{opacity:0;transform:translate3d(48%,10%,0) scale(.72) rotate(-8deg)}}
@media (max-width: 1260px){.trust-inspect-sequence{padding:16px 16px 14px}.trust-inspect-steps li{padding-left:42px}.trust-home-map--drone{height:min(500px,52vh)}.trust-home-map--drone .trust-home-map-image{transform:scale(1.06) translate(1.5%,2.2%)}.trust-inspect-drone{width:clamp(160px,20vw,280px);right:-2%}}
@media (max-width: 980px){.trust-inspect-stage-note{position:static;margin-top:12px}.trust-inspect-drone{top:2%;right:0;width:clamp(150px,42vw,220px)}.trust-home-map--drone .trust-home-map-image{transform:none}}


/* --- v115 step 1 layout + drone path refinements --- */
.trust-chapter[data-step="1"]{grid-template-columns:minmax(520px,1.02fr) minmax(460px,.98fr);align-items:start;gap:clamp(24px,3vw,46px);padding-top:132px;padding-bottom:136px}
.trust-chapter[data-step="1"] .trust-copy{max-width:760px}
.trust-chapter[data-step="1"] .trust-step-title{max-width:none;font-size:clamp(48px,4.55vw,76px)}
.trust-chapter[data-step="1"] .trust-step-body{max-width:77ch;font-size:clamp(13px,.95vw,15px);line-height:1.44}
.trust-chapter[data-step="1"] .trust-visual{align-self:start;height:min(46vh,396px);max-height:396px;margin-top:42px}
.trust-inspect-sequence{margin-top:16px;max-width:760px;padding:15px 18px 13px;border-radius:22px}
.trust-inspect-sequence-title{margin-bottom:10px;font-size:clamp(13px,.96vw,16px)}
.trust-inspect-steps{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:10px}
.trust-inspect-steps li{padding-left:39px;font:530 clamp(12px,.86vw,14.5px)/1.38 Inter,Arial,sans-serif}
.trust-inspect-steps li::before{width:24px;height:24px;font-size:9px;top:0}
.trust-chapter[data-step="1"] .trust-keyline{margin-top:14px;max-width:760px}
.trust-chapter[data-step="1"] .trust-proof-list{margin-top:14px;max-width:760px}
.trust-home-map--drone{width:min(900px,100%);height:min(405px,46vh);padding-top:18px}
.trust-home-map--drone .trust-home-map-heading{left:0;right:0;top:-2px}
.trust-home-map--drone .trust-home-map-frame{inset:9% 0 0 0;border:none;background:transparent;box-shadow:none;overflow:visible}
.trust-home-map--drone .trust-home-map-image{inset:auto 0 0 0;width:100%;height:100%;object-fit:contain;object-position:center center;filter:saturate(.96) contrast(1.02) brightness(1.01);transform:scale(1.18) translate(4%,5.5%)}
.trust-inspect-stage-note{left:0;right:0;bottom:-4px;text-align:left}
.trust-inspect-drone{position:absolute;z-index:8;top:1%;right:-6%;width:clamp(155px,19vw,285px);opacity:0;pointer-events:none;filter:drop-shadow(0 22px 32px rgba(9,10,11,.18));transform-origin:center center}
.trust-chapter[data-step="1"].is-active .trust-inspect-drone{animation:trustDroneInspectFlight 11.2s cubic-bezier(.38,0,.18,1) .15s infinite}
@keyframes trustDroneInspectFlight{0%{opacity:0;transform:translate3d(56%,-22%,0) scale(1.24) rotate(-11deg)}8%{opacity:1}18%{transform:translate3d(28%,-8%,0) scale(.94) rotate(-6deg)}31%{transform:translate3d(5%,10%,0) scale(.63) rotate(-1deg)}42%{transform:translate3d(-14%,17%,0) scale(.44) rotate(2deg)}53%{transform:translate3d(-20%,12%,0) scale(.38) rotate(5deg)}63%{transform:translate3d(-8%,5%,0) scale(.4) rotate(0deg)}72%{transform:translate3d(2%,14%,0) scale(.37) rotate(3deg)}81%{transform:translate3d(-10%,18%,0) scale(.36) rotate(-2deg)}90%{opacity:1;transform:translate3d(3%,10%,0) scale(.38) rotate(2deg)}100%{opacity:0;transform:translate3d(18%,0%,0) scale(.34) rotate(5deg)}}
@media (max-height:820px) and (min-width:761px){
  .trust-chapter[data-step="1"]{padding-top:110px;padding-bottom:138px;grid-template-columns:minmax(500px,1.04fr) minmax(420px,.96fr);gap:26px}
  .trust-chapter[data-step="1"] .trust-copy{max-width:760px}
  .trust-chapter[data-step="1"] .trust-step-title{font-size:clamp(40px,3.7vw,58px)}
  .trust-chapter[data-step="1"] .trust-step-body{font-size:12.4px;line-height:1.38;max-width:78ch;margin-top:10px}
  .trust-inspect-sequence{margin-top:13px;padding:12px 14px 11px;max-width:760px}
  .trust-inspect-sequence-title{margin-bottom:8px;font-size:13px}
  .trust-inspect-steps{column-gap:14px;row-gap:8px}
  .trust-inspect-steps li{padding-left:35px;font-size:11.6px;line-height:1.3}
  .trust-inspect-steps li::before{width:22px;height:22px;font-size:8px}
  .trust-chapter[data-step="1"] .trust-keyline{margin-top:11px;font-size:15px;padding-top:7px;padding-bottom:7px}
  .trust-chapter[data-step="1"] .trust-proof-list{margin-top:9px;gap:5px}
  .trust-chapter[data-step="1"] .trust-proof{min-height:24px;padding:0 8px;font-size:6.7px}
  .trust-chapter[data-step="1"] .trust-visual{height:min(42vh,340px);max-height:340px;margin-top:44px}
  .trust-home-map--drone{height:min(340px,42vh);padding-top:12px}
  .trust-home-map--drone .trust-home-map-image{transform:scale(1.16) translate(4.5%,6%)}
  .trust-inspect-drone{width:clamp(132px,16vw,220px)}
}
@media (max-width:980px){
  .trust-inspect-steps{grid-template-columns:1fr}
  .trust-chapter[data-step="1"] .trust-visual{margin-top:16px}
}


/* style-1-v143.css */

/* v61 header shell — white/translucent navigation. Emergency + Quote button styling below is preserved unchanged. */
.site-header{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:82px!important;
  align-items:stretch!important;
  width:100%!important;
  height:82px!important;
  min-height:82px!important;
  transform:none!important;
  opacity:1!important;
  top:0!important;left:0!important;right:0!important;
  background:transparent!important;
  color:#111!important;
  border-bottom:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  transition:background .24s ease,box-shadow .24s ease,border-color .24s ease!important;
  isolation:isolate;
}
.site-header::before,.site-header::after{display:none!important}
.site-header.header-open,.site-header:hover,.site-header:focus-within{
  transform:none!important;
  background:transparent!important;
  border-bottom-color:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.site-header.is-scrolled,
.site-header.is-scrolled.header-open,
.site-header.is-scrolled:hover,
.site-header.is-scrolled:focus-within{
  background:rgba(255,255,255,.78)!important;
  border-bottom:1px solid rgba(10,12,14,.065)!important;
  box-shadow:0 9px 28px rgba(10,12,14,.065)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.06)!important;
  backdrop-filter:blur(18px) saturate(1.06)!important;
}
.site-header.is-scrolled .header-main{background:rgba(255,255,255,.06)!important}
.header-main{
  grid-column:1!important;
  grid-row:1!important;
  order:0!important;
  height:82px!important;
  min-width:0!important;
  position:relative!important;
  z-index:2!important;
  background:transparent!important;
  border:0!important;
  opacity:1!important;
}
.header-inner{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  margin:0!important;
  padding:0 18px 0 clamp(22px,3vw,48px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(20px,2vw,34px)!important;
}
.logo-link{width:clamp(170px,12vw,215px)!important;height:58px!important;flex:0 0 auto!important;opacity:1!important;transform:none!important;filter:none!important}
.logo-link img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important;display:block!important}
.header-phone{display:inline-flex!important;align-items:center!important;gap:8px!important;padding-left:18px!important;border-left:1px solid rgba(10,12,14,.12)!important;color:#111!important;font:650 11px/1.1 Inter,Arial,sans-serif!important;letter-spacing:.025em!important;white-space:nowrap!important}
.header-phone svg{width:15px!important;height:15px!important;stroke:currentColor!important;fill:none!important;stroke-width:1.8!important;flex:0 0 auto!important}
.header-phone small{display:block!important;margin-top:3px!important;font:600 8px/1 "Courier New",monospace!important;letter-spacing:.11em!important;color:rgba(8,8,8,.50)!important;text-transform:uppercase!important}
.main-nav{margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:clamp(20px,2.15vw,38px)!important;font-size:12px!important;white-space:nowrap!important}
.main-nav>a{position:relative!important;color:#111!important;opacity:.84!important;font-family:"Bahnschrift SemiCondensed","Aptos Narrow","Arial Narrow",sans-serif!important;font-size:12px!important;font-weight:700!important;letter-spacing:.145em!important;text-transform:uppercase!important;transition:opacity .2s ease,transform .2s ease!important}
.main-nav>a::after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-8px!important;height:1px!important;background:#111!important;transform:scaleX(0)!important;transform-origin:left!important;transition:transform .24s ease!important}
.main-nav>a:hover,.main-nav>a:focus-visible{opacity:1!important;transform:translateY(-1px)!important;outline:none!important}
.main-nav>a:hover::after,.main-nav>a:focus-visible::after{transform:scaleX(1)!important}
.urgent-strip{
  grid-column:2!important;
  grid-row:1!important;
  order:0!important;
  height:82px!important;
  width:auto!important;
  min-width:0!important;
  padding:0 clamp(18px,2.5vw,40px) 0 10px!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  background:transparent!important;
  border:0!important;
  position:relative!important;
  z-index:3!important;
  opacity:1!important;
}
.urgent-action{
  width:clamp(190px,14vw,228px)!important;
  height:44px!important;
  min-height:44px!important;
  padding:0 15px!important;
  justify-content:flex-start!important;
  gap:8px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:2px!important;
  background:rgba(7,11,14,.42)!important;
  color:#f6f7f4!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);
  overflow:hidden;
  transform:none!important;
  transition:border-color .26s ease,background .26s ease,box-shadow .26s ease,color .26s ease,transform .26s cubic-bezier(.16,.84,.2,1)!important;
}
.urgent-action+ .urgent-action{border-left:1px solid rgba(255,255,255,.22)!important}
.urgent-action::after{
  content:"";position:absolute;top:-40%;bottom:-40%;width:42px;left:-70px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:skewX(-18deg);opacity:0;pointer-events:none;
}
.urgent-action strong{font-size:14px!important;letter-spacing:.055em!important;line-height:1!important;position:relative;z-index:2}
.urgent-action small{font-size:8px!important;letter-spacing:.145em!important;opacity:.68!important;position:relative;z-index:2}
.urgent-action b{font-size:13px!important;margin-left:auto!important;position:relative;z-index:2;transition:transform .24s ease}
/* Header action takeover — one shared overlay/controller for Emergency + Quote. */
.emergency-action{
  border-color:rgba(232,27,43,.92)!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  animation:none!important;
}
.emergency-action::before{display:none!important;content:none!important}
.emergency-action::after{display:none!important;content:none!important;filter:none!important;animation:none!important}
.emergency-action strong,.emergency-action b{color:#e31c2c!important;text-shadow:none!important}
.emergency-action .urgent-pulse{
  background:#ff2632!important;
  box-shadow:none!important;
  animation:none!important;
}
.quote-action{
  border-color:#FFD400!important;
  background:#FFD400!important;
  color:#080808!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),0 0 11px rgba(255,212,0,.12)!important;
  animation:none!important;
  isolation:isolate;
}
.quote-action::before{
  content:"";
  position:absolute;
  left:-40px;right:auto;bottom:0;
  width:calc(100% + 80px);
  height:4px;
  background:repeating-linear-gradient(135deg,#080808 0 7px,#080808 7px 14px,#FFE94A 14px 21px,#FFE94A 21px 28px);
  background-size:40px 40px;
  opacity:.94;
  pointer-events:none;
  transform:translate3d(0,0,0);
  animation:quoteHazardRail 1.6s linear infinite;
}
.quote-action::after{
  content:"";
  position:absolute;
  inset:0;
  width:auto;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0) 68%);
  opacity:.12;
  transform:none;
  pointer-events:none;
  z-index:1;
  animation:quoteButtonGlowOpacity 2.65s ease-in-out infinite;
}
.quote-action strong{color:#080808!important}
.quote-action b{color:#080808!important}
@keyframes quoteButtonGlowOpacity{0%,100%{opacity:.08}50%{opacity:.30}}
@keyframes quoteHazardRail{to{transform:translate3d(40px,0,0)}}
@media(hover:hover) and (pointer:fine){
  .emergency-action:hover{
    border-color:#e31c2c!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .quote-action:hover{
    border-color:#FFE94A!important;
    background:#FFE94A!important;
    color:#080808!important;
    box-shadow:0 10px 30px rgba(255,212,0,.25),inset 0 0 0 1px rgba(255,255,255,.42)!important;
    filter:brightness(1.04);
  }
}

.header-takeover[aria-hidden="true"]{content-visibility:hidden}
.header-takeover[aria-hidden="true"]::before,
.header-takeover[aria-hidden="true"]::after,
.header-takeover[aria-hidden="true"] .header-takeover-caret{animation-play-state:paused!important}
.header-takeover{
  position:fixed;
  z-index:72;
  inset:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  pointer-events:none;
  opacity:1;
  visibility:hidden;
  transform:translate3d(-103%,0,0);
  will-change:transform;
  isolation:isolate;
}
.header-takeover.mode-emergency{
  background:#e20b20;
  color:#fff;
}
.header-takeover.mode-quote{
  background:linear-gradient(118deg,#FFD400 0%,#FFD400 56%,#FFE94A 100%);
  color:#080808;
}
.header-takeover::before,
.header-takeover::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}
.header-takeover.mode-emergency::before{
  inset:-18%;
  background:repeating-radial-gradient(circle at 50% 50%,rgba(255,255,255,.17) 0 1px,transparent 1px 86px);
  opacity:.28;
  transform:scale(.82);
  animation:emergencySignalRings 3.2s ease-out infinite;
}
.header-takeover.mode-emergency::after{
  display:block;
  top:-25%;bottom:-25%;left:-42%;
  width:34%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.03) 15%,rgba(255,255,255,.34) 48%,rgba(255,255,255,.07) 70%,transparent);
  filter:blur(7px);
  transform:translate3d(0,0,0) skewX(-13deg);
  opacity:0;
  animation:emergencyScreenBeacon 3.05s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes emergencySignalRings{
  0%{transform:scale(.78);opacity:.34}
  70%{opacity:.12}
  100%{transform:scale(1.08);opacity:0}
}
@keyframes emergencyScreenBeacon{
  0%,12%{transform:translate3d(0,0,0) skewX(-13deg);opacity:0}
  22%{opacity:.58}
  57%{opacity:.40}
  72%,100%{transform:translate3d(453%,0,0) skewX(-13deg);opacity:0}
}
.header-takeover.mode-quote::before{
  left:-130px;right:auto;top:0;height:54px;width:calc(100% + 260px);
  background:repeating-linear-gradient(135deg,#080808 0 24px,#080808 24px 46px,#FFD400 46px 70px,#FFD400 70px 92px);
  background-size:130px 130px;
  box-shadow:0 9px 34px rgba(0,0,0,.16);
  transform:translate3d(0,0,0);
  animation:quoteTakeoverStripeTop 2.1s linear infinite;
}
.header-takeover.mode-quote::after{
  left:-130px;right:auto;bottom:0;height:54px;width:calc(100% + 260px);
  background:repeating-linear-gradient(45deg,#080808 0 24px,#080808 24px 46px,#FFD400 46px 70px,#FFD400 70px 92px);
  background-size:130px 130px;
  box-shadow:0 -9px 34px rgba(0,0,0,.16);
  transform:translate3d(0,0,0);
  animation:quoteTakeoverStripeBottom 2.1s linear infinite;
}
@keyframes quoteTakeoverStripeTop{to{transform:translate3d(130px,0,0)}}
@keyframes quoteTakeoverStripeBottom{to{transform:translate3d(-130px,0,0)}}
.header-takeover.is-entering,
.header-takeover.is-open{
  visibility:visible;
  transform:translate3d(0,0,0);
  transition:transform .78s cubic-bezier(.76,0,.24,1);
}
.header-takeover.is-leaving{
  visibility:visible;
  transform:translate3d(103%,0,0);
  transition:transform .72s cubic-bezier(.76,0,.24,1);
}
.header-takeover-content{
  position:absolute;
  z-index:2;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  padding:76px clamp(24px,5vw,86px);
  text-align:center;
}
.header-takeover-kicker{
  margin:0 0 20px;
  font:700 clamp(8px,.62vw,11px)/1 "Courier New",monospace;
  letter-spacing:.32em;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .32s ease .18s,transform .45s cubic-bezier(.16,.84,.2,1) .18s;
}
.header-takeover.mode-emergency .header-takeover-kicker{display:none!important}
.header-takeover.mode-quote .header-takeover-kicker{display:none!important}
.header-takeover.is-open .header-takeover-kicker{opacity:1;transform:none}
.header-takeover-headline{
  margin:0;
  width:100%;
  min-height:1em;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:nowrap;
  font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  font-size:clamp(56px,8.4vw,142px);
  font-weight:900;
  line-height:.82;
  letter-spacing:-.035em;
  text-transform:uppercase;
  white-space:nowrap;
  text-align:center;
}
.header-takeover.mode-emergency .header-takeover-headline{text-shadow:0 14px 48px rgba(73,0,6,.30),0 0 28px rgba(255,255,255,.07)}
.header-takeover.mode-quote .header-takeover-headline{text-shadow:0 14px 44px rgba(92,68,0,.14)}
.header-takeover-char{
  display:inline-block;
  opacity:0;
  filter:blur(8px);
  transform:translate3d(0,18px,0) scale(.96);
  transition:opacity .24s ease,filter .32s ease,transform .38s cubic-bezier(.16,.84,.2,1);
}
.header-takeover-char.is-visible{opacity:1;filter:blur(0);transform:none}
.header-takeover-caret{
  display:inline-block;
  width:.045em;
  height:.78em;
  margin-left:.065em;
  vertical-align:-.02em;
  opacity:0;
}
.header-takeover.mode-emergency .header-takeover-caret{
  background:rgba(255,255,255,.96);
  box-shadow:0 0 18px rgba(255,255,255,.34);
}
.header-takeover.mode-quote .header-takeover-caret{
  background:#080808;
  box-shadow:0 0 16px rgba(8,8,8,.22);
}
.header-takeover.is-typing .header-takeover-caret{opacity:1;animation:headerTakeoverCaretBlink .72s steps(1,end) infinite}
@keyframes headerTakeoverCaretBlink{0%,46%{opacity:1}47%,100%{opacity:.16}}


/* Quote conversation — one continuous conversation, not a conventional contact form. */
.header-takeover.quote-flow-active,
.header-takeover.emergency-flow-active{
  pointer-events:auto;
  visibility:visible;
  transform:translate3d(0,0,0);
  overflow:hidden;
}
.header-takeover.quote-flow-active .header-takeover-content{
  padding:clamp(118px,13vh,164px) clamp(24px,7vw,124px) clamp(58px,8vh,92px);
  justify-content:flex-start;
  overflow:auto;
  overscroll-behavior:contain;
}
.header-takeover.quote-flow-active .header-takeover-headline{
  width:min(1120px,92vw);
  min-height:1.9em;
  margin:clamp(14px,3vh,38px) auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  align-content:center;
  flex-wrap:wrap;
  column-gap:.20em;
  row-gap:.02em;
  white-space:normal;
  font-size:clamp(42px,5.25vw,88px);
  line-height:.92;
  text-wrap:balance;
  overflow:visible;
}
.header-takeover.quote-flow-active .header-takeover-headline.prompt-long{font-size:clamp(38px,4.7vw,78px)}
.header-takeover.quote-flow-active .header-takeover-headline.prompt-xlong{font-size:clamp(34px,4.15vw,70px)}
#headerTakeoverText{display:contents}
.header-takeover-word{display:inline-flex;white-space:nowrap;align-items:baseline}
.header-takeover-word:not(:last-child){margin-right:.24em}
.header-takeover.quote-flow-active .header-takeover-caret{height:.72em}
.quote-flow-close{
  position:absolute;
  z-index:12;
  top:clamp(116px,12vh,140px);
  right:clamp(20px,2.8vw,46px);
  width:58px;height:58px;
  border:3px solid #080808;
  background:#080808;
  color:#FFD400;
  box-shadow:0 0 0 7px rgba(255,212,0,.22),0 12px 34px rgba(8,8,8,.20);
  display:none;
  place-items:center;
  border-radius:50%;
  font:700 34px/1 Arial,sans-serif;
  cursor:pointer;
  opacity:0;
  transform:translate3d(12px,-14px,0) rotate(-24deg) scale(.72);
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.header-takeover.quote-flow-active .quote-flow-close,
.header-takeover.emergency-flow-active .quote-flow-close{
  display:grid;
  animation:quoteCloseIn .58s .18s cubic-bezier(.16,.84,.2,1) forwards;
}
@keyframes quoteCloseIn{to{opacity:1;transform:none}}
.quote-flow-close:hover{transform:rotate(8deg) scale(1.08)!important;background:#FFD400;color:#080808;border-color:#080808;box-shadow:0 0 0 10px rgba(255,212,0,.28),0 16px 40px rgba(8,8,8,.24)}
.quote-flow-close:focus-visible{outline:4px solid #fff;outline-offset:4px}
.quote-flow-panel{
  position:relative;
  z-index:4;
  width:min(980px,88vw);
  margin:clamp(10px,2.2vh,28px) auto 0;
  opacity:0;
  transform:translate3d(0,18px,0);
  visibility:hidden;
  transition:opacity .42s ease,transform .52s cubic-bezier(.16,.84,.2,1),visibility 0s linear .52s;
}
.quote-flow-panel.is-visible{opacity:1;transform:none;visibility:visible;transition-delay:0s}
/* Input hit-area hardening: animated prompt layers never intercept form clicks. */
.header-takeover.quote-flow-active .header-takeover-headline,
.header-takeover.emergency-flow-active .header-takeover-headline{pointer-events:none}
.quote-flow-panel,.emergency-flow-panel,.quote-field,.emergency-field,
.quote-field input,.quote-field textarea,.emergency-field input,.emergency-field textarea{pointer-events:auto}
.quote-field input,.quote-field textarea,.emergency-field input,.emergency-field textarea{position:relative;z-index:2;cursor:text;user-select:text;-webkit-user-select:text}
.quote-flow-form{margin:0;padding:0}
.quote-step{display:none;gap:18px;align-items:end}
.quote-step.is-active{display:grid;animation:quoteStepIn .46s cubic-bezier(.16,.84,.2,1) both}
.quote-step.two-col{grid-template-columns:1fr 1fr}
.quote-step.one-col{grid-template-columns:1fr}
@keyframes quoteStepIn{from{opacity:0;transform:translateY(14px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
.quote-field{position:relative;display:block;min-width:0}
.quote-field span{
  display:block;margin:0 0 8px;
  font:800 9px/1 "Courier New",monospace;
  letter-spacing:.2em;color:rgba(8,8,8,.56);text-transform:uppercase;
}
.quote-field input,.quote-field textarea{
  appearance:none;width:100%;border:0;border-bottom:2px solid rgba(8,8,8,.48);outline:0;
  background:rgba(255,255,255,.001);color:#080808;padding:9px 4px 13px;border-radius:0;
  font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  font-size:clamp(28px,3.2vw,52px);font-weight:800;letter-spacing:-.025em;
  transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.quote-field textarea{resize:none;min-height:112px;max-height:190px;font-size:clamp(22px,2.2vw,34px);line-height:1.12;padding-top:12px}
.quote-field input::placeholder,.quote-field textarea::placeholder{color:rgba(8,8,8,.24)}
.quote-field input:focus,.quote-field textarea:focus{border-color:#080808;box-shadow:0 7px 0 -5px rgba(8,8,8,.95)}
.quote-field input:-webkit-autofill,.quote-field input:-webkit-autofill:hover,.quote-field input:-webkit-autofill:focus,.quote-field input:-webkit-autofill:active{
  -webkit-text-fill-color:#080808!important;caret-color:#080808;
  -webkit-box-shadow:0 0 0 1000px #FFD400 inset!important;box-shadow:0 0 0 1000px #FFD400 inset!important;
  border-bottom:2px solid rgba(8,8,8,.72)!important;transition:background-color 9999s ease-out 0s;
}
.quote-address-wrap{position:relative}
.quote-address-suggestions{
  position:absolute;z-index:18;left:0;right:0;top:calc(100% + 8px);
  display:none;overflow:hidden;border:2px solid #080808;background:#FFE35A;
  box-shadow:0 18px 42px rgba(43,33,0,.20);
}
.quote-address-suggestions.is-open{display:block;animation:quoteSuggestionsIn .22s ease both}
@keyframes quoteSuggestionsIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
.quote-address-suggestion{
  width:100%;display:block;border:0;border-bottom:1px solid rgba(8,8,8,.18);background:transparent;color:#080808;
  padding:13px 15px;text-align:left;cursor:pointer;
  font:800 clamp(15px,1.45vw,20px)/1.15 "Bahnschrift Condensed","Arial Narrow",Arial,sans-serif;
  transition:background .18s ease,color .18s ease,padding-left .18s ease;
}
.quote-address-suggestion:last-of-type{border-bottom:0}
.quote-address-attribution{padding:8px 12px 9px;text-align:right;border-top:1px solid rgba(8,8,8,.16);font:700 10px/1 Arial,sans-serif;letter-spacing:.02em;color:rgba(8,8,8,.58);background:rgba(255,255,255,.12)}
.quote-address-suggestion:hover,.quote-address-suggestion:focus{outline:0;background:#080808;color:#FFD400;padding-left:20px}
.quote-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.quote-service-option{position:relative;display:block;cursor:pointer;user-select:none}
.quote-service-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.quote-service-box{
  min-height:64px;width:100%;display:flex;align-items:center;gap:14px;padding:12px 15px;
  border:2px solid rgba(8,8,8,.38);background:rgba(8,8,8,.055);color:#080808;
  font:900 clamp(17px,1.55vw,24px)/1.05 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  letter-spacing:-.015em;text-transform:uppercase;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.quote-service-check{flex:0 0 27px;width:27px;height:27px;display:grid;place-items:center;border:2px solid currentColor;font:900 17px/1 Arial,sans-serif;transition:transform .22s cubic-bezier(.2,.9,.25,1.3),background .2s ease,color .2s ease}
.quote-service-check::after{content:"✓";opacity:0;transform:scale(.3) rotate(-14deg);transition:opacity .16s ease,transform .22s cubic-bezier(.2,.9,.25,1.3)}
.quote-service-option:hover .quote-service-box{transform:translateY(-2px);border-color:#080808;background:rgba(255,255,255,.13)}
.quote-service-option input:focus-visible + .quote-service-box{outline:3px solid rgba(8,8,8,.28);outline-offset:3px}
.quote-service-option input:checked + .quote-service-box{background:#080808;color:#FFD400;border-color:#080808;box-shadow:0 9px 26px rgba(92,68,0,.14)}
.quote-service-option input:checked + .quote-service-box .quote-service-check{background:#FFD400;color:#080808;transform:scale(1.06)}
.quote-service-option input:checked + .quote-service-box .quote-service-check::after{opacity:1;transform:scale(1) rotate(0)}
.quote-upload-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:2px}
.quote-upload-button{
  position:relative;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 16px;
  border:2px solid #080808;background:rgba(255,255,255,.10);color:#080808;cursor:pointer;
  font:900 12px/1 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.quote-upload-button input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.quote-upload-button b{font:900 20px/1 Arial,sans-serif}
.quote-upload-button:hover{transform:translateY(-2px);background:#080808;color:#FFD400}
.quote-photo-list{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.quote-photo-chip{position:relative;width:54px;height:54px;border:2px solid rgba(8,8,8,.55);background:rgba(8,8,8,.08);overflow:hidden;animation:quotePhotoIn .25s ease both}
.quote-photo-chip img{width:100%;height:100%;object-fit:cover;display:block}
.quote-photo-chip button{position:absolute;top:2px;right:2px;width:20px;height:20px;border:0;border-radius:50%;background:#080808;color:#FFD400;font:900 12px/1 Arial;cursor:pointer}
@keyframes quotePhotoIn{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:none}}
.quote-flow-actions{min-height:55px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.quote-flow-error{flex:1;min-height:1.2em;color:#8e0710;font:800 11px/1.35 Arial,sans-serif;letter-spacing:.035em;opacity:0;transform:translateY(5px);transition:opacity .2s ease,transform .25s ease}
.quote-flow-error.is-visible{opacity:1;transform:none}
.quote-flow-next{
  margin-left:auto;min-width:138px;min-height:48px;border:2px solid #080808;background:#080808;color:#FFD400;
  padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:12px;
  font:900 12px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
  transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;
}
.quote-flow-next:hover{transform:translateY(-2px);background:#080808;color:#FFD400;filter:brightness(1.18);box-shadow:0 8px 0 rgba(8,8,8,.13)}
.quote-flow-next:focus-visible{outline:3px solid rgba(8,8,8,.28);outline-offset:3px}
.quote-flow-next span{font-size:17px}

/* AI stage: current reply is the hero; older turns become smaller scrollable history. */
.quote-ai-panel{
  position:absolute;z-index:6;inset:clamp(118px,12vh,146px) clamp(20px,5vw,84px) clamp(28px,4vh,56px);
  display:grid;grid-template-rows:minmax(72px,22vh) minmax(180px,1fr) auto;gap:12px;
  opacity:0;visibility:hidden;transform:translateY(26px) scale(.988);
  transition:opacity .46s ease,transform .58s cubic-bezier(.16,.84,.2,1),visibility 0s linear .58s;
}
.header-takeover.quote-ai-mode .header-takeover-content{opacity:0;pointer-events:none;transition:opacity .3s ease}
.header-takeover.quote-ai-mode .quote-ai-panel{opacity:1;visibility:visible;transform:none;transition-delay:.12s}
.quote-ai-history{
  width:min(920px,92vw);margin:0 auto;overflow:auto;overscroll-behavior:contain;padding:6px 8px 14px;
  display:flex;flex-direction:column;gap:7px;scrollbar-width:none;-ms-overflow-style:none;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 22%,#000 100%);
}
.quote-ai-history::-webkit-scrollbar,.quote-ai-live-wrap::-webkit-scrollbar{width:0;height:0;display:none}
.quote-ai-history-line{font:700 clamp(11px,1vw,14px)/1.32 Arial,sans-serif;color:rgba(8,8,8,.43);max-width:84%;animation:quoteHistoryIn .24s ease both}
.quote-ai-history-line.user{align-self:flex-end;text-align:right;color:rgba(8,8,8,.60)}
.quote-ai-history-line.assistant{align-self:flex-start}
@keyframes quoteHistoryIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.quote-ai-live-wrap{width:min(1080px,92vw);margin:0 auto;display:flex;align-items:center;justify-content:center;min-height:0;padding:12px 0 18px;text-align:center;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}
.quote-ai-live{
  color:#080808;font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;
  font-size:clamp(30px,3.75vw,60px);font-weight:900;line-height:1.04;letter-spacing:-.025em;text-transform:none;text-wrap:balance;white-space:pre-line;max-width:1040px;padding:0 clamp(10px,2vw,28px);
}
.quote-ai-live-caret{display:inline-block;width:.045em;height:.78em;margin-left:.08em;background:#080808;vertical-align:-.03em;opacity:0}
.quote-ai-live-wrap.is-typing .quote-ai-live-caret{opacity:1;animation:headerTakeoverCaretBlink .72s steps(1,end) infinite}
.quote-ai-compose{
  width:min(860px,92vw);margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;
  border:2px solid #080808;border-radius:34px;padding:7px 8px 7px 18px;background:rgba(255,255,255,.16);
  box-shadow:0 14px 40px rgba(92,68,0,.10);transition:background .2s ease,box-shadow .2s ease;
}
.quote-ai-compose:focus-within{background:rgba(255,255,255,.27);box-shadow:0 18px 48px rgba(92,68,0,.14)}
.quote-ai-compose textarea{resize:none;min-height:42px;max-height:112px;border:0;outline:0;background:transparent;color:#080808;padding:10px 2px;font:700 16px/1.4 Arial,sans-serif}
.quote-ai-compose textarea::placeholder{color:rgba(8,8,8,.36)}
.quote-ai-send{width:48px;height:48px;border:2px solid #080808;border-radius:50%;background:#080808;color:#FFD400;font:900 21px/1 Arial,sans-serif;cursor:pointer;transition:transform .2s ease,filter .2s ease}
.quote-ai-send:hover{transform:translateY(-2px);filter:brightness(1.18)}

/* Emergency intake: one-question-at-a-time dispatch conversation on the red takeover. */
.header-takeover.emergency-flow-active .header-takeover-content{padding:clamp(112px,13vh,154px) clamp(24px,5vw,86px) 48px}
.header-takeover.emergency-flow-active .header-takeover-headline{
  width:min(1160px,92vw);flex-wrap:wrap;white-space:normal;column-gap:0;
  font-size:clamp(42px,5.25vw,88px);line-height:.92;text-wrap:balance;overflow:visible;
}
.header-takeover.emergency-flow-active .header-takeover-headline.prompt-long{font-size:clamp(38px,4.7vw,78px)}
.header-takeover.emergency-flow-active .header-takeover-headline.prompt-xlong{font-size:clamp(34px,4.15vw,70px)}
.emergency-flow-panel{
  position:relative;z-index:4;width:min(980px,88vw);margin:clamp(12px,2.2vh,28px) auto 0;
  opacity:0;transform:translate3d(0,18px,0);visibility:hidden;
  transition:opacity .42s ease,transform .52s cubic-bezier(.16,.84,.2,1),visibility 0s linear .52s;
}
.emergency-flow-panel.is-visible{opacity:1;transform:none;visibility:visible;transition-delay:0s}
.emergency-flow-form{margin:0;padding:0}
.emergency-step{display:none;gap:18px;align-items:end}
.emergency-step.is-active{display:grid;animation:quoteStepIn .46s cubic-bezier(.16,.84,.2,1) both}
.emergency-step.two-col{grid-template-columns:1fr 1fr}
.emergency-step.one-col{grid-template-columns:1fr}
.emergency-field{position:relative;display:block;min-width:0}
.emergency-field>span{display:block;margin:0 0 8px;font:800 9px/1 "Courier New",monospace;letter-spacing:.2em;color:rgba(255,255,255,.64);text-transform:uppercase}
.emergency-field input,.emergency-field textarea{
  appearance:none;width:100%;border:0;border-bottom:2px solid rgba(255,255,255,.58);outline:0;
  background:transparent;color:#fff;padding:9px 4px 13px;border-radius:0;
  font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-size:clamp(28px,3.2vw,52px);font-weight:800;letter-spacing:-.025em;
  transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.emergency-field textarea{resize:none;min-height:118px;max-height:190px;font-size:clamp(22px,2.2vw,34px);line-height:1.12;padding-top:12px}
.emergency-field input::placeholder,.emergency-field textarea::placeholder{color:rgba(255,255,255,.34)}
.emergency-field input:focus,.emergency-field textarea:focus{border-color:#fff;box-shadow:0 7px 0 -5px rgba(255,255,255,.95)}
.emergency-field input:-webkit-autofill,.emergency-field input:-webkit-autofill:hover,.emergency-field input:-webkit-autofill:focus,.emergency-field input:-webkit-autofill:active{
  -webkit-text-fill-color:#fff!important;caret-color:#fff;-webkit-box-shadow:0 0 0 1000px #E20B20 inset!important;box-shadow:0 0 0 1000px #E20B20 inset!important;
  border-bottom:2px solid rgba(255,255,255,.76)!important;transition:background-color 9999s ease-out 0s;
}
.emergency-address-wrap{position:relative}
.emergency-address-suggestions{position:absolute;z-index:18;left:0;right:0;top:calc(100% + 8px);display:none;overflow:hidden;border:2px solid #fff;background:#b40616;box-shadow:0 18px 42px rgba(50,0,6,.28)}
.emergency-address-suggestions.is-open{display:block;animation:quoteSuggestionsIn .22s ease both}
.emergency-address-suggestion{width:100%;display:block;border:0;border-bottom:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;padding:13px 15px;text-align:left;cursor:pointer;font:800 clamp(15px,1.45vw,20px)/1.15 "Bahnschrift Condensed","Arial Narrow",Arial,sans-serif;transition:background .18s ease,color .18s ease,padding-left .18s ease}
.emergency-address-suggestion:hover,.emergency-address-suggestion:focus{outline:0;background:#fff;color:#9d0714;padding-left:20px}
.emergency-address-attribution{padding:8px 12px 9px;text-align:right;border-top:1px solid rgba(255,255,255,.22);font:700 10px/1 Arial,sans-serif;color:rgba(255,255,255,.7);background:rgba(0,0,0,.08)}
.emergency-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.emergency-choice{position:relative;display:block;cursor:pointer;user-select:none}
.emergency-choice input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.emergency-choice-box{min-height:58px;width:100%;display:flex;align-items:center;gap:12px;padding:11px 14px;border:2px solid rgba(255,255,255,.55);background:rgba(82,0,8,.12);color:#fff;font:900 clamp(16px,1.35vw,21px)/1.05 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;letter-spacing:-.01em;text-transform:uppercase;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.emergency-choice-check{flex:0 0 25px;width:25px;height:25px;display:grid;place-items:center;border:2px solid currentColor;font:900 16px/1 Arial,sans-serif}
.emergency-choice-check::after{content:"✓";opacity:0;transform:scale(.3) rotate(-14deg);transition:opacity .16s ease,transform .22s cubic-bezier(.2,.9,.25,1.3)}
.emergency-choice:hover .emergency-choice-box{transform:translateY(-2px);background:rgba(255,255,255,.10);border-color:#fff}
.emergency-choice input:checked + .emergency-choice-box{background:#fff;color:#a30614;border-color:#fff;box-shadow:0 10px 28px rgba(69,0,7,.18)}
.emergency-choice input:checked + .emergency-choice-box .emergency-choice-check::after{opacity:1;transform:none}
.emergency-upload-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:2px}
.emergency-upload-button{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 16px;border:2px solid #fff;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font:900 12px/1 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;transition:transform .2s ease,background .2s ease,color .2s ease}
.emergency-upload-button input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.emergency-upload-button b{font:900 20px/1 Arial,sans-serif}.emergency-upload-button:hover{transform:translateY(-2px);background:#fff;color:#a30614}
.emergency-photo-list{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.emergency-photo-chip{position:relative;width:54px;height:54px;border:2px solid rgba(255,255,255,.75);background:rgba(255,255,255,.08);overflow:hidden;animation:quotePhotoIn .25s ease both}
.emergency-photo-chip img{width:100%;height:100%;object-fit:cover;display:block}.emergency-photo-chip button{position:absolute;top:2px;right:2px;width:20px;height:20px;border:0;border-radius:50%;background:#fff;color:#a30614;font:900 12px/1 Arial;cursor:pointer}
.emergency-price-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.emergency-price-block{min-height:138px;padding:18px 20px;border:2px solid rgba(255,255,255,.66);background:rgba(70,0,7,.14);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.emergency-price-block strong{font:900 clamp(33px,4vw,58px)/.9 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;letter-spacing:-.03em}.emergency-price-block span{font:900 11px/1.25 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}.emergency-price-block p{margin:10px 0 0;font:700 13px/1.35 Arial,sans-serif;color:rgba(255,255,255,.78)}
.emergency-agree{margin-top:12px;display:flex;align-items:flex-start;gap:11px;color:#fff;cursor:pointer;font:800 12px/1.35 Arial,sans-serif}.emergency-agree input{margin-top:2px;width:18px;height:18px;accent-color:#fff}
.emergency-schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.emergency-schedule{position:relative;cursor:pointer}.emergency-schedule input{position:absolute;opacity:0;pointer-events:none}.emergency-schedule span{min-height:92px;padding:14px;border:2px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:rgba(70,0,7,.12);font:900 clamp(15px,1.3vw,20px)/1.15 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;text-transform:uppercase;transition:.2s ease}
.emergency-schedule:hover span{transform:translateY(-2px);border-color:#fff}.emergency-schedule input:checked + span{background:#fff;color:#a30614;border-color:#fff;box-shadow:0 10px 28px rgba(69,0,7,.18)}
.emergency-dispatch-summary{margin-top:12px;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border-top:1px solid rgba(255,255,255,.45);border-bottom:1px solid rgba(255,255,255,.45);color:#fff}.emergency-dispatch-summary b{font:900 clamp(28px,3.2vw,46px)/1 "Bahnschrift Condensed","Arial Narrow",Impact,sans-serif}.emergency-dispatch-summary span{font:800 11px/1.3 Arial,sans-serif;text-align:right;text-transform:uppercase;letter-spacing:.05em}
.emergency-flow-actions{min-height:55px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.emergency-flow-error{flex:1;min-height:1.2em;color:#fff;font:800 11px/1.35 Arial,sans-serif;letter-spacing:.035em;opacity:0;transform:translateY(5px);transition:opacity .2s ease,transform .25s ease}.emergency-flow-error.is-visible{opacity:1;transform:none}
.emergency-flow-next{margin-left:auto;min-width:138px;min-height:48px;border:2px solid #fff;background:#fff;color:#a30614;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font:900 12px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .22s ease,filter .22s ease,box-shadow .22s ease}.emergency-flow-next:hover{transform:translateY(-2px);background:#fff;color:#a30614;filter:brightness(1.03);box-shadow:0 8px 0 rgba(77,0,8,.16)}.emergency-flow-next:focus-visible{outline:3px solid rgba(255,255,255,.55);outline-offset:3px}.emergency-flow-next span{font-size:17px}
@media(max-width:760px){
  .header-takeover.emergency-flow-active .header-takeover-content{padding:110px 16px 36px}
  .header-takeover.emergency-flow-active .header-takeover-headline{margin-top:8px;font-size:clamp(34px,10.5vw,56px);width:94vw;min-height:2.15em;line-height:.94}
  .header-takeover.emergency-flow-active .header-takeover-headline.prompt-long{font-size:clamp(31px,9.4vw,50px)}
  .header-takeover.emergency-flow-active .header-takeover-headline.prompt-xlong{font-size:clamp(28px,8.4vw,44px)}
  .emergency-flow-panel{width:92vw;margin-top:10px}.emergency-step.two-col{grid-template-columns:1fr;gap:14px}.emergency-field input{font-size:clamp(27px,8vw,42px)}.emergency-field textarea{font-size:24px;min-height:104px}.emergency-choice-grid{grid-template-columns:1fr;gap:8px}.emergency-choice-box{min-height:50px;font-size:17px;padding:9px 11px}.emergency-price-card{grid-template-columns:1fr}.emergency-price-block{min-height:112px}.emergency-schedule-grid{grid-template-columns:1fr}.emergency-schedule span{min-height:58px}.emergency-flow-actions{margin-top:13px;min-height:48px}.emergency-flow-next{width:100%;min-height:46px}.emergency-dispatch-summary{align-items:flex-start;flex-direction:column}.emergency-dispatch-summary span{text-align:left}
}

@media(max-width:760px){
  .header-takeover.quote-flow-active .header-takeover-content{padding:110px 16px 40px}
  .header-takeover.quote-flow-active .header-takeover-headline{margin-top:8px;font-size:clamp(34px,10.5vw,56px);width:94vw;min-height:2.15em;column-gap:.17em;line-height:.94}
  .header-takeover.quote-flow-active .header-takeover-headline.prompt-long{font-size:clamp(31px,9.4vw,50px)}
  .header-takeover.quote-flow-active .header-takeover-headline.prompt-xlong{font-size:clamp(28px,8.4vw,44px)}
  .quote-flow-close{top:108px;right:14px;width:42px;height:42px;font-size:25px}
  .quote-flow-panel{width:92vw;margin-top:10px}
  .quote-step.two-col{grid-template-columns:1fr;gap:14px}
  .quote-field input{font-size:clamp(27px,8vw,42px)}
  .quote-field textarea{font-size:24px;min-height:104px}
  .quote-service-grid{grid-template-columns:1fr;gap:8px}
  .quote-service-box{min-height:50px;font-size:17px;padding:9px 11px}
  .quote-flow-actions{margin-top:13px;min-height:48px}
  .quote-flow-next{width:100%;min-height:46px}
  .quote-ai-panel{inset:108px 12px 16px;grid-template-rows:minmax(58px,19vh) minmax(150px,1fr) auto}
  .quote-ai-history{width:96vw;padding-left:10px;padding-right:10px}
  .quote-ai-live-wrap{width:94vw;padding:6px 4px 12px}
  .quote-ai-live{font-size:clamp(31px,9.2vw,48px)}
  .quote-ai-compose{width:94vw;border-radius:28px;padding-left:14px}
  .quote-ai-compose textarea{font-size:15px}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .header-takeover,.header-takeover-char,.header-takeover-kicker{transition:none!important;animation:none!important}
  .header-takeover-char{opacity:1!important;filter:none!important;transform:none!important}
  .emergency-action,.emergency-action::after,.quote-action,.quote-action::before,.header-takeover.mode-emergency::before,.header-takeover.mode-emergency::after,.header-takeover.mode-quote::before,.header-takeover.mode-quote::after{animation:none!important}
}


/* Keep the desktop bar readable but understated when the pointer is away. */
@media(hover:hover) and (pointer:fine) and (min-width:761px){
  .site-header:not(.header-open):not(:hover):not(:focus-within) .quote-action::before,
  .site-header:not(.header-open):not(:hover):not(:focus-within) .quote-action::after{animation-play-state:paused!important}
  .site-header:not(.header-open):not(:hover):not(:focus-within) .urgent-action:not(.quote-action){background:rgba(7,11,14,.34)!important}
  .site-header:not(.header-open):not(:hover):not(:focus-within) .quote-action{
    background:#FFD400!important;
    border-color:#FFD400!important;
    color:#080808!important;
    filter:brightness(1.025);
    box-shadow:inset 0 0 0 1px rgba(8,8,8,.20),0 0 18px rgba(255,212,0,.14)!important;
  }
  .site-header:not(.header-open):not(:hover):not(:focus-within) .emergency-action{
    background:transparent!important;
    border-color:rgba(227,28,44,.88)!important;
    box-shadow:none!important;
  }
  .site-header:not(.header-open):not(:hover):not(:focus-within) .urgent-pulse{opacity:.78}
}

/* Mid-width desktop: keep the expanded six-link navigation on one clean row. */
@media(max-width:1450px) and (min-width:1101px){
  .header-inner{padding-left:clamp(18px,2vw,28px)!important;gap:clamp(14px,1.4vw,22px)!important}
  .logo-link{width:clamp(154px,11vw,178px)!important}
  .header-phone{padding-left:13px!important;font-size:10px!important}
  .main-nav{gap:clamp(12px,1.25vw,18px)!important}
  .main-nav>a{font-size:10px!important;letter-spacing:.11em!important}
  .urgent-strip{padding-right:clamp(14px,1.5vw,22px)!important}
  .urgent-action{width:clamp(176px,13vw,202px)!important}
}

/* Tablet: reduce labels before stacking. */
@media(max-width:1100px) and (min-width:761px){
  .site-header{grid-template-columns:minmax(0,1fr) auto!important}
  .header-inner{padding-left:20px!important;gap:14px!important}.header-phone{display:none!important}.logo-link{width:150px!important}
  .main-nav{gap:14px!important}
  .header-inner .main-nav>a,.header-inner .main-nav>a:not(.plan-btn){font-size:7px!important}
  .urgent-strip{padding-right:18px!important;gap:7px!important}
  .urgent-action{width:172px!important;padding:0 11px!important}
  .urgent-action strong{font-size:12px!important}
  .urgent-action small{display:none!important}
}

/* Mobile remains attached while scrolling, with one integrated navigation row and one CTA row. */
@media(max-width:760px){
  .site-header{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:56px 42px!important;
    height:98px!important;
    min-height:98px!important;
    background:rgba(255,255,255,.96)!important;
    -webkit-backdrop-filter:blur(14px) saturate(1.02)!important;
    backdrop-filter:blur(14px) saturate(1.02)!important;
    box-shadow:0 10px 28px rgba(10,12,14,.08)!important;
  }
  .site-header::before{display:none!important}
  .header-main{grid-column:1!important;grid-row:1!important;height:56px!important;opacity:1!important}
  .header-inner{padding:0 13px!important;width:100%!important;gap:10px!important}
  .logo-link{width:132px!important;height:42px!important}.header-phone{display:none!important}
  .main-nav{margin-left:auto!important;gap:8px!important}
  .main-nav>a{display:none!important}
  .urgent-strip{
    grid-column:1!important;grid-row:2!important;
    height:42px!important;width:100%!important;
    padding:0 8px 7px!important;gap:7px!important;opacity:1!important;
  }
  .urgent-action{width:50%!important;height:35px!important;min-height:35px!important;padding:0 9px!important;gap:6px!important}
  .urgent-action strong{font-size:11px!important;letter-spacing:.035em!important}
  .urgent-action small{display:none!important}
  .urgent-action b{display:block!important;font-size:11px!important}
  .urgent-pulse{width:6px!important;height:6px!important}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .site-header::before,.site-header::after,.urgent-action::after{animation:none!important}
}

/* style-2-v143.css */

/* Homepage v65 — v63 base preserved; new attic image, separated soffit-to-ridge airflow, stronger directional sun lighting. */
.home-hero,.home-hero-stage,.home-hero-ambient,.home-hero-cinematic-wash,main,#services,.site-shell,body{background:#fff!important}
.home-hero-cinematic-wash{background:none!important}
.home-hero-floor{left:28.5%!important;top:80%!important;width:min(51vw,930px)!important;opacity:.34!important}
.home-hero-media{left:1.5vw!important;top:51%!important;width:min(55vw,1060px)!important;aspect-ratio:1536/1024!important;opacity:1!important;transform:translateY(-47%) scale(1)!important}
.home-hero-house{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;filter:none!important;-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 86%,rgba(0,0,0,.96) 90%,rgba(0,0,0,.75) 94%,rgba(0,0,0,.30) 97%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0,#000 86%,rgba(0,0,0,.96) 90%,rgba(0,0,0,.75) 94%,rgba(0,0,0,.30) 97%,transparent 100%)!important}
.home-hero-house-default{transform:none!important;transform-origin:top left!important}
.home-hero-house-emergency{transform:translate(5.19%,5.15%) scale(.91687)!important;transform-origin:top left!important}
.home-hero-house-roofing{transform:translate(4.41%,3.86%) scale(.93554)!important;transform-origin:top left!important}
.home-hero-house-insulation{transform:translate(2.99%,2.62%) scale(.97025)!important;transform-origin:top left!important}
.home-hero-house-drainage{transform:translate(.291%,.425%) scale(.99616)!important;transform-origin:top left!important}
.home-hero-house-siding{transform:translate(1.71%,1.27%) scale(.97687)!important;transform-origin:top left!important}
.home-hero-house-structural{object-fit:fill!important;transform:translate(-1.38%,-.41%) scale(1.0325)!important;transform-origin:top left!important}
.home-emergency-glow{display:none!important;opacity:0!important}
.home-weather-atmos,.home-weather-clouds,.home-weather-sun,.home-weather-canvas,.home-weather-wind,.home-weather-wet-sheen,.home-weather-lightning,.home-weather-grain{display:block!important}

/* Service rail: open architectural symbol list — no bubbles, no divider-line stack. */
.home-service-menu{
  z-index:13!important;
  right:clamp(18px,2vw,38px)!important;
  top:16.5%!important;
  bottom:6%!important;
  width:min(19vw,326px)!important;
  transform:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:2px 0!important;
  border:0!important;
  background:transparent!important;
  color:#101216!important;
}
.home-service-link,.home-service-link:last-child{
  position:relative!important;
  z-index:1!important;
  min-height:64px!important;
  padding:12px 14px 12px 45px!important;
  border:0!important;
  border-radius:0!important;
  color:#111318!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 24px!important;
  gap:12px!important;
  align-items:center!important;
  transform:none!important;
  opacity:.86!important;
  transition:color .22s ease,transform .24s ease,opacity .22s ease,background .24s ease!important;
  overflow:visible!important;
}
.home-service-link:first-child{border-top:0!important}
.home-service-link::before{
  display:block!important;
  position:absolute!important;
  left:10px!important;
  top:50%!important;
  width:24px!important;
  height:28px!important;
  transform:translateY(-50%)!important;
  background:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#4f5862!important;
  font:700 19px/28px "Segoe UI Symbol","Arial Unicode MS",Arial,sans-serif!important;
  text-align:center!important;
  opacity:.94!important;
  transition:color .22s ease,transform .22s ease,opacity .22s ease!important;
}
.home-service-link::after{display:none!important}
.home-service-link[data-service="emergency-repairs"]::before{content:"●"!important;color:#ff2638!important;font-size:13px!important;text-shadow:0 0 8px rgba(255,38,56,.22)!important}
.home-service-link[data-service="roofing"]::before{content:"⌂"!important;color:#f2a51c!important;font-size:22px!important;text-shadow:0 0 8px rgba(242,165,28,.18)!important}
.home-service-link[data-service="insulation"]::before{content:"≋"!important;color:#20a85a!important;font-size:22px!important;text-shadow:0 0 8px rgba(32,168,90,.16)!important}
.home-service-link[data-service="drainage"]::before{content:"↧"!important;color:#187fe8!important;font-size:21px!important;text-shadow:0 0 8px rgba(24,127,232,.18)!important}
.home-service-link[data-service="siding"]::before{content:"▥"!important;color:#b43cff!important;font-size:19px!important;text-shadow:0 0 8px rgba(180,60,255,.18)!important}
.home-service-link[data-service="structural"]::before{content:"▦"!important;color:#b9783f!important;font-size:18px!important;text-shadow:0 0 8px rgba(185,120,63,.15)!important}
.home-service-copy{transform:none!important}
.home-service-title{
  font-family:"Bahnschrift SemiCondensed","Bahnschrift Condensed","Arial Narrow",Arial,sans-serif!important;
  font-size:clamp(12px,.91vw,15.5px)!important;
  font-weight:650!important;
  line-height:1.16!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  color:inherit!important;
}
.home-service-meta{display:none!important}
.home-service-arrow{
  width:22px!important;
  height:22px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(17,19,22,.72)!important;
  font:650 14px/1 Arial,sans-serif!important;
  opacity:.86!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transition:color .22s ease,transform .22s ease,opacity .22s ease!important;
}
.home-service-link:hover,.home-service-link.is-hovered,.home-service-link:focus-visible{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(16,18,21,.92) 0%,rgba(16,18,21,.80) 70%,rgba(16,18,21,0) 100%)!important;
  transform:translateX(-5px)!important;
  opacity:1!important;
  outline:none!important;
}
.home-service-link:hover::before,.home-service-link.is-hovered::before,.home-service-link:focus-visible::before{color:#fff!important;transform:translateY(-50%) translateX(2px)!important;opacity:1!important}
.home-service-link:hover .home-service-arrow,.home-service-link.is-hovered .home-service-arrow,.home-service-link:focus-visible .home-service-arrow{color:#fff!important;transform:translateX(2px)!important;opacity:1!important}
.home-service-link[data-service="emergency-repairs"]:hover,.home-service-link[data-service="emergency-repairs"].is-hovered,.home-service-link[data-service="emergency-repairs"]:focus-visible{
  background:linear-gradient(90deg,rgba(207,24,43,.96) 0%,rgba(219,32,50,.84) 70%,rgba(219,32,50,0) 100%)!important;
  color:#fff!important;
}

/* Editorial information area sits between the house and service rail, never over the main house mass. */
.home-service-detail[hidden]{display:none!important}
.home-service-detail{
  z-index:12!important;
  position:absolute!important;
  left:58.2%!important;
  right:min(22vw,375px)!important;
  top:max(92px,10.5%)!important;
  bottom:2.5%!important;
  width:auto!important;
  color:#0c0d0f!important;
  pointer-events:none!important;
  opacity:0!important;
  transform:translateY(10px)!important;
  transition:opacity .28s ease,transform .34s cubic-bezier(.16,.82,.24,1)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.home-service-detail.is-visible{opacity:1!important;transform:translateY(0)!important}
.home-service-detail-layout{display:block!important;padding-top:0!important}
.home-service-detail-main{max-width:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.home-service-detail-title{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif!important;font-size:clamp(28px,2.35vw,43px)!important;font-weight:800!important;line-height:.89!important;letter-spacing:-.018em!important;text-transform:uppercase!important;max-width:13ch!important;text-wrap:balance!important}
.home-service-detail-copy{margin-top:12px!important;max-width:39ch!important;font-size:12.5px!important;line-height:1.48!important;color:rgba(8,8,8,.72)!important}
.home-service-detail-chips{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:12px!important;max-width:42ch!important}
.home-service-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:27px!important;padding:0 11px!important;border-radius:999px!important;background:rgba(238,241,243,.92)!important;box-shadow:inset 0 0 0 1px rgba(8,8,8,.14),0 3px 10px rgba(8,8,8,.055)!important;font:750 8px/1 Inter,Arial,sans-serif!important;letter-spacing:.075em!important;text-transform:uppercase!important;color:rgba(8,8,8,.86)!important;white-space:nowrap!important}
.home-hero .home-service-detail[data-service="emergency-repairs"] .home-service-chip{background:#d51f2f!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(130,0,14,.32),0 4px 12px rgba(213,31,47,.22)!important}
.home-service-detail-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;margin-top:12px!important;border-top:1px solid rgba(10,12,14,.16)!important;border-bottom:1px solid rgba(10,12,14,.16)!important}
.home-service-stat{min-height:64px!important;padding:9px 10px 8px 0!important;background:transparent!important;border:0!important;border-right:1px solid rgba(10,12,14,.12)!important;border-bottom:1px solid rgba(10,12,14,.10)!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:10px!important}
.home-service-stat:nth-child(even){padding-left:10px!important;border-right:0!important}
.home-service-stat:nth-last-child(-n+2){border-bottom:0!important}
.home-service-stat-value{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif!important;font-size:clamp(20px,1.6vw,31px)!important;line-height:.9!important;font-weight:800!important;color:#0b0d0f!important;text-transform:uppercase!important}
.home-service-stat-label{font:700 8px/1.28 Inter,Arial,sans-serif!important;letter-spacing:.025em!important;text-transform:uppercase!important;color:rgba(8,8,8,.58)!important}

/* Weather keeps the editorial UI readable without introducing a separate panel. */
.home-hero.weather-storm .home-service-menu,.home-hero.weather-hail .home-service-menu{color:#fff!important}
.home-hero.weather-storm .home-service-link,.home-hero.weather-hail .home-service-link{color:rgba(255,255,255,.95)!important;background:transparent!important;text-shadow:0 2px 10px rgba(0,0,0,.20)!important}
.home-hero.weather-storm .home-service-link::before,.home-hero.weather-hail .home-service-link::before,.home-hero.weather-storm .home-service-link .home-service-arrow,.home-hero.weather-hail .home-service-link .home-service-arrow{color:rgba(255,255,255,.86)!important}
.home-hero.weather-storm .home-service-link:hover,.home-hero.weather-storm .home-service-link.is-hovered,.home-hero.weather-hail .home-service-link:hover,.home-hero.weather-hail .home-service-link.is-hovered{background:linear-gradient(90deg,rgba(10,12,14,.94) 0%,rgba(10,12,14,.82) 70%,rgba(10,12,14,0) 100%)!important;color:#fff!important}
.home-hero.weather-storm .home-service-link[data-service="emergency-repairs"]:hover,.home-hero.weather-storm .home-service-link[data-service="emergency-repairs"].is-hovered,.home-hero.weather-hail .home-service-link[data-service="emergency-repairs"]:hover,.home-hero.weather-hail .home-service-link[data-service="emergency-repairs"].is-hovered{background:linear-gradient(90deg,rgba(207,24,43,.96) 0%,rgba(219,32,50,.82) 70%,rgba(219,32,50,0) 100%)!important;color:#fff!important}
.home-hero.weather-storm .home-service-detail,.home-hero.weather-hail .home-service-detail{color:#fff!important}
.home-hero.weather-storm .home-service-detail-stats,.home-hero.weather-hail .home-service-detail-stats{border-color:rgba(255,255,255,.24)!important}
.home-hero.weather-storm .home-service-detail-title,.home-hero.weather-hail .home-service-detail-title,.home-hero.weather-storm .home-service-stat-value,.home-hero.weather-hail .home-service-stat-value{color:#fff!important}
.home-hero.weather-storm .home-service-detail-copy,.home-hero.weather-hail .home-service-detail-copy,.home-hero.weather-storm .home-service-stat-label,.home-hero.weather-hail .home-service-stat-label{color:rgba(255,255,255,.84)!important}
.home-hero.weather-storm .home-service-chip,.home-hero.weather-hail .home-service-chip{background:rgba(245,247,248,.94)!important;box-shadow:inset 0 0 0 1px rgba(5,8,10,.14),0 3px 10px rgba(0,0,0,.08)!important;color:#101215!important}
.home-hero.weather-storm .home-service-stat,.home-hero.weather-hail .home-service-stat{border-color:rgba(255,255,255,.18)!important}

/* Sun state: parallel off-screen volumetric shafts. There is intentionally NO visible sun/origin point. */
.home-weather-sun{
  inset:-8% -5% -8% -5%!important;
  top:-8%!important;
  right:-5%!important;
  width:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  border-radius:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  opacity:0!important;
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
  -webkit-mask-image:linear-gradient(225deg,transparent 0 18%,rgba(0,0,0,.02) 22%,rgba(0,0,0,.20) 28%,rgba(0,0,0,.66) 35%,#000 42%)!important;
  mask-image:linear-gradient(225deg,transparent 0 18%,rgba(0,0,0,.02) 22%,rgba(0,0,0,.20) 28%,rgba(0,0,0,.66) 35%,#000 42%)!important;
  clip-path:polygon(0 0,66% 0,100% 34%,100% 100%,0 100%)!important;
}
/* Broad parallel shafts. Because these are diagonal bands rather than a conic gradient, they never reveal a sun source. */
.home-weather-sun::before{
  content:"";
  position:absolute;
  inset:-10% -8%;
  pointer-events:none;
  background:
    linear-gradient(135deg,transparent 0 31%,rgba(255,250,235,.035) 33%,rgba(255,250,235,.16) 36.5%,rgba(255,255,250,.34) 40%,rgba(255,244,216,.18) 43.5%,rgba(255,250,235,.035) 47%,transparent 50% 100%),
    linear-gradient(135deg,transparent 0 46%,rgba(255,248,228,.035) 48%,rgba(255,248,228,.14) 51%,rgba(255,255,249,.29) 54%,rgba(255,242,207,.15) 57.5%,rgba(255,248,228,.03) 61%,transparent 64% 100%),
    linear-gradient(135deg,transparent 0 60%,rgba(255,247,224,.025) 62%,rgba(255,247,224,.11) 65%,rgba(255,255,248,.23) 68%,rgba(255,240,202,.11) 71%,transparent 75% 100%);
  -webkit-mask-image:linear-gradient(135deg,#000 0%,rgba(0,0,0,.98) 48%,rgba(0,0,0,.76) 68%,rgba(0,0,0,.36) 84%,transparent 100%);
  mask-image:linear-gradient(135deg,#000 0%,rgba(0,0,0,.98) 48%,rgba(0,0,0,.76) 68%,rgba(0,0,0,.36) 84%,transparent 100%);
  filter:blur(8px);
  opacity:.82;
  transform-origin:50% 50%;
  animation:homeVolumetricBeamPulse 7.6s ease-in-out infinite;
}
/* Suspended dust concentrated inside the shafts. Larger/more numerous particles make the volume readable. */
.home-weather-sun::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 72% 28%,rgba(255,247,219,.46) 0 1px,transparent 3.6px),
    radial-gradient(circle at 66% 34%,rgba(255,255,241,.58) 0 1.2px,rgba(255,238,198,.10) 1.8px,transparent 4.4px),
    radial-gradient(circle at 63% 36%,rgba(255,246,216,.60) 0 1.2px,transparent 4.2px),
    radial-gradient(circle at 57% 42%,rgba(255,255,242,.70) 0 1.2px,rgba(255,240,204,.12) 2px,transparent 4.6px),
    radial-gradient(circle at 50% 50%,rgba(255,245,211,.56) 0 1.1px,transparent 4px),
    radial-gradient(circle at 44% 57%,rgba(255,255,239,.64) 0 1.25px,transparent 4.5px),
    radial-gradient(circle at 38% 64%,rgba(255,243,206,.50) 0 1.15px,transparent 4.1px),
    radial-gradient(circle at 32% 71%,rgba(255,254,237,.57) 0 1.2px,transparent 4.3px),
    radial-gradient(circle at 72% 35%,rgba(255,250,227,.60) 0 1px,transparent 3.8px),
    radial-gradient(circle at 65% 48%,rgba(255,255,241,.55) 0 1.1px,transparent 4px),
    radial-gradient(circle at 59% 56%,rgba(255,243,205,.48) 0 1px,transparent 3.8px),
    radial-gradient(circle at 52% 64%,rgba(255,253,233,.52) 0 1.1px,transparent 4px),
    radial-gradient(circle at 47% 32%,rgba(255,249,222,.44) 0 1px,transparent 3.5px),
    radial-gradient(circle at 40% 45%,rgba(255,255,239,.48) 0 1.1px,transparent 3.8px),
    radial-gradient(circle at 35% 53%,rgba(255,242,204,.42) 0 1px,transparent 3.6px),
    radial-gradient(circle at 29% 61%,rgba(255,252,229,.46) 0 1px,transparent 3.8px);
  filter:blur(.15px);
  opacity:.58;
  animation:homeSunDustDrift 8.8s ease-in-out infinite;
}
@keyframes homeVolumetricBeamPulse{0%,100%{opacity:.83;transform:translate3d(0,0,0)}45%{opacity:1;transform:translate3d(-.45%,.32%,0)}68%{opacity:.90;transform:translate3d(.22%,-.14%,0)}}
@keyframes homeSunDustDrift{0%,100%{opacity:.46;transform:translate3d(0,0,0)}50%{opacity:.68;transform:translate3d(-10px,8px,0)}}
@keyframes homeSunSurfaceGlare{0%,100%{opacity:.30;transform:translateX(1.5%)}50%{opacity:.62;transform:translateX(-2.7%)}}

/* Slight neutral haze gives the shafts something to illuminate without tinting the whole page yellow. */
.home-hero.weather-sun .home-hero-ambient{
  opacity:0!important;
  background:transparent!important;
}
.home-hero.weather-sun .home-hero-cinematic-wash{
  background:transparent!important;
  mix-blend-mode:normal!important;
  opacity:0!important;
}
.home-hero.weather-sun .home-weather-atmos{
  opacity:0!important;
  background:transparent!important;
}
.home-hero.weather-sun .home-weather-sun{opacity:1!important;transform:none!important;filter:none!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
.home-hero.weather-sun .home-weather-clouds{opacity:.76!important;filter:none!important}
.home-hero.weather-sun .home-cloud{opacity:calc(var(--co,.40) * .84)!important}
.home-hero.weather-sun .home-cloud img{opacity:.78!important;filter:grayscale(1) brightness(.84) contrast(.80) saturate(0) blur(.28px)!important}

/* Rain/hail cloud density pass only — sun and wind remain unchanged. */
.home-hero.weather-storm .home-weather-clouds{opacity:.96!important;filter:brightness(.76) saturate(.66) contrast(1.05)!important}
.home-hero.weather-hail .home-weather-clouds{opacity:.93!important;filter:brightness(.80) saturate(.70) contrast(1.04)!important}
.home-hero.weather-storm .home-cloud:not(.storm-extra){opacity:calc(var(--co,.40) * 1.34)!important}
.home-hero.weather-hail .home-cloud:not(.storm-extra){opacity:calc(var(--co,.40) * 1.26)!important}
.home-hero.weather-storm .home-cloud:not(.storm-extra) img{opacity:.94!important;filter:grayscale(.86) brightness(.72) contrast(.91) saturate(.08) blur(.18px)!important;transform:scale(1.09)!important}
.home-hero.weather-hail .home-cloud:not(.storm-extra) img{opacity:.91!important;filter:grayscale(.82) brightness(.77) contrast(.90) saturate(.10) blur(.20px)!important;transform:scale(1.07)!important}
.home-hero.weather-storm .home-cloud.storm-extra,.home-hero.weather-hail .home-cloud.storm-extra{display:block!important}
.home-hero.weather-storm .home-cloud.storm-extra{opacity:calc(var(--co,.48) * 1.24)!important}
.home-hero.weather-hail .home-cloud.storm-extra{opacity:calc(var(--co,.48) * 1.16)!important}
.home-hero.weather-storm .home-cloud.storm-extra img{opacity:.92!important;filter:grayscale(.90) brightness(.68) contrast(.90) saturate(.06) blur(.28px)!important}
.home-hero.weather-hail .home-cloud.storm-extra img{opacity:.89!important;filter:grayscale(.86) brightness(.74) contrast(.89) saturate(.08) blur(.30px)!important}
.home-hero.weather-sun .home-weather-wind{opacity:.003!important}

/* Stronger but still localized specular sweep where the shafts cross reflective surfaces. */
.home-hero.weather-sun .home-weather-wet-sheen{
  opacity:.42!important;
  background:
    linear-gradient(128deg,transparent 0%,transparent 33%,rgba(255,255,255,.04) 37%,rgba(255,249,229,.20) 40.5%,rgba(255,255,255,.38) 42.2%,rgba(255,240,202,.10) 45%,transparent 50%,transparent 100%),
    linear-gradient(180deg,rgba(255,255,255,.01),rgba(255,255,255,0) 44%)!important;
  background-size:220% 100%,100% 100%!important;
  mix-blend-mode:screen!important;
  filter:blur(.7px)!important;
  animation:homeSunSurfaceSweep 9.4s ease-in-out infinite!important;
}
@keyframes homeSunSurfaceSweep{0%,100%{background-position:132% 0,0 0;opacity:.28}48%{background-position:22% 0,0 0;opacity:.46}62%{background-position:-18% 0,0 0;opacity:.34}}

/* Directional shadows: source is high/right, so structure and sign cast down/left. */
.home-hero.weather-sun .home-hero-floor{
  opacity:.48!important;
  left:23.5%!important;
  top:81.2%!important;
  width:min(57vw,1030px)!important;
  height:12%!important;
  background:radial-gradient(ellipse at 66% 33%,rgba(25,29,32,.20) 0%,rgba(25,29,32,.12) 33%,rgba(25,29,32,.045) 54%,rgba(25,29,32,0) 74%)!important;
  filter:blur(17px)!important;
  transform:translate(-24px,10px) skewX(-19deg)!important;
}
.home-hero.weather-sun .home-hero-house.is-active{
  filter:brightness(1.032) contrast(1.014) saturate(1.022)!important;
}
.home-hero.weather-sun .home-yard-sign{
  filter:drop-shadow(-27px 22px 13px rgba(28,31,34,.26)) drop-shadow(-8px 9px 5px rgba(18,20,22,.13)) brightness(1.035) contrast(1.012) saturate(1.025)!important;
}

/* Reflection band across the actual house composition; brighter than v79, still localized to the beam path. */
.home-hero.weather-sun .home-hero-media::after{
  content:"";
  position:absolute;
  inset:1% -2% 1% -2%;
  z-index:6;
  pointer-events:none;
  background:linear-gradient(128deg,transparent 0%,transparent 34%,rgba(255,255,255,0) 37.5%,rgba(255,246,218,.14) 40%,rgba(255,255,255,.34) 42%,rgba(255,237,194,.10) 44.5%,transparent 49.5%,transparent 100%);
  mix-blend-mode:screen;
  filter:blur(2px);
  opacity:.50;
  animation:homeSunSurfaceGlare 8.5s ease-in-out infinite;
}
.home-hero.weather-sun .home-yard-sign::after{
  content:"";
  position:absolute;
  inset:3% 1% 9% 1%;
  pointer-events:none;
  background:linear-gradient(126deg,transparent 0 38%,rgba(255,255,255,.29) 44%,rgba(255,246,219,.12) 49%,transparent 56% 100%);
  mix-blend-mode:screen;
  filter:blur(.9px);
  opacity:.48;
  animation:homeSunSurfaceGlare 7.6s ease-in-out infinite reverse;
}

/* Attic hover airflow: fewer, separated arrows. Intake enters at the eaves and exhausts through the roof ridge — never through the visible pipe. */
.home-insulation-airflow{position:absolute!important;inset:0!important;z-index:7!important;pointer-events:none!important;opacity:0!important;transition:opacity .24s ease!important;transform:translate(2.99%,2.62%) scale(.97025)!important;transform-origin:top left!important}
.home-insulation-airflow.is-active{opacity:1!important}
.airflow-arrow{position:absolute!important;width:14px!important;height:14px!important;color:#078df2!important;filter:drop-shadow(0 0 4px rgba(0,139,244,.98)) drop-shadow(0 0 10px rgba(0,139,244,.50))!important;opacity:0}
.airflow-arrow::before{content:""!important;position:absolute!important;left:0!important;top:50%!important;width:8.5px!important;height:2.3px!important;background:currentColor!important;border-radius:999px!important;transform:translateY(-50%)!important}
.airflow-arrow::after{content:""!important;position:absolute!important;right:0!important;top:50%!important;width:5.2px!important;height:5.2px!important;border-top:2.3px solid currentColor!important;border-right:2.3px solid currentColor!important;transform:translateY(-50%) rotate(45deg)!important}
@keyframes airflowInLeft{0%{opacity:0;transform:translate(-9px,7px) rotate(-31deg)}18%{opacity:.98}80%{opacity:.98}100%{opacity:0;transform:translate(23px,-15px) rotate(-31deg)}}
@keyframes airflowInRight{0%{opacity:0;transform:translate(9px,7px) rotate(-149deg)}18%{opacity:.98}80%{opacity:.98}100%{opacity:0;transform:translate(-23px,-15px) rotate(-149deg)}}
@keyframes airflowUp{0%{opacity:0;transform:translate(0,12px) rotate(-90deg)}18%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(-2px,-26px) rotate(-90deg)}}
/* Left soffit -> main attic slope. */
.flow-l1{left:27.8%;top:22.4%;animation:airflowInLeft 1.72s linear infinite .00s}.flow-l2{left:34.0%;top:19.0%;animation:airflowInLeft 1.72s linear infinite .31s}.flow-l3{left:40.2%;top:15.8%;animation:airflowInLeft 1.72s linear infinite .62s}.flow-l4{left:46.3%;top:12.5%;animation:airflowInLeft 1.72s linear infinite .93s}
/* Right soffit -> upper roof slope. */
.flow-r1{left:95.0%;top:22.2%;animation:airflowInRight 1.72s linear infinite .10s}.flow-r2{left:88.3%;top:18.8%;animation:airflowInRight 1.72s linear infinite .41s}.flow-r3{left:81.7%;top:15.0%;animation:airflowInRight 1.72s linear infinite .72s}.flow-r4{left:75.3%;top:11.2%;animation:airflowInRight 1.72s linear infinite 1.03s}
/* Ridge exhaust is deliberately split to either side of the visible metal pipe. */
.flow-u1{left:50.8%;top:4.7%;animation:airflowUp 1.52s linear infinite .08s}.flow-u2{left:58.0%;top:4.5%;animation:airflowUp 1.52s linear infinite .48s}.flow-u3{left:68.6%;top:7.5%;animation:airflowUp 1.52s linear infinite .28s}.flow-u4{left:72.0%;top:7.3%;animation:airflowUp 1.52s linear infinite .68s}

@media(max-width:1200px){
  .home-hero-media{left:1.2vw!important;width:min(56vw,1030px)!important}
  .home-service-menu{right:18px!important;width:min(20vw,260px)!important}
  .home-service-detail{left:57.2%!important;right:min(24vw,315px)!important;top:max(92px,10.5%)!important;bottom:2.5%!important}
  .home-service-detail-title{font-size:clamp(28px,2.75vw,42px)!important}
  .home-service-detail-copy{font-size:13px!important}
}
@media(max-width:900px){
  .home-service-detail{display:none!important}
  .home-hero-media{left:2%!important;width:66vw!important}
  .home-service-menu{width:30vw!important;right:12px!important}
}
@media(max-width:760px){
  .home-hero{min-height:860px!important}
  .home-hero-media{left:52%!important;top:26%!important;width:112vw!important;transform:translate(-50%,-50%) scale(.994)!important}
  .home-hero.is-ready .home-hero-media{transform:translate(-50%,-50%) scale(1)!important}
  .home-hero-floor{left:52%!important;top:45%!important;width:96vw!important}
  .home-service-menu{left:12px!important;right:12px!important;top:auto!important;bottom:22px!important;width:auto!important;transform:none!important;border-left:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;padding:0!important}
  .home-service-link,.home-service-link:last-child,.home-service-link:first-child{min-height:58px!important;padding:10px 10px 10px 40px!important;border:0!important;background:transparent!important}
  .home-service-title{font-size:14px!important}
  .home-service-arrow{justify-self:end!important}
}

/* Wind-reactive landscaping: only active during the homepage wind weather state. */
.home-wind-tree-stage{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:5;
  pointer-events:none;
  opacity:0;
  transition:opacity .42s ease;
  overflow:visible;
}
.home-wind-tree-erase,
.home-wind-tree-cutout{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.home-wind-tree-erase{z-index:0;background:#fff;opacity:0}
.home-wind-tree-cutout{z-index:1;overflow:visible;will-change:transform}
.home-wind-tree-cutout img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center center;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.home-wind-tree-erase.is-left,
.home-wind-tree-cutout.is-left{
  clip-path:polygon(2.0% 57%,5.9% 57%,6.35% 91%,1.25% 91%);
}
.home-wind-tree-erase.is-right,
.home-wind-tree-cutout.is-right{
  clip-path:polygon(96.0% 55%,99.35% 55%,99.8% 91%,95.45% 91%);
}
.home-wind-tree-cutout.is-left{transform-origin:3.9% 89.8%}
.home-wind-tree-cutout.is-right{transform-origin:97.7% 89.8%}
.home-hero.weather-wind .home-hero-media{animation:none!important}
.home-hero.weather-wind .home-hero-house{animation:none!important}
.home-hero.weather-wind:not(.wind-trees-disabled) .home-wind-tree-stage{opacity:1}
.home-hero.weather-wind:not(.wind-trees-disabled) .home-wind-tree-erase{opacity:1}
.home-hero.weather-wind:not(.wind-trees-disabled) .home-wind-tree-cutout.is-left{animation:homeWindTreeLeft 3.65s cubic-bezier(.37,.01,.32,1) infinite}
.home-hero.weather-wind:not(.wind-trees-disabled) .home-wind-tree-cutout.is-right{animation:homeWindTreeRight 3.32s cubic-bezier(.36,.02,.30,1) infinite -.38s}
@keyframes homeWindTreeLeft{
  0%,100%{transform:rotate(.02deg) skewX(0deg)}
  10%{transform:rotate(.13deg) skewX(.025deg)}
  20%{transform:rotate(.42deg) skewX(.08deg)}
  27%{transform:rotate(.20deg) skewX(.035deg)}
  41%{transform:rotate(.56deg) skewX(.11deg)}
  52%{transform:rotate(.25deg) skewX(.045deg)}
  68%{transform:rotate(.46deg) skewX(.085deg)}
  79%{transform:rotate(.14deg) skewX(.025deg)}
  91%{transform:rotate(.32deg) skewX(.06deg)}
}
@keyframes homeWindTreeRight{
  0%,100%{transform:rotate(.03deg) skewX(0deg)}
  13%{transform:rotate(.17deg) skewX(.03deg)}
  24%{transform:rotate(.50deg) skewX(.09deg)}
  33%{transform:rotate(.22deg) skewX(.04deg)}
  48%{transform:rotate(.62deg) skewX(.12deg)}
  60%{transform:rotate(.28deg) skewX(.05deg)}
  74%{transform:rotate(.48deg) skewX(.09deg)}
  86%{transform:rotate(.16deg) skewX(.03deg)}
  94%{transform:rotate(.36deg) skewX(.07deg)}
}
.home-yard-sign{
  z-index:6!important;
  opacity:1!important;
  visibility:visible!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.home-yard-sign img{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:translate3d(0,0,0);
}
.home-hero.weather-wind .home-yard-sign{
  animation:none!important;
  will-change:auto;
}
.home-hero.weather-wind .home-yard-sign img{
  transform-origin:50% 91%;
  animation:homeWindSignFlex 2.68s cubic-bezier(.34,.02,.31,1) infinite;
  will-change:transform;
}
@keyframes homeWindSignFlex{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg) skewX(0deg) scaleX(1)}
  11%{transform:translate3d(1px,0,0) rotate(.55deg) skewX(.10deg) scaleX(1)}
  20%{transform:translate3d(4px,-1px,0) rotate(1.95deg) skewX(.32deg) scaleX(.998)}
  28%{transform:translate3d(2px,0,0) rotate(1deg) skewX(.05deg) scaleX(1)}
  43%{transform:translate3d(5px,-1px,0) rotate(2.35deg) skewX(.48deg) scaleX(.997)}
  54%{transform:translate3d(2px,0,0) rotate(1.2deg) skewX(.10deg) scaleX(1)}
  69%{transform:translate3d(4px,-1px,0) rotate(2deg) skewX(.34deg) scaleX(.998)}
  80%{transform:translate3d(1px,0,0) rotate(.70deg) skewX(.03deg) scaleX(1)}
  92%{transform:translate3d(3px,0,0) rotate(1.52deg) skewX(.18deg) scaleX(.999)}
}
@media (prefers-reduced-motion:reduce) and (min-width:1025px){
  .home-wind-tree-stage,.home-wind-tree-cutout,.home-yard-sign,.home-yard-sign img{animation:none!important;transition:none!important}
}

@media (prefers-reduced-motion:reduce) and (min-width:1025px){.home-insulation-airflow,.airflow-arrow{animation:none!important;transition:none!important}.home-insulation-airflow.is-active .airflow-arrow{opacity:.72!important}}

/* style-3-v143.css */

/* v116 — viewport hardening. Scroll/page controllers are intentionally untouched. */
html,body{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}

/* Ultra-wide screens: keep the homepage composition at the approved desktop proportions
   instead of allowing the house and service rail to drift farther apart forever. */
@media (min-width:1681px){
  .home-hero{background:#fff!important}
  .home-hero-stage{inset:0 auto 0 50%!important;width:1680px!important;max-width:1680px!important;transform:translateX(-50%)!important;overflow:hidden!important}
  .home-hero-media{left:25px!important;width:940px!important}
  .home-service-menu{right:34px!important;width:310px!important}
  .home-service-detail{left:978px!important;right:360px!important}
  .home-hero-floor{left:478px!important;width:860px!important}
  .header-inner{padding-left:max(48px,calc((100vw - 1680px)/2 + 48px))!important}
  .urgent-strip{padding-right:max(40px,calc((100vw - 1680px)/2 + 40px))!important}
}

/* Tablet and phone are an intentional mobile mode, not a scaled desktop. */
@media (max-width:1024px){
  .site-header{
    grid-template-columns:1fr!important;
    grid-template-rows:76px 42px!important;
    height:118px!important;min-height:118px!important;
    background:rgba(255,255,255,.94)!important;
    -webkit-backdrop-filter:blur(16px) saturate(1.04)!important;
    backdrop-filter:blur(16px) saturate(1.04)!important;
    box-shadow:0 8px 24px rgba(10,12,14,.075)!important;
    transform:none!important;opacity:1!important;filter:none!important;
  }
  .header-main{grid-column:1!important;grid-row:1!important;height:76px!important;background:transparent!important}
  .header-inner{
    height:76px!important;width:100%!important;padding:0 14px!important;
    display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:45px 27px!important;
    column-gap:12px!important;row-gap:0!important;align-items:center!important;
  }
  .logo-link{grid-column:1!important;grid-row:1!important;width:145px!important;height:43px!important}
  .header-phone{display:none!important}
  .main-nav{
    grid-column:1 / -1!important;grid-row:2!important;margin:0!important;
    width:100%!important;max-width:none!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;
    gap:18px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;
    padding:0 2px 5px!important;white-space:nowrap!important;
  }
  .main-nav::-webkit-scrollbar{display:none!important}
  .header-inner .main-nav>a,.header-inner .main-nav>a:not(.plan-btn){display:block!important;flex:0 0 auto!important;font-size:8px!important;letter-spacing:.11em!important;opacity:.75!important}
  .main-nav>a::after{bottom:-4px!important}
  .urgent-strip{grid-column:1!important;grid-row:2!important;height:42px!important;width:100%!important;padding:0 8px 7px!important;gap:7px!important;opacity:1!important}
  .urgent-action{width:50%!important;height:35px!important;min-height:35px!important;padding:0 10px!important;gap:6px!important}
  .urgent-action strong{font-size:11px!important;letter-spacing:.035em!important}.urgent-action small{display:none!important}.urgent-action b{display:block!important;font-size:11px!important}

  /* Page 1 mobile composition. */
  .home-hero{height:100dvh!important;min-height:720px!important;max-height:none!important}
  .home-hero-stage{inset:0!important;width:100%!important;max-width:none!important;transform:none!important}
  .home-hero-media{left:50%!important;top:30.5%!important;width:min(104vw,900px)!important;height:auto!important;max-height:43dvh!important;transform:translate(-50%,-50%) scale(.995)!important;transform-origin:50% 50%!important}
  .home-hero.is-ready .home-hero-media{transform:translate(-50%,-50%) scale(1)!important}
  .home-hero-floor{left:50%!important;top:48%!important;width:min(92vw,760px)!important;height:7%!important}
  .home-yard-sign{right:2.5%!important;bottom:6%!important;width:clamp(72px,13vw,112px)!important}
  .home-weather-clouds{height:27%!important}

  .home-service-menu{
    left:4vw!important;right:4vw!important;top:auto!important;bottom:2.4%!important;width:auto!important;height:auto!important;max-height:28dvh!important;
    transform:none!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(52px,auto)!important;
    gap:4px 12px!important;padding:0!important;overflow:visible!important;
  }
  .home-service-link,.home-service-link:first-child,.home-service-link:last-child{
    min-height:52px!important;padding:8px 22px 8px 34px!important;border:0!important;background:rgba(255,255,255,.72)!important;
    -webkit-backdrop-filter:blur(6px)!important;backdrop-filter:blur(6px)!important;border-radius:2px!important;
  }
  .home-service-link::before{left:7px!important;width:20px!important;font-size:16px!important}
  .home-service-title{font-size:clamp(11px,1.65vw,14px)!important;line-height:1.08!important}
  .home-service-arrow{width:18px!important;height:18px!important;font-size:11px!important}

  /* On touch, the selected service copy moves into the middle of the viewport rather than being lost off-screen. */
  .home-service-detail[hidden]{display:none!important}
  .home-service-detail.is-visible{
    display:block!important;left:5vw!important;right:5vw!important;top:50.2%!important;bottom:auto!important;width:auto!important;max-height:19dvh!important;
    padding:10px 12px!important;background:rgba(255,255,255,.84)!important;border:1px solid rgba(9,10,11,.07)!important;
    -webkit-backdrop-filter:blur(10px) saturate(1.03)!important;backdrop-filter:blur(10px) saturate(1.03)!important;
    overflow:hidden!important;pointer-events:none!important;
  }
  .home-service-detail-title{font-size:clamp(20px,3.7vw,30px)!important;max-width:22ch!important;line-height:.92!important}
  .home-service-detail-copy{margin-top:6px!important;max-width:68ch!important;font-size:10.5px!important;line-height:1.34!important}
  .home-service-detail-chips{margin-top:6px!important;gap:4px!important;max-width:none!important}
  .home-service-chip{min-height:22px!important;padding:0 7px!important;font-size:6px!important}
  .home-service-detail-stats{display:none!important}

  /* Page 2 already has a dedicated touch controller; just keep its text inside safe bounds. */
  .page-two-story{max-width:min(420px,86vw)!important}

  /* Locked Experience tablet mode: keep all content inside one viewport. */
  .trust-journey-top{top:126px!important;left:24px!important;right:24px!important}
  .trust-chapter{padding:164px 24px 112px!important;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)!important;gap:22px!important;align-items:center!important}
  .trust-copy{max-width:none!important}.trust-step-label{margin-bottom:9px!important}.trust-step-title{font-size:clamp(38px,5.7vw,58px)!important}
  .trust-step-body{margin-top:10px!important;font-size:11.5px!important;line-height:1.36!important;max-width:62ch!important}
  .trust-keyline{margin-top:10px!important;font-size:14px!important;padding:7px 9px 7px 11px!important}
  .trust-proof-list{margin-top:9px!important;gap:4px!important}.trust-proof{min-height:23px!important;padding:0 7px!important;font-size:6.2px!important}
  .trust-visual{height:min(43dvh,390px)!important;max-height:390px!important}
  .trust-progress{left:24px!important;right:24px!important;bottom:32px!important;padding-top:8px!important}
  .trust-exit-hint{right:24px!important;bottom:75px!important}

  .trust-chapter[data-step="1"]{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;padding-top:150px!important;padding-bottom:106px!important;gap:20px!important}
  .trust-chapter[data-step="1"] .trust-step-title{font-size:clamp(37px,5vw,54px)!important}
  .trust-chapter[data-step="1"] .trust-step-body{font-size:10.7px!important;line-height:1.32!important;margin-top:8px!important}
  .trust-inspect-sequence{margin-top:10px!important;padding:10px 11px 9px!important;border-radius:16px!important}
  .trust-inspect-sequence-title{font-size:11px!important;margin-bottom:7px!important}
  .trust-inspect-steps{grid-template-columns:1fr!important;gap:5px!important}
  .trust-inspect-steps li{padding-left:31px!important;font-size:9.7px!important;line-height:1.25!important}.trust-inspect-steps li::before{width:19px!important;height:19px!important;font-size:7px!important}
  .trust-chapter[data-step="1"] .trust-keyline{margin-top:8px!important;font-size:12.5px!important}.trust-chapter[data-step="1"] .trust-proof-list{margin-top:7px!important}
  .trust-chapter[data-step="1"] .trust-visual{height:min(37dvh,330px)!important;max-height:330px!important;margin-top:28px!important}
  .trust-home-map--drone{height:min(330px,37dvh)!important}.trust-inspect-stage-note{font-size:6.5px!important}
}

/* Phone portrait: reduce density another step but keep every control readable/tappable. */
@media (max-width:600px){
  .site-header{grid-template-rows:70px 42px!important;height:112px!important;min-height:112px!important}
  .header-main,.header-inner{height:70px!important}.header-inner{grid-template-rows:43px 25px!important;padding:0 10px!important}.logo-link{width:130px!important;height:40px!important}.main-nav{gap:15px!important}.main-nav>a{font-size:7px!important}
  .home-hero{min-height:680px!important}
  .home-hero-media{top:28.5%!important;width:112vw!important;max-height:40dvh!important}
  .home-hero-floor{top:45.5%!important;width:102vw!important}
  .home-yard-sign{right:1%!important;bottom:7%!important;width:clamp(68px,21vw,96px)!important}
  .home-service-menu{left:9px!important;right:9px!important;bottom:8px!important;gap:3px 7px!important;max-height:29dvh!important;grid-auto-rows:minmax(48px,auto)!important}
  .home-service-link,.home-service-link:first-child,.home-service-link:last-child{min-height:48px!important;padding:7px 18px 7px 29px!important}
  .home-service-link::before{left:5px!important;width:17px!important;font-size:14px!important}.home-service-title{font-size:10.5px!important}.home-service-arrow{display:none!important}
  .home-service-detail.is-visible{left:9px!important;right:9px!important;top:47.2%!important;max-height:20dvh!important;padding:8px 9px!important}.home-service-detail-title{font-size:19px!important}.home-service-detail-copy{font-size:9px!important;line-height:1.28!important}.home-service-chip{font-size:5.5px!important;min-height:19px!important}

  .trust-journey-top{top:121px!important;left:14px!important;right:14px!important}.trust-journey-kicker{font-size:7px!important}.trust-journey-current{font-size:22px!important}
  .trust-chapter{padding:151px 14px 92px!important;grid-template-columns:1fr!important;grid-template-rows:auto minmax(170px,1fr)!important;gap:9px!important;align-items:start!important}
  .trust-step-label{font-size:7px!important;margin-bottom:5px!important}.trust-step-label b{width:24px!important;height:24px!important;font-size:14px!important}.trust-step-title{font-size:clamp(32px,10vw,44px)!important;line-height:.9!important;max-width:13ch!important}.trust-step-body{font-size:9.7px!important;line-height:1.28!important;margin-top:6px!important;max-width:none!important}
  .trust-keyline{font-size:11.5px!important;margin-top:6px!important;padding:5px 7px 5px 9px!important}.trust-proof-list{margin-top:5px!important;gap:3px!important}.trust-proof{min-height:19px!important;padding:0 6px!important;font-size:5.5px!important}
  .trust-visual{height:200px!important;max-height:200px!important;align-self:end!important}.trust-visual::before{font-size:90px!important}
  .trust-progress{left:12px!important;right:12px!important;bottom:20px!important;gap:5px!important;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 35%)!important}.trust-progress-step{font-size:5.5px!important;padding:7px 20px 3px 0!important}.trust-progress-step::after{width:16px!important;height:16px!important;top:3px!important;font-size:9px!important}.trust-exit-hint{right:12px!important;bottom:57px!important;font-size:5.5px!important}

  .trust-chapter[data-step="1"]{padding:145px 14px 88px!important;grid-template-columns:1fr!important;grid-template-rows:auto 185px!important;gap:7px!important}
  .trust-chapter[data-step="1"] .trust-step-title{font-size:34px!important}.trust-chapter[data-step="1"] .trust-step-body{font-size:9.2px!important;line-height:1.23!important;margin-top:5px!important}
  .trust-inspect-sequence{margin-top:6px!important;padding:7px 8px 6px!important;border-radius:12px!important}.trust-inspect-sequence-title{font-size:9px!important;margin-bottom:5px!important}.trust-inspect-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:7px!important;row-gap:4px!important}.trust-inspect-steps li{padding-left:22px!important;font-size:7.6px!important;line-height:1.18!important}.trust-inspect-steps li::before{width:15px!important;height:15px!important;font-size:5.5px!important}
  .trust-chapter[data-step="1"] .trust-keyline{font-size:10px!important;margin-top:5px!important}.trust-chapter[data-step="1"] .trust-proof-list{display:none!important}
  .trust-chapter[data-step="1"] .trust-visual{height:185px!important;max-height:185px!important;margin-top:0!important}.trust-home-map--drone{height:185px!important;padding-top:10px!important}.trust-home-map-heading strong{font-size:14px!important}.trust-home-map-heading span{font-size:4.5px!important}.trust-home-map--drone .trust-home-map-image{transform:scale(1.05) translate(1%,5%)!important}.trust-inspect-drone{width:128px!important}.trust-inspect-stage-note{display:none!important}
}

/* Very short landscape/tablet heights: prioritize usability over decorative scale. */
@media (max-width:1024px) and (max-height:700px){
  .site-header{grid-template-rows:58px 36px!important;height:94px!important;min-height:94px!important}.header-main,.header-inner{height:58px!important}.header-inner{grid-template-rows:35px 21px!important}.logo-link{width:120px!important;height:34px!important}.urgent-strip{height:36px!important}.urgent-action{height:30px!important;min-height:30px!important}.main-nav>a{font-size:6.5px!important}
  .home-hero{min-height:620px!important}.home-hero-media{top:29%!important;max-height:37dvh!important}.home-service-detail.is-visible{top:45%!important;max-height:18dvh!important}.home-service-menu{max-height:30dvh!important;bottom:5px!important}.home-service-link{min-height:44px!important}.home-service-title{font-size:10px!important}
  .trust-journey-top{top:103px!important}.trust-chapter{padding-top:124px!important;padding-bottom:74px!important}.trust-progress{bottom:13px!important}.trust-exit-hint{bottom:48px!important}.trust-step-title{font-size:34px!important}.trust-step-body{font-size:9.4px!important}.trust-visual{height:180px!important;max-height:180px!important}
}

/* style-4-v143.css */

/* v117 — one unified desktop/mobile gesture system. Native CSS Scroll Snap aligns pages;
   Pointer Events own vertical swipes only inside the three interactive full-screen pages. */
html{scroll-snap-type:y proximity;scroll-padding-top:0}
body{overscroll-behavior-y:none}
main>section{scroll-snap-align:start;scroll-margin-top:0}
#hero,#approach,#trust-transition{scroll-snap-stop:always}
#hero,#approach,#trust-transition,.page-two-map{touch-action:pan-x pinch-zoom!important}
@media(max-width:1024px){
  .home-hero{height:100dvh!important;min-height:100dvh!important}
  #hero,#approach,#trust-transition{min-height:100dvh}
}

/* style-5-v143.css */

/* v1.3.2 SCOPED FIXES. Desktop design/content is not redesigned.
   - desktop/non-mobile: remove external width constraints and let Page 1 own the viewport
   - mobile: safe-area service rail + reliable vertical app-owned swipe surface
*/
html,body{max-width:none!important}
@media (min-width:1025px){
  html,body{width:100%!important;min-width:100%!important}
  #hero,.home-hero{width:100vw!important;height:100dvh!important;min-height:100dvh!important;max-width:none!important}
  .home-hero-stage{left:0!important;right:0!important;width:100vw!important;max-width:none!important;transform:none!important}
}
/* Disable only the old ultra-wide Page-1 centering cap. Restore the approved fluid v65 positions. */
@media (min-width:1681px){
  .home-hero-stage{left:0!important;right:0!important;width:100vw!important;max-width:none!important;transform:none!important}
  .home-hero-media{left:1.5vw!important;width:min(55vw,1060px)!important}
  .home-service-menu{right:clamp(18px,2vw,38px)!important;width:min(19vw,326px)!important}
  .home-service-detail{left:58.2%!important;right:min(22vw,375px)!important}
  .home-hero-floor{left:28.5%!important;width:min(51vw,930px)!important}
  .header-inner{padding-left:clamp(22px,3vw,48px)!important}
  .urgent-strip{padding-right:clamp(18px,2.5vw,40px)!important}
}
@media (max-width:1024px){
  #hero,#approach,#trust-transition{touch-action:pan-x pinch-zoom!important;overscroll-behavior-y:contain!important}
  #hero,.home-hero{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important}
  .home-hero-stage{height:100%!important;min-height:0!important}
  /* Keep the category controls above browser chrome/home indicators instead of glued to the edge. */
  .home-service-menu{
    bottom:max(62px,calc(env(safe-area-inset-bottom,0px) + 48px))!important;
    max-height:30dvh!important;
    gap:6px 10px!important;
  }
  .home-service-link,.home-service-link:first-child,.home-service-link:last-child{
    min-height:48px!important;
    touch-action:manipulation!important;
  }
  /* Selected service copy sits safely above the lifted category rail. */
  .home-service-detail.is-visible{
    top:46%!important;
    max-height:19dvh!important;
  }
}
@media (max-width:600px){
  .home-service-menu{
    left:10px!important;right:10px!important;
    bottom:max(58px,calc(env(safe-area-inset-bottom,0px) + 44px))!important;
    max-height:31dvh!important;
    gap:5px 7px!important;
  }
  .home-service-link,.home-service-link:first-child,.home-service-link:last-child{min-height:46px!important}
  .home-service-detail.is-visible{top:43.5%!important;max-height:19dvh!important}
}
@media (max-height:700px) and (max-width:600px){
  .home-service-menu{bottom:max(48px,calc(env(safe-area-inset-bottom,0px) + 38px))!important;max-height:32dvh!important}
  .home-service-link,.home-service-link:first-child,.home-service-link:last-child{min-height:42px!important;padding-top:5px!important;padding-bottom:5px!important}
  .home-service-detail.is-visible{top:40.5%!important;max-height:17dvh!important}
}

/* style-6-v143.css */
.home-hero-responsive-source{display:contents}

/* v1.4.3 — MOBILE EXPERIENCE COORDINATOR.
   Desktop is intentionally outside this breakpoint. Native document scroll snap seats pages;
   Page 2 becomes app-owned only after it is fully seated, then releases outward at House 1/5. */
@media (max-width:1024px){
  html{scroll-snap-type:y proximity!important;scroll-padding-top:0!important;overscroll-behavior-y:none!important}
  body{overscroll-behavior-y:none!important}
  main>section{scroll-snap-align:start!important;scroll-margin-top:0!important}
  #hero,#approach,#trust-transition{scroll-snap-stop:always!important;min-height:100dvh}
  #hero{touch-action:pan-y pinch-zoom!important;overscroll-behavior-y:auto!important}

  html.locked-mobile-page2-v143-lock{scroll-snap-type:none!important;overscroll-behavior:none!important;overflow-anchor:none!important}
  body.locked-mobile-page2-v143-lock{overscroll-behavior:none!important;overflow-anchor:none!important}
  html.locked-mobile-page2-v143-transition{scroll-snap-type:none!important;overflow-anchor:none!important}
  html.locked-mobile-page2-v143-transition body{overflow-anchor:none!important}
  html.locked-mobile-page2-v143-returned-hero{scroll-snap-type:none!important;overflow-anchor:none!important}
  html.locked-mobile-page2-v143-returned-hero body{overflow-anchor:none!important}
  html.locked-mobile-page2-v143-returned-hero #approach{scroll-snap-align:none!important;scroll-snap-stop:normal!important}

  body.locked-mobile-page2-v143-active .site-header{
    transform:translate3d(0,-112%,0)!important;opacity:0!important;pointer-events:none!important;
    transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .14s ease!important
  }
  #approach.page-two-map{
    width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    overflow:hidden!important;touch-action:pan-y pinch-zoom!important;overscroll-behavior-y:auto!important;
    scroll-snap-align:start!important;scroll-snap-stop:always!important;isolation:isolate!important
  }
  body.locked-mobile-page2-v143-active #approach.page-two-map{
    position:fixed!important;inset:0!important;z-index:2147481000!important;
    width:100vw!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    margin:0!important;overflow:hidden!important;touch-action:none!important;overscroll-behavior:none!important;background:#050708!important
  }

  /* Preserve all approved Page-2 visual/animation layers. */
  #approach .page-two-map-viewport{position:absolute!important;inset:0!important;height:100dvh!important;overflow:hidden!important;background:#050708!important}
  #approach .page-two-world{display:block!important;visibility:visible!important;right:-28vw!important;width:max(140vw,560px)!important;min-width:560px!important;filter:saturate(1.02) contrast(1.01) brightness(.95)!important}
  #approach .page-two-route-svg,#approach .page-two-worker-team,#approach .page-two-weather,#approach .page-two-sunshine,#approach .page-two-birds,#approach .page-two-marker{display:block!important;visibility:visible!important}
  #approach .page-two-weather,#approach .page-two-sunshine,#approach .page-two-birds{height:100dvh!important}
  #approach .page-two-veil{z-index:5!important}
  #approach .page-two-story{z-index:7!important;left:18px!important;right:18px!important;top:auto!important;bottom:max(92px,calc(env(safe-area-inset-bottom,0px) + 76px))!important;width:auto!important;transform:none!important}
  #approach .page-two-progress{z-index:8!important;left:18px!important;bottom:max(46px,calc(env(safe-area-inset-bottom,0px) + 34px))!important}
  #approach .page-two-input-hint{z-index:8!important;right:18px!important;bottom:max(46px,calc(env(safe-area-inset-bottom,0px) + 34px))!important}
  #approach .page-two-worker{width:clamp(18px,5.2vw,24px)!important}

  /* Mobile-only paint/compositing containment. This does not alter desktop rendering. */
  .home-weather-canvas,.page-two-rain-canvas{contain:strict}
}
@media (max-width:520px){
  #approach .page-two-world{right:-32vw!important;width:max(150vw,560px)!important}
}

/* style-7-v145.css */
/* v1.4.5 adaptive performance layer. Functional motion is never removed. */
.systems-section,.layers-section,.numbers-section,.coverage-section,.project-section{
  content-visibility:auto;
  contain-intrinsic-size:auto 780px;
}
/* Release permanent GPU promotion when Page 2 is outside the active render zone. */
#approach:not(.locked-perf-active) .page-two-world,
#approach:not(.locked-perf-active) .page-two-van,
#approach:not(.locked-perf-active) .page-two-worker,
#approach:not(.locked-perf-active) .page-two-vegetation .veg,
#approach:not(.locked-perf-active) .page-two-marker,
#approach:not(.locked-perf-active) .page-two-property-dome,
#approach:not(.locked-perf-active) .page-two-weather,
#approach:not(.locked-perf-active) .page-two-lightning-flash,
#approach:not(.locked-perf-active) .page-two-sunshine,
#approach:not(.locked-perf-active) .page-two-bird,
#approach:not(.locked-perf-active) .page-two-chapter{
  will-change:auto!important;
}

/* Medium mobile tier: keep the same scene, but reduce the largest live backdrop blur surfaces. */
@media (max-width:1024px){
  html[data-locked-perf="medium"] .hero-right-blur{
    -webkit-backdrop-filter:blur(6px) saturate(.94) brightness(.86)!important;
    backdrop-filter:blur(6px) saturate(.94) brightness(.86)!important;
  }
  html[data-locked-perf="medium"] .page-two-veil{
    -webkit-backdrop-filter:blur(4px) saturate(.92)!important;
    backdrop-filter:blur(4px) saturate(.92)!important;
  }
  html[data-locked-perf="medium"] .page-two-entry-cue{
    -webkit-backdrop-filter:blur(3px) saturate(.86)!important;
    backdrop-filter:blur(3px) saturate(.86)!important;
  }
}

/* Low tier: preserve camera/truck/workers/repair/page transitions, remove only decorative GPU-heavy effects. */
html[data-locked-perf="low"] .home-weather-grain,
html[data-locked-perf="low"] .page-two-pond-shimmer,
html[data-locked-perf="low"] .page-two-birds,
html[data-locked-perf="low"] .page-two-sunshine::after{
  display:none!important;
}
html[data-locked-perf="low"] .home-wind-tree-stage{
  opacity:0!important;
  visibility:hidden!important;
}
html[data-locked-perf="low"] .hero-right-blur,
html[data-locked-perf="low"] .page-two-veil,
html[data-locked-perf="low"] .page-two-entry-cue,
html[data-locked-perf="low"] .page-two-property-lock{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-locked-perf="low"] .page-two-route-line,
html[data-locked-perf="low"] .page-two-worker,
html[data-locked-perf="low"] .page-two-vegetation .veg,
html[data-locked-perf="low"] .page-two-roof-damage-canvas{
  filter:none!important;
}
html[data-locked-perf="low"] .page-two-marker{
  filter:drop-shadow(0 0 9px rgba(84,218,255,.48))!important;
}
html[data-locked-perf="low"] .page-two-chapter,
html[data-locked-perf="low"] .page-two-chapter.is-active,
html[data-locked-perf="low"] .trust-intro,
html[data-locked-perf="low"] .trust-reveal-headline,
html[data-locked-perf="low"] .trust-reveal-word{
  filter:none!important;
}
html[data-locked-perf="low"] .page-two-van,
html[data-locked-perf="low"] .page-two-worker,
html[data-locked-perf="low"] .page-two-marker,
html[data-locked-perf="low"] .page-two-world{
  backface-visibility:hidden;
}
@media (max-width:600px){
  html[data-locked-perf="low"] .home-cloud.c5,
  html[data-locked-perf="low"] .home-cloud.c6,
  html[data-locked-perf="low"] .home-cloud.storm-extra{
    display:none!important;
  }
}
html[data-locked-perf="low"] .home-weather-atmos{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-locked-perf="low"] .home-cloud img,
html[data-locked-perf="low"] .home-weather-sun{
  filter:none!important;
}
html[data-locked-perf="low"] .home-weather-wet-sheen,
html[data-locked-perf="low"] .home-weather-lightning,
html[data-locked-perf="low"] .page-two-weather,
html[data-locked-perf="low"] .page-two-sunshine{
  mix-blend-mode:normal!important;
}
/* Bound layout/paint invalidation inside the two cinematic stages. */
@media (max-width:1024px){
  .home-hero-stage,.page-two-map-viewport{contain:layout paint}
}


/* v1.5.0 CTA modal isolation + adaptive overlay rendering.
   Runtime-only classes preserve semantic page content/SEO while preventing background work/overscroll. */
html.locked-cta-modal,html.locked-cta-modal body{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
html.locked-cta-modal main,html.locked-cta-modal footer{
  pointer-events:none!important;
}
.header-takeover.quote-flow-active,.header-takeover.emergency-flow-active{
  width:100vw;
  height:100dvh;
  min-height:100dvh;
  max-height:100dvh;
  contain:layout paint style;
  overscroll-behavior:none;
  background-clip:border-box;
}
.header-takeover.quote-flow-active .header-takeover-content,
.header-takeover.emergency-flow-active .header-takeover-content{
  height:100%;
  max-height:100%;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
/* Weak-device CTA tier: keep forms and functional transitions, simplify only decorative blur/light effects. */
html[data-locked-perf="low"] .header-takeover-char{filter:none!important}
html[data-locked-perf="low"] .header-takeover.mode-emergency::after{filter:none!important;opacity:.22}
html[data-locked-perf="low"] .header-takeover.mode-emergency::before{opacity:.16}
html[data-locked-perf="low"] .header-takeover-headline{text-shadow:none!important}
html[data-locked-perf="low"] .quote-flow-close{box-shadow:0 8px 24px rgba(0,0,0,.16)}

@media(max-width:760px){
  .header-takeover.quote-flow-active .header-takeover-content,
  .header-takeover.emergency-flow-active .header-takeover-content{
    box-sizing:border-box;
    padding-top:max(92px,calc(env(safe-area-inset-top,0px) + 78px));
    padding-bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 18px));
    overflow-y:auto;
    overflow-x:hidden;
  }
  .header-takeover.quote-flow-active .header-takeover-headline,
  .header-takeover.emergency-flow-active .header-takeover-headline{
    flex:0 0 auto;
    max-width:94vw;
  }
  .quote-flow-panel,.emergency-flow-panel{flex:0 0 auto;min-height:0}
  /* The service prompt is the longest quote prompt. Give it a compact dedicated type scale so it
     cannot collide with the options grid on narrow/short phones. */
  .header-takeover.quote-flow-active.quote-service-step .header-takeover-headline{
    width:92vw;
    min-height:auto;
    margin:0 auto 2px;
    font-size:clamp(25px,7.1vw,37px)!important;
    line-height:.96;
    row-gap:.03em;
  }
  .header-takeover.quote-flow-active.quote-service-step .quote-flow-panel{margin-top:4px}
  .header-takeover.quote-flow-active.quote-service-step .quote-service-grid{gap:7px;padding-bottom:4px}
  .header-takeover.quote-flow-active.quote-service-step .quote-service-box{min-height:46px;line-height:1.08}
}
@media(max-width:420px), (max-width:760px) and (max-height:720px){
  .header-takeover.quote-flow-active.quote-service-step .header-takeover-headline{
    font-size:clamp(22px,6.5vw,31px)!important;
  }
  .header-takeover.quote-flow-active.quote-service-step .quote-service-box{
    min-height:43px;font-size:15.5px;padding:8px 10px;
  }
}
/* Clicked flows must cover the viewport immediately. Hover previews keep their existing slide motion,
   but a real form activation never exposes the underlying page during takeover entry. */
.header-takeover.quote-flow-active,
.header-takeover.emergency-flow-active{
  transform:translate3d(0,0,0)!important;
  transition:none!important;
}
/* Active CTA forms must sit above the mobile fullscreen Page-2 lock and the header shell. */
.header-takeover.quote-flow-active,
.header-takeover.emergency-flow-active{z-index:2147483000!important}
/* Prevent new CSS animation loops from starting underneath an active CTA after the initial JS pause. */
html.locked-cta-background-paused main *,
html.locked-cta-background-paused footer *,
html.locked-cta-background-paused .site-header *{animation-play-state:paused!important}

/* v1.5.1 — Page 1 typography-only scale pass.
   Scope: service titles only + the desktop service rail's sizing envelope required to support the larger type.
   No navigation, animation, CTA, Page 2, SEO/content, or interaction logic changes. */
@media (min-width:1025px){
  .home-service-menu{
    right:clamp(24px,2.4vw,54px)!important;
    width:clamp(360px,30vw,590px)!important;
  }
  .home-service-link,
  .home-service-link:first-child,
  .home-service-link:last-child{
    min-height:clamp(64px,9.4vh,108px)!important;
  }
  .home-service-title{
    font-size:clamp(20px,min(2.15vw,3.15vh),40px)!important;
    line-height:1.04!important;
  }
}

@media (max-width:1024px){
  .home-service-title{
    font-size:clamp(15px,2.3vw,22px)!important;
    line-height:1.06!important;
  }
}

@media (max-width:600px){
  .home-service-title{
    font-size:clamp(14.5px,4vw,18px)!important;
    line-height:1.06!important;
  }
}

/* v1.5.2 — Page 1 composition / storm legibility / mobile house framing only.
   No scroll, animation, CTA, Page 2, SEO/content, or runtime-controller changes. */
@media (min-width:1025px){
  /* Storm/hail contrast backing: no backdrop-filter, so readability improves without adding a live blur/compositor cost. */
  .home-service-detail-main{position:relative!important;isolation:isolate!important}
  .home-service-detail-main::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-18px -20px -18px -18px;
    border:1px solid transparent;
    background:transparent;
    box-shadow:none;
    opacity:0;
    pointer-events:none;
    transition:opacity .22s ease,background-color .22s ease,border-color .22s ease;
  }
  .home-hero.weather-storm .home-service-detail-main::before,
  .home-hero.weather-hail .home-service-detail-main::before{
    opacity:1;
    border-color:rgba(255,255,255,.16);
    background:linear-gradient(108deg,rgba(5,9,13,.84) 0%,rgba(8,13,18,.80) 72%,rgba(8,13,18,.76) 100%);
    box-shadow:0 18px 45px rgba(0,0,0,.16);
  }
  .home-hero.weather-storm .home-service-detail-title,
  .home-hero.weather-hail .home-service-detail-title{ text-shadow:0 2px 12px rgba(0,0,0,.34)!important }
  .home-hero.weather-storm .home-service-detail-copy,
  .home-hero.weather-hail .home-service-detail-copy{ color:rgba(255,255,255,.94)!important }

}

/* Large desktop: keep house + editorial detail + service rail as one tighter composition instead of three distant islands. */
@media (min-width:1280px){
  /* Existing service descriptors become visible on roomy desktops to improve scanability/information scent without adding new content. */
  .home-service-meta{
    display:block!important;
    margin-top:5px!important;
    font-size:clamp(7px,.52vw,9px)!important;
    line-height:1.28!important;
    letter-spacing:.075em!important;
    opacity:.84!important;
  }
  .home-service-menu{
    right:clamp(54px,4.5vw,90px)!important;
    width:clamp(390px,29vw,520px)!important;
  }
  .home-service-detail{
    left:51.5%!important;
    right:calc(35vw + 12px)!important;
  }
  .home-service-link,
  .home-service-link:first-child,
  .home-service-link:last-child{
    min-height:clamp(76px,10.2vh,108px)!important;
  }
}

/* Mobile framing: shift the existing house composition down slightly so the roof peak is fully visible.
   Scale, image assets, animations and service-rail positions are unchanged. */
@media (max-width:1024px){
  .home-hero-media{top:31.5%!important}
}
@media (max-width:600px){
  .home-hero-media{top:30.5%!important}
}
@media (max-width:600px) and (max-height:700px){
  .home-hero-media{top:29.8%!important}
}

/* v1.5.3 — Page 1 scale/readability + desktop header CTA emphasis only.
   No navigation, scroll, Page 2, CTA flow, SEO/content, or runtime-controller changes. */
@media (min-width:1025px){
  /* House composition: 25% larger than the approved v1.5.2 desktop envelope.
     All category-specific alignment transforms remain untouched, so every house stays matched. */
  .home-hero-media{
    left:-1.2vw!important;
    width:min(68.75vw,1325px)!important;
  }

  /* Service rail: +25% title scale, with a responsive cap so six rows still fit the viewport. */
  .home-service-title{
    font-size:clamp(25px,min(2.6875vw,3.9375vh),50px)!important;
    line-height:1.02!important;
  }
  .home-service-link::before{transform:translateY(-50%) scale(1.18)!important;transform-origin:center!important}
  .home-service-link:hover::before,.home-service-link.is-hovered::before,.home-service-link:focus-visible::before{transform:translateY(-50%) translateX(2px) scale(1.18)!important}
  .home-service-arrow{font-size:17.5px!important;width:27px!important;height:27px!important}
  .home-service-meta{font-size:clamp(8.75px,.65vw,11.25px)!important;line-height:1.25!important}

  /* Hover/editorial UI: enlarge the actual readable content by ~25%, and give it enough horizontal room. */
  .home-service-detail{left:49%!important;right:calc(34vw + 24px)!important}
  .home-service-detail-title{font-size:clamp(35px,2.94vw,54px)!important;max-width:14ch!important}
  .home-service-detail-copy{font-size:15.625px!important;line-height:1.46!important;max-width:42ch!important}
  .home-service-detail-chips{gap:7px!important;margin-top:14px!important;max-width:46ch!important}
  .home-service-chip{min-height:34px!important;padding:0 14px!important;font-size:10px!important}
  .home-service-detail-stats{margin-top:15px!important}
  .home-service-stat{min-height:80px!important;padding-top:11px!important;padding-bottom:10px!important;gap:12px!important}
  .home-service-stat-value{font-size:clamp(25px,2vw,39px)!important}
  .home-service-stat-label{font-size:10px!important;line-height:1.25!important}

  /* Header non-logo copy: +25% while retaining the existing responsive header layout. */
  .header-phone{font-size:13.75px!important;gap:10px!important}
  .header-phone svg{width:18.75px!important;height:18.75px!important}
  .header-phone small{font-size:10px!important}
  .main-nav>a{font-size:15px!important;letter-spacing:.12em!important}
  .urgent-action strong{font-size:17.5px!important;letter-spacing:.045em!important}
  .urgent-action b{font-size:16.25px!important}
  .urgent-action{width:clamp(218px,15.5vw,258px)!important}

  /* Quote: keep the already-optimized hazard rail visibly moving on desktop at all times.
     Only transform/opacity animations are used. */
  .quote-action::before{animation:quoteHazardRail 1.35s linear infinite!important;animation-play-state:running!important}
  .quote-action::after{animation:quoteButtonGlowOpacity 2.65s ease-in-out infinite!important;animation-play-state:running!important}
  .quote-action strong{display:inline-block;transform-origin:center;animation:lockedQuoteTextBreath 2.4s ease-in-out infinite;will-change:transform}

  /* Emergency: solid red / white, with a slow compositor-only pulse instead of a high-frequency flash. */
  .emergency-action{
    background:#d91f31!important;
    border-color:#d91f31!important;
    color:#fff!important;
    isolation:isolate;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 0 0 rgba(217,31,49,0)!important;
  }
  .emergency-action strong,.emergency-action b{color:#fff!important;text-shadow:none!important}
  .emergency-action .urgent-pulse{background:#fff!important;box-shadow:0 0 0 0 rgba(255,255,255,.42)!important;animation:lockedEmergencyDotPulse 2.2s ease-in-out infinite!important}
  .emergency-action::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    background:#fff!important;
    opacity:0!important;
    pointer-events:none!important;
    z-index:1!important;
    transform:scale(.985)!important;
    animation:lockedEmergencyWash 2.2s ease-in-out infinite!important;
    will-change:transform,opacity;
  }
  .emergency-action strong{display:inline-block;transform-origin:center;animation:lockedEmergencyTextBreath 2.2s ease-in-out infinite;will-change:transform}
  @media(hover:hover) and (pointer:fine){
    .emergency-action:hover{background:#e32537!important;border-color:#e32537!important;box-shadow:0 10px 28px rgba(217,31,49,.20)!important}
  }
}

/* Mid-width desktop gets the same 25% text lift but tighter gaps so the header never overflows. */
@media (min-width:1101px) and (max-width:1450px){
  .header-phone{font-size:12.5px!important}
  .header-phone small{font-size:9px!important}
  .main-nav{gap:clamp(10px,1vw,15px)!important}
  .main-nav>a{font-size:12.5px!important;letter-spacing:.095em!important}
  .urgent-action{width:clamp(194px,14.3vw,218px)!important;padding-left:12px!important;padding-right:12px!important}
  .urgent-action strong{font-size:15px!important}
}

@keyframes lockedQuoteTextBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
@keyframes lockedEmergencyTextBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.022)}}
@keyframes lockedEmergencyWash{0%,100%{opacity:0;transform:scale(.985)}50%{opacity:.10;transform:scale(1)}}
@keyframes lockedEmergencyDotPulse{0%,100%{transform:scale(1);opacity:.92}50%{transform:scale(1.32);opacity:1}}

@media (prefers-reduced-motion:reduce){
  .quote-action::before,.quote-action::after,.quote-action strong,.emergency-action strong,.emergency-action::before,.emergency-action .urgent-pulse{animation:none!important}
}
/* v1.5.4 responsive-picture wrappers preserve the exact pre-optimization geometry. */
.home-cloud>picture{display:block;width:100%}
.home-yard-sign>picture{display:block;width:100%;height:100%}
.home-yard-sign>picture>img{width:100%;height:100%}


/* ========================================================================
   v1.5.5 — PAGE 1 VISUAL EXPERIMENT ONLY
   Same service anchors + same scroll/swipe controller. No gesture listeners added.
   ======================================================================== */
.home-hero .home-service-link[data-service="emergency-repairs"],.home-hero .home-service-detail[data-service="emergency-repairs"]{--svc:#e51f36;--svc-rgb:229,31,54}
.home-hero .home-service-link[data-service="roofing"],.home-hero .home-service-detail[data-service="roofing"]{--svc:#e59a16;--svc-rgb:229,154,22}
.home-hero .home-service-link[data-service="insulation"],.home-hero .home-service-detail[data-service="insulation"]{--svc:#18a95b;--svc-rgb:24,169,91}
.home-hero .home-service-link[data-service="drainage"],.home-hero .home-service-detail[data-service="drainage"]{--svc:#117ee8;--svc-rgb:17,126,232}
.home-hero .home-service-link[data-service="siding"],.home-hero .home-service-detail[data-service="siding"]{--svc:#a33be4;--svc-rgb:163,59,228}
.home-hero .home-service-link[data-service="structural"],.home-hero .home-service-detail[data-service="structural"]{--svc:#aa6a39;--svc-rgb:170,106,57}
.home-service-menu-head,.home-service-index,.home-service-mark{display:none}

@media(min-width:1025px){
  /* Header request: number ~2x previous size + compositor-only breathing. */
  .header-phone{font-size:27.5px!important;font-weight:760!important;line-height:.92!important;letter-spacing:-.02em!important;gap:11px!important;padding-left:15px!important;transform-origin:left center!important;animation:lockedPhoneBreath155 2.65s cubic-bezier(.45,0,.55,1) infinite!important;will-change:transform}
  .header-phone svg{width:24px!important;height:24px!important;stroke-width:1.65!important}
  .header-phone small{font-size:9px!important;margin-top:5px!important;letter-spacing:.12em!important}
  .header-inner{gap:clamp(14px,1.25vw,24px)!important}
  .main-nav{gap:clamp(10px,1.15vw,22px)!important}
  .main-nav>a{font-size:clamp(11px,.82vw,14px)!important;letter-spacing:.10em!important}
  .urgent-action{width:clamp(198px,13vw,230px)!important}

  /* Command rail: six choices stay exposed for discoverability. */
  .home-hero .home-service-menu{right:clamp(22px,2.1vw,42px)!important;top:12.7%!important;bottom:4.2%!important;width:clamp(350px,23vw,405px)!important;height:auto!important;max-height:none!important;display:flex!important;flex-direction:column!important;gap:3px!important;padding:0!important;overflow:visible!important;isolation:isolate!important}
  .home-hero .home-service-menu::after{content:"";position:absolute;z-index:-1;left:37px;top:36px;bottom:5px;width:1px;background:linear-gradient(180deg,rgba(12,15,18,.03),rgba(12,15,18,.22) 22%,rgba(12,15,18,.14) 80%,rgba(12,15,18,.02));pointer-events:none}
  .home-hero .home-service-menu-head{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:34px!important;padding:0 9px 5px 45px!important;border-bottom:1px solid rgba(10,12,14,.14)!important;color:rgba(11,13,16,.58)!important;font:750 8px/1 "Courier New",monospace!important;letter-spacing:.17em!important;text-transform:uppercase!important}
  .home-hero .home-service-menu-head b{color:rgba(11,13,16,.83)!important}
  .home-hero .home-service-link,.home-hero .home-service-link:first-child,.home-hero .home-service-link:last-child{--svc:#111820;--svc-rgb:17,24,32;position:relative!important;flex:1 1 0!important;min-height:74px!important;max-height:112px!important;padding:9px 11px 9px 7px!important;display:grid!important;grid-template-columns:31px 20px minmax(0,1fr) 28px!important;column-gap:9px!important;align-items:center!important;border:1px solid rgba(12,15,18,.08)!important;border-left:0!important;border-radius:0!important;background:linear-gradient(90deg,rgba(255,255,255,.68),rgba(255,255,255,.30) 70%,rgba(255,255,255,.03))!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:#11151a!important;opacity:1!important;overflow:hidden!important;transform:translateZ(0)!important;transition:transform .24s cubic-bezier(.2,.75,.2,1),background-color .2s ease,color .18s ease,border-color .2s ease,box-shadow .22s ease!important}
  .home-hero .home-service-link::before{content:""!important;display:block!important;position:absolute!important;z-index:2!important;left:0!important;top:50%!important;width:4px!important;height:74%!important;background:var(--svc)!important;border:0!important;border-radius:0 3px 3px 0!important;box-shadow:0 0 16px rgba(var(--svc-rgb),.16)!important;opacity:.8!important;transform:translateY(-50%) scaleY(.36)!important;transform-origin:center!important;transition:transform .24s cubic-bezier(.2,.75,.2,1),opacity .2s ease!important}
  .home-hero .home-service-link::after{content:""!important;display:block!important;position:absolute!important;z-index:0!important;inset:0!important;background:linear-gradient(92deg,rgba(var(--svc-rgb),.97),rgba(16,19,23,.96) 29%,rgba(16,19,23,.91) 75%,rgba(16,19,23,.60))!important;opacity:0!important;transform:translateX(8%)!important;pointer-events:none!important;transition:opacity .2s ease,transform .27s cubic-bezier(.2,.75,.2,1)!important}
  .home-hero .home-service-index,.home-hero .home-service-mark,.home-hero .home-service-copy,.home-hero .home-service-arrow{position:relative!important;z-index:2!important}
  .home-hero .home-service-index{display:block!important;justify-self:center!important;color:rgba(13,16,20,.46)!important;font:750 9px/1 "Courier New",monospace!important;letter-spacing:.08em!important;transition:color .18s ease,transform .22s ease!important}
  .home-hero .home-service-mark{display:flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:24px!important;color:var(--svc)!important;font:800 18px/1 "Segoe UI Symbol","Arial Unicode MS",Arial,sans-serif!important;transition:color .18s ease,transform .22s ease!important}
  .home-hero .home-service-copy{min-width:0!important;transform:none!important;transition:transform .22s ease!important}
  .home-hero .home-service-title{display:block!important;font-size:clamp(22px,1.78vw,32px)!important;line-height:.96!important;letter-spacing:-.006em!important;font-weight:720!important;text-wrap:balance!important}
  .home-hero .home-service-meta{display:block!important;margin-top:5px!important;color:rgba(17,20,24,.54)!important;font-size:clamp(7.2px,.50vw,9px)!important;line-height:1.25!important;letter-spacing:.075em!important;opacity:1!important;transition:color .18s ease!important}
  .home-hero .home-service-arrow{display:inline-flex!important;width:28px!important;height:28px!important;border:1px solid rgba(14,17,20,.13)!important;border-radius:50%!important;background:rgba(255,255,255,.46)!important;color:#111820!important;font-size:13px!important;transform:none!important;transition:transform .22s ease,background-color .18s ease,color .18s ease,border-color .18s ease!important}
  .home-hero .home-service-link:hover,.home-hero .home-service-link.is-hovered,.home-hero .home-service-link:focus-visible{color:#fff!important;border-color:rgba(var(--svc-rgb),.28)!important;background:#12171c!important;box-shadow:0 16px 35px rgba(8,12,16,.14)!important;transform:translateX(-10px) scale(1.012)!important;outline:none!important}
  .home-hero .home-service-link:hover::after,.home-hero .home-service-link.is-hovered::after,.home-hero .home-service-link:focus-visible::after{opacity:1!important;transform:translateX(0)!important}
  .home-hero .home-service-link:hover::before,.home-hero .home-service-link.is-hovered::before,.home-hero .home-service-link:focus-visible::before{opacity:1!important;transform:translateY(-50%) scaleY(1)!important}
  .home-hero .home-service-link:hover .home-service-index,.home-hero .home-service-link.is-hovered .home-service-index,.home-hero .home-service-link:focus-visible .home-service-index{color:rgba(255,255,255,.58)!important;transform:translateX(2px)!important}
  .home-hero .home-service-link:hover .home-service-mark,.home-hero .home-service-link.is-hovered .home-service-mark,.home-hero .home-service-link:focus-visible .home-service-mark{color:#fff!important;transform:scale(1.13)!important}
  .home-hero .home-service-link:hover .home-service-copy,.home-hero .home-service-link.is-hovered .home-service-copy,.home-hero .home-service-link:focus-visible .home-service-copy{transform:translateX(3px)!important}
  .home-hero .home-service-link:hover .home-service-meta,.home-hero .home-service-link.is-hovered .home-service-meta,.home-hero .home-service-link:focus-visible .home-service-meta{color:rgba(255,255,255,.70)!important}
  .home-hero .home-service-link:hover .home-service-arrow,.home-hero .home-service-link.is-hovered .home-service-arrow,.home-hero .home-service-link:focus-visible .home-service-arrow{color:#101419!important;background:#fff!important;border-color:#fff!important;transform:translateX(2px) rotate(45deg)!important}

  /* Wide hover UI: roughly 445–520px rather than the old narrow center slot. */
  .home-hero .home-service-detail{left:46.2%!important;right:auto!important;top:15.8%!important;bottom:auto!important;width:clamp(445px,28.5vw,520px)!important;max-width:calc(100vw - 455px)!important;max-height:71%!important;color:#11151a!important;transform:translateY(10px) scale(.985)!important;transform-origin:left top!important;transition:opacity .22s ease,transform .28s cubic-bezier(.2,.75,.2,1)!important}
  .home-hero .home-service-detail.is-visible{transform:translateY(0) scale(1)!important}
  .home-hero .home-service-detail-layout{position:relative!important;display:block!important;padding:24px 26px 21px 29px!important;background:linear-gradient(112deg,rgba(255,255,255,.97),rgba(248,250,251,.91))!important;border:1px solid rgba(12,15,18,.11)!important;border-left:4px solid var(--svc,#151b22)!important;box-shadow:0 24px 64px rgba(9,13,17,.12),0 2px 8px rgba(9,13,17,.05)!important;overflow:hidden!important}
  .home-hero .home-service-detail-layout::after{content:"SYSTEM DETAIL";position:absolute;right:16px;top:12px;color:rgba(13,16,20,.34);font:750 7px/1 "Courier New",monospace;letter-spacing:.18em}
  .home-hero .home-service-detail-main{position:relative!important;max-width:none!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
  .home-hero .home-service-detail-main::before{display:none!important}
  .home-hero .home-service-detail-title{max-width:17ch!important;padding-right:50px!important;font-size:clamp(38px,2.75vw,51px)!important;line-height:.91!important}
  .home-hero .home-service-detail-copy{margin-top:14px!important;max-width:52ch!important;font-size:16px!important;line-height:1.47!important}
  .home-hero .home-service-detail-chips{max-width:none!important;gap:7px!important;margin-top:15px!important}
  .home-hero .home-service-chip{min-height:32px!important;padding:0 12px!important;font-size:9px!important}
  .home-hero .home-service-detail-stats{margin-top:17px!important}
  .home-hero .home-service-stat{min-height:74px!important;padding:11px 12px 9px 0!important;gap:10px!important}
  .home-hero .home-service-stat:nth-child(even){padding-left:12px!important}
  .home-hero .home-service-stat-value{font-size:clamp(24px,1.75vw,34px)!important}
  .home-hero .home-service-stat-label{font-size:9px!important;line-height:1.24!important}

  .home-hero.weather-storm .home-service-menu-head,.home-hero.weather-hail .home-service-menu-head{color:rgba(255,255,255,.62)!important;border-color:rgba(255,255,255,.18)!important}
  .home-hero.weather-storm .home-service-menu-head b,.home-hero.weather-hail .home-service-menu-head b{color:#fff!important}
  .home-hero.weather-storm .home-service-link,.home-hero.weather-hail .home-service-link{color:#fff!important;border-color:rgba(255,255,255,.09)!important;background:linear-gradient(90deg,rgba(11,15,19,.30),rgba(11,15,19,.07) 72%,transparent)!important}
  .home-hero.weather-storm .home-service-meta,.home-hero.weather-hail .home-service-meta{color:rgba(255,255,255,.62)!important}
  .home-hero.weather-storm .home-service-index,.home-hero.weather-hail .home-service-index{color:rgba(255,255,255,.52)!important}
  .home-hero.weather-storm .home-service-detail-layout,.home-hero.weather-hail .home-service-detail-layout{color:#fff!important;background:linear-gradient(112deg,rgba(8,12,16,.96),rgba(14,19,24,.92))!important;border-color:rgba(255,255,255,.15)!important;border-left-color:var(--svc,#fff)!important;box-shadow:0 24px 64px rgba(0,0,0,.25)!important}
  .home-hero.weather-storm .home-service-detail-layout::after,.home-hero.weather-hail .home-service-detail-layout::after{color:rgba(255,255,255,.42)!important}
  .home-hero.weather-storm .home-service-detail-copy,.home-hero.weather-hail .home-service-detail-copy{color:rgba(255,255,255,.90)!important}
  @keyframes lockedPhoneBreath155{0%,100%{transform:scale(1)}50%{transform:scale(1.065)}}
}

/* Header title animations are explicitly desktop/fine-pointer only. */
@media(min-width:1025px) and (hover:hover) and (pointer:fine){
  .main-nav>a{isolation:isolate!important;padding:10px 4px!important;margin:-10px -4px!important;transform-origin:center!important;transition:transform .22s cubic-bezier(.2,.75,.2,1),opacity .18s ease!important}
  .main-nav>a::before{content:""!important;position:absolute!important;z-index:-1!important;inset:4px -7px!important;border-radius:2px!important;background:rgba(9,12,15,.065)!important;opacity:0!important;transform:scaleX(.55)!important;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.75,.2,1)!important}
  .main-nav>a::after{bottom:2px!important;height:2px!important;transform-origin:center!important}
  .main-nav>a:hover,.main-nav>a:focus-visible{opacity:1!important;transform:translateY(-2px) scale(1.065)!important;outline:none!important}
  .main-nav>a:hover::before,.main-nav>a:focus-visible::before{opacity:1!important;transform:scaleX(1)!important}
  .main-nav>a:hover::after,.main-nav>a:focus-visible::after{transform:scaleX(.72)!important}
  .header-phone:hover,.header-phone:focus-visible{animation-play-state:paused!important;transform:scale(1.075)!important;outline:none!important}
}

@media(min-width:1025px) and (max-width:1450px){
  .header-phone{font-size:25px!important;gap:9px!important;padding-left:10px!important}.header-phone svg{width:21px!important;height:21px!important}.header-phone small{font-size:8px!important}
  .main-nav{gap:clamp(6px,.70vw,10px)!important}.main-nav>a{font-size:10.25px!important;letter-spacing:.07em!important}
  .urgent-action{width:clamp(180px,12.7vw,200px)!important;padding-left:9px!important;padding-right:9px!important}.urgent-action strong{font-size:12.5px!important}
  .home-hero .home-service-menu{right:18px!important;width:340px!important}.home-hero .home-service-title{font-size:clamp(20px,1.95vw,27px)!important}
  .home-hero .home-service-detail{left:43.5%!important;width:clamp(405px,30vw,445px)!important;max-width:43vw!important}
}
@media(min-width:1025px) and (max-width:1220px){
  .home-hero .home-service-menu{right:14px!important;width:310px!important}
  .home-hero .home-service-detail{left:24px!important;right:auto!important;top:17%!important;width:clamp(385px,39vw,430px)!important;max-width:44vw!important}
  .home-hero .home-service-title{font-size:clamp(18px,2.05vw,24px)!important}
}

/* Mobile/tablet: same links, no new gesture/input behavior. */
@media(max-width:1024px){
  .home-hero .home-service-menu{left:10px!important;right:10px!important;top:auto!important;bottom:max(10px,env(safe-area-inset-bottom,0px))!important;width:auto!important;height:auto!important;max-height:32dvh!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:auto!important;gap:6px!important;padding:0!important;overflow:visible!important}
  .home-hero .home-service-menu-head{grid-column:1/-1!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:24px!important;padding:0 4px!important;color:rgba(11,14,17,.58)!important;font:750 7px/1 "Courier New",monospace!important;letter-spacing:.14em!important;text-transform:uppercase!important}.home-hero .home-service-menu-head span::after{content:" · TAP OR SWIPE";color:rgba(11,14,17,.38)}
  .home-hero .home-service-link,.home-hero .home-service-link:first-child,.home-hero .home-service-link:last-child{--svc:#111820;--svc-rgb:17,24,32;position:relative!important;min-height:58px!important;padding:7px!important;display:grid!important;grid-template-columns:23px 16px minmax(0,1fr)!important;column-gap:6px!important;align-items:center!important;border:1px solid rgba(10,13,16,.10)!important;border-radius:4px!important;background:rgba(250,251,252,.91)!important;box-shadow:0 4px 14px rgba(10,13,16,.045)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:#11151a!important;opacity:1!important;overflow:hidden!important;transform:none!important;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .2s ease!important}
  .home-hero .home-service-link::before{content:""!important;display:block!important;position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:3px!important;height:auto!important;background:var(--svc)!important;border:0!important;border-radius:0!important;opacity:.84!important;transform:none!important;box-shadow:none!important}
  .home-hero .home-service-link::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:linear-gradient(105deg,rgba(var(--svc-rgb),.96),rgba(17,21,26,.95) 56%,rgba(17,21,26,.91))!important;opacity:0!important;transform:translateX(5%)!important;transition:opacity .18s ease,transform .2s ease!important;pointer-events:none!important}
  .home-hero .home-service-index,.home-hero .home-service-mark,.home-hero .home-service-copy{position:relative!important;z-index:2!important}.home-hero .home-service-index{display:block!important;justify-self:center!important;color:rgba(15,18,22,.46)!important;font:750 8px/1 "Courier New",monospace!important}.home-hero .home-service-mark{display:flex!important;align-items:center!important;justify-content:center!important;color:var(--svc)!important;font:800 13px/1 "Segoe UI Symbol","Arial Unicode MS",Arial,sans-serif!important}.home-hero .home-service-copy{min-width:0!important;transform:none!important}
  .home-hero .home-service-title{font-size:clamp(12px,2.15vw,16px)!important;line-height:1.04!important;letter-spacing:.005em!important;font-weight:720!important}.home-hero .home-service-meta,.home-hero .home-service-arrow{display:none!important}
  .home-hero .home-service-link.is-hovered,.home-hero .home-service-link:focus-visible{color:#fff!important;border-color:rgba(var(--svc-rgb),.28)!important;background:#12171c!important;transform:scale(1.008)!important;outline:none!important}.home-hero .home-service-link.is-hovered::after,.home-hero .home-service-link:focus-visible::after{opacity:1!important;transform:translateX(0)!important}.home-hero .home-service-link.is-hovered .home-service-index,.home-hero .home-service-link:focus-visible .home-service-index{color:rgba(255,255,255,.58)!important}.home-hero .home-service-link.is-hovered .home-service-mark,.home-hero .home-service-link:focus-visible .home-service-mark{color:#fff!important}
  .home-hero .home-service-detail.is-visible{left:10px!important;right:10px!important;top:47%!important;bottom:auto!important;width:auto!important;max-width:none!important;max-height:21dvh!important;padding:0!important;background:transparent!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden!important}.home-hero .home-service-detail-layout{padding:10px 12px 9px 14px!important;background:rgba(252,253,253,.95)!important;border:1px solid rgba(9,12,15,.10)!important;border-left:3px solid var(--svc,#111820)!important;box-shadow:0 10px 28px rgba(8,12,16,.09)!important}.home-hero .home-service-detail-title{font-size:clamp(21px,4.1vw,31px)!important;line-height:.92!important;max-width:27ch!important}.home-hero .home-service-detail-copy{margin-top:6px!important;max-width:76ch!important;font-size:10.5px!important;line-height:1.34!important}.home-hero .home-service-detail-chips{margin-top:6px!important;gap:4px!important;max-width:none!important;white-space:nowrap!important;overflow:hidden!important}.home-hero .home-service-chip{min-height:21px!important;padding:0 7px!important;font-size:6px!important}.home-hero .home-service-detail-stats{display:none!important}
  .home-hero.weather-storm .home-service-menu-head,.home-hero.weather-hail .home-service-menu-head{color:rgba(255,255,255,.68)!important}.home-hero.weather-storm .home-service-menu-head span::after,.home-hero.weather-hail .home-service-menu-head span::after{color:rgba(255,255,255,.48)!important}.home-hero.weather-storm .home-service-link,.home-hero.weather-hail .home-service-link{background:rgba(9,13,17,.57)!important;border-color:rgba(255,255,255,.10)!important;color:#fff!important}.home-hero.weather-storm .home-service-index,.home-hero.weather-hail .home-service-index{color:rgba(255,255,255,.55)!important}.home-hero.weather-storm .home-service-detail-layout,.home-hero.weather-hail .home-service-detail-layout{background:rgba(8,12,16,.95)!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important;border-left-color:var(--svc,#fff)!important}
}
@media(max-width:600px){
  .home-hero .home-service-menu{left:8px!important;right:8px!important;gap:5px!important;max-height:31dvh!important}.home-hero .home-service-menu-head{min-height:21px!important;font-size:6.5px!important}
  .home-hero .home-service-link,.home-hero .home-service-link:first-child,.home-hero .home-service-link:last-child{min-height:54px!important;padding:6px!important;grid-template-columns:20px 14px minmax(0,1fr)!important;column-gap:5px!important}.home-hero .home-service-index{font-size:7px!important}.home-hero .home-service-mark{font-size:12px!important}.home-hero .home-service-title{font-size:clamp(11.5px,3.2vw,15px)!important;line-height:1.02!important}
  .home-hero .home-service-detail.is-visible{left:8px!important;right:8px!important;top:45.8%!important;max-height:20dvh!important}.home-hero .home-service-detail-layout{padding:9px 10px 8px 12px!important}.home-hero .home-service-detail-title{font-size:clamp(19px,5vw,27px)!important}.home-hero .home-service-detail-copy{font-size:9.5px!important;line-height:1.29!important}
}
@media(max-width:420px),(max-width:600px) and (max-height:720px){.home-hero .home-service-menu-head span::after{content:" · SWIPE"}.home-hero .home-service-link,.home-hero .home-service-link:first-child,.home-hero .home-service-link:last-child{min-height:50px!important}.home-hero .home-service-title{font-size:10.75px!important}.home-hero .home-service-detail.is-visible{top:43.5%!important;max-height:18dvh!important}.home-hero .home-service-detail-copy{font-size:8.8px!important}}
@media(prefers-reduced-motion:reduce){.header-phone{animation:none!important;will-change:auto!important}.main-nav>a,.main-nav>a::before,.main-nav>a::after,.home-hero .home-service-link,.home-hero .home-service-link::before,.home-hero .home-service-link::after,.home-hero .home-service-index,.home-hero .home-service-mark,.home-hero .home-service-copy,.home-hero .home-service-arrow,.home-hero .home-service-detail{transition:none!important}}

/* ========================================================================
   v1.5.6 — PAGE 1 "SIGNAL TRACE" SERVICE MATRIX
   Visual-only override. No wheel/touch/swipe/pointer listeners. No Page 2 selectors.
   Service colors are dormant at rest and appear ONLY on hover/focus/current selection.
   ======================================================================== */
@property --locked-trace-angle{
  syntax:"<angle>";
  inherits:false;
  initial-value:0deg;
}
@keyframes lockedTraceOrbit156{to{--locked-trace-angle:360deg}}
@keyframes lockedTraceSweep156{
  0%,13%{transform:translate3d(-175%,0,0) skewX(-13deg);opacity:0}
  22%{opacity:.78}
  58%{opacity:.55}
  72%,100%{transform:translate3d(430%,0,0) skewX(-13deg);opacity:0}
}
@keyframes lockedTraceNode156{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(var(--svc-rgb),0)}50%{transform:scale(1.16);box-shadow:0 0 0 6px rgba(var(--svc-rgb),.08)}}

@media(min-width:1025px){
  .home-hero .home-service-menu{
    perspective:1100px!important;
    gap:5px!important;
  }
  .home-hero .home-service-menu-head{
    min-height:37px!important;
    padding:0 10px 6px 47px!important;
    border-bottom:1px solid rgba(10,12,14,.16)!important;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.16) 42%,transparent)!important;
  }
  .home-hero .home-service-menu-head span{position:relative!important}
  .home-hero .home-service-menu-head span::before{
    content:"";position:absolute;left:-15px;top:50%;width:6px;height:6px;border:1px solid rgba(15,18,22,.50);border-radius:50%;transform:translateY(-50%);background:rgba(255,255,255,.74);box-shadow:0 0 0 3px rgba(15,18,22,.035)
  }

  /* REST STATE: entirely monochrome. No service hue leaks into unselected rows. */
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    min-height:76px!important;
    max-height:114px!important;
    padding:9px 12px 9px 8px!important;
    grid-template-columns:33px 22px minmax(0,1fr) 30px!important;
    column-gap:9px!important;
    border:1px solid rgba(12,15,18,.105)!important;
    border-left:1px solid rgba(12,15,18,.105)!important;
    background:
      linear-gradient(90deg,rgba(255,255,255,.79),rgba(255,255,255,.39) 72%,rgba(255,255,255,.13)),
      repeating-linear-gradient(90deg,transparent 0 23px,rgba(13,16,19,.022) 23px 24px)!important;
    color:#11151a!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.63)!important;
    opacity:1!important;
    isolation:isolate!important;
    overflow:hidden!important;
    transform:translate3d(0,0,0)!important;
    transform-origin:right center!important;
    will-change:transform;
    transition:transform .32s cubic-bezier(.16,.82,.24,1),opacity .22s ease,background-color .22s ease,color .2s ease,box-shadow .28s ease,border-color .22s ease!important;
  }
  .home-hero .home-service-link::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:4!important;
    inset:0!important;
    width:auto!important;height:auto!important;
    padding:2px!important;
    border:0!important;border-radius:0!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 244deg,rgba(var(--svc-rgb),.08) 258deg,var(--svc) 292deg,#fff 306deg,var(--svc) 320deg,transparent 342deg 360deg)!important;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
    -webkit-mask-composite:xor!important;
    mask-composite:exclude!important;
    box-shadow:none!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:none!important;
    transition:opacity .18s ease!important;
  }
  .home-hero .home-service-link::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    z-index:1!important;
    left:-42%!important;right:auto!important;top:-18%!important;bottom:-18%!important;
    width:35%!important;height:auto!important;
    background:linear-gradient(90deg,transparent 0%,rgba(var(--svc-rgb),.05) 18%,rgba(var(--svc-rgb),.30) 46%,rgba(255,255,255,.44) 51%,rgba(var(--svc-rgb),.16) 57%,transparent 100%)!important;
    filter:none!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translate3d(-175%,0,0) skewX(-13deg)!important;
  }
  .home-hero .home-service-index{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    justify-self:center!important;width:27px!important;height:27px!important;
    border:1px solid rgba(14,17,20,.12)!important;border-radius:50%!important;
    background:rgba(255,255,255,.26)!important;color:rgba(13,16,20,.48)!important;
    font:750 8.5px/1 "Courier New",monospace!important;letter-spacing:.035em!important;
    transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .28s cubic-bezier(.16,.82,.24,1),box-shadow .2s ease!important;
  }
  .home-hero .home-service-mark{
    color:rgba(13,17,21,.48)!important;
    width:21px!important;height:26px!important;
    font-size:17px!important;
    filter:grayscale(1)!important;
    transition:color .2s ease,transform .3s cubic-bezier(.16,.82,.24,1),filter .2s ease,text-shadow .2s ease!important;
  }
  .home-hero .home-service-title{transition:transform .3s cubic-bezier(.16,.82,.24,1),letter-spacing .26s ease,text-shadow .2s ease!important}
  .home-hero .home-service-meta{color:rgba(17,20,24,.50)!important;transition:color .2s ease,transform .3s cubic-bezier(.16,.82,.24,1),opacity .2s ease!important}
  .home-hero .home-service-arrow{
    border-color:rgba(14,17,20,.12)!important;background:rgba(255,255,255,.38)!important;color:#111820!important;
    transition:transform .3s cubic-bezier(.16,.82,.24,1),background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease!important;
  }

  /* When the pointer enters the matrix, the untouched rows recede instead of competing. */
  .home-hero .home-service-menu:has(.home-service-link:hover) .home-service-link:not(:hover){opacity:.64!important;transform:translate3d(8px,0,0) scale(.986)!important}

  /* ACTIVE/HOVER STATE: this is the only place service color becomes visible. */
  .home-hero .home-service-link:hover,
  .home-hero .home-service-link.is-hovered,
  .home-hero .home-service-link:focus-visible{
    color:#fff!important;
    border-color:transparent!important;
    background:
      radial-gradient(circle at 2% 50%,rgba(var(--svc-rgb),.17),transparent 37%),
      linear-gradient(96deg,#0d1115 0%,#11171c 54%,#171d22 100%)!important;
    box-shadow:0 18px 42px rgba(7,11,15,.18),0 0 28px rgba(var(--svc-rgb),.085),inset 0 1px 0 rgba(255,255,255,.05)!important;
    transform:translate3d(-15px,0,0) scale(1.022) rotateY(-.55deg)!important;
    outline:none!important;
    z-index:8!important;
  }
  .home-hero .home-service-link:hover::before,
  .home-hero .home-service-link.is-hovered::before,
  .home-hero .home-service-link:focus-visible::before{
    opacity:1!important;
    transform:none!important;
    animation:lockedTraceOrbit156 2.15s linear infinite!important;
  }
  .home-hero .home-service-link:hover::after,
  .home-hero .home-service-link.is-hovered::after,
  .home-hero .home-service-link:focus-visible::after{
    opacity:0!important;
    transform:translate3d(-175%,0,0) skewX(-13deg)!important;
    animation:lockedTraceSweep156 2.55s cubic-bezier(.22,.61,.36,1) infinite .14s!important;
  }
  .home-hero .home-service-link:hover .home-service-index,
  .home-hero .home-service-link.is-hovered .home-service-index,
  .home-hero .home-service-link:focus-visible .home-service-index{
    color:#fff!important;border-color:var(--svc)!important;background:rgba(var(--svc-rgb),.16)!important;
    transform:scale(1.08)!important;box-shadow:0 0 18px rgba(var(--svc-rgb),.20)!important;
    animation:lockedTraceNode156 1.8s ease-in-out infinite!important;
  }
  .home-hero .home-service-link:hover .home-service-mark,
  .home-hero .home-service-link.is-hovered .home-service-mark,
  .home-hero .home-service-link:focus-visible .home-service-mark{
    color:var(--svc)!important;filter:none!important;transform:scale(1.17) rotate(-4deg)!important;text-shadow:0 0 18px rgba(var(--svc-rgb),.32)!important;
  }
  .home-hero .home-service-link:hover .home-service-title,
  .home-hero .home-service-link.is-hovered .home-service-title,
  .home-hero .home-service-link:focus-visible .home-service-title{
    transform:translateX(5px)!important;letter-spacing:.004em!important;text-shadow:0 2px 16px rgba(0,0,0,.22)!important;
  }
  .home-hero .home-service-link:hover .home-service-meta,
  .home-hero .home-service-link.is-hovered .home-service-meta,
  .home-hero .home-service-link:focus-visible .home-service-meta{
    color:rgba(255,255,255,.66)!important;transform:translateX(5px)!important;
  }
  .home-hero .home-service-link:hover .home-service-arrow,
  .home-hero .home-service-link.is-hovered .home-service-arrow,
  .home-hero .home-service-link:focus-visible .home-service-arrow{
    color:#fff!important;background:rgba(var(--svc-rgb),.15)!important;border-color:var(--svc)!important;
    box-shadow:0 0 18px rgba(var(--svc-rgb),.17)!important;transform:translateX(1px) rotate(45deg) scale(1.06)!important;
  }

  /* The wide information card becomes part of the same selected-color circuit. */
  .home-hero .home-service-detail-layout{
    border:1px solid rgba(12,15,18,.12)!important;border-left:1px solid rgba(12,15,18,.12)!important;
    background:linear-gradient(116deg,rgba(255,255,255,.985),rgba(248,250,251,.925))!important;
    box-shadow:0 24px 64px rgba(9,13,17,.13),0 2px 8px rgba(9,13,17,.05),0 0 38px rgba(var(--svc-rgb),.045)!important;
    isolation:isolate!important;
  }
  .home-hero .home-service-detail-layout::before{
    content:""!important;display:block!important;position:absolute!important;z-index:5!important;inset:0!important;padding:1.5px!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 246deg,rgba(var(--svc-rgb),.06) 260deg,var(--svc) 298deg,#fff 307deg,var(--svc) 318deg,transparent 340deg 360deg)!important;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;-webkit-mask-composite:xor!important;mask-composite:exclude!important;
    opacity:.78!important;pointer-events:none!important;animation:lockedTraceOrbit156 3.1s linear infinite!important;
  }
  .home-hero .home-service-detail-layout::after{color:rgba(var(--svc-rgb),.70)!important}

  /* Storm mode remains monochrome until a row is actually selected/hovered. */
  .home-hero.weather-storm .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible),
  .home-hero.weather-hail .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible){
    border-color:rgba(255,255,255,.10)!important;background:linear-gradient(90deg,rgba(9,13,17,.42),rgba(9,13,17,.16) 72%,rgba(9,13,17,.04))!important;color:#fff!important;
  }
  .home-hero.weather-storm .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible) .home-service-index,
  .home-hero.weather-hail .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible) .home-service-index{border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.035)!important;color:rgba(255,255,255,.56)!important}
  .home-hero.weather-storm .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible) .home-service-mark,
  .home-hero.weather-hail .home-service-link:not(:hover):not(.is-hovered):not(:focus-visible) .home-service-mark{color:rgba(255,255,255,.58)!important;filter:grayscale(1)!important}
}

/* Mobile/tablet uses the same visual language, but the selected ring is calmer to protect paint cost. */
@media(max-width:1024px){
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    isolation:isolate!important;
    border:1px solid rgba(10,13,16,.11)!important;
    background:linear-gradient(110deg,rgba(252,253,253,.95),rgba(245,247,248,.89))!important;
    box-shadow:0 4px 14px rgba(10,13,16,.045),inset 0 1px 0 rgba(255,255,255,.72)!important;
    overflow:hidden!important;
  }
  .home-hero .home-service-link::before{
    content:""!important;display:block!important;position:absolute!important;z-index:4!important;inset:0!important;width:auto!important;height:auto!important;padding:1.5px!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 250deg,rgba(var(--svc-rgb),.07) 265deg,var(--svc) 300deg,#fff 309deg,var(--svc) 320deg,transparent 344deg 360deg)!important;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;-webkit-mask-composite:xor!important;mask-composite:exclude!important;
    opacity:0!important;border:0!important;border-radius:4px!important;box-shadow:none!important;transform:none!important;pointer-events:none!important;
  }
  .home-hero .home-service-link::after{
    content:""!important;display:block!important;position:absolute!important;z-index:1!important;left:-45%!important;right:auto!important;top:-20%!important;bottom:-20%!important;width:38%!important;height:auto!important;
    background:linear-gradient(90deg,transparent,rgba(var(--svc-rgb),.20),rgba(255,255,255,.38),rgba(var(--svc-rgb),.10),transparent)!important;
    opacity:0!important;transform:translate3d(-165%,0,0) skewX(-13deg)!important;pointer-events:none!important;
  }
  .home-hero .home-service-index{border:1px solid rgba(15,18,21,.10)!important;border-radius:50%!important;background:rgba(255,255,255,.30)!important;color:rgba(15,18,22,.48)!important}
  .home-hero .home-service-mark{color:rgba(15,18,22,.48)!important;filter:grayscale(1)!important}

  .home-hero .home-service-link.is-hovered,
  .home-hero .home-service-link:focus-visible{
    color:#fff!important;border-color:transparent!important;
    background:radial-gradient(circle at 0 50%,rgba(var(--svc-rgb),.15),transparent 42%),linear-gradient(105deg,#0e1317,#171d22)!important;
    box-shadow:0 10px 26px rgba(8,12,16,.13),0 0 20px rgba(var(--svc-rgb),.07)!important;
    transform:scale(1.012)!important;outline:none!important;
  }
  .home-hero .home-service-link.is-hovered::before,
  .home-hero .home-service-link:focus-visible::before{opacity:1!important;animation:lockedTraceOrbit156 3.2s linear infinite!important}
  .home-hero .home-service-link.is-hovered::after,
  .home-hero .home-service-link:focus-visible::after{animation:lockedTraceSweep156 3.1s ease-in-out infinite .2s!important}
  .home-hero .home-service-link.is-hovered .home-service-index,
  .home-hero .home-service-link:focus-visible .home-service-index{color:#fff!important;border-color:var(--svc)!important;background:rgba(var(--svc-rgb),.14)!important}
  .home-hero .home-service-link.is-hovered .home-service-mark,
  .home-hero .home-service-link:focus-visible .home-service-mark{color:var(--svc)!important;filter:none!important;text-shadow:0 0 14px rgba(var(--svc-rgb),.25)!important}
  .home-hero .home-service-detail-layout{border:1px solid rgba(9,12,15,.11)!important;border-left:1px solid rgba(9,12,15,.11)!important;isolation:isolate!important}
  .home-hero .home-service-detail-layout::before{
    content:""!important;display:block!important;position:absolute!important;z-index:5!important;inset:0!important;padding:1px!important;
    background:linear-gradient(90deg,var(--svc),rgba(var(--svc-rgb),.08) 35%,transparent 70%)!important;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;-webkit-mask-composite:xor!important;mask-composite:exclude!important;
    opacity:.74!important;pointer-events:none!important;
  }
  .home-hero.weather-storm .home-service-link:not(.is-hovered):not(:focus-visible),
  .home-hero.weather-hail .home-service-link:not(.is-hovered):not(:focus-visible){background:rgba(9,13,17,.57)!important;border-color:rgba(255,255,255,.10)!important;color:#fff!important}
  .home-hero.weather-storm .home-service-link:not(.is-hovered):not(:focus-visible) .home-service-mark,
  .home-hero.weather-hail .home-service-link:not(.is-hovered):not(:focus-visible) .home-service-mark{color:rgba(255,255,255,.58)!important;filter:grayscale(1)!important}
}

@media(prefers-reduced-motion:reduce){
  .home-hero .home-service-link::before,.home-hero .home-service-link::after,.home-hero .home-service-detail-layout::before,.home-hero .home-service-index{animation:none!important}
}

/* ========================================================================
   v1.5.7 — PAGE 1 RESPONSIVE UI SCALE
   Presentation only. No wheel/touch/swipe/pointer/scroll controller changes.
   Large desktops use both vw + dvh so the matrix grows into available space.
   Mobile/tablet uses a separate larger 2x3 deck + larger detail typography.
   ======================================================================== */

/* Large / full-screen desktop: remove the old visual dead zone without
   making ordinary laptop/windowed layouts balloon. */
@media (min-width:1900px){
  .home-hero{
    --v157-rail-w:clamp(450px,21.5vw,820px);
    --v157-rail-right:clamp(30px,2vw,78px);
    --v157-ui-gap:clamp(34px,2.5vw,96px);
  }
  .home-hero .home-service-menu{
    right:var(--v157-rail-right)!important;
    top:11.4%!important;
    bottom:auto!important;
    width:var(--v157-rail-w)!important;
    height:clamp(720px,76dvh,1420px)!important;
    max-height:82dvh!important;
    gap:clamp(4px,.38dvh,7px)!important;
  }
  .home-hero .home-service-menu-head{
    min-height:clamp(38px,3.4dvh,58px)!important;
    padding:0 clamp(11px,.7vw,20px) clamp(6px,.6dvh,10px) clamp(49px,3vw,72px)!important;
    font-size:clamp(8.5px,.46vw,12px)!important;
    letter-spacing:.18em!important;
  }
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    padding:clamp(11px,1.05dvh,19px) clamp(13px,.85vw,23px) clamp(11px,1.05dvh,19px) clamp(9px,.55vw,17px)!important;
    grid-template-columns:clamp(34px,2vw,52px) clamp(23px,1.35vw,36px) minmax(0,1fr) clamp(31px,1.75vw,46px)!important;
    column-gap:clamp(9px,.62vw,17px)!important;
  }
  .home-hero .home-service-index{
    width:clamp(29px,1.55vw,42px)!important;
    height:clamp(29px,1.55vw,42px)!important;
    font-size:clamp(9px,.48vw,12px)!important;
  }
  .home-hero .home-service-mark{
    width:clamp(23px,1.35vw,36px)!important;
    height:clamp(28px,1.65vw,42px)!important;
    font-size:clamp(18px,1.08vw,28px)!important;
  }
  .home-hero .home-service-title{
    font-size:clamp(30px,1.65vw,46px)!important;
    line-height:.95!important;
  }
  .home-hero .home-service-meta{
    margin-top:clamp(5px,.48dvh,9px)!important;
    font-size:clamp(8.5px,.46vw,12px)!important;
    line-height:1.28!important;
  }
  .home-hero .home-service-arrow{
    width:clamp(31px,1.7vw,44px)!important;
    height:clamp(31px,1.7vw,44px)!important;
    font-size:clamp(13px,.72vw,18px)!important;
  }

  /* The detail card scales into the space between house and rail instead of
     retaining a fixed 520px desktop ceiling. */
  .home-hero .home-service-detail{
    left:45%!important;
    right:auto!important;
    top:14.6%!important;
    width:min(clamp(540px,28vw,1080px),calc(55vw - var(--v157-rail-w) - var(--v157-ui-gap)))!important;
    max-width:none!important;
    max-height:74dvh!important;
  }
  .home-hero .home-service-detail-layout{
    padding:clamp(22px,1.7vw,42px) clamp(24px,1.9vw,48px) clamp(20px,1.5vw,38px)!important;
  }
  .home-hero .home-service-detail-title{
    font-size:clamp(48px,2.5vw,68px)!important;
    line-height:.91!important;
    max-width:13.5ch!important;
  }
  .home-hero .home-service-detail-copy{
    margin-top:clamp(10px,.8dvh,16px)!important;
    font-size:clamp(16px,.86vw,22px)!important;
    line-height:1.43!important;
    max-width:46ch!important;
  }
  .home-hero .home-service-detail-chips{
    margin-top:clamp(12px,1dvh,19px)!important;
    gap:clamp(7px,.45vw,12px)!important;
    max-width:50ch!important;
  }
  .home-hero .home-service-chip{
    min-height:clamp(34px,2.2vw,48px)!important;
    padding:0 clamp(13px,.8vw,21px)!important;
    font-size:clamp(9.5px,.50vw,13px)!important;
  }
  .home-hero .home-service-detail-stats{margin-top:clamp(14px,1.1dvh,22px)!important}
  .home-hero .home-service-stat{min-height:clamp(78px,7dvh,118px)!important;padding:clamp(11px,1dvh,18px) clamp(8px,.7vw,16px)!important}
  .home-hero .home-service-stat-value{font-size:clamp(28px,1.75vw,46px)!important}
  .home-hero .home-service-stat-label{font-size:clamp(9px,.48vw,12.5px)!important;line-height:1.25!important}
}

/* Tall desktop monitors get vertical growth even when OS scaling leaves the
   CSS viewport a little narrower than the large-width breakpoint. */
@media (min-width:1500px) and (min-height:1200px) and (max-width:1899px){
  .home-hero .home-service-menu{
    top:11.8%!important;
    bottom:auto!important;
    height:min(76dvh,1040px)!important;
    max-height:80dvh!important;
  }
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{max-height:none!important;min-height:0!important;flex:1 1 0!important}
}

/* Mobile/tablet: larger categories AND larger selected-service UI. This only
   changes layout/type; the existing mobile swipe/scroll JS remains untouched. */
@media (max-width:1024px){
  .home-hero .home-service-menu{
    left:clamp(10px,2.1vw,18px)!important;
    right:clamp(10px,2.1vw,18px)!important;
    bottom:max(12px,env(safe-area-inset-bottom,0px))!important;
    max-height:38dvh!important;
    gap:clamp(6px,1.15vw,10px)!important;
  }
  .home-hero .home-service-menu-head{
    min-height:clamp(27px,3.5vw,36px)!important;
    padding:0 clamp(5px,1vw,10px)!important;
    font-size:clamp(7.5px,1.15vw,10px)!important;
    letter-spacing:.145em!important;
  }
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    min-height:clamp(64px,8.3dvh,84px)!important;
    padding:clamp(8px,1.3vw,13px)!important;
    grid-template-columns:clamp(25px,3.4vw,34px) clamp(18px,2.5vw,26px) minmax(0,1fr)!important;
    column-gap:clamp(6px,1vw,11px)!important;
    border-radius:5px!important;
  }
  .home-hero .home-service-index{
    width:clamp(23px,3.2vw,31px)!important;
    height:clamp(23px,3.2vw,31px)!important;
    font-size:clamp(8px,1.15vw,10px)!important;
  }
  .home-hero .home-service-mark{
    width:clamp(18px,2.5vw,25px)!important;
    height:clamp(22px,3vw,30px)!important;
    font-size:clamp(14px,2vw,19px)!important;
  }
  .home-hero .home-service-title{
    font-size:clamp(14px,2.75vw,20px)!important;
    line-height:1.01!important;
    letter-spacing:0!important;
  }

  .home-hero .home-service-detail.is-visible{
    left:clamp(10px,2.1vw,18px)!important;
    right:clamp(10px,2.1vw,18px)!important;
    top:44.2%!important;
    width:auto!important;
    max-width:none!important;
    max-height:26dvh!important;
  }
  .home-hero .home-service-detail-layout{
    padding:clamp(13px,2.1vw,20px) clamp(14px,2.4vw,23px) clamp(12px,1.9vw,18px)!important;
  }
  .home-hero .home-service-detail-title{
    font-size:clamp(24px,5vw,39px)!important;
    line-height:.91!important;
    max-width:24ch!important;
  }
  .home-hero .home-service-detail-copy{
    margin-top:clamp(7px,1.1vw,11px)!important;
    font-size:clamp(11px,1.75vw,14px)!important;
    line-height:1.34!important;
    max-width:72ch!important;
  }
  .home-hero .home-service-detail-chips{
    margin-top:clamp(7px,1.2vw,11px)!important;
    gap:clamp(5px,.8vw,8px)!important;
  }
  .home-hero .home-service-chip{
    min-height:clamp(25px,3.4vw,33px)!important;
    padding:0 clamp(8px,1.4vw,13px)!important;
    font-size:clamp(7px,1vw,9px)!important;
  }
}

/* Phones: keep the larger scale, with enough room between detail panel and
   the 2x3 category deck. */
@media (max-width:600px){
  .home-hero .home-service-menu{
    left:8px!important;
    right:8px!important;
    gap:6px!important;
    max-height:39dvh!important;
  }
  .home-hero .home-service-menu-head{min-height:26px!important;font-size:7.5px!important}
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    min-height:64px!important;
    padding:8px!important;
    grid-template-columns:24px 17px minmax(0,1fr)!important;
    column-gap:6px!important;
  }
  .home-hero .home-service-index{width:23px!important;height:23px!important;font-size:8px!important}
  .home-hero .home-service-mark{font-size:14px!important}
  .home-hero .home-service-title{font-size:clamp(13.5px,3.65vw,17px)!important;line-height:1!important}
  .home-hero .home-service-detail.is-visible{left:8px!important;right:8px!important;top:43.2%!important;max-height:24dvh!important}
  .home-hero .home-service-detail-layout{padding:12px 13px 11px 15px!important}
  .home-hero .home-service-detail-title{font-size:clamp(23px,6.15vw,31px)!important}
  .home-hero .home-service-detail-copy{font-size:clamp(10.75px,2.75vw,12.5px)!important;line-height:1.31!important}
  .home-hero .home-service-chip{min-height:24px!important;padding:0 8px!important;font-size:6.8px!important}
}

/* Short phones: still larger than v1.5.6, but cap vertical growth to avoid
   detail/menu overlap on ~667–720px-tall viewports. */
@media (max-width:600px) and (max-height:720px){
  .home-hero .home-service-menu{max-height:38dvh!important;gap:5px!important}
  .home-hero .home-service-menu-head{min-height:23px!important;font-size:7px!important}
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{min-height:58px!important;padding:7px!important}
  .home-hero .home-service-title{font-size:clamp(12.5px,3.4vw,15px)!important}
  .home-hero .home-service-detail.is-visible{top:40.2%!important;max-height:18.5dvh!important}
  .home-hero .home-service-detail-layout{padding:10px 11px 9px 13px!important}
  .home-hero .home-service-detail-title{font-size:clamp(21px,5.6vw,27px)!important}
  .home-hero .home-service-detail-copy{font-size:10.25px!important;line-height:1.27!important}
  .home-hero .home-service-chip{min-height:22px!important;font-size:6.4px!important}
}

/* ========================================================================
   v1.5.9 — RESPONSIVE VIEWPORT SCALE + ACCESSIBLE HEADER TARGETS
   Breakpoints are based on the CSS viewport/content fit, not monitor inches.
   Page-1 presentation only; no scroll/swipe/page-seat controller changes.
   ======================================================================== */

/* Header controls: meet comfortable target sizing without changing the desktop composition. */
@media (min-width:1025px){
  .main-nav>a{
    min-height:44px!important;
    padding-inline:5px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .header-phone{
    min-height:48px!important;
    padding-block:5px!important;
  }
  .urgent-action{
    min-height:48px!important;
  }
}

/* Mobile: use the open space opposite the logo for the same animated call number.
   This does not alter the mobile nav row or any gesture/input behavior. */
@media (max-width:1024px){
  .logo-link picture{display:block!important;width:100%!important;height:100%!important}
  .logo-link picture>img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important}
  .header-phone{
    display:inline-flex!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:4px 2px 4px 8px!important;
    border-left:0!important;
    gap:clamp(6px,1.4vw,9px)!important;
    color:#111!important;
    font-size:clamp(16px,3.9vw,22px)!important;
    font-weight:780!important;
    line-height:1!important;
    letter-spacing:-.025em!important;
    transform-origin:right center!important;
    animation:lockedPhoneBreath155 2.65s cubic-bezier(.45,0,.55,1) infinite!important;
    will-change:transform!important;
    white-space:nowrap!important;
  }
  .header-phone svg{
    width:clamp(15px,3.2vw,19px)!important;
    height:clamp(15px,3.2vw,19px)!important;
    flex:0 0 auto!important;
  }
  .header-phone small{display:none!important}
}
@media (max-width:380px){
  .header-phone{font-size:15px!important;gap:5px!important;padding-left:4px!important}
  .header-phone svg{width:14px!important;height:14px!important}
}

/* From this range onward, stop constraining Page 1 to the old 1680px desktop canvas.
   This is the fix for the large blank zone on full-screen desktop monitors. */
@media (min-width:1800px){
  .home-hero-stage{
    left:0!important;
    width:100vw!important;
    max-width:none!important;
    transform:none!important;
  }
}

/* Large desktop / approximately the user's full-screen class.
   More of the viewport is devoted to the service matrix and information card. */
@media (min-width:1800px) and (max-width:2399px){
  .home-hero{
    --v158-rail-w:clamp(520px,25.5vw,620px);
    --v158-rail-right:clamp(22px,1.7vw,42px);
    --v158-detail-gap:clamp(34px,2vw,54px);
  }
  .home-hero .home-service-menu{
    right:var(--v158-rail-right)!important;
    top:9.8%!important;
    bottom:auto!important;
    width:var(--v158-rail-w)!important;
    height:clamp(760px,79dvh,1160px)!important;
    max-height:84dvh!important;
    gap:clamp(4px,.45dvh,8px)!important;
  }
  .home-hero .home-service-menu-head{
    min-height:clamp(42px,4dvh,58px)!important;
    padding:0 16px 8px 62px!important;
    font-size:clamp(10px,.54vw,13px)!important;
  }
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    padding:clamp(13px,1.2dvh,20px) clamp(16px,1vw,24px) clamp(13px,1.2dvh,20px) 12px!important;
    grid-template-columns:clamp(40px,2.25vw,50px) clamp(28px,1.55vw,36px) minmax(0,1fr) clamp(38px,2vw,46px)!important;
    column-gap:clamp(11px,.72vw,17px)!important;
  }
  .home-hero .home-service-index{
    width:clamp(34px,1.8vw,42px)!important;
    height:clamp(34px,1.8vw,42px)!important;
    font-size:clamp(10px,.52vw,12px)!important;
  }
  .home-hero .home-service-mark{
    width:clamp(27px,1.45vw,35px)!important;
    height:clamp(34px,1.8vw,43px)!important;
    font-size:clamp(21px,1.12vw,27px)!important;
  }
  .home-hero .home-service-title{
    font-size:clamp(34px,2.02vw,48px)!important;
    line-height:.95!important;
  }
  .home-hero .home-service-meta{
    margin-top:clamp(6px,.6dvh,10px)!important;
    font-size:clamp(10px,.53vw,12px)!important;
    line-height:1.3!important;
  }
  .home-hero .home-service-arrow{
    width:clamp(36px,1.9vw,45px)!important;
    height:clamp(36px,1.9vw,45px)!important;
    font-size:clamp(14px,.75vw,18px)!important;
  }
  .home-hero .home-service-detail{
    left:42.5%!important;
    right:calc(var(--v158-rail-w) + var(--v158-rail-right) + var(--v158-detail-gap))!important;
    top:13.5%!important;
    width:auto!important;
    max-width:none!important;
    max-height:76dvh!important;
  }
  .home-hero .home-service-detail-layout{
    padding:clamp(28px,1.65vw,38px) clamp(30px,1.8vw,42px) clamp(25px,1.5vw,35px)!important;
  }
  .home-hero .home-service-detail-title{
    font-size:clamp(56px,3vw,70px)!important;
    line-height:.90!important;
    max-width:13.5ch!important;
  }
  .home-hero .home-service-detail-copy{
    margin-top:clamp(12px,1dvh,18px)!important;
    font-size:clamp(17px,.95vw,21px)!important;
    line-height:1.44!important;
    max-width:48ch!important;
  }
  .home-hero .home-service-detail-chips{margin-top:15px!important;gap:8px!important}
  .home-hero .home-service-chip{min-height:38px!important;padding:0 16px!important;font-size:11px!important}
  .home-hero .home-service-stat{min-height:88px!important;padding:13px 10px!important}
  .home-hero .home-service-stat-value{font-size:clamp(34px,1.85vw,42px)!important}
  .home-hero .home-service-stat-label{font-size:11px!important}
}

/* XL desktop: this is the deliberate near-2x UI tier for viewports beyond the
   user's normal desktop class. It scales the rail, card and type together. */
@media (min-width:2400px){
  .home-hero{
    --v158-xl-rail:clamp(760px,28vw,1120px);
    --v158-xl-right:clamp(34px,2vw,78px);
    --v158-xl-gap:clamp(58px,2.8vw,110px);
  }
  .home-hero .home-service-menu{
    right:var(--v158-xl-right)!important;
    top:7.5%!important;
    bottom:auto!important;
    width:var(--v158-xl-rail)!important;
    height:clamp(900px,84dvh,1700px)!important;
    max-height:88dvh!important;
    gap:clamp(6px,.55dvh,11px)!important;
  }
  .home-hero .home-service-menu-head{
    min-height:clamp(56px,4.6dvh,82px)!important;
    padding:0 clamp(20px,1vw,34px) clamp(9px,.7dvh,14px) clamp(86px,3.4vw,130px)!important;
    font-size:clamp(13px,.58vw,19px)!important;
    letter-spacing:.18em!important;
  }
  .home-hero .home-service-link,
  .home-hero .home-service-link:first-child,
  .home-hero .home-service-link:last-child{
    flex:1 1 0!important;
    min-height:0!important;
    max-height:none!important;
    padding:clamp(18px,1.55dvh,30px) clamp(24px,1.2vw,42px) clamp(18px,1.55dvh,30px) clamp(16px,.7vw,28px)!important;
    grid-template-columns:clamp(56px,2.25vw,84px) clamp(40px,1.55vw,62px) minmax(0,1fr) clamp(52px,2vw,76px)!important;
    column-gap:clamp(16px,.82vw,28px)!important;
  }
  .home-hero .home-service-index{
    width:clamp(48px,1.85vw,70px)!important;
    height:clamp(48px,1.85vw,70px)!important;
    font-size:clamp(13px,.54vw,19px)!important;
  }
  .home-hero .home-service-mark{
    width:clamp(40px,1.55vw,60px)!important;
    height:clamp(50px,1.9vw,72px)!important;
    font-size:clamp(31px,1.22vw,47px)!important;
  }
  .home-hero .home-service-title{
    font-size:clamp(48px,1.72vw,72px)!important;
    line-height:.93!important;
  }
  .home-hero .home-service-meta{
    margin-top:clamp(8px,.7dvh,14px)!important;
    font-size:clamp(13px,.50vw,18px)!important;
    line-height:1.3!important;
  }
  .home-hero .home-service-arrow{
    width:clamp(50px,1.9vw,72px)!important;
    height:clamp(50px,1.9vw,72px)!important;
    font-size:clamp(20px,.8vw,29px)!important;
  }
  .home-hero .home-service-detail{
    left:35.5%!important;
    right:calc(var(--v158-xl-rail) + var(--v158-xl-right) + var(--v158-xl-gap))!important;
    top:10.5%!important;
    width:auto!important;
    max-width:none!important;
    max-height:80dvh!important;
  }
  .home-hero .home-service-detail-layout{
    padding:clamp(42px,2vw,76px) clamp(46px,2.2vw,84px) clamp(38px,1.8vw,68px)!important;
  }
  .home-hero .home-service-detail-title{
    font-size:clamp(76px,2.75vw,112px)!important;
    line-height:.88!important;
    max-width:13ch!important;
  }
  .home-hero .home-service-detail-copy{
    margin-top:clamp(17px,1.1dvh,26px)!important;
    font-size:clamp(21px,.78vw,30px)!important;
    line-height:1.43!important;
    max-width:48ch!important;
  }
  .home-hero .home-service-detail-chips{margin-top:clamp(18px,1dvh,28px)!important;gap:clamp(10px,.5vw,16px)!important}
  .home-hero .home-service-chip{min-height:clamp(46px,1.8vw,66px)!important;padding:0 clamp(20px,.9vw,34px)!important;font-size:clamp(13px,.5vw,18px)!important}
  .home-hero .home-service-detail-stats{margin-top:clamp(20px,1.2dvh,32px)!important}
  .home-hero .home-service-stat{min-height:clamp(110px,8dvh,160px)!important;padding:clamp(17px,1.1dvh,25px) clamp(14px,.65vw,24px)!important}
  .home-hero .home-service-stat-value{font-size:clamp(48px,1.9vw,72px)!important}
  .home-hero .home-service-stat-label{font-size:clamp(13px,.48vw,18px)!important;line-height:1.25!important}
}

/* Very wide 4K-class CSS viewports can use still more horizontal room without
   making the text grow indefinitely. */
@media (min-width:3200px){
  .home-hero{--v158-xl-rail:clamp(980px,29vw,1220px);--v158-xl-gap:clamp(90px,3vw,140px)}
  .home-hero .home-service-detail{left:33.5%!important}
}

@media (prefers-reduced-motion:reduce){
  .header-phone{animation:none!important;will-change:auto!important}
}


/* v1.5.9 performance/accessibility hardening — presentation only; input/navigation rules unchanged. */
/* Lighthouse flagged background-position animations as non-composited. Keep the same moving sheen/wind impression on transform-only pseudo layers. */
.home-weather-wind,.home-hero.weather-sun .home-weather-wet-sheen{animation:none!important;background-position:0 0!important;overflow:hidden}
.home-weather-wind::before,.home-hero.weather-sun .home-weather-wet-sheen::before{content:"";position:absolute;inset:-12% -35%;pointer-events:none;will-change:transform,opacity}
.home-weather-wind::before{background:inherit;opacity:.9;transform:translate3d(-10%,0,0)}
.home-hero.weather-sun .home-weather-wet-sheen::before{background:inherit;opacity:.75;transform:translate3d(-8%,0,0)}
.locked-weather-active .home-weather-wind::before{animation:lockedWindCompositor 8s linear infinite}
.locked-weather-active .home-hero.weather-sun .home-weather-wet-sheen::before{animation:lockedSheenCompositor 11s ease-in-out infinite}
@keyframes lockedWindCompositor{0%{transform:translate3d(-12%,0,0)}100%{transform:translate3d(12%,0,0)}}
@keyframes lockedSheenCompositor{0%,100%{transform:translate3d(-9%,0,0);opacity:.52}50%{transform:translate3d(9%,0,0);opacity:.78}}
/* Lighthouse desktop contrast audit: keep the quiet visual hierarchy, but move these labels above WCAG AA contrast. */
.systems-section .micro{color:#555d62!important}
.systems-section .system-card .card-no{color:#5b6267!important}
@media (prefers-reduced-motion:reduce){.home-weather-wind::before,.home-hero.weather-sun .home-weather-wet-sheen::before{animation:none!important;will-change:auto!important}}


/* ========================================================================
   v1.6.2 — PAGE 1 SEASONAL SERVICE + LAZY COMPOSITOR SNOW
   Isolated Page 1 addition. No scroll/swipe/page-seat controller changes.
   ======================================================================== */
.home-hero .home-service-link[data-service="holiday-lighting"],
.home-hero .home-service-detail[data-service="holiday-lighting"]{--svc:#d9a70f;--svc-rgb:217,167,15}
.home-hero .home-service-link[data-service="property-management"],
.home-hero .home-service-detail[data-service="property-management"]{--svc:#355b4b;--svc-rgb:53,91,75}
.home-hero .home-service-link[data-service="holiday-lighting"] .home-service-mark{font-size:.92em!important}

.home-seasonal-snow{
  position:absolute;
  inset:0;
  z-index:11;
  pointer-events:none;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  contain:layout paint;
  transition:opacity .18s ease,visibility 0s linear .18s;
}
.home-seasonal-snow i{
  position:absolute;
  left:var(--snow-x);
  top:-12vh;
  width:var(--snow-size);
  height:var(--snow-size);
  display:block;
  border-radius:50%;
  background:rgba(255,255,255,var(--snow-alpha));
  box-shadow:0 0 1px rgba(210,231,246,.55);
  opacity:var(--snow-alpha);
  transform:translate3d(0,-12vh,0);
  will-change:transform,opacity;
  animation:lockedSeasonalSnowFall var(--snow-duration) linear infinite;
  animation-delay:var(--snow-delay);
  animation-play-state:paused;
}
.home-hero.is-seasonal-snow .home-seasonal-snow{
  opacity:1;
  visibility:visible;
  transition:opacity .18s ease;
}
.home-hero.is-seasonal-snow .home-seasonal-snow i{animation-play-state:running}
.home-hero.is-seasonal-snow .home-weather-atmos{
  opacity:.54!important;
  background:linear-gradient(180deg,rgba(206,224,238,.30),rgba(242,248,252,.12) 46%,rgba(255,255,255,0) 82%)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.home-hero.is-seasonal-snow .home-weather-sun{opacity:.10!important}
.home-hero.is-seasonal-snow .home-weather-clouds{opacity:.68!important}
.home-hero.is-seasonal-snow .home-weather-canvas,
.home-hero.is-seasonal-snow .home-weather-lightning,
.home-hero.is-seasonal-snow .home-weather-wind,
.home-hero.is-seasonal-snow .home-weather-wet-sheen{opacity:0!important}
@keyframes lockedSeasonalSnowFall{
  0%{transform:translate3d(0,-12vh,0) rotate(0deg);opacity:0}
  8%{opacity:var(--snow-alpha)}
  88%{opacity:var(--snow-alpha)}
  100%{transform:translate3d(var(--snow-drift),116vh,0) rotate(320deg);opacity:0}
}
@media(max-width:1024px){
  .home-hero .home-service-link[data-service="holiday-lighting"] .home-service-title{letter-spacing:-.018em!important}
}
@media(prefers-reduced-motion:reduce){
  .home-seasonal-snow{display:none!important}
}
/* Long seasonal label gets a local fit adjustment only; all other approved category sizes stay unchanged. */
@media(max-width:1024px){
  .home-hero .home-service-link[data-service="holiday-lighting"] .home-service-title{font-size:clamp(10.25px,2.8vw,13px)!important;line-height:1.02!important}
  .home-hero .home-service-link[data-service="holiday-lighting"] .home-service-meta{display:none!important}
}
@media(min-width:1800px) and (max-width:2399px){
  .home-hero .home-service-link[data-service="holiday-lighting"] .home-service-title{font-size:clamp(28px,1.55vw,36px)!important;line-height:.95!important}
}
@media(min-width:2400px){
  .home-hero .home-service-link[data-service="holiday-lighting"] .home-service-title{font-size:clamp(38px,1.4vw,56px)!important;line-height:.94!important}
}


/* ========================================================================
   v1.6.6 — EXACT-IMAGE ROOF + TWO-TREE TWINKLE
   Seasonal-only presentation. Twinkle coordinates are limited to the approved
   image roof strings and the two tall lit trees. No doorway/wreath/path lights.
   Composited opacity/transform only; no canvas/video/GIF or controller changes.
   ======================================================================== */
.home-seasonal-twinkle{
  position:absolute;
  inset:0;
  z-index:9;
  pointer-events:none;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  contain:layout paint;
  transition:opacity .12s ease,visibility 0s linear .12s;
}
.home-seasonal-twinkle i{
  position:absolute;
  left:var(--twinkle-x);
  top:var(--twinkle-y);
  width:var(--twinkle-size,7px);
  height:var(--twinkle-size,7px);
  display:block;
  border-radius:50%;
  background:radial-gradient(circle,#fffef3 0 20%,#ffe3a1 30%,#ffb84f 56%,rgba(255,172,58,.12) 73%,transparent 76%);
  box-shadow:0 0 5px 2px rgba(255,237,190,.86),0 0 12px 5px rgba(255,187,75,.42);
  opacity:.08;
  transform:translate3d(-50%,-50%,0) scale(.52);
  transform-origin:center;
  animation:lockedSeasonalLightTwinkle var(--twinkle-duration,2.1s) linear infinite;
  animation-delay:var(--twinkle-delay,0s);
  animation-play-state:paused;
  backface-visibility:hidden;
}
.home-seasonal-twinkle i::after{
  content:"";
  position:absolute;
  inset:-180%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,252,231,.70) 0 7%,rgba(255,207,108,.28) 22%,rgba(255,183,72,.10) 42%,transparent 68%);
  pointer-events:none;
}
.home-hero.is-seasonal-snow .home-seasonal-twinkle{
  opacity:1;
  visibility:visible;
  transition:opacity .12s ease;
}
.home-hero.is-seasonal-snow .home-seasonal-twinkle i{
  animation-play-state:running;
  will-change:transform,opacity;
}
/* The approved Christmas image already contains the small LCKD sign in the
   correct far-right position, so suppress the generic overlay sign only in
   this category to avoid a duplicate. */
.home-yard-sign{transition:opacity .16s ease}
.home-hero.is-seasonal-snow .home-yard-sign{opacity:0!important}
@keyframes lockedSeasonalLightTwinkle{
  0%,11%,100%{opacity:.07;transform:translate3d(-50%,-50%,0) scale(.54)}
  14%{opacity:.48;transform:translate3d(-50%,-50%,0) scale(.92)}
  17%{opacity:1;transform:translate3d(-50%,-50%,0) scale(1.72)}
  20%{opacity:.18;transform:translate3d(-50%,-50%,0) scale(.66)}
  47%{opacity:.12;transform:translate3d(-50%,-50%,0) scale(.62)}
  51%{opacity:.72;transform:translate3d(-50%,-50%,0) scale(1.18)}
  55%{opacity:.98;transform:translate3d(-50%,-50%,0) scale(1.46)}
  60%{opacity:.10;transform:translate3d(-50%,-50%,0) scale(.58)}
  78%{opacity:.16;transform:translate3d(-50%,-50%,0) scale(.68)}
  82%{opacity:.82;transform:translate3d(-50%,-50%,0) scale(1.30)}
  86%{opacity:.10;transform:translate3d(-50%,-50%,0) scale(.58)}
}
@media(max-width:1024px){
  .home-seasonal-twinkle i{box-shadow:0 0 4px 1.5px rgba(255,237,190,.82),0 0 9px 4px rgba(255,187,75,.36)}
  .home-seasonal-twinkle i:nth-child(4n){display:none}
}
@media(prefers-reduced-motion:reduce){
  .home-seasonal-twinkle i{animation:none!important;opacity:.72!important;transform:translate3d(-50%,-50%,0) scale(1)!important;will-change:auto!important}
}


/* ========================================================================
   v1.6.7 — COMMERCIAL & BUILDER SERVICES CATEGORY
   Page 1 service-matrix addition only. Existing movement/hero controllers unchanged.
   ======================================================================== */
.home-hero .home-service-link[data-service="commercial-builder"],
.home-hero .home-service-detail[data-service="commercial-builder"]{--svc:#00a8b8;--svc-rgb:0,168,184}
.home-hero .home-service-link[data-service="commercial-builder"] .home-service-mark{font-size:.92em!important}
@media(max-width:1024px){
  .home-hero .home-service-link[data-service="commercial-builder"] .home-service-title{font-size:clamp(11px,3vw,14px)!important;line-height:1.02!important}
  .home-hero .home-service-link[data-service="commercial-builder"] .home-service-meta{display:none!important}
}
/* Eight rows still fit the approved rail on ordinary desktop heights; on shorter
   viewports, constrain the rail and allow local scrolling rather than shrinking
   the entire Page 1 UI or changing page-scroll behavior. */
@media(min-width:1025px) and (max-height:820px){
  .home-hero .home-service-menu{overflow-y:auto!important;overscroll-behavior:contain;scrollbar-width:thin}
  .home-hero .home-service-link{flex:0 0 clamp(68px,8.4vh,82px)!important;min-height:68px!important}
}


/* ========================================================================
   v1.6.8 — COMMERCIAL HERO + UNIQUE CYAN TRACE
   Exact user-supplied commercial image. AVIF-first responsive delivery.
   Existing matrix trace animation reused; no new continuous canvas/runtime.
   ======================================================================== */
.home-hero-house-commercial{
  transform:none!important;
  transform-origin:top left!important;
  object-fit:contain!important;
  object-position:center center!important;
}
/* The existing locked trace circuit inherits the commercial-only cyan defined in the service palette above. */
@media(min-width:1025px){
  .home-hero .home-service-link[data-service="commercial-builder"]:hover,
  .home-hero .home-service-link[data-service="commercial-builder"].is-hovered,
  .home-hero .home-service-link[data-service="commercial-builder"]:focus-visible{
    box-shadow:0 18px 42px rgba(7,11,15,.18),0 0 30px rgba(0,168,184,.12),inset 0 1px 0 rgba(255,255,255,.05)!important;
  }
}

/* ========================================================================
   v1.6.9 — EXPLICIT COMMERCIAL CYAN SIGNAL TRACE
   Reuses the existing v1.5.6 trace animations. Commercial gets the same
   moving perimeter circuit as the other service rows and detail panel.
   No new JS, timers, canvases, scroll handlers, or image work.
   ======================================================================== */
.home-hero .home-service-link[data-service="commercial-builder"],
.home-hero .home-service-detail[data-service="commercial-builder"]{
  --svc:#00a8b8!important;
  --svc-rgb:0,168,184!important;
}

@media(min-width:1025px){
  .home-hero .home-service-link[data-service="commercial-builder"]:hover::before,
  .home-hero .home-service-link[data-service="commercial-builder"].is-hovered::before,
  .home-hero .home-service-link[data-service="commercial-builder"]:focus-visible::before{
    opacity:1!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 244deg,rgba(0,168,184,.10) 258deg,#00a8b8 292deg,#eaffff 306deg,#00a8b8 320deg,transparent 342deg 360deg)!important;
    animation:lockedTraceOrbit156 2.15s linear infinite!important;
    filter:drop-shadow(0 0 4px rgba(0,168,184,.48))!important;
  }
  .home-hero .home-service-link[data-service="commercial-builder"]:hover::after,
  .home-hero .home-service-link[data-service="commercial-builder"].is-hovered::after,
  .home-hero .home-service-link[data-service="commercial-builder"]:focus-visible::after{
    background:linear-gradient(90deg,transparent 0%,rgba(0,168,184,.05) 18%,rgba(0,168,184,.32) 46%,rgba(234,255,255,.50) 51%,rgba(0,168,184,.18) 57%,transparent 100%)!important;
    animation:lockedTraceSweep156 2.55s cubic-bezier(.22,.61,.36,1) infinite .14s!important;
  }
  .home-hero .home-service-detail[data-service="commercial-builder"] .home-service-detail-layout::before{
    opacity:.94!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 246deg,rgba(0,168,184,.08) 260deg,#00a8b8 298deg,#eaffff 307deg,#00a8b8 318deg,transparent 340deg 360deg)!important;
    animation:lockedTraceOrbit156 3.1s linear infinite!important;
    filter:drop-shadow(0 0 3px rgba(0,168,184,.40))!important;
  }
}

@media(max-width:1024px){
  .home-hero .home-service-link[data-service="commercial-builder"].is-hovered::before,
  .home-hero .home-service-link[data-service="commercial-builder"]:focus-visible::before{
    opacity:1!important;
    background:conic-gradient(from var(--locked-trace-angle),transparent 0deg 250deg,rgba(0,168,184,.08) 265deg,#00a8b8 300deg,#eaffff 309deg,#00a8b8 320deg,transparent 344deg 360deg)!important;
    animation:lockedTraceOrbit156 3.2s linear infinite!important;
  }
  .home-hero .home-service-detail[data-service="commercial-builder"] .home-service-detail-layout::before{
    opacity:.86!important;
    background:linear-gradient(90deg,#00a8b8,rgba(0,168,184,.16) 38%,transparent 74%)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-hero .home-service-link[data-service="commercial-builder"]::before,
  .home-hero .home-service-link[data-service="commercial-builder"]::after,
  .home-hero .home-service-detail[data-service="commercial-builder"] .home-service-detail-layout::before{
    animation:none!important;
  }
}


/* ========================================================================
   v1.7.1 — CATEGORY SPLIT + HEADER PHONE BREATHING FIX ONLY
   v1.6.9 base is otherwise preserved.
   ======================================================================== */
@media(max-width:760px){
  .home-hero .home-service-link[data-service="property-management"] .home-service-title{font-size:clamp(11px,3vw,14px)!important;line-height:1.02!important}
  .home-hero .home-service-link[data-service="property-management"] .home-service-meta{display:none!important}
  .home-hero .home-service-link[data-service="commercial-builder"]{grid-column:1/-1!important}
}

/* The original phone animation was defined inside the desktop-only media query,
   so mobile referenced a keyframe that did not exist. Re-declare the SAME
   keyframe globally; desktop behavior is unchanged and mobile now breathes too. */
@keyframes lockedPhoneBreath155{0%,100%{transform:scale(1)}50%{transform:scale(1.065)}}
@media(prefers-reduced-motion:reduce){.header-phone{animation:none!important;will-change:auto!important}}
