/* Page patterns use these styles in WordPress and on the storefront. */
body:not(.home) .bs-header { background: #0d1117; }
body.admin-bar .bs-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .bs-header { top: 46px; } }
@media (max-width: 600px) { body.admin-bar #wpadminbar { position: fixed; } }
.bs-information-page :is(.ct-container,.ct-container-full) { padding-block: 0; }
.bs-information-page #main-container > main { background: #0d1117; }
.bs-account { white-space: nowrap; flex-shrink: 0; }
.bs-content-hero { background: #0d1117; color: #fff; padding: 76px 24px 80px; }
.bs-content__inner { max-width: 1100px; margin-inline: auto; }
.bs-content__eyebrow { color: #ea7c1f; font-size: 12px; font-weight: 750; letter-spacing: .18em; text-transform: uppercase; margin: 0 0 20px; }
.bs-content-hero h1 { color: inherit; font-size: clamp(38px, 6vw, 72px); line-height: 1.02; font-weight: 900; letter-spacing: -.035em; max-width: 850px; margin: 0 0 26px; }
.bs-content__lead { color: #bdc5cd; max-width: 690px; font-size: 19px; line-height: 1.65; margin: 0; }
.bs-content-section { padding: 64px 24px; background: #fff; color: #0d1117; }
.bs-content-section h2 { font-size: clamp(26px, 3vw, 38px); font-weight: 850; line-height: 1.15; letter-spacing: -.025em; margin: 0 0 22px; }
.bs-content-section h3 { font-size: 22px; font-weight: 800; margin: 0 0 12px; }
.bs-content-section p { max-width: 760px; color: #535f6b; line-height: 1.75; }
.bs-content-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; margin-block: 36px; }
.bs-content-step { padding-top: 24px; border-top: 1px solid #dfe3e5; margin: 0 !important; }
.bs-content-step .bs-content__eyebrow { color: #a54800; font-size: 26px; letter-spacing: -.04em; margin: 0 0 16px; }
.bs-content-cta { padding: 60px 24px; background: #ea7c1f; color: #0d1117; }
.bs-content-cta h2 { margin: 0 0 12px; font-size: clamp(30px,4vw,46px); font-weight: 900; }
.bs-content-cta p { margin: 0 0 24px; }
.bs-content-cta .wp-block-button__link { background: #0d1117; color: #fff; padding: 16px 26px; border-radius: 999px; }
.bs-faq { border-bottom: 1px solid #dfe3e5; padding: 22px 0; margin: 0; }
.bs-faq summary { font-size: 19px; font-weight: 750; cursor: pointer; }
.bs-faq[open] summary { margin-bottom: 18px; }
.bs-faq p { margin-bottom: 0; }
.bs-content-section .wp-block-image { max-width: 760px; margin-block: 30px; }
.bs-content-section img { border-radius: 12px; }
.entry-content > :is(.bs-content-hero,.bs-content-section,.bs-content-cta) { margin-block: 0; }
.bs-footer { background: #0d1117; color: #bdc5cd; padding: 58px 24px 24px; }
.bs-footer__inner { max-width: 1100px; margin-inline: auto; display: grid; grid-template-columns: 2fr repeat(3,1fr); gap: 48px; }
.bs-footer__wordmark { display: block; color: #fff; text-transform: uppercase; font-size: 24px; font-weight: 900; letter-spacing: -.03em; margin-bottom: 16px; text-decoration: none; }
.bs-footer__widget p { max-width: 280px; font-size: 14px; line-height: 1.7; }
.bs-footer h2 { color: #fff; font-size: 13px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; margin: 0 0 20px; }
.bs-footer nav ul { display: block; list-style: none; padding: 0; margin: 0; }
.bs-footer li { margin: 0 0 12px; }
.bs-footer nav a { color: #bdc5cd; font-size: 14px; text-decoration: none; }
.bs-footer a:hover { color: #ea7c1f; }
.bs-footer__bottom { max-width: 1100px; margin: 38px auto 0; padding-top: 22px; border-top: 1px solid #ffffff20; font-size: 12px; }
@media (max-width: 1100px) { .bs-nav__list { gap: 1.2rem; } .bs-nav__list a { font-size: .75rem; } }
@media (max-width: 1024px) { .bs-header__inner { gap: 14px; } .bs-burger { flex: 0 0 44px; height: 44px; } }
@media (max-width: 860px) {
    .bs-content-grid { grid-template-columns: 1fr; gap: 16px; }
    .bs-content-hero { padding: 50px 24px; }
    .bs-content-section { padding: 40px 24px; }
    .bs-footer__inner { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
    .bs-footer__brand { grid-column: 1/-1; }
}
@media (max-width: 480px) {
    .bs-header__inner { gap: 10px; }
    .bs-logo { font-size: 1.2rem; }
    .bs-account { margin-left: auto; padding: 10px; min-width: 44px; min-height: 44px; justify-content: center; }
    .bs-account__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .bs-burger { margin-left: 0; }
}
/* Tables and lists in information pages (prices, shipping, legal texts). */
.bs-table { width: 100%; max-width: 860px; border-collapse: collapse; margin: 8px 0 24px; font-size: 15px; }
.bs-table :is(th, td) { text-align: left; padding: 13px 12px; border-bottom: 1px solid #dfe3e5; vertical-align: top; }
.bs-table th { font-size: 12px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; color: #535f6b; }
.bs-table a { color: #0d1117; font-weight: 700; }
.bs-to-follow { color: #8a949e; font-style: italic; }
.bs-content-section :is(ul, ol) { max-width: 760px; color: #535f6b; line-height: 1.75; padding-left: 1.3em; margin: 0 0 20px; }
.bs-content-section li { margin-bottom: 8px; }
.bs-content-section li strong { color: #0d1117; }
.bs-content-section p a, .bs-content-section li a { color: #a54800; font-weight: 650; }
.bs-content__small { font-size: 13px; }
@media (max-width: 600px) { .bs-table { font-size: 14px; } .bs-table :is(th, td) { padding: 10px 6px; } }
.bs-content-card .bs-content__eyebrow { font-size: 12px !important; letter-spacing: .18em !important; margin-bottom: 12px !important; }
.bs-content__value { color: #0d1117 !important; font-size: 17px; line-height: 1.6; }
.bs-content__value a { color: #0d1117 !important; font-weight: 750; }
