@font-face{font-family:"BS Display";src:url(fonts/bshoulders-800-lat.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Plex";src:url(fonts/plexsans-400-lat.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Plex";src:url(fonts/plexsans-600-lat.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
:root{
 --oil:#0D1B2E;--oil2:#16304F;--oil3:#21406A;
 --caliche:#E8DBC0;--sand:#F6F0E3;--dust:#CDBB95;
 --red:#D3362B;--red-d:#B02A20;
 --ink:#141A24;--txt:#363E4A;--mute:#5B6472;--rule:#D9CCB0;
 --disp:"BS Display","Arial Narrow","Roboto Condensed",Impact,sans-serif;
 --body:"Plex",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
 --cut:clamp(18px,3vw,44px)
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font-family:var(--body);font-size:1.03rem;line-height:1.62;color:var(--txt);background:var(--sand);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:var(--oil3)}a:hover{color:var(--red-d)}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.pb-skip{position:absolute;left:-9999px}.pb-skip:focus{left:10px;top:10px;z-index:100;background:#fff;padding:8px 12px}
.pb-shell{width:min(1200px,calc(100% - 32px));margin-inline:auto}
h1,h2,h3{color:var(--ink);margin:0 0 .5em}
.pb-h2,h1{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:.98}
.pb-h2{font-size:clamp(2.1rem,5vw,3.6rem);margin-bottom:1.1em;position:relative;padding-top:18px;max-width:22ch}
.pb-h2::before{content:"";position:absolute;top:0;left:0;width:72px;height:8px;background:var(--red);transform:skewX(-24deg);transform-origin:left}
h3{font-family:var(--body);font-weight:600;font-size:1.13rem;line-height:1.3}
p{margin:0 0 .9em}
.pb-tel{white-space:nowrap;font-weight:600}

/* header: angular */
.pb-top{position:sticky;top:0;z-index:60;background:var(--oil);box-shadow:0 2px 0 var(--red)}
.pb-top-row{display:flex;align-items:center;gap:18px;min-height:66px}
.pb-logo img{height:44px;width:auto}@media (min-width:960px){.pb-logo img{height:50px}}
.pb-nav{display:none;margin-left:auto;gap:2px}
.pb-nav a{color:#E7EBF1;text-decoration:none;font-weight:600;font-size:.92rem;padding:8px 10px;letter-spacing:.02em}
.pb-nav a:hover{color:#fff;background:var(--oil2)}
.pb-top-call{margin-left:auto;display:inline-flex;align-items:center;gap:8px;align-self:stretch;background:var(--red);color:#fff;text-decoration:none;font-weight:600;padding:0 18px 0 30px;clip-path:polygon(18px 0,100% 0,100% 100%,0 100%);font-size:.98rem;white-space:nowrap}
.pb-top-call:hover{background:var(--red-d);color:#fff}
.pb-top-call svg{width:18px;height:18px;fill:#fff}
@media (max-width:420px){.pb-top-call-l{display:none}.pb-logo img{height:38px}}
@media (min-width:1080px){.pb-nav{display:flex}.pb-top-call{margin-left:12px;padding:0 26px 0 40px}}

/* buttons */
.pb-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;font-weight:600;text-decoration:none;letter-spacing:.02em;border:2px solid transparent;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);text-align:center}
.pb-btn--lg{min-height:56px;font-size:1.08rem;padding:14px 28px}
.pb-btn--red{background:var(--red);color:#fff}.pb-btn--red:hover{background:var(--red-d);color:#fff}
.pb-btn--outline{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #fff;clip-path:none}.pb-btn--outline:hover{background:#fff;color:var(--oil)}
.pb-btn--light{background:#fff;color:var(--oil)}.pb-btn--light:hover{background:var(--sand);color:var(--oil)}
.pb-btn--ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.9);clip-path:none}.pb-btn--ghost:hover{background:rgba(255,255,255,.12);color:#fff}

/* hero: split w/ diagonal */
.pb-hero{position:relative;background:var(--oil);color:#E9EDF3;overflow:hidden;isolation:isolate}
.pb-hero-media{position:absolute;inset:0;z-index:-1}
.pb-hero-img{width:100%;height:100%;object-fit:cover;object-position:30% 60%;opacity:.32}
.pb-hero-grid{padding:26px 0 30px}
.pb-hero h1{color:#fff;font-size:clamp(2.15rem,7.4vw,4.3rem);margin-bottom:.4em;line-height:.95}
.pb-hero-lede{font-size:1.06rem;color:#F2F4F7}
.pb-hero-sub{color:#D3DAE4;font-size:.98rem}
.pb-hero-sub .pb-tel{color:#fff}
.pb-hero-btns{display:grid;gap:10px;margin-top:16px}
@media (min-width:640px){.pb-hero-btns{display:flex;flex-wrap:wrap}}
@media (min-width:960px){
 .pb-hero{min-height:560px}
 .pb-hero-media{left:auto;width:52%;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}
 .pb-hero-img{opacity:1}
 .pb-hero-media::after{content:"";position:absolute;left:0;top:0;bottom:0;width:16%;background:linear-gradient(105deg,var(--red) 0 30%,transparent 30%)}
 .pb-hero-grid{padding:72px 0 80px}
 .pb-hero-copy{max-width:600px}
 .pb-hero h1{font-size:clamp(3rem,4.4vw,4.4rem)}
}

/* early form + trust icons */
.pb-early{background:var(--caliche);padding:26px 0;border-bottom:6px solid var(--oil)}
.pb-early-row{display:grid;gap:22px}
.pb-early-label{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:1.6rem;color:var(--oil);margin:0 0 10px;line-height:1}
.pb-formslot{background:#fff;border:2px solid var(--oil);box-shadow:8px 8px 0 var(--oil2);min-height:220px;display:flex;width:100%}
.pb-formslot-inner{flex:1;display:block;width:100%;padding:8px;font-weight:600;color:var(--mute);letter-spacing:.08em;background:#fff}
.pb-formslot-inner>*{width:100%!important;max-width:100%!important}
.pb-formslot iframe{display:block;width:100%!important;max-width:100%!important;border:0}
.pb-trust{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:1fr 1fr}
.pb-trust li{display:flex;flex-direction:column;gap:8px;background:var(--sand);padding:14px;border-left:5px solid var(--red);font-weight:600;color:var(--ink);font-size:.93rem;line-height:1.35}
.pb-ico{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.pb-trust .pb-ico{color:var(--red)}
.pb-early-row>*{min-width:0}
@media (min-width:960px){.pb-early{padding:44px 0}.pb-early-row{grid-template-columns:1.1fr 1fr;align-items:start}.pb-trust{align-content:start;margin-top:38px}.pb-formslot{min-height:300px}}

/* sections */
.pb-sec{padding:clamp(52px,7vw,96px) 0}
.pb-sec--paper{background:var(--sand)}
.pb-sec--caliche{background:var(--caliche)}
.pb-sec--oil{background:var(--oil);color:#D5DCE6}
.pb-sec--oil h2,.pb-sec--oil h3{color:#fff}
.pb-sec--oil a{color:#fff}

.pb-split{display:grid;gap:28px}
.pb-fig{margin:0}
.pb-fig--tilt img{border:6px solid #fff;box-shadow:8px 8px 0 var(--caliche)}
@media (min-width:960px){.pb-fig--tilt img{box-shadow:12px 12px 0 var(--caliche);transform:rotate(-1deg)}}
@media (min-width:960px){.pb-split{grid-template-columns:360px 1fr;align-items:start}.pb-split .pb-fig{position:sticky;top:100px}}
.pb-spec-grid{display:grid;gap:16px}
@media (min-width:720px){.pb-spec-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1080px){.pb-spec-grid--4{grid-template-columns:repeat(4,1fr)}}
.pb-spec{position:relative;background:#fff;padding:22px 20px 14px;border-top:4px solid var(--oil)}
.pb-spec-no{display:block;font-family:var(--disp);font-weight:800;font-size:2.2rem;line-height:1;color:var(--red);margin-bottom:6px}
.pb-spec p{font-size:.98rem}

.pb-seal{display:grid;gap:26px}
.pb-fig--wide img{width:100%;aspect-ratio:16/7;object-fit:cover;clip-path:polygon(0 0,100% 0,100% 88%,94% 100%,0 100%)}
.pb-seal-grid{display:grid;gap:18px}
@media (min-width:860px){.pb-seal-grid{grid-template-columns:1fr 1fr}}
.pb-plate{background:var(--oil2);padding:24px;border-left:6px solid var(--red)}
.pb-plate .pb-spec-no{color:var(--caliche)}

.pb-duo{display:grid;gap:14px;margin-bottom:22px}
.pb-duo img{width:100%;aspect-ratio:4/3;object-fit:cover}
@media (min-width:720px){.pb-duo{grid-template-columns:1fr 1fr}.pb-duo img{aspect-ratio:16/9}}

/* before/after */
.pb-ba{background:#fff;padding:44px 0;border-block:1px solid var(--rule)}
.pb-ba-note{font-size:.88rem;color:var(--mute);margin:0 0 14px;font-style:italic}
.pb-ba-grid{display:grid;gap:22px}
@media (min-width:960px){.pb-ba-grid{grid-template-columns:repeat(3,1fr)}}
.pb-ba-pair{margin:0;display:grid;gap:4px;background:var(--oil);padding:4px}
@media (min-width:600px) and (max-width:959px){.pb-ba-pair{grid-template-columns:1fr 1fr}.pb-ba-pair figcaption{grid-column:1/-1}}
.pb-ba-pair figcaption{color:#fff;font-weight:600;font-size:.9rem;padding:8px 8px 6px;letter-spacing:.03em;text-transform:uppercase}

/* compliance */
.pb-comp{display:grid;gap:26px}
.pb-comp-figs{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.pb-comp-figs img{width:100%;aspect-ratio:1/1;object-fit:cover}
@media (min-width:960px){.pb-comp{grid-template-columns:1fr 1.5fr}.pb-comp-figs{grid-template-columns:1fr;position:sticky;top:100px;align-self:start}.pb-comp-figs img{aspect-ratio:4/3}}
.pb-rule{background:var(--sand);padding:22px 22px 12px;margin-bottom:14px;border-left:6px solid var(--oil)}

/* properties */
.pb-props{display:grid;gap:2px;background:var(--oil3)}
@media (min-width:720px){.pb-props{grid-template-columns:1fr 1fr}}
.pb-prop{background:var(--oil);padding:26px 22px 14px}
.pb-prop .pb-ico{color:var(--red);width:38px;height:38px;margin-bottom:12px}

/* why */
.pb-why{max-width:820px;font-size:1.16rem;line-height:1.65;color:var(--ink);border-left:8px solid var(--red);padding-left:clamp(16px,3vw,32px)}

/* process timeline */
.pb-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:s}
.pb-step{position:relative;padding:0 0 24px 46px;border-left:3px dashed var(--dust);margin-left:14px}
.pb-step::before{content:"";position:absolute;left:-15px;top:0;width:28px;height:28px;background:var(--red);transform:rotate(45deg)}
.pb-step:last-child{border-left-color:transparent}
@media (min-width:1080px){
 .pb-steps{grid-template-columns:repeat(6,1fr);gap:18px}
 .pb-step{border-left:0;margin:0;padding:44px 0 0;border-top:3px dashed var(--dust)}
 .pb-step::before{left:0;top:-15px}
 .pb-step p{font-size:.95rem}
}

/* pricing */
.pb-budget{display:grid;gap:20px}
.pb-budget-lead p{font-size:1.08rem;color:var(--ink);max-width:70ch}
.pb-price{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pb-price li{background:#fff;padding:16px 18px 16px 56px;position:relative;border:1px solid var(--rule)}
.pb-price li::before{content:"$";position:absolute;left:0;top:0;bottom:0;width:40px;display:grid;place-items:center;background:var(--oil);color:#fff;font-family:var(--disp);font-weight:800;font-size:1.4rem}
.pb-budget-notes{display:grid;gap:4px}
@media (min-width:960px){.pb-budget-notes{grid-template-columns:repeat(3,1fr);gap:20px}.pb-budget-notes p{border-top:4px solid var(--red);padding-top:12px}}

/* weather */
.pb-wx{display:grid;gap:16px}
@media (min-width:720px){.pb-wx{grid-template-columns:1fr 1fr}}
@media (min-width:1080px){.pb-wx{grid-template-columns:repeat(4,1fr)}}
.pb-wx-tile{border:1px solid var(--oil3);padding:22px;clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,0 100%);background:var(--oil2)}
.pb-wx-tile .pb-ico{color:var(--caliche);width:36px;height:36px;margin-bottom:10px}

.pb-area-wrap{display:grid;gap:24px;align-items:center}.pb-area{font-size:1.04rem}.pb-plan{width:100%;max-width:420px;height:auto;box-shadow:10px 10px 0 var(--dust)}
@media (min-width:960px){.pb-area-wrap{grid-template-columns:1.6fr 1fr;gap:48px}}

/* faq */
.pb-faq{display:grid;gap:16px}
@media (min-width:860px){.pb-faq{grid-template-columns:1fr 1fr}}
.pb-qa{background:#fff;padding:22px 22px 10px;border-top:4px solid var(--red)}

/* quote */
.pb-sec--quote{background:var(--oil);color:#D5DCE6;position:relative}
.pb-sec--quote .pb-h2{color:#fff}
.pb-quote{display:grid;gap:24px}
.pb-quote-copy p{font-size:1.08rem}
.pb-quote .pb-formslot{min-height:320px;box-shadow:8px 8px 0 var(--red)}
.pb-form-note{font-size:.9rem;color:#B8C2D0;margin-top:16px}
.pb-alt-call{font-size:1.1rem}.pb-alt-call a{color:#fff}
@media (min-width:960px){.pb-quote{grid-template-columns:1fr 1.2fr;align-items:start}}

/* call bands */
.pb-band{padding:22px 0;position:relative}
.pb-band--red{background:var(--red)}
.pb-band--oil{background:var(--oil2);border-block:4px solid var(--red)}
.pb-band-row{display:grid;gap:14px;align-items:center}
.pb-band-msg{margin:0;color:#fff;font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(1.45rem,3.2vw,2.1rem);line-height:1.05}
.pb-band-btns{display:grid;gap:10px}
@media (min-width:720px){.pb-band-row{grid-template-columns:1fr auto}.pb-band-btns{display:flex}}
.pb-band--red .pb-btn--light{color:var(--red-d)}

/* footer */
.pb-foot{background:#08111E;color:#AEB8C6;padding:40px 0;font-size:.92rem}
.pb-foot a{color:#fff}
.pb-foot-row{display:grid;gap:18px}
.pb-foot-brand img{height:48px;width:auto;margin-bottom:12px}
@media (min-width:860px){.pb-foot{padding-bottom:40px}.pb-foot-row{grid-template-columns:1fr 1fr}}

/* sticky mobile dock */
.pb-dock{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:1.25fr 1fr;box-shadow:0 -4px 16px rgba(0,0,0,.25)}
.pb-dock a{display:flex;align-items:center;justify-content:center;min-height:56px;font-weight:600;text-decoration:none;font-size:1.02rem}
.pb-dock-call{background:var(--red);color:#fff}
.pb-dock-quote{background:var(--oil);color:#fff}
@media (min-width:860px){.pb-dock{display:none}}
@media (max-width:859px){body{padding-bottom:56px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* legal pages (privacy.html, terms.html) */
.pb-legal-body{max-width:820px}.pb-legal h1{font-family:var(--disp);font-weight:800;color:var(--ink);font-size:clamp(2.1rem,5vw,3.2rem);line-height:1.05;margin:0 0 .3em}.pb-legal-updated{color:var(--mute);margin:0 0 1.6em}.pb-legal h2{font-family:var(--disp);font-weight:800;color:var(--ink);font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.1;margin:1.6em 0 .4em}.pb-legal p,.pb-legal li{color:var(--txt)}.pb-legal ul{padding-left:1.2em}

/* early form row: fill the side column */
.pb-early-side{display:flex;flex-direction:column;gap:12px;min-width:0}
.pb-callcard{background:var(--oil);color:#fff;padding:20px 22px;border-left:6px solid var(--red)}
.pb-callcard-k{margin:0 0 6px;font-family:"BS Display",sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:1.35rem;line-height:1.1;color:#E8DBC0}
.pb-callcard-num{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:600;font-size:1.6rem;text-decoration:none;line-height:1.2}
.pb-callcard-num svg{width:26px;height:26px;fill:var(--red);flex:none}
.pb-callcard-num:hover{text-decoration:underline}
.pb-callcard-s{margin:8px 0 0;font-size:.93rem;color:#C9D2DE;line-height:1.45}
.pb-early-fig{margin:0;display:none}
.pb-early-fig img{display:block;width:100%;height:100%;object-fit:cover}
.pb-early-side .pb-trust{margin-top:0}
@media (max-width:959px){.pb-callcard{display:none}}
@media (min-width:960px){.pb-early-row{align-items:stretch}.pb-early-side{margin-top:38px}.pb-early-fig{display:block;flex:1 1 auto;min-height:170px;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 100%,6% 100%)}.pb-early-fig img{position:absolute;inset:0}}
