/* Savoy theme alignment for the BomBomDa Star Crew shortcode. */
body.bbd-landing-page {
  --bbd-savoy-bg: var(--nm--color-body-background, #fff);
  --bbd-savoy-ink: var(--nm--color-font-strong, #282828);
  --bbd-savoy-copy: var(--nm--color-font, #777);
  --bbd-savoy-gold: var(--nm--color-font-highlight, #dc9814);
  --bbd-savoy-border: var(--nm--color-border, #e1e1e1);
  background: var(--bbd-savoy-bg) !important;
  color: var(--bbd-savoy-copy) !important;
  font: 14px/2 Arial, Helvetica, sans-serif !important;
}
body.bbd-landing-page .bbd-scroll-home { background: var(--bbd-savoy-bg); color: var(--bbd-savoy-copy); font-family: Arial, Helvetica, sans-serif; }

/* Keep the hero cinematic, but use Savoy's simple sans-serif typography. */
body.bbd-landing-page .bbd-scroll-home .intro h1 { color: #fff; font: 400 clamp(44px, 7vw, 88px)/1.08 Arial, Helvetica, sans-serif !important; letter-spacing: -.045em !important; }
body.bbd-landing-page .bbd-scroll-home .intro p { color: rgba(255,255,255,.9) !important; font: 16px/1.8 Arial, Helvetica, sans-serif !important; }
body.bbd-landing-page .bbd-scroll-home .preview-label { border-color: rgba(255,255,255,.5); color: #fff; letter-spacing: .1em; }
body.bbd-landing-page .bbd-scroll-home .intro-actions .button { min-height: 46px; padding: 14px 18px; border-radius: var(--nm--border-radius-button, 0); background: #282828; color: #fff; font: 400 14px/1.2 Arial, Helvetica, sans-serif; transition: opacity .2s ease; }
body.bbd-landing-page .bbd-scroll-home .intro-actions .button:hover { opacity: .82; }
body.bbd-landing-page .bbd-scroll-home .intro-actions .button.secondary { border: 1px solid rgba(255,255,255,.72); background: rgba(255,255,255,.92); color: #282828; }

/* Savoy's content pages use a white canvas, charcoal headings and quiet gray copy. */
body.bbd-landing-page .bbd-scroll-home #sizes,
body.bbd-landing-page .bbd-scroll-home .footer { background: var(--bbd-savoy-bg); color: var(--bbd-savoy-copy); }
body.bbd-landing-page .bbd-scroll-home .section-kicker { color: var(--bbd-savoy-gold); letter-spacing: .12em; }
body.bbd-landing-page .bbd-scroll-home .section h2 { color: var(--bbd-savoy-ink); font: 400 clamp(32px, 4vw, 48px)/1.25 Arial, Helvetica, sans-serif !important; letter-spacing: -.025em !important; }
body.bbd-landing-page .bbd-scroll-home .section-lede { max-width: 680px; color: var(--bbd-savoy-copy); font: 14px/2 Arial, Helvetica, sans-serif; }
body.bbd-landing-page .bbd-scroll-home .size-card { border: 1px solid var(--bbd-savoy-border); border-radius: var(--nm--border-radius-container, 0); background: #fff; padding: 12px; }
body.bbd-landing-page .bbd-scroll-home .size-card img,
body.bbd-landing-page .bbd-scroll-home .bbd-size-photo img { border-radius: var(--nm--border-radius-image, 0); }
body.bbd-landing-page .bbd-scroll-home .size-card h3 { color: var(--bbd-savoy-ink); font: 400 19px/1.4 Arial, Helvetica, sans-serif; }
body.bbd-landing-page .bbd-scroll-home .size-card p,
body.bbd-landing-page .bbd-scroll-home .bbd-size-description { color: var(--bbd-savoy-copy); font: 13px/1.7 Arial, Helvetica, sans-serif; }
body.bbd-landing-page .bbd-scroll-home .bbd-store-card h3 a,
body.bbd-landing-page .bbd-scroll-home .bbd-size-description { color: var(--bbd-savoy-ink); }
body.bbd-landing-page .bbd-scroll-home .size-card .measure,
body.bbd-landing-page .bbd-scroll-home .bbd-size-price { color: var(--bbd-savoy-gold); font: 600 15px/1.5 Arial, Helvetica, sans-serif; }
body.bbd-landing-page .bbd-scroll-home .bbd-store-card .bbd-product-order { min-height: 44px; margin: 12px 2px 2px; padding: 14px 18px; border-radius: 999px; background: #282828; color: #fff !important; font: 400 14px/1.2 Arial, Helvetica, sans-serif; }
body.bbd-landing-page .bbd-scroll-home .bbd-store-card .bbd-product-order:hover { opacity: .82; }
body.bbd-landing-page .bbd-scroll-home .footer { border-top: 1px solid var(--bbd-savoy-border); color: var(--bbd-savoy-copy); }
body.bbd-landing-page .bbd-scroll-home .footer strong { color: var(--bbd-savoy-ink); }
body.bbd-landing-page .bbd-scroll-home .footer a,
body.bbd-landing-page .bbd-scroll-home .bbd-shop-empty a { color: var(--bbd-savoy-gold); }

/* Savoy-style white navigation over the story world. */
body.bbd-landing-page #world .sw-topbar { min-height: 72px; padding: 12px clamp(18px, 5vw, 64px); border-bottom: 1px solid #eee; background: #fff; color: #282828; }
body.bbd-landing-page #world .sw-brand { color: #282828; }
body.bbd-landing-page #world .sw-brand__mark { background: linear-gradient(160deg, #e5b64e, #dc9814); box-shadow: none; }
body.bbd-landing-page #world .sw-nav { gap: 2px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.bbd-landing-page #world .sw-nav__item { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 8px 12px; border: 0; border-radius: var(--nm--border-radius-button, 0); background: transparent; color: #777; font: 14px/1.2 Arial, Helvetica, sans-serif; letter-spacing: normal; text-decoration: none; white-space: nowrap; box-shadow: none; }
body.bbd-landing-page #world .sw-nav__item.is-active { background: #dc9814; color: #fff; }
body.bbd-landing-page #world .sw-store-link { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 40px; padding: 0 14px; border: 1px solid #e1e1e1; border-radius: var(--nm--border-radius-button, 0); background: #fff; color: #282828; font: 14px/1.2 Arial, Helvetica, sans-serif; letter-spacing: normal; text-decoration: none; white-space: nowrap; box-shadow: none; }
body.bbd-landing-page #world .sw-store-link:hover { background: #282828; color: #fff; }
body.bbd-landing-page #world .sw-store-link--cart::before { content: ""; display: inline-block; flex: 0 0 16px; width: 16px; height: 16px; margin: 0; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23282828' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.2 11.2a2 2 0 0 0 2 1.6h8.3a2 2 0 0 0 1.9-1.4L21 9H6'/%3E%3Ccircle cx='10' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3C/svg%3E"); }
body.bbd-landing-page #world .sw-store-link--cart:hover::before { filter: invert(1); }
body.bbd-landing-page #world .sw-topcta { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 18px; border: 1px solid #282828; border-radius: var(--nm--border-radius-button, 0); background: #282828; color: #fff !important; font: 14px/1.2 Arial, Helvetica, sans-serif; letter-spacing: normal; text-align: center; text-decoration: none; white-space: nowrap; box-shadow: none; }
body.bbd-landing-page #world .sw-route__label { color: #282828; }
body.bbd-landing-page #world .sw-scrollbar span { background: #dc9814; }
body.bbd-landing-page #world .sw-btn { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border: 1px solid currentColor; border-radius: var(--nm--border-radius-button, 0); font: 14px/1.2 Arial, Helvetica, sans-serif; letter-spacing: normal; text-align: center; text-decoration: none; white-space: normal; box-shadow: none; }
body.bbd-landing-page #world .sw-btn--primary { border-color: #282828; background: #282828; color: #fff; }
body.bbd-landing-page #world .sw-btn--ghost { border-color: #e1e1e1; background: #fff; color: #282828; }

/* Match Savoy's light page-load overlay and gold highlight. */
/* Story controls are kept outside the engine's CSS layer so theme element
   defaults cannot replace badge padding, dot dimensions, or label colors. */
body.bbd-landing-page #world .sw-copy__tags { display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:24px 0 0; padding:0; }
body.bbd-landing-page #world .sw-copy__tags li { display:inline-flex; align-items:center; justify-content:center; width:auto; min-height:36px; margin:0; padding:8px 14px; border:1px solid #ead7aa; border-radius:999px; background:#fff4dd; color:#705016; font:600 13px/1.4 Arial,Helvetica,sans-serif; letter-spacing:normal; text-indent:0; box-shadow:none; }
body.bbd-landing-page #world .sw-copy__tags li::before,
body.bbd-landing-page #world .sw-copy__tags li::after { content:none; display:none; }
body.bbd-landing-page #world .sw-route__dot { appearance:none; -webkit-appearance:none; position:relative; display:grid; place-items:center; flex:0 0 28px; width:28px; height:28px; min-width:28px; min-height:28px; margin:0; padding:0; border:0; border-radius:50%; background:transparent; color:#282828; line-height:1; cursor:pointer; box-shadow:none; overflow:visible; }
body.bbd-landing-page #world .sw-route__dot::before,
body.bbd-landing-page #world .sw-route__dot::after,
body.bbd-landing-page #world .sw-nav__item::before,
body.bbd-landing-page #world .sw-nav__item::after { content:none; display:none; }
body.bbd-landing-page #world .sw-route__dot i { display:block; width:9px; height:9px; margin:0; padding:0; border:0; border-radius:50%; background:var(--sw-accent,#dc9814); opacity:.5; font-style:normal; box-shadow:none; }
body.bbd-landing-page #world .sw-route__dot.is-active i { opacity:1; transform:scale(1.4); box-shadow:0 0 0 5px #ffd16a38; }
body.bbd-landing-page #world .sw-route__label { display:block; width:max-content; max-width:240px; margin:0; padding:7px 12px; border:1px solid #e1e1e1; border-radius:999px; background:#fff; color:#282828; font:600 12px/1.3 Arial,Helvetica,sans-serif; letter-spacing:normal; text-shadow:none; }
body.bbd-landing-page #world .sw-nav__item,
body.bbd-landing-page #world .sw-store-link,
body.bbd-landing-page #world .sw-topcta,
body.bbd-landing-page #world .sw-btn { border-radius:999px; text-indent:0; opacity:1; overflow:visible; }
body.bbd-landing-page #world .sw-nav__item:hover { color:#282828; background:#f2f2f2; }
body.bbd-landing-page #world .sw-nav__item.is-active { color:#fff; background:#dc9814; }
body.bbd-landing-page #world .sw-nav__item:focus-visible,
body.bbd-landing-page #world .sw-route__dot:focus-visible,
body.bbd-landing-page #world .sw-store-link:focus-visible,
body.bbd-landing-page #world .sw-topcta:focus-visible,
body.bbd-landing-page #world .sw-btn:focus-visible { outline:2px solid #dc9814; outline-offset:3px; }
@media(max-width:860px) {
  body.bbd-landing-page #world .sw-route__label { display:none; }
  body.bbd-landing-page #world .sw-copy__tags li { min-height:32px; padding:6px 11px; font-size:12px; }
}

body.bbd-landing-page .bbd-preloader { background: #fff; color: #282828; }
body.bbd-landing-page .bbd-preloader__mark { background: #dc9814; color: #fff; box-shadow: none; }
body.bbd-landing-page .bbd-preloader__track { background: #e1e1e1; }
body.bbd-landing-page .bbd-preloader__track span { background: #dc9814; }
body.bbd-landing-page .bbd-preloader small { color: #777; }

/* Brand refresh and final scene rhythm. */
body.bbd-landing-page .bbd-scroll-home .intro h1,
body.bbd-landing-page #world .sw-copy__title { font-family:Georgia,"Times New Roman",serif !important; font-weight:700 !important; }
body.bbd-landing-page #world .sw-copy__cta { display:flex; flex-wrap:wrap; gap:12px; margin-top:40px; padding-top:0; }
body.bbd-landing-page #world .sw-brand__logo { display:block; width:180px; max-width:none; height:auto; margin:0; border:0; border-radius:0; object-fit:contain; }
body.bbd-landing-page #world .sw-brand { flex-shrink:0; }
@media(min-width:861px) and (max-width:1450px) {
  body.bbd-landing-page #world .sw-nav { display:none; }
}
@media(max-width:860px) {
  body.bbd-landing-page #world .sw-topbar { gap:8px; flex-wrap:wrap; }
  body.bbd-landing-page #world .sw-brand__logo { width:110px; }
  body.bbd-landing-page #world .sw-store-links { gap:5px; }
  body.bbd-landing-page #world .sw-topcta { display:none; }
  body.bbd-landing-page #world .sw-copy__cta { margin-top:30px; }
}

@media (max-width: 860px) {
  body.bbd-landing-page #world .sw-topbar { min-height: 58px; padding: 9px 14px; }
  body.bbd-landing-page #world .sw-brand__name { font-size: 15px; }
  body.bbd-landing-page #world .sw-nav__item { min-height: 36px; padding: 7px 9px; font-size: 12px; }
  body.bbd-landing-page #world .sw-store-link { min-height: 36px; padding: 0 10px; font-size: 12px; }
  body.bbd-landing-page #world .sw-topcta { min-height: 36px; padding: 0 12px; font-size: 12px; }
  body.bbd-landing-page .bbd-scroll-home .section h2 { font-size: clamp(30px, 7vw, 40px) !important; }
}
