/* =====================================================================
   Slushy Bros — "Stay Frozen" skin: interior pages
   ---------------------------------------------------------------------
   Loads after frozen.css on every page. Turns the old dark zine interiors
   into the homepage's look: warm off-white page, navy header bands, white
   rounded cards with soft shadows, pill buttons, DM Sans eyebrows.

   How it works: the legacy stylesheet paints everything with CSS
   variables, but two conventions coexist —
     • "dark" templates:  --paper is TEXT, --ink is BACKGROUND
     • "light" templates: --paper is SURFACE, --ink is TEXT / borders
   So the content area gets a dark→light remap by default, and the light
   templates get their own remap on top. Component overrides follow.
   ===================================================================== */

/* ---------- 1. Palette remap: default (dark-semantic templates) ---------- */
body.sb-frozen:not(.home) #site-content {
    background: var(--fz-bg);
    color: var(--fz-ink);

    --ink:          var(--fz-bg);
    --ink-2:        #ffffff;
    --ink-3:        var(--fz-surface-2);
    --paper:        var(--fz-ink);
    --paper-2:      var(--fz-navy-2);
    --paper-dim:    var(--fz-muted);
    --paper-faint:  rgba(11, 31, 46, 0.08);
    --blood:        var(--fz-red);
    --blood-deep:   var(--fz-red-deep);
    --blood-bright: var(--fz-red);
    --ice:          var(--fz-blue);
    --ice-deep:     var(--fz-blue-deep);
    --ice-bright:   var(--fz-blue);
    --mustard:      #b8860b;
    --line:         rgba(11, 31, 46, 0.12);
    --line-strong:  rgba(11, 31, 46, 0.28);
    --cream:        var(--fz-bg);
    --ink-soft:     var(--fz-muted);
}

/* ---------- 1b. Palette remap: light-semantic templates ---------- */
body.sb-frozen #site-content :is(
    .archive-drop, .drop-filters,
    .policy-page,
    .about-page-hero, .about-page-body, .about-story, .about-page-contact,
    .podcast-hero, .podcast-episodes, .podcast-foot,
    .slop-hero, .slop-section, .slop-closing, .slop-page-body,
    .ta-hero, .ta-intro, .ta-essence, .ta-drops, .ta-collection, .ta-limited, .ta-reviews, .ta-tips, .ta-trust, .ta-faq, .ta-final-cta, .ta-author,
    .gifting-form, .links-page,
    .sb-checkout-zone, .studio-feature, .studio-album-banner, .my-cup-perks-ladder
) {
    --ink:          var(--fz-ink);
    --ink-2:        var(--fz-navy-2);
    --ink-3:        var(--fz-navy);
    --paper:        #ffffff;
    --paper-dim:    rgba(255, 255, 255, 0.72);
    --paper-faint:  rgba(255, 255, 255, 0.14);
    --cream:        var(--fz-bg);
    --ink-soft:     var(--fz-muted);
    --line:         rgba(11, 31, 46, 0.12);
    --line-strong:  rgba(11, 31, 46, 0.28);
}
/* the light sections themselves sit on the page ground, not stark white */
body.sb-frozen #site-content :is(.archive-drop, .policy-page, .about-page-body, .about-story, .about-page-contact, .podcast-episodes, .slop-section, .ta-intro) {
    background: var(--fz-bg);
    border-top: 0;
    border-bottom: 0;
}

/* Dark inserts that stay dark (photo heroes, sticky bars, callouts):
   text back to white so nothing goes navy-on-navy */
body.sb-frozen #site-content :is(
    .single-post-hero, .lookbook-hero, .mobile-buy-bar, .slush-log-feature,
    .about-closing, .about-pullquote, .podcast-foot, .ta-final-cta, .ta-limited,
    .archive-drop-card-soldout, .archive-drop-card-quick, .zoom-lightbox, .studio-lightbox,
    .proof-section, .signup-section, .code-section, .links-page--gradient, .links-page--ink, .links-page--red
) {
    --paper:       #ffffff;
    --paper-dim:   rgba(255, 255, 255, 0.72);
    --paper-faint: rgba(255, 255, 255, 0.14);
    --ink:         var(--fz-navy);
    --ink-2:       var(--fz-navy-2);
    --line:        rgba(255, 255, 255, 0.14);
    --line-strong: rgba(255, 255, 255, 0.3);
    --mustard:     var(--fz-yellow);
    --blood-bright: #ff6b6b;
}

/* ---------- 2. Page header bands (every interior template's top) ---------- */
body.sb-frozen #site-content :is(
    .archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head,
    .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching,
    .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band
) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 0 0 56px;
    padding: 48px 24px 44px;
    text-align: center;
    color: #fff;
    background: radial-gradient(120% 90% at 85% 10%, rgba(214, 40, 40, 0.45) 0%, rgba(214, 40, 40, 0) 55%),
                linear-gradient(160deg, var(--fz-navy) 0%, #0d3450 60%, #0b5f98 140%);
    border: 0;
    --paper:       #ffffff;
    --paper-dim:   rgba(255, 255, 255, 0.78);
    --ink:         var(--fz-navy);
    --ink-soft:    rgba(255, 255, 255, 0.72);
    --mustard:     var(--fz-yellow);
    --blood:       var(--fz-yellow);
    --blood-bright: var(--fz-yellow);
    --ice:         var(--fz-yellow);
    --ice-bright:  var(--fz-yellow);
}
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band) :is(h1, h2, .sb-display) { color: #fff; text-shadow: 0 8px 30px rgba(0, 0, 0, 0.35); }
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head) :is(p, .policy-deck, .about-page-deck, .blog-index-deck, .archive-drop-hero-deck, .podcast-deck, .ta-hero-deck, .slop-hero-deck, .drop-launching-lede, .fz-page-band-deck) { color: rgba(255, 255, 255, 0.82); opacity: 1; }
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band) .marker-eyebrow { color: var(--fz-yellow); }
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .single-post-head) :is(.policy-updated, .about-page-updated, .single-post-meta) { color: rgba(255, 255, 255, 0.6); }
/* the band needs to be flush with the header: kill the wrappers' top padding */
body.sb-frozen #site-content :is(.policy-page, .blog-index, .single-post, .hype-page, .my-cup, .sb-bro-profile, .studio-single) { padding-top: 0; }
body.sb-frozen #site-content .archive-drop-hero-grain,
body.sb-frozen #site-content .ta-hero-grain { opacity: 0.1; }
body.sb-frozen #site-content .archive-drop-hero-stats { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.18); }
/* photo heroes on posts / lookbook: navy scrim instead of black */
body.sb-frozen #site-content :is(.single-post-hero-overlay, .lookbook-hero-overlay) {
    background: linear-gradient(180deg, rgba(10, 28, 41, 0.45), rgba(10, 28, 41, 0.9));
}

