/* Component-scoped selectors: ScopedCssEnabled is disabled in this application. */
.special-numbers-section { margin-block: 2.5rem; min-width: 0; color: var(--text-0, var(--bs-body-color)); }
.special-numbers-section__heading { text-align: center; margin-bottom: 1.5rem; }
.special-numbers-section__badge, .special-number-page__badge { display: inline-block; padding: .45rem .9rem; border-radius: 2rem; background: color-mix(in srgb, var(--brand-primary) 10%, var(--bs-body-bg)); color: var(--brand-primary); font-size: .85rem; font-weight: 700; }
.special-numbers-section__heading h2 { margin-block: .8rem .5rem; font-weight: 800; }
.special-numbers-section__heading p { margin: 0; color: var(--text-2, var(--bs-secondary-color)); }
.special-numbers-section__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.special-numbers-section__card { min-width: 0; display: flex; align-items: center; gap: clamp(.75rem, 2vw, 1.5rem); padding: clamp(1rem, 3vw, 2rem); border: 1px solid color-mix(in srgb, var(--brand-primary) 28%, transparent); border-radius: 1.4rem; background: linear-gradient(115deg, color-mix(in srgb, var(--brand-primary) 22%, var(--bs-body-bg)), color-mix(in srgb, var(--brand-secondary) 10%, var(--bs-body-bg))); color: inherit; text-decoration: none; }
.special-numbers-section__card img { width: 38%; max-width: 12rem; height: 12rem; object-fit: contain; flex-shrink: 0; }
.special-numbers-section__copy { min-width: 0; overflow-wrap: anywhere; }
.special-numbers-section__copy h3 { font-size: clamp(1.1rem, 2.5vw, 1.6rem); font-weight: 800; margin: 0 0 .4rem; }
.special-numbers-section__copy strong { display: inline-block; padding: .25rem .6rem; border: 1px solid color-mix(in srgb, var(--brand-primary) 22%, transparent); border-radius: .75rem; background: var(--bs-body-bg); font-size: clamp(1.5rem, 4vw, 2.6rem); letter-spacing: .04em; color: var(--text-0, var(--bs-body-color)); white-space: nowrap; }
.special-numbers-section__copy > span { display: inline-flex; gap: .75rem; margin-top: .75rem; font-weight: 700; text-decoration: underline; }
.special-numbers-section__copy > span > span { display: inline-grid; place-items: center; min-width: 1.75rem; min-height: 1.75rem; border-radius: 50%; background: color-mix(in srgb, var(--brand-primary) 15%, var(--bs-body-bg)); text-decoration: none; }
.special-numbers-section__card:hover { border-color: var(--brand-primary); }
.special-numbers-section__card:focus-visible { outline: 3px solid var(--brand-primary); outline-offset: 4px; }
.special-number-page { width: 100%; min-width: 0; color: var(--text-0, var(--bs-body-color)); padding-bottom: 3rem; overflow-wrap: anywhere; }
.special-number-page__hero { width: 100%; overflow: hidden; background: var(--bs-body-bg); }
.special-number-page__hero img { display: block; width: 100%; height: auto; }
.special-number-page__content { width: min(100%, 1280px); margin-inline: auto; padding: 1.25rem; }
.special-number-page__heading { text-align: center; padding-block: 1rem; }
.special-number-page__heading h1 { font-size: clamp(1.8rem, 4vw, 2.7rem); margin-block: 1rem; font-weight: 800; color: var(--brand-primary); }
.special-number-page__description { white-space: pre-line; color: var(--text-2, var(--bs-secondary-color)); }
.special-number-page__purchase { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 1.5rem; margin-top: 1.5rem; }
.special-number-page__panel { min-width: 0; padding: clamp(1rem, 3vw, 1.8rem); border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, transparent); border-radius: 1.4rem; background: var(--bs-body-bg); box-shadow: 0 .5rem 1.75rem color-mix(in srgb, var(--brand-primary) 5%, transparent); }
.special-number-page__selection-heading { display: flex; align-items: center; gap: 1rem; padding-bottom: 1.25rem; margin-bottom: 1.25rem; border-bottom: 1px solid var(--bs-border-color); }
.special-number-page__selection-heading img { width: 30%; max-width: 8rem; height: 8rem; object-fit: contain; }
.special-number-page__selection-heading > div { min-width: 0; }
.special-number-page__selection-heading h2, .special-number-page__summary h2 { font-size: clamp(1.3rem, 2.5vw, 1.7rem); font-weight: 800; }
.special-number-page__number { display: inline-block; padding: .4rem .9rem; border-radius: .75rem; background: color-mix(in srgb, var(--brand-secondary) 10%, var(--bs-body-bg)); color: var(--brand-primary); font-size: 1.8rem; letter-spacing: .1em; margin-bottom: .5rem; }
.special-number-page__product { border: 1px solid var(--bs-border-color); border-radius: 1rem; padding: 1.2rem; }
.special-number-page__product h3 { font-size: 1.2rem; font-weight: 700; }
.special-number-page__price { font-size: 1.6rem; color: var(--brand-primary); }
.special-number-page__quantity { display: flex; width: min(100%, 14rem); gap: .4rem; }
.special-number-page__quantity input { min-width: 0; text-align: center; }
.special-number-page__quantity button { min-width: 2.75rem; min-height: 2.75rem; }
.special-number-page__summary { border-top: .4rem solid var(--brand-primary); }
.special-number-page__summary h2 { margin-block: 1rem; }
.special-number-page__summary-line, .special-number-page__total { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: .75rem; padding-block: .8rem; }
.special-number-page__total { border-top: 1px solid var(--bs-border-color); margin-top: 1rem; font-size: 1.5rem; font-weight: 800; }
.special-number-page__total strong { color: var(--brand-primary); }
.special-number-page__buy { width: 100%; min-height: 3.25rem; margin-top: 1rem; font-weight: 700; }
.special-number-page__note { margin-top: 1.25rem; color: var(--text-2, var(--bs-secondary-color)); font-size: .85rem; line-height: 1.6; }
.special-number-page__state { padding: 2rem; }
@media (min-width: 768px) {
    .special-numbers-section__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .special-number-page__purchase { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); }
}
