@font-face{font-family:"Barlow Condensed";font-style:italic;font-weight:800;font-display:swap;src:url(/assets/fonts/barlow-condensed-800-italic.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/barlow-400.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/barlow-600.woff2) format("woff2")}
:root{
  --black:#000;
  --panel:#181818;
  --line:#3a3a3a;
  --yellow:#F8CC0E;
  --white:#fff;
  --ash:#C4C4C4;
  --wa:#25D366;
  --display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;
  --body:"Barlow","Helvetica Neue",Arial,sans-serif;
  --gut:clamp(16px,4vw,56px);
  --sec:clamp(72px,9vw,136px);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font:400 clamp(17px,1.25vw,19px)/1.55 var(--body);overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
main:focus{outline:0}
[hidden]{display:none!important}
[id]{scroll-margin-top:calc(var(--hh,90px) + 12px)}
img{-webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.house img,.svc img,.pano img{pointer-events:none}
.wrap{max-width:1320px;margin-inline:auto;width:100%}
.sec{padding:var(--sec) var(--gut)}
.sec.tight{padding-top:0}
.mb{margin-bottom:clamp(28px,4vw,56px)}

h1,h2,h3{font-family:var(--display);font-style:italic;font-weight:800;text-transform:uppercase;margin:0;letter-spacing:.002em;text-wrap:balance}
h2{font-size:clamp(46px,7.2vw,104px);line-height:.94}
h3{font-size:clamp(40px,4.4vw,62px);line-height:.95}
.y{color:var(--yellow)}
.lead{color:var(--ash);max-width:58ch}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:58px;padding:.55em 1.25em;font:italic 800 clamp(23px,2vw,27px)/1 var(--display);text-transform:uppercase;text-decoration:none;border:2px solid var(--yellow);transform:skewX(-8deg);transition:background .15s,color .15s;background:none;color:var(--white);cursor:pointer}
.btn>*{transform:skewX(8deg)}
.btn-y{background:var(--yellow);color:var(--black)}
.btn-y:hover{background:var(--white);border-color:var(--white)}
.btn-o:hover{background:var(--yellow);color:var(--black)}
.btn-k{background:var(--black);border-color:var(--black);color:var(--yellow)}
.btn-k:hover{background:var(--white);border-color:var(--white);color:var(--black)}
.btn-ko{border-color:var(--black);color:var(--black)}
.btn-ko:hover{background:var(--black);color:var(--yellow)}
.btn svg{width:1.05em;height:1.05em;flex:none}

.checks{display:grid;gap:.42em}
.checks li{display:flex;gap:.6em;align-items:flex-start}
.checks li::before{content:"";flex:none;width:1.25em;height:1.25em;margin-top:.14em;border-radius:50%;background:var(--yellow) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.3 3.3L15 6.8' fill='none' stroke='%23000' stroke-width='2.6'/%3E%3C/svg%3E") center/78% no-repeat}

.top{display:flex;align-items:center;gap:clamp(12px,3vw,40px);padding:14px var(--gut);position:sticky;top:0;z-index:30;background:var(--black);transition:box-shadow .2s}
.top.stuck{box-shadow:0 1px 0 #2b2b2b,0 10px 28px rgba(0,0,0,.6)}
.brand img{height:clamp(50px,5vw,66px);width:auto}
.top nav{margin-left:auto}
.top nav>ul{display:flex;gap:clamp(16px,2.2vw,34px)}
.top nav a{text-decoration:none;font-weight:600;padding:.5em 0;display:block}
.top nav a:hover,.top nav a[aria-current]{color:var(--yellow)}
.has-sub{position:relative}
.has-sub>ul{position:absolute;left:-18px;top:100%;min-width:220px;background:#141414;border-top:3px solid var(--yellow);padding:8px 18px;display:none}
.has-sub:hover>ul,.has-sub:focus-within>ul{display:block}
.top-tel{font:italic 800 23px/1 var(--display);text-decoration:none;color:var(--black);background:var(--yellow);white-space:nowrap;display:flex;align-items:center;gap:.45em;padding:.5em .95em;transform:skewX(-8deg);transition:background .15s}
.top-tel>*{transform:skewX(8deg)}
.top-tel:hover{background:var(--white)}
.top-tel svg{width:.85em;height:.85em}
.menu-btn{display:none;background:none;border:0;padding:10px;color:var(--white);cursor:pointer}
.menu-btn svg{width:26px;height:26px}

.hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));--eave:clamp(170px,15.5vw,240px);--band:clamp(10px,1.15vw,17px);--eh:clamp(4px,.5vw,7px);padding-bottom:clamp(48px,6vw,84px)}
.house{grid-column:6/-1;grid-row:1;position:relative;margin-top:10px;min-height:100%}
.house img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:74% 45%;clip-path:polygon(0 var(--eave),50% 0,100% var(--eave),100% 100%,0 100%);-webkit-mask-image:linear-gradient(to bottom,#000 58%,transparent 97%);mask-image:linear-gradient(to bottom,#000 58%,transparent 97%);animation:fade 1s .35s both}
.roof{position:absolute;left:0;top:0;width:100%;height:var(--eave);overflow:visible;clip-path:inset(-90px -100vw 0 -100vw);animation:wipe 1s cubic-bezier(.7,0,.2,1) both}
.roof polyline{fill:none;stroke:var(--yellow);stroke-width:var(--band);vector-effect:non-scaling-stroke;stroke-linejoin:miter;stroke-miterlimit:10}
.roof polygon{fill:var(--yellow)}
.roof .ev{stroke-width:calc(var(--eh)*2)}
.hero-copy{grid-column:1/9;grid-row:1;position:relative;z-index:2;padding:calc(var(--eave) + 34px) 0 0 var(--gut)}
h1{font-size:clamp(84px,12vw,184px);line-height:.85}
h1 span{display:block}
.hero p:not(.crumb){margin-top:.95em;max-width:33em;color:#e6e6e6;text-shadow:0 1px 14px #000}
.cta{display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:26px;padding-left:6px}
.hero .checks{margin-top:26px;grid-auto-flow:column;grid-auto-columns:max-content;gap:.4em 1.6em;font-weight:600;text-shadow:0 1px 12px #000}
.hero.sub{--eave:clamp(130px,11.5vw,180px)}
.hero.sub h1{font-size:clamp(70px,10.4vw,160px)}
.crumb{color:var(--ash);font-size:.92em;margin-bottom:12px;text-shadow:0 1px 10px #000}
.crumb a{text-underline-offset:.2em}
.crumb a:hover{color:var(--yellow)}
@keyframes wipe{from{clip-path:inset(-90px 100% 0 -100vw)}to{clip-path:inset(-90px -100vw 0 -100vw)}}
@keyframes fade{from{opacity:0}to{opacity:1}}

.pv{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(36px,6vw,96px);align-items:center}
.pv .lead{margin-top:24px}
.pv .checks{margin-top:26px;font-weight:600;font-size:1.08em}
.pvb{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);align-items:center}
.home .pvb{grid-template-columns:minmax(0,1fr)}
@media (min-width:861px){.home .pvlist{display:none}}
.pvb figure{margin:0}
.pvb .btn{margin:14px 0 0 6px}
#pvSvg{width:100%;height:auto}
#pvSvg text{font:600 23px var(--body)}
#pvSvg .ins{font:600 22px var(--body);fill:var(--yellow)}
#pvSvg .done{font:italic 800 44px var(--display);text-transform:uppercase;fill:var(--yellow);opacity:0;transition:opacity .4s}
#pvSvg .lyr,#pvSvg .guides,#pvSvg .lbls,#pvSvg .foot,#pvSvg .inset{transition:transform .85s cubic-bezier(.6,0,.2,1),opacity .35s}
#pvSvg.built .lyr[data-l="1"]{transform:translateY(176px)}
#pvSvg.built .lyr[data-l="2"]{transform:translateY(86px)}
#pvSvg.built .lyr[data-l="3"]{transform:translateY(18px)}
#pvSvg.built .lyr[data-l="4"]{transform:translateY(-100px)}
#pvSvg.built .lyr[data-l="5"]{transform:translateY(-170px)}
#pvSvg .cab-h{transition:transform .85s cubic-bezier(.6,0,.2,1)}
#pvSvg.built .cab-h{transform:translateY(176px)}
#pvSvg .cab-v{transform-box:fill-box;transform-origin:50% 100%;transition:transform .85s cubic-bezier(.6,0,.2,1)}
#pvSvg.built .cab-v{transform:scaleY(var(--s))}
#pvSvg .flow{opacity:0;transition:opacity .4s;animation:flow 1s linear infinite}
#pvSvg.built .flow{opacity:1;transition-delay:.85s}
#pvSvg .halo{opacity:0;transition:opacity .6s}
#pvSvg.built .halo{opacity:1;transition-delay:1s}
#pvSvg .scr{stroke-dasharray:1 1;stroke-dashoffset:0}
#pvSvg.built .scr{animation:scr 1.1s .95s ease-out both}
#pvSvg.built .led{animation:led 1.6s 1s ease-in-out infinite}
@keyframes flow{to{stroke-dashoffset:-18}}
@keyframes scr{from{stroke-dashoffset:1}}
@keyframes led{50%{opacity:.25}}
#pvSvg .invl{font:600 21px var(--body);fill:var(--white)}
#pvSvg.built .guides,#pvSvg.built .lbls,#pvSvg.built .foot{opacity:0}
#pvSvg.built .inset{opacity:.25}
#pvSvg.built .done{opacity:1;transition-delay:.55s}
#pvSvg[data-on="6"] .lyr:not([data-l="6"]),#pvSvg[data-on="1"] .lyr:not([data-l="1"]),#pvSvg[data-on="2"] .lyr:not([data-l="2"]),#pvSvg[data-on="3"] .lyr:not([data-l="3"]),#pvSvg[data-on="4"] .lyr:not([data-l="4"]),#pvSvg[data-on="5"] .lyr:not([data-l="5"]){opacity:.14}
.pvlist{display:grid;gap:0;border-top:1px solid var(--line)}
.pvlist button{all:unset;display:block;width:100%;box-sizing:border-box;padding:14px 12px;border-bottom:1px solid var(--line);cursor:pointer}
.pvlist button:hover b{color:var(--yellow)}
.pvlist button:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px}
.pvlist button[aria-pressed="true"]{background:var(--yellow);color:var(--black)}
.pvlist button[aria-pressed="true"] span{color:var(--black)}
.pvlist button[aria-pressed="true"] b{color:var(--black)}
.pvlist b{display:block;font:italic 800 clamp(28px,2.4vw,34px)/1.05 var(--display);text-transform:uppercase}
.pvlist span{display:block;color:var(--ash);margin-top:3px}
.more{margin-top:26px;color:var(--ash)}
.more a,.faq a{color:var(--yellow);font-weight:600}

.sec-head{display:grid;gap:18px;margin-bottom:clamp(32px,4vw,60px)}
.svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.svc{position:relative;overflow:hidden;background:var(--black);border-top:5px solid var(--yellow);padding:clamp(24px,2.6vw,38px) clamp(18px,2.6vw,38px);min-height:clamp(340px,29vw,410px);display:flex;flex-direction:column}
.svc>*{position:relative}
.svc img{position:absolute;top:0;right:0;width:68%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(to right,transparent 4%,rgba(0,0,0,.34) 44%,#000 76%);mask-image:linear-gradient(to right,transparent 4%,rgba(0,0,0,.34) 44%,#000 76%)}
.svc h3,.svc p,.svc .checks{text-shadow:0 1px 10px #000,0 0 3px rgba(0,0,0,.7)}
.svc p{margin-top:8px;max-width:17em;font-weight:600}
.svc .checks{margin-top:18px;font-weight:600}
.svc a{margin-top:auto;padding-top:22px;font:italic 800 24px/1 var(--display);text-transform:uppercase;color:var(--yellow);text-underline-offset:.2em;align-self:flex-start;text-shadow:0 1px 10px #000}
.svc a:hover{color:var(--white)}
.who{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,72px);margin-top:clamp(56px,7vw,100px)}
.who p{margin-top:14px;color:var(--ash);max-width:46ch}

.values{--gable:clamp(52px,8vw,120px);background:var(--yellow);color:var(--black);clip-path:polygon(0 var(--gable),50% 0,70% calc(var(--gable)*.4),70% calc(var(--gable)*.06),75.5% calc(var(--gable)*.06),75.5% calc(var(--gable)*.51),100% var(--gable),100% 100%,0 100%);padding:calc(var(--gable) + clamp(36px,5vw,72px)) var(--gut) var(--sec)}
.values-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,44px);margin-top:clamp(32px,4vw,56px)}
.val b{display:block;font:italic 800 clamp(120px,17vw,250px)/.8 var(--display)}
.val h3{font-size:clamp(32px,3vw,44px);margin-top:14px}
.val p{margin-top:8px;max-width:26ch;font-weight:600}

.claim{padding:clamp(48px,6vw,92px) var(--gut)}
.claim-in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:18px clamp(28px,5vw,72px);align-items:end}
.claim p{color:var(--ash);max-width:40ch}
.claim a{display:inline-block;margin-top:12px;font:italic 800 24px/1 var(--display);text-transform:uppercase;color:var(--yellow);text-underline-offset:.2em}
.claim a:hover{color:var(--white)}


.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,6vw,96px);align-items:start}
.points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,3vw,44px)}
.points li{border-top:1px solid var(--line);padding:16px 0 26px}
.points h3,.faq h3{font-size:clamp(30px,2.7vw,38px)}
.points p,.faq p{color:var(--ash);margin-top:6px}
.note2{margin-top:6px;padding:14px 16px;border-left:4px solid var(--yellow);background:var(--panel)}
.faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,44px)}
.band{background:var(--yellow);color:var(--black);padding:clamp(52px,7vw,104px) var(--gut)}
.band-in{display:flex;flex-wrap:wrap;gap:24px 56px;align-items:center;justify-content:space-between}
.band .cta{margin-top:0}
.legal{max-width:760px}
.legal h3{font-size:30px;margin:1.3em 0 .25em}
.legal p{color:#ddd;margin-top:.5em}
.legal mark{background:var(--yellow);color:var(--black);padding:0 .25em;font-weight:600}

.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,44px);counter-reset:s;margin-top:clamp(32px,4vw,60px)}
.steps li{counter-increment:s;border-top:1px solid var(--line);padding-top:16px}
.steps li::before{content:counter(s);display:block;font:italic 800 clamp(72px,8vw,112px)/.9 var(--display);color:var(--yellow)}
.steps h3{font-size:clamp(30px,2.7vw,38px);margin-top:10px}
.steps p{margin-top:8px;color:var(--ash)}