/* ---------- 3. Type + eyebrows ---------- */
body.sb-frozen #site-content .sb-display,
body.sb-frozen #site-content .chunk { letter-spacing: 0.005em; }
body.sb-frozen #site-content .marker-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--fz-body);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    line-height: 1.2;
    color: var(--fz-red);
    transform: none;
    margin-bottom: 12px;
}
body.sb-frozen #site-content :is(.marker-aside, .buy-marker-aside, .price-aside, .error-marker, .policy-updated, .about-page-updated, .signup-aside, .note, .marker, .studio-section-eyebrow, .ta-essence-card-marker, .lookbook-sub, .studio-lightbox-title) {
    font-family: var(--fz-body);
    font-style: normal;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.02em;
    transform: none;
}
body.sb-frozen #site-content .studio-section-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--fz-red); }
body.sb-frozen #site-content .section-head h2 .red { color: var(--fz-red); }
body.sb-frozen #site-content .section-head h2 .blue { color: var(--fz-blue); }
body.sb-frozen #site-content .section-head h2 .gold { color: #b8860b; }
body.sb-frozen #site-content .stamp { border-radius: 100px; transform: none; }

/* ---------- 4. Buttons + links ---------- */
body.sb-frozen #site-content .btn {
    min-height: 50px;
    padding: 0 24px;
    border-radius: 100px;
    border: 2px solid transparent;
    font-family: var(--fz-display);
    font-size: 15px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1;
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
body.sb-frozen #site-content .btn-red { background: var(--fz-red); color: #fff; box-shadow: 0 10px 24px rgba(214, 40, 40, 0.28); }
body.sb-frozen #site-content .btn-red:hover { background: var(--fz-red-deep); transform: translateY(-2px); box-shadow: 0 14px 30px rgba(214, 40, 40, 0.34); }
body.sb-frozen #site-content .btn-ghost { background: transparent; color: currentColor; border-color: currentColor; }
body.sb-frozen #site-content .btn-ghost:hover { transform: translateY(-2px); background: rgba(11, 31, 46, 0.06); border-color: currentColor; }
body.sb-frozen #site-content :is(.btn-paper, .btn-ink) { background: var(--fz-ink); color: #fff; border-color: var(--fz-ink); }
body.sb-frozen #site-content :is(.btn-paper, .btn-ink):hover { background: var(--fz-navy-2); transform: translateY(-2px); box-shadow: var(--fz-shadow); }
body.sb-frozen #site-content .back-link { color: var(--fz-muted); font-family: var(--fz-body); font-weight: 800; font-size: 12px; letter-spacing: 0.1em; }
body.sb-frozen #site-content .back-link:hover { color: var(--fz-ink); }
body.sb-frozen #site-content :is(.policy-body, .page-default-content, .single-post-content, .about-page-body) a:not(.btn) { color: var(--fz-blue); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.sb-frozen #site-content :is(.policy-body, .page-default-content, .single-post-content, .about-page-body) a:not(.btn):hover { color: var(--fz-red); }

/* ---------- 5. Cards: soften the brutalist black borders + hard shadows ---------- */
body.sb-frozen #site-content :is(
    .archive-drop-card-link, .drop-filters,
    .about-trio-card, .about-stat, .about-beliefs li, .about-page-contact-card,
    .podcast-card, .ta-essence-card, .ta-drop-card, .ta-collection-card, .ta-review-card, .ta-trust-card, .ta-faq-item, .ta-author-card,
    .gifting-form, .studio-feature, .my-cup-perks-ladder, .policy-callout,
    .spec-card, .related-card, .search-card, .slush-log-row, .my-cup-card, .hype-tier, .sb-bro-card, .sb-referral-card, .sb-mission-card, .sb-sets-card,
    .studio-single-drop-card, .podcast-coming-soon, .slop-def, .slop-comment-bubble, .slop-evidence-item, .my-cup-order
) {
    background: #fff;
    border: 1px solid var(--fz-line);
    border-radius: var(--fz-radius);
    box-shadow: var(--fz-shadow);
    color: var(--fz-ink);
}
body.sb-frozen #site-content :is(.archive-drop-card-link, .podcast-card, .ta-drop-card, .related-card, .search-card, .slush-log-row, .about-page-contact-card):hover {
    transform: translateY(-4px);
    box-shadow: var(--fz-shadow-lg);
    border-color: var(--fz-line);
}
body.sb-frozen #site-content :is(.about-closing, .about-pullquote, .podcast-foot, .ta-final-cta) {
    background: linear-gradient(120deg, var(--fz-navy) 0%, #0d3450 50%, var(--fz-blue) 130%);
    border-radius: var(--fz-radius);
    border: 0;
}
body.sb-frozen #site-content .about-chapter { border-top-color: var(--fz-line); }
body.sb-frozen #site-content .about-chapter-num { color: var(--fz-blue); }

