/* BS 2.0: additive page styles. Existing Takservice body is deliberately untouched. */
.bs2-page .bs2-site{--bs2-space:clamp(64px,7.3vw,112px)}
.bs-site.bs2-site h1,.bs-site.bs2-site h2,.bs-site.bs2-site h3,.bs-site.bs2-site summary{font-family:BSManrope,Arial,sans-serif;color:inherit}
.bs-site.bs2-site h1{font-size:clamp(46px,6.5vw,96px);line-height:1.03;letter-spacing:-.065em}
.bs-site.bs2-site h2{font-size:clamp(36px,4.3vw,64px);line-height:1.08;letter-spacing:-.055em}
.bs-site.bs2-site h3{font-size:clamp(24px,2.4vw,36px);line-height:1.15;letter-spacing:-.04em}
.bs-site.bs2-site p{font-size:16px;line-height:1.7}
.bs-site.bs2-site .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}
.bs2-site .bs2-section{padding-top:var(--bs2-space);padding-bottom:var(--bs2-space)}
.bs2-site .bs2-heading{max-width:760px;margin-bottom:44px}
.bs2-site .bs2-heading h2{margin:22px 0}
.bs2-site .bs2-heading-wide{max-width:none;display:grid;grid-template-columns:1.2fr 1fr;gap:0 8vw;align-items:end}
.bs2-site .bs2-heading-wide>.eyebrow{grid-column:1/-1}
.bs2-site .bs2-heading-wide>h2{margin-bottom:0}
.bs-site.bs2-site .bs2-intro{font-size:clamp(17px,1.5vw,21px);max-width:52ch}
.bs2-site .bs2-copy>*+*{margin-top:24px}
.bs2-site .bs2-copy>.eyebrow+h2{margin-top:18px}
.bs-site.bs2-site .bs2-note{font-size:13px;line-height:1.65;color:var(--muted)}
.bs2-site .bs2-split,.bs2-site .bs2-problem-grid,.bs2-site .bs2-about-work,.bs2-site .bs2-contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px);align-items:center}
.bs2-site picture{display:block;background:#dce0d7}
.bs2-site picture img{width:100%;height:100%;object-fit:cover}
.bs2-site figcaption{font-size:12px;line-height:1.6;margin-top:14px;color:var(--muted)}
.bs2-site .bs2-problem-grid{align-items:start}
.bs2-site .bs2-problem-grid>.bs2-material{grid-column:2;grid-row:1}
.bs2-site .bs2-problem-grid>.bs2-accordion{grid-column:1;grid-row:1}
.bs2-site .bs2-material picture{aspect-ratio:1.34;overflow:hidden}
.bs2-site .bs2-material img{object-position:50% 48%}
.bs2-site .bs2-accordion details{border-top:1px solid var(--line)}
.bs2-site .bs2-accordion details:last-child{border-bottom:1px solid var(--line)}
.bs2-site summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:20px;min-height:72px;padding:20px 0;font-size:20px;line-height:1.4;font-weight:600;letter-spacing:-.025em}
.bs2-site summary::-webkit-details-marker{display:none}
.bs2-site summary svg{flex:none;color:var(--red)}
.bs2-site summary>span:not(.bs2-plus){flex:1;min-width:0;overflow-wrap:anywhere}
.bs2-site summary:focus-visible{outline:3px solid #b26b19;outline-offset:4px}
.bs2-site .bs2-plus{display:block;width:16px;height:16px;position:relative;flex:none;margin-left:auto}
.bs2-site .bs2-plus:before,.bs2-site .bs2-plus:after{content:"";position:absolute;background:currentColor;left:0;top:7px;width:16px;height:1px}
.bs2-site .bs2-plus:after{transform:rotate(90deg)}
.bs2-site details[open]>summary .bs2-plus:after{transform:none}
.bs2-site .bs2-accordion details>p{padding:0 0 24px;color:var(--muted);max-width:52ch}
.bs2-site .bs2-inspection{background:#e8e8df}
.bs2-site .bs2-inspection-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:start}
.bs2-site .bs2-inspection-intro h2{max-width:12ch}
.bs2-site .bs2-inspection-intro .bs2-intro{margin-top:0}
.bs2-site .bs2-portrait{aspect-ratio:4/5;overflow:hidden}
.bs2-site .bs2-portrait img{object-position:50% 42%}
.bs2-site .bs2-checklist{list-style:none;padding:0;margin:28px 0}
.bs2-site .bs2-checklist li{padding:12px 0 12px 26px;position:relative;border-bottom:1px solid #bcc4bb}
.bs2-site .bs2-checklist li:before{content:"";position:absolute;left:0;top:21px;width:9px;height:5px;border-left:1.5px solid var(--red);border-bottom:1.5px solid var(--red);transform:rotate(-45deg)}
.bs2-site .bs2-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:52px}
.bs2-site .bs2-services article{padding-top:24px;border-top:1px solid var(--ink)}
.bs2-site .bs2-service-number{font-size:12px;display:block;margin-bottom:35px;color:var(--red)}
.bs2-site .bs2-services h3{margin-bottom:10px}
.bs-site.bs2-site .bs2-service-summary{font-size:12px;margin-bottom:24px;color:var(--muted)}
.bs2-site .bs2-services .bs2-note{margin-top:18px}
.bs2-site .bs2-prevention{margin-top:36px;border-left:2px solid var(--red);padding-left:24px;max-width:85ch}
.bs2-site .bs2-review-link{margin-top:28px}
.bs2-site .bs2-section-end{display:flex;gap:32px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:40px;padding-top:20px}
.bs-site.bs2-site .bs2-section-end>p{font-size:13px;max-width:49ch;color:var(--muted)}
.bs2-site .bs2-section-end>a{flex-shrink:0}
.bs2-site .bs2-work{background:var(--ink);color:var(--white);padding:var(--bs2-space) 0}
.bs2-site .bs2-work-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center}
.bs2-site .bs2-work picture{aspect-ratio:1.2;overflow:hidden}
.bs-site.bs2-site .bs2-work .bs2-note,.bs2-site .bs2-work figcaption{color:#c2cecb}
.bs2-site .bs2-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.bs2-site .bs2-comparison picture{aspect-ratio:4/3;overflow:hidden}
.bs2-site .bs2-comparison img{object-position:center}
.bs2-site .bs2-comparison figcaption{font-size:15px;color:var(--ink)}
.bs2-site .bs2-comparison figcaption span{font-size:11px;color:var(--muted);margin-right:18px}
.bs2-site .bs2-project-note{margin-top:20px}
.bs2-site .bs2-more-project{border-top:1px solid var(--line);margin-top:32px}
.bs2-site .bs2-more-project>summary{font-size:16px}
.bs2-site .bs2-more-project>.bs2-note{margin-top:16px}
.bs2-site .bs2-guarantee{background:var(--ink);color:var(--white);padding:var(--bs2-space) 0}
.bs2-site .bs2-guarantee-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:8vw;align-items:start}
.bs2-site .bs2-guarantee-number{font-size:clamp(100px,16vw,240px);line-height:.85;letter-spacing:-.10em;font-weight:400;color:#e5e3d5}
.bs2-site .bs2-guarantee-number>span{font-size:clamp(24px,4vw,56px);letter-spacing:-.05em;display:block;margin:32px 0 0 10px}
.bs2-site .bs2-guarantee details{border-top:1px solid #77878a;margin-top:32px}
.bs2-site .bs2-guarantee summary{font-size:15px;letter-spacing:0}
.bs2-site .bs2-guarantee details p{font-size:14px;color:#d6dcd6;margin:0 0 18px}
.bs2-site .bs2-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:52px 0 0}
.bs2-site .bs2-steps li{border-top:1px solid var(--line);padding-top:20px}
.bs2-site .bs2-step-number{display:block;font-size:12px;color:var(--red);margin-bottom:28px}
.bs-site.bs2-site .bs2-steps h3{font-size:23px;margin-bottom:16px}
.bs-site.bs2-site .bs2-steps p{font-size:14px}
.bs2-site .bs2-reviews{display:flex;align-items:end;justify-content:space-between;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:40px;padding-bottom:44px}
.bs-site.bs2-site .bs2-reviews h2{font-size:32px;margin:18px 0 12px}
.bs-site.bs2-site .bs2-reviews p:not(.eyebrow){font-size:14px}
.bs2-site .bs2-reviews>a{flex-shrink:0}
.bs2-site .bs2-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}
.bs2-site .bs2-faq summary{font-size:18px}
.bs2-site .bs2-page-intro h1{max-width:850px;margin:24px 0 32px}
.bs2-site .bs2-page-intro .bs2-intro{max-width:630px}
.bs2-site .bs2-about-work{align-items:center}
.bs2-site .bs2-about-image{aspect-ratio:4/5;overflow:hidden}
.bs2-site .bs2-about-image img{object-position:50% 40%}
.bs2-site .bs2-team{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.bs2-site .bs2-team article{border-top:1px solid var(--line);padding-top:24px}
.bs2-site .bs2-team h3{margin:20px 0}
.bs2-site .bs2-team .text-link{margin-top:20px}
.bs2-site .bs2-people{padding-bottom:16px}
.bs2-site .bs2-local{background:#e8e8df;padding:var(--bs2-space) 0}
.bs2-site .bs2-local picture{aspect-ratio:1.2;overflow:hidden}
.bs2-site .bs2-contact{align-items:start;grid-template-areas:"heading form" "information form";gap:28px clamp(32px,6vw,90px)}
.bs2-site .bs2-contact-heading{grid-area:heading}
.bs2-site .bs2-contact-information{grid-area:information}
.bs2-site .bs2-contact>.form-preview{grid-area:form}
.bs-site.bs2-site .bs2-contact .form-preview h2{font-size:32px;line-height:1.2;letter-spacing:-.045em;margin-bottom:14px}
.bs2-site .bs2-contact .form-preview>p:empty{display:none}
.bs2-site .bs2-contact h1{font-size:clamp(42px,5vw,72px)}
.bs2-site .bs2-contact .form-preview{align-self:start;margin-top:6px;min-width:0}
.bs2-site .bs2-contact-phone{display:inline-flex;align-items:center;gap:16px;font-size:clamp(24px,2.8vw,40px);letter-spacing:-.05em;font-weight:600;border-bottom:1px solid var(--line);padding:12px 0;flex-wrap:wrap}
.bs2-site .bs2-contact-details{border-top:1px solid var(--line);padding-top:20px;margin-top:36px}
.bs2-site .bs2-contact-details>div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:10px 0}
.bs2-site .bs2-contact-details dt{font-size:12px;color:var(--muted)}
.bs2-site .bs2-contact-details dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.bs2-site .bs2-contact-next{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding-top:60px;padding-bottom:72px;border-top:1px solid var(--line)}
.bs-site.bs2-site .bs2-contact-next h2{font-size:clamp(32px,3.5vw,48px);margin-top:18px}
.bs2-site .bs2-contact-next p+p{margin-top:20px}
.bs2-site .bs2-contact-next .text-link{margin-top:20px}
.bs2-site .bs2-footer{padding-top:56px;padding-bottom:32px;border-top:1px solid var(--line)}
.bs2-site .bs2-footer-top{display:flex;align-items:center;justify-content:space-between;gap:36px;padding-bottom:40px}
.bs2-site .bs2-footer-top img{width:205px;height:auto}
.bs-site.bs2-site .bs2-footer-top>p{font-size:20px;letter-spacing:-.035em}
.bs2-site .bs2-footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:30px;border-top:1px solid var(--line);padding-top:28px;font-size:12px}
.bs-site.bs2-site .bs2-footer-bottom p{font-size:12px}
.bs2-site .bs2-footer-bottom nav{display:flex;flex-wrap:wrap;gap:12px 22px}
.bs2-site .bs2-footer a:not(.text-link):hover{text-decoration:underline;text-underline-offset:5px}
.bs2-site .desktop-nav [aria-current=page]{border-bottom-color:var(--red)}
.bs-site .bs2-hero-trust{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;font-size:13px;max-width:600px;padding-top:18px;margin-top:24px;border-top:1px solid #ffffff35}
.bs-site .bs2-hero-trust>a{display:flex;flex-direction:row;align-items:center;gap:10px;text-decoration:none;min-height:44px;flex-wrap:wrap;color:var(--white)}
.bs-site .bs2-hero-trust .bs2-google-rating>span:last-child{white-space:nowrap;font-size:14px;font-weight:500;letter-spacing:-.01em}
.bs-site .bs2-hero-trust .bs2-google-rating:hover>span:last-child{text-decoration:underline;text-underline-offset:5px}
.bs-site .bs2-hero-trust .bs2-hero-stars{display:inline-flex;gap:3px;flex:none;line-height:1}
.bs-site .bs2-hero-trust .bs2-hero-stars svg{flex:none;width:16px;height:16px}
.bs-site .bs2-hero-assurances{display:grid;gap:3px;padding-left:24px;border-left:1px solid #ffffff35;line-height:1.6;color:#e3e9e2}
.bs-site .bs2-hero-assurances>span{display:block}
.bs-site .bs2-hero-trust>a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.bs2-page .bs-site .form-preview input{font-size:16px}
.bs2-page .bs-site .form-preview label{font-size:13px}
.bs2-page .bs-site .form-preview .prototype-note{display:block;max-width:none;overflow-wrap:anywhere}
.bs2-page .bs-site .form-preview .prototype-note a{display:inline;text-decoration:underline;text-underline-offset:3px}
.bs2-page .bs-site .editorial-footnote:empty{display:none}
.bs2-page .bs-site .faq summary{overflow-wrap:anywhere;min-width:0}
.bs2-page .bs-site .form-preview.bs2-phone-card>p{font-size:16px;line-height:1.7;max-width:36ch}
.bs2-page .bs-site .bs2-phone-card .button{margin-top:28px;width:100%;justify-content:space-between;min-height:48px}
.bs2-site .button,.bs2-site .text-link{max-width:100%}
.bs2-site .bs-arrow-slot{flex:none}
/* RC3: native comparison, verified portraits and shared local warranty proposal. */
.bs2-site .bs2-results{padding-bottom:clamp(32px,4vw,64px)}
.bs2-site .bs2-gallery{max-width:1024px;margin-inline:auto}
.bs2-site .bs2-project[hidden],.bs2-site .bs2-gallery-extra[hidden],.bs2-site .bs2-gallery-toggle[hidden],.bs2-site .bs2-compare [hidden],.bs2-site .bs2-compare-hint[hidden]{display:none!important}
.bs2-site .bs2-compare{position:relative;aspect-ratio:8/5;overflow:hidden;background:#dce0d7;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize;isolation:isolate}
.bs2-site .bs2-compare-after,.bs2-site .bs2-compare-before{position:absolute;inset:0;pointer-events:none}
.bs2-site .bs2-compare-before{clip-path:inset(0 calc(100% - var(--bs2-position,50%)) 0 0)}
.bs2-site .bs2-compare picture,.bs2-site .bs2-compare img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.bs2-site .bs2-compare-label{position:absolute;top:18px;max-width:calc(50% - 24px);box-sizing:border-box;overflow-wrap:anywhere;padding:6px 12px;color:#fff;background:#082b31;font-size:13px;line-height:1.5;pointer-events:none}
.bs2-site .bs2-before-label{left:18px}.bs2-site .bs2-after-label{right:18px}
.bs2-site .bs2-compare-range{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.bs2-site .bs2-compare-divider{position:absolute;top:0;bottom:0;left:var(--bs2-position,50%);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none}
.bs2-site .bs2-compare-divider>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;color:#fff;pointer-events:auto;touch-action:none}
.bs2-site .bs2-compare-divider>span::before{content:"";position:absolute;width:30px;height:30px;border:1px solid #fff;border-radius:50%;background:var(--red);box-shadow:0 2px 8px #0002}
.bs2-site .bs2-compare-divider svg{position:relative;width:22px;height:18px}
.bs2-site .bs2-compare:focus-within{outline:3px solid #b26b19;outline-offset:5px}
.bs2-site .bs2-compare:focus-within .bs2-compare-divider>span::before{outline:2px solid #fff;outline-offset:3px}
.bs2-site .bs2-compare-hint{margin-top:14px;font-size:13px;line-height:1.6;color:var(--muted)}
.bs2-site .bs2-project figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:10px 28px;flex-wrap:wrap;margin-top:14px}
.bs2-site .bs2-project-title{font-weight:500;color:var(--ink);font-size:14px}
.bs2-site .bs2-compare[data-image-error]{cursor:default}
.bs2-site .bs2-compare-error{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;padding:32px;text-align:center;background:#e8e8df;color:var(--ink)}
.bs2-site .bs2-gallery-extra{margin-top:40px}
.bs2-site .bs2-gallery-toggle{margin-top:28px;min-height:48px;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.bs2-site .bs2-gallery-toggle:hover{color:var(--red)}
.bs2-site .bs2-gallery-toggle:focus-visible{outline:3px solid #b26b19;outline-offset:4px}
.bs2-site .bs2-guarantee-benefits{list-style:none;padding:0;margin:24px 0 0}
.bs2-site .bs2-guarantee-benefits li{padding:14px 0;border-top:1px solid #748286;font-size:16px;line-height:1.65}
.bs2-site .bs2-guarantee-benefits li:last-child{border-bottom:1px solid #748286}
.bs2-site .bs2-guarantee .bs2-copy>h2{margin-top:0}
.bs2-site .bs2-longevity{display:grid;grid-template-columns:1fr 1.15fr;gap:8vw;border-top:1px solid #748286;margin-top:48px;padding-top:32px}
.bs-site.bs2-site .bs2-longevity h3{font-size:clamp(26px,3vw,42px)}
.bs-site.bs2-site .bs2-guarantee-status{margin-top:32px;padding:18px 22px;border-left:2px solid #dca86f;background:#ffffff0a;color:#f3ddc5;font-size:13px;line-height:1.7}
.bs2-site .bs2-result-link{padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.bs2-site .bs2-testimonials{padding-top:clamp(32px,4vw,64px)}
.bs2-site .bs2-quotes{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.bs2-site .bs2-quotes figure{border-top:1px solid var(--line);padding-top:24px}
.bs2-site .bs2-review-stars{display:flex;gap:4px;color:var(--red)}
.bs2-site .bs2-quotes blockquote{padding:0;margin:22px 0 28px}
.bs-site.bs2-site .bs2-quotes blockquote p{font-size:clamp(20px,2vw,28px);line-height:1.45;letter-spacing:-.025em;max-width:32ch}
.bs2-site .bs2-quotes figcaption>strong,.bs2-site .bs2-quotes figcaption>span{display:block}
.bs2-site .bs2-quotes figcaption>strong{font-size:14px;color:var(--ink);font-weight:500}
.bs2-site .bs2-testimonials>.text-link{margin-top:28px}
.bs2-site .bs2-team article{border-top:0;padding-top:0;min-width:0}
.bs2-site .bs2-person-photo{margin-bottom:24px}
.bs2-site .bs2-person-photo picture{aspect-ratio:1;overflow:hidden}
.bs2-site .bs2-person-photo img{object-position:center}
.bs2-site .bs2-team h3{overflow-wrap:anywhere}
/* RC5.1: every approved result uses the same geometry and comparator. */
.bs2-site .bs2-gallery-multiple{max-width:none}
.bs2-site .bs2-gallery-cases{display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
.bs2-site .bs2-project{min-width:0;outline-offset:5px}
.bs2-site .bs2-project:focus-visible{outline:3px solid #b26b19}
.bs2-site .bs2-project figcaption{display:block}
.bs2-site .bs2-project-title{display:block;font-size:20px;line-height:1.4;letter-spacing:-.025em}
.bs-site.bs2-site .bs2-project figcaption>p{font-size:14px;line-height:1.65;margin-top:9px;color:var(--ink)}
.bs2-site .bs2-project figcaption>span{display:block;margin-top:8px}
.bs2-site .bs2-more-results{margin-top:28px}
@media(min-width:1100px){
 .bs2-site .bs2-gallery-multiple .bs2-gallery-cases{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
 .bs2-site .bs2-gallery-extra{margin-top:32px}
 .bs2-site .bs2-gallery-multiple .bs2-compare{aspect-ratio:3/2}
 .bs2-site .bs2-gallery-multiple .bs2-compare-label{top:12px;padding:5px 8px;font-size:12px}
 .bs2-site .bs2-gallery-multiple .bs2-before-label{left:12px}.bs2-site .bs2-gallery-multiple .bs2-after-label{right:12px}
}
/* The five-field local preview uses the existing light form card. */
.bs2-page .bs-site .bs2-meeting-form{min-width:0;align-self:start}
.bs2-page .bs-site .bs2-meeting-form [hidden]{display:none!important}
.bs2-page .bs-site .bs2-meeting-form .bs2-form-delivery{font-size:14px;line-height:1.65;max-width:38ch;color:var(--muted)}
.bs2-page .bs-site .bs2-meeting-form label{font-size:13px;line-height:1.5;min-width:0}
.bs2-page .bs-site .bs2-meeting-form input{font-size:16px;min-height:48px;height:auto;color:var(--ink)}
.bs2-page .bs-site .bs2-meeting-form input:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.bs2-page .bs-site .bs2-meeting-form .field-row{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:16px}
.bs2-page .bs-site .bs2-field-error{display:block;font-size:13px;line-height:1.5;color:var(--red);margin:-10px 0 18px}
.bs2-page .bs-site .bs2-meeting-form [data-meeting-check]{width:100%;min-height:52px;white-space:normal;gap:16px;text-align:left;justify-content:space-between;margin-top:8px}
.bs2-page .bs-site .bs2-meeting-form .bs2-meeting-status{font-size:14px;line-height:1.65;max-width:none;margin-top:20px;color:var(--ink)}
.bs2-site .bs2-contact>.bs2-meeting-form{grid-area:form}
@media(max-width:720px){.bs2-page .bs-site .bs2-meeting-form .field-row{grid-template-columns:minmax(0,1fr);gap:0}}
@media(min-width:721px) and (max-width:1100px){
 .bs2-site .bs2-services{gap:24px}.bs2-site .bs2-heading-wide{gap:0 40px}
 .bs2-site .bs2-steps{grid-template-columns:1fr 1fr;row-gap:40px}
 .bs2-site .bs2-reviews{align-items:start;flex-direction:column;gap:20px}
 .bs2-site .bs2-contact{grid-template-columns:1fr;grid-template-areas:"heading" "form" "information";max-width:780px}
 .bs2-site .bs2-contact .form-preview{max-width:none;width:100%}
}
@media(max-width:720px){
 .bs2-site .bs2-heading{margin-bottom:32px}.bs2-site .bs2-heading-wide{display:block}
 .bs2-site .bs2-heading-wide>.bs2-intro{margin-top:22px}
 .bs2-site .bs2-split,.bs2-site .bs2-problem-grid,.bs2-site .bs2-work-grid,.bs2-site .bs2-faq,.bs2-site .bs2-about-work,.bs2-site .bs2-contact,.bs2-site .bs2-contact-next{grid-template-columns:1fr;gap:32px}
 .bs2-site .bs2-material{display:block}
 .bs2-site .bs2-problem-grid>.bs2-material,.bs2-site .bs2-problem-grid>.bs2-accordion{grid-column:auto;grid-row:auto}
 .bs2-site .bs2-inspection-intro{grid-template-columns:1fr;gap:28px}
 .bs2-site .bs2-inspection-intro h2{max-width:13ch}
 .bs2-site .bs2-contact{grid-template-areas:"heading" "form" "information"}
 .bs2-site .bs2-inspection .bs2-copy{order:-1}
 .bs2-site .bs2-portrait{aspect-ratio:1.18}.bs2-site .bs2-portrait img{object-position:50% 38%}
 .bs2-site .bs2-services{grid-template-columns:1fr;gap:32px;margin-top:32px}
 .bs2-site .bs2-service-number{margin-bottom:20px}
 .bs2-site .bs2-section-end{display:block}.bs2-site .bs2-section-end>a{margin-top:14px}
 .bs2-site .bs2-work picture{aspect-ratio:1.2}
 .bs2-site .bs2-comparison{grid-template-columns:1fr;gap:24px}
 .bs2-site .bs2-comparison picture{aspect-ratio:1.55}
 .bs2-site .bs2-comparison figcaption{margin-top:9px;font-size:14px}
 .bs2-site .bs2-guarantee-grid{grid-template-columns:1fr;gap:32px}
 .bs2-site .bs2-guarantee-number{font-size:clamp(86px,22vw,136px);display:flex;align-items:baseline;gap:18px}
 .bs2-site .bs2-guarantee-number>span{font-size:32px;margin:0}
 .bs2-site .bs2-longevity{grid-template-columns:1fr;gap:20px;margin-top:36px;padding-top:28px}
 .bs2-site .bs2-compare{aspect-ratio:1}
 .bs2-site .bs2-compare-label{top:12px;padding:5px 10px}.bs2-site .bs2-before-label{left:12px}.bs2-site .bs2-after-label{right:12px}
 .bs2-site .bs2-quotes{grid-template-columns:1fr;gap:32px}
 .bs2-site .bs2-steps{grid-template-columns:1fr;gap:28px;margin-top:32px}
 .bs2-site .bs2-steps li{display:grid;grid-template-columns:28px 1fr;gap:0 16px}
 .bs2-site .bs2-steps p{grid-column:2}.bs2-site .bs2-step-number{margin-top:4px}
 .bs2-site .bs2-reviews{display:block}.bs2-site .bs2-reviews>a{margin-top:16px}
 .bs2-site .bs2-team{grid-template-columns:1fr;gap:32px}
 .bs2-site .bs2-about-image{aspect-ratio:1.15}
 .bs2-site .bs2-about-work>.bs2-copy{order:-1}
 .bs2-site .bs2-contact .form-preview{width:100%;max-width:none}
 .bs2-site .bs2-contact-details>div{grid-template-columns:1fr;gap:4px}
 .bs2-site .bs2-footer-top,.bs2-site .bs2-footer-bottom{display:flex;flex-direction:column;align-items:start;gap:24px}
 .bs2-site .bs2-footer-top img{width:190px}
 .bs-site .bs2-hero-trust{font-size:12px;gap:8px 16px}
 .bs2-site summary{font-size:18px;gap:14px}
}
@media(prefers-reduced-motion:reduce){.bs2-site *{scroll-behavior:auto!important;transition:none!important}}

/* RC5.3: finite service-media playback; no permanent navigation controls. */
.bs2-page .bs-site .bs2-media-stage{position:relative;aspect-ratio:4/3;overflow:hidden;background:#263d43}
.bs2-page .bs-site .bs2-media-stage[role=button]{cursor:pointer;touch-action:pan-y}
.bs2-page .bs-site .bs2-media-stage:focus-visible{outline:2px solid var(--paper);outline-offset:5px}
.bs2-page .bs-site .bs2-media-frame{position:absolute;inset:0}
.bs2-page .bs-site .bs2-media-frame[hidden],.bs2-page .bs-site .bs2-media-error[hidden],.bs2-page .bs-site .bs2-media-frame picture[hidden]{display:none!important}
.bs2-page .bs-site .bs2-media-frame picture,.bs2-page .bs-site .bs2-media-frame img{display:block;width:100%;height:100%}
.bs2-page .bs-site .bs2-media-frame img{object-fit:cover;object-position:center}
.bs2-page .bs-site .bs2-media-frame[data-fit=contain] img{object-fit:contain}
.bs2-page .bs-site .bs2-service-media figcaption{margin-top:14px;min-width:0;overflow-wrap:anywhere}
.bs2-page .bs-site .bs2-media-caption-stack{display:grid;min-width:0}
.bs2-page .bs-site .bs2-media-caption-stack>strong{grid-area:1/1;min-width:0;display:block;color:var(--paper);font-size:.875rem;font-weight:500;line-height:1.6}
.bs2-page .bs-site .bs2-media-caption-stack>strong[data-active=false]{visibility:hidden}
.bs2-page .bs-site .bs2-service-media figcaption>p{margin-top:6px;color:#bdcbc7;font-size:.8125rem;line-height:1.65}
.bs2-page .bs-site .bs2-media-error{position:absolute;inset:0;display:flex;align-items:center;padding:24px;background:#263d43;color:var(--paper);font-size:.875rem;line-height:1.65;overflow-wrap:anywhere;overflow:auto}
.bs2-page .bs-site .bs2-media-noscript{margin-top:16px;font-size:.8125rem}
@media(max-width:600px){
 .bs-site .bs2-hero-trust{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-width:100%;padding-top:14px;margin-top:20px}
 .bs-site .bs2-hero-assurances{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;border-left:0}
}
@media(prefers-reduced-motion:reduce){
 .bs2-page .bs-site [data-bs2-service-sequence] .bs2-media-frame{animation:none!important}
}

/* RC5.4 motion only: all selectors belong to the assigned four-page profile. */
.bs2-page.bs2-motion-rc54[data-bs2-motion=on][data-bs2-motion-revision=rc542] .bs-site [data-bs-reveal=pending]{opacity:0;transform:translate3d(0,var(--bs2-reveal-y,36px),0)}
@media print{.bs2-page.bs2-motion-rc54 .bs-site [data-bs-reveal]{opacity:1!important;transform:none!important}}
.bs2-page.bs2-motion-rc54 .bs-site a,.bs2-page.bs2-motion-rc54 .bs-site button{transition-duration:var(--bs2-micro)}
.bs2-page.bs2-motion-rc54 .bs-site .menu-lines,.bs2-page.bs2-motion-rc54 .bs-site .bs-arrow-slot,.bs2-page.bs2-motion-rc54 .bs-site .tab-arrow,.bs2-page.bs2-motion-rc54 .bs-site .option-arrow,.bs2-page.bs2-motion-rc54 .bs-site .hotspot>span,.bs2-page.bs2-motion-rc54 .bs-site .bs2-plus::after,.bs2-page.bs2-motion-rc54 .bs-site .faq-list summary>span::after{transition:transform var(--bs2-micro) var(--bs2-motion-ease)}
.bs2-page.bs2-motion-rc54 .bs-site .hotspot{transition:background-color var(--bs2-micro) ease-out,box-shadow var(--bs2-micro) ease-out}
.bs2-page.bs2-motion-rc54 .bs-site .bs2-media-action{position:absolute;z-index:2;right:12px;bottom:12px;max-width:calc(100% - 24px);padding:5px 10px;color:#fff;background:#142e36e6;font-size:.75rem;line-height:1.5;pointer-events:none;opacity:0}
.bs2-page.bs2-motion-rc54 .bs-site .bs2-media-stage:focus-visible .bs2-media-action,.bs2-page.bs2-motion-rc54 .bs-site [data-media-state=paused] .bs2-media-action{opacity:1}
@media(hover:hover) and (pointer:fine){.bs2-page.bs2-motion-rc54 .bs-site .bs2-media-stage:hover .bs2-media-action{opacity:1}}
.bs2-page.bs2-motion-rc54[data-bs2-motion=off] .bs-site *,.bs2-page.bs2-motion-rc54[data-bs2-motion=off] .bs-site *::before,.bs2-page.bs2-motion-rc54[data-bs2-motion=off] .bs-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.bs2-page.bs2-motion-rc54[data-bs2-motion=off] .bs-site .bs-arrow-slot{transform:none!important}
@media(prefers-reduced-motion:reduce){.bs2-page.bs2-motion-rc54 .bs-site .bs-arrow-slot{transform:none!important}}
