.bs-section{padding:clamp(64px,8vw,112px) 0}
.bs-section--dark{background:var(--c-encre);color:var(--c-creme)}
.bs-section--dark h1,.bs-section--dark h2,.bs-section--dark h3,.bs-section--dark h4{color:var(--c-creme)}
.bs-section__head{max-width:780px;margin:0 0 48px}
.bs-section__head h2{margin-bottom:18px}
.bs-section__lead{font-size:18px;line-height:1.6;color:var(--c-encre);max-width:680px}
/* Breadcrumbs */
.bs-breadcrumbs{font-family:var(--ff-sans);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--c-encre);padding:24px 0;border-bottom:1px solid var(--c-rule)}
.bs-breadcrumbs ol{list-style:none;margin:0 auto;padding:0 var(--gut);display:flex;flex-wrap:wrap;align-items:center;gap:0;max-width:var(--max)}
.bs-breadcrumbs li{display:flex;align-items:center}
.bs-breadcrumbs li+li{margin-left:14px}
.bs-breadcrumbs li+li::before{content:"—";margin-right:14px;color:var(--c-encre);opacity:.4}
.bs-breadcrumbs a{text-decoration:none;color:var(--c-bordeaux)}
.bs-breadcrumbs a:hover{text-decoration:underline}
/* Page */
.bs-page__title{margin-bottom:28px}
.bs-page__lead{font-size:19px;line-height:1.6;max-width:760px;color:var(--c-encre);margin:0 0 56px}
.bs-prose{max-width:760px;font-size:17px;line-height:1.7}
.bs-prose h2{margin:48px 0 18px}
.bs-prose h3{margin:36px 0 14px}
.bs-prose p,.bs-prose ul,.bs-prose ol{margin:0 0 18px}
.bs-prose a{color:var(--c-bordeaux);text-decoration:underline;text-underline-offset:3px}
/* FAQ */
.bs-faq{border-top:1px solid var(--c-rule);margin-top:64px}
.bs-faq__item{border-bottom:1px solid var(--c-rule);padding:22px 0}
.bs-faq__q{font-family:var(--ff-serif);font-size:24px;text-transform:uppercase;letter-spacing:-.01em;margin:0}
.bs-faq__a{margin-top:10px;font-size:17px;line-height:1.65;max-width:780px}
/* CTA */
.bs-cta{background:var(--c-encre);color:var(--c-creme);padding:clamp(80px,10vw,140px) var(--gut);text-align:center}
.bs-cta h2{color:var(--c-creme);margin:0 0 24px}
.bs-cta p{max-width:680px;margin:0 auto 32px;color:#DDD3C0;font-size:18px;line-height:1.6}
/* Silos */
.bs-silos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:48px}
.bs-silo{display:block;background:var(--c-creme);border:1px solid var(--c-rule);padding:32px 28px;text-decoration:none;color:var(--c-encre);transition:background .2s,color .2s}
.bs-silo:hover{background:var(--c-encre);color:var(--c-creme)}
.bs-silo__eyebrow{font-family:var(--ff-sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-bordeaux);margin:0 0 14px}
.bs-silo:hover .bs-silo__eyebrow{color:var(--c-beige)}
.bs-silo__title{font-family:var(--ff-serif);font-size:24px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin:0 0 14px}
.bs-silo__desc{font-size:15px;line-height:1.55;margin:0}
/* Footer strict live */
.bs-footer{background:var(--c-encre);color:var(--c-creme);padding:80px var(--gut) 0}
.bs-footer__grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:48px;padding-bottom:72px}
@media (max-width:980px){.bs-footer__grid{grid-template-columns:1fr 1fr;gap:40px}}
@media (max-width:560px){.bs-footer__grid{grid-template-columns:1fr}}
.bs-footer__col h4{font-family:var(--ff-serif);font-weight:400;font-size:22px;letter-spacing:-.01em;text-transform:uppercase;color:var(--c-creme);margin:0 0 22px;line-height:1.05}
.bs-footer__brand .bs-footer__logo{display:block;width:200px;height:auto;margin:0 0 22px}
.bs-footer__tag{font-family:var(--ff-sans);font-weight:700;font-size:12px;color:var(--c-creme);margin:0 0 38px;line-height:1.6}
.bs-footer__brand h4{font-size:15px;margin:0 0 16px;line-height:1.2}
.bs-footer__socials{list-style:none;padding:0;margin:0;display:flex;gap:14px}
.bs-footer__socials a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--c-creme);text-decoration:none;transition:color .2s}
.bs-footer__socials a:hover{color:var(--c-beige)}
.bs-footer__col ul{list-style:none;padding:0;margin:0}
.bs-footer__col ul li{margin:0;font-family:var(--ff-sans);font-size:14px;line-height:1.9;font-weight:400}
.bs-footer__col ul a{text-decoration:none;color:var(--c-creme);transition:color .2s}
.bs-footer__col ul a:hover{color:var(--c-beige)}
.bs-footer__hours{font-family:var(--ff-sans);font-size:17px;line-height:1.55;color:var(--c-creme);margin:0 0 16px}
.bs-footer__cta{display:inline-block;font-family:var(--ff-sans);font-weight:500;font-size:16px;color:#FFFFFF;background:transparent;border:1px solid #FFFFFF;padding:13px 46px;text-decoration:none;line-height:1.6;border-radius:4px;margin-top:8px;transition:background .2s,color .2s}
.bs-footer__cta:hover{background:#FFFFFF;color:var(--c-encre)}
.bs-footer__legal{max-width:var(--max);margin:0 auto;padding:0 0 20px;text-align:center;font-family:var(--ff-mono);font-size:10px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:rgba(244,239,230,.55)}
/* Archive cards */
.bs-archive__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:32px}
.bs-card{display:block;text-decoration:none;color:var(--c-encre);background:var(--c-creme);border:1px solid var(--c-rule);padding:28px;transition:background .2s,color .2s}
.bs-card:hover{background:var(--c-encre);color:var(--c-creme)}
.bs-card__meta{font-family:var(--ff-sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-bordeaux);margin:0 0 12px}
.bs-card:hover .bs-card__meta{color:var(--c-beige)}
.bs-card__title{font-family:var(--ff-serif);font-size:24px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin:0 0 12px}
.bs-card__excerpt{font-size:15px;line-height:1.55;margin:0}
/* Single */
.bs-single{max-width:var(--max);margin:0 auto;padding:48px var(--gut) 0}
.bs-single__meta{font-family:var(--ff-sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-bordeaux);margin:0 0 18px}
.bs-single__title{font-family:var(--ff-serif);font-weight:400;text-transform:uppercase;letter-spacing:-.01em;line-height:1.08;color:var(--c-encre);font-size:clamp(32px,3.6vw,44px);margin:0 0 32px;max-width:920px}
.bs-related{margin:72px 0 0;padding-top:48px;border-top:1px solid var(--c-rule)}
.bs-related h3{font-family:var(--ff-serif);font-size:22px;text-transform:uppercase;letter-spacing:-.01em;margin:0 0 24px}
/* Case study */
.bs-cs__block{margin:0 0 40px}
.bs-cs__label{font-family:var(--ff-sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-bordeaux);margin:0 0 10px}
.bs-cs__quote{border-left:2px solid var(--c-bordeaux);padding-left:24px;font-family:var(--ff-serif);font-size:22px;line-height:1.4;color:var(--c-encre);margin:32px 0}
.bs-cs__quote cite{display:block;margin-top:14px;font-family:var(--ff-sans);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;font-style:normal;color:var(--c-bordeaux)}
.bs-cs__gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:32px 0}
.bs-cs__gallery img{width:100%;height:auto;display:block}
/* Pagination */
.bs-pagination{display:flex;justify-content:center;gap:8px;margin:64px 0;font-family:var(--ff-sans);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.bs-pagination a,.bs-pagination span{padding:10px 14px;color:var(--c-encre);text-decoration:none;border:1px solid var(--c-rule)}
.bs-pagination span.current{background:var(--c-encre);color:var(--c-creme);border-color:var(--c-encre)}
.bs-pagination a:hover{background:var(--c-encre);color:var(--c-creme)}
/* Filters */
.bs-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px;font-family:var(--ff-sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.bs-filters a{padding:10px 16px;color:var(--c-encre);text-decoration:none;border:1px solid var(--c-rule);transition:background .2s,color .2s}
.bs-filters a:hover,.bs-filters a.is-active{background:var(--c-encre);color:var(--c-creme);border-color:var(--c-encre)}