/* ---------- 6. Shop archive ---------- */
body.sb-frozen #site-content .archive-drop { padding-bottom: 96px; }
body.sb-frozen #site-content .archive-drop-hero-inner h1 { text-shadow: 0 8px 30px rgba(0, 0, 0, 0.35); }
body.sb-frozen #site-content .drop-filters { padding: 16px 18px; border-radius: var(--fz-radius); max-width: none; }
body.sb-frozen #site-content .drop-chip {
    height: 38px;
    padding: 0 14px;
    background: var(--fz-bg);
    border: 1.5px solid var(--fz-line);
    color: var(--fz-ink);
    font-size: 13px;
}
body.sb-frozen #site-content .drop-chip:hover { background: #fff; border-color: var(--fz-ink); transform: none; }
body.sb-frozen #site-content .drop-chip.is-active { background: var(--fz-ink); border-color: var(--fz-ink); color: #fff; }
body.sb-frozen #site-content .drop-chip--tier-12.is-active { background: var(--fz-red); border-color: var(--fz-red); }
body.sb-frozen #site-content .drop-chip--tier-32.is-active { background: var(--fz-blue); border-color: var(--fz-blue); }
body.sb-frozen #site-content .drop-chip--tier-64.is-active { background: var(--fz-yellow); border-color: var(--fz-yellow); color: var(--fz-ink); }
body.sb-frozen #site-content .drop-filters-status { border-top-color: var(--fz-line); }
body.sb-frozen #site-content .archive-drop-card-link { padding: 12px; }
body.sb-frozen #site-content .archive-drop-card-art { border-radius: 12px; border-bottom: 0; aspect-ratio: 4 / 5; background: var(--fz-surface-2); }
body.sb-frozen #site-content .archive-drop-card-tier { border: 0; box-shadow: none; font-size: 12px; padding: 6px 10px; }
body.sb-frozen #site-content .archive-drop-card-tag { background: var(--fz-yellow); color: var(--fz-ink); }
body.sb-frozen #site-content .archive-drop-card-body { padding: 14px 6px 6px; background: transparent; }
body.sb-frozen #site-content .archive-drop-card-title { font-size: 22px; line-height: 1.05; letter-spacing: 0.03em; min-height: 2.1em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.sb-frozen #site-content .archive-drop-card-price { color: var(--fz-red); font-family: var(--fz-display); font-weight: 400; font-size: 22px; letter-spacing: 0.06em; }
body.sb-frozen #site-content .archive-drop-card-soldout { background: rgba(11, 31, 46, 0.55); border-radius: 12px; font-size: 24px; }
body.sb-frozen #site-content .archive-drop-card-quick { background: rgba(11, 31, 46, 0.88); }
body.sb-frozen #site-content .archive-drop-card[data-tier]:not([data-tier="0"]) .archive-drop-card-quick { background: rgba(11, 31, 46, 0.88); bottom: calc(18px + 44px); }

/* ---------- 7. Product page ---------- */
body.sb-frozen #site-content .single-drop { padding: 56px 0 120px; }
body.sb-frozen #site-content .single-drop-art { border-radius: var(--fz-radius); background: #fff; box-shadow: var(--fz-shadow-lg); border: 1px solid var(--fz-line); }
body.sb-frozen #site-content .gallery-thumb { border-radius: 10px; background: #fff; }
body.sb-frozen #site-content .gallery-thumb.is-active { border-color: var(--fz-red); box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--fz-red); }
body.sb-frozen #site-content .single-drop-buy { gap: 16px; }
body.sb-frozen #site-content .buy-eyebrow { transform: none; }
body.sb-frozen #site-content .single-drop .price-tag { color: var(--fz-ink); }
body.sb-frozen #site-content .single-drop .description { color: var(--fz-muted); }
body.sb-frozen #site-content .buy-form { background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); padding: 22px; }
body.sb-frozen #site-content .buy-field-label { font-family: var(--fz-body); font-weight: 800; font-size: 11px; letter-spacing: 0.12em; }
body.sb-frozen #site-content .buy-field-link { color: var(--fz-blue); }
body.sb-frozen #site-content .size-chip { border-color: var(--fz-line); color: var(--fz-ink); background: var(--fz-bg); }
body.sb-frozen #site-content .size-chip:hover { border-color: var(--fz-ink); }
body.sb-frozen #site-content .size-chip.is-active { background: var(--fz-ink); color: #fff; border-color: var(--fz-ink); }
body.sb-frozen #site-content .swatch-btn { border-color: var(--fz-line); }
body.sb-frozen #site-content .swatch-btn.is-active { border-color: var(--fz-ink); box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--fz-ink); }
body.sb-frozen #site-content .qty-stepper { border-color: var(--fz-line); border-radius: 100px; background: var(--fz-bg); }
body.sb-frozen #site-content .qty-btn:hover { background: rgba(11, 31, 46, 0.06); }
body.sb-frozen #site-content .buy-submit { border-radius: 100px; }
body.sb-frozen #site-content .buy-perks { color: var(--fz-muted); }
body.sb-frozen #site-content .buy-perks i { color: var(--fz-red); }
body.sb-frozen #site-content .single-drop-specs { border-radius: var(--fz-radius); border-color: var(--fz-line); background: transparent; box-shadow: none; }
body.sb-frozen #site-content .spec-card:hover { border-color: var(--fz-line); }
body.sb-frozen #site-content .spec-stamp { border-radius: 100px; }
/* Related drops: same card anatomy as the homepage product cards —
   padded art, tag + pill inside the art, title/price row below */
body.sb-frozen #site-content .related-card { overflow: hidden; padding: 12px; gap: 0; }
body.sb-frozen #site-content .related-art { border-radius: 12px; background: var(--fz-surface-2, #eef0f3); }
body.sb-frozen #site-content .related-art .product-art-image { display: block; transition: transform 0.4s ease; }
body.sb-frozen #site-content .related-card:hover .product-art-image { transform: scale(1.04); }
body.sb-frozen #site-content .related-art .product-tag { top: 12px; left: 12px; background: var(--fz-navy); color: #fff; }
body.sb-frozen #site-content .related-art .product-stock { top: 12px; right: 12px; }
body.sb-frozen #site-content .related-info { padding: 14px 6px 4px; align-items: center; }
body.sb-frozen #site-content .related-info h3 { font-size: 18px; line-height: 1.1; color: var(--fz-ink); }
body.sb-frozen #site-content .related-info .price { font-size: 18px; color: var(--fz-red); white-space: nowrap; }
body.sb-frozen #site-content .related-head .note { color: var(--fz-red); }
body.sb-frozen #site-content .tier-benefits-callout { background: #fff; border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); color: var(--fz-ink); }
body.sb-frozen #site-content .tier-benefits-callout[data-tier="12"] { --cup-color: var(--fz-red); }
body.sb-frozen #site-content .tier-benefits-callout[data-tier="32"] { --cup-color: var(--fz-blue); }
body.sb-frozen #site-content .tier-benefits-callout[data-tier="64"] { --cup-color: #b8860b; }
body.sb-frozen #site-content .mobile-buy-bar { background: rgba(10, 28, 41, 0.96); border-top-color: rgba(255, 255, 255, 0.14); }
body.sb-frozen #site-content .product-tag { background: var(--fz-ink); color: #fff; border-color: var(--fz-ink); }
body.sb-frozen #site-content .sb-modal-panel { background: #fff; color: var(--fz-ink); border-radius: var(--fz-radius); }
body.sb-frozen #site-content .size-guide-table th { background: var(--fz-bg); }
body.sb-frozen #site-content .drop-launching-counter > div { background: rgba(255, 255, 255, 0.1); border-radius: 14px; }

