/* BARA CARRELAGE v1.1.2 – targeted editorial templates and refined typography.
   Does not alter the home hero or home service cards. */
:root { --bc-deep:#102a4f;--bc-text:#26394f;--bc-muted:#687990;--bc-soft:#f6f9fd;--bc-border:#e1eaf4;--bc-blue:#0c61bd; }
body {font-weight:400}
/* Leave home hero and home services typography untouched. */
.bc-detail-hero h1,.bc-intro-grid h2,.bc-story-content h2,.bc-faq-grid h2,.bc-blog-hero h1,.bc-section-heading h2,.bc-final-cta h2{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.027em;font-weight:530}
.bc-btn{font-weight:560}
.page-banner h1{font-weight:540;letter-spacing:-.025em}.page-banner + .section .btn{padding:10px 16px;font-size:.83rem;font-weight:560;border-radius:10px}
.bc-kicker {display:inline-block;font-size:.69rem;letter-spacing:.17em;text-transform:uppercase;color:#1e72bf;font-weight:650}
.bc-crumb {display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:.76rem;color:#718198;margin-bottom:26px}
.bc-crumb a:hover {color:var(--bc-blue);text-decoration:underline}
.bc-detail-hero{overflow:hidden;background:linear-gradient(115deg,#f5f9fd 0%,#fff 70%);padding:44px 0 56px}
.bc-detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);align-items:center;gap:clamp(28px,5vw,85px)}
.bc-hero-copy{min-width:0;max-width:570px}
.bc-detail-hero h1{margin:12px 0 17px;font-size:clamp(2.2rem,4.1vw,4.1rem);line-height:1.12;color:var(--bc-deep);overflow-wrap:anywhere}
.bc-hero-lead{color:#52667f;font-size:clamp(.95rem,1.3vw,1.13rem);line-height:1.75;max-width:52ch;margin-bottom:26px}
.bc-hero-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.bc-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 19px;border-radius:10px;border:1px solid #0b57aa;background:linear-gradient(135deg,#0d6ecb,#064fa6);color:#fff;box-shadow:0 7px 17px #0a61bb21;font-size:.84rem;text-decoration:none;line-height:1.3;transition:transform .18s,box-shadow .18s}
.bc-btn:hover{transform:translateY(-2px);color:#fff;box-shadow:0 10px 24px #0a61bb35}
.bc-btn-light{background:#fff;color:#1c5796;border-color:#bdd1e8;box-shadow:none}
.bc-btn-light:hover{color:#064f99;background:#f4f9ff}
.bc-hero-media{position:relative;aspect-ratio:1.28;min-width:0;border-radius:18px;overflow:hidden;background:#e6eef5;box-shadow:0 25px 60px #0e365725}
.bc-hero-media img{width:100%;height:100%;object-fit:cover}
.bc-hero-corner{position:absolute;bottom:15px;left:15px;font-size:.62rem;letter-spacing:.1em;color:#fff;background:#072848bc;padding:8px 12px;border-radius:5px}
.bc-article-meta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:.8rem;color:#73829a}
.bc-article-meta a{color:#0d5cb1;border:1px solid #a9c8e8;border-radius:20px;padding:5px 11px}
.bc-intro-section{padding:clamp(45px,5.5vw,83px) 0;border-bottom:1px solid var(--bc-border)}
.bc-intro-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(25px,5vw,85px);align-items:start}
.bc-intro-grid h2{font-size:clamp(1.7rem,2.8vw,2.65rem);line-height:1.25;margin:10px 0;color:var(--bc-deep)}
.bc-intro-text{color:#495d75;font-size:1rem;line-height:1.9;max-width:72ch}
.bc-intro-text p:last-child{margin-bottom:0}
.bc-story-section{padding:clamp(46px,6vw,92px) 0}
.bc-story-tint{background:var(--bc-soft)}
.bc-story-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,94px)}
.bc-story-reverse .bc-story-content{order:2}
.bc-story-reverse .bc-story-image{order:1}
.bc-story-content{max-width:595px}
.bc-story-content h2{color:var(--bc-deep);font-size:clamp(1.57rem,2.9vw,2.65rem);line-height:1.2;margin:13px 0 18px;font-weight:530}
.bc-story-prose{font-size:.97rem;line-height:1.87;color:#52647a;max-width:65ch}
.bc-story-prose p{margin-bottom:14px}.bc-story-prose p:last-child{margin-bottom:0}
.bc-story-prose ul,.bc-story-prose ol{padding-left:1.4rem;margin:0 0 1.2rem}
.bc-story-prose li{margin-bottom:.45rem}
.bc-story-prose a{text-decoration:underline;text-underline-offset:3px;color:#075bb8}
.bc-story-prose h3{font-size:1.13rem;margin:22px 0 9px;font-weight:560}
.bc-story-image{margin:0;min-width:0}
.bc-story-image img{width:100%;height:auto;aspect-ratio:1.42;object-fit:cover;border-radius:17px;background:#eff4f9;box-shadow:0 17px 45px #102e4a12}
.bc-story-image figcaption{font-size:.71rem;color:#8590a0;line-height:1.4;margin-top:9px}
.bc-text-link{display:inline-flex;gap:10px;align-items:center;font-size:.84rem;font-weight:580;color:#0b5db4;margin-top:16px;text-decoration:none}
.bc-text-link:hover{text-decoration:underline;text-underline-offset:4px}
.bc-disclaimer{color:#788597;font-size:.75rem;margin-top:16px;margin-bottom:22px;line-height:1.7}
.bc-faq-section{background:#f1f6fc;padding:clamp(48px,6vw,86px) 0}
.bc-faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(25px,5vw,80px);align-items:start}
.bc-faq-grid h2{margin:12px 0 16px;color:var(--bc-deep);font-size:clamp(1.6rem,2.6vw,2.55rem)}
.bc-faq-grid p{line-height:1.8;color:#65758c;max-width:38ch}
.bc-faq-items{display:grid;gap:11px}
.bc-faq-item{background:#fff;border:1px solid #dfebf8;border-radius:13px;padding:0 20px}
.bc-faq-item summary{padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:550;font-size:.94rem;color:#1c3658;cursor:pointer;list-style:none}
.bc-faq-item summary::-webkit-details-marker{display:none}
.bc-faq-item summary span{color:#0d68bd;font-size:1.3rem;font-weight:300;transition:transform .2s}
.bc-faq-item[open] summary span{transform:rotate(45deg)}
.bc-faq-item p{margin:0 0 20px;color:#586d85;font-size:.9rem;line-height:1.75;max-width:none}
.bc-related-section{padding:clamp(48px,6vw,83px) 0;background:#fff}
.bc-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}
.bc-section-heading h2{font-size:clamp(1.7rem,2.8vw,2.5rem);margin:7px 0;color:var(--bc-deep)}
.bc-section-heading p{color:var(--bc-muted);margin:0}
.bc-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bc-related-card{min-width:0;border:1px solid var(--bc-border);border-radius:15px;overflow:hidden;box-shadow:0 8px 30px #0b3d6b0c;background:#fff;transition:transform .2s,box-shadow .2s}
.bc-related-card:hover{transform:translateY(-4px);box-shadow:0 14px 36px #0b3d6b24}
.bc-related-card img{width:100%;aspect-ratio:1.55;object-fit:cover;background:#ecf1f7}
.bc-related-card span:not(p span){display:block;color:#2b75c0;font-size:.73rem;margin:18px 18px 7px}
.bc-related-card h3{font-size:1.11rem;font-weight:540;line-height:1.36;color:var(--bc-deep);margin:0 18px 10px}
.bc-related-card p{color:#6a7a91;font-size:.81rem;margin:0 18px 20px}
.bc-final-cta{padding:35px 0;background:linear-gradient(110deg,#e8f1fb,#f5f9fe)}
.bc-final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.bc-final-cta h2{color:var(--bc-deep);font-size:clamp(1.5rem,2.3vw,2.2rem);margin:6px 0}
.bc-final-cta p{color:var(--bc-muted);font-size:.9rem;margin:0}
.bc-blog-hero{background:linear-gradient(115deg,#eef5fd,#fff);padding:70px 0 55px}
.bc-blog-hero h1{font-size:clamp(2.2rem,4vw,3.8rem);color:var(--bc-deep);margin:12px 0 15px}
.bc-blog-hero p{font-size:1rem;color:#63758a;max-width:650px}
.bc-blog-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.bc-blog-main{padding:50px 0 70px}
.bc-blog-categories{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:42px}
.bc-blog-categories a{padding:8px 14px;border:1px solid #dbe7f3;background:#fff;color:#406083;font-size:.81rem;border-radius:99px;line-height:1.3}
.bc-blog-categories a:hover,.bc-blog-categories .is-active{background:#145dad;color:#fff;border-color:#145dad}
.bc-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.bc-blog-card{min-width:0;border:1px solid #e1e9f3;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 35px #12395d10}
.bc-blog-cover{display:block;overflow:hidden;background:#e4eef6}
.bc-blog-cover img{width:100%;aspect-ratio:1.54;object-fit:cover;transition:transform .3s}
.bc-blog-card:hover .bc-blog-cover img{transform:scale(1.04)}
.bc-blog-card-body{padding:21px 23px 24px}
.bc-blog-tag{display:inline-block;color:#0e63bb;font-size:.74rem;background:#ecf5fe;border-radius:30px;padding:5px 11px;margin-bottom:11px}
.bc-blog-card h3{font-size:1.24rem;font-weight:550;line-height:1.4;margin:0 0 12px;color:var(--bc-deep)}
.bc-blog-card p{font-size:.91rem;line-height:1.78;color:#66768b;margin-bottom:15px}
.bc-blog-card .bc-text-link{margin-top:0}
.bc-blog-pagination{margin-top:36px}
.bc-blog-empty{padding:45px;background:#f5f9fc;border-radius:18px}
.bc-reveal-ready{opacity:0;transform:translateY(15px);transition:opacity .5s,transform .5s}
.bc-reveal-ready.bc-seen{opacity:1;transform:none}
@media(max-width:980px){.bc-detail-hero-grid{gap:25px}.bc-detail-hero h1{font-size:clamp(2rem,4vw,3.2rem)}.bc-story-grid{gap:28px}.bc-related-grid,.bc-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.bc-detail-hero{padding:25px 0 35px}.bc-detail-hero-grid,.bc-intro-grid,.bc-story-grid,.bc-faq-grid{grid-template-columns:1fr}.bc-hero-copy{max-width:none}.bc-hero-media{aspect-ratio:1.65}.bc-story-section{padding:39px 0}.bc-story-grid{gap:23px}.bc-story-reverse .bc-story-content,.bc-story-reverse .bc-story-image{order:unset}.bc-story-image img{aspect-ratio:1.53}.bc-intro-section{padding:35px 0}.bc-faq-section{padding:38px 0}.bc-section-heading{align-items:start;flex-direction:column;gap:7px}.bc-final-cta-inner{flex-direction:column;align-items:start}.bc-blog-hero{padding:38px 0}.bc-blog-grid,.bc-related-grid{grid-template-columns:1fr}.bc-story-content h2{font-size:clamp(1.5rem,6vw,2rem)}}
@media(max-width:480px){.bc-detail-hero h1{font-size:2.15rem}.bc-hero-buttons{align-items:stretch}.bc-hero-buttons .bc-btn{width:100%}.bc-detail-hero-grid{gap:27px}.bc-hero-media{aspect-ratio:1.35}.bc-crumb{gap:6px;font-size:.7rem}.bc-story-prose{font-size:.92rem}.bc-faq-item{padding:0 14px}.bc-blog-categories{gap:7px}.bc-blog-categories a{font-size:.75rem;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){.bc-reveal-ready{transition:none;opacity:1;transform:none}.bc-btn,.bc-related-card,.bc-blog-cover img{transition:none}.bc-btn:hover,.bc-related-card:hover,.bc-blog-card:hover .bc-blog-cover img{transform:none}}
