/* BCS visual polish — a shared finishing layer, October 2026. */
body.bcs-polish {
  --bcs-line:#dce7ee; --bcs-soft:#f4f8fb;
  --bcs-card-shadow:0 8px 26px rgba(13,43,67,.055);
  --shadow-accent:0 6px 18px rgba(30,150,177,.18);
  --shadow-glow:0 12px 36px rgba(23,70,101,.12);
  text-rendering:optimizeLegibility;
}
.bcs-polish :is(h1,h2,h3,h4){text-wrap:balance;letter-spacing:-.025em}
.bcs-polish h1{line-height:1.12}
.bcs-polish p{line-height:1.75}
.bcs-polish :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #1685a2;outline-offset:4px}
.bcs-polish :is(main,section,article,.blog-content,form,.container,.grid)>*{min-width:0}
.bcs-polish :is(.section,.content-section,.service-modes,.vs-section,.why-bcs-section,.process-section,.pricing-section,.testimonials-section,.faq-section){padding-block:clamp(52px,5.7vw,80px)}
.bcs-polish .bg-light{background:#f5f8fb}
.bcs-polish .section-header{margin-bottom:36px}
.bcs-polish :is(.section-header,.modes-header)>p{max-width:680px;margin-inline:auto}
.bcs-polish .section-header h2{font-size:clamp(1.8rem,3.05vw,2.65rem);line-height:1.18}
.bcs-polish .section-label{letter-spacing:.11em;font-size:.71rem;line-height:1.6;padding:6px 12px}
.bcs-polish .breadcrumb{background:#f4f7fa!important;border-bottom:1px solid #e4ecf2;line-height:1.6}
.bcs-polish .breadcrumb a:hover{color:#127b97}
.bcs-polish header{border-bottom:1px solid rgba(18,51,75,.08)}
.bcs-polish .nav-link{font-weight:650}
.bcs-polish :is(.nav-dropdown-menu,.nav-menu){scrollbar-width:thin}
.bcs-polish .hero-particle{animation:none;opacity:.18}
.bcs-polish :is(.page-hero,.hero-v3,.pp-hero){isolation:isolate}
.bcs-polish .page-hero h1{letter-spacing:-.035em}
.bcs-polish :is(.page-hero-img,.page-hero-img img){border-radius:18px}
.bcs-polish .page-hero-img{border:1px solid rgba(168,216,234,.22);box-shadow:0 18px 42px rgba(2,13,29,.22);overflow:hidden}
.bcs-polish :is(.card,.feature-card,.industry-card,.service-mini,.blog-card,.cr-fix,.cr-way,.mode-card,.why-bcs-card,.testimonial-card,.pricing-card,.bcs-resource-panel){border-radius:16px;box-shadow:var(--bcs-card-shadow)}
.bcs-polish :is(.card,.service-mini,.cr-fix,.why-bcs-card){border-color:var(--bcs-line)}
.bcs-polish :is(.card,.blog-card,.feature-card,.service-mini,.cr-fix,.industry-card){transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.bcs-polish .grid{gap:24px}
.bcs-polish :is(.card,.feature-card,.service-mini) p{line-height:1.72}
.bcs-polish :is(.card-icon,.feature-icon-wrap,.mode-icon,.cr-fix-icon){border-radius:12px}
.bcs-polish :is(.btn,.btn-primary,.btn-outline,.hq-btn,.pricing-cta,.mode-cta,.contact-call-btn){border-radius:10px;min-height:46px;font-weight:700;line-height:1.35}
.bcs-polish .btn{padding-block:14px}
.bcs-polish :is(.btn,.hq-btn,.pricing-cta,.mode-cta){transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
.bcs-polish :is(.hq-card,.quote-form-card){border-radius:18px;box-shadow:0 16px 40px rgba(5,27,47,.13)}
.bcs-polish .hq-card{border:1px solid #dce7ee}
.bcs-polish form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea){border-radius:9px;border-color:#b9cbd7;font-size:16px;line-height:1.4;transition:border-color .16s ease,box-shadow .16s ease}
.bcs-polish form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select){min-height:46px}
.bcs-polish form textarea{min-height:118px}
.bcs-polish form :is(input,textarea,select):focus{border-color:#1685a2;box-shadow:0 0 0 3px rgba(74,193,224,.14)}
.bcs-polish :is(.hq-title,.hq-sub,.hq-hint,.hq-fine){text-wrap:pretty}
.bcs-polish :is(.hq-btn,button[type=submit]){min-height:48px}
.bcs-polish :is(.faq-details,.faq-item){border-radius:13px;border-color:var(--bcs-line);box-shadow:0 3px 12px rgba(13,43,67,.025)}
.bcs-polish :is(.faq-summary,.faq-question){line-height:1.5;min-height:64px}
.bcs-polish :is(.faq-content,.faq-answer) p{line-height:1.8}
.bcs-polish details[open]{box-shadow:0 7px 22px rgba(13,43,67,.065)}
.bcs-polish .content-section p{line-height:1.8}
.bcs-polish :is(.feature-list,.why-item) li{line-height:1.7}
.bcs-polish .bcs-resource-section{padding-block:56px}
.bcs-polish :is(.bcs-resource-panel,.bcs-resource-card){border-color:var(--bcs-line);border-radius:14px}
.bcs-polish footer{border-top:1px solid rgba(139,182,207,.14)}
.bcs-polish footer a:not(.btn):hover{color:#7ed6ed}
.bcs-polish :is(.footer-links li,.footer-links a){line-height:1.75}
.bcs-polish #backToTop{box-shadow:0 5px 18px rgba(5,30,53,.18)}

/* Homepage: finish the hand-off between the image hero and quick enquiry. */
.bcs-polish[data-visual=home] .hero-v3 h1{max-width:14ch;letter-spacing:-.045em}
.bcs-polish .home-quick-contact{background:linear-gradient(110deg,#eff8fc,#f8fbfd);border-bottom-color:#dce8ef}
.bcs-polish .home-quick-contact form{border-radius:18px;box-shadow:var(--bcs-card-shadow)}
.bcs-polish .home-quick-contact .hqc-copy{max-width:460px}
.bcs-polish .area-card{border-color:#dce7ee;border-radius:12px}

/* Articles: calmer, clearly separated reading surfaces and consistent rhythm. */
.bcs-polish[data-visual=article]{background:#f5f8fb}
.bcs-polish[data-visual=article] .page-hero{padding-block:58px 50px}
.bcs-polish[data-visual=article] .page-hero h1{max-width:26ch;margin-inline:auto;font-size:clamp(1.95rem,3.4vw,3rem);line-height:1.16}
.bcs-polish[data-visual=article] .page-hero-img{max-width:720px;margin-inline:auto}
.bcs-polish[data-visual=article] :is(article,.blog-content){background:#fff;border:1px solid #e0e9f0;border-radius:20px;padding:clamp(22px,4vw,48px);max-width:880px!important;box-shadow:var(--bcs-card-shadow)}
.bcs-polish[data-visual=article] :is(article,.blog-content)>p{font-size:1.035rem;line-height:1.85;margin-bottom:1.25rem}
.bcs-polish[data-visual=article] :is(article,.blog-content)>h2{font-size:clamp(1.5rem,2.35vw,1.95rem);line-height:1.25;padding-top:26px;border-top:1px solid #e4ecf2;margin-top:36px!important;margin-bottom:18px!important;scroll-margin-top:130px}
.bcs-polish[data-visual=article] :is(article,.blog-content)>h3{font-size:1.22rem;line-height:1.4;margin-top:28px!important;margin-bottom:12px!important}
.bcs-polish[data-visual=article] :is(article,.blog-content)>:is(ul,ol){padding-left:24px;line-height:1.85;margin-block:16px 24px}
.bcs-polish[data-visual=article] :is(article,.blog-content) li{margin-bottom:9px}
.bcs-polish[data-visual=article] :is(article,.blog-content) li::marker{color:#187c98}
.bcs-polish[data-visual=article] :is(article,.blog-content) p a:not(.btn){color:#126b89;text-decoration:underline;text-underline-offset:3px}
.bcs-polish[data-visual=article] :is(article,.blog-content)>img{border-radius:14px}
.bcs-polish[data-visual=article] :is(article,.blog-content) :is(table,pre){max-width:100%;overflow-x:auto;display:block}
.bcs-polish[data-visual=article] :is(article,.blog-content) blockquote{border-left:3px solid #36a7c1;background:#f0f8fb;padding:18px 22px;border-radius:0 12px 12px 0}
.bcs-polish[data-visual=blog-index] .blog-grid{gap:26px}
.bcs-polish[data-visual=blog-index] .blog-card{border:1px solid #dfe8ef;overflow:hidden;display:flex;flex-direction:column}
.bcs-polish[data-visual=blog-index] .blog-card-content{padding:24px;display:flex;flex-direction:column;flex:1}
.bcs-polish[data-visual=blog-index] .blog-card-content h3{line-height:1.35}
.bcs-polish[data-visual=blog-index] .blog-card-content p{line-height:1.7}
.bcs-polish[data-visual=blog-index] .blog-card-content>.btn{align-self:flex-start;margin-top:auto}

/* Area pages and service pages share readable section/card spacing. */
.bcs-polish[data-visual=location] .content-section .container{max-width:1120px}
.bcs-polish[data-visual=location] .service-mini{padding:24px 20px}
.bcs-polish[data-visual=repair-location] .cr-town,.bcs-polish[data-visual=repair] .cr-town{border-radius:13px;border-color:var(--bcs-line)}
.bcs-polish :is(.credentials-strip,.trust-bar){border-bottom:1px solid #e5edf2}
.bcs-polish[data-visual=landing] :is(.pq-row,.pq-grid){gap:40px}
.bcs-polish[data-visual=landing] .page-hero h1{line-height:1.13}
.bcs-polish[data-visual=contact] .contact-call{border-radius:18px;box-shadow:0 14px 30px rgba(9,36,57,.13)}
.bcs-polish[data-visual=contact] .contact-dl-item{padding-block:13px;border-bottom:1px solid #e5edf2}
.bcs-polish[data-visual=contact] .contact-map-card{border-radius:18px;overflow:hidden;border:1px solid #dce7ee}
.bcs-polish[data-visual=privacy] .pp-toc{border:1px solid #e0e9f0;border-radius:16px;box-shadow:var(--bcs-card-shadow)}
.bcs-polish[data-visual=privacy] .pp-content{border-radius:18px;border:1px solid #e0e9f0;box-shadow:var(--bcs-card-shadow)}
.bcs-polish[data-visual=privacy] .pp-content p{line-height:1.85}
.bcs-polish[data-visual=thank-you] .thank-you-content{border:1px solid #dfeaf1;border-radius:22px;box-shadow:0 16px 45px rgba(15,48,71,.08)}
.bcs-polish[data-visual=thank-you] .thank-you-icon{box-shadow:0 0 0 10px rgba(74,193,224,.055)}
.bcs-polish[data-visual=error]{background:radial-gradient(ellipse at 50% 25%,#e8f7fc 0,#f6f9fc 50%,#fff 100%)}

/* One new illustration brings the home-support service choices into focus. */
.bcs-home-support-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-bottom:36px}
.bcs-home-support-intro .modes-header{margin:0;text-align:left}
.bcs-home-support-intro .modes-header p{margin-left:0}
.bcs-home-support-visual{margin:0;border:1px solid #d6e3ed;border-radius:20px;overflow:hidden;box-shadow:0 14px 34px rgba(9,37,62,.12);background:#102a43}
.bcs-home-support-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .bcs-polish :is(.blog-card,.card,.service-mini,.industry-card,.cr-fix):hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(13,43,67,.09)}
 .bcs-polish :is(.btn,.hq-btn,.pricing-cta):hover{transform:translateY(-1px)}
}
@media(max-width:900px){
 .bcs-home-support-intro{grid-template-columns:1fr;gap:26px}
 .bcs-home-support-intro .modes-header{text-align:center;max-width:640px;margin-inline:auto}
 .bcs-home-support-intro .modes-header p{margin-inline:auto}
 .bcs-home-support-visual{width:100%;max-width:620px;margin-inline:auto}
 .bcs-polish[data-visual=landing] :is(.pq-row,.pq-grid){gap:28px}
}
@media(max-width:600px){
 .bcs-polish :is(.section,.content-section,.service-modes,.vs-section,.why-bcs-section,.process-section,.pricing-section,.testimonials-section,.faq-section){padding-block:46px}
 .bcs-polish .section-header{margin-bottom:28px}
 .bcs-polish .section-header h2{font-size:1.8rem}
 .bcs-polish :is(.faq-summary,.faq-question){min-height:60px}
 .bcs-polish .grid{gap:18px}
 .bcs-polish[data-visual=home] .hero-v3 h1{max-width:16ch}
 .bcs-polish[data-visual=article] .page-hero{padding-block:40px 32px}
 .bcs-polish[data-visual=article] .page-hero h1{font-size:1.95rem;line-height:1.2}
 .bcs-polish[data-visual=article] :is(article,.blog-content){padding:22px 18px;border-radius:15px}
 .bcs-polish[data-visual=article] :is(article,.blog-content)>p{font-size:1rem;line-height:1.82}
 .bcs-polish[data-visual=blog-index] .blog-card-content{padding:22px}
 .bcs-polish form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select){min-height:48px}
 .bcs-polish .bcs-resource-section{padding-block:42px}
 .bcs-polish :is(.btn,.hq-btn){min-height:48px}
 .bcs-home-support-intro{gap:22px;margin-bottom:28px}
}
@media(prefers-reduced-motion:reduce){
 .bcs-polish *, .bcs-polish *::before, .bcs-polish *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

.bcs-polish[data-visual=error]>h2{color:#17384e}
.bcs-polish[data-visual=error]>p{color:#4c6172;max-width:34ch}
.bcs-polish[data-visual=error] .btn-outline{color:#17384e;border-color:#bfd4e1;background:#fff}
.bcs-polish[data-visual=error]>p:has(.bcs-cookie-link){order:4;margin-top:28px;font-size:.85rem}
.bcs-polish[data-visual=blog-index] .blog-card>picture{display:block;overflow:hidden}
.bcs-polish[data-visual=blog-index] .blog-card>picture img{display:block;width:100%;height:220px;object-fit:cover}