/* ---------- 8. Blog + posts ---------- */
body.sb-frozen #site-content .blog-index { padding-bottom: 120px; }
body.sb-frozen #site-content .blog-index-head h1 { color: #fff; }
body.sb-frozen #site-content .slush-log-feature { border-radius: var(--fz-radius); box-shadow: var(--fz-shadow-lg); }
body.sb-frozen #site-content .slush-log-feature-overlay { background: linear-gradient(to top, rgba(10, 28, 41, 0.92) 0%, rgba(10, 28, 41, 0.35) 55%, rgba(10, 28, 41, 0.1) 100%); }
body.sb-frozen #site-content .slush-log-pill { background: var(--fz-yellow); color: var(--fz-ink); }
/* featured (latest) entry: white copy on a navy scrim, yellow category */
body.sb-frozen #site-content .slush-log-feature--archive { min-height: 520px; }
body.sb-frozen #site-content .slush-log-feature .slush-log-meta { color: rgba(255, 255, 255, 0.82); font-size: 12px; }
body.sb-frozen #site-content .slush-log-feature .slush-log-cat { color: var(--fz-yellow); }
body.sb-frozen #site-content .slush-log-feature .slush-log-title { color: #fff; text-shadow: 0 6px 30px rgba(0, 0, 0, 0.55), 0 2px 6px rgba(0, 0, 0, 0.4); max-width: 18ch; }
body.sb-frozen #site-content .slush-log-feature .slush-log-excerpt { color: rgba(255, 255, 255, 0.86); font-weight: 500; }
body.sb-frozen #site-content .slush-log-feature .slush-log-cta { color: var(--fz-yellow); }
/* the rest: a clean three-up grid of white cards, art on top */
body.sb-frozen #site-content .slush-log-rows { grid-template-columns: repeat(3, 1fr); gap: 22px; }
body.sb-frozen #site-content .slush-log-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px;
    background: #fff;
    border: 1px solid var(--fz-line);
    border-radius: var(--fz-radius);
    box-shadow: var(--fz-shadow);
}
body.sb-frozen #site-content .slush-log-row::before { display: none; }
body.sb-frozen #site-content .slush-log-row:hover { transform: translateY(-4px); border-color: var(--fz-line); background: #fff; box-shadow: var(--fz-shadow-lg); }
body.sb-frozen #site-content .slush-log-row-art {
    aspect-ratio: 16 / 10;
    border-radius: 12px;
    background: radial-gradient(90% 80% at 85% 15%, rgba(214, 40, 40, 0.5) 0%, rgba(214, 40, 40, 0) 60%),
                linear-gradient(160deg, var(--fz-navy) 0%, #0d3450 100%);
}
body.sb-frozen #site-content .slush-log-row-fallback {
    font-family: var(--fz-display);
    font-size: clamp(22px, 2vw, 30px);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.9);
    text-align: center;
    padding: 0 20px;
}
body.sb-frozen #site-content .slush-log-row-body { padding: 16px 8px 8px; gap: 8px; }
body.sb-frozen #site-content .slush-log-meta { color: var(--fz-muted); font-family: var(--fz-body); font-weight: 800; font-size: 11px; letter-spacing: 0.12em; }
body.sb-frozen #site-content .slush-log-cat { color: var(--fz-red); }
body.sb-frozen #site-content .slush-log-row-title {
    font-family: var(--fz-display);
    font-size: 22px;
    line-height: 1.02;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}
body.sb-frozen #site-content .slush-log-row-title a { color: var(--fz-ink); }
body.sb-frozen #site-content .slush-log-row-title a:hover { color: var(--fz-red); }
body.sb-frozen #site-content .slush-log-row-excerpt { color: var(--fz-muted); font-size: 14px; line-height: 1.5; -webkit-line-clamp: 3; }
body.sb-frozen #site-content .blog-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 48px; }
/* single post: the back link sits on a photo → white pill */
body.sb-frozen #site-content .single-post-hero .back-link,
body.sb-frozen #site-content .lookbook-hero .back-link {
    color: #fff;
    background: rgba(10, 28, 41, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 8px 14px;
    border-radius: 100px;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}
body.sb-frozen #site-content .single-post-hero .back-link:hover { color: var(--fz-yellow); }
@media (max-width: 960px) {
    body.sb-frozen #site-content .slush-log-rows { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 640px) {
    body.sb-frozen #site-content .slush-log-rows { grid-template-columns: 1fr; }
    body.sb-frozen #site-content .slush-log-feature--archive { min-height: 420px; }
    body.sb-frozen #site-content .slush-log-feature--archive .slush-log-feature-text { padding: 24px 20px 22px; }
}
body.sb-frozen #site-content .single-post-content { color: var(--fz-ink); }
body.sb-frozen #site-content .single-post-content p strong { color: var(--fz-ink); }
body.sb-frozen #site-content .single-post-content blockquote { border-left: 4px solid var(--fz-red); background: #fff; border-radius: 0 14px 14px 0; }
body.sb-frozen #site-content .single-post-tags a { background: #fff; border: 1px solid var(--fz-line); color: var(--fz-ink); border-radius: 100px; }
body.sb-frozen #site-content .single-post-author { background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); }
body.sb-frozen #site-content .blog-pagination .page-numbers,
body.sb-frozen #site-content .search-pagination .page-numbers { border: 1.5px solid var(--fz-line); background: #fff; color: var(--fz-ink); border-radius: 100px; }
body.sb-frozen #site-content .blog-pagination .page-numbers.current,
body.sb-frozen #site-content .search-pagination .page-numbers.current { background: var(--fz-ink); color: #fff; border-color: var(--fz-ink); }

