/* Dancing Chili V115 structured stylesheet */
@import url("https://fonts.googleapis.com/css2?family=Dancing+Script:wght@600;700&display=swap");
    :root {
      --plum: #21003f;
      --plum-2: #3c0a65;
      --magenta: #e4147f;
      --magenta-soft: #ff5aa6;
      --rose: #d74b59;
      --cream: #fff7f1;
      --ivory: #fffdf9;
      --ink: #221827;
      --muted: #7f7185;
      --gold: #e4c173;
      --line: rgba(255,255,255,.18);
      --shadow: 0 28px 80px rgba(26,0,43,.28);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--ink);
      background: var(--ivory);
      line-height: 1.6;
    }
    img { max-width: 100%; display: block; }
    a { color: inherit; text-decoration: none; }

    .nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 20;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 18px clamp(18px, 4vw, 56px);
      background: rgba(255,253,249,.82);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid rgba(33,0,63,.08);
    }
    .brand {
      display: flex;
      align-items: center;
      gap: 12px;
      min-width: 0;
    }
    .brand img {
      width: 52px;
      height: 52px;
      object-fit: contain;
    }
    .brand-text strong {
      display: block;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 1rem;
      letter-spacing: .02em;
    }
    .brand-text span {
      display: block;
      font-size: .72rem;
      color: var(--muted);
      letter-spacing: .1em;
      text-transform: uppercase;
      margin-top: -2px;
    }
    .links {
      display: flex;
      gap: clamp(14px, 3vw, 34px);
      align-items: center;
      font-size: .9rem;
      letter-spacing: .02em;
      color: #3f3347;
    }
    .links a { opacity: .85; transition: .2s ease; }
    .links a:hover { color: var(--magenta); opacity: 1; }
    .nav-cta {
      padding: 10px 18px;
      border-radius: 999px;
      background: var(--magenta);
      color: white !important;
      box-shadow: 0 10px 30px rgba(228,20,127,.25);
    }

    .hero {
      min-height: 100vh;
      padding: 126px clamp(20px, 5vw, 74px) 72px;
      background:
        radial-gradient(circle at 78% 26%, rgba(228,20,127,.30), transparent 30%),
        radial-gradient(circle at 12% 86%, rgba(255,90,166,.18), transparent 30%),
        linear-gradient(135deg, #17002b 0%, var(--plum) 42%, #420b68 100%);
      color: white;
      position: relative;
      overflow: hidden;
    }
    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .10;
      background-image:
        linear-gradient(120deg, transparent 0%, rgba(255,255,255,.08) 42%, transparent 44%),
        radial-gradient(circle at 20% 20%, rgba(255,255,255,.32) 0 1px, transparent 1px);
      background-size: 100% 100%, 46px 46px;
      pointer-events: none;
    }
    .hero-inner {
      position: relative;
      z-index: 1;
      max-width: 1180px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: minmax(0, 1.02fr) minmax(320px, 500px);
      align-items: center;
      gap: clamp(38px, 7vw, 86px);
    }
    .hero-copy-block {
      max-width: 690px;
    }
    .hero-brand-lockup {
      display: flex;
      align-items: center;
      gap: 18px;
      margin-bottom: 18px;
    }
    .hero-logo {
      width: clamp(175px, 22vw, 280px);
      height: auto;
      display: block;
      filter: drop-shadow(0 12px 28px rgba(228,20,127,.16));
      flex: 0 0 auto;
    }

    .eyebrow {
      display: inline-flex;
      gap: 9px;
      align-items: center;
      padding: 8px 14px;
      border: 1px solid var(--line);
      border-radius: 999px;
      color: rgba(255,255,255,.84);
      font-size: .9rem;
      letter-spacing: .08em;
      text-transform: none;
      margin-bottom: 22px;
      font-family: "BiauKai", "Kaiti TC", "Songti TC", "Noto Serif TC", serif;
      background: rgba(255,255,255,.035);
      backdrop-filter: blur(8px);
    }
    .dot {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--magenta-soft);
      box-shadow: 0 0 18px var(--magenta-soft);
    }
    h1 {
      font-family: "Dancing Script", "Snell Roundhand", "Apple Chancery", cursive;
      font-weight: 700;
      margin: 0;
      font-size: clamp(4.05rem, 7.8vw, 7rem);
      line-height: .92;
      letter-spacing: -.025em;
      max-width: 760px;
      color: #fff;
      text-shadow:
        0 8px 28px rgba(19,0,32,.14),
        0 0 1px rgba(255,255,255,.24);
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    .hero-subhead {
      margin: 24px 0 0;
      font-size: clamp(1.08rem, 2.2vw, 1.45rem);
      line-height: 1.42;
      color: rgba(255,255,255,.90);
      max-width: 640px;
    }
    .hero-copy {
      margin: 18px 0 0;
      max-width: 620px;
      color: rgba(255,255,255,.72);
      font-size: 1rem;
    }
    .hero-notes {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 18px;
    }
    .hero-notes span {
      padding: 8px 12px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.16);
      background: rgba(255,255,255,.06);
      color: rgba(255,255,255,.78);
      font-size: .8rem;
      letter-spacing: .02em;
    }
    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 16px 22px;
      margin-top: 34px;
    }
    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 50px;
      padding: 0 24px;
      border-radius: 999px;
      border: 1px solid transparent;
      font-weight: 700;
      letter-spacing: .01em;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
      cursor: pointer;
    }
    .button:hover { transform: translateY(-2px); }
    .button-primary {
      background: linear-gradient(135deg, var(--magenta) 0%, #ff477f 100%);
      color: #fff;
      box-shadow: 0 18px 46px rgba(228,20,127,.38);
    }
    .button-secondary {
      border-color: rgba(255,255,255,.28);
      color: white;
      background: rgba(255,255,255,.06);
    }
    .cta-note {
      color: rgba(255,255,255,.62);
      font-size: .92rem;
    }

    .product-stage {
      position: relative;
    }
    .product-card {
      position: relative;
      padding: 16px;
      border: 1px solid rgba(255,255,255,.16);
      border-radius: 36px;
      background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.07));
      box-shadow: var(--shadow);
      backdrop-filter: blur(10px);
    }
    .product-image-wrap {
      overflow: hidden;
      border-radius: 26px;
      background: linear-gradient(145deg, #82282b, #2b043f);
      min-height: 460px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .product-image-wrap img {
      width: 100%;
      height: 100%;
      min-height: 460px;
      object-fit: cover;
      object-position: center;
      filter: saturate(1.03) contrast(1.02);
    }
    .product-caption {
      position: absolute;
      left: 28px;
      right: 28px;
      bottom: 28px;
      padding: 16px;
      border-radius: 24px;
      background: rgba(24,0,42,.78);
      border: 1px solid rgba(255,255,255,.14);
      backdrop-filter: blur(14px);
    }
    .product-caption h2 {
      margin: 0 0 6px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 1.8rem;
      line-height: 1.1;
    }
    .product-caption p {
      margin: 0;
      color: rgba(255,255,255,.74);
      font-size: .9rem;
    }
    .tags {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 14px;
    }
    .tag {
      display: inline-flex;
      padding: 6px 9px;
      border: 1px solid rgba(255,255,255,.16);
      border-radius: 999px;
      color: rgba(255,255,255,.76);
      font-size: .72rem;
    }

    section {
      padding: clamp(70px, 9vw, 118px) clamp(20px, 5vw, 74px);
    }
    .container {
      max-width: 1180px;
      margin: 0 auto;
    }
    .section-kicker {
      color: var(--magenta);
      font-size: .82rem;
      letter-spacing: .18em;
      text-transform: uppercase;
      font-weight: 800;
      margin-bottom: 14px;
    }
    .section-title {
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(2.2rem, 5vw, 4.7rem);
      line-height: .98;
      letter-spacing: -.045em;
      margin: 0;
    }
    .section-lead {
      max-width: 760px;
      color: var(--muted);
      font-size: 1.05rem;
      margin: 22px 0 0;
    }

    .flavor {
      background: linear-gradient(180deg, var(--ivory) 0%, var(--cream) 100%);
    }
    .product-grid {
      display: grid;
      grid-template-columns: minmax(0,1.18fr) minmax(280px,.82fr);
      gap: 24px;
      margin-top: 42px;
      align-items: start;
    }
    .product-side {
      display: grid;
      gap: 24px;
      align-content: start;
    }
    .flavor-card {
      overflow: hidden;
      border-radius: 34px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 24px 66px rgba(33,0,63,.10);
    }
    .flavor-card.featured { min-height: 660px; }
    .flavor-img {
      width: 100%;
      height: 360px;
      object-fit: cover;
      object-position: center;
      background: #eee;
    }
    .featured .flavor-img { height: auto; object-fit: contain; object-position: center; background: #fff; display: block; }
    .product-side .flavor-img { height: auto; object-fit: contain; object-position: center; background: #fff; display: block; }
    .card-body { padding: 30px; }
    .card-body h3 {
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(1.9rem, 3vw, 3rem);
      line-height: 1;
      letter-spacing: -.035em;
    }
    .descriptor {
      color: var(--magenta);
      font-weight: 800;
      letter-spacing: .02em;
      margin-top: 8px;
    }
    .card-body p {
      color: var(--muted);
      margin: 16px 0 0;
      max-width: 95%;
    }
    .chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 9px;
      margin-top: 22px;
    }
    .chip {
      border-radius: 999px;
      background: #fff0f7;
      color: #9e145b;
      padding: 7px 11px;
      font-size: .78rem;
      font-weight: 700;
    }


    .card-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-top: 22px;
      min-height: 42px;
      padding: 0 16px;
      border-radius: 999px;
      border: 1px solid rgba(228,20,127,.18);
      background: #fff8fb;
      color: #a3135e;
      font-weight: 800;
      font-size: .88rem;
      transition: transform .22s ease, border-color .22s ease, background .22s ease;
    }
    .card-link:hover {
      transform: translateY(-2px);
      border-color: rgba(228,20,127,.38);
      background: #fff0f7;
    }

    .guide-section {
      background:
        radial-gradient(circle at 12% 18%, rgba(228,20,127,.08), transparent 28%),
        linear-gradient(180deg, #fff7f1 0%, #fffdf9 100%);
    }
    .guide-section.alt-guide {
      background:
        radial-gradient(circle at 85% 14%, rgba(61,19,95,.06), transparent 30%),
        linear-gradient(180deg, #fffdf9 0%, #fff7f1 100%);
    }
    .guide-layout {
      display: grid;
      grid-template-columns: .82fr 1.18fr;
      gap: clamp(28px, 5vw, 58px);
      align-items: center;
    }
    .guide-copy {
      position: sticky;
      top: 110px;
      align-self: start;
    }
    .guide-copy .section-title {
      font-size: clamp(2.1rem, 4.6vw, 4.3rem);
    }
    .guide-list {
      display: grid;
      gap: 14px;
      margin-top: 26px;
    }
    .guide-item {
      padding: 16px 18px;
      border-radius: 20px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 12px 34px rgba(33,0,63,.06);
    }
    .guide-item strong {
      display: block;
      color: #3c0a65;
      font-size: .92rem;
    }
    .guide-item span {
      display: block;
      color: var(--muted);
      margin-top: 3px;
      font-size: .9rem;
    }
    .guide-image-card {
      border-radius: 34px;
      overflow: hidden;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 28px 80px rgba(33,0,63,.12);
    }
    .guide-image-card img {
      width: 100%;
      height: auto;
      object-fit: contain;
      background: #fff7f1;
    }
    .guide-note {
      margin-top: 16px;
      color: #9a8d9f;
      font-size: .84rem;
    }


    .detail-modal {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 100;
      overflow-y: auto;
      padding: clamp(14px, 3vw, 34px);
      background: rgba(19, 0, 32, .78);
      backdrop-filter: blur(18px);
    }
    .detail-modal:target { display: block; }
    .detail-shell {
      max-width: 1240px;
      margin: 0 auto;
      border-radius: 34px;
      overflow: hidden;
      background:
        radial-gradient(circle at 86% 18%, rgba(228,20,127,.08), transparent 28%),
        linear-gradient(180deg, #fffdf9 0%, #fff7f1 100%);
      box-shadow: 0 34px 100px rgba(0,0,0,.42);
      border: 1px solid rgba(255,255,255,.26);
    }
    .detail-modal.alt-guide .detail-shell {
      background:
        radial-gradient(circle at 12% 18%, rgba(228,20,127,.07), transparent 28%),
        linear-gradient(180deg, #fff7f1 0%, #fffdf9 100%);
    }
    .modal-top {
      position: sticky;
      top: 0;
      z-index: 2;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 18px;
      padding: 16px clamp(18px, 4vw, 34px);
      background: rgba(255,253,249,.92);
      backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(33,0,63,.08);
    }
    .modal-top span {
      color: var(--muted);
      font-size: .82rem;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-weight: 800;
    }
    .close-detail {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      padding: 0 16px;
      border-radius: 999px;
      background: #2d054b;
      color: #fff;
      font-size: .88rem;
      font-weight: 800;
    }
    .modal-body { padding: clamp(28px, 5vw, 62px); }
    .detail-modal .container { max-width: 1120px; }
    .detail-modal .guide-copy { position: static; }


    .story {
      background: #fff;
      position: relative;
      overflow: hidden;
    }
    .story::after {
      content: "李雪辣嬌";
      position: absolute;
      right: -30px;
      bottom: 10px;
      font-family: Georgia, serif;
      font-size: clamp(4rem, 12vw, 12rem);
      color: rgba(228,20,127,.045);
      white-space: nowrap;
      pointer-events: none;
    }
    .story {
      position: relative;
      overflow: hidden;
      background: radial-gradient(circle at 78% 18%, rgba(228,20,127,.10), transparent 22%), linear-gradient(135deg, #120018 0%, #22002f 52%, #32104b 100%);
      color: white;
    }
    .story::before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, rgba(11,0,18,.92) 0%, rgba(18,0,27,.82) 38%, rgba(18,0,27,.40) 100%);
      z-index: 0;
    }
    .story-mark {
      position: absolute;
      right: clamp(20px, 6vw, 80px);
      top: 50%;
      transform: translateY(-50%);
      width: min(440px, 42vw);
      opacity: .10;
      filter: drop-shadow(0 0 35px rgba(228,20,127,.18));
      z-index: 1;
      pointer-events: none;
    }
    .story-mark img { width: 100%; display: block; }
    .story-layout {
      display: grid;
      grid-template-columns: 1fr;
      gap: 24px;
      align-items: center;
      position: relative;
      z-index: 2;
      min-height: 420px;
    }
    .logo-panel { display: none; }
    .story .section-kicker { color: #ff8bc1; }
    .story .section-title { color: white; max-width: 760px; }
    .story .section-lead { color: rgba(255,255,255,.74); }
    .story-text { max-width: 720px; }
    .story-text p {
      color: rgba(255,255,255,.78);
      font-size: 1.05rem;
      margin: 18px 0 0;
      max-width: 640px;
    }
    .story-highlight {
      margin-top: 24px;
      display: inline-block;
      padding: 14px 18px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.07);
      border-radius: 999px;
      color: rgba(255,255,255,.92);
      font-weight: 700;
      backdrop-filter: blur(10px);
    }

    .media {
      background:
        radial-gradient(circle at 20% 12%, rgba(228,20,127,.18), transparent 28%),
        linear-gradient(135deg, #130021 0%, #21003f 48%, #3d0a5c 100%);
      color: white;
      position: relative;
      overflow: hidden;
    }
    .media::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .08;
      background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.6) 1px, transparent 0);
      background-size: 38px 38px;
      pointer-events: none;
    }
    .media .container { position: relative; z-index: 1; }
    .media .section-lead { color: rgba(255,255,255,.66); }
    .media-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 28px;
      align-items: end;
    }
    .media-playlist-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 0 18px;
      border-radius: 999px;
      background: rgba(255,255,255,.10);
      border: 1px solid rgba(255,255,255,.18);
      color: white;
      font-weight: 800;
      white-space: nowrap;
      backdrop-filter: blur(12px);
    }
    .media-playlist-button:hover { background: rgba(255,255,255,.16); }
    .media-showcase {
      display: grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 24px;
      margin-top: 42px;
      align-items: stretch;
    }
    .media-feature-card,
    .playlist-card,
    .press-card {
      border: 1px solid rgba(255,255,255,.13);
      background: rgba(255,255,255,.075);
      box-shadow: 0 28px 80px rgba(0,0,0,.24);
      backdrop-filter: blur(12px);
    }
    .media-feature-card {
      overflow: hidden;
      border-radius: 34px;
      min-height: 520px;
      display: grid;
      grid-template-rows: minmax(260px, 1fr) auto;
    }
    .media-feature-card img {
      width: 100%;
      height: 100%;
      min-height: 320px;
      object-fit: cover;
      object-position: center;
      filter: saturate(1.06) contrast(1.02);
    }
    .media-feature-copy {
      padding: 26px;
      background: linear-gradient(180deg, rgba(19,0,33,.70), rgba(19,0,33,.96));
    }
    .media .label,
    .press-card span {
      color: var(--gold);
      font-size: .78rem;
      letter-spacing: .13em;
      text-transform: uppercase;
      font-weight: 800;
    }
    .media-feature-copy strong,
    .playlist-card strong,
    .press-card strong {
      display: block;
      font-family: Georgia, serif;
      color: white;
      line-height: 1.08;
    }
    .media-feature-copy strong {
      font-size: clamp(1.8rem, 3vw, 2.8rem);
      margin-top: 14px;
    }
    .media-feature-copy p,
    .playlist-card p {
      color: rgba(255,255,255,.64);
      margin: 14px 0 0;
    }
    .playlist-card {
      border-radius: 34px;
      padding: 26px;
      display: flex;
      flex-direction: column;
    }
    .playlist-card strong {
      font-size: clamp(1.75rem, 3vw, 2.5rem);
      margin-top: 14px;
    }
    .youtube-frame {
      overflow: hidden;
      border-radius: 24px;
      background: rgba(0,0,0,.28);
      border: 1px solid rgba(255,255,255,.12);
      margin-top: 24px;
      aspect-ratio: 16 / 9;
      min-height: 260px;
    }
    .youtube-frame iframe {
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
    }
    .press-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
      margin-top: 22px;
    }
    .press-card {
      overflow: hidden;
      border-radius: 28px;
    }
    .press-card img {
      width: 100%;
      height: 210px;
      object-fit: cover;
      object-position: center;
      filter: saturate(1.04) contrast(1.02);
    }
    .press-card div { padding: 18px; }
    .press-card strong {
      font-size: 1.25rem;
      margin-top: 8px;
    }

    .waitlist {
      background:
        radial-gradient(circle at 82% 18%, rgba(228,20,127,.20), transparent 28%),
        radial-gradient(circle at 16% 84%, rgba(61,10,92,.10), transparent 30%),
        linear-gradient(180deg, #fff7f1 0%, #fffdf9 100%);
      position: relative;
      overflow: hidden;
    }
    .waitlist::before {
      content: "李雪辣嬌";
      position: absolute;
      left: -28px;
      bottom: 18px;
      font-family: Georgia, serif;
      font-size: clamp(4rem, 13vw, 12rem);
      color: rgba(228,20,127,.045);
      white-space: nowrap;
      pointer-events: none;
    }
    .waitlist-card {
      position: relative;
      z-index: 1;
      max-width: 1100px;
      margin: 0 auto;
      padding: clamp(26px, 5vw, 56px);
      border-radius: 42px;
      background:
        linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,246,251,.92)),
        #fff;
      box-shadow: 0 30px 90px rgba(33,0,63,.13);
      border: 1px solid rgba(33,0,63,.08);
      overflow: hidden;
    }
    .waitlist-card::after {
      content: "";
      position: absolute;
      right: -80px;
      top: -90px;
      width: 260px;
      height: 260px;
      background: radial-gradient(circle, rgba(228,20,127,.16), transparent 68%);
      pointer-events: none;
    }
    .waitlist-layout {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0, .95fr) minmax(320px, .8fr);
      gap: clamp(28px, 5vw, 54px);
      align-items: center;
    }
    .waitlist-copy { text-align: left; }
    .waitlist-card .section-title { font-size: clamp(2.6rem, 6vw, 5.4rem); }
    .waitlist-copy .section-lead {
      color: #6f6176;
      max-width: 620px;
    }
    .launch-promise {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
      margin-top: 30px;
    }
    .promise-item {
      border-radius: 22px;
      padding: 18px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 14px 38px rgba(33,0,63,.06);
    }
    .promise-item span {
      display: block;
      color: var(--magenta);
      font-size: .78rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      font-weight: 900;
    }
    .promise-item strong {
      display: block;
      margin-top: 6px;
      font-family: Georgia, serif;
      line-height: 1.08;
      font-size: 1.18rem;
      color: #2b1733;
    }
    .waitlist-panel {
      border-radius: 34px;
      padding: 24px;
      background: linear-gradient(160deg, #1a002e 0%, #32004c 100%);
      color: white;
      box-shadow: 0 28px 80px rgba(33,0,63,.18);
      border: 1px solid rgba(255,255,255,.12);
    }
    .waitlist-panel h3 {
      margin: 0;
      font-family: Georgia, serif;
      font-size: 2rem;
      letter-spacing: -.03em;
      line-height: 1.05;
    }
    .waitlist-panel p {
      margin: 10px 0 0;
      color: rgba(255,255,255,.68);
      font-size: .94rem;
    }
    .interest-list {
      display: grid;
      gap: 10px;
      margin-top: 22px;
    }
    .interest-item {
      display: flex;
      justify-content: space-between;
      gap: 14px;
      align-items: center;
      min-height: 54px;
      padding: 0 15px;
      border-radius: 16px;
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      color: rgba(255,255,255,.88);
      font-weight: 700;
      cursor: pointer;
      transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
      text-align: left;
      font-family: inherit;
      font-size: .94rem;
    }
    .interest-item strong { font-weight: 750; }
    .interest-item:hover {
      transform: translateY(-1px);
      border-color: rgba(255,255,255,.30);
      background: rgba(255,255,255,.12);
    }
    .interest-item.is-selected {
      background: linear-gradient(135deg, rgba(228,20,127,.34), rgba(255,90,166,.16));
      border-color: rgba(255,255,255,.38);
      box-shadow: 0 12px 28px rgba(0,0,0,.16);
    }
    .interest-item span {
      color: rgba(255,255,255,.58);
      font-size: .82rem;
      font-weight: 600;
    }
    .form-preview {
      margin: 18px 0 0;
      display: grid;
      gap: 10px;
      text-align: left;
    }
    .real-input {
      width: 100%;
      min-height: 52px;
      border-radius: 16px;
      border: 1px solid rgba(255,255,255,.14);
      display: block;
      padding: 0 16px;
      color: #fff;
      background: rgba(255,255,255,.07);
      font-size: .94rem;
      outline: none;
    }
    .real-input::placeholder { color: rgba(255,255,255,.48); }
    .real-input:focus {
      border-color: rgba(255,255,255,.34);
      box-shadow: 0 0 0 3px rgba(255,255,255,.08);
    }
    .selected-summary {
      min-height: 46px;
      border-radius: 14px;
      border: 1px dashed rgba(255,255,255,.18);
      display: flex;
      align-items: center;
      padding: 10px 14px;
      color: rgba(255,255,255,.72);
      background: rgba(255,255,255,.04);
      font-size: .88rem;
      line-height: 1.4;
    }
    .open-form {
      width: 100%;
      margin-top: 18px;
    }
    .fine-print {
      margin-top: 12px;
      color: rgba(255,255,255,.45);
      font-size: .8rem;
      text-align: center;
    }

    footer {
      background: #130020;
      color: rgba(255,255,255,.72);
      padding: 44px clamp(20px, 5vw, 74px);
    }
    .footer-inner {
      max-width: 1180px;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 24px;
      flex-wrap: wrap;
    }
    .footer-logo {
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .footer-logo img { width: 64px; height: 64px; object-fit: contain; background: white; border-radius: 18px; }
    .footer-logo strong { display: block; color: white; font-family: Georgia, serif; font-size: 1.2rem; }
    .footer-logo span { color: rgba(255,255,255,.50); font-size: .85rem; }
    .footer-links {
      display: flex;
      gap: 18px;
      align-items: center;
      flex-wrap: wrap;
      font-size: .92rem;
    }
    .footer-links a { color: rgba(255,255,255,.72); }
    .footer-links a:hover { color: white; }

    @media (max-width: 940px) {
      .links a:not(.nav-cta) { display: none; }
      .hero-inner, .story-layout, .guide-layout { grid-template-columns: 1fr; }
      .product-side { grid-template-columns: 1fr; }
      .product-stage { max-width: 560px; margin: 0 auto; }
      .guide-copy { position: static; }
      .product-grid { grid-template-columns: 1fr; }
      .side-stack { grid-template-columns: 1fr; }
      .media-grid { grid-template-columns: 1fr; }
      .media-head, .media-showcase, .press-grid, .waitlist-layout { grid-template-columns: 1fr; }
      .media-playlist-button { width: 100%; }
      .hero { padding-top: 112px; }
      .brand-text span { display: none; }
    }
    @media (max-width: 560px) {
      .nav { padding: 12px 16px; }
      .brand img { width: 44px; height: 44px; }
      .brand-text strong { font-size: .88rem; }
      .nav-cta { padding: 9px 12px; font-size: .82rem; }
      .hero { padding-left: 16px; padding-right: 16px; }
      .hero-brand-lockup { gap: 14px; margin-bottom: 14px; align-items: center; }
      .hero-logo { width: 150px; }
      h1 { font-size: clamp(3.85rem, 16.5vw, 5.35rem); line-height: .92; }
      .hero-subhead { font-size: 1.02rem; margin-top: 16px; }
      .eyebrow { font-size: .84rem; letter-spacing: .04em; }
      .hero-actions { align-items: stretch; }
      .button { width: 100%; }
      .cta-note { width: 100%; text-align: center; }
      .product-image-wrap, .product-image-wrap img { min-height: 320px; }
      .hero-notes { gap: 8px; }
      .hero-notes span { font-size: .76rem; padding: 7px 10px; }
      .flavor-card.featured { min-height: auto; }
      .featured .flavor-img { height: auto; }
      .flavor-img { height: 250px; }
      .product-side .flavor-img { height: auto; }
      .product-caption h2 { font-size: 1.35rem; }
      .product-caption p { font-size: .8rem; }
      .product-caption .tags { margin-top: 10px; }
      .product-caption .tag { font-size: .68rem; padding: 6px 8px; }
      .detail-modal { padding: 10px; }
      .detail-shell { border-radius: 24px; }
      .modal-top { padding: 12px 14px; }
      .modal-top span { font-size: .72rem; }
      .close-detail { min-height: 36px; padding: 0 12px; font-size: .8rem; }
      .modal-body { padding: 20px 14px 26px; }
      .product-caption { position: relative; left: auto; right: auto; bottom: auto; margin: 14px 10px 0; }
      .product-card { padding: 12px; }
      .product-image-wrap { min-height: 280px; }
      .product-image-wrap img { min-height: 280px; }
      .story-mark { width: 78vw; right: -10vw; top: 32%; opacity: .12; }
      .story-layout { min-height: auto; }
      .story-highlight { border-radius: 18px; }
      section { padding-left: 16px; padding-right: 16px; }
      .card-body { padding: 22px; }
      .launch-promise { grid-template-columns: 1fr; }
      .waitlist-panel { padding: 20px; border-radius: 28px; }
      .waitlist-card { border-radius: 30px; }
      .media-feature-card { min-height: auto; }
      .media-feature-card img { min-height: 250px; }
      .youtube-frame { min-height: 210px; }
      .press-card img { height: 190px; }
      .footer-inner { flex-direction: column; align-items: flex-start; }
    }
  
    /* v18 responsive polish: desktop / tablet / mobile */
    @media (max-width: 1180px) and (min-width: 941px) {
      .nav { padding: 16px 34px; }
      .hero {
        padding: 118px 34px 64px;
      }
      .hero-inner {
        grid-template-columns: minmax(0, .92fr) minmax(330px, 430px);
        gap: 42px;
      }
      .hero-logo { width: 220px; }
      h1 { font-size: clamp(4rem, 7vw, 5.4rem); }
      .hero-subhead { max-width: 540px; }
      .product-image-wrap,
      .product-image-wrap img { min-height: 410px; }
      .product-caption { left: 24px; right: 24px; bottom: 24px; }
      .product-caption h2 { font-size: 1.55rem; }
      .flavor-card.featured { min-height: auto; }
      .featured .flavor-img { height: auto; }
      .product-side .flavor-img { height: auto; }
      .media-showcase { grid-template-columns: 1fr; }
      .press-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
      .waitlist-layout { grid-template-columns: 1fr; }
      .waitlist-panel { max-width: 680px; }
    }

    @media (max-width: 940px) {
      .hero {
        min-height: auto;
        padding-top: 106px;
        padding-bottom: 62px;
      }
      .hero-inner {
        gap: 34px;
      }
      .hero-copy-block {
        max-width: 700px;
        margin: 0 auto;
        text-align: center;
      }
      .hero-brand-lockup,
      .hero-notes,
      .hero-actions {
        justify-content: center;
      }
      .eyebrow {
        margin-left: auto;
        margin-right: auto;
      }
      .product-stage {
        max-width: 640px;
        width: 100%;
      }
      .product-image-wrap,
      .product-image-wrap img {
        min-height: 390px;
      }
      .product-caption {
        left: 22px;
        right: 22px;
        bottom: 22px;
      }
      .flavor .section-kicker,
      .flavor .section-title,
      .flavor .section-lead {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
      }
      .guide-layout {
        gap: 24px;
      }
      .detail-modal .guide-image-card {
        order: -1;
      }
      .media .section-title,
      .media .section-lead,
      .media .section-kicker {
        text-align: left;
      }
      .media-showcase,
      .press-grid {
        gap: 18px;
      }
      .waitlist-copy {
        text-align: center;
      }
      .waitlist-copy .section-lead {
        margin-left: auto;
        margin-right: auto;
      }
      .waitlist-panel {
        margin: 0 auto;
        width: 100%;
        max-width: 660px;
      }
    }

    @media (max-width: 720px) {
      .nav {
        padding: 10px 14px;
      }
      .brand img {
        width: 42px;
        height: 42px;
      }
      .brand-text strong {
        font-size: 1rem;
      }
      .brand-text span {
        display: none;
      }
      .links {
        gap: 8px;
      }
      .nav-cta {
        min-height: 38px;
        padding: 0 12px;
        font-size: .8rem;
      }
      .hero {
        padding-top: 88px;
      }
      .hero-logo {
        width: 138px;
      }
      .hero-brand-lockup {
        margin-bottom: 18px;
      }
      h1 {
        font-size: clamp(3.15rem, 15vw, 4.55rem);
        line-height: .88;
      }
      .hero-subhead {
        font-size: .98rem;
        max-width: 360px;
        margin-left: auto;
        margin-right: auto;
      }
      .hero-notes span {
        font-size: .72rem;
      }
      .hero-actions {
        gap: 10px;
      }
      .product-card {
        border-radius: 28px;
      }
      .product-image-wrap,
      .product-image-wrap img {
        min-height: 285px;
      }
      .product-caption {
        margin: 12px 6px 0;
        padding: 15px;
      }
      .product-caption h2 {
        font-size: 1.35rem;
      }
      .product-caption-kicker {
        font-size: .65rem;
      }
      section {
        padding-top: 64px;
        padding-bottom: 64px;
      }
      .section-title {
        font-size: clamp(2.4rem, 11vw, 3.4rem);
      }
      .section-lead {
        font-size: .96rem;
      }
      .card-body {
        padding: 20px;
      }
      .card-body h3 {
        font-size: 2rem;
      }
      .descriptor {
        font-size: .82rem;
      }
      .guide-image-card {
        border-radius: 24px;
      }
      .detail-modal {
        padding: 8px;
      }
      .detail-shell {
        border-radius: 22px;
      }
      .modal-body {
        padding: 18px 12px 24px;
      }
      .modal-top {
        align-items: center;
      }
      .modal-top span {
        font-size: .68rem;
      }
      .close-detail {
        min-height: 36px;
        padding: 0 12px;
        font-size: .78rem;
      }
      .media-feature-card {
        border-radius: 26px;
      }
      .media-feature-card img {
        min-height: 220px;
      }
      .media-feature-copy {
        padding: 20px;
      }
      .playlist-card {
        padding: 20px;
        border-radius: 26px;
      }
      .press-card img {
        height: 170px;
      }
      .waitlist-card {
        padding: 20px;
      }
      .launch-promise {
        gap: 10px;
      }
      .promise-item {
        padding: 14px;
      }
      .waitlist-panel {
        padding: 18px;
      }
      .waitlist-panel h3 {
        font-size: 1.85rem;
      }
      .interest-item {
        min-height: 54px;
        padding: 0 13px;
      }
      .interest-item strong {
        font-size: .86rem;
      }
      .interest-item span {
        font-size: .74rem;
      }
      .footer-logo img {
        width: 54px;
        height: 54px;
      }
    }

    @media (min-width: 1181px) {
      .hero-inner {
        min-height: calc(100vh - 198px);
      }
    }

  
    .youtube-cover-link {
      display: block;
      margin-top: 24px;
      text-decoration: none;
      color: inherit;
    }
    .youtube-frame {
      position: relative;
      overflow: hidden;
      border-radius: 24px;
      background: rgba(0,0,0,.28);
      border: 1px solid rgba(255,255,255,.12);
      aspect-ratio: 16 / 9;
      min-height: 260px;
      isolation: isolate;
    }
    .youtube-frame img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      object-position: center;
      filter: saturate(1.04) contrast(1.03);
      transition: transform .35s ease;
    }
    .youtube-cover-link:hover .youtube-frame img {
      transform: scale(1.02);
    }
    .youtube-cover-overlay {
      position: absolute;
      inset: 0;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-end;
      gap: 10px;
      padding: 18px;
      background: linear-gradient(180deg, rgba(15, 0, 26, .08) 15%, rgba(15, 0, 26, .70) 100%);
    }
    .youtube-play-badge {
      width: 54px;
      height: 54px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: rgba(228,20,127,.92);
      color: #fff;
      font-size: 1.2rem;
      box-shadow: 0 12px 36px rgba(228,20,127,.28);
    }
    .youtube-open-note {
      max-width: 320px;
      padding: 12px 14px;
      border-radius: 18px;
      background: rgba(24, 0, 42, .72);
      border: 1px solid rgba(255,255,255,.14);
      backdrop-filter: blur(12px);
    }
    .youtube-open-note strong {
      display: block;
      margin: 0;
      font-size: 1rem;
      line-height: 1.2;
    }
    .youtube-open-note span {
      display: block;
      margin-top: 4px;
      color: rgba(255,255,255,.78);
      font-size: .84rem;
      line-height: 1.45;
    }
    .modal-open {
      overflow: hidden;
    }

    @media (max-width: 720px) {
      .media-feature-card img,
      .press-card img {
        object-fit: contain;
        object-position: center top;
        background: rgba(255,255,255,.96);
        padding: 10px;
      }
      .media-feature-card img {
        min-height: 210px;
      }
      .press-card img {
        height: 160px;
      }
      .youtube-frame {
        min-height: 220px;
      }
      .youtube-cover-overlay {
        padding: 14px;
        gap: 8px;
      }
      .youtube-play-badge {
        width: 46px;
        height: 46px;
        font-size: 1rem;
      }
      .youtube-open-note {
        max-width: 100%;
        padding: 10px 12px;
      }
      .youtube-open-note strong {
        font-size: .92rem;
      }
      .youtube-open-note span {
        font-size: .78rem;
      }
    }

  
    /* v20 premium media wall and product detail polish */
    .media-wall {
      display: grid;
      grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
      gap: 24px;
      margin-top: 42px;
      align-items: stretch;
    }
    .media-video-hero {
      position: relative;
      min-height: 520px;
      overflow: hidden;
      border-radius: 34px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.075);
      box-shadow: 0 28px 80px rgba(0,0,0,.24);
      display: block;
      color: white;
    }
    .media-video-hero img {
      width: 100%;
      height: 100%;
      min-height: 520px;
      object-fit: cover;
      object-position: center;
      filter: saturate(1.04) contrast(1.03);
      transition: transform .35s ease;
    }
    .media-video-hero:hover img {
      transform: scale(1.025);
    }
    .media-video-overlay {
      position: absolute;
      inset: 0;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      gap: 16px;
      padding: clamp(20px, 4vw, 34px);
      background: linear-gradient(180deg, rgba(18,0,30,.05) 20%, rgba(18,0,30,.86) 100%);
    }
    .media-video-overlay strong {
      display: block;
      font-family: Georgia, serif;
      font-size: clamp(2.2rem, 4vw, 4rem);
      line-height: .94;
      letter-spacing: -.04em;
      margin-top: 10px;
      max-width: 640px;
    }
    .media-video-overlay p {
      color: rgba(255,255,255,.72);
      max-width: 560px;
      margin: 12px 0 0;
    }
    .media-side-cards {
      display: grid;
      gap: 16px;
      align-content: stretch;
    }
    .media-mini-card {
      border-radius: 28px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.08);
      padding: 24px;
      box-shadow: 0 24px 66px rgba(0,0,0,.18);
      backdrop-filter: blur(12px);
      color: white;
      transition: transform .22s ease, background .22s ease, border-color .22s ease;
    }
    .media-mini-card:hover {
      transform: translateY(-2px);
      background: rgba(255,255,255,.12);
      border-color: rgba(255,255,255,.26);
    }
    .media-mini-card span {
      color: var(--gold);
      font-size: .78rem;
      letter-spacing: .14em;
      text-transform: uppercase;
      font-weight: 800;
    }
    .media-mini-card strong {
      display: block;
      font-family: Georgia, serif;
      font-size: clamp(1.6rem, 2.4vw, 2.35rem);
      line-height: 1;
      margin-top: 14px;
    }
    .media-mini-card p {
      margin: 12px 0 0;
      color: rgba(255,255,255,.66);
      font-size: .94rem;
    }
    .press-archive-head {
      margin-top: 34px;
    }
    .press-archive-head h3 {
      font-family: Georgia, serif;
      color: #fff;
      margin: 0;
      font-size: clamp(2rem, 4vw, 3.2rem);
      line-height: .95;
      letter-spacing: -.04em;
    }
    .press-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .press-card-wide {
      grid-column: span 2;
    }
    .press-card img {
      height: 230px;
    }
    .press-card-wide img {
      height: 230px;
    }
    .detail-modal.is-open {
      display: block;
    }
    .modal-actions {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .modal-step,
    .close-detail {
      border: 0;
      cursor: pointer;
      font-family: inherit;
    }
    .modal-step {
      min-height: 40px;
      padding: 0 14px;
      border-radius: 999px;
      background: #fff;
      color: #6d2a83;
      font-size: .84rem;
      font-weight: 800;
      border: 1px solid rgba(33,0,63,.10);
    }
    .modal-step:hover {
      background: #fff0f7;
    }
    .detail-modal .guide-image-card {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    .interest-item.is-selected::after {
      content: "✓";
      display: inline-flex;
      width: 24px;
      height: 24px;
      border-radius: 999px;
      align-items: center;
      justify-content: center;
      background: rgba(255,255,255,.92);
      color: #e4147f;
      font-weight: 900;
      margin-left: auto;
      flex: 0 0 auto;
    }
    .interest-item.is-selected span {
      color: rgba(255,255,255,.78);
    }

    @media (max-width: 940px) {
      .media-wall {
        grid-template-columns: 1fr;
      }
      .media-video-hero {
        min-height: auto;
      }
      .media-video-hero img {
        min-height: auto;
        height: auto;
        object-fit: contain;
        background: rgba(255,255,255,.96);
      }
      .media-side-cards {
        grid-template-columns: 1fr;
      }
      .press-grid {
        grid-template-columns: 1fr 1fr;
      }
      .press-card-wide {
        grid-column: span 2;
      }
      .press-card img,
      .press-card-wide img,
      .media-feature-card img {
        height: auto !important;
        min-height: 0 !important;
        object-fit: contain !important;
        object-position: center !important;
        background: rgba(255,255,255,.96);
        padding: 8px;
      }
      .media-feature-copy strong,
      .media-mini-card strong,
      .press-card strong {
        overflow-wrap: anywhere;
      }
    }
    @media (max-width: 720px) {
      .media-head {
        gap: 18px;
      }
      .media-wall {
        margin-top: 28px;
        gap: 18px;
      }
      .media-video-hero {
        border-radius: 26px;
      }
      .media-video-overlay {
        position: relative;
        background: rgba(19,0,33,.92);
        padding: 18px;
      }
      .media-video-overlay strong {
        font-size: 2.05rem;
      }
      .media-video-overlay p {
        font-size: .92rem;
      }
      .media-mini-card {
        padding: 18px;
        border-radius: 22px;
      }
      .press-grid {
        grid-template-columns: 1fr;
      }
      .press-card-wide {
        grid-column: auto;
      }
      .press-card {
        border-radius: 22px;
      }
      .press-card div {
        padding: 15px;
      }
      .press-card img,
      .press-card-wide img {
        width: 100%;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
        padding: 6px;
      }
      .modal-top {
        align-items: flex-start;
        gap: 10px;
      }
      .modal-actions {
        width: 100%;
        justify-content: flex-start;
      }
      .modal-step,
      .close-detail {
        min-height: 36px;
        font-size: .76rem;
        padding: 0 10px;
      }
      .interest-item {
        position: relative;
        padding-right: 46px;
      }
      .interest-item span {
        margin-left: auto;
      }
      .interest-item.is-selected::after {
        position: absolute;
        right: 13px;
      }
    }

  
    /* v21 fixes: English media card, reliable waitlist selection, reliable back button */
    .interest-choice {
      position: relative;
    }
    .interest-checkbox {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }
    .interest-checkbox:checked + .interest-item {
      background: linear-gradient(135deg, rgba(228,20,127,.38), rgba(255,90,166,.18));
      border-color: rgba(255,255,255,.42);
      box-shadow: 0 12px 28px rgba(0,0,0,.18);
    }
    .interest-checkbox:checked + .interest-item::after {
      content: "✓";
      display: inline-flex;
      width: 24px;
      height: 24px;
      border-radius: 999px;
      align-items: center;
      justify-content: center;
      background: rgba(255,255,255,.92);
      color: #e4147f;
      font-weight: 900;
      margin-left: auto;
      flex: 0 0 auto;
    }
    .interest-checkbox:focus-visible + .interest-item {
      outline: 3px solid rgba(255,255,255,.28);
      outline-offset: 3px;
    }
    .close-detail {
      text-decoration: none;
    }
    @media (max-width: 720px) {
      .interest-checkbox:checked + .interest-item::after {
        position: absolute;
        right: 13px;
      }
    }

  
    @media (min-width: 941px) {
      h1 {
        transform: translateX(-2px);
      }
    }

  
    /* v28 First Batch reservation polish */
    .product-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 22px;
    }
    .product-actions .card-link {
      margin-top: 0;
    }
    .reserve-link {
      background: linear-gradient(135deg, var(--magenta) 0%, #ff477f 100%);
      color: #fff;
      border-color: transparent;
      box-shadow: 0 14px 34px rgba(228,20,127,.22);
    }
    .reserve-link:hover {
      background: linear-gradient(135deg, #d70d74 0%, #ff3772 100%);
      color: #fff;
      border-color: transparent;
    }
    .field-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
    }
    .real-select {
      appearance: none;
      background-image:
        linear-gradient(45deg, transparent 50%, rgba(255,255,255,.62) 50%),
        linear-gradient(135deg, rgba(255,255,255,.62) 50%, transparent 50%);
      background-position:
        calc(100% - 18px) 22px,
        calc(100% - 12px) 22px;
      background-size: 6px 6px, 6px 6px;
      background-repeat: no-repeat;
    }
    .real-select option {
      color: #240036;
      background: #fff;
    }
    .waitlist-panel h3 {
      max-width: 420px;
    }
    .waitlist-card::before {
      content: "FIRST BATCH";
      position: absolute;
      right: -8px;
      bottom: 16px;
      font-family: Georgia, serif;
      font-size: clamp(2.8rem, 7vw, 7rem);
      letter-spacing: .06em;
      color: rgba(61,10,92,.045);
      font-weight: 900;
      pointer-events: none;
    }
    @media (max-width: 720px) {
      .product-actions {
        flex-direction: column;
      }
      .product-actions .card-link {
        width: 100%;
      }
      .field-grid {
        grid-template-columns: 1fr;
      }
    }

  
    /* v29 First Batch Cart */
    .card-link,
    .reserve-link,
    .add-to-cart {
      font-family: inherit;
      cursor: pointer;
    }
    .cart-preview-panel {
      position: relative;
      overflow: hidden;
    }
    .cart-preview-box {
      margin-top: 22px;
      border-radius: 22px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.08);
      padding: 18px;
    }
    .cart-preview-box span {
      display: block;
      color: var(--gold);
      font-size: .78rem;
      letter-spacing: .13em;
      text-transform: uppercase;
      font-weight: 900;
    }
    .cart-preview-box strong {
      display: block;
      margin-top: 8px;
      font-family: Georgia, serif;
      font-size: 1.45rem;
      color: #fff;
      line-height: 1;
    }
    .floating-cart-button {
      position: fixed;
      right: clamp(14px, 3vw, 26px);
      bottom: clamp(14px, 3vw, 26px);
      z-index: 90;
      min-height: 54px;
      padding: 0 12px 0 20px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.18);
      background: linear-gradient(135deg, #2b0045 0%, #4b086c 100%);
      color: #fff;
      box-shadow: 0 20px 50px rgba(26,0,43,.28);
      display: inline-flex;
      align-items: center;
      gap: 12px;
      cursor: pointer;
      font-weight: 800;
      backdrop-filter: blur(12px);
    }
    .floating-cart-button span {
      font-size: .88rem;
      letter-spacing: .01em;
    }
    .floating-cart-button strong {
      min-width: 32px;
      height: 32px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: var(--magenta);
      color: #fff;
      box-shadow: 0 10px 24px rgba(228,20,127,.28);
    }
    .cart-drawer {
      position: fixed;
      inset: 0;
      z-index: 120;
      display: none;
    }
    .cart-drawer.is-open {
      display: block;
    }
    .cart-backdrop {
      position: absolute;
      inset: 0;
      background: rgba(19,0,32,.68);
      backdrop-filter: blur(14px);
    }
    .cart-panel {
      position: absolute;
      top: 0;
      right: 0;
      width: min(460px, 100%);
      height: 100%;
      background:
        radial-gradient(circle at 85% 12%, rgba(228,20,127,.10), transparent 30%),
        linear-gradient(180deg, #fffdf9 0%, #fff7f1 100%);
      box-shadow: -30px 0 80px rgba(0,0,0,.28);
      padding: 22px;
      overflow-y: auto;
      color: var(--ink);
    }
    .cart-top {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 16px;
      padding-bottom: 18px;
      border-bottom: 1px solid rgba(33,0,63,.08);
      position: sticky;
      top: -22px;
      z-index: 2;
      background: rgba(255,253,249,.94);
      backdrop-filter: blur(12px);
      padding-top: 8px;
    }
    .cart-kicker {
      color: var(--magenta);
      font-size: .78rem;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-weight: 900;
    }
    .cart-top h3 {
      font-family: Georgia, serif;
      font-size: 2rem;
      line-height: 1;
      margin: 8px 0 0;
      letter-spacing: -.04em;
    }
    .cart-close {
      min-height: 38px;
      padding: 0 14px;
      border: 0;
      border-radius: 999px;
      background: #2d054b;
      color: #fff;
      font-weight: 800;
      cursor: pointer;
    }
    .cart-items {
      display: grid;
      gap: 12px;
      margin: 20px 0;
    }
    .cart-empty {
      border-radius: 20px;
      padding: 18px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      color: var(--muted);
      text-align: center;
    }
    .cart-item {
      border-radius: 22px;
      padding: 16px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 12px 34px rgba(33,0,63,.06);
      display: grid;
      gap: 12px;
    }
    .cart-item-top {
      display: flex;
      justify-content: space-between;
      gap: 14px;
      align-items: flex-start;
    }
    .cart-item strong {
      font-family: Georgia, serif;
      font-size: 1.25rem;
      line-height: 1.05;
      color: #27132f;
    }
    .cart-item span {
      display: block;
      color: var(--muted);
      font-size: .86rem;
      margin-top: 4px;
    }
    .cart-remove {
      border: 0;
      background: transparent;
      color: #a3135e;
      font-weight: 800;
      cursor: pointer;
      padding: 2px;
      font-size: .82rem;
    }
    .quantity-control {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      justify-self: start;
      border: 1px solid rgba(33,0,63,.10);
      background: #fff7fb;
      border-radius: 999px;
      padding: 6px;
    }
    .qty-btn {
      width: 30px;
      height: 30px;
      border-radius: 999px;
      border: 0;
      background: #2d054b;
      color: #fff;
      font-weight: 900;
      cursor: pointer;
    }
    .qty-number {
      min-width: 28px;
      text-align: center;
      font-weight: 900;
      color: #2d054b;
    }
    .cart-form {
      border-radius: 26px;
      padding: 18px;
      background: linear-gradient(160deg, #1a002e 0%, #32004c 100%);
      color: white;
      display: grid;
      gap: 10px;
      margin-top: 18px;
    }
    .cart-form-title {
      font-family: Georgia, serif;
      font-size: 1.6rem;
      line-height: 1;
      margin-bottom: 4px;
    }
    .cart-note {
      min-height: 92px;
      padding-top: 14px;
      resize: vertical;
      font-family: inherit;
    }
    .cart-drawer .real-input {
      color: #fff;
    }
    .cart-drawer .real-input::placeholder {
      color: rgba(255,255,255,.50);
    }
    .cart-toast {
      position: fixed;
      left: 50%;
      bottom: 92px;
      transform: translateX(-50%) translateY(12px);
      z-index: 140;
      padding: 12px 16px;
      border-radius: 999px;
      background: rgba(19,0,32,.92);
      color: #fff;
      box-shadow: 0 18px 44px rgba(0,0,0,.24);
      opacity: 0;
      pointer-events: none;
      transition: opacity .2s ease, transform .2s ease;
      font-weight: 800;
      font-size: .9rem;
    }
    .cart-toast.is-visible {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
    @media (max-width: 720px) {
      .floating-cart-button {
        left: 14px;
        right: 14px;
        justify-content: space-between;
      }
      .cart-panel {
        width: 100%;
        padding: 18px;
      }
      .cart-top {
        top: -18px;
      }
    }

  
    /* v30 mobile tap reliability */
    button,
    .button,
    .card-link,
    .reserve-link,
    .add-to-cart,
    .floating-cart-button,
    .cart-close,
    .qty-btn,
    .cart-remove {
      -webkit-appearance: none;
      appearance: none;
      touch-action: manipulation;
      -webkit-tap-highlight-color: rgba(228,20,127,.18);
    }
    .add-to-cart,
    .open-cart-link,
    .floating-cart-button {
      pointer-events: auto;
      position: relative;
      z-index: 3;
    }

  
    /* v31 mobile-safe no-JS cart fallback */
    .cart-toggle {
      position: absolute;
      opacity: 0;
      pointer-events: none;
      width: 1px;
      height: 1px;
    }
    .add-to-cart .added-text {
      display: none;
    }
    .cart-toggle:checked + .add-to-cart {
      background: linear-gradient(135deg, #2d054b 0%, #5c1174 100%);
      color: #fff;
      border-color: rgba(255,255,255,.18);
      box-shadow: 0 14px 34px rgba(45,5,75,.22);
    }
    .cart-toggle:checked + .add-to-cart .add-text {
      display: none;
    }
    .cart-toggle:checked + .add-to-cart .added-text {
      display: inline;
    }
    .cart-toggle:checked + .add-to-cart::after {
      content: " ✓";
      margin-left: 6px;
      font-weight: 900;
    }
    #cart:target {
      display: block;
    }
    #cart:target .cart-panel {
      transform: translateX(0);
    }
    .cart-backdrop {
      display: block;
      text-decoration: none;
    }
    .cart-close {
      text-decoration: none;
    }
    .static-cart-row {
      border-radius: 20px;
      padding: 16px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      color: var(--muted);
      opacity: .42;
      transition: opacity .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .static-cart-row strong {
      display: block;
      font-family: Georgia, serif;
      font-size: 1.2rem;
      line-height: 1.05;
      color: #27132f;
    }
    .static-cart-row span {
      display: block;
      margin-top: 4px;
      font-size: .86rem;
    }
    body:has(#cart-sauce:checked) .static-cart-row[data-row="sauce"],
    body:has(#cart-tea:checked) .static-cart-row[data-row="tea"],
    body:has(#cart-gift:checked) .static-cart-row[data-row="gift"] {
      opacity: 1;
      border-color: rgba(228,20,127,.22);
      box-shadow: 0 12px 34px rgba(33,0,63,.08);
    }
    body:has(#cart-sauce:checked) .static-cart-row[data-row="sauce"]::after,
    body:has(#cart-tea:checked) .static-cart-row[data-row="tea"]::after,
    body:has(#cart-gift:checked) .static-cart-row[data-row="gift"]::after {
      content: "Selected";
      display: inline-flex;
      margin-top: 10px;
      padding: 5px 9px;
      border-radius: 999px;
      background: #fff0f7;
      color: #a3135e;
      font-size: .76rem;
      font-weight: 900;
    }
    body:has(#cart-sauce:checked) .cart-empty-fallback,
    body:has(#cart-tea:checked) .cart-empty-fallback,
    body:has(#cart-gift:checked) .cart-empty-fallback {
      display: none;
    }

  
    /* v32: V29-style quantity behavior + mobile fallback */
    .button-qty {
      display: none;
      margin-left: 8px;
      min-width: 26px;
      height: 26px;
      border-radius: 999px;
      align-items: center;
      justify-content: center;
      background: rgba(255,255,255,.92);
      color: #4a0062;
      font-size: .78rem;
      font-weight: 900;
      padding: 0 8px;
    }
    .cart-toggle:checked + .add-to-cart .button-qty,
    .add-to-cart.has-quantity .button-qty {
      display: inline-flex;
    }
    .add-to-cart.has-quantity .add-text {
      display: none;
    }
    .add-to-cart.has-quantity .added-text {
      display: inline;
    }
    .fallback-qty-label {
      margin-top: 12px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      font-weight: 800;
      color: #4a0062;
    }
    .fallback-qty-input {
      width: 92px;
      min-height: 40px;
      border-radius: 999px;
      border: 1px solid rgba(33,0,63,.14);
      background: #fff7fb;
      color: #2d054b;
      font-size: 1rem;
      font-weight: 900;
      text-align: center;
      padding: 0 8px;
    }
    .cart-item .quantity-control {
      touch-action: manipulation;
    }
    @media (max-width: 720px) {
      .button-qty {
        min-width: 24px;
        height: 24px;
      }
    }

  
    /* v33: mobile/tablet repeated-add cart fix */
    .add-to-cart .added-text {
      display: none;
    }
    .add-to-cart.has-quantity {
      background: linear-gradient(135deg, #2d054b 0%, #5c1174 100%);
      color: #fff;
      border-color: rgba(255,255,255,.18);
      box-shadow: 0 14px 34px rgba(45,5,75,.22);
    }
    .add-to-cart.has-quantity .add-text {
      display: none;
    }
    .add-to-cart.has-quantity .added-text {
      display: inline;
    }
    .add-to-cart.has-quantity .button-qty {
      display: inline-flex;
    }
    .add-to-cart {
      user-select: none;
      -webkit-user-select: none;
    }
    .cart-close {
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

  
    /* v34: pink floating cart icon + mobile/iPad early-tap fix */
    .floating-cart-button {
      width: 68px;
      height: 68px;
      min-height: 68px;
      padding: 0;
      border-radius: 999px;
      background: linear-gradient(135deg, #e4147f 0%, #ff3976 100%);
      color: #fff;
      align-items: center;
      justify-content: center;
      gap: 0;
      box-shadow: 0 20px 46px rgba(228,20,127,.32);
      border: 1px solid rgba(255,255,255,.28);
    }
    .floating-cart-button .cart-icon {
      width: 34px;
      height: 34px;
      display: block;
      color: #fff;
    }
    .floating-cart-button strong {
      position: absolute;
      top: -7px;
      right: -5px;
      min-width: 27px;
      height: 27px;
      padding: 0 7px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: #2d054b;
      color: #fff;
      font-size: .82rem;
      line-height: 1;
      border: 2px solid #fff;
      box-shadow: 0 8px 18px rgba(45,5,75,.25);
    }
    .cart-backdrop {
      border: 0;
      padding: 0;
      cursor: pointer;
    }
    .cart-close {
      border: 0;
      cursor: pointer;
      text-decoration: none;
    }
    @media (max-width: 720px) {
      .floating-cart-button {
        left: auto;
        right: 16px;
        bottom: 16px;
        width: 64px;
        height: 64px;
        min-height: 64px;
        justify-content: center;
      }
      .floating-cart-button .cart-icon {
        width: 31px;
        height: 31px;
      }
    }

  
    /* v35: stable header cart icon + unified cart drawer */
    .nav-cart-button {
      width: 52px;
      height: 52px;
      min-width: 52px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.26);
      background: linear-gradient(135deg, #e4147f 0%, #ff3976 100%);
      color: #fff;
      box-shadow: 0 14px 34px rgba(228,20,127,.28);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      position: relative;
      cursor: pointer;
      -webkit-appearance: none;
      appearance: none;
      touch-action: manipulation;
    }
    .nav-cart-button .cart-icon {
      width: 27px;
      height: 27px;
      display: block;
    }
    .nav-cart-button strong {
      position: absolute;
      top: -7px;
      right: -7px;
      min-width: 25px;
      height: 25px;
      padding: 0 7px;
      border-radius: 999px;
      background: #2d054b;
      color: #fff;
      border: 2px solid #fff;
      font-size: .78rem;
      font-weight: 900;
      line-height: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 8px 16px rgba(45,5,75,.24);
    }
    .add-to-cart .added-text {
      display: none;
    }
    .add-to-cart.has-quantity {
      background: linear-gradient(135deg, #2d054b 0%, #5c1174 100%);
      color: #fff;
      border-color: rgba(255,255,255,.18);
      box-shadow: 0 14px 34px rgba(45,5,75,.22);
    }
    .add-to-cart.has-quantity .add-text {
      display: none;
    }
    .add-to-cart.has-quantity .added-text {
      display: inline;
    }
    .add-to-cart.has-quantity .button-qty {
      display: inline-flex;
    }
    .button-qty {
      display: none;
      margin-left: 8px;
      min-width: 26px;
      height: 26px;
      border-radius: 999px;
      align-items: center;
      justify-content: center;
      background: rgba(255,255,255,.92);
      color: #4a0062;
      font-size: .78rem;
      font-weight: 900;
      padding: 0 8px;
    }
    .cart-drawer {
      position: fixed;
      inset: 0;
      z-index: 120;
      display: none;
    }
    .cart-drawer.is-open,
    #cart:target {
      display: block;
    }
    .cart-backdrop {
      position: absolute;
      inset: 0;
      display: block;
      background: rgba(19,0,32,.68);
      backdrop-filter: blur(14px);
      text-decoration: none;
      border: 0;
      padding: 0;
      cursor: pointer;
    }
    .cart-panel {
      position: absolute;
      top: 0;
      right: 0;
      width: min(460px, 100%);
      height: 100%;
      background:
        radial-gradient(circle at 85% 12%, rgba(228,20,127,.10), transparent 30%),
        linear-gradient(180deg, #fffdf9 0%, #fff7f1 100%);
      box-shadow: -30px 0 80px rgba(0,0,0,.28);
      padding: 22px;
      overflow-y: auto;
      color: var(--ink);
    }
    .cart-close {
      min-height: 38px;
      padding: 0 14px;
      border-radius: 999px;
      background: #2d054b;
      color: #fff;
      font-weight: 800;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      cursor: pointer;
    }
    .cart-toast {
      position: fixed;
      left: 50%;
      bottom: 92px;
      transform: translateX(-50%) translateY(12px);
      z-index: 140;
      padding: 12px 16px;
      border-radius: 999px;
      background: rgba(19,0,32,.92);
      color: #fff;
      box-shadow: 0 18px 44px rgba(0,0,0,.24);
      opacity: 0;
      pointer-events: none;
      transition: opacity .2s ease, transform .2s ease;
      font-weight: 800;
      font-size: .9rem;
    }
    .cart-toast.is-visible {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
    @media (max-width: 720px) {
      .nav-cart-button {
        width: 46px;
        height: 46px;
        min-width: 46px;
      }
      .nav-cart-button .cart-icon {
        width: 24px;
        height: 24px;
      }
      .links {
        gap: 7px;
      }
      .links > a:not(.nav-cta) {
        display: none;
      }
      .cart-panel {
        width: 100%;
        padding: 18px;
      }
    }

  
    /* v36: iPhone/iPad fallback-safe cart */
    .nav-cart-button {
      text-decoration: none;
    }
    .add-to-cart {
      text-decoration: none;
    }
    .cart-manual {
      display: grid;
      gap: 12px;
      margin-top: 12px;
    }
    .cart-manual-title {
      color: #a3135e;
      font-size: .78rem;
      letter-spacing: .14em;
      text-transform: uppercase;
      font-weight: 900;
      margin-top: 4px;
    }
    .cart-manual p {
      margin: -4px 0 4px;
      color: var(--muted);
      font-size: .9rem;
      line-height: 1.5;
    }
    .cart-manual-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      border-radius: 20px;
      padding: 14px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 12px 30px rgba(33,0,63,.05);
    }
    .cart-manual-row strong {
      display: block;
      font-family: Georgia, serif;
      font-size: 1.05rem;
      color: #27132f;
      line-height: 1.08;
    }
    .cart-manual-row small {
      display: block;
      color: var(--muted);
      margin-top: 4px;
      line-height: 1.25;
    }
    .cart-manual-row input {
      width: 82px;
      min-width: 82px;
      height: 42px;
      border-radius: 999px;
      border: 1px solid rgba(33,0,63,.12);
      background: #fff7fb;
      color: #2d054b;
      font-weight: 900;
      text-align: center;
      font-size: 1rem;
    }
    @media (max-width: 720px) {
      .cart-manual-row {
        padding: 13px;
      }
      .cart-manual-row input {
        width: 72px;
        min-width: 72px;
      }
    }

  
    /* v37: fixed iPad/iPhone cart icon + clearer direct-quantity cart fallback */
    .fixed-cart-icon {
      position: fixed;
      top: calc(env(safe-area-inset-top, 0px) + 92px);
      right: 18px;
      z-index: 115;
      width: 64px;
      height: 64px;
      border-radius: 999px;
      background: linear-gradient(135deg, #e4147f 0%, #ff3976 100%);
      color: #fff;
      box-shadow: 0 20px 46px rgba(228,20,127,.32);
      border: 1px solid rgba(255,255,255,.28);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      touch-action: manipulation;
    }
    .fixed-cart-icon .cart-icon {
      width: 31px;
      height: 31px;
      display: block;
    }
    .fixed-cart-icon strong {
      position: absolute;
      top: -7px;
      right: -6px;
      min-width: 27px;
      height: 27px;
      padding: 0 7px;
      border-radius: 999px;
      background: #2d054b;
      color: #fff;
      border: 2px solid #fff;
      font-size: .8rem;
      font-weight: 900;
      line-height: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 8px 18px rgba(45,5,75,.25);
    }
    .cart-drawer.is-open ~ .fixed-cart-icon,
    #cart:target ~ .fixed-cart-icon {
      display: none;
    }
    .cart-manual-title {
      font-size: .82rem;
    }
    .cart-manual p {
      font-size: .95rem;
      color: #6d6275;
    }
    .cart-manual-row {
      min-height: 76px;
    }
    .cart-manual-row input {
      width: 96px;
      min-width: 96px;
      height: 48px;
      font-size: 1.25rem;
      border-width: 2px;
      background: #fff;
      box-shadow: inset 0 0 0 999px rgba(255, 244, 249, .65);
      -webkit-appearance: textfield;
      appearance: textfield;
    }
    .cart-manual-row input:focus {
      outline: 3px solid rgba(228,20,127,.18);
      border-color: rgba(228,20,127,.45);
    }
    @media (max-width: 720px) {
      .fixed-cart-icon {
        top: calc(env(safe-area-inset-top, 0px) + 82px);
        right: 14px;
        width: 58px;
        height: 58px;
      }
      .fixed-cart-icon .cart-icon {
        width: 29px;
        height: 29px;
      }
      .cart-manual-row {
        align-items: center;
      }
      .cart-manual-row input {
        width: 86px;
        min-width: 86px;
        height: 46px;
      }
    }

  
    /* v38: native quantity fallback on product cards for iPhone/iPad preview */
    .product-quick-qty {
      display: none;
      align-items: center;
      gap: 10px;
      min-height: 50px;
      padding: 8px 10px 8px 14px;
      border-radius: 999px;
      border: 1px solid rgba(228,20,127,.16);
      background: #fff7fb;
      color: #7b1453;
      font-weight: 900;
      box-shadow: 0 10px 24px rgba(228,20,127,.08);
      user-select: none;
      -webkit-user-select: none;
    }
    .product-quick-qty span {
      font-size: .82rem;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .product-quick-qty input {
      width: 74px;
      height: 38px;
      border-radius: 999px;
      border: 1px solid rgba(33,0,63,.12);
      background: #fff;
      color: #2d054b;
      text-align: center;
      font-weight: 900;
      font-size: 1rem;
      -webkit-appearance: textfield;
      appearance: textfield;
    }
    .product-quick-qty input:focus {
      outline: 3px solid rgba(228,20,127,.18);
      border-color: rgba(228,20,127,.45);
    }
    @media (max-width: 1100px), (hover: none), (pointer: coarse) {
      .product-actions {
        align-items: center;
      }
      .product-quick-qty {
        display: inline-flex;
      }
    }
    @media (max-width: 720px) {
      .product-actions {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 10px;
      }
      .product-actions .card-link {
        width: 100%;
      }
      .product-quick-qty {
        justify-content: space-between;
        min-width: 112px;
      }
      .product-quick-qty input {
        width: 66px;
      }
    }

  
    /* v39: iPad preview-safe cart flow */
    html:not(.cart-js-ready) [data-cart-count],
    html:not(.cart-js-ready) #floatingCartCount {
      display: none !important;
    }
    #cart:has(:target) {
      display: block;
    }
    #cart:has(:target) .cart-panel {
      transform: translateX(0);
    }
    .cart-manual {
      display: grid;
      gap: 14px;
      margin-top: 12px;
    }
    .cart-manual-title {
      font-size: .82rem;
      letter-spacing: .16em;
      text-transform: uppercase;
      color: #a3135e;
      font-weight: 900;
    }
    .cart-manual p {
      font-size: .95rem;
      line-height: 1.5;
      color: #6d6275;
      margin: -4px 0 2px;
    }
    .cart-manual-row {
      min-height: 82px;
      cursor: text;
    }
    .cart-manual-row input {
      width: 104px;
      min-width: 104px;
      height: 52px;
      font-size: 1.25rem;
      border-width: 2px;
      background: #fff;
      box-shadow: inset 0 0 0 999px rgba(255, 244, 249, .65);
      -webkit-appearance: textfield;
      appearance: textfield;
    }
    .cart-manual-row input:focus {
      outline: 3px solid rgba(228,20,127,.20);
      border-color: rgba(228,20,127,.48);
    }
    @media (hover: none), (pointer: coarse), (max-width: 1100px) {
      .add-to-cart::after {
        content: " →";
        font-weight: 900;
      }
    }
    @media (max-width: 720px) {
      .cart-manual-row {
        min-height: 78px;
      }
      .cart-manual-row input {
        width: 88px;
        min-width: 88px;
        height: 48px;
      }
    }

  
    /* v40: no-scroll-jump cart opening for iPad/iPhone preview */
    html { scroll-behavior: auto; }
    .cart-state {
      position: fixed;
      width: 1px;
      height: 1px;
      opacity: 0;
      pointer-events: none;
      left: -9999px;
    }
    .cart-state:checked + .cart-drawer {
      display: block;
    }
    .cart-state:checked + .cart-drawer .cart-panel {
      transform: translateX(0);
    }
    .cart-state:checked + .cart-drawer ~ .fixed-cart-icon {
      display: none;
    }
    .open-cart-link,
    .add-to-cart,
    .cart-close,
    .cart-backdrop,
    .fixed-cart-icon,
    .nav-cart-button {
      cursor: pointer;
      -webkit-tap-highlight-color: rgba(228,20,127,.16);
    }
    label.button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

  
    /* v41: fresh cart storage + optional clear cart */
    .cart-clear {
      margin-left: 8px;
      min-height: 38px;
      padding: 0 14px;
      border-radius: 999px;
      border: 1px solid rgba(45,5,75,.12);
      background: #fff;
      color: #7b1453;
      font-weight: 900;
      cursor: pointer;
    }
    .cart-clear:hover {
      background: #fff0f7;
    }

  
    /* v43: simplified bottom cart preview */
    .cart-preview-simple {
      justify-content: center;
      text-align: center;
    }
    .cart-preview-simple strong {
      width: 100%;
      display: block;
    }

  
    /* v44: iPhone Files preview safe close button */
    .cart-close-bottom {
      display: none;
    }

    @media (max-width: 720px) {
      .cart-drawer.is-open .cart-panel,
      #cart:target .cart-panel {
        top: calc(env(safe-area-inset-top, 0px) + 72px);
        height: calc(100dvh - env(safe-area-inset-top, 0px) - 72px);
        border-top-left-radius: 28px;
        border-top-right-radius: 28px;
      }

      .cart-panel {
        padding-top: 18px;
        padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 90px);
      }

      .cart-top {
        position: sticky;
        top: 0;
        z-index: 6;
        padding: 8px 0 14px;
        background:
          linear-gradient(180deg, rgba(255,253,249,.98) 0%, rgba(255,253,249,.92) 72%, rgba(255,253,249,0) 100%);
        backdrop-filter: blur(10px);
      }

      .cart-close {
        min-width: 96px;
        min-height: 50px;
        font-size: 1.02rem;
        box-shadow: 0 14px 28px rgba(45,5,75,.20);
      }

      .cart-close-bottom {
        display: flex;
        position: sticky;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 16px);
        z-index: 8;
        width: 100%;
        min-height: 54px;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        background: #2d054b;
        color: #fff;
        text-decoration: none;
        font-weight: 900;
        margin-top: 18px;
        box-shadow: 0 18px 38px rgba(45,5,75,.24);
      }
    }

  
    /* v45: stronger iPhone preview close controls */
    @media (max-width: 720px) {
      .cart-drawer.is-open .cart-panel,
      #cart:target .cart-panel,
      .cart-state:checked + .cart-drawer .cart-panel {
        top: calc(env(safe-area-inset-top, 0px) + 118px);
        height: calc(100dvh - env(safe-area-inset-top, 0px) - 118px);
        border-top-left-radius: 30px;
        border-top-right-radius: 30px;
      }

      .cart-panel {
        padding-top: 26px;
        padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 128px);
      }

      .cart-top {
        position: sticky;
        top: 0;
        z-index: 20;
        min-height: 96px;
        display: flex;
        align-items: flex-start;
        gap: 12px;
        padding: 14px 0 20px;
        margin-bottom: 10px;
        background:
          linear-gradient(180deg, rgba(255,253,249,1) 0%, rgba(255,253,249,.98) 70%, rgba(255,253,249,0) 100%);
        backdrop-filter: blur(12px);
      }

      .cart-top h3 {
        font-size: clamp(2.35rem, 11vw, 3.4rem);
        line-height: .92;
        padding-right: 120px;
      }

      .cart-close {
        position: absolute;
        top: 12px;
        right: 0;
        min-width: 104px;
        min-height: 56px;
        font-size: 1.04rem;
        border-radius: 999px;
        box-shadow: 0 16px 34px rgba(45,5,75,.22);
      }

      .cart-close-bottom {
        display: flex;
        position: sticky;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 18px);
        z-index: 50;
        width: 100%;
        min-height: 62px;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        background: linear-gradient(135deg, #2d054b 0%, #4e0b66 100%);
        color: #fff;
        text-decoration: none;
        font-weight: 900;
        font-size: 1.02rem;
        margin-top: 20px;
        box-shadow: 0 20px 44px rgba(45,5,75,.28);
        -webkit-tap-highlight-color: rgba(255,255,255,.15);
      }

      .cart-close-mobile-fixed {
        display: flex;
      }
    }

    .cart-close-mobile-fixed {
      display: none;
      position: fixed;
      left: 18px;
      right: 18px;
      bottom: calc(env(safe-area-inset-bottom, 0px) + 18px);
      z-index: 160;
      min-height: 58px;
      align-items: center;
      justify-content: center;
      border-radius: 999px;
      background: linear-gradient(135deg, #2d054b 0%, #4e0b66 100%);
      color: #fff;
      text-decoration: none;
      font-weight: 900;
      box-shadow: 0 20px 44px rgba(45,5,75,.30);
    }

    .cart-drawer:not(.is-open) .cart-close-mobile-fixed {
      display: none !important;
    }
    @media (max-width: 720px) {
      .cart-state:checked + .cart-drawer .cart-close-mobile-fixed,
      #cart:target .cart-close-mobile-fixed,
      .cart-drawer.is-open .cart-close-mobile-fixed {
        display: flex;
      }
    }

  
    /* v46: cleaner mobile cart sheet */
    .cart-close-bottom,
    .cart-close-mobile-fixed {
      display: none !important;
    }

    @media (max-width: 720px) {
      .cart-drawer.is-open .cart-panel,
      #cart:target .cart-panel,
      .cart-state:checked + .cart-drawer .cart-panel {
        top: calc(env(safe-area-inset-top, 0px) + 88px);
        height: calc(100dvh - env(safe-area-inset-top, 0px) - 88px);
        border-top-left-radius: 28px;
        border-top-right-radius: 28px;
      }

      .cart-panel {
        padding-top: 22px;
        padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 56px);
      }

      .cart-top {
        min-height: 88px;
        padding: 10px 0 16px;
        margin-bottom: 8px;
      }

      .cart-top h3 {
        font-size: clamp(2.25rem, 10.5vw, 3.25rem);
        line-height: .94;
        padding-right: 116px;
      }

      .cart-close {
        top: 10px;
        right: 0;
        min-width: 104px;
        min-height: 54px;
        font-size: 1.04rem;
        border-radius: 999px;
        z-index: 30;
      }
    }

  
    /* v47: mobile cart uses desktop-like +/- controls; desktop Add is de-duplicated */
    .cart-manual-steppers {
      display: grid;
      gap: 14px;
      margin-top: 12px;
    }

    .cart-fallback-item {
      border-radius: 24px;
      padding: 18px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 12px 30px rgba(33,0,63,.05);
    }

    .cart-fallback-item .cart-item-top {
      margin-bottom: 14px;
    }

    .fallback-quantity-control {
      display: inline-flex;
      align-items: center;
      justify-content: flex-start;
      gap: 12px;
      padding: 8px;
      border-radius: 999px;
      background: #fff7fb;
      border: 1px solid rgba(45,5,75,.08);
    }

    .qty-input {
      width: 62px;
      height: 38px;
      border: 0;
      background: transparent;
      text-align: center;
      font-weight: 900;
      color: #2d054b;
      font-size: 1.05rem;
      -webkit-appearance: textfield;
      appearance: textfield;
    }
    .qty-input::-webkit-outer-spin-button,
    .qty-input::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }
    .qty-input:focus {
      outline: none;
    }

    @media (max-width: 720px) {
      .cart-fallback-item {
        padding: 16px;
      }
      .fallback-quantity-control {
        width: fit-content;
      }
      .qty-input {
        width: 58px;
        height: 38px;
      }
    }

  
    /* v48: mobile +/- buttons step quantity; desktop cart no longer jumps while stepping */
    .cart-fallback-item .cart-item-top > div {
      display: grid;
      gap: 5px;
    }

    .cart-fallback-item .cart-item-top strong {
      display: block;
      line-height: 1.08;
    }

    .cart-fallback-item .cart-item-top span {
      display: block;
      line-height: 1.25;
    }

    .qty-btn {
      touch-action: manipulation;
      -webkit-user-select: none;
      user-select: none;
      cursor: pointer;
    }

    @media (max-width: 720px) {
      .cart-fallback-item .cart-item-top {
        margin-bottom: 13px;
      }

      .cart-fallback-item .cart-item-top strong {
        font-size: 1.35rem;
      }

      .cart-fallback-item .cart-item-top span {
        font-size: 1rem;
      }

      .fallback-quantity-control {
        gap: 16px;
        padding: 9px;
      }
    }

  
    /* v49: stable cart rows, no rerender jump */
    .cart-items {
      display: block;
    }

    .cart-empty-static {
      margin-bottom: 14px;
    }

    .cart-stable-rows {
      display: grid;
      gap: 14px;
      margin-top: 0;
    }

    .cart-fallback-item {
      border-radius: 24px;
      padding: 18px;
      background: #fff;
      border: 1px solid rgba(33,0,63,.08);
      box-shadow: 0 12px 30px rgba(33,0,63,.05);
    }

    .cart-fallback-item .cart-item-top {
      margin-bottom: 14px;
    }

    .cart-fallback-item .cart-item-top > div {
      display: grid;
      gap: 5px;
    }

    .cart-fallback-item .cart-item-top strong,
    .cart-fallback-item .cart-item-top span {
      display: block;
    }

    .fallback-quantity-control {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      padding: 8px;
      border-radius: 999px;
      background: #fff7fb;
      border: 1px solid rgba(45,5,75,.08);
    }

    .qty-input {
      width: 62px;
      height: 38px;
      border: 0;
      background: transparent;
      text-align: center;
      font-weight: 900;
      color: #2d054b;
      font-size: 1.05rem;
      -webkit-appearance: textfield;
      appearance: textfield;
    }

    .qty-input::-webkit-outer-spin-button,
    .qty-input::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    .qty-input:focus {
      outline: none;
    }

    .qty-btn {
      touch-action: manipulation;
      -webkit-user-select: none;
      user-select: none;
      cursor: pointer;
    }

    @media (max-width: 720px) {
      .cart-fallback-item {
        padding: 16px;
      }

      .cart-fallback-item .cart-item-top strong {
        font-size: 1.34rem;
        line-height: 1.08;
      }

      .cart-fallback-item .cart-item-top span {
        font-size: 1rem;
        line-height: 1.25;
      }

      .fallback-quantity-control {
        gap: 16px;
        padding: 9px;
      }
    }

  
    /* v50: mobile direct-input quantity mode */
    @media (max-width: 720px) {
      .fallback-quantity-control {
        width: 100%;
        justify-content: flex-end;
        background: transparent;
        border: 0;
        padding: 0;
        gap: 0;
      }

      .fallback-quantity-control .qty-btn {
        display: none !important;
      }

      .fallback-quantity-control::before {
        content: "Qty";
        margin-right: auto;
        color: #a3135e;
        font-size: .78rem;
        letter-spacing: .13em;
        text-transform: uppercase;
        font-weight: 900;
      }

      .qty-input {
        width: 116px;
        min-width: 116px;
        height: 54px;
        border-radius: 999px;
        border: 2px solid rgba(45, 5, 75, .10);
        background: #fff7fb;
        box-shadow: inset 0 0 0 999px rgba(255, 244, 249, .55);
        font-size: 1.35rem;
        font-weight: 900;
      }

      .qty-input:focus {
        outline: 3px solid rgba(228,20,127,.22);
        border-color: rgba(228,20,127,.50);
        background: #fff;
      }

      .cart-fallback-item {
        display: grid;
        gap: 12px;
      }

      .cart-fallback-item .cart-item-top {
        margin-bottom: 0;
      }
    }

  
    /* v51: desktop/tablet keeps +/-; only phone layout uses direct number input */
    @media (min-width: 721px) {
      .fallback-quantity-control .qty-btn {
        display: inline-flex !important;
      }

      .fallback-quantity-control::before {
        content: none !important;
      }

      .fallback-quantity-control {
        display: inline-flex;
        align-items: center;
        justify-content: flex-start;
        gap: 12px;
        padding: 8px;
        border-radius: 999px;
        background: #fff7fb;
        border: 1px solid rgba(45,5,75,.08);
      }

      .qty-input {
        width: 62px;
        min-width: 62px;
        height: 38px;
        border: 0;
        background: transparent;
        box-shadow: none;
        font-size: 1.05rem;
      }
    }

  
    /* v52 final polish: perfectly centered quantity buttons */
    .quantity-control .qty-btn,
    .fallback-quantity-control .qty-btn {
      width: 46px !important;
      min-width: 46px !important;
      height: 46px !important;
      min-height: 46px !important;
      padding: 0 !important;
      margin: 0 !important;
      border: 0 !important;
      border-radius: 999px !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      text-align: center !important;
      line-height: 1 !important;
      font-size: 1.32rem !important;
      font-weight: 900 !important;
      font-family: Arial, Helvetica, sans-serif !important;
      vertical-align: middle !important;
      box-sizing: border-box !important;
      transform: none !important;
      appearance: none !important;
      -webkit-appearance: none !important;
    }

    .quantity-control .qty-btn {
      background: #2d054b !important;
      color: #fff !important;
    }

    .quantity-control .qty-btn::before,
    .quantity-control .qty-btn::after,
    .fallback-quantity-control .qty-btn::before,
    .fallback-quantity-control .qty-btn::after {
      content: none !important;
      display: none !important;
    }

    .fallback-quantity-control {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      gap: 14px !important;
      padding: 8px !important;
      min-height: 62px !important;
      box-sizing: border-box !important;
    }

    .fallback-quantity-control .qty-input {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      text-align: center !important;
      height: 42px !important;
      line-height: 42px !important;
      padding: 0 !important;
      margin: 0 !important;
      box-sizing: border-box !important;
      font-family: Arial, Helvetica, sans-serif !important;
    }

    @media (min-width: 721px) {
      .fallback-quantity-control .qty-btn {
        display: inline-flex !important;
      }

      .fallback-quantity-control {
        width: fit-content !important;
        background: #fff7fb !important;
        border: 1px solid rgba(45,5,75,.08) !important;
      }

      .fallback-quantity-control .qty-input {
        width: 62px !important;
        min-width: 62px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
      }
    }

    @media (max-width: 720px) {
      .fallback-quantity-control .qty-btn {
        display: none !important;
      }

      .fallback-quantity-control {
        width: 100% !important;
        justify-content: flex-end !important;
        background: transparent !important;
        border: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
      }

      .fallback-quantity-control .qty-input {
        width: 116px !important;
        min-width: 116px !important;
        height: 54px !important;
        line-height: 54px !important;
        border-radius: 999px !important;
        border: 2px solid rgba(45,5,75,.10) !important;
        background: #fff7fb !important;
        box-shadow: inset 0 0 0 999px rgba(255,244,249,.55) !important;
        font-size: 1.35rem !important;
      }
    }

  
    /* v53 live mobile polish: plus/minus controls back, cart sheet higher, cleaner product rows */
    @media (max-width: 720px) {
      .cart-drawer.is-open .cart-panel,
      #cart:target .cart-panel,
      .cart-state:checked + .cart-drawer .cart-panel {
        top: calc(env(safe-area-inset-top, 0px) + 24px) !important;
        height: calc(100dvh - env(safe-area-inset-top, 0px) - 24px) !important;
        border-top-left-radius: 32px !important;
        border-top-right-radius: 32px !important;
      }

      .cart-panel {
        padding-top: 18px !important;
        padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 74px) !important;
      }

      .cart-top {
        min-height: 84px !important;
        padding: 8px 0 16px !important;
        margin-bottom: 8px !important;
        align-items: flex-start !important;
      }

      .cart-top h3 {
        font-size: clamp(2.2rem, 10vw, 3.05rem) !important;
        line-height: .95 !important;
        letter-spacing: -.035em !important;
        padding-right: 118px !important;
      }

      .cart-close {
        top: 8px !important;
        right: 0 !important;
        min-width: 104px !important;
        min-height: 54px !important;
        font-size: 1.03rem !important;
        box-shadow: 0 16px 34px rgba(45,5,75,.22) !important;
      }

      .cart-empty-static {
        border-radius: 22px !important;
        font-size: 1rem !important;
        padding: 18px 18px !important;
        margin-bottom: 16px !important;
      }

      .cart-manual-title {
        font-size: .78rem !important;
        letter-spacing: .18em !important;
      }

      .cart-manual p {
        font-size: .98rem !important;
        line-height: 1.55 !important;
        margin-bottom: 8px !important;
      }

      .cart-fallback-item {
        padding: 18px !important;
        border-radius: 26px !important;
        background:
          radial-gradient(circle at 100% 0%, rgba(228,20,127,.06), transparent 38%),
          #fff !important;
        box-shadow: 0 18px 38px rgba(45,5,75,.07) !important;
      }

      .cart-fallback-item .cart-item-top {
        margin-bottom: 14px !important;
      }

      .cart-fallback-item .cart-item-top strong {
        font-size: 1.45rem !important;
        line-height: 1.05 !important;
        letter-spacing: -.015em !important;
      }

      .cart-fallback-item .cart-item-top span {
        font-size: 1.02rem !important;
        line-height: 1.3 !important;
        color: #7c7382 !important;
      }

      .fallback-quantity-control {
        width: fit-content !important;
        min-height: 60px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 14px !important;
        padding: 8px !important;
        border-radius: 999px !important;
        background: #fff7fb !important;
        border: 1px solid rgba(45,5,75,.08) !important;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.55) !important;
      }

      .fallback-quantity-control::before {
        content: none !important;
        display: none !important;
      }

      .fallback-quantity-control .qty-btn {
        display: inline-flex !important;
        width: 46px !important;
        min-width: 46px !important;
        height: 46px !important;
        min-height: 46px !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: #2d054b !important;
        color: #fff !important;
        font-size: 1.32rem !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        font-family: Arial, Helvetica, sans-serif !important;
        box-shadow: 0 8px 16px rgba(45,5,75,.16) !important;
        touch-action: manipulation !important;
      }

      .fallback-quantity-control .qty-input {
        width: 58px !important;
        min-width: 58px !important;
        height: 44px !important;
        line-height: 44px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: center !important;
        font-size: 1.25rem !important;
        font-weight: 900 !important;
        color: #2d054b !important;
        font-family: Arial, Helvetica, sans-serif !important;
      }

      .fallback-quantity-control .qty-input:focus {
        outline: none !important;
      }

      .cart-form {
        margin-top: 22px !important;
        border-radius: 28px !important;
      }

      .fixed-cart-icon {
        top: calc(env(safe-area-inset-top, 0px) + 76px) !important;
      }
    }

  
    /* v54: added Douchi Chili Sauce + bilingual toggle */
    .language-toggle {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      min-height: 42px;
      padding: 0 14px;
      border-radius: 999px;
      border: 1px solid rgba(45,5,75,.10);
      background: rgba(255,255,255,.74);
      color: #2d054b;
      font-weight: 900;
      letter-spacing: .02em;
      cursor: pointer;
      backdrop-filter: blur(10px);
    }
    .language-toggle em {
      font-style: normal;
      color: rgba(45,5,75,.34);
    }
    .language-toggle:hover {
      background: #fff;
      border-color: rgba(228,20,127,.25);
    }
    .sauce-extension-card .flavor-img {
      object-position: center;
    }
    @media (min-width: 900px) {
      .product-side .sauce-extension-card .flavor-img {
        height: 300px;
      }
    }
    @media (max-width: 720px) {
      .language-toggle {
        min-height: 38px;
        padding: 0 11px;
        font-size: .78rem;
      }
      .links {
        gap: 10px;
      }
      .product-side .sauce-extension-card .flavor-img {
        height: 260px;
      }
    }

  
    /* v59: homepage product carousel sample */
    .hero-product-carousel {
      position: relative;
      padding: 12px;
      overflow: hidden;
      isolation: isolate;
    }

    .hero-carousel-track {
      position: relative;
      min-height: 430px;
      border-radius: 28px;
      overflow: hidden;
      background: rgba(255,255,255,.08);
    }

    .hero-slide {
      position: absolute;
      inset: 0;
      display: block;
      opacity: 0;
      pointer-events: none;
      transition: opacity .38s ease, transform .38s ease;
      transform: scale(1.012);
      color: inherit;
      text-decoration: none;
    }

    .hero-slide.is-active {
      opacity: 1;
      pointer-events: auto;
      transform: scale(1);
    }

    .hero-slide img {
      width: 100%;
      height: 100%;
      min-height: 430px;
      object-fit: cover;
      object-position: center;
      display: block;
    }

    .hero-slide::after {
      content: "";
      position: absolute;
      inset: auto 0 0 0;
      height: 46%;
      background: linear-gradient(to top, rgba(33,0,63,.88), rgba(33,0,63,.32), transparent);
      pointer-events: none;
    }

    .hero-slide-caption {
      position: absolute;
      z-index: 2;
      left: 22px;
      right: 22px;
      bottom: 22px;
      padding: 22px;
      border-radius: 22px;
      background: rgba(33,0,63,.86);
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 18px 48px rgba(0,0,0,.25);
      backdrop-filter: blur(14px);
    }

    .hero-slide-caption h2 {
      margin: 0 0 8px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(1.45rem, 2.4vw, 2.1rem);
      line-height: .98;
      color: #fff;
    }

    .hero-slide-caption p {
      margin: 0;
      color: rgba(255,255,255,.78);
      font-size: .9rem;
      line-height: 1.45;
    }

    .hero-slide-caption .tags {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 13px;
    }

    .hero-slide-caption .tags span {
      color: rgba(255,255,255,.72);
      border: 1px solid rgba(255,255,255,.14);
      border-radius: 999px;
      padding: 7px 10px;
      font-size: .72rem;
    }

    .hero-carousel-arrow {
      position: absolute;
      top: 50%;
      z-index: 4;
      width: 42px;
      height: 42px;
      transform: translateY(-50%);
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.20);
      background: rgba(33,0,63,.34);
      color: #fff;
      font-size: 2rem;
      line-height: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      cursor: pointer;
      backdrop-filter: blur(14px);
      transition: opacity .22s ease, background .22s ease, transform .22s ease;
    }

    .hero-carousel-prev { left: 18px; }
    .hero-carousel-next { right: 18px; }

    .hero-product-carousel:hover .hero-carousel-arrow,
    .hero-product-carousel:focus-within .hero-carousel-arrow {
      opacity: .86;
    }

    .hero-carousel-arrow:hover {
      background: rgba(228,20,127,.72);
      transform: translateY(-50%) scale(1.04);
    }

    .hero-carousel-dots {
      position: absolute;
      z-index: 4;
      left: 50%;
      bottom: 18px;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(33,0,63,.28);
      border: 1px solid rgba(255,255,255,.12);
      backdrop-filter: blur(12px);
    }

    .hero-dot {
      width: 7px;
      height: 7px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: rgba(255,255,255,.38);
      cursor: pointer;
      transition: width .22s ease, background .22s ease;
    }

    .hero-dot.is-active {
      width: 22px;
      background: #e4147f;
    }

    @media (max-width: 940px) {
      .hero-product-carousel {
        max-width: 520px;
        width: 100%;
        margin: 0 auto;
      }

      .hero-carousel-track,
      .hero-slide img {
        min-height: 390px;
      }

      .hero-carousel-arrow {
        opacity: .56;
      }
    }

    @media (max-width: 720px) {
      .hero-product-carousel {
        padding: 8px;
        border-radius: 28px;
      }

      .hero-carousel-track,
      .hero-slide img {
        min-height: 350px;
        border-radius: 22px;
      }

      .hero-slide-caption {
        left: 14px;
        right: 14px;
        bottom: 14px;
        padding: 16px;
        border-radius: 18px;
      }

      .hero-slide-caption h2 {
        font-size: 1.32rem;
      }

      .hero-slide-caption p {
        font-size: .78rem;
      }

      .hero-slide-caption .tags span {
        font-size: .66rem;
        padding: 6px 8px;
      }

      .hero-carousel-arrow {
        width: 36px;
        height: 36px;
        font-size: 1.55rem;
        opacity: .54;
      }

      .hero-carousel-prev { left: 12px; }
      .hero-carousel-next { right: 12px; }
    }

  
    /* v60 carousel interaction fix */
    .hero-carousel-arrow,
    .hero-dot {
      pointer-events: auto !important;
    }

    .hero-product-carousel .open-detail {
      cursor: pointer;
    }

    .hero-carousel-arrow {
      -webkit-tap-highlight-color: transparent;
    }

  
    /* v61: refined hero carousel caption — smaller, more premium, less blocking */
    .hero-product-carousel {
      padding: 14px !important;
    }

    .hero-carousel-track {
      min-height: 440px !important;
      border-radius: 30px !important;
    }

    .hero-slide img {
      min-height: 440px !important;
      object-fit: cover !important;
      object-position: center !important;
      filter: saturate(1.02) contrast(1.02);
    }

    .hero-slide::after {
      height: 42% !important;
      background:
        linear-gradient(to top, rgba(33,0,63,.76), rgba(33,0,63,.18), transparent) !important;
    }

    .hero-slide-caption {
      left: 24px !important;
      right: auto !important;
      bottom: 24px !important;
      width: min(72%, 520px) !important;
      padding: 15px 17px 16px !important;
      border-radius: 19px !important;
      background: rgba(33,0,63,.78) !important;
      border: 1px solid rgba(255,255,255,.14) !important;
      box-shadow: 0 14px 34px rgba(0,0,0,.22) !important;
      backdrop-filter: blur(15px) !important;
    }

    .hero-slide-caption h2 {
      font-size: clamp(1.18rem, 1.8vw, 1.55rem) !important;
      line-height: 1.04 !important;
      letter-spacing: -.02em !important;
      margin-bottom: 6px !important;
    }

    .hero-slide-caption p {
      font-size: .74rem !important;
      line-height: 1.35 !important;
      color: rgba(255,255,255,.76) !important;
      max-width: 34em !important;
    }

    .hero-slide-caption .tags {
      margin-top: 10px !important;
      gap: 6px !important;
    }

    .hero-slide-caption .tags span {
      padding: 5px 8px !important;
      font-size: .62rem !important;
      color: rgba(255,255,255,.74) !important;
      background: rgba(255,255,255,.035) !important;
    }

    .hero-carousel-dots {
      left: auto !important;
      right: 22px !important;
      top: 22px !important;
      bottom: auto !important;
      transform: none !important;
      padding: 7px 9px !important;
      background: rgba(33,0,63,.32) !important;
    }

    .hero-dot {
      width: 6px !important;
      height: 6px !important;
    }

    .hero-dot.is-active {
      width: 18px !important;
    }

    .hero-carousel-arrow {
      width: 40px !important;
      height: 40px !important;
      font-size: 1.8rem !important;
      background: rgba(33,0,63,.28) !important;
    }

    .hero-product-carousel:hover .hero-carousel-arrow,
    .hero-product-carousel:focus-within .hero-carousel-arrow {
      opacity: .74 !important;
    }

    @media (max-width: 940px) {
      .hero-carousel-track,
      .hero-slide img {
        min-height: 400px !important;
      }

      .hero-slide-caption {
        width: min(78%, 440px) !important;
      }
    }

    @media (max-width: 720px) {
      .hero-product-carousel {
        padding: 9px !important;
      }

      .hero-carousel-track,
      .hero-slide img {
        min-height: 340px !important;
        border-radius: 22px !important;
      }

      .hero-slide-caption {
        left: 13px !important;
        bottom: 13px !important;
        width: calc(100% - 26px) !important;
        padding: 13px 14px !important;
        border-radius: 17px !important;
      }

      .hero-slide-caption h2 {
        font-size: 1.08rem !important;
        line-height: 1.05 !important;
        margin-bottom: 5px !important;
      }

      .hero-slide-caption p {
        font-size: .68rem !important;
        line-height: 1.32 !important;
      }

      .hero-slide-caption .tags {
        margin-top: 8px !important;
        gap: 5px !important;
      }

      .hero-slide-caption .tags span {
        font-size: .57rem !important;
        padding: 4px 7px !important;
      }

      .hero-carousel-dots {
        top: 14px !important;
        right: 14px !important;
        padding: 6px 8px !important;
      }

      .hero-carousel-arrow {
        width: 34px !important;
        height: 34px !important;
        font-size: 1.45rem !important;
        opacity: .48 !important;
      }

      .hero-carousel-prev { left: 11px !important; }
      .hero-carousel-next { right: 11px !important; }
    }

  
    /* v62 cart emergency cleanup */
    .cart-stable-rows {
      display: grid !important;
      grid-template-columns: 1fr !important;
      gap: 16px !important;
      width: 100% !important;
      overflow: visible !important;
    }

    .cart-fallback-item {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      overflow: hidden !important;
    }

    .cart-fallback-item .cart-item-top {
      display: block !important;
      width: 100% !important;
    }

    .cart-fallback-item .cart-item-top > div {
      width: 100% !important;
      max-width: 100% !important;
    }

    .cart-fallback-item .cart-item-top strong,
    .cart-fallback-item .cart-item-top span {
      overflow-wrap: anywhere !important;
      word-break: normal !important;
    }

    .cart-panel {
      overflow-x: hidden !important;
    }

    @media (max-width: 720px) {
      .cart-fallback-item {
        padding: 18px !important;
      }

      .fallback-quantity-control {
        margin-top: 10px !important;
      }
    }

  
    /* v63 language toggle fix */
    .language-toggle {
      user-select: none;
      position: relative;
      z-index: 25;
    }

    .language-toggle.is-zh {
      background: #2d054b !important;
      color: #fff !important;
      border-color: rgba(45,5,75,.20) !important;
    }

    .language-toggle.is-zh em {
      color: rgba(255,255,255,.42) !important;
    }

    body.lang-zh {
      font-family: -apple-system, BlinkMacSystemFont, "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", Arial, sans-serif;
    }

    body.lang-zh .section-title,
    body.lang-zh .card-body h3,
    body.lang-zh .cart-top h3,
    body.lang-zh .hero-slide-caption h2 {
      font-family: "Noto Serif TC", "Songti TC", "PMingLiU", Georgia, serif;
      letter-spacing: .01em;
    }

  
    /* v64: translated Story/Media + lighter carousel caption */
    .hero-slide-caption {
      width: min(50%, 350px) !important;
      padding: 10px 12px 11px !important;
      border-radius: 15px !important;
      background: rgba(33,0,63,.58) !important;
      border-color: rgba(255,255,255,.10) !important;
      box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
      backdrop-filter: blur(12px) !important;
    }

    .hero-slide-caption h2 {
      font-size: clamp(.92rem, 1.18vw, 1.12rem) !important;
      line-height: 1.03 !important;
      letter-spacing: -.01em !important;
      margin-bottom: 3px !important;
      max-width: 10em !important;
    }

    .hero-slide-caption p {
      font-size: .56rem !important;
      line-height: 1.25 !important;
      max-width: 30em !important;
      opacity: .78 !important;
    }

    .hero-slide-caption .tags {
      margin-top: 6px !important;
      gap: 4px !important;
    }

    .hero-slide-caption .tags span {
      font-size: .48rem !important;
      padding: 3px 6px !important;
      opacity: .86 !important;
    }

    .hero-slide::after {
      height: 28% !important;
      background: linear-gradient(to top, rgba(33,0,63,.46), rgba(33,0,63,.08), transparent) !important;
    }

    .hero-carousel-dots {
      transform: scale(.82) !important;
      transform-origin: top right !important;
    }

    body.lang-zh .hero-slide-caption h2 {
      font-size: clamp(.96rem, 1.25vw, 1.18rem) !important;
    }

    body.lang-zh .hero-slide-caption p {
      font-size: .58rem !important;
      line-height: 1.28 !important;
    }

    @media (max-width: 940px) {
      .hero-slide-caption {
        width: min(54%, 320px) !important;
      }
    }

    @media (max-width: 720px) {
      .hero-slide-caption {
        width: calc(100% - 118px) !important;
        left: 58px !important;
        right: 58px !important;
        bottom: 12px !important;
        padding: 9px 11px !important;
      }

      .hero-slide-caption h2 {
        font-size: .88rem !important;
        max-width: 12em !important;
      }

      .hero-slide-caption p {
        font-size: .52rem !important;
      }

      .hero-slide-caption .tags {
        display: none !important;
      }
    }

  
    /* v65: removed standalone first-batch section; keep product/cart flow cleaner */
    #media {
      margin-top: 0 !important;
    }

  
    /* v66: founder story + media heritage upgrade from presentation archive */
    .heritage-layout {
      display: grid;
      grid-template-columns: minmax(0, .95fr) minmax(340px, .72fr);
      gap: 46px;
      align-items: center;
    }

    .founder-note-card {
      position: relative;
      overflow: hidden;
      border-radius: 34px;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.06);
      box-shadow: 0 28px 80px rgba(0,0,0,.26);
    }

    .founder-note-card img {
      width: 100%;
      display: block;
      filter: saturate(.92) contrast(.98);
    }

    .founder-note-card::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(33,0,63,.92), rgba(33,0,63,.14), transparent 55%);
      pointer-events: none;
    }

    .founder-note-copy {
      position: absolute;
      left: 24px;
      right: 24px;
      bottom: 24px;
      z-index: 2;
      padding: 18px;
      border-radius: 22px;
      background: rgba(33,0,63,.72);
      border: 1px solid rgba(255,255,255,.10);
      backdrop-filter: blur(14px);
    }

    .founder-note-copy span,
    .brand-proof-strip span,
    .press-card span {
      display: block;
      color: #e4147f;
      text-transform: uppercase;
      letter-spacing: .18em;
      font-size: .72rem;
      font-weight: 900;
      margin-bottom: 8px;
    }

    .founder-note-copy strong {
      display: block;
      font-family: Georgia, "Times New Roman", serif;
      color: #fff;
      font-size: 1.35rem;
      line-height: 1.04;
      margin-bottom: 8px;
    }

    .founder-note-copy p {
      margin: 0;
      color: rgba(255,255,255,.76);
      line-height: 1.55;
      font-size: .92rem;
    }

    .heritage-wall {
      align-items: stretch;
    }

    .heritage-side-cards {
      display: grid;
      gap: 16px;
    }

    .brand-proof-strip {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
      margin: 34px 0 44px;
    }

    .brand-proof-strip article {
      padding: 22px;
      border-radius: 24px;
      background: rgba(255,255,255,.07);
      border: 1px solid rgba(255,255,255,.10);
    }

    .brand-proof-strip strong {
      display: block;
      color: #fff;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 1.08rem;
      line-height: 1.08;
      margin-bottom: 10px;
    }

    .brand-proof-strip p {
      margin: 0;
      color: rgba(255,255,255,.66);
      font-size: .86rem;
      line-height: 1.55;
    }

    .heritage-press-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .heritage-press-grid .wide-card {
      grid-column: span 2;
    }

    .press-card img {
      object-fit: cover;
      object-position: center;
      min-height: 230px;
    }

    .press-card div {
      background: rgba(33,0,63,.82);
    }

    .press-card strong {
      font-size: 1.05rem;
      line-height: 1.12;
    }

    @media (max-width: 980px) {
      .heritage-layout,
      .media-wall {
        grid-template-columns: 1fr !important;
      }

      .brand-proof-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .heritage-press-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .heritage-press-grid .wide-card {
        grid-column: span 1;
      }
    }

    @media (max-width: 640px) {
      .brand-proof-strip,
      .heritage-press-grid {
        grid-template-columns: 1fr;
      }

      .founder-note-copy {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        margin: -12px 14px 14px;
      }

      .founder-note-card::after {
        display: none;
      }

      .press-card img {
        min-height: 210px;
      }
    }

  
    /* v70: keep media playlist cover image complete in both English and Chinese */
    .media-video-hero {
      min-height: 0 !important;
      height: auto !important;
      background: rgba(255,255,255,.075) !important;
    }

    .media-video-hero img {
      width: 100% !important;
      height: auto !important;
      min-height: 0 !important;
      object-fit: contain !important;
      object-position: center center !important;
      display: block !important;
    }

    .media-video-hero:hover img {
      transform: none !important;
    }

    @media (max-width: 720px) {
      .media-video-hero img {
        width: 100% !important;
        height: auto !important;
      }
    }

      .heritage-feature-copy {
        left: 18px;
        right: 18px;
        bottom: 18px;
      }

      .heritage-feature-copy strong {
        font-size: 1.45rem;
      }

      .heritage-feature-copy p {
        font-size: .88rem;
      }
    }

  

  /* v72: cleaner media archive layout without duplicates */
  .compact-head {
    margin-bottom: 20px;
  }

  .compact-head p,
  .archive-rail-head p {
    margin: 12px 0 0;
    max-width: 60rem;
    color: rgba(255,255,255,.74);
    line-height: 1.65;
  }

  .heritage-editorial-board {
    margin-top: 44px;
  }

  .heritage-editorial-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 48px;
  }

  .story-card {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    border-radius: 28px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: 0 24px 70px rgba(0,0,0,.18);
  }

  .story-card img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    object-position: center;
    display: block;
    filter: saturate(1.04) contrast(1.02);
  }

  .story-contain img {
    object-fit: contain;
    background: rgba(255,255,255,.94);
    padding: 8px;
  }

  .story-poster img {
    object-position: center top;
    background: rgba(255,255,255,.96);
  }

  .story-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(19,0,34,.06) 18%, rgba(19,0,34,.9) 100%);
    pointer-events: none;
  }

  .story-overlay {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
    z-index: 2;
    padding: 18px 18px 16px;
    border-radius: 22px;
    background: rgba(32,0,58,.68);
    border: 1px solid rgba(255,255,255,.10);
    backdrop-filter: blur(14px);
  }

  .story-overlay span,
  .archive-copy span {
    display: block;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: .18em;
    font-size: .72rem;
    font-weight: 900;
    margin-bottom: 8px;
  }

  .story-overlay strong,
  .archive-copy strong {
    display: block;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    line-height: 1.04;
  }

  .story-overlay strong {
    font-size: clamp(1.16rem, 2vw, 1.92rem);
    margin-bottom: 10px;
  }

  .story-overlay p {
    margin: 0;
    color: rgba(255,255,255,.78);
    line-height: 1.6;
    font-size: .92rem;
  }

  .story-wide { grid-column: span 7; min-height: 370px; }
  .story-tall { grid-column: span 5; grid-row: span 2; min-height: 770px; }
  .story-half { grid-column: span 7; min-height: 320px; }
  .story-third { grid-column: span 4; min-height: 260px; }

  .archive-rail-block {
    margin-top: 44px;
  }

  .archive-rail-head {
    margin-bottom: 16px;
  }

  .archive-rail-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(270px, 30vw);
    gap: 18px;
    overflow-x: auto;
    padding: 4px 2px 10px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .archive-rail-track::-webkit-scrollbar { height: 10px; }
  .archive-rail-track::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,.18);
    border-radius: 999px;
  }

  .archive-rail-card {
    scroll-snap-align: start;
    overflow: hidden;
    border-radius: 26px;
    background: rgba(255,255,255,.075);
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: 0 20px 60px rgba(0,0,0,.14);
  }

  .archive-rail-card img {
    width: 100%;
    height: 238px;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .archive-rail-card.portrait-card img {
    height: 360px;
  }

  .archive-rail-card.contain-card img {
    object-fit: contain;
    background: rgba(255,255,255,.95);
    padding: 6px;
  }

  .archive-copy {
    padding: 16px 18px 18px;
  }

  .archive-copy strong {
    font-size: 1.06rem;
  }

  .founder-archive-block {
    margin-bottom: 18px;
  }

  @media (max-width: 1080px) {
    .story-wide,
    .story-half,
    .story-third,
    .story-tall {
      grid-column: span 6;
      min-height: 320px;
      grid-row: span 1;
    }

    .archive-rail-track {
      grid-auto-columns: minmax(250px, 38vw);
    }
  }

  @media (max-width: 760px) {
    .heritage-editorial-grid {
      grid-template-columns: 1fr;
    }

    .story-wide,
    .story-half,
    .story-third,
    .story-tall {
      grid-column: span 1;
      min-height: 300px;
    }

    .story-tall.story-poster {
      min-height: 520px;
    }

    .story-overlay {
      left: 16px;
      right: 16px;
      bottom: 16px;
      padding: 16px;
    }

    .story-overlay strong {
      font-size: 1.26rem;
    }

    .archive-rail-track {
      grid-auto-columns: minmax(240px, 78vw);
    }
  }


  /* v73: premium media archive — full image display, captions outside images */
  .v73-media .container {
    max-width: 1240px;
  }

  .v73-media-head {
    align-items: flex-end;
  }

  .v73-playlist-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: 22px;
    margin: 34px 0 42px;
    align-items: stretch;
  }

  .v73-proof-list {
    display: grid;
    gap: 16px;
  }

  .v73-proof-list a {
    display: block;
    padding: 26px;
    border-radius: 28px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    text-decoration: none;
    color: #fff;
    transition: transform .2s ease, background .2s ease;
  }

  .v73-proof-list a:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.10);
  }

  .v73-proof-list span,
  .v73-card-copy span {
    display: block;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: .18em;
    font-size: .72rem;
    font-weight: 900;
    margin-bottom: 8px;
  }

  .v73-proof-list strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.15rem, 1.7vw, 1.65rem);
    line-height: 1.08;
  }

  .v73-full-image-card {
    overflow: hidden;
    border-radius: 28px;
    background: rgba(255,255,255,.075);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 26px 76px rgba(0,0,0,.17);
    color: #fff;
  }

  .v73-full-image-card figure {
    position: relative;
    margin: 0;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(255,247,252,.92));
    border-bottom: 1px solid rgba(255,255,255,.12);
  }

  .v73-full-image-card img {
    width: 100%;
    height: auto;
    max-height: 680px;
    object-fit: contain !important;
    object-position: center center !important;
    display: block;
    filter: saturate(1.02) contrast(1.01);
  }

  .v73-card-copy {
    padding: 20px 22px 22px;
  }

  .v73-card-copy strong {
    display: block;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.12rem, 1.8vw, 1.55rem);
    line-height: 1.08;
  }

  .v73-card-copy p {
    margin: 10px 0 0;
    color: rgba(255,255,255,.72);
    line-height: 1.6;
    font-size: .94rem;
  }

  .v73-play-icon {
    position: absolute;
    left: 22px;
    bottom: 22px;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #e4147f;
    color: #fff;
    box-shadow: 0 18px 40px rgba(228,20,127,.35);
    font-size: 1.1rem;
    padding-left: 3px;
  }

  .v73-founder-cinema {
    display: grid;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1fr);
    gap: 28px;
    padding: 28px;
    border-radius: 36px;
    background: linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.045));
    border: 1px solid rgba(255,255,255,.13);
    box-shadow: 0 30px 90px rgba(0,0,0,.18);
    margin: 42px 0 52px;
    align-items: center;
  }

  .v73-founder-image {
    border-radius: 28px;
    overflow: hidden;
    background: rgba(255,255,255,.95);
  }

  .v73-founder-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
  }

  .v73-founder-copy {
    padding: clamp(12px, 3vw, 34px);
  }

  .v73-founder-copy h3,
  .v73-section-title h3 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    color: #fff;
    line-height: .98;
  }

  .v73-founder-copy h3 {
    font-size: clamp(2rem, 4vw, 4.25rem);
    max-width: 9.5em;
  }

  .v73-founder-copy p {
    color: rgba(255,255,255,.76);
    line-height: 1.75;
    font-size: 1.02rem;
    max-width: 48rem;
  }

  .v73-section-block {
    margin: 54px 0 0;
  }

  .v73-section-title {
    margin-bottom: 22px;
  }

  .v73-section-title h3 {
    font-size: clamp(2rem, 4vw, 4rem);
    max-width: 12em;
  }

  .v73-premium-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .v73-span-2 {
    grid-column: span 2;
  }

  .v73-rail {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(300px, 34vw);
    gap: 18px;
    overflow-x: auto;
    padding: 4px 2px 10px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  .v73-rail::-webkit-scrollbar {
    height: 10px;
  }

  .v73-rail::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,.18);
    border-radius: 999px;
  }

  .v73-rail-card {
    scroll-snap-align: start;
  }

  .v73-rail-card img {
    max-height: 430px;
  }

  .compact-rail {
    margin-top: 18px;
  }

  @media (max-width: 980px) {
    .v73-playlist-feature,
    .v73-founder-cinema {
      grid-template-columns: 1fr;
    }

    .v73-premium-grid {
      grid-template-columns: 1fr;
    }

    .v73-span-2 {
      grid-column: span 1;
    }

    .v73-rail {
      grid-auto-columns: minmax(270px, 62vw);
    }
  }

  @media (max-width: 640px) {
    .v73-founder-cinema {
      padding: 16px;
      border-radius: 28px;
    }

    .v73-full-image-card,
    .v73-founder-image {
      border-radius: 22px;
    }

    .v73-card-copy {
      padding: 17px 18px 19px;
    }

    .v73-founder-copy {
      padding: 10px 4px 4px;
    }

    .v73-founder-copy h3,
    .v73-section-title h3 {
      font-size: 2rem;
      line-height: 1.02;
    }

    .v73-rail {
      grid-auto-columns: minmax(260px, 82vw);
    }

    .v73-play-icon {
      width: 50px;
      height: 50px;
      left: 16px;
      bottom: 16px;
    }
  }


  /* v74: tighter premium wording and card typography */
  .v73-rail .v73-card-copy strong {
    font-size: clamp(1rem, 1.38vw, 1.28rem) !important;
    line-height: 1.08 !important;
  }

  .v73-rail .v73-card-copy {
    padding: 18px 20px 20px !important;
  }

  .v73-rail .v73-card-copy span {
    letter-spacing: .16em !important;
    font-size: .68rem !important;
  }


  /* v76: full shipping form + bilingual cart */
  .field-grid-three {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .netlify-honeypot {
    display: none !important;
  }

  .cart-form .real-input:required {
    border-color: rgba(255,255,255,.20);
  }

  .cart-form .real-input:required:invalid:not(:placeholder-shown) {
    border-color: rgba(255,90,166,.55);
  }

  @media (max-width: 560px) {
    .field-grid,
    .field-grid-three {
      grid-template-columns: 1fr;
    }
  }


  /* v77: guided country / region / city checkout */
  .location-helper {
    color: rgba(255,255,255,.62);
    font-size: .92rem;
    line-height: 1.5;
    margin: -4px 0 10px;
  }

  .select-input {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image:
      linear-gradient(45deg, transparent 50%, rgba(255,255,255,.65) 50%),
      linear-gradient(135deg, rgba(255,255,255,.65) 50%, transparent 50%);
    background-position:
      calc(100% - 23px) 50%,
      calc(100% - 16px) 50%;
    background-size: 7px 7px, 7px 7px;
    background-repeat: no-repeat;
    padding-right: 44px !important;
  }

  .select-input:disabled {
    opacity: .56;
    cursor: not-allowed;
  }

  .select-input option {
    color: #250033;
    background: #fff;
  }

  .location-other-field {
    display: none;
  }

  .location-other-field.is-visible {
    display: block;
  }

  @media (max-width: 760px) {
    .location-select-grid,
    .location-other-grid {
      grid-template-columns: 1fr;
    }
  }

  /* v79: simplified address flow */
  .location-helper {
    margin-top: 2px !important;
  }


  /* v80: inline order submission status */
  .form-status {
    min-height: 22px;
    margin: 14px 8px 0;
    text-align: center;
    font-size: .9rem;
    line-height: 1.45;
    color: rgba(255,255,255,.62);
  }

  .form-status.success {
    color: #ffd8ea;
    font-weight: 800;
  }

  .form-status.error {
    color: #ff9fbe;
    font-weight: 800;
  }

  .form-status.pending {
    color: rgba(255,255,255,.72);
  }

  .open-form:disabled {
    opacity: .72;
    cursor: wait;
  }


  /* v83: payment preference section */
  .payment-preference-block {
    margin-top: 4px;
    padding: 16px;
    border-radius: 22px;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.10);
  }

  .secondary-title {
    margin-bottom: 10px !important;
    font-size: .82rem !important;
    color: rgba(255,255,255,.76) !important;
  }

  .payment-note {
    margin-top: 10px;
    color: rgba(255,255,255,.56);
    font-size: .84rem;
    line-height: 1.48;
  }


  /* v84: chili-first product merchandising note */
  .product-line-note {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0 0 24px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(225, 20, 129, .22);
    background: rgba(225, 20, 129, .07);
    color: var(--pink);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
  }


  /* v86: You Po Chili Crisp addition */
  .detail-actions {
    margin-top: 22px;
  }

  .youpo-card .chip-row .chip {
    white-space: nowrap;
  }


  /* v87: show full product artwork for You Po Chili Crisp and Hua Jiao Tea cards */
  .product-side .youpo-card .flavor-img,
  .product-side .tea-card .flavor-img {
    height: 340px;
    object-fit: contain;
    object-position: top center;
    background: #fff;
    padding: 16px 16px 0;
    box-sizing: border-box;
    display: block;
  }

  @media (max-width: 720px) {
    .product-side .youpo-card .flavor-img,
    .product-side .tea-card .flavor-img {
      height: 280px;
      padding: 12px 12px 0;
    }
  }


  /* v88: lower product cards use landscape-safe artwork so product text is not cropped */
  .youpo-card .flavor-img,
  .tea-card .flavor-img {
    height: 390px !important;
    width: 100%;
    object-fit: cover !important;
    object-position: center !important;
    padding: 0 !important;
    background: #21003f;
    display: block;
  }

  @media (max-width: 720px) {
    .youpo-card .flavor-img,
    .tea-card .flavor-img {
      height: 280px !important;
    }
  }


  /* v89: lower product cards image fix — full, complete, no awkward blank frame */
  .flavor-card.youpo-card .flavor-img,
  .flavor-card.tea-card .flavor-img {
    width: 100% !important;
    height: 420px !important;
    object-fit: cover !important;
    object-position: center center !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
  }

  @media (max-width: 900px) {
    .flavor-card.youpo-card .flavor-img,
    .flavor-card.tea-card .flavor-img {
      height: 340px !important;
    }
  }

  @media (max-width: 720px) {
    .flavor-card.youpo-card .flavor-img,
    .flavor-card.tea-card .flavor-img {
      height: 280px !important;
    }
  }


  /* v90: Hua Jiao Tea lower product card — full title visible, filled frame */
  .flavor-card.tea-card .flavor-img {
    height: 420px !important;
    object-fit: cover !important;
    object-position: top center !important;
    padding: 0 !important;
    background: transparent !important;
  }

  @media (max-width: 900px) {
    .flavor-card.tea-card .flavor-img {
      height: 340px !important;
    }
  }

  @media (max-width: 720px) {
    .flavor-card.tea-card .flavor-img {
      height: 280px !important;
    }
  }


  /* v91: Hua Jiao Tea lower product card — full original artwork, no crop */
  .flavor-card.tea-card .flavor-img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
  }


  /* v92: Douchi Chili Sauce image refresh */
  .flavor-card.douchi-card .flavor-img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
  }


  /* v93: Spicy Douban Sauce addition */
  .flavor-card.douban-card .flavor-img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
  }

  .douban-card .chip-row .chip {
    white-space: nowrap;
  }


  /* v94: Green Chili Sauce addition */
  .flavor-card.green-card .flavor-img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
  }

  .green-card .chip-row .chip {
    white-space: nowrap;
  }


  /* v96: mobile/tablet fix for You Po lower product card image */
  @media (max-width: 1024px) {
    .flavor-card.youpo-card .flavor-img {
      width: 100% !important;
      height: auto !important;
      max-height: none !important;
      object-fit: contain !important;
      object-position: center center !important;
      padding: 0 !important;
      background: transparent !important;
      display: block !important;
    }
  }


  /* v97: extra mobile/tablet safety margin for You Po lower product card */
  @media (max-width: 1400px) {
    .flavor-card.youpo-card .flavor-img {
      width: calc(100% - 28px) !important;
      margin-left: 14px !important;
      margin-right: 14px !important;
      height: auto !important;
      max-height: none !important;
      object-fit: contain !important;
      object-position: center center !important;
      padding: 0 !important;
      background: transparent !important;
      display: block !important;
      border-radius: 24px 24px 0 0 !important;
    }
  }

  @media (max-width: 720px) {
    .flavor-card.youpo-card .flavor-img {
      width: calc(100% - 20px) !important;
      margin-left: 10px !important;
      margin-right: 10px !important;
    }
  }


  /* v99: You Po lower product card full-image display — no top/title crop */
  .flavor-card.youpo-card .flavor-img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    display: block !important;
    border-radius: 24px 24px 0 0 !important;
  }

  @media (max-width: 1400px) {
    .flavor-card.youpo-card .flavor-img {
      width: 100% !important;
      height: auto !important;
      margin: 0 !important;
      object-fit: contain !important;
      object-position: center center !important;
    }
  }

  @media (max-width: 720px) {
    .flavor-card.youpo-card .flavor-img {
      width: 100% !important;
      height: auto !important;
      margin: 0 !important;
      object-fit: contain !important;
      object-position: center center !important;
    }
  }


  /* v101: desktop premium grid — complete image display + softer brand background */
  @media (min-width: 1100px) {
    .flavor {
      background:
        radial-gradient(circle at 12% 16%, rgba(228,20,127,.06), transparent 24%),
        radial-gradient(circle at 88% 22%, rgba(60,10,101,.05), transparent 26%),
        linear-gradient(180deg, #fffaf7 0%, #fdf3f7 52%, #fffaf8 100%) !important;
    }

    .product-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 30px !important;
      align-items: stretch !important;
    }

    .product-grid .flavor-card {
      height: 100% !important;
      min-height: 0 !important;
      display: flex !important;
      flex-direction: column !important;
      overflow: hidden !important;
      border-radius: 36px !important;
      background: rgba(255,255,255,.92) !important;
      border: 1px solid rgba(33,0,63,.08) !important;
      box-shadow: 0 24px 70px rgba(33,0,63,.10) !important;
      backdrop-filter: blur(8px) !important;
    }

    .product-grid .flavor-card.featured {
      min-height: 0 !important;
    }

    .product-grid .flavor-img,
    .product-grid .featured .flavor-img,
    .product-grid .product-side .flavor-img,
    .product-grid .flavor-card.youpo-card .flavor-img,
    .product-grid .flavor-card.tea-card .flavor-img,
    .product-grid .flavor-card.douchi-card .flavor-img,
    .product-grid .flavor-card.douban-card .flavor-img,
    .product-grid .flavor-card.green-card .flavor-img {
      width: 100% !important;
      height: 430px !important;
      max-height: 430px !important;
      display: block !important;
      object-fit: contain !important;
      object-position: center top !important;
      margin: 0 !important;
      padding: 18px 18px 0 18px !important;
      box-sizing: border-box !important;
      background:
        linear-gradient(180deg, rgba(255,250,247,.98) 0%, rgba(251,241,246,.92) 100%),
        radial-gradient(circle at 50% 20%, rgba(228,20,127,.05), transparent 55%) !important;
      border-radius: 36px 36px 0 0 !important;
    }

    .product-grid .card-body {
      flex: 1 1 auto !important;
      display: flex !important;
      flex-direction: column !important;
      padding: 34px 34px 32px !important;
    }

    .product-grid .card-body h3 {
      min-height: 2.05em !important;
      display: flex !important;
      align-items: flex-start !important;
      font-size: clamp(2.25rem, 3vw, 3.55rem) !important;
    }

    .product-grid .descriptor {
      min-height: 2.6em !important;
      display: flex !important;
      align-items: flex-start !important;
    }

    .product-grid .card-body p {
      min-height: 4.9em !important;
      max-width: 100% !important;
    }

    .product-grid .chip-row {
      min-height: 42px !important;
      align-content: flex-start !important;
    }

    .product-grid .product-actions {
      margin-top: auto !important;
      padding-top: 8px !important;
      display: flex !important;
      gap: 12px !important;
      flex-wrap: wrap !important;
      align-items: center !important;
    }

    .product-grid .card-link {
      margin-top: 0 !important;
    }
  }


  /* v102: completed zh/en switching text for Hua Jiao Tea and Limited Gift Box cards/details */

  /* v103: completed zh/en switching text for Dancing Chili Sauce card/details */

  /* v104: desktop-only full-bleed premium product images */
  @media (min-width: 1100px) {
    .product-grid .flavor-img,
    .product-grid .featured .flavor-img,
    .product-grid .product-side .flavor-img,
    .product-grid .flavor-card.youpo-card .flavor-img,
    .product-grid .flavor-card.tea-card .flavor-img,
    .product-grid .flavor-card.douchi-card .flavor-img,
    .product-grid .flavor-card.douban-card .flavor-img,
    .product-grid .flavor-card.green-card .flavor-img {
      width: 100% !important;
      height: auto !important;
      max-height: none !important;
      aspect-ratio: auto !important;
      object-fit: contain !important;
      object-position: center center !important;
      margin: 0 !important;
      padding: 0 !important;
      display: block !important;
      background: transparent !important;
      border-radius: 36px 36px 0 0 !important;
    }

    .product-grid .flavor-card {
      background: #fff !important;
      overflow: hidden !important;
    }

    .product-grid .card-body {
      background: #fff !important;
    }
  }


  /* v105: tablet also uses full-bleed premium product images; phone portrait stays unchanged */
  @media (min-width: 768px) and (max-width: 1099px) {
    .product-grid .flavor-img,
    .product-grid .featured .flavor-img,
    .product-grid .product-side .flavor-img,
    .product-grid .flavor-card.youpo-card .flavor-img,
    .product-grid .flavor-card.tea-card .flavor-img,
    .product-grid .flavor-card.douchi-card .flavor-img,
    .product-grid .flavor-card.douban-card .flavor-img,
    .product-grid .flavor-card.green-card .flavor-img {
      width: 100% !important;
      height: auto !important;
      max-height: none !important;
      aspect-ratio: auto !important;
      object-fit: contain !important;
      object-position: center center !important;
      margin: 0 !important;
      padding: 0 !important;
      display: block !important;
      background: transparent !important;
      border-radius: 32px 32px 0 0 !important;
    }

    .product-grid .flavor-card {
      background: #fff !important;
      overflow: hidden !important;
    }

    .product-grid .card-body {
      background: #fff !important;
    }
  }


  /* v106: iPad/tablet-only fix for top hero carousel image cropping */
  @media (min-width: 768px) and (max-width: 1180px) and (pointer: coarse) {
    .hero-product-carousel .hero-carousel-track {
      min-height: 420px !important;
      height: 420px !important;
      background:
        radial-gradient(circle at 50% 34%, rgba(228,20,127,.10), transparent 48%),
        linear-gradient(135deg, rgba(33,0,63,.98), rgba(60,10,101,.96)) !important;
    }

    .hero-product-carousel .hero-slide img {
      width: 100% !important;
      height: 100% !important;
      min-height: 0 !important;
      object-fit: contain !important;
      object-position: center center !important;
      background: transparent !important;
    }

    .hero-product-carousel .hero-slide-caption {
      bottom: 20px !important;
      left: 22px !important;
      width: min(66%, 420px) !important;
    }
  }


  /* v107: stronger iPad/file-preview fix for top Hero carousel image cropping */
  @media (min-width: 600px) and (max-width: 1180px) and (min-height: 700px) {
    .hero-product-carousel {
      max-width: min(680px, 88vw) !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }

    .hero-product-carousel .hero-carousel-track {
      min-height: 0 !important;
      height: auto !important;
      aspect-ratio: 4 / 3 !important;
      background:
        radial-gradient(circle at 50% 34%, rgba(228,20,127,.10), transparent 48%),
        linear-gradient(135deg, rgba(33,0,63,.98), rgba(60,10,101,.96)) !important;
    }

    .hero-product-carousel .hero-slide {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      overflow: hidden !important;
    }

    .hero-product-carousel .hero-slide img {
      width: 100% !important;
      height: 100% !important;
      min-height: 0 !important;
      object-fit: contain !important;
      object-position: center center !important;
      background: transparent !important;
    }

    .hero-product-carousel .hero-slide-caption {
      bottom: 18px !important;
      left: 20px !important;
      right: auto !important;
      width: min(64%, 380px) !important;
    }
  }


  /* v108: iPad Hero full-bleed premium image with safer square-like frame */
  @media (min-width: 600px) and (max-width: 1180px) and (min-height: 700px) {
    .hero-product-carousel {
      max-width: min(720px, 82vw) !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }

    .hero-product-carousel .hero-carousel-track {
      min-height: 0 !important;
      height: auto !important;
      aspect-ratio: 1 / 1 !important;
      background:
        radial-gradient(circle at 50% 34%, rgba(228,20,127,.10), transparent 48%),
        linear-gradient(135deg, rgba(33,0,63,.98), rgba(60,10,101,.96)) !important;
    }

    .hero-product-carousel .hero-slide {
      display: block !important;
      overflow: hidden !important;
    }

    .hero-product-carousel .hero-slide img {
      width: 100% !important;
      height: 100% !important;
      min-height: 0 !important;
      object-fit: cover !important;
      object-position: center center !important;
      background: transparent !important;
    }

    .hero-product-carousel .hero-slide-caption {
      bottom: 22px !important;
      left: 22px !important;
      right: auto !important;
      width: min(64%, 390px) !important;
    }
  }


  

  /* v110: final public copy and bilingual text consistency pass */

  /* v111: fixed media title spacing, 豆豉 naming, and Douchi spiciness level consistency */

  /* v112: replaced Douchi Chili Sauce imagery with updated 豆豉辣椒醬 artwork */

  /* v113: replaced Dancing Chili Sauce detail guide image with matching main product artwork */

  /* v114: safe single-file image compression pass; layout and copy unchanged */


/* v117: phone-only hide the actual large hero cart CTA; keep nav/floating cart icons */
@media (max-width: 767px) {
  .hero-actions > .open-cart-link {
    display: none !important;
  }
}


/* v120: phone-only Chaotian product-card image fix.
   Keep the full square artwork visible so the top title/tagline and bottom spiciness/Vegan labels are not cropped. */
@media (max-width: 767px) {
  .chaotian-card .flavor-img {
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #25001f;
  }
}

