body[data-page] main>section{display:none}

body[data-page="home"] .page-home,
body[data-page="how"] .page-how,
body[data-page="assessment"] .page-assessment,
body[data-page="pricing"] .page-pricing,
body[data-page="why"] .page-why,
body[data-page="areas"] .page-areas,
body[data-page="faqs"] .page-faqs,
body[data-page="contact"] .page-contact,
body[data-page="condensation"] .page-condensation,
body[data-page="support"] .page-support,
body[data-page="regulations"] .page-regulations,
body[data-page] .page-global{display:block}

body[data-page] main{min-height:calc(100vh - 96px)}

.main-nav a[aria-current="page"]{color:var(--blue);position:relative}

.main-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;border-radius:2px;background:var(--blue)}

@media(max-width:900px){.main-nav a[aria-current="page"]:after{bottom:-3px}
.page-how+.page-how{padding-top:0}
}

.ni-map-image{width:100%;max-width:520px;aspect-ratio:1;object-fit:cover;border-radius:32px;box-shadow:var(--shadow);justify-self:center}

.coverage-note{display:inline-flex;align-items:center;gap:9px;margin-top:16px;padding:10px 15px;border-radius:999px;background:#eef5ff;color:var(--blue);font-weight:800}

.coverage-note:before{content:"✓";display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--blue);color:white;font-size:.78rem}