/* ---------- 9. Search + 404 + default page ---------- */
body.sb-frozen #site-content .search-form { background: #fff; border: 1px solid var(--fz-line); box-shadow: var(--fz-shadow); }
body.sb-frozen #site-content .search-form input { color: var(--fz-ink); }
body.sb-frozen #site-content .search-form input::placeholder { color: var(--fz-muted); }
body.sb-frozen #site-content .search-card-type { color: var(--fz-red); }
body.sb-frozen #site-content .search-card h2 a { color: var(--fz-ink); }
body.sb-frozen #site-content .search-card-link { color: var(--fz-blue); }
body.sb-frozen #site-content .search-card-art { border-radius: 12px; overflow: hidden; }
body.sb-frozen #site-content .search-empty { background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); padding: 48px 28px; text-align: center; }
body.sb-frozen #site-content .error-section { padding: 80px 0 120px; }
body.sb-frozen #site-content .error-code .red { color: var(--fz-red); }
body.sb-frozen #site-content .error-code .blue { color: var(--fz-blue); }
body.sb-frozen #site-content .error-marker { color: var(--fz-muted); }
body.sb-frozen #site-content .error-support a { color: var(--fz-blue); }
body.sb-frozen #site-content .page-default { padding: 72px 0 110px; }
body.sb-frozen #site-content .page-default-content { color: var(--fz-ink); }

/* ---------- 10. Forms + tables (generic) ---------- */
body.sb-frozen #site-content :is(input[type="text"], input[type="email"], input[type="search"], input[type="number"], input[type="tel"], textarea, select):not(.qty-input):not(.wc-block-components-text-input input) {
    background: #fff;
    color: var(--fz-ink);
    border: 1.5px solid var(--fz-line);
    border-radius: 12px;
    padding: 12px 16px;
    font-family: var(--fz-body);
}
body.sb-frozen #site-content :is(input, textarea, select):focus-visible { outline: 3px solid var(--fz-yellow); outline-offset: 2px; }
body.sb-frozen #site-content table th { background: var(--fz-bg); color: var(--fz-ink); }
body.sb-frozen #site-content table td { border-color: var(--fz-line); }
body.sb-frozen #site-content .hype-benefits-table { background: #fff; border-radius: var(--fz-radius); overflow: hidden; }

/* ---------- 11. Policy / legal ---------- */
body.sb-frozen #site-content .policy-callout { padding: 22px 24px; }
body.sb-frozen #site-content .policy-callout-eyebrow { color: var(--fz-red); font-family: var(--fz-body); font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; font-size: 12px; }
body.sb-frozen #site-content .policy-body ul li::marker { color: var(--fz-red); content: '• '; }
body.sb-frozen #site-content .policy-body ol li::before { background: var(--fz-ink); }
body.sb-frozen #site-content .policy-cta { background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); }

/* ---------- 12. Rewards / profile pages (dark-semantic) ---------- */
body.sb-frozen #site-content :is(.my-cup-card, .hype-tier, .sb-bro-card, .sb-referral-card, .sb-mission-card, .sb-sets-card) { padding: 22px; }
body.sb-frozen #site-content .hype-benefits-check { color: var(--fz-red); }
body.sb-frozen #site-content .my-cup-spike-code { background: var(--fz-bg); border: 1px dashed var(--fz-line-strong, rgba(11,31,46,.3)); border-radius: 12px; }

/* ---------- 13. Mobile ---------- */
@media (max-width: 680px) {
    body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head) { padding: 52px 20px 44px; margin-bottom: 36px; }
    body.sb-frozen #site-content .drop-filters { padding: 12px; }
    body.sb-frozen #site-content .archive-drop-card-link { padding: 8px; }
}

/* ---------- 14. Legacy homepage sections reused by page templates ---------- */
/* Backyard (.proof-section) + Mailing List (.signup-section): navy gradient band
   instead of the blurred-photo-over-black treatment */
body.sb-frozen #site-content :is(.proof-section, .signup-section) {
    background: radial-gradient(120% 90% at 85% 10%, rgba(214, 40, 40, 0.45) 0%, rgba(214, 40, 40, 0) 55%),
                linear-gradient(160deg, var(--fz-navy) 0%, #0d3450 60%, #0b5f98 140%);
    color: #fff;
}
body.sb-frozen #site-content :is(.proof-section, .signup-section)::before,
body.sb-frozen #site-content :is(.proof-section, .signup-section)::after { display: none; }
body.sb-frozen #site-content :is(.proof-section, .signup-section) :is(h2, .sb-display) { color: #fff; }
body.sb-frozen #site-content :is(.proof-section, .signup-section) .marker-eyebrow { color: var(--fz-yellow); }
body.sb-frozen #site-content .proof-section .photo { border-radius: 14px; overflow: hidden; }
body.sb-frozen #site-content .signup-section .signup-form { background: #fff; border-radius: 100px; }
body.sb-frozen #site-content .signup-section .signup-form input { color: var(--fz-ink); }
/* House Rules (.code-section): keep the red band, white heading, white rule cards */
body.sb-frozen #site-content .code-section { background-image: none; }
body.sb-frozen #site-content .code-section :is(h2, .sb-display) { color: #fff; }
body.sb-frozen #site-content .code-section .rule-card,
body.sb-frozen #site-content .code-section .code-card { background: #fff; color: var(--fz-ink); border: 0; border-radius: var(--fz-radius); box-shadow: var(--fz-shadow-lg); }
/* Links (bio) page: navy instead of black */
body.sb-frozen .links-page--gradient .links-page-bg,
body.sb-frozen .links-page--ink .links-page-bg {
    background:
        radial-gradient(circle at 20% 20%, rgba(214, 40, 40, 0.5), transparent 55%),
        radial-gradient(circle at 80% 80%, rgba(11, 117, 187, 0.55), transparent 55%),
        linear-gradient(180deg, var(--fz-navy) 0%, #0d3450 100%);
}


/* ---------- 15. Banner header bands + About page photos ---------- */
/* Header bands that carry a wide banner image (Customizer → Shop page hero /
   Interior page banner): image on top fading into the navy band, copy sitting
   on the fade like the homepage hero. Used by the shop archive, About, Blog
   and Follow headers. */
body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero),
body.sb-frozen #site-content .has-bg {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--fz-navy);
    padding-top: clamp(130px, 16vw, 230px);
}
body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero)::before,
body.sb-frozen #site-content .has-bg::before {
    content: "";
    position: absolute;
    left: 0; right: 0; top: 0;
    aspect-ratio: 2.52 / 1;
    background: var(--hero-bg) center top / cover no-repeat;
    -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 30%, transparent 82%);
    mask-image: linear-gradient(180deg, #000 0%, #000 30%, transparent 82%);
    z-index: 0;
    pointer-events: none;
}
body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero)::after,
body.sb-frozen #site-content .has-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 28, 41, 0) 0%, rgba(10, 28, 41, 0) 40%, rgba(10, 28, 41, 0.35) 62%, var(--fz-navy) 100%);
    z-index: 0;
    pointer-events: none;
}
body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero) > :not([aria-hidden="true"]),
body.sb-frozen #site-content .has-bg > :not([aria-hidden="true"]) { position: relative; z-index: 2; }
body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero-grain, .archive-drop-hero-glow, .ta-hero-grain, .ta-hero-glow, .podcast-hero-glow, .slop-hero-glow, .hype-page-head-glow),
body.sb-frozen #site-content .has-bg :is(.archive-drop-hero-grain, .archive-drop-hero-glow) { display: none; }
body.sb-frozen #site-content .archive-drop-hero.has-bg .archive-drop-hero-inner { padding-bottom: 8px; }
body.sb-frozen #site-content .has-bg :is(h1, .sb-display, .fz-follow-title) { text-shadow: 0 4px 0 rgba(0, 0, 0, 0.25), 0 14px 40px rgba(0, 0, 0, 0.6); }
@media (max-width: 960px) {
    body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero)::before,
    body.sb-frozen #site-content .has-bg::before { aspect-ratio: 1.6 / 1; }
    body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero),
    body.sb-frozen #site-content .has-bg { padding-top: clamp(120px, 27vw, 200px); }
}
@media (max-width: 640px) {
    body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero)::before,
    body.sb-frozen #site-content .has-bg::before { aspect-ratio: 1.15 / 1; }
    body.sb-frozen.sb-band-bg #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .fz-studio-hero),
    body.sb-frozen #site-content .has-bg { padding-top: calc(100vw / 1.15 - 160px); }
}

