/* B presentation tokens; common menus, forms and logic remain shared. */
.design-b {
    --blue: #145cf5;
    --navy: #121a22;
    --ink: #121a22;
    --muted: #6b7682;
    --line: #e0e5ea;
    --bg: #f2f5f8;
    --b-radius: 20px;
}
.design-b .site-header,
.design-b.home-page .site-header {
    position: sticky;
    height: 96px;
    background: white;
    color: var(--ink);
    border-bottom-color: var(--line);
}
.design-b .section-shell {
    max-width: 1376px;
}
.design-b .button,
.design-b .nav-cta {
    border-radius: 8px;
}
.design-b .gnb .nav-cta {
    background: var(--blue);
    color: white;
    border: 0;
    padding: 14px 22px;
}
.design-b .site-header .brand small {
    opacity: 0.75;
}
.design-b .menu-button,
.design-b.home-page .site-header.is-scrolled .menu-button {
    color: var(--ink);
    border-color: var(--line);
}
.design-b .site-footer {
    background: var(--bg);
    color: var(--ink);
    border-top: 1px solid var(--line);
}
.design-b .footer-info,
.design-b .footer-bottom,
.design-b .footer-brand span {
    color: var(--muted);
}
.design-b .footer-brand,
.design-b .footer-links a {
    color: var(--ink);
}
.design-b .footer-top,
.design-b .footer-bottom {
    border-color: var(--line);
}
.design-b .page-heading {
    background: var(--bg);
    color: var(--ink);
    border-radius: 0 0 var(--b-radius) var(--b-radius);
}
.design-b .page-heading .breadcrumb,
.design-b .page-heading .section-shell > p:last-child {
    color: var(--muted);
}
.design-b .page-heading .section-kicker {
    color: var(--blue);
}
.design-b .page-heading h1 {
    letter-spacing: -0.04em;
}
.design-b .customer-roll-card {
    background: transparent;
}
@media (max-width: 768px) {
    .design-b .site-header,
    .design-b.home-page .site-header {
        height: 76px;
        padding-inline: 24px;
    }
    .design-b .gnb,
    .design-b.home-page .site-header.is-scrolled .gnb {
        top: 76px;
        background: white;
        color: var(--ink);
    }
    .design-b .gnb .nav-cta {
        border: 0;
    }
}
