/* Shared site integration. Long destination articles remain readable and indexable. */
.sf26-site .sfh-header {position:relative;z-index:8}
.sf26-inner .sfh-header {margin-bottom:0}
.sf26-inner {background:#f5f8fc}
.sf26-inner .inner-body {padding-bottom:32px}
.sf26-inner .sf26-direct-wrap {padding:16px;max-width:1100px;margin-inline:auto}
.sf26-site [hidden] {display:none!important}
@media(prefers-reduced-motion:reduce){.sf26-site *, .sf26-site *::before,.sf26-site *::after {scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.sf26-direct{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.sf26-direct #main-content{flex:1;min-height:0;display:flex;justify-content:center;align-items:stretch;padding:10px}
.sf26-direct .sf26-panel-page{height:100%;min-height:0;max-height:100%;margin:0 auto}
.sf26-direct .sfh-headrow{min-height:70px}
.sf26-direct .sf26-panel-page:has(.sf26-map-view){height:100%;max-height:100%}
@media(max-width:640px){.sf26-direct .sfh-topbar{display:none}.sf26-direct .sfh-headrow{height:auto;min-height:0;grid-template-rows:auto auto;padding:6px 12px;gap:5px}.sf26-direct .sfh-brandline{height:48px}.sf26-direct .sfh-map-link{display:none}.sf26-direct .sfh-nav{min-height:32px}.sf26-direct #main-content{padding:6px}.sf26-direct .sf26-panel-page{width:100%;border-radius:15px;padding:10px}.sf26-direct .sf26-p-top{height:38px;min-height:34px;margin-bottom:6px}}

/* Phone layout: content, not a fraction of the browser window, establishes
   each row's minimum height. This matters with browser chrome and larger type. */
@media (max-width:760px) {
 .sf26-home{height:auto;min-height:100vh;min-height:100svh;overflow:visible}
 .sf26-home>#main-content{display:grid;flex:1 0 auto}
 .sf26-home>#main-content>.sfh-stage{height:auto;max-height:none;min-width:0;min-height:0}
 .sf26-home .sfh-header,.sf26-home .sfh-stage{-webkit-text-size-adjust:100%;text-size-adjust:100%}
 .sf26-home .sfh-stage{grid-template-rows:repeat(5,auto);grid-template-columns:minmax(0,1fr)}
 .sf26-home .sfh-topbits{height:auto;max-height:none;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2px;padding-block:4px}
 .sf26-home .sfh-topbit{white-space:normal;text-align:center;line-height:1.18}
 .sf26-home .sfh-topbit>span{min-width:0;overflow-wrap:anywhere}
 .sf26-home .sfh-headrow{height:auto;max-height:none;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:3px;padding:4px 2%}
 .sf26-home .sfh-brandline{height:auto;min-width:0;padding:1px 2%;justify-content:space-between}
 .sf26-home .sfh-identity{height:auto;width:auto;flex:1 1 0;min-width:0;gap:4%}
 .sf26-home .sfh-logo{height:clamp(25px,8vw,48px);width:48%;max-height:none;flex:none}
 .sf26-home .sfh-wordmark{min-width:0;line-height:1.05;overflow-wrap:anywhere}
 .sf26-home .sfh-nav{height:auto;min-width:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}
 .sf26-home .sfh-navitem{height:auto;white-space:normal;text-align:center;gap:.22em;padding:4px 1px;line-height:1.15;overflow-wrap:anywhere}
 .sf26-home .sfh-navitem>span{min-width:0}
 .sf26-home .sfh-map-link{height:auto;white-space:normal;line-height:1.12;text-align:center}
 .sf26-home .sfh-map-link>span{min-width:0}
 .sf26-home .sfh-stage-tabs label{overflow-wrap:anywhere}
 .sf26-home .sfh-campaign{grid-template-rows:auto auto}
 .sf26-home .sfh-pitch{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:8px 0 7px;overflow:visible;isolation:isolate}
 .sf26-home .sfh-pitch-text{width:52%;padding:0 1% 0 4.8%;min-width:0}
 .sf26-home .sfh-eyebrow{white-space:normal;line-height:1.16;overflow-wrap:anywhere}
 .sf26-home .sfh-pitch h1{font-size:clamp(21px,6.6vw,42px);line-height:1.04;max-width:none;overflow-wrap:anywhere}
 .sf26-home .sfh-pitch-text>p{font-size:clamp(10px,2.5vw,15px);max-width:none;line-height:1.23;margin-top:.35em}
 .sf26-home .sfh-trust{position:relative;inset:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:51%;padding-inline:2.2% 0;line-height:1.15;font-size:clamp(8px,1.85vw,12px)}
 .sf26-home .sfh-trust>span,.sf26-home .sfh-trust>span+span{min-width:0;flex-wrap:wrap;justify-content:center;align-content:center;gap:2px;padding:0 2px;text-align:center}
 .sf26-home .sfh-trust b,.sf26-home .sfh-tech-strip b,.sf26-home .sfh-advantages b{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .sf26-home .sfh-trust :is(svg,.sf-icon){width:1.65em;height:1.65em}
 .sf26-home .sfh-rug{width:48%;inset:0 0 0 auto;height:100%;overflow:hidden}
 .sf26-home .sfh-tech{grid-template-columns:minmax(0,.66fr) minmax(0,1.58fr);grid-template-rows:auto auto;align-content:center;align-items:center;gap:5px 3%;padding:7px 27% 7px 2.5%}
 .sf26-home .sfh-emblem{height:auto;aspect-ratio:1;align-self:center}
 .sf26-home .sfh-emblem>span{padding:15% 14% 10%;font-size:clamp(8px,2.15vw,15px);line-height:1.1}
 .sf26-home .sfh-tech-copy{min-width:0;align-self:center;overflow-wrap:anywhere}
 .sf26-home .sfh-tech h2>span{white-space:normal}
 .sf26-home .sfh-tech-copy p{display:block;line-height:1.2}
 .sf26-home .sfh-tech-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;font-size:clamp(7px,1.55vw,10px);align-self:auto;padding:3px 1px}
 .sf26-home .sfh-tech-strip>span{min-width:0;flex-flow:row wrap;justify-content:center;align-content:center;text-align:center;gap:2px;padding:0 2px}
 .sf26-home .sfh-tech-strip :is(svg,.sf-icon){width:1.65em;height:1.65em}
 .sf26-home .sfh-phone{inset:0 0 0 auto;width:25.5%;height:100%}
 .sf26-home .sfh-phone img{object-position:right center}
 .sf26-home .sfh-services{gap:5px;padding-block:5px}
 .sf26-home .sfh-service-lead{height:auto;min-height:0}
 .sf26-home .sfh-service-lead h2,.sf26-home .sfh-goldlink{white-space:normal;overflow-wrap:anywhere}
 .sf26-home .sfh-goldlink{text-align:center}
 .sf26-home .sfh-cards{grid-template-rows:repeat(2,auto);row-gap:4px;align-items:stretch}
 .sf26-home .sfh-card{height:auto;max-height:none}
 .sf26-home .sfh-svc-photo{flex:1 0 auto;min-height:clamp(21px,7.1vw,60px);position:relative}
 .sf26-home .sfh-svc-photo img{position:absolute;inset:0}
 .sf26-home .sfh-card>span{min-width:0;line-height:1.13}
 .sf26-home .sfh-card>span b{min-width:0;overflow-wrap:anywhere}
 .sf26-home .sfh-prices{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:5px;padding:5px 2%;margin-block:2px}
 .sf26-home .sfh-price-head,.sf26-home .sfh-price-head>div{min-width:0}
 .sf26-home .sfh-price-head>:is(svg,.sf-icon){width:clamp(19px,5.8vw,35px);height:clamp(19px,5.8vw,35px)}
 .sf26-home .sfh-pricetiles{height:auto;grid-template-columns:repeat(auto-fit,minmax(min(100%,52px),1fr));row-gap:4px}
 .sf26-home .sfh-price-tile{height:auto;min-height:0;padding:3px 1px;gap:2px}
 .sf26-home .sfh-price-tile>b{line-height:1.12;overflow-wrap:anywhere}
 .sf26-home .sfh-price-tile>span{max-width:100%;flex-wrap:wrap;line-height:1.12}
 .sf26-home .sfh-advantages{height:auto;padding:5px 1%;margin-block:3px}
 .sf26-home .sfh-advantages>span{min-width:0;padding:0 1%;line-height:1.14;gap:.3em}
 .sf26-home .sfh-advantages :is(svg,.sf-icon){width:1.9em;height:1.9em}
 .sf26-home .sfh-foot{grid-template-rows:auto auto}
 .sf26-home .sfh-areas{padding:5px 3.4% clamp(14px,4.2vw,32px);overflow:visible}
 .sf26-home .sfh-areacopy{height:auto;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-content:start;align-items:center;gap:3%;padding:0}
 .sf26-home .sfh-area-title{min-width:0;white-space:normal}
 .sf26-home .sfh-area-title h2{white-space:normal;overflow-wrap:anywhere;line-height:1.12;min-width:0}
 .sf26-home .sfh-areacopy p{min-width:0;max-width:none;padding-left:4%;line-height:1.2}
 .sf26-home .sfh-city{height:clamp(14px,4.2vw,32px)}
 .sf26-home .sfh-actionbar{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;align-items:stretch;gap:3%;padding:6px 4% max(6px,env(safe-area-inset-bottom))}
 .sf26-home .sfh-action{height:auto;min-width:0;min-height:36px;padding:4px 3px}
 .sf26-home .sfh-action b{white-space:normal;overflow-wrap:anywhere}
}
@media (max-width:480px) {
 .sf26-home .sfh-pricetiles{grid-template-columns:repeat(4,minmax(0,1fr))}
 .sf26-home .sfh-price-tile{flex-flow:row wrap;align-items:center;justify-content:center;column-gap:3px}
}
/* Short phone windows still use the four reachable views; labels and actions
   reserve their natural height. Only genuinely oversized content extends the page. */
@media(max-height:734px) and (max-width:760px),(max-width:350px) and (max-height:960px){
 .sf26-home .sfh-stage{grid-template-rows:auto minmax(min-content,1fr) auto}
 .sf26-home .sfh-stage-tabs{min-height:30px}
 .sf26-home .sfh-foot{grid-template-rows:auto}
 .sf26-home .sfh-areas{display:none}
 .sf26-home .sfh-advantages{display:none}
 .sf26-home .sfh-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,1fr)}
 .sf26-home .sfh-services{padding:8px 4%}
 .sf26-home .sfh-prices{grid-template-rows:auto auto;align-content:center;gap:9px}
 .sf26-home .sfh-pricetiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,auto);gap:6px}
 .sf26-home .sfh-price-tile{flex-flow:row wrap;align-items:center;justify-content:space-between;padding:5px}
 .sf26-home .sfh-stage:has(#sfh-area-view:checked){grid-template-rows:auto minmax(min-content,1fr) minmax(min-content,1fr) auto}
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-areas{display:grid;padding:7px 5% clamp(20px,6vw,45px)}
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-areacopy{display:flex;height:auto;flex-direction:column;align-items:flex-start;justify-content:center}
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-areacopy p{border:0;padding:0}
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-city{height:clamp(20px,6vw,45px)}
 .sf26-home #sfh-area-view:checked~.sfh-advantages{height:auto;align-self:stretch;margin:5px 3%}
}
@media (max-width:760px) and (max-height:450px) and (orientation:landscape){
 .sf26-home .sfh-headrow{grid-template-rows:auto;grid-template-columns:minmax(0,26fr) minmax(0,47fr) minmax(0,25fr);gap:1%}
 .sf26-home .sfh-navitem,.sf26-home .sfh-map-link{font-size:clamp(8px,1.45vw,10px)}
 .sf26-home .sfh-campaign{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
 .sf26-home .sfh-pitch h1{font-size:clamp(20px,3.7vw,28px)}
 .sf26-home .sfh-pitch-text>p{font-size:10px}
 .sf26-home .sfh-trust{font-size:8px}
 .sf26-home .sfh-tech-copy p{font-size:9px}
 .sf26-home .sfh-tech-strip{font-size:7px}
 .sf26-home .sfh-cards{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,auto)}
 .sf26-home .sfh-pricetiles{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,auto)}
}
/* Wide landscape handsets use the short-screen view; keep its skyline within
   the region row instead of the decorative desktop overhang. */
@media (orientation:landscape) and (min-width:761px) and (max-width:1000px) and (max-height:450px){
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-areas{min-width:0}
 .sf26-home #sfh-area-view:checked~.sfh-foot .sfh-city{left:4%;right:4%}
}
/* Conserve decoration, not text, on phones with less usable vertical space. */
@media (min-width:351px) and (max-width:480px) and (min-height:735px) and (max-height:790px){
 .sf26-home .sfh-topbits{padding-block:2px;row-gap:1px}
 .sf26-home .sfh-headrow{gap:2px}
 .sf26-home .sfh-pitch{padding-block:5px;gap:5px}
 .sf26-home .sfh-tech{padding-block:5px;row-gap:4px}
 .sf26-home .sfh-services{padding-block:4px}
 .sf26-home .sfh-svc-photo{min-height:clamp(20px,6vw,28px)}
 .sf26-home .sfh-areas{padding-bottom:12px}
 .sf26-home .sfh-city{height:12px}
}
@media (max-width:370px) and (min-height:451px) and (max-height:610px){
 .sf26-home .sfh-topbits{row-gap:1px;padding-block:2px}
 .sf26-home .sfh-headrow{padding-block:2px;gap:2px}
 .sf26-home .sfh-pitch{padding-block:4px;gap:5px}
 .sf26-home .sfh-tech{padding-block:4px;row-gap:4px}
 .sf26-home .sfh-actionbar{padding-block:4px max(4px,env(safe-area-inset-bottom))}
}