/* About page: real photos in the story (polaroid rows) */
body.sb-frozen #site-content .about-photo-row {
    display: grid;
    gap: 22px;
    margin: 34px 0 6px;
    align-items: start;
}
body.sb-frozen #site-content .about-photo-row--pair { grid-template-columns: repeat(2, 1fr); }
body.sb-frozen #site-content .about-photo-row--trio { grid-template-columns: repeat(3, 1fr); }
body.sb-frozen #site-content .about-photo {
    margin: 0;
    padding: 10px 10px 14px;
    background: #fff;
    border-radius: 14px;
    box-shadow: var(--fz-shadow-lg);
    transform: rotate(var(--tilt, 0deg));
    transition: transform 220ms ease, box-shadow 220ms ease;
}
body.sb-frozen #site-content .about-photo:hover { transform: rotate(0deg) translateY(-4px) scale(1.02); z-index: 2; position: relative; }
body.sb-frozen #site-content .about-photo img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 8px;
}
body.sb-frozen #site-content .about-photo-row--trio .about-photo img { aspect-ratio: 3 / 4; }
body.sb-frozen #site-content .about-photo figcaption {
    margin-top: 10px;
    font-family: 'Permanent Marker', cursive;
    font-size: 16px;
    color: var(--fz-ink);
    text-align: center;
    line-height: 1.2;
}
@media (max-width: 640px) {
    body.sb-frozen #site-content .about-photo-row--pair,
    body.sb-frozen #site-content .about-photo-row--trio { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    body.sb-frozen #site-content .about-photo-row--trio .about-photo:last-child { grid-column: 1 / -1; }
    body.sb-frozen #site-content .about-photo-row--trio .about-photo:last-child img { aspect-ratio: 4 / 3; }
    body.sb-frozen #site-content .about-photo { padding: 7px 7px 10px; }
    body.sb-frozen #site-content .about-photo figcaption { font-size: 14px; }
}

/* About page: trio cards get the costume portraits (hover / tap = out of costume) */
body.sb-frozen #site-content .about-trio-card { padding-top: 16px; }
body.sb-frozen #site-content .about-trio-photo {
    position: relative;
    margin: 0 auto 14px;
    width: 100%;
    aspect-ratio: 4 / 5;
    border-radius: 12px;
    overflow: hidden;
    background: var(--bro-color, #d6202b);
    isolation: isolate;
}
body.sb-frozen #site-content .about-trio-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    transition: opacity 320ms ease, transform 320ms ease;
}
body.sb-frozen #site-content .about-trio-photo-alt { opacity: 0; transform: scale(1.04); }
body.sb-frozen #site-content .about-trio-photo-hint {
    position: absolute;
    left: 10px; bottom: 10px;
    z-index: 2;
    padding: 5px 10px;
    border-radius: 100px;
    background: rgba(11, 31, 46, 0.78);
    color: #fff;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: opacity 220ms ease;
}
body.sb-frozen #site-content .about-trio-card:hover .about-trio-photo-alt,
body.sb-frozen #site-content .about-trio-card:focus-within .about-trio-photo-alt { opacity: 1; transform: scale(1); }
body.sb-frozen #site-content .about-trio-card:hover .about-trio-photo-hint,
body.sb-frozen #site-content .about-trio-card:focus-within .about-trio-photo-hint { opacity: 0; }
@media (hover: none) {
    body.sb-frozen #site-content .about-trio-photo-hint::after { content: " · tap"; }
}


/* ---------- 16. Links (bio) page: YouTube front and centre ---------- */
/* The links page renders without #site-content (minimal header), so these
   are scoped to body.sb-frozen only. */
