/* Shared extensions to the approved design. All rules stay inside the opt-in scope. */
.bsc-design { --bsc-cream:#F4F2E9; --bsc-warm-gray:#EAE9E3; --bsc-radius:4px; }
.bsc-design .filters { flex-wrap:wrap; margin-bottom:12px; }
.bsc-design .filters button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; }
.bsc-design .bsc-filter-count { font-size:12px; color:var(--muted); margin:0 0 22px; }
.bsc-design .product-wide { grid-column:1 / -1; min-height:0; display:grid; grid-template-columns:1fr 1.3fr; column-gap:40px; }
.bsc-design .product-wide .product-top { grid-column:1; margin-bottom:18px; }
.bsc-design .product-wide h3 { grid-column:1; max-width:420px; }
.bsc-design .product-wide p { grid-column:2; grid-row:1 / 3; margin:0 0 18px; max-width:580px; }
.bsc-design .product-wide > a { grid-column:2; }
.bsc-design .product-wide[hidden] { display:none; }
@media(max-width:580px) { .bsc-design .product-wide { display:flex; gap:0; } .bsc-design .product-wide p { margin-top:14px; margin-bottom:25px; } .bsc-design .filters button { flex:0 0 auto; } }
.bsc-design img { max-width:100%; }
.bsc-design [id] { scroll-margin-top:15px; }
.bsc-design .bsc-content { min-height:50vh; }
.bsc-design .bsc-page-intro { background:var(--ink); color:#fff; padding:64px 0 58px; }
.bsc-design .bsc-page-intro h1 { max-width:900px; }
.bsc-design .bsc-page-intro p:not(.eyebrow) { max-width:660px; color:#c8cbd1; margin-top:22px; }
.bsc-design .bsc-breadcrumbs { display:flex; flex-wrap:wrap; gap:9px; font-size:12px; margin-bottom:30px; color:var(--muted); }
.bsc-design .bsc-breadcrumbs a { text-decoration:underline; text-underline-offset:3px; }
.bsc-design .bsc-page-intro .bsc-breadcrumbs { color:#c8cbd1; }
.bsc-design .bsc-content-section { padding:64px 0 80px; }
.bsc-design .bsc-content-grid { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:64px; align-items:start; }
.bsc-design .bsc-editorial { max-width:760px; min-width:0; }
.bsc-design .bsc-editorial > * + * { margin-top:24px; }
.bsc-design .bsc-editorial :is(h2,h3,h4,h5,h6) { margin-top:42px; margin-bottom:18px; }
.bsc-design .bsc-editorial h2 { font-size:32px; }
.bsc-design .bsc-editorial h3 { font-size:24px; }
.bsc-design .bsc-editorial p, .bsc-design .bsc-editorial li { font-size:17px; line-height:1.85; }
.bsc-design .bsc-editorial :is(a:not(.button)) { text-decoration:underline; text-underline-offset:4px; }
.bsc-design .bsc-editorial :is(ul,ol) { padding-inline-start:25px; }
.bsc-design .bsc-editorial li + li { margin-top:12px; }
.bsc-design .bsc-editorial blockquote { margin:32px 0; padding:20px 26px; border-inline-start:4px solid var(--yellow); background:var(--bsc-cream); }
.bsc-design .bsc-editorial figure { margin:30px 0; }
.bsc-design .bsc-editorial figcaption { font-size:12px; color:var(--muted); margin-top:8px; }
.bsc-design .bsc-editorial table { border-collapse:collapse; display:block; overflow-x:auto; max-width:100%; }
.bsc-design .bsc-editorial :is(td,th) { border:1px solid var(--line); padding:12px; text-align:start; }
.bsc-design .bsc-editorial iframe { max-width:100%; }
.bsc-design .bsc-callout { padding:28px; background:var(--bsc-cream); border:1px solid var(--line); border-top:4px solid var(--yellow); border-radius:var(--bsc-radius); }
.bsc-design .bsc-callout h2 { font-size:27px; }
.bsc-design .bsc-callout p { color:var(--muted); font-size:14px; margin:16px 0 22px; }
.bsc-design .bsc-callout .button { width:100%; font-size:12px; }
.bsc-design .bsc-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.bsc-design .bsc-post-card { background:#fff; border:1px solid var(--line); display:flex; flex-direction:column; min-width:0; }
.bsc-design .bsc-post-card-media { aspect-ratio:16/9; background:var(--bsc-warm-gray); overflow:hidden; }
.bsc-design .bsc-post-card-media img { width:100%; height:100%; object-fit:cover; display:block; }
.bsc-design .bsc-post-card-body { padding:28px; display:flex; flex-direction:column; flex:1; }
.bsc-design .bsc-post-category { font-size:10px; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }
.bsc-design .bsc-post-card h2 { font-size:25px; margin:16px 0; }
.bsc-design .bsc-post-card h2 a:hover { text-decoration:underline; text-underline-offset:4px; }
.bsc-design .bsc-post-card p { font-size:14px; color:var(--muted); }
.bsc-design .bsc-post-card .bsc-read-link { margin-top:auto; padding-top:26px; font-size:12px; font-weight:700; }
.bsc-design .bsc-post-meta { display:flex; gap:10px 20px; flex-wrap:wrap; font-size:12px; color:var(--muted); }
.bsc-design .bsc-page-intro .bsc-post-meta { color:#c8cbd1; margin-top:24px; }
.bsc-design .bsc-featured-image { margin:0 0 38px; width:100%; height:auto; border-radius:var(--bsc-radius); }
.bsc-design .bsc-pagination { margin-top:44px; display:flex; flex-wrap:wrap; gap:10px; }
.bsc-design .bsc-pagination .page-numbers { padding:9px 15px; border:1px solid var(--line); background:#fff; border-radius:3px; }
.bsc-design .bsc-pagination .current { background:var(--ink); color:#fff; }
.bsc-design .bsc-secure-header .nav { justify-content:space-between; }
.bsc-design .bsc-secure-header .nav-phone { display:inline; }
.bsc-design .bsc-form-wrap { max-width:900px; margin:auto; }
.bsc-design .bsc-form-card { background:#fff; border:1px solid var(--line); border-radius:var(--bsc-radius); padding:40px; }
.bsc-design .bsc-form-card h2 { font-size:29px; }
.bsc-design .bsc-form-card > p { color:var(--muted); margin:12px 0 28px; }
.bsc-design .bsc-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.bsc-design .bsc-step-list { display:flex; gap:18px; flex-wrap:wrap; padding:0; margin:0 0 35px; list-style:none; font-size:12px; }
.bsc-design .bsc-step-list li { border-bottom:3px solid var(--line); padding-bottom:14px; flex:1; min-width:120px; }
.bsc-design .bsc-step-list li[aria-current="step"] { border-color:var(--yellow); font-weight:700; }
.bsc-design .bsc-status { border:1px solid var(--line); border-inline-start:4px solid var(--yellow); padding:20px 24px; background:var(--bsc-cream); margin:24px 0; }
.bsc-design .bsc-status h2 { font-size:24px; margin-bottom:12px; }
.bsc-design .bsc-upload-area { border:2px dashed #b1b3a8; padding:40px 24px; text-align:center; border-radius:4px; background:var(--paper); }
.bsc-design .bsc-upload-area input[type=file] { max-width:100%; min-width:0; }
.bsc-design .bsc-confirmation { max-width:720px; margin:auto; text-align:center; }
.bsc-design .bsc-confirmation h1 { font-size:clamp(35px,5vw,55px); margin-bottom:24px; }
.bsc-design .bsc-confirmation-mark { font-size:38px; width:72px; height:72px; background:var(--yellow); border-radius:50%; margin:0 auto 28px; display:grid; place-items:center; }
.bsc-design .bsc-choice { display:block; padding:17px; border:1px solid var(--line); margin-top:12px; border-radius:3px; }
.bsc-design .bsc-palette { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.bsc-design .bsc-swatch { padding:22px; min-height:130px; border:1px solid var(--line); display:flex; flex-direction:column; justify-content:end; font-size:12px; }
/* Explicit row/container opt-in. No field keys, values, visibility, validation or behavior are changed. */
@media(max-width:980px) { .bsc-design .bsc-content-grid { grid-template-columns:minmax(0,1fr) 270px; gap:35px; } .bsc-design .bsc-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .bsc-design .bsc-content-grid { grid-template-columns:1fr; gap:35px; } .bsc-design .bsc-page-intro { padding:40px 0; } .bsc-design .bsc-form-card { padding:25px 20px; } .bsc-design .bsc-form-grid { grid-template-columns:1fr; } .bsc-design .bsc-palette { grid-template-columns:1fr 1fr; } }
@media(max-width:580px) { .bsc-design .bsc-post-grid { grid-template-columns:1fr; } .bsc-design .bsc-content-section { padding:40px 0 60px; } .bsc-design .bsc-page-intro h1 { font-size:39px; } .bsc-design .bsc-secure-header .brand-complete { width:210px; } .bsc-design .bsc-secure-header .nav-phone { font-size:11px; } .bsc-design .bsc-editorial p,.bsc-design .bsc-editorial li { font-size:16px; } }
@media(max-width:360px) { .bsc-design .bsc-secure-header .brand-complete { width:185px; } }
/* Keep the approved logo panel inside the one-column grid at very narrow widths. */
@media(max-width:580px) { .bsc-design .perspective-grid { grid-template-columns:minmax(0,1fr); } .bsc-design .brand-stage { min-width:0; width:100%; } }
@media(prefers-reduced-motion:reduce) { .bsc-design *, .bsc-design *::before, .bsc-design *::after { animation:none!important; transition:none!important; } }

/* Existing production BBB seal */
.bsc-design .bsc-home .bsc-home-bbb{display:flex;justify-content:center;padding:24px 20px 0}
.bsc-design .bsc-home .bsc-home-bbb a{display:block;max-width:100%;line-height:0}
.bsc-design .bsc-home .bsc-home-bbb img{display:block;width:160px;height:auto;max-width:100%;border:0}
.bsc-design .bsc-home .bsc-home-bbb a:focus-visible{outline:3px solid #f6d42b;outline-offset:5px}