.pano{position:relative;display:flex;min-height:clamp(540px,58vw,800px)}
.pano::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.62) 0,rgba(0,0,0,.42) 34%,transparent 58%);pointer-events:none}
.pano img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% 60%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 72%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 72%,transparent 100%)}
.pano-copy{position:relative;z-index:1;padding:clamp(44px,6vw,96px) var(--gut) 0}
.pano-copy h2{text-shadow:0 2px 22px rgba(0,0,0,.55)}
.reach-lead{margin-bottom:clamp(28px,4vw,48px)}
.route{--r:clamp(44px,5vw,64px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative;margin-top:clamp(8px,2vw,24px);text-align:center}
.route::before{content:"";position:absolute;left:16.6%;right:16.6%;top:calc(var(--r)/2 - 2px);height:4px;background:var(--yellow)}
.stop{position:relative;display:grid;grid-template-rows:var(--r) auto auto;justify-items:center;align-content:start;gap:8px}
.stop i{align-self:center;width:clamp(20px,2vw,28px);height:clamp(20px,2vw,28px);border-radius:50%;background:var(--white);border:4px solid var(--yellow);box-shadow:0 0 0 5px var(--black)}
.stop svg{width:var(--r);height:var(--r);background:var(--black);box-shadow:0 0 0 7px var(--black)}
.stop b{font:italic 800 clamp(30px,4.6vw,64px)/1 var(--display);text-transform:uppercase}
.stop.hub b{color:var(--yellow)}
.stop span{color:var(--ash);font-weight:600}
.towns{display:flex;flex-wrap:wrap;gap:8px 9px;margin-top:clamp(24px,3vw,40px)}
.towns li{padding:.3em .72em;border:1px solid #4d4d4d;font:italic 800 clamp(19px,1.6vw,23px)/1.1 var(--display);text-transform:uppercase;transform:skewX(-8deg)}
.towns li span{display:block;transform:skewX(8deg)}
.towns li.on{background:var(--yellow);border-color:var(--yellow);color:var(--black)}

.contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(36px,6vw,96px);align-items:start}
.contact .lead{margin-top:22px}
.ways{margin-top:32px;display:grid;gap:18px}
.ways span{display:block;color:var(--ash);font-size:.92em}
.ways a{font:italic 800 clamp(30px,3vw,42px)/1.05 var(--display);text-decoration:none;color:var(--yellow);overflow-wrap:anywhere}
.ways a:hover{color:var(--white)}
.ways .addr{font:italic 800 clamp(26px,2.4vw,34px)/1.1 var(--display);text-transform:uppercase}
form{background:var(--panel);padding:clamp(20px,3vw,44px);display:grid;gap:24px}
fieldset{border:0;padding:0;margin:0;min-width:0}
legend,.fl{padding:0;font-weight:600;margin-bottom:10px;display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips label{display:block;padding:.5em .9em;border:1.5px solid #5a5a5a;cursor:pointer;font-weight:600;line-height:1.25}
.chips label:hover{border-color:var(--yellow)}
.chips input:checked+label{background:var(--yellow);border-color:var(--yellow);color:var(--black)}
.chips input:focus-visible+label{outline:3px solid var(--white);outline-offset:2px}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:18px}
input[type=text],textarea{width:100%;background:var(--black);color:var(--white);border:1.5px solid #5a5a5a;padding:.7em .8em;font:400 17px/1.4 var(--body);border-radius:0}
input[type=text]:focus,textarea:focus{border-color:var(--yellow);outline:0}
textarea{min-height:104px;resize:vertical}
::placeholder{color:#9b9b9b}
.send{display:flex;flex-wrap:wrap;gap:12px 14px;padding-left:6px}
.note{color:var(--ash);font-size:.9em}

.stripes{height:18px;background:repeating-linear-gradient(-55deg,var(--yellow) 0 22px,var(--black) 22px 44px)}
footer{padding:clamp(40px,5vw,64px) var(--gut) 104px}
.foot{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr));gap:32px clamp(24px,4vw,56px);align-items:start}
.foot img{height:clamp(84px,9vw,118px);width:auto}
.foot h4{font:italic 800 26px/1 var(--display);text-transform:uppercase;color:var(--yellow);margin:0 0 10px}
.foot li{padding:.16em 0}
.foot a{text-decoration:none}
.foot a:hover{color:var(--yellow);text-decoration:underline}
.foot small{display:block;color:var(--ash);font-size:.88em;margin-top:12px}

.wa{position:fixed;right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);z-index:40;display:flex;align-items:center;gap:.5em;background:var(--wa);color:var(--black);padding:.62em 1.05em;font:italic 800 25px/1 var(--display);text-transform:uppercase;text-decoration:none;box-shadow:0 8px 28px rgba(0,0,0,.55),0 0 0 2px rgba(0,0,0,.6);transform:skewX(-8deg);transition:background .15s,opacity .2s,visibility .2s}
.wa>*{transform:skewX(8deg)}
.wa:hover{background:#fff}
.wa svg{width:1.05em;height:1.05em}

.hero.alt{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(16px,3vw,44px) var(--gut) clamp(48px,6vw,84px)}
.hero.alt h1{font-size:clamp(64px,8.4vw,136px)}
.alt-copy{position:relative;z-index:2}
.alt-fig{margin:0;min-width:0}
.rd{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%)}
.rd .fl{fill:var(--black)}
.rd .ln{fill:none;stroke:var(--yellow);stroke-linecap:round;stroke-dasharray:1 1;animation:draw 1.6s cubic-bezier(.6,0,.2,1) both}
.rd .ln0{animation-delay:.1s}
.rd .ln1{animation-delay:.35s}
.rd .ln2{animation-delay:.6s}
.rd .sun{fill:var(--yellow);animation:sunrise 1.8s 1s cubic-bezier(.2,.7,.2,1) both}
@keyframes sunrise{from{transform:translateY(150px)}}
@keyframes pop{from{opacity:0;transform:scale(.35)}}
.hd-fig{display:grid;gap:clamp(10px,1.4vw,20px);padding-top:clamp(20px,4vw,60px)}
.hd{width:100%;height:auto;overflow:visible}
.hd .r{fill:none;stroke:var(--yellow);stroke-width:24;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:1 1;animation:draw 1.1s .2s cubic-bezier(.6,0,.2,1) both}
.hd .e{stroke:var(--yellow);stroke-width:6;stroke-dasharray:100 100;animation:eave .45s 1.15s ease-out both}
.hd .ch{fill:var(--yellow);transform-box:fill-box;transform-origin:50% 100%;animation:rise .5s 1.05s cubic-bezier(.2,.8,.2,1) both}
.hd .wd{fill:var(--yellow);transform-box:fill-box;transform-origin:100% 100%;animation:pop .5s 1.25s cubic-bezier(.2,.9,.3,1.2) both}
.hd .pn{fill:var(--white);transform-box:fill-box;transform-origin:center;animation:pop .35s var(--d) cubic-bezier(.2,.9,.3,1.4) both}
@keyframes draw{from{stroke-dashoffset:1}}
@keyframes eave{from{stroke-dashoffset:100}}
@keyframes rise{from{transform:scaleY(0)}}
.hd-tag{display:flex;align-items:center;gap:.9em;font:600 clamp(15px,1.5vw,21px)/1 var(--body);text-transform:uppercase;letter-spacing:.42em;color:var(--white)}
.hd-tag::before,.hd-tag::after{content:"";flex:1;height:3px;background:var(--yellow);animation:grow-x .6s 1.9s ease-out both}
.hd-tag::before{transform-origin:right}
.hd-tag::after{transform-origin:left}
.hd-tag span{animation:fade .6s 1.85s both;padding-left:.42em}
@keyframes grow-x{from{transform:scaleX(0)}}
@media (min-width:861px){
  .house img{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 36%),linear-gradient(to bottom,#000 58%,transparent 97%);mask-image:linear-gradient(to right,transparent 0,#000 36%),linear-gradient(to bottom,#000 58%,transparent 97%);-webkit-mask-composite:source-in;mask-composite:intersect}
}
@media (max-width:1080px){
  .hero .checks{grid-auto-flow:row}
  .values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1100px){
  .top nav>ul{gap:clamp(12px,1.6vw,22px)}
  .top-tel{font-size:21px}
}
@media (max-width:980px){
  .menu-btn{display:block}
  .top{justify-content:space-between}
  .top-tel{margin-left:auto}
  .top-tel span{display:none}
  .top-tel{padding:.42em .62em}
  .top-tel svg{width:24px;height:24px}
  .top nav{position:absolute;left:0;right:0;top:100%;background:#141414;margin:0;display:none;border-top:3px solid var(--yellow);border-bottom:1px solid var(--line)}
  .top nav.open{display:block}
  .top nav>ul{flex-direction:column;gap:0;padding:6px var(--gut) 12px}
  .top nav a{font-size:19px;padding:.5em 0}
  .has-sub>ul{position:static;display:block;background:none;border:0;padding:0 0 0 16px;min-width:0}
}
@media (max-width:860px){
  .hero{display:block;--eave:30vw}
  .house{height:82vw;min-height:0}
  .house img{object-position:78% 40%}
  .hero-copy{padding:0 var(--gut);margin-top:-23vw}
  h1{font-size:clamp(64px,20.6vw,178px)}
  .hero h1 span{white-space:nowrap}
  .hero.sub{--eave:24vw}
  .hero.sub .house{height:60vw}
  .hero.sub .hero-copy{margin-top:-12vw}
  .hero.sub h1{font-size:clamp(58px,18vw,150px)}
  .pv,.pvb,.contact,.claim-in,.who,.split{grid-template-columns:minmax(0,1fr)}
  .hero.alt{display:flex;flex-direction:column;align-items:stretch;padding-top:4px}
  .alt-fig{order:-1}
  .hd-fig{padding:18px 0 6px}
  .svc-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .wa{font-size:21px;padding:.55em .85em}
  .wa.near{opacity:0;visibility:hidden}
  .btn{width:100%}
  .cta,.send{padding-inline:6px}
  .pvb .btn{width:calc(100% - 12px)}
  .values-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .val{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:12px;align-items:start}
  .val b{font-size:124px;grid-row:1/3}
  .val h3{margin-top:4px}
  .val p{max-width:none}
  .steps{grid-template-columns:minmax(0,1fr);gap:0}
  .steps li{display:grid;grid-template-columns:70px minmax(0,1fr);column-gap:8px;padding:18px 0}
  .steps li::before{grid-row:1/3;font-size:84px}
  .steps h3{margin-top:2px}
  .two,.points,.faq{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