body.sb-frozen .links-page { font-family: 'DM Sans', system-ui, sans-serif; }
body.sb-frozen .links-page--gradient .links-page-bg,
body.sb-frozen .links-page--ink .links-page-bg { animation: none; }
body.sb-frozen .links-yt {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px;
    border-radius: 22px;
    background: linear-gradient(150deg, #e42b2b 0%, #b91d1d 100%);
    box-shadow: 0 20px 50px rgba(214, 40, 40, 0.35), 0 4px 0 #7e1414;
    color: #fff;
}
body.sb-frozen .links-yt-main {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 6px 14px;
    align-items: center;
    padding: 8px 6px 4px;
    color: #fff;
    text-decoration: none;
}
body.sb-frozen .links-yt-icon {
    grid-row: 1 / 3;
    width: 56px; height: 56px;
    border-radius: 16px;
    background: #fff;
    color: #e42b2b;
    display: grid; place-items: center;
    font-size: 28px;
}
body.sb-frozen .links-yt-copy { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.sb-frozen .links-yt-eyebrow {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 10px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase;
    color: #ffd54a;
}
body.sb-frozen .links-yt-eyebrow .links-feature-pulse { background: #ffd54a; }
body.sb-frozen .links-yt-headline {
    font-family: 'Anton', sans-serif;
    font-size: 28px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}
body.sb-frozen .links-yt-handle { font-size: 13px; font-weight: 700; color: rgba(255, 255, 255, 0.8); }
body.sb-frozen .links-yt-stats {
    grid-column: 1 / -1;
    display: flex; flex-wrap: wrap; gap: 6px 18px;
    margin-top: 6px;
    font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
    color: rgba(255, 255, 255, 0.8);
}
body.sb-frozen .links-yt-stats strong { font-family: 'Anton', sans-serif; font-size: 22px; letter-spacing: 0.01em; color: #fff; margin-right: 4px; }
body.sb-frozen .links-yt-btn {
    grid-column: 1 / -1;
    display: flex; align-items: center; justify-content: center; gap: 10px;
    margin-top: 8px;
    padding: 15px 18px;
    border-radius: 100px;
    background: #fff;
    color: #b91d1d;
    font-size: 15px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
    transition: transform 200ms ease, background 200ms ease;
}
body.sb-frozen .links-yt-main:hover .links-yt-btn { transform: translateY(-2px); background: #ffd54a; color: #0b1f2e; }
body.sb-frozen .links-yt-shorts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
body.sb-frozen .links-yt-short {
    position: relative;
    display: block;
    aspect-ratio: 9 / 13;
    border-radius: 14px;
    overflow: hidden;
    background: #7e1414;
    transition: transform 200ms ease;
}
body.sb-frozen .links-yt-short:hover { transform: translateY(-3px); }
body.sb-frozen .links-yt-short img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.sb-frozen .links-yt-views {
    position: absolute; top: 8px; left: 8px;
    padding: 3px 8px;
    border-radius: 100px;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    font-size: 11px; font-weight: 800; letter-spacing: 0.04em;
    display: inline-flex; align-items: center; gap: 4px;
}
body.sb-frozen .links-yt-views i { font-size: 8px; }
body.sb-frozen .links-yt-play {
    position: absolute; left: 50%; top: 50%;
    transform: translate(-50%, -50%);
    width: 36px; height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #b91d1d;
    display: grid; place-items: center;
    font-size: 13px; padding-left: 3px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}
body.sb-frozen .links-page .links-cta-primary,
body.sb-frozen .links-page .links-btn,
body.sb-frozen .links-page .links-feature { border-radius: 16px; }

/* Links page: "yes, we're real" selfies */
body.sb-frozen .links-real { display: flex; flex-direction: column; gap: 6px; padding: 6px 0 2px; }
body.sb-frozen .links-real-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 8px 6px 10px; }
body.sb-frozen .links-real-photo {
    margin: 0;
    padding: 6px 6px 8px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    transform: rotate(var(--tilt, 0deg));
    transition: transform 200ms ease;
}
body.sb-frozen .links-real-photo:hover { transform: rotate(0deg) scale(1.06); z-index: 2; position: relative; }
body.sb-frozen .links-real-photo img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 5px; }
body.sb-frozen .links-real-photo figcaption { margin-top: 7px; font-family: 'Anton', sans-serif; font-size: 15px; letter-spacing: 0.04em; text-transform: uppercase; line-height: 1; text-align: center; color: #0b1f2e; }
body.sb-frozen .links-real-text {
    margin: 4px 0 0;
    text-align: center;
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    color: #fff;
}
body.sb-frozen .links-page--cream .links-real-text { color: #0b1f2e; }
body.sb-frozen .links-merch {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 18px 22px;
    border-radius: 18px;
    background: #efbf2f;
    color: #0b1f2e;
    text-decoration: none;
    font-family: 'Anton', sans-serif;
    font-size: 24px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    box-shadow: 0 14px 34px rgba(239, 191, 47, 0.35), 0 4px 0 #b8901c;
    transition: transform 200ms ease, box-shadow 200ms ease;
}
body.sb-frozen .links-merch:hover { transform: translateY(-3px); box-shadow: 0 20px 40px rgba(239, 191, 47, 0.45), 0 4px 0 #b8901c; }
body.sb-frozen .links-merch .fa-arrow-right { font-size: 18px; }


/* ---------- 17. Hero typography: every page band matches the homepage hero ---------- */
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .single-post-hero, .lookbook-hero) :is(h1, .sb-display:first-of-type, .fz-follow-title),
body.sb-frozen #site-content .fz-studio-title {
    font-family: var(--fz-display);
    font-size: clamp(46px, 5.4vw, 80px);
    line-height: 0.95;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    max-width: 16ch;
    margin: 0 auto 16px;
    color: #fff;
    text-shadow: 0 6px 30px rgba(0, 0, 0, 0.55), 0 2px 6px rgba(0, 0, 0, 0.4);
}
body.sb-frozen #site-content .fz-studio-title { margin-left: 0; max-width: none; }
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero) h1 :is(em, .red, .blue, .gold, .yellow) { color: var(--fz-yellow); font-style: normal; }
/* eyebrow: the homepage hero's pill with the pulsing dot */
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .single-post-hero, .lookbook-hero) .marker-eyebrow,
body.sb-frozen #site-content :is(.fz-follow-hero, .fz-studio-hero) .fz-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px 8px 10px;
    border-radius: 100px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #fff;
    font-family: var(--fz-body);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    line-height: 1.2;
    margin: 0 0 22px;
    transform: none;
}
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .single-post-hero, .lookbook-hero) .marker-eyebrow::before {
    content: "";
    width: 9px; height: 9px;
    border-radius: 50%;
    background: var(--fz-yellow);
    box-shadow: 0 0 0 0 rgba(239, 191, 47, 0.7);
    animation: fz-pulse 1.8s ease-out infinite;
}
/* deck: same weight / size / tone as the homepage sub line */
body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero) :is(p, .policy-deck, .about-page-deck, .blog-index-deck, .archive-drop-hero-deck, .podcast-deck, .ta-hero-deck, .slop-hero-deck, .drop-launching-lede, .fz-page-band-deck, .fz-follow-deck, .lookbook-sub),
body.sb-frozen #site-content .fz-studio-tagline {
    font-family: var(--fz-body);
    font-weight: 600;
    font-size: 17px;
    line-height: 1.5;
    max-width: 52ch;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.86);
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.6);
}
body.sb-frozen #site-content .fz-studio-tagline { margin-left: 0; }
body.sb-frozen #site-content .fz-page-band-deck { margin-top: 4px; }
body.sb-frozen #site-content .fz-page-band + :is(section, .page-default) { padding-top: 0; }
@media (max-width: 640px) {
    body.sb-frozen #site-content :is(.archive-drop-hero, .about-page-hero, .policy-head, .blog-index-head, .podcast-hero, .ta-hero, .slop-hero, .single-post-head, .drop-launching, .hype-page-head, .my-cup-head, .sb-bro-head, .studio-single-head, .fz-page-band, .fz-follow-hero, .single-post-hero, .lookbook-hero) :is(h1, .sb-display:first-of-type, .fz-follow-title),
    body.sb-frozen #site-content .fz-studio-title { font-size: clamp(40px, 8vw, 64px); }
}

