/* BARA CARRELAGE v1.1.4 — service & project pages. Strictly component scoped. */
.bc-service-page,.bc-project-page {--sp-ink:#17314f;--sp-muted:#60718a;--sp-blue:#1b65b4;--sp-border:#e5ecf3;color:var(--sp-ink);font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:400}
.bc-service-page *,.bc-project-page *{box-sizing:border-box}
.bc-service-page h1,.bc-service-page h2,.bc-service-page h3,.bc-project-page h1,.bc-project-page h2,.bc-project-page h3{font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important;letter-spacing:-.026em!important;font-weight:520!important;line-height:1.18;color:var(--sp-ink);text-transform:none}
.bc-service-page p,.bc-project-page p{line-height:1.76;font-weight:400;color:var(--sp-muted)}
.bc-service-page a,.bc-project-page a{text-decoration:none}
.bc-page-eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:620;color:var(--sp-blue);text-transform:uppercase}
.bc-page-hero{padding:clamp(36px,5vw,72px) 0;background:linear-gradient(140deg,#f2f7fb 0%,#fff 80%)}
.bc-page-hero__grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);align-items:center;gap:clamp(28px,5vw,76px)}
.bc-page-crumb{display:flex;flex-wrap:wrap;gap:9px;color:#718298;font-size:.75rem;margin-bottom:clamp(25px,4vw,50px)}
.bc-page-crumb a{color:#536b83}.bc-page-crumb a:hover{color:var(--sp-blue)}
.bc-page-hero h1{font-size:clamp(2rem,4vw,3.95rem);max-width:14ch;margin:12px 0 18px}
.bc-page-hero__copy>p{max-width:48ch;font-size:clamp(.98rem,1.15vw,1.13rem);margin:0 0 27px}
.bc-page-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bc-page-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:12px 19px;background:#145caf;border:1px solid #145caf;border-radius:10px;color:white!important;line-height:1.2;box-shadow:0 7px 15px #165ca71c;font-weight:530;font-size:.86rem;transition:transform .2s,box-shadow .2s}
.bc-page-button:hover{transform:translateY(-2px);box-shadow:0 11px 23px #165ca72e}
.bc-page-link{display:inline-flex;gap:10px;align-items:center;color:var(--sp-blue);font-size:.85rem;font-weight:540;padding:10px 0}
.bc-page-hero__visual{margin:0;position:relative;aspect-ratio:1.34;border-radius:18px;overflow:hidden;background:#e8eff4}
.bc-page-hero__visual img{width:100%;height:100%;display:block;object-fit:cover}
.bc-page-hero__visual figcaption{position:absolute;right:14px;bottom:15px;color:#fff;background:#142b449c;padding:8px 12px;border-radius:7px;font-size:.67rem;letter-spacing:.08em}
.bc-page-intro{padding:clamp(42px,5.5vw,76px) 0;border-bottom:1px solid var(--sp-border)}
.bc-page-intro__grid{display:grid;grid-template-columns:.77fr 1.23fr;gap:clamp(25px,5vw,76px);align-items:start}
.bc-page-intro h2{font-size:clamp(1.55rem,2.6vw,2.65rem);max-width:19ch;margin:12px 0}
.bc-page-richtext{font-size:1rem;line-height:1.8;color:#495d73}.bc-page-richtext p{margin:0 0 14px;max-width:69ch}.bc-page-richtext ul,.bc-page-richtext ol{padding-left:1.3em;margin:14px 0}.bc-page-richtext li{padding:3px 0}.bc-page-richtext a{color:#075eb1;text-decoration:underline;text-underline-offset:3px}
.bc-page-content{padding:clamp(45px,6vw,88px) 0}.bc-page-section-heading{margin-bottom:36px}.bc-page-section-heading h2{font-size:clamp(1.6rem,2.6vw,2.55rem);margin:10px 0}.bc-page-section-heading p{margin:0;max-width:65ch}
.bc-page-chapters{display:grid;gap:24px}.bc-page-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:stretch;gap:clamp(22px,4vw,58px);background:#f8fafc;border:1px solid #e9eef4;border-radius:18px;overflow:hidden;min-height:270px}
.bc-page-chapter--alternate{background:#fff}.bc-page-chapter__content{padding:clamp(25px,3.6vw,52px);align-self:center}
.bc-page-chapter__index{display:inline-block;color:#a7c1da;font-size:1.5rem;letter-spacing:-.04em;margin-bottom:8px}
.bc-page-chapter h3{font-size:clamp(1.38rem,2.2vw,2.22rem);margin:0 0 18px;max-width:24ch}
.bc-page-chapter__photo{margin:0;position:relative;min-height:260px;background:#e8edf2;overflow:hidden}
.bc-page-chapter__photo img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:1.4}
.bc-page-chapter__photo figcaption{position:absolute;bottom:12px;left:12px;font-size:.67rem;padding:8px 11px;color:#fff;background:#152c45b8;border-radius:6px}
.bc-page-chapter__note{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:linear-gradient(140deg,#ecf4fb,#e6edf5);color:#3b6997;padding:40px;text-align:center}
.bc-page-chapter__note .bc-page-chapter__line{display:block;width:90px;height:3px;border-radius:9px;background:#3d85c4}.bc-page-chapter__note>span:nth-child(2){font-size:clamp(4rem,7vw,7rem);font-weight:260;line-height:1;color:#bacfdf}.bc-page-chapter__note small{font-size:.77rem;letter-spacing:.08em;text-transform:uppercase}
.bc-service-keypoints{background:#eef5fc;padding:50px 0}.bc-service-keypoints__grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:27px}.bc-service-keypoints h2{font-size:clamp(1.4rem,2vw,2rem);margin:10px 0 0}.bc-service-keypoints strong{font-size:1.3rem;color:#79a5ce;font-weight:450}.bc-service-keypoints h3{font-size:1rem;margin:10px 0}.bc-service-keypoints p{font-size:.86rem;margin:0}
.bc-page-faq{padding:clamp(48px,6vw,80px) 0}.bc-page-faq__grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:clamp(20px,5vw,75px)}.bc-page-faq h2{font-size:clamp(1.5rem,2.5vw,2.55rem);margin:12px 0}.bc-page-faq__item{border-bottom:1px solid #dce5ef;padding:15px 0}.bc-page-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none;font-size:.95rem;font-weight:540;color:#183753}.bc-page-faq__item summary::-webkit-details-marker{display:none}.bc-page-faq__item summary span{font-size:1.5rem;color:#2774b9;font-weight:300}.bc-page-faq__item[open] summary span{transform:rotate(45deg)}.bc-page-faq__item p{font-size:.92rem;margin:10px 0 0}
.bc-service-related{padding:52px 0;background:#f6f9fc}.bc-service-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bc-service-related__grid article{background:#fff;border:1px solid #e2eaf2;border-radius:15px;transition:transform .2s}.bc-service-related__grid article:hover{transform:translateY(-3px)}.bc-service-related__grid a{display:block;padding:25px;height:100%}.bc-service-related__grid span{color:var(--sp-blue);font-size:.73rem}.bc-service-related__grid h3{font-size:1.15rem;margin:13px 0 22px}.bc-service-related__grid small{color:#577c9e}
.bc-page-bottom-cta{padding:36px 0}.bc-page-bottom-cta__inner{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#edf5ff;border-radius:17px;padding:28px clamp(22px,4vw,45px)}.bc-page-bottom-cta h2{font-size:clamp(1.5rem,2vw,2.1rem);margin:7px 0}.bc-page-bottom-cta p{margin:0;font-size:.91rem}
/* Portfolio has a dedicated editorial style and no article sidebar */
.bc-project-hero{background:#f5f8fc;padding:40px 0 55px}.bc-project-hero nav{font-size:.75rem;color:#71839b;margin:0 0 28px}.bc-project-hero>div>span,.bc-project-description>div>div:first-child span{color:#286fb4;font-size:.72rem;letter-spacing:.16em}.bc-project-hero h1{font-size:clamp(2.1rem,4.3vw,4.4rem);margin:13px 0}.bc-project-hero p{max-width:70ch}.bc-project-hero small{display:block;color:#60748d}.bc-project-hero figure{margin:35px 0 0;border-radius:18px;overflow:hidden;max-height:650px}.bc-project-hero img{width:100%;height:100%;max-height:650px;object-fit:cover;display:block}.bc-project-description{padding:clamp(50px,6vw,86px) 0}.bc-project-description>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.bc-project-description h2{font-size:clamp(1.5rem,2.8vw,2.8rem);margin:12px 0}.bc-project-prose{max-width:75ch;line-height:1.8}.bc-project-prose h2{font-size:1.45rem}.bc-project-cta{padding:32px 0;background:#ebf4fc}.bc-project-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.bc-project-cta h2{font-size:clamp(1.4rem,2vw,2rem);margin:0 0 8px}.bc-project-cta a{display:inline-flex;background:#105cae;border-radius:9px;color:#fff;padding:12px 18px;white-space:nowrap}
@media(max-width:900px){.bc-service-keypoints__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bc-page-hero__grid{gap:22px}.bc-page-chapter{gap:12px}.bc-page-chapter__content{padding:27px}.bc-page-chapter__note{padding:20px}}
@media(max-width:720px){.bc-page-hero__grid,.bc-page-intro__grid,.bc-page-chapter,.bc-page-faq__grid,.bc-project-description>.wrap{grid-template-columns:minmax(0,1fr)}.bc-page-hero{padding:30px 0 38px}.bc-page-hero h1{font-size:clamp(2rem,7vw,2.8rem)}.bc-page-crumb{margin-bottom:22px}.bc-page-hero__visual{aspect-ratio:1.4}.bc-page-chapter__photo{min-height:210px;order:2}.bc-page-chapter__note{display:none}.bc-service-related__grid{grid-template-columns:1fr}.bc-service-keypoints__grid{grid-template-columns:1fr 1fr;gap:18px}.bc-page-bottom-cta__inner,.bc-project-cta .wrap{align-items:flex-start;flex-direction:column}.bc-page-chapters{gap:16px}.bc-page-chapter{min-height:unset}.bc-page-chapter__content{padding:25px}.bc-page-intro,.bc-page-content{padding:45px 0}.bc-project-hero figure{margin-top:23px}}
@media(max-width:460px){.bc-service-keypoints__grid{grid-template-columns:1fr}.bc-page-button{width:auto;max-width:100%}.bc-page-bottom-cta__inner{padding:23px}.bc-service-keypoints{padding:35px 0}}
@media(prefers-reduced-motion:reduce){.bc-service-page *, .bc-project-page *{transition-duration:0.01ms!important}}