.assessment-trust{max-width:760px;margin:-22px auto 28px;padding:14px 18px;border:1px solid #b8d6ff;border-radius:14px;background:rgba(255,255,255,.72);color:var(--blue-dark);font-weight:800;text-align:center}

.home-specialist-promise{padding:34px 0 78px;background:white}
.specialist-promise-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:42px;align-items:center;padding:38px 42px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#fbfdff,#eef5ff);box-shadow:0 18px 44px rgba(31,65,110,.07)}
.specialist-promise-inner h2{margin:0 0 10px;font-size:clamp(1.9rem,3.3vw,2.8rem);line-height:1.08;letter-spacing:-.035em}
.specialist-promise-inner p{margin:0;color:var(--muted)}
.specialist-promise-inner>strong{padding:24px;border-left:3px solid var(--blue);color:var(--blue-dark);font-size:1.16rem;line-height:1.45}

@media(max-width:760px){.specialist-promise-inner{grid-template-columns:1fr;padding:28px;gap:22px}
.specialist-promise-inner>strong{border-left:0;border-top:3px solid var(--blue);padding:20px 0 0}
}


/* Four-second homepage condensation-clearing clip */
.window-clip{background:linear-gradient(145deg,#f7fbff,#eaf3ff)}

.window-clip .window-card{z-index:10;top:16px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:11px 16px;text-align:center;background:rgba(255,255,255,.94)}

.window-clip .window-scene{top:82px;border-radius:24px 24px 0 0}

.window-scene{position:absolute;inset:0;overflow:hidden;background:linear-gradient(180deg,#e6f2ff 0 64%,#d9e9f8 64%)}

.house-wall{position:absolute;inset:14% 9% 9%;border-radius:25px;background:linear-gradient(135deg,#fdfefe,#edf5fc);box-shadow:0 22px 45px rgba(31,65,110,.13)}

.house-window{position:absolute;left:12%;right:12%;top:13%;bottom:15%;overflow:hidden;border:12px solid white;border-radius:10px;background:#cbe4fa;box-shadow:inset 0 0 0 2px #9cc4eb,0 15px 30px rgba(31,65,110,.12)}

.outdoor-view{position:absolute;inset:0;background:linear-gradient(#b9dcfa 0 58%,#c9dfca 58%)}

.sky{position:absolute;width:86px;height:34px;right:12%;top:13%;border-radius:50%;background:rgba(255,255,255,.62);filter:blur(5px)}

.distant-house{position:absolute;width:42%;height:35%;left:29%;bottom:0;background:#a9c5d8;clip-path:polygon(0 35%,50% 0,100% 35%,100% 100%,0 100%)}

.window-frame{position:absolute;z-index:5;background:white;box-shadow:0 0 0 1px rgba(99,151,201,.18)}

.window-frame.vertical{width:10px;top:0;bottom:0;left:calc(50% - 5px)}

.window-frame.horizontal{height:10px;left:0;right:0;top:calc(50% - 5px)}

.window-sill{position:absolute;left:8%;right:8%;bottom:9%;height:26px;border-radius:5px;background:white;box-shadow:0 10px 16px rgba(31,65,110,.13)}

.window-condensation{position:absolute;inset:0;z-index:3;background:linear-gradient(115deg,rgba(244,250,255,.94),rgba(210,229,244,.82),rgba(245,251,255,.9));backdrop-filter:blur(9px);animation:clear-condensation 4s ease-in-out infinite}

.window-condensation:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 2px,transparent 3px);background-size:24px 27px;opacity:.85}

.window-condensation i{position:absolute;top:8%;width:6px;height:28px;border-radius:50% 50% 65% 65%;background:rgba(255,255,255,.88);box-shadow:0 0 7px rgba(255,255,255,.8);animation:window-drop 4s ease-in infinite}

.window-condensation i:nth-child(1){left:10%;animation-delay:-.4s}
.window-condensation i:nth-child(2){left:22%;top:30%;animation-delay:-1.1s}
.window-condensation i:nth-child(3){left:36%;top:18%;animation-delay:-.7s}
.window-condensation i:nth-child(4){left:48%;top:42%;animation-delay:-1.5s}
.window-condensation i:nth-child(5){left:62%;animation-delay:-.2s}
.window-condensation i:nth-child(6){left:73%;top:25%;animation-delay:-1.3s}
.window-condensation i:nth-child(7){left:84%;top:12%;animation-delay:-.9s}
.window-condensation i:nth-child(8){left:92%;top:48%;animation-delay:-1.7s}

.clearing-sheen{position:absolute;inset:0;z-index:4;background:linear-gradient(105deg,transparent 24%,rgba(255,255,255,.65) 48%,transparent 70%);transform:translateX(-125%);animation:window-sheen 4s ease-in-out infinite}

.window-airflow{position:absolute;z-index:7;height:74px;border:4px solid rgba(11,104,232,.58);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;opacity:0;animation:window-flow 4s ease-in-out infinite}

.window-airflow i{position:absolute;right:4px;top:-9px;width:13px;height:13px;border-top:3px solid var(--blue);border-right:3px solid var(--blue);transform:rotate(38deg)}

.window-airflow.air-a{width:58%;left:2%;top:25%;transform:rotate(-8deg)}
.window-airflow.air-b{width:64%;right:-5%;top:48%;transform:scaleX(-1) rotate(-8deg);animation-delay:.14s}
.window-airflow.air-c{width:48%;left:25%;bottom:8%;transform:rotate(8deg);animation-delay:.28s}

@keyframes clear-condensation{0%,18%{opacity:1;clip-path:inset(0)}
68%,88%{opacity:.05;clip-path:inset(0 0 0 100%)}
100%{opacity:1;clip-path:inset(0)}
}

@keyframes window-drop{0%,18%{transform:translateY(0);opacity:.9}
52%,100%{transform:translateY(150px);opacity:0}
}

@keyframes window-sheen{0%,24%{transform:translateX(-125%);opacity:0}
42%{opacity:1}
74%,100%{transform:translateX(125%);opacity:0}
}

@keyframes window-flow{0%,12%,94%,100%{opacity:0;translate:-16px 0}
28%,72%{opacity:.82;translate:14px 0}
}

@media(prefers-reduced-motion:reduce){.window-condensation{opacity:.08;clip-path:inset(0 0 0 92%)}
.window-condensation,.window-condensation i,.clearing-sheen,.window-airflow{animation:none}
}


/* Common-sign photo cards */
.visual-sign-card{padding:0;overflow:hidden;display:flex;flex-direction:column}

.visual-sign-card>img{width:100%;height:190px;object-fit:cover}

.sign-card-copy{position:relative;padding:25px 24px 24px;flex:1}

.sign-card-copy .icon{position:absolute;right:18px;top:-24px;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:white;box-shadow:0 10px 24px rgba(31,65,110,.16);font-size:1.35rem}

.sign-card-copy h3{margin-top:0;padding-right:28px}

.sign-card-copy p{margin-bottom:0}

@media(max-width:600px){.visual-sign-card>img{height:220px}
}


/* Continuous Drimaster PIV explainer */
.piv-continuous{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:28px;padding:28px;border:1px solid var(--line);border-radius:28px;background:white;box-shadow:var(--shadow);overflow:hidden}

.piv-house-loop{position:relative;min-height:570px;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#e7f3ff 0 30%,#f7fbff 30% 100%)}

.winter-mode{position:absolute;z-index:9;left:18px;top:18px;display:grid;grid-template-columns:auto 1fr;column-gap:9px;padding:10px 13px;border-radius:13px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(31,65,110,.12);animation:winter-note 8s ease-in-out infinite}
.winter-mode span{grid-row:1/3;align-self:center;color:#4ea8ee;font-size:1.45rem}
.winter-mode strong,.winter-mode small{line-height:1.25}
.winter-mode small{color:var(--muted);font-size:.7rem}

.piv-roof{position:absolute;left:8%;right:8%;top:12%;height:28%;background:linear-gradient(145deg,#cadff2,#eef7ff);clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(0 10px 12px rgba(31,65,110,.1))}

.piv-unit-loop{position:absolute;z-index:4;left:36%;top:42%;width:28%;height:45%;display:grid;place-items:center;border:3px solid white;border-radius:14px;background:linear-gradient(145deg,#dce9f5,#a8c1d8);box-shadow:0 8px 18px rgba(31,65,110,.2)}
.piv-unit-loop strong{font-size:.68rem;line-height:1;color:#173b63}
.piv-unit-loop small{position:absolute;left:7px;bottom:7px;padding:2px 5px;border-radius:5px;background:white;color:var(--blue);font-size:.56rem;font-weight:800}
.unit-fan{width:37px;height:37px;border:4px dotted white;border-radius:50%;animation:unit-spin 1.4s linear infinite}
.heat-coil{position:absolute;right:6px;bottom:5px;color:#ff8b32;font-size:1.3rem;font-weight:900;filter:drop-shadow(0 0 5px #ffc06d);animation:heater-glow 8s ease-in-out infinite}

.outside-air{position:absolute;z-index:5;top:58%;width:10px;height:10px;border-radius:50%;background:#52b7ff;box-shadow:0 0 12px #52b7ff;animation:intake 2.2s linear infinite}
.outside-air.a1{left:11%}
.outside-air.a2{left:19%;animation-delay:.7s}
.outside-air.a3{left:27%;animation-delay:1.4s}

.air-duct{position:absolute;z-index:3;left:48%;top:80%;width:5%;height:95%;background:linear-gradient(90deg,#a5bdd2,#e8f3fb,#9db7cd)}
.tempered-air{position:absolute;z-index:6;left:49.5%;top:92%;width:11px;height:11px;border-radius:50%;background:#ffad55;box-shadow:0 0 14px #ffb55f;animation:duct-flow 2s linear infinite}
.tempered-air.t2{animation-delay:1s}

.piv-home-loop{position:absolute;left:8%;right:8%;top:39%;bottom:7%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;padding:21px 14px 14px;border:5px solid white;border-radius:8px;background:#fff;box-shadow:0 20px 35px rgba(31,65,110,.13)}
.hall-diffuser{position:absolute;z-index:7;left:44%;top:8px;width:12%;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px #dcecff}
.loop-room{position:relative;overflow:hidden;border-radius:7px;background:linear-gradient(180deg,#dcecff,#f6faff)}
.loop-room.upstairs{grid-column:1/3}
.loop-room.downstairs{grid-column:1/3}
.loop-window{position:absolute;right:6%;top:23%;width:19%;height:46%;border:5px solid white;background:#aed5f4;box-shadow:inset 0 0 0 2px #81b8e2}
.loop-window:after{content:"";position:absolute;left:47%;top:0;bottom:0;width:3px;background:white}

.supply-air{position:absolute;z-index:7;left:48.5%;top:17px;width:12px;height:12px;border-radius:50%;background:#39b7ff;box-shadow:0 0 13px #39b7ff;animation:supply-fall 2.4s ease-in infinite}
.piv-home-loop .s1{left:48.5%;top:17px}
.piv-home-loop .s2{left:43%;top:17px;animation-delay:.8s}
.piv-home-loop .s3{left:54%;top:17px;animation-delay:1.6s}

.fresh-current{position:absolute;left:12%;top:38%;width:62%;height:38%;border:4px dashed rgba(24,154,235,.62);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;animation:fresh-sweep 3s ease-in-out infinite}
.c2{animation-delay:1.2s}

.moisture-cloud{position:absolute;right:25%;top:31%;color:#7f94a9;letter-spacing:4px;font-size:1.35rem;filter:blur(.6px);animation:humidity-out 8s ease-in-out infinite}
.m2{animation-delay:.45s}
.exit-air{position:absolute;z-index:5;right:1%;top:38%;color:#75899d;font-size:1.5rem;font-weight:900;animation:exit-pulse 2s ease-in-out infinite}
.e2{animation-delay:1s}

.piv-loop-explainer{display:grid;align-content:center;gap:11px;margin:0;padding:0;list-style:none;counter-reset:none}
.piv-loop-explainer li{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:15px;background:#fbfdff;animation:explain-focus 8s ease-in-out infinite}
.piv-loop-explainer li>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e7f2ff;color:var(--blue);font-weight:900}
.piv-loop-explainer strong,.piv-loop-explainer small{display:block;line-height:1.35}
.piv-loop-explainer small{margin-top:3px;color:var(--muted);font-size:.78rem}
.piv-loop-explainer li:nth-child(2){animation-delay:2s}
.piv-loop-explainer li:nth-child(3){animation-delay:4s}
.piv-loop-explainer li:nth-child(4){animation-delay:6s}
.piv-loop-explainer .heated-step{border-color:#ffd3a3;background:#fffaf4}
.piv-loop-explainer .heated-step>span{background:#fff0df;color:#df6d0d}

@keyframes unit-spin{to{transform:rotate(360deg)}
}
@keyframes intake{0%{transform:translateX(0);opacity:0}
20%{opacity:1}
100%{transform:translateX(180px);opacity:0}
}
@keyframes heater-glow{0%,20%,88%,100%{opacity:.35}
35%,70%{opacity:1;transform:scale(1.22)}
}
@keyframes duct-flow{0%{transform:translateY(0);opacity:0}
20%{opacity:1}
100%{transform:translateY(150px);opacity:0;background:#4dbdff;box-shadow:0 0 14px #4dbdff}
}
@keyframes supply-fall{0%{transform:translateY(0);opacity:0}
20%{opacity:1}
100%{transform:translateY(290px) scale(1.35);opacity:0}
}
@keyframes fresh-sweep{0%,100%{transform:translateX(-8px);opacity:.22}
50%{transform:translateX(22px);opacity:.85}
}
@keyframes humidity-out{0%,18%{transform:translateX(0);opacity:.9}
65%,88%{transform:translateX(110px);opacity:0}
100%{transform:translateX(0);opacity:.9}
}
@keyframes exit-pulse{50%{transform:translateX(11px);opacity:.35}
}
@keyframes winter-note{0%,100%{transform:translateY(0)}
50%{transform:translateY(3px);box-shadow:0 12px 28px rgba(65,154,224,.22)}
}
@keyframes explain-focus{0%,18%,100%{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,104,232,.1);transform:translateX(3px)}
22%,96%{border-color:var(--line);box-shadow:none;transform:none}
}

@media(max-width:900px){.piv-continuous{grid-template-columns:1fr}
.piv-house-loop{min-height:530px}
.piv-loop-explainer{grid-template-columns:1fr 1fr}
.piv-loop-explainer li{min-height:98px}
}

@media(max-width:600px){.piv-continuous{padding:14px}
.piv-house-loop{min-height:455px}
.winter-mode{left:10px;top:10px}
.piv-loop-explainer{grid-template-columns:1fr}
.piv-loop-explainer li{min-height:0}
.piv-unit-loop{width:34%;left:33%}
}

@media(prefers-reduced-motion:reduce){.piv-continuous *{animation:none!important}
}


/* Premium fixed-camera PIV film */
.piv-film-shell{max-width:1120px;margin:auto}
.piv-film{--film-duration:16s;position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;border-radius:26px;background:#162435;box-shadow:0 24px 60px rgba(17,43,73,.2)}
.film-camera{position:absolute;inset:0;overflow:hidden}
.film-room{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film-room-damp{z-index:1}
.film-room-clear{z-index:2;opacity:0;animation:film-clear var(--film-duration) cubic-bezier(.22,.61,.36,1) infinite}

.film-loft-unit{position:absolute;z-index:9;right:4%;top:4%;display:grid;grid-template-columns:92px auto;align-items:center;gap:9px;width:230px;padding:8px 12px;border:1px solid rgba(255,255,255,.42);border-radius:15px;background:rgba(250,253,255,.82);box-shadow:0 12px 28px rgba(12,31,50,.13);backdrop-filter:blur(12px);opacity:0;animation:film-loft-unit var(--film-duration) ease-in-out infinite}
.film-loft-unit img{width:92px;height:54px;object-fit:contain}
.film-loft-unit span{color:#29425d;font-size:.7rem;font-weight:800;line-height:1.25}

.real-diffuser-crop{position:absolute;z-index:7;left:50%;top:9.4%;width:9.5%;min-width:72px;aspect-ratio:3.76/1;overflow:hidden;transform:translateX(-50%) perspective(500px) rotateX(7deg);border:1px solid rgba(155,164,168,.28);border-radius:50%;background:linear-gradient(180deg,#fff 0%,#f8f8f5 55%,#e8e8e4 100%);box-shadow:inset 0 2px 3px rgba(255,255,255,.9),0 3px 5px rgba(29,43,55,.14);animation:diffuser-wake var(--film-duration) ease-in-out infinite}
.diffuser-face{position:absolute;inset:8% 6% 18%;border-radius:50%;background:linear-gradient(180deg,#fff,#f5f5f2);box-shadow:inset 0 -1px 2px rgba(128,138,143,.16)}
.diffuser-slot{position:absolute;left:9%;right:9%;bottom:8%;height:40%;border-bottom:1px solid rgba(118,128,133,.34);border-radius:50%}
.diffuser-slot:after{content:"";position:absolute;left:47%;bottom:-2px;width:8%;height:4px;background:#f2f2ef;border-radius:3px}

.premium-airflow{position:absolute;z-index:6;inset:0;width:100%;height:100%;overflow:visible;opacity:0;animation:airflow-appear var(--film-duration) ease-in-out infinite}
.premium-airflow path{fill:none;stroke:url(#airStroke);stroke-width:6;stroke-linecap:round;filter:url(#airGlow);transform-origin:center top;animation:airflow-travel 5.8s ease-in-out infinite}
.premium-airflow path:nth-of-type(2){animation-delay:.55s}
.premium-airflow path:nth-of-type(3){animation-delay:1.1s}
.premium-airflow path:nth-of-type(4){animation-delay:1.65s}
.premium-airflow path:nth-of-type(5){animation-delay:2.2s}

.film-vignette{position:absolute;z-index:8;inset:0;background:linear-gradient(90deg,rgba(7,22,38,.42),transparent 50%,rgba(7,22,38,.12)),linear-gradient(0deg,rgba(7,22,38,.34),transparent 42%);pointer-events:none;animation:vignette-lift var(--film-duration) ease-in-out infinite}
.film-copy,.film-benefits span,.film-finale{position:absolute;z-index:10;color:white;text-shadow:0 2px 18px rgba(5,20,36,.5)}
.film-opening{left:6%;bottom:10%;font-size:clamp(1.55rem,4vw,3.2rem);font-weight:800;letter-spacing:-.035em;animation:opening-copy var(--film-duration) ease-in-out infinite}
.film-benefits{position:absolute;z-index:10;left:6%;right:6%;bottom:9%;min-height:74px}
.film-benefits span{left:0;bottom:0;max-width:820px;padding:11px 16px;border:1px solid rgba(255,255,255,.34);border-radius:13px;background:rgba(7,34,59,.55);backdrop-filter:blur(12px);font-size:clamp(1rem,2.5vw,1.75rem);font-weight:750;line-height:1.25;opacity:0}
.benefit-one{animation:benefit-one var(--film-duration) ease-in-out infinite}
.benefit-two{animation:benefit-two var(--film-duration) ease-in-out infinite}
.benefit-three{animation:benefit-three var(--film-duration) ease-in-out infinite}
.benefit-four{animation:benefit-four var(--film-duration) ease-in-out infinite}
.film-finale{left:6%;right:6%;top:50%;display:grid;justify-items:start;gap:7px;transform:translateY(-42%);opacity:0;animation:film-finale var(--film-duration) ease-in-out infinite}
.film-finale strong{font-size:clamp(1.6rem,4vw,3.5rem);line-height:1;letter-spacing:-.04em}
.film-finale>span{font-size:clamp(1rem,2.2vw,1.55rem);font-weight:700}
.film-finale .button{margin-top:10px;text-shadow:none}

.film-toolbar{display:flex;align-items:center;margin-top:18px}
.film-controls{display:flex;flex-wrap:wrap;gap:9px}
.film-viewer-note{margin:11px 0 0;color:var(--muted);font-size:.85rem}
.piv-film.is-paused *{animation-play-state:paused!important}
.piv-film.film-reset *{animation:none!important}

@keyframes film-breathe{0%,100%{transform:scale(1.005)}
50%{transform:scale(1.018)}
}
@keyframes film-clear{0%,25%{opacity:0}
68.75%,97.5%{opacity:1}
100%{opacity:0}
}
@keyframes diffuser-wake{0%,15.6%{filter:brightness(.98)}
19.5%,87.5%{filter:brightness(1.015)}
93.5%,100%{filter:brightness(.98)}
}
@keyframes airflow-appear{0%,15.6%{opacity:0}
19.5%,87.5%{opacity:.62}
91.1%,100%{opacity:0}
}
@keyframes airflow-travel{0%,100%{opacity:.24;transform:translateY(-2px)}
50%{opacity:.52;transform:translateY(5px)}
}
@keyframes vignette-lift{0%,15.6%{opacity:1}
25%{opacity:.82}
68.75%,97.5%{opacity:.2}
100%{opacity:1}
}
@keyframes opening-copy{0%,2.4%{opacity:0;transform:translateY(12px)}
4.9%,13.4%{opacity:1;transform:none}
15.6%,100%{opacity:0;transform:translateY(-6px)}
}

@keyframes benefit-one{0%,25%{opacity:0;transform:translateY(10px)}
26.8%,34%{opacity:1;transform:none}
35.9%,100%{opacity:0;transform:translateY(-7px)}
}
@keyframes benefit-two{0%,35.9%{opacity:0;transform:translateY(10px)}
37.8%,44.9%{opacity:1;transform:none}
46.9%,100%{opacity:0;transform:translateY(-7px)}
}
@keyframes benefit-three{0%,46.9%{opacity:0;transform:translateY(10px)}
48.75%,74.65%{opacity:1;transform:none}
76.6%,100%{opacity:0;transform:translateY(-7px)}
}
@keyframes benefit-four{0%,76.6%{opacity:0;transform:translateY(10px)}
78.5%,85.6%{opacity:1;transform:none}
87.5%,100%{opacity:0;transform:translateY(-7px)}
}
@keyframes film-finale{0%,87.5%{opacity:0;transform:translateY(-34%)}
89.5%,97.5%{opacity:1;transform:translateY(-42%)}
100%{opacity:0;transform:translateY(-48%)}
}

@keyframes film-loft-unit{0%,15.6%{opacity:0;transform:translateY(-8px)}
18.5%,24%{opacity:1;transform:none}
27%,100%{opacity:0;transform:translateY(-5px)}
}

@media(max-width:760px){.piv-film{border-radius:18px}
}

@media(prefers-reduced-motion:reduce){.piv-film *{animation:none!important}
.film-room-clear{opacity:1}
.film-opening,.film-benefits{display:none}
.film-finale{opacity:1}
.premium-airflow{opacity:.55}
}


/* Consent preferences */
.cookie-consent{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;max-width:1160px;margin:auto;padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(8,26,49,.2);backdrop-filter:blur(16px)}

.cookie-consent strong{font-size:1.05rem}
.cookie-consent p{max-width:720px;margin:4px 0 0;color:var(--muted);font-size:.9rem}
.cookie-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.cookie-actions .button{min-height:42px;padding:0 15px;font-size:.82rem}
.cookie-manage{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding-top:16px;border-top:1px solid var(--line)}
.cookie-manage label{display:flex;align-items:center;gap:8px;font-weight:700}
.cookie-manage .button{margin-left:auto}

@media(max-width:760px){.cookie-consent{grid-template-columns:1fr;left:12px;right:12px;bottom:12px;max-height:calc(100vh - 24px);overflow:auto}
.cookie-actions{justify-content:stretch}
.cookie-actions .button{flex:1}
.cookie-manage{align-items:flex-start;flex-direction:column}
.cookie-manage .button{width:100%;margin-left:0}
}


/* Brochure-informed product range */
.product-range{background:#fff}
.product-trust{max-width:900px;margin:-18px auto 42px;padding:18px 24px;border:1px solid #b8d6ff;border-radius:16px;background:#edf5ff;color:var(--blue-dark);font-size:1.08rem;font-weight:800;text-align:center}
.product-feature{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;align-items:center;margin:28px 0;padding:46px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,#fbfdff,#f3f8fe);box-shadow:0 18px 48px rgba(31,65,110,.07)}
.product-feature.reverse .product-visual{order:2}
.product-feature.reverse .product-copy{order:1}
.product-visual{position:relative;display:grid;place-items:center;min-height:340px;overflow:hidden;border-radius:24px;background:radial-gradient(circle at 50% 45%,#fff,#eaf3fc)}
.official-product>img:first-child{width:92%;height:310px;object-fit:contain}
.heated-product .heater-module{position:absolute;right:20px;bottom:18px;width:128px;height:86px;object-fit:contain;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:var(--shadow)}
.flatmaster-placeholder{align-content:center;gap:8px;padding:36px;background:linear-gradient(145deg,#eef3f8,#dce6f0);color:#65768b;text-align:center}
.flatmaster-placeholder:before{content:"▭";font-size:5rem;line-height:1;color:#8da1b6}
.flatmaster-placeholder span{font-weight:800}
.flatmaster-placeholder small{font-weight:600}
.product-label{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e9f3ff;color:var(--blue);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.product-copy h3{margin:12px 0 16px;font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.04;letter-spacing:-.04em}
.product-copy>p{color:var(--muted);font-size:1.04rem}
.control-access-note{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;align-items:start;margin:20px 0 0;padding:15px 17px;border:1px solid #b8d6ff;border-radius:16px;background:#edf5ff;color:#405168;line-height:1.5}
.control-access-note strong{color:var(--blue-dark);white-space:nowrap}
.product-points{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:24px 0 0;padding:0;list-style:none}
.product-points li{position:relative;padding-left:25px;color:#405168;font-weight:650}
.product-points li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:900}
.flatmaster-product>img:first-child{width:96%;height:310px}
.product-feature-action{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}
.product-feature-action small,.product-feature-action strong{display:block}
.product-feature-action small{color:var(--muted);font-size:.78rem;font-weight:750}
.product-feature-action strong{color:var(--blue);font-size:1.65rem;line-height:1.2}
.product-feature-action .button{min-width:170px;box-shadow:none}
.product-feature-action p{max-width:470px;margin:8px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}
.decision-heading{margin-bottom:30px}
.system-decision-guide{max-width:920px;margin:0 auto;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(31,65,110,.06);overflow:hidden}
.decision-guide-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}
.decision-guide-row:last-child{border-bottom:0}
.decision-guide-row dt{color:#405168;font-weight:700}
.decision-guide-row dd{margin:0}
.decision-guide-row a{color:var(--blue-dark);font-weight:800;text-decoration-thickness:1px;text-underline-offset:3px}
.decision-guide-row small{display:block;margin-top:3px;color:var(--muted);font-size:.8rem}
.decision-guide-note{margin:22px auto 0;color:var(--muted);font-weight:700;text-align:center}
.decision-guide-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}

@media(max-width:900px){.product-feature{grid-template-columns:1fr;gap:28px;padding:32px}
.product-feature.reverse .product-visual,.product-feature.reverse .product-copy{order:initial}
.product-visual{min-height:300px}
.product-points{grid-template-columns:1fr}
}

@media(max-width:600px){.product-feature{padding:22px;border-radius:22px}
.product-visual{min-height:250px}
.official-product>img:first-child{height:235px}
.control-access-note{grid-template-columns:1fr;gap:3px;padding:14px}
.product-feature-action{align-items:stretch;flex-direction:column}
.product-feature-action .button{width:100%}
.decision-guide-row{grid-template-columns:1fr;gap:4px;padding:18px}
.decision-guide-actions{align-items:stretch;flex-direction:column}
.decision-guide-actions .button{width:100%}
.product-trust{margin-top:-24px}
}


/* Direct contact route */
.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.hero-actions .button{margin-top:0}
.hero-contact-note{margin:12px 0 0;font-size:.94rem}
.contact-alternative{display:flex;justify-content:center;align-items:center;gap:8px;margin:20px 0;color:var(--muted);font-weight:700}
.contact-alternative a{color:var(--blue)}
.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.result-actions .button{margin:0}
.contact-hero{padding:92px 0 54px;background:linear-gradient(180deg,#f8fbff,#fff)}
.contact-hero-copy{max-width:800px;text-align:center}
.contact-hero h1{margin:0 0 18px;font-size:clamp(2.8rem,5.5vw,5rem);line-height:1;letter-spacing:-.05em}
.contact-hero p{max-width:750px;margin:0 auto;color:var(--muted);font-size:1.14rem}
.contact-route-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.contact-social{display:inline-flex;align-items:center;gap:10px;margin-top:20px;color:var(--blue);font-weight:800;text-decoration:none}
.contact-social:hover{text-decoration:underline;text-underline-offset:4px}
.contact-options-section{padding-top:60px}
.contact-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.contact-option{display:flex;flex-direction:column;align-items:flex-start;min-height:310px;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:white;box-shadow:0 8px 24px rgba(31,65,110,.06)}
.contact-option-label{color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.contact-option h2{margin:10px 0;font-size:1.65rem;line-height:1.15}
.contact-option p{color:var(--muted)}
.contact-option .button{width:100%;margin-top:auto}
.contact-email{overflow-wrap:anywhere;color:var(--blue);font-weight:700}
.contact-form-shell{display:grid;grid-template-columns:.78fr 1.22fr;gap:52px;align-items:start}
.contact-form-copy h2{margin:6px 0 16px;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.04em}
.contact-form-copy p{color:var(--muted)}
.contact-form{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}
.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:grid;gap:8px;color:var(--ink);font-weight:750}
.contact-form .full-field{grid-column:1/-1}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px;background:white;color:var(--ink);font:inherit}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid rgba(11,104,232,.14);border-color:var(--blue)}
.contact-form [aria-invalid="true"]{border-color:#b42318}
.contact-form .button{margin-top:20px}
.contact-form-reassurance{margin:18px 0 0;color:var(--muted);font-size:.94rem;font-weight:700}
.form-message.is-error{color:#b42318}
.form-message.is-success{color:var(--green)}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-check-option{text-align:center}
.contact-check-option p{margin:0 0 16px;color:var(--muted)}

@media(max-width:1180px) and (min-width:901px){.nav-wrap{gap:18px}
.main-nav{gap:16px}
.main-nav a{font-size:.86rem}
.brand img{width:118px}
.call-link{padding:0 14px}
}

@media(max-width:900px){.contact-option-grid{grid-template-columns:1fr 1fr}
.contact-option:last-child{grid-column:1/-1}
.contact-form-shell{grid-template-columns:1fr}
.main-nav.open{max-height:calc(100vh - 96px);overflow:auto}
}

@media(max-width:600px){.hero-actions,.contact-route-actions,.result-actions{align-items:stretch;flex-direction:column}
.hero-actions .button,.contact-route-actions .button,.result-actions .button{width:100%}
.contact-alternative{align-items:flex-start;flex-direction:column}
.contact-option-grid,.contact-form-grid{grid-template-columns:1fr}
.contact-option:last-child{grid-column:auto}
.contact-option{min-height:0}
.contact-form{padding:22px}
.contact-form .full-field{grid-column:auto}
.contact-hero{padding:62px 0 36px}
.contact-hero h1{font-size:3rem}
}


/* Photorealistic four-second hero clip */
.real-window-scene{background:#dceafa}

.real-window-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.clear-window-photo{animation:real-window-zoom 6s ease-in-out infinite}

.condensed-window-photo{z-index:2;animation:real-window-clear 6s ease-in-out infinite}

.real-condensation-layer{position:absolute;inset:0;z-index:2;background:linear-gradient(112deg,rgba(237,247,253,.91),rgba(195,219,236,.75),rgba(242,249,253,.88));backdrop-filter:blur(7px);animation:real-window-clear 6s ease-in-out infinite}

.real-condensation-layer:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.92) 0 2px,transparent 3px);background-size:21px 24px;opacity:.9}

.real-condensation-layer i{position:absolute;top:6%;width:6px;height:38px;border-radius:50% 50% 65% 65%;background:rgba(255,255,255,.86);box-shadow:0 0 6px rgba(255,255,255,.8);animation:real-drop 6s ease-in infinite}
.real-condensation-layer i:nth-child(1){left:12%;animation-delay:-.4s}
.real-condensation-layer i:nth-child(2){left:27%;top:22%;animation-delay:-1.2s}
.real-condensation-layer i:nth-child(3){left:43%;top:12%;animation-delay:-.8s}
.real-condensation-layer i:nth-child(4){left:61%;top:30%;animation-delay:-1.7s}
.real-condensation-layer i:nth-child(5){left:76%;animation-delay:-.3s}
.real-condensation-layer i:nth-child(6){left:89%;top:18%;animation-delay:-1.4s}

.real-mould-layer{position:absolute;z-index:3;left:0;right:0;bottom:0;height:20%;background:radial-gradient(ellipse at 12% 78%,rgba(28,35,31,.76) 0 2%,transparent 8%),radial-gradient(ellipse at 31% 84%,rgba(39,45,40,.64) 0 1.5%,transparent 7%),radial-gradient(ellipse at 54% 76%,rgba(25,32,28,.7) 0 2%,transparent 8%),radial-gradient(ellipse at 74% 87%,rgba(32,39,34,.62) 0 1.5%,transparent 7%),radial-gradient(ellipse at 92% 73%,rgba(25,31,27,.7) 0 2%,transparent 8%),linear-gradient(to top,rgba(30,37,32,.7) 0 4%,transparent 18%);filter:blur(.35px);mix-blend-mode:multiply;animation:real-window-clear 6s ease-in-out infinite}

.real-window-sheen{position:absolute;inset:0;z-index:4;background:linear-gradient(105deg,transparent 28%,rgba(255,255,255,.48) 49%,transparent 68%);transform:translateX(-125%);animation:real-window-sheen 6s ease-in-out infinite;pointer-events:none}

.real-window-scene .window-airflow{z-index:6;animation-duration:6s}

@keyframes real-window-clear{0%,18%{opacity:1;clip-path:inset(0)}
68%,88%{opacity:0;clip-path:inset(0 0 0 100%)}
100%{opacity:1;clip-path:inset(0)}
}

@keyframes real-drop{0%,18%{transform:translateY(0);opacity:.9}
60%,100%{transform:translateY(260px);opacity:0}
}

@keyframes real-window-zoom{0%,100%{transform:scale(1.015)}
70%,88%{transform:scale(1.035)}
}

@keyframes real-window-sheen{0%,25%{transform:translateX(-125%);opacity:0}
40%{opacity:1}
70%,100%{transform:translateX(125%);opacity:0}
}

@media(prefers-reduced-motion:reduce){.real-window-photo,.real-window-sheen,.real-condensation-layer,.real-mould-layer,.real-condensation-layer i{animation:none}
.condensed-window-photo,.real-condensation-layer,.real-mould-layer{opacity:.08;clip-path:inset(0 0 0 92%)}
}


/* Expanded homeowner guidance */
.narrow-content{max-width:920px}
.narrow-content h1,.regulations-hero h1{margin:0 0 22px;font-size:clamp(2.8rem,5.6vw,5rem);line-height:1.01;letter-spacing:-.052em}
.narrow-content>p{max-width:820px;color:var(--muted);font-size:1.08rem}
.explainer-lead{color:var(--ink)!important;font-size:1.24rem!important;font-weight:700}
.feature-number{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eaf3ff;color:var(--blue);font-weight:800}
.home-why-grid .feature-card{display:flex;flex-direction:column;min-height:285px}
.home-why-grid .feature-card p{margin-top:auto}
.context-links{margin:30px 0 0;text-align:center;color:var(--muted);font-weight:700}
.context-links a,.piv-heated-card a,.regulations-factors a,.faq-section a{color:var(--blue);font-weight:800}
.home-piv-summary-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}
.home-piv-summary-grid h2{margin:0 0 14px;font-size:clamp(2.3rem,4vw,3.6rem);line-height:1.05;letter-spacing:-.04em}
.home-piv-summary-grid p{color:var(--muted)}
.piv-summary-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px}
.piv-summary-flow span{display:grid;place-items:center;min-height:112px;padding:18px;border:1px solid #d2e3fa;border-radius:18px;background:#fff;color:var(--ink);font-weight:800;text-align:center;box-shadow:0 8px 22px rgba(31,65,110,.05)}
.piv-summary-flow i{color:var(--blue);font-size:1.5rem;font-style:normal;transform:rotate(-90deg)}
.piv-explainer-hero{padding-bottom:60px;background:linear-gradient(180deg,#f8fbff,#fff)}
.piv-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.piv-step-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px rgba(31,65,110,.05)}
.piv-step-card>span{color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.piv-step-card h3{margin:10px 0;line-height:1.2}
.piv-step-card p{color:var(--muted)}
.piv-plain-summary{max-width:900px;margin:34px auto 0;padding:24px 28px;border-left:4px solid var(--blue);border-radius:0 16px 16px 0;background:#eaf3ff;font-size:1.05rem}
.piv-limit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.piv-limit-card,.piv-heated-card{padding:36px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow)}
.piv-limit-card h2,.piv-heated-card h2{margin:6px 0 16px;font-size:2rem;line-height:1.08}
.piv-limit-card p,.piv-heated-card p{color:var(--muted)}
.plain-check-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0;padding:0;list-style:none}
.plain-check-list li{position:relative;padding:12px 12px 12px 38px;border-radius:12px;background:#fff4f2;font-weight:750}
.plain-check-list li:before{content:"×";position:absolute;left:14px;color:#b42318;font-weight:900}
.piv-mount-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:900px;margin:0 auto 42px}
.piv-mount-grid article{padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff}
.piv-mount-grid h3{margin:8px 0;font-size:1.5rem}
.piv-mount-grid li{margin:8px 0;color:var(--muted)}
.mount-icon{color:var(--blue);font-size:2.1rem}
.airflow-diagram{max-width:900px;margin:auto;padding:34px;border:1px solid #cfe1f8;border-radius:30px;background:linear-gradient(145deg,#fff,#edf5ff);box-shadow:var(--shadow)}
.airflow-main{display:grid;justify-items:center}
.airflow-node{width:min(100%,560px);padding:18px 22px;border:1px solid #c9ddf5;border-radius:16px;background:#fff;text-align:center}
.airflow-node strong,.airflow-node small{display:block}
.airflow-node strong{font-size:1.12rem}
.airflow-node small{color:var(--muted)}
.airflow-node.source,.airflow-node.unit{background:#e8f3ff;border-color:#aad0ff}
.flow-arrow{height:38px;color:var(--blue);font-size:1.65rem;font-weight:900}
.airflow-exits{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.airflow-exits span{padding:10px 8px;border-radius:10px;background:var(--soft);font-size:.8rem;font-weight:750}
.customer-journey{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:0;padding:0;list-style:none}
.customer-journey li{position:relative;padding:24px 20px;border:1px solid var(--line);border-radius:20px;background:#fff}
.customer-journey li>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800}
.customer-journey h3{margin:16px 0 8px;font-size:1.05rem;line-height:1.25}
.customer-journey p{margin:0;color:var(--muted);font-size:.9rem}
.journey-actions{display:flex;justify-content:center;gap:12px;margin-top:32px}
.faq-section .section-heading h1{margin:0 0 14px;font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.02;letter-spacing:-.05em}
.faq-group{max-width:900px;margin:48px auto 0}
.faq-group h2{margin:0 0 18px;font-size:1.7rem}
.faq-group details{max-width:none}
.regulations-hero{padding:92px 0 68px;background:linear-gradient(180deg,#f7fbff,#fff)}
.regulation-card-grid,.ventilation-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.regulation-card-grid article,.ventilation-options-grid article{padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 8px 24px rgba(31,65,110,.05)}
.regulation-card-grid article>span{color:var(--blue);font-weight:800}
.regulation-card-grid h3,.ventilation-options-grid h3{margin:10px 0;line-height:1.2}
.regulation-card-grid p,.ventilation-options-grid p{color:var(--muted)}
.official-source-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:30px;padding:22px;border:1px solid #b8d6ff;border-radius:16px;background:#edf5ff}
.official-source-box strong{width:100%}
.official-source-box a{color:var(--blue-dark);font-weight:750}
.regulations-factors{max-width:900px;margin:42px auto 0;padding:32px;border-left:4px solid var(--blue);border-radius:0 18px 18px 0;background:var(--soft)}
.regulations-factors h2{margin-top:0}
.regulations-factors p{color:var(--muted)}
.regulations-disclaimer{max-width:900px;padding:36px;border:1px solid #b8d6ff;border-radius:24px;background:#fff}
.regulations-disclaimer h2{margin:4px 0 14px;font-size:2.2rem;line-height:1.08}
.regulations-disclaimer p{margin-bottom:0;color:var(--muted)}

@media(max-width:1050px){.home-why-grid.card-grid.four{grid-template-columns:repeat(2,1fr)}
.customer-journey{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:900px){.page-how+.page-how{padding-top:72px}
.home-piv-summary-grid,.piv-limit-grid{grid-template-columns:1fr}
.piv-summary-flow{grid-template-columns:1fr}
.piv-summary-flow i{transform:none}
.piv-step-grid,.regulation-card-grid,.ventilation-options-grid{grid-template-columns:1fr 1fr}
.customer-journey{grid-template-columns:1fr 1fr}
.airflow-exits{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){.page-how+.page-how{padding-top:60px}
.home-why-grid.card-grid.four,.piv-step-grid,.piv-mount-grid,.regulation-card-grid,.ventilation-options-grid,.customer-journey{grid-template-columns:1fr}
.home-why-grid .feature-card{min-height:0}
.piv-summary-flow span{min-height:84px}
.piv-limit-card,.piv-heated-card,.airflow-diagram,.regulations-disclaimer{padding:22px}
.plain-check-list,.airflow-exits{grid-template-columns:1fr}
.journey-actions{align-items:stretch;flex-direction:column}
.journey-actions .button{width:100%}
.official-source-box{align-items:flex-start;flex-direction:column}
.narrow-content h1,.regulations-hero h1{font-size:3rem}
.regulations-disclaimer h2{font-size:1.8rem}
}

.pricing-guide-links{margin-top:-12px;margin-bottom:36px}

.section-heading h1{margin:0 0 14px;font-size:clamp(2.1rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.04em}
.areas-grid h1{margin:0 0 14px;font-size:clamp(2.4rem,4.5vw,4rem);line-height:1.05;letter-spacing:-.045em}
.piv-explainer-hero{padding-bottom:36px}
.piv-film-feature{padding-top:24px}
.piv-film-feature .section-heading{margin-bottom:28px}
@media(max-width:600px){.page-how+.piv-film-feature{padding-top:28px}
}

/* Release B V2 pricing, homeowner guidance and customer support */
.pricing-inclusions{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:32px;align-items:center;margin:0 0 38px;padding:28px 30px;border:1px solid #b8d6ff;border-radius:22px;background:#edf5ff}
.pricing-inclusions h2{margin:0;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.1}
.pricing-inclusions p{margin:0;color:#405168}
.content-hero{padding:92px 0 68px;background:linear-gradient(180deg,#f7fbff,#fff)}
.content-hero h1{margin:0 0 18px;font-size:clamp(2.65rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.05em}
.content-hero p{color:var(--muted)}
.guide-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:42px;align-items:start}
.guide-layout h2,.next-step-panel h2{margin:0 0 14px;font-size:clamp(2rem,3.5vw,3rem);line-height:1.08;letter-spacing:-.04em}
.guide-layout p,.next-step-panel p{color:var(--muted)}
.guide-callout{padding:28px;border:1px solid #b8d6ff;border-radius:20px;background:#edf5ff}
.guide-callout strong{display:block;margin-bottom:8px;color:var(--blue-dark);font-size:1.12rem}
.guide-callout p{margin:0;color:#405168}
.next-step-panel{max-width:920px;margin:auto;padding:36px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(31,65,110,.06);text-align:center}
.page-condensation .plain-check-list,.page-support .plain-check-list{grid-template-columns:1fr}
.page-condensation .plain-check-list li,.page-support .plain-check-list li{background:#eef5ff;color:#405168}
.page-condensation .plain-check-list li:before,.page-support .plain-check-list li:before{content:"✓";color:var(--blue)}

@media(max-width:900px){.pricing-inclusions,.guide-layout{grid-template-columns:1fr}}
@media(max-width:600px){.content-hero h1{font-size:2.65rem}.pricing-inclusions,.guide-callout,.next-step-panel{padding:22px}}