/* ---------- 18. Colour swatches from WooCommerce (any colour, its own hex) ---------- */
body.sb-frozen .swatch-btn[style] .swatch { background: var(--sw); }
body.sb-frozen .swatch-btn .swatch { border: 1px solid rgba(11, 31, 46, 0.18); }
body.sb-frozen .buy-swatches { display: flex; flex-wrap: wrap; gap: 8px; }
body.sb-frozen .swatch-btn { width: 36px; height: 36px; }
body.sb-frozen .swatch-btn.is-active { border-color: var(--fz-ink); box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--fz-ink); }

/* ---------- 19. Post your slushy moment (review form) ---------- */
body.sb-frozen #site-content .drop-review-submit { margin: 32px 0 56px; }
body.sb-frozen #site-content .drop-review-toggle { color: var(--fz-ink); border-color: var(--fz-ink); }
body.sb-frozen #site-content .drop-review-form { margin-top: 18px; padding: 28px; background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); }
body.sb-frozen #site-content .drop-review-form-head h3 { font-size: clamp(26px, 3vw, 40px); margin: 6px 0 8px; }
body.sb-frozen #site-content .drop-review-form-head p { color: var(--fz-muted); margin: 0 0 18px; max-width: 60ch; }
body.sb-frozen #site-content .drop-review-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
body.sb-frozen #site-content .drop-review-grid label { display: flex; flex-direction: column; gap: 6px; font-size: 12px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--fz-muted); }
body.sb-frozen #site-content .drop-review-full { grid-column: 1 / -1; }
body.sb-frozen #site-content .drop-review-hp { position: absolute; left: -9999px; }
body.sb-frozen #site-content .drop-review-file input { padding: 10px; border: 1.5px dashed var(--fz-line); border-radius: 12px; background: var(--fz-bg); }
body.sb-frozen #site-content .drop-review-actions { display: flex; align-items: center; gap: 16px; margin-top: 18px; flex-wrap: wrap; }
body.sb-frozen #site-content .drop-review-msg { font-weight: 700; color: var(--fz-blue); }
@media (max-width: 640px) { body.sb-frozen #site-content .drop-review-grid { grid-template-columns: 1fr; } body.sb-frozen #site-content .drop-review-form { padding: 20px; } }

/* ---------- 20. Thank-you: the share moment ---------- */
body.sb-frozen #site-content .thankyou-share { margin: 40px 0 48px; }
body.sb-frozen #site-content .thankyou-share-head { margin-bottom: 20px; }
body.sb-frozen #site-content .thankyou-share-head h2 { font-size: clamp(30px, 3.6vw, 48px); margin: 6px 0 0; }
body.sb-frozen #site-content .thankyou-share-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
body.sb-frozen #site-content .thankyou-share-card { display: flex; flex-direction: column; gap: 10px; padding: 22px; background: #fff; border: 1px solid var(--fz-line); border-radius: var(--fz-radius); box-shadow: var(--fz-shadow); color: var(--fz-ink); }
body.sb-frozen #site-content .thankyou-share-card h3 { font-family: var(--fz-display); font-size: 24px; line-height: 1; text-transform: uppercase; margin: 0; }
body.sb-frozen #site-content .thankyou-share-card .thankyou-share-sub { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--fz-line); }
body.sb-frozen #site-content .thankyou-share-card p { margin: 0; color: var(--fz-muted); font-size: 15px; line-height: 1.5; }
body.sb-frozen #site-content .thankyou-share-card p strong { color: var(--fz-ink); }
body.sb-frozen #site-content .thankyou-share-video { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: var(--fz-navy); }
body.sb-frozen #site-content .thankyou-share-video img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.sb-frozen #site-content .thankyou-share-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 52px; height: 52px; border-radius: 50%; background: var(--fz-red); color: #fff; display: grid; place-items: center; padding-left: 3px; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35); }
body.sb-frozen #site-content .thankyou-share-actions { display: flex; flex-wrap: wrap; gap: 10px; }
body.sb-frozen #site-content .thankyou-share-actions .fz-btn { padding: 12px 18px; font-size: 13px; }
body.sb-frozen #site-content .thankyou-share-actions .fz-btn--outline { color: var(--fz-ink); border-color: var(--fz-ink); }
body.sb-frozen #site-content .thankyou-share .fz-viralhelp-msg { color: var(--fz-blue); }

/* ---------- 21. Anton numerals breathe on the links page + legacy templates ---------- */
body.sb-frozen .links-yt-stats strong { letter-spacing: 0.06em; font-size: 24px; margin-right: 6px; }
body.sb-frozen .links-yt-stats { gap: 6px 22px; }
body.sb-frozen .links-yt-views { letter-spacing: 0.05em; }
body.sb-frozen #site-content :is(.price-tag, .about-stat-num, .archive-drop-hero-stats strong, .thankyou-drop-tier, .my-cup-stat-num, .hype-stat-num, .drop-reviews-avg) { letter-spacing: 0.05em; }
