@import url("https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@500;600;700&family=IBM+Plex+Sans+Thai:wght@400;500;600&family=Press+Start+2P&display=swap");

    :root {
      --black: #05070a;
      --void: #090710;
      --ink: #11131a;
      --panel: rgba(8, 12, 14, 0.78);
      --panel-solid: #0b0f11;
      --lime: #c9ff2f;
      --lime-soft: rgba(201, 255, 47, 0.22);
      --mint: #63ffd2;
      --cyan: #32dcff;
      --amber: #ffb13b;
      --rose: #ff3f84;
      --cream: #f4f0df;
      --smoke: #aab5b5;
      --muted: rgba(244, 240, 223, 0.66);
      --line: rgba(244, 240, 223, 0.14);
      --display: "Chakra Petch", "IBM Plex Sans Thai", system-ui, sans-serif;
      --body: "IBM Plex Sans Thai", "Chakra Petch", system-ui, sans-serif;
      --pixel: "Press Start 2P", "Chakra Petch", monospace;
      --ease: cubic-bezier(0.16, 1, 0.3, 1);
      --ease-snap: cubic-bezier(0.86, 0, 0.07, 1);
      --vh: 1vh;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      background: var(--black);
      color: var(--cream);
      font-family: var(--body);
      text-rendering: geometricPrecision;
      -webkit-font-smoothing: antialiased;
    }

    body {
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      overflow: hidden;
      background: var(--black);
    }

    button,
    a {
      font: inherit;
    }

    button {
      -webkit-tap-highlight-color: transparent;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    .site {
      position: relative;
      height: 100vh;
      height: calc(var(--vh) * 100);
      overflow-x: hidden;
      overflow-y: auto;
      scroll-behavior: smooth;
      scroll-snap-type: y mandatory;
      background:
        radial-gradient(circle at 72% 18%, rgba(54, 91, 255, 0.1), transparent 28vw),
        radial-gradient(circle at 12% 78%, rgba(139, 38, 255, 0.12), transparent 30vw),
        linear-gradient(180deg, #05050c 0%, #030608 64%, #010202 100%);
      isolation: isolate;
    }

    .noise,
    .scanlines,
    .vignette,
    .pixel-grid {
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 40;
    }

    .noise {
      opacity: 0.08;
      mix-blend-mode: screen;
      background-image:
        radial-gradient(circle at 17% 19%, rgba(255,255,255,0.45) 0 1px, transparent 1px),
        radial-gradient(circle at 77% 44%, rgba(255,255,255,0.32) 0 1px, transparent 1px),
        radial-gradient(circle at 42% 81%, rgba(255,255,255,0.28) 0 1px, transparent 1px);
      background-size: 43px 47px, 61px 53px, 79px 83px;
    }

    .scanlines {
      opacity: 0.045;
      background: repeating-linear-gradient(
        to bottom,
        transparent 0,
        transparent 3px,
        rgba(0, 0, 0, 0.46) 3px,
        rgba(0, 0, 0, 0.46) 4px
      );
    }

    .vignette {
      z-index: 41;
      background:
        radial-gradient(ellipse at 50% 44%, transparent 56%, rgba(0, 0, 0, 0.42) 100%),
        linear-gradient(90deg, rgba(0,0,0,0.2), transparent 10%, transparent 90%, rgba(0,0,0,0.22));
    }

    .pixel-grid {
      z-index: 1;
      opacity: 0.07;
      background-image:
        linear-gradient(rgba(201, 255, 47, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201, 255, 47, 0.05) 1px, transparent 1px);
      background-size: 48px 48px;
      mask-image: linear-gradient(to bottom, transparent, black 24%, black 72%, transparent);
    }

    .topbar {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 20;
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 18px;
      min-height: 72px;
      padding: 18px clamp(18px, 4vw, 56px);
      pointer-events: none;
    }

    .brand-chip,
    .lang-toggle,
    .quick-actions {
      pointer-events: auto;
    }

    .brand-chip {
      justify-self: start;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: var(--cream);
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font: 700 13px/1 var(--display);
      text-shadow: 0 0 18px rgba(201, 255, 47, 0.24);
    }

    .brand-mark {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      color: var(--black);
      background: var(--lime);
      box-shadow:
        0 0 0 1px rgba(201, 255, 47, 0.42),
        0 0 22px rgba(201, 255, 47, 0.28);
      font: 800 18px/1 var(--display);
    }

    .lang-toggle {
      justify-self: center;
      display: grid;
      grid-template-columns: 1fr 1fr;
      width: 116px;
      height: 36px;
      border: 1px solid rgba(244, 240, 223, 0.17);
      background: rgba(4, 6, 7, 0.56);
      box-shadow: inset 0 0 0 1px rgba(201, 255, 47, 0.08);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      overflow: hidden;
    }

    .lang-toggle button {
      border: 0;
      background: transparent;
      color: var(--muted);
      cursor: pointer;
      font: 700 11px/1 var(--display);
      letter-spacing: 0.16em;
      text-transform: uppercase;
      transition: color 180ms ease, background 180ms ease;
    }

    .lang-toggle button.active {
      color: var(--black);
      background: var(--lime);
      box-shadow: 0 0 18px rgba(201, 255, 47, 0.32);
    }

    .quick-actions {
      justify-self: end;
      display: inline-flex;
      align-items: center;
      gap: 12px;
    }

    .time-chip {
      min-height: 34px;
      display: inline-grid;
      grid-template-columns: auto auto;
      align-items: center;
      gap: 8px;
      padding: 0 12px;
      border: 1px solid rgba(99, 255, 210, 0.26);
      color: rgba(244,240,223,0.8);
      background:
        radial-gradient(circle at 90% 20%, rgba(99,255,210,0.16), transparent 42%),
        rgba(4, 8, 7, 0.58);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.46),
        0 0 22px rgba(99,255,210,0.12);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      white-space: nowrap;
    }

    .time-chip span {
      color: var(--mint);
      font: 700 8px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      text-shadow: 0 0 12px rgba(99,255,210,0.48);
    }

    .time-chip strong {
      color: var(--cream);
      font: 700 11px/1 var(--display);
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .quick-actions a {
      min-height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 14px;
      border: 1px solid rgba(244, 240, 223, 0.14);
      color: rgba(244, 240, 223, 0.76);
      background: rgba(4, 6, 7, 0.42);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      transition: color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
    }

    .quick-actions a:hover {
      color: var(--lime);
      border-color: rgba(201, 255, 47, 0.44);
      box-shadow: 0 0 24px rgba(201, 255, 47, 0.16);
    }

    .quick-actions a.fb-action,
    .contact-actions a.fb-action,
    .mobile-actions a.fb-action {
      color: rgba(210, 228, 255, 0.84);
      border-color: rgba(75, 134, 255, 0.3);
      background:
        radial-gradient(circle at 80% 18%, rgba(75,134,255,0.18), transparent 42%),
        rgba(4, 7, 14, 0.48);
      box-shadow: 0 0 20px rgba(75,134,255,0.08);
    }

    .quick-actions a.fb-action:hover,
    .contact-actions a.fb-action:hover,
    .mobile-actions a.fb-action:hover {
      color: #dbe7ff;
      border-color: rgba(91, 150, 255, 0.62);
      box-shadow: 0 0 26px rgba(75,134,255,0.24);
    }

    .section-rail {
      position: fixed;
      right: 0;
      top: 50%;
      z-index: 26;
      display: grid;
      gap: 8px;
      width: 48px;
      padding: 11px 8px 11px 10px;
      border: 1px solid color-mix(in srgb, var(--rail-accent, var(--lime)) 42%, transparent);
      border-right: 0;
      border-radius: 14px 0 0 14px;
      background:
        linear-gradient(180deg, color-mix(in srgb, var(--rail-accent, var(--lime)) 10%, transparent), transparent),
        rgba(3, 6, 5, 0.84);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.03),
        0 0 28px color-mix(in srgb, var(--rail-accent, var(--lime)) 18%, transparent),
        0 18px 42px rgba(0,0,0,0.42);
      transform: translateY(-50%);
      pointer-events: auto;
      overflow: hidden;
      transition: width 320ms var(--ease), border-color 220ms ease, box-shadow 220ms ease;
    }

    .section-rail::before {
      content: "";
      position: absolute;
      left: 0;
      top: 10px;
      bottom: 10px;
      width: 3px;
      background: var(--rail-accent, var(--lime));
      box-shadow:
        0 0 14px var(--rail-accent, var(--lime)),
        0 0 34px color-mix(in srgb, var(--rail-accent, var(--lime)) 38%, transparent);
    }

    .section-rail::after {
      content: "";
      position: absolute;
      right: 15px;
      top: 50%;
      width: 9px;
      height: 42px;
      border: 1px solid color-mix(in srgb, var(--rail-accent, var(--lime)) 58%, transparent);
      border-radius: 999px;
      background:
        linear-gradient(to bottom, transparent, color-mix(in srgb, var(--rail-accent, var(--lime)) 42%, transparent), transparent);
      box-shadow:
        0 0 12px color-mix(in srgb, var(--rail-accent, var(--lime)) 52%, transparent),
        inset 0 0 10px color-mix(in srgb, var(--rail-accent, var(--lime)) 24%, transparent);
      transform: translateY(-50%);
      opacity: 0.9;
      transition: opacity 160ms ease;
      pointer-events: none;
    }

    .section-rail:hover,
    .section-rail:focus-within {
      width: 172px;
      border-color: color-mix(in srgb, var(--rail-accent, var(--lime)) 64%, transparent);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.04),
        0 0 34px color-mix(in srgb, var(--rail-accent, var(--lime)) 26%, transparent),
        0 18px 42px rgba(0,0,0,0.5);
    }

    .section-rail:hover::after,
    .section-rail:focus-within::after {
      opacity: 0;
    }

    .section-rail button {
      position: relative;
      width: 148px;
      min-height: 32px;
      display: grid;
      grid-template-columns: 28px 1fr;
      align-items: center;
      gap: 8px;
      border: 1px solid transparent;
      background: transparent;
      color: rgba(244,240,223,0.46);
      cursor: pointer;
      overflow: hidden;
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.02em;
      text-transform: uppercase;
      transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
    }

    .section-rail button::before {
      content: "";
      position: absolute;
      left: 10px;
      top: 50%;
      width: 8px;
      height: 8px;
      background: currentColor;
      box-shadow: 0 0 14px currentColor;
      transform: translateY(-50%);
    }

    .section-rail span {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 28px;
      opacity: 0;
    }

    .section-rail b {
      min-width: 78px;
      opacity: 0;
      transform: translateX(-5px);
      transition: opacity 180ms ease, transform 240ms var(--ease);
      white-space: nowrap;
    }

    .section-rail button:hover,
    .section-rail button.active {
      color: var(--rail-accent, var(--lime));
      border-color: color-mix(in srgb, var(--rail-accent, var(--lime)) 42%, transparent);
      background: color-mix(in srgb, var(--rail-accent, var(--lime)) 10%, rgba(0,0,0,0.38));
      box-shadow:
        inset 0 0 0 1px color-mix(in srgb, var(--rail-accent, var(--lime)) 9%, transparent),
        0 0 22px color-mix(in srgb, var(--rail-accent, var(--lime)) 14%, transparent),
        0 12px 34px rgba(0,0,0,0.42);
    }

    .section-rail button.active b,
    .section-rail button:hover b {
      opacity: 1;
      transform: translateX(0);
    }

    .hero {
      position: relative;
      z-index: 2;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(500px, 0.86fr) minmax(520px, 1.14fr);
      align-items: center;
      gap: clamp(28px, 4.2vw, 86px);
      padding: 96px clamp(22px, 5.2vw, 78px) 86px;
      overflow: hidden;
    }

    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        radial-gradient(circle at 70% 42%, rgba(70, 95, 255, 0.26), transparent 28%),
        radial-gradient(circle at 48% 58%, rgba(178, 38, 255, 0.13), transparent 31%),
        radial-gradient(circle at 20% 44%, rgba(201, 255, 47, 0.08), transparent 24%),
        linear-gradient(90deg, rgba(0,0,0,0.78) 0%, rgba(2,5,9,0.5) 40%, rgba(1,2,5,0.72) 100%);
      opacity: 0.96;
      pointer-events: none;
    }

    .hero::after {
      content: "";
      position: absolute;
      inset: -20%;
      z-index: 1;
      pointer-events: none;
      background-image:
        radial-gradient(circle, rgba(201,255,47,0.9) 0 1px, transparent 1.6px),
        radial-gradient(circle, rgba(114,138,255,0.75) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(185,68,255,0.52) 0 1px, transparent 1.8px),
        radial-gradient(circle, rgba(99,255,210,0.58) 0 1px, transparent 1.5px);
      background-size: 118px 112px, 164px 156px, 214px 206px, 286px 264px;
      background-position: 0 0, 42px 28px, 96px 72px, 130px 84px;
      filter: drop-shadow(0 0 5px rgba(201,255,47,0.35));
      opacity: 0.48;
      animation: galaxyDrift 34s linear infinite;
    }

    .hero-copy {
      position: relative;
      z-index: 5;
      width: min(100%, 700px);
      min-width: 0;
    }

    .hero-copy::before {
      content: "";
      position: absolute;
      inset: -32px -30px -28px -34px;
      z-index: -1;
      background:
        radial-gradient(ellipse at 22% 44%, rgba(0,0,0,0.82), transparent 72%),
        linear-gradient(90deg, rgba(0,0,0,0.48), transparent);
      filter: blur(2px);
      pointer-events: none;
    }

    .kicker-row {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      min-height: 30px;
      padding: 0 12px;
      border: 1px solid rgba(201, 255, 47, 0.26);
      color: #d9ff62;
      background: rgba(201, 255, 47, 0.09);
      box-shadow: inset 0 0 0 1px rgba(0,0,0,0.36);
      font: 700 10px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 24px;
    }

    .kicker-dot {
      width: 7px;
      height: 7px;
      background: var(--lime);
      box-shadow: 0 0 14px var(--lime);
    }

    .hero-title-wrap {
      position: relative;
      overflow: visible;
      padding: 4px 0 8px;
    }

    .hero-title {
      color: #fffbe8;
      font-family: var(--display);
      font-size: clamp(54px, 7.15vw, 108px);
      font-weight: 700;
      line-height: 0.9;
      letter-spacing: 0;
      text-transform: uppercase;
      max-width: 100%;
      text-shadow:
        0 2px 0 rgba(0,0,0,0.42),
        0 0 32px rgba(201, 255, 47, 0.24),
        0 0 92px rgba(95, 140, 255, 0.16);
    }

    .hero-title .thin {
      display: block;
      color: rgba(255, 251, 232, 0.82);
      font-size: 0.46em;
      line-height: 1;
      letter-spacing: 0.12em;
      margin-top: 14px;
    }

    .hero-line {
      max-width: 500px;
      margin-top: 24px;
      color: rgba(255, 251, 232, 0.9);
      font-size: clamp(17px, 2.2vw, 23px);
      font-weight: 500;
      line-height: 1.45;
      text-shadow: 0 2px 18px rgba(0,0,0,0.86);
    }

    .hero-line strong {
      color: var(--mint);
      font-weight: 700;
    }

    .hero-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 28px;
    }

    .meta-pill {
      min-height: 35px;
      display: inline-flex;
      align-items: center;
      border: 1px solid rgba(244, 240, 223, 0.14);
      padding: 0 13px;
      color: rgba(244, 240, 223, 0.74);
      background: rgba(0, 0, 0, 0.28);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .meta-pill.hot {
      color: var(--black);
      border-color: var(--lime);
      background: var(--lime);
      box-shadow: 0 0 26px rgba(201, 255, 47, 0.18);
    }

    .hero-control-row {
      display: flex;
      align-items: center;
      gap: 18px;
      margin-top: 34px;
      flex-wrap: wrap;
    }

    .light-control {
      position: relative;
      width: min(360px, 100%);
      min-height: 76px;
      border: 0;
      border-radius: 999px;
      background: transparent;
      cursor: pointer;
      perspective: 800px;
      transform: translateZ(0);
    }

    .light-control:focus-visible {
      outline: 2px solid var(--mint);
      outline-offset: 6px;
    }

    .light-face {
      position: relative;
      min-height: 76px;
      display: grid;
      grid-template-columns: 126px 1fr 34px;
      align-items: center;
      gap: 16px;
      padding: 9px 17px 9px 10px;
      border: 1px solid rgba(255, 177, 59, 0.42);
      border-radius: 999px;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), transparent 40%),
        linear-gradient(135deg, rgba(255, 177, 59, 0.23), rgba(201, 255, 47, 0.08) 45%, rgba(255, 63, 132, 0.14));
      box-shadow:
        inset 0 2px 0 rgba(255,255,255,0.12),
        inset 0 -10px 24px rgba(0,0,0,0.34),
        0 10px 0 rgba(0,0,0,0.42),
        0 18px 46px rgba(255, 177, 59, 0.13);
      transform: rotateX(7deg) translateY(0);
      transition: transform 260ms var(--ease), box-shadow 260ms var(--ease), border-color 260ms ease;
      overflow: hidden;
    }

    .light-control:hover .light-face {
      border-color: rgba(201, 255, 47, 0.66);
      transform: rotateX(3deg) translateY(-3px);
      box-shadow:
        inset 0 2px 0 rgba(255,255,255,0.16),
        inset 0 -10px 24px rgba(0,0,0,0.32),
        0 12px 0 rgba(0,0,0,0.4),
        0 24px 60px rgba(201, 255, 47, 0.16);
    }

    .light-control:active .light-face {
      transform: rotateX(0) translateY(5px);
      box-shadow:
        inset 0 2px 0 rgba(255,255,255,0.12),
        inset 0 -8px 18px rgba(0,0,0,0.4),
        0 4px 0 rgba(0,0,0,0.55),
        0 10px 30px rgba(201, 255, 47, 0.12);
    }

    .joint-strip {
      position: relative;
      height: 54px;
      border-radius: 999px;
      background:
        linear-gradient(90deg, rgba(0,0,0,0.18), transparent 22%, transparent 74%, rgba(0,0,0,0.3)),
        url("/assets/site/hero-joint.webp") center / 190px auto;
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.16),
        inset 0 -8px 18px rgba(0,0,0,0.38);
      overflow: hidden;
    }

    .joint-strip::before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, rgba(255,255,255,0.26), transparent 35%, rgba(255,255,255,0.08));
      mix-blend-mode: screen;
      opacity: 0.58;
    }

    .light-copy {
      color: var(--cream);
      font: 700 18px/1 var(--display);
      letter-spacing: 0.12em;
      text-align: left;
      text-transform: uppercase;
      text-shadow: 0 0 14px rgba(201, 255, 47, 0.25);
      white-space: nowrap;
    }

    .ember {
      position: relative;
      width: 25px;
      height: 25px;
      border-radius: 50%;
      background:
        radial-gradient(circle, #fff4a9 0 15%, #ffb13b 16% 38%, #ff4e1a 39% 58%, rgba(255, 78, 26, 0.1) 59%);
      box-shadow:
        0 0 18px rgba(255, 177, 59, 0.62),
        0 0 38px rgba(255, 63, 132, 0.34);
      opacity: 0.44;
      transform: scale(0.74);
      transition: opacity 260ms ease, transform 260ms var(--ease), box-shadow 260ms ease;
    }

    .ember::after {
      content: "";
      position: absolute;
      inset: -12px;
      border-radius: inherit;
      background: radial-gradient(circle, rgba(255, 177, 59, 0.32), transparent 62%);
      opacity: 0;
      transition: opacity 260ms ease;
    }

    body.lit .ember {
      opacity: 1;
      transform: scale(1);
      box-shadow:
        0 0 22px rgba(255, 244, 169, 0.9),
        0 0 54px rgba(255, 177, 59, 0.72),
        0 0 88px rgba(255, 63, 132, 0.36);
    }

    body.lit .ember::after {
      opacity: 1;
      animation: emberPulse 1.4s ease-in-out infinite;
    }

    .mini-note {
      color: rgba(244, 240, 223, 0.5);
      font: 700 10px/1.6 var(--display);
      letter-spacing: 0.13em;
      text-transform: uppercase;
      max-width: 190px;
    }

    .hero-object {
      position: relative;
      min-height: min(650px, 76vh);
      display: grid;
      place-items: center;
      isolation: isolate;
      cursor: grab;
      z-index: 4;
    }

    .hero-object:active {
      cursor: grabbing;
    }

    .hero-object::before {
      content: "";
      position: absolute;
      z-index: 0;
      width: min(690px, 96%);
      height: min(610px, 86%);
      border: 0;
      border-radius: 50%;
      background:
        radial-gradient(circle at 50% 46%, rgba(99, 125, 255, 0.24), transparent 38%),
        radial-gradient(circle at 46% 56%, rgba(190, 70, 255, 0.18), transparent 52%),
        radial-gradient(circle, rgba(201,255,47,0.06), transparent 62%);
      filter: blur(8px);
      opacity: 0.86;
      box-shadow: none;
    }

    .model-wrap {
      position: relative;
      z-index: 3;
      width: min(610px, 84vw);
      height: min(520px, 61vh);
      display: grid;
      place-items: center;
      filter:
        drop-shadow(0 38px 72px rgba(0,0,0,0.72))
        drop-shadow(0 0 42px rgba(100, 135, 255, 0.1));
      touch-action: none;
    }

    #logo-canvas {
      width: 100%;
      height: 100%;
      display: block;
    }

    .model-wrap + .spin-hint {
      opacity: 0;
      pointer-events: none;
      transition: opacity 260ms ease, transform 260ms var(--ease);
    }

    .model-wrap.ready + .spin-hint {
      opacity: 1;
      pointer-events: auto;
    }

    .model-wrap.ready::before {
      opacity: 0;
      transform: translate(-50%, -50%) scale(0.92);
    }

    .spin-hint {
      position: absolute;
      left: 50%;
      bottom: clamp(34px, 8vh, 74px);
      z-index: 5;
      transform: translateX(-50%);
      display: inline-flex;
      align-items: center;
      gap: 9px;
      min-height: 28px;
      padding: 0 11px;
      border: 1px solid rgba(201, 255, 47, 0.18);
      color: rgba(201, 255, 47, 0.74);
      background: rgba(0, 0, 0, 0.34);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.42),
        0 0 22px rgba(201,255,47,0.08);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      pointer-events: none;
    }

    .spin-hint::before {
      content: "";
      width: 7px;
      height: 7px;
      background: var(--lime);
      box-shadow: 0 0 12px rgba(201,255,47,0.78);
    }

    .status-rail {
      position: absolute;
      right: clamp(16px, 4vw, 42px);
      bottom: 84px;
      z-index: 6;
      display: none;
      gap: 8px;
      color: rgba(244, 240, 223, 0.5);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }

    .status-rail span {
      display: inline-flex;
      align-items: center;
      gap: 9px;
    }

    .status-rail span::before {
      content: "";
      width: 8px;
      height: 8px;
      background: var(--lime);
      box-shadow: 0 0 12px rgba(201, 255, 47, 0.6);
    }

    .smoke {
      position: absolute;
      left: 16%;
      bottom: 18%;
      z-index: 4;
      width: 170px;
      height: 220px;
      pointer-events: none;
      opacity: 0;
      transition: opacity 400ms ease;
    }

    .smoke i {
      position: absolute;
      bottom: 0;
      width: 28px;
      height: 120px;
      border-radius: 999px;
      background: linear-gradient(to top, rgba(244,240,223,0.26), transparent);
      filter: blur(10px);
      transform-origin: bottom center;
      animation: smokeRise 3s ease-in-out infinite;
    }

    .smoke i:nth-child(2) {
      left: 42px;
      animation-delay: 0.45s;
      animation-duration: 3.7s;
    }

    .smoke i:nth-child(3) {
      left: 88px;
      animation-delay: 0.9s;
      animation-duration: 4.1s;
    }

    body.lit .smoke {
      opacity: 0.68;
    }

    .copy-flip {
      display: inline-grid;
      position: relative;
      min-width: min(100%, 520px);
    }

    .copy-flip > span {
      grid-area: 1 / 1;
      transition: transform 520ms var(--ease), opacity 320ms ease;
      backface-visibility: hidden;
    }

    .copy-alt {
      opacity: 0;
      transform: translateY(16px) rotateX(-22deg);
    }

    body.lit .copy-main {
      opacity: 0;
      transform: translateY(-16px) rotateX(22deg);
    }

    body.lit .copy-alt {
      opacity: 1;
      transform: translateY(0) rotateX(0);
    }

    body.lit .site {
      background:
        radial-gradient(circle at 72% 20%, rgba(92, 115, 255, 0.15), transparent 28vw),
        radial-gradient(circle at 16% 78%, rgba(184, 55, 255, 0.13), transparent 30vw),
        linear-gradient(180deg, #070715 0%, #060912 62%, #020304 100%);
    }

    body.lit .hero-object::before {
      background:
        radial-gradient(circle at 50% 46%, rgba(87, 120, 255, 0.24), transparent 42%),
        radial-gradient(circle at 50% 55%, rgba(190, 70, 255, 0.2), transparent 56%),
        radial-gradient(circle, rgba(80, 110, 255, 0.08), transparent 66%);
      box-shadow: none;
    }

    body.lit .spin-hint {
      border-color: rgba(118, 138, 255, 0.22);
      color: rgba(190, 206, 255, 0.78);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.42),
        0 0 26px rgba(112, 140, 255, 0.12);
    }

    body.lit .spin-hint::before {
      background: #8aa2ff;
      box-shadow: 0 0 14px rgba(138, 162, 255, 0.9);
    }

    body.lit .light-face {
      border-color: rgba(112, 140, 255, 0.72);
      box-shadow:
        inset 0 2px 0 rgba(255,255,255,0.16),
        inset 0 -10px 24px rgba(0,0,0,0.32),
        0 12px 0 rgba(0,0,0,0.38),
        0 22px 68px rgba(112, 140, 255, 0.22);
    }

    .branch-slide {
      position: relative;
      z-index: 3;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(280px, 0.78fr) minmax(520px, 1.22fr);
      align-items: center;
      gap: clamp(26px, 4vw, 66px);
      padding: 100px clamp(18px, 6vw, 86px) 82px;
      overflow: hidden;
      background:
        radial-gradient(circle at 28% 20%, rgba(201, 255, 47, 0.1), transparent 26vw),
        radial-gradient(circle at 82% 72%, rgba(50, 220, 255, 0.09), transparent 28vw),
        linear-gradient(180deg, #05070a 0%, #08110f 54%, #040506 100%);
    }

    .branch-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(201,255,47,0.07) 1px, transparent 1px),
        linear-gradient(rgba(201,255,47,0.05) 1px, transparent 1px);
      background-size: 64px 64px;
      transform: perspective(700px) rotateX(58deg) translateY(18%);
      transform-origin: bottom;
      opacity: 0.34;
      pointer-events: none;
    }

    .branch-slide::after {
      content: "";
      position: absolute;
      left: 7%;
      right: 7%;
      bottom: 62px;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(99,255,210,0.44), rgba(201,255,47,0.38), transparent);
      box-shadow: 0 0 18px rgba(99,255,210,0.24);
      pointer-events: none;
    }

    .branch-copy {
      position: relative;
      z-index: 4;
      max-width: 460px;
    }

    .branch-eyebrow {
      display: inline-flex;
      min-height: 29px;
      align-items: center;
      padding: 0 11px;
      border: 1px solid rgba(99, 255, 210, 0.28);
      color: var(--mint);
      background: rgba(99, 255, 210, 0.06);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .branch-title {
      color: var(--cream);
      font: 700 clamp(44px, 6.8vw, 94px)/0.88 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 48px rgba(99,255,210,0.16);
    }

    .branch-title span {
      display: block;
      color: var(--lime);
    }

    .branch-intro {
      max-width: 420px;
      margin-top: 24px;
      color: rgba(244, 240, 223, 0.76);
      font-size: clamp(16px, 1.7vw, 20px);
      line-height: 1.5;
    }

    .branch-seo-copy,
    .counter-seo-copy,
    .contact-seo-copy {
      color: rgba(244, 240, 223, 0.63);
      font-size: clamp(13px, 1.25vw, 15px);
      line-height: 1.55;
    }

    .branch-seo-copy {
      max-width: 430px;
      margin-top: 16px;
    }

    .branch-small {
      margin-top: 28px;
      display: grid;
      gap: 11px;
      color: rgba(244, 240, 223, 0.52);
      font: 700 10px/1.4 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .branch-small span {
      display: inline-flex;
      align-items: center;
      gap: 10px;
    }

    .branch-small span::before {
      content: "";
      width: 8px;
      height: 8px;
      background: var(--mint);
      box-shadow: 0 0 14px rgba(99,255,210,0.56);
    }

    .branch-grid {
      position: relative;
      z-index: 4;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: clamp(12px, 1.4vw, 18px);
      perspective: 1300px;
    }

    .branch-card {
      position: relative;
      min-height: clamp(430px, 58vh, 610px);
      overflow: hidden;
      border: 1px solid rgba(244, 240, 223, 0.13);
      background: rgba(8, 12, 13, 0.72);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.62),
        0 26px 72px rgba(0,0,0,0.42);
      transform: translateZ(0) skewX(-2deg);
      transition: transform 320ms var(--ease), border-color 240ms ease, box-shadow 240ms ease;
    }

    .branch-card:nth-child(2) {
      transform: translateY(34px) skewX(-2deg);
    }

    .branch-card:nth-child(3) {
      transform: translateY(-18px) skewX(-2deg);
    }

    .branch-card:hover {
      border-color: rgba(201, 255, 47, 0.44);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.62),
        0 30px 86px rgba(0,0,0,0.52),
        0 0 52px rgba(201,255,47,0.12);
    }

    .branch-card:nth-child(1):hover {
      transform: translateY(-10px) rotateY(4deg) skewX(-2deg);
    }

    .branch-card:nth-child(2):hover {
      transform: translateY(22px) rotateY(0deg) skewX(-2deg);
    }

    .branch-card:nth-child(3):hover {
      transform: translateY(-28px) rotateY(-4deg) skewX(-2deg);
    }

    .branch-photo {
      position: absolute;
      inset: 0;
      background: var(--img) center / cover no-repeat;
      transform: skewX(2deg) scale(1.08);
      filter: saturate(1.08) contrast(1.08) brightness(0.72);
    }

    .branch-card:nth-child(1) .branch-photo {
      background-position: 50% 50%;
    }

    .branch-card:nth-child(2) .branch-photo {
      background-position: 48% 38%;
    }

    .branch-card:nth-child(3) .branch-photo {
      background-position: 48% 42%;
    }

    .branch-card::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      background:
        linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.34) 44%, rgba(2,3,4,0.92) 100%),
        linear-gradient(90deg, rgba(0,0,0,0.42), transparent 34%, rgba(0,0,0,0.26));
    }

    .branch-card::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        repeating-linear-gradient(to bottom, rgba(255,255,255,0.08) 0 1px, transparent 1px 5px),
        linear-gradient(135deg, rgba(201,255,47,0.12), transparent 28%, rgba(50,220,255,0.1));
      opacity: 0.22;
      mix-blend-mode: screen;
    }

    .branch-tag {
      position: absolute;
      top: 16px;
      left: 16px;
      z-index: 3;
      display: inline-flex;
      min-height: 30px;
      align-items: center;
      padding: 0 10px;
      color: var(--black);
      background: var(--lime);
      box-shadow: 0 0 24px rgba(201,255,47,0.24);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .branch-number {
      position: absolute;
      top: 14px;
      right: 16px;
      z-index: 3;
      color: rgba(244, 240, 223, 0.58);
      font: 700 12px/1 var(--pixel);
      text-shadow: 0 0 14px rgba(0,0,0,0.8);
    }

    .branch-content {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 3;
      padding: 24px 20px 20px;
      transform: skewX(2deg);
    }

    .branch-name {
      color: var(--cream);
      font: 700 clamp(26px, 2.6vw, 38px)/0.95 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 30px rgba(0,0,0,0.78);
    }

    .branch-note {
      min-height: 58px;
      margin-top: 12px;
      color: rgba(244, 240, 223, 0.72);
      font-size: 14px;
      line-height: 1.42;
    }

    .branch-actions {
      display: flex;
      gap: 8px;
      margin-top: 18px;
    }

    .branch-actions a {
      min-height: 38px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(244, 240, 223, 0.16);
      padding: 0 12px;
      color: rgba(244, 240, 223, 0.8);
      background: rgba(0,0,0,0.42);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      transition: color 180ms ease, border-color 180ms ease, background 180ms ease;
    }

    .branch-actions a:first-child {
      color: var(--black);
      border-color: var(--mint);
      background: var(--mint);
    }

    .branch-actions a:hover {
      color: var(--lime);
      border-color: rgba(201, 255, 47, 0.52);
      background: rgba(0,0,0,0.58);
    }

    .counter-slide {
      --active-product-image: url("/assets/site/product-flower.jpg");
      --active-product-accent: #c9ff2f;
      --active-product-position: center;
      position: relative;
      z-index: 3;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(520px, 1.08fr) minmax(330px, 0.92fr);
      align-items: center;
      gap: clamp(28px, 4vw, 74px);
      padding: 96px clamp(18px, 6vw, 86px) 82px;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 20% 62%, rgba(201, 255, 47, 0.09), transparent 30vw),
        radial-gradient(circle at 74% 26%, rgba(99, 255, 210, 0.11), transparent 24vw),
        radial-gradient(circle at 46% 90%, rgba(61, 255, 160, 0.07), transparent 34vw),
        linear-gradient(180deg, #030706 0%, #06110d 45%, #020403 100%);
    }

    .counter-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        linear-gradient(90deg, rgba(0,0,0,0.64), transparent 42%, rgba(0,0,0,0.38)),
        repeating-linear-gradient(90deg, rgba(201,255,47,0.032) 0 1px, transparent 1px 42px),
        repeating-linear-gradient(0deg, rgba(99,255,210,0.022) 0 1px, transparent 1px 42px);
      mask-image: radial-gradient(circle at 50% 52%, black 0%, transparent 74%);
      opacity: 0.68;
      pointer-events: none;
    }

    .counter-slide::after {
      content: "";
      position: absolute;
      inset: -22%;
      z-index: 0;
      pointer-events: none;
      background-image:
        radial-gradient(circle, rgba(201,255,47,0.92) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(99,255,210,0.62) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(255,177,59,0.34) 0 1px, transparent 1.7px);
      background-size: 124px 118px, 194px 178px, 288px 246px;
      background-position: 22px 10px, 76px 54px, 138px 100px;
      filter: drop-shadow(0 0 6px rgba(201,255,47,0.28));
      opacity: 0.32;
      animation: galaxyDrift 46s linear infinite;
      pointer-events: none;
    }

    .counter-stage {
      position: relative;
      z-index: 3;
      min-height: min(620px, 72vh);
      display: grid;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      grid-template-rows: repeat(6, minmax(0, 1fr));
      gap: clamp(10px, 1.4vw, 16px);
      padding: 8px 0;
    }

    .counter-stage::before {
      content: "";
      position: absolute;
      inset: 6% 4% 5% 4%;
      z-index: 1;
      border: 1px solid color-mix(in srgb, var(--active-product-accent) 42%, transparent);
      background:
        radial-gradient(circle at 56% 44%, color-mix(in srgb, var(--active-product-accent) 14%, transparent), transparent 50%),
        linear-gradient(135deg, rgba(0,0,0,0.36), transparent 66%);
      box-shadow:
        0 0 58px color-mix(in srgb, var(--active-product-accent) 16%, transparent),
        inset 0 0 34px rgba(0,0,0,0.5);
      transform: skewX(-2deg);
      pointer-events: none;
    }

    .counter-stage::after {
      content: "";
      position: absolute;
      left: 0;
      right: 13%;
      bottom: 5%;
      z-index: 5;
      height: 1px;
      background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--active-product-accent) 75%, transparent), transparent);
      box-shadow: 0 0 16px color-mix(in srgb, var(--active-product-accent) 44%, transparent);
      pointer-events: none;
    }

    .counter-main-photo {
      position: relative;
      inset: auto;
      grid-column: 1 / 6;
      grid-row: 1 / 6;
      overflow: hidden;
      z-index: 2;
      border: 1px solid color-mix(in srgb, var(--active-product-accent) 38%, rgba(244,240,223,0.1));
      background: #0c1012;
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.68),
        0 32px 90px rgba(0,0,0,0.52),
        0 0 58px color-mix(in srgb, var(--active-product-accent) 13%, transparent);
      transform: skewX(-2deg);
      transition: border-color 260ms ease, box-shadow 260ms ease;
    }

    .counter-main-photo::before {
      content: "";
      position: absolute;
      inset: -7%;
      background: url("/assets/site/counter-wide.webp") center 44% / cover no-repeat;
      transform: skewX(2deg) scale(1.045);
      filter: saturate(1.12) contrast(1.07) brightness(0.82);
      transition: background-image 220ms ease, filter 240ms ease, transform 420ms var(--ease);
    }

    .counter-main-photo::after,
    .counter-portrait::after,
    .counter-cat::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 40% 35%, transparent 0 32%, rgba(0,0,0,0.34) 74%),
        linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.42)),
        repeating-linear-gradient(to bottom, rgba(255,255,255,0.08) 0 1px, transparent 1px 5px);
      opacity: 0.2;
      mix-blend-mode: screen;
      pointer-events: none;
    }

    .counter-portrait,
    .counter-cat,
    .counter-sticker {
      position: absolute;
      z-index: 4;
      overflow: hidden;
      border: 1px solid rgba(244, 240, 223, 0.15);
      background: #0d1112;
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.66),
        0 22px 60px rgba(0,0,0,0.48);
    }

    .counter-portrait {
      position: relative;
      right: auto;
      top: auto;
      grid-column: 4 / 7;
      grid-row: 1 / 3;
      width: auto;
      height: auto;
      transform: skewX(2deg) translate3d(10px, -8px, 0);
      opacity: 0.96;
    }

    .counter-portrait::before {
      content: "";
      position: absolute;
      inset: -5%;
      background: url("/assets/site/counter-smile.webp") center 45% / cover no-repeat;
      transform: skewX(-2deg) scale(1.05);
      filter: saturate(1.14) contrast(1.06) brightness(0.88);
    }

    .counter-cat {
      position: relative;
      left: auto;
      bottom: auto;
      grid-column: 1 / 3;
      grid-row: 5 / 7;
      width: auto;
      height: auto;
      transform: skewX(3deg) translate3d(-7px, 8px, 0);
      opacity: 0.9;
    }

    .counter-cat::before {
      content: "";
      position: absolute;
      inset: -5%;
      background: url("/assets/site/cat-counter.webp") center 42% / cover no-repeat;
      transform: skewX(-3deg) scale(1.05);
      filter: saturate(1.12) contrast(1.06) brightness(0.82);
    }

    .counter-sticker {
      position: relative;
      right: auto;
      bottom: auto;
      grid-column: 4 / 7;
      grid-row: 5 / 7;
      width: auto;
      height: auto;
      transform: skewX(-2deg) translate3d(5px, 10px, 0);
      opacity: 0.92;
    }

    .counter-sticker::before {
      content: "";
      position: absolute;
      inset: -5%;
      background: url("/assets/site/door-stickers.webp") center / cover no-repeat;
      transform: skewX(2deg) scale(1.05);
      filter: saturate(1.18) contrast(1.08) brightness(0.84);
    }

    .counter-label {
      position: absolute;
      z-index: 5;
      left: 6%;
      top: 9%;
      display: inline-flex;
      min-height: 34px;
      align-items: center;
      padding: 0 12px;
      color: var(--black);
      background: var(--active-product-accent);
      box-shadow: 0 0 30px color-mix(in srgb, var(--active-product-accent) 36%, transparent);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      transition: background 220ms ease, box-shadow 220ms ease;
    }

    .counter-readout {
      position: absolute;
      right: 12%;
      bottom: 10%;
      z-index: 5;
      display: grid;
      gap: 6px;
      max-width: 230px;
      padding: 15px 16px 14px;
      border: 1px solid color-mix(in srgb, var(--active-product-accent) 34%, transparent);
      background:
        linear-gradient(180deg, rgba(0,0,0,0.72), rgba(0,0,0,0.48)),
        rgba(5, 9, 7, 0.7);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.03),
        0 0 28px color-mix(in srgb, var(--active-product-accent) 12%, transparent);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
    }

    .counter-readout strong {
      color: color-mix(in srgb, var(--active-product-accent) 88%, var(--cream));
      font: 700 13px/1 var(--pixel);
      letter-spacing: 0.02em;
      text-transform: uppercase;
      text-shadow: 0 0 16px color-mix(in srgb, var(--active-product-accent) 34%, transparent);
    }

    .counter-readout span {
      color: rgba(244,240,223,0.62);
      font: 600 12px/1.45 var(--body);
    }

    .counter-copy {
      position: relative;
      z-index: 4;
      max-width: 500px;
      justify-self: end;
    }

    .counter-eyebrow {
      display: inline-flex;
      min-height: 29px;
      align-items: center;
      padding: 0 11px;
      border: 1px solid rgba(255, 177, 59, 0.34);
      color: var(--amber);
      background: rgba(255, 177, 59, 0.06);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .counter-title {
      color: var(--cream);
      font: 700 clamp(46px, 7vw, 98px)/0.9 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 46px rgba(255,177,59,0.14);
    }

    .counter-title span {
      display: block;
      color: var(--amber);
    }

    .counter-intro {
      margin-top: 23px;
      color: rgba(244, 240, 223, 0.76);
      font-size: clamp(16px, 1.7vw, 20px);
      line-height: 1.5;
    }

    .counter-seo-copy {
      margin-top: 14px;
    }

    .product-preview-card {
      position: relative;
      display: grid;
      grid-template-columns: minmax(118px, 0.86fr) 1fr;
      align-items: stretch;
      min-height: 124px;
      margin-top: 24px;
      overflow: hidden;
      border: 1px solid color-mix(in srgb, var(--active-product-accent) 42%, rgba(244,240,223,0.1));
      background:
        radial-gradient(circle at 84% 18%, color-mix(in srgb, var(--active-product-accent) 18%, transparent), transparent 42%),
        rgba(0,0,0,0.44);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.03),
        0 0 30px color-mix(in srgb, var(--active-product-accent) 14%, transparent);
      transition: border-color 240ms ease, box-shadow 240ms ease, background 240ms ease;
    }

    .product-preview-card::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 3;
      background:
        linear-gradient(90deg, transparent, rgba(0,0,0,0.36) 47%, rgba(0,0,0,0.5)),
        repeating-linear-gradient(to bottom, rgba(255,255,255,0.08) 0 1px, transparent 1px 5px);
      opacity: 0.22;
      pointer-events: none;
      mix-blend-mode: screen;
    }

    .product-preview-image {
      position: relative;
      z-index: 1;
      min-width: 0;
      background: var(--active-product-image) var(--active-product-position) / cover no-repeat;
      filter: saturate(1.12) contrast(1.08) brightness(0.82);
      transform: scale(1.02);
      transition: background-image 220ms ease, filter 220ms ease, transform 420ms var(--ease);
    }

    .product-preview-card:hover .product-preview-image {
      transform: scale(1.06);
      filter: saturate(1.2) contrast(1.1) brightness(0.88);
    }

    .product-preview-copy {
      position: relative;
      z-index: 4;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 8px;
      min-width: 0;
      padding: 18px 18px 18px 20px;
    }

    .product-preview-copy strong {
      color: color-mix(in srgb, var(--active-product-accent) 88%, var(--cream));
      font: 700 15px/1 var(--pixel);
      letter-spacing: 0.02em;
      text-transform: uppercase;
      text-shadow: 0 0 18px color-mix(in srgb, var(--active-product-accent) 36%, transparent);
    }

    .product-preview-copy span {
      color: rgba(244,240,223,0.66);
      font: 600 13px/1.45 var(--body);
    }

    .counter-products {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      margin-top: 12px;
    }

    .product-chip {
      position: relative;
      min-height: 76px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 7px;
      border: 1px solid rgba(244, 240, 223, 0.13);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.04), transparent),
        rgba(0,0,0,0.3);
      padding: 14px 15px;
      overflow: hidden;
      text-align: left;
      cursor: pointer;
      transition: border-color 180ms ease, transform 220ms var(--ease), background 180ms ease;
    }

    .product-chip::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 4px;
      height: 100%;
      background: var(--chip);
      box-shadow: 0 0 18px var(--chip);
      opacity: 0.8;
    }

    .product-chip:hover,
    .product-chip:focus-visible,
    .product-chip.active {
      transform: translateY(-3px);
      border-color: color-mix(in srgb, var(--chip) 58%, rgba(244,240,223,0.16));
      background:
        radial-gradient(circle at 92% 16%, color-mix(in srgb, var(--chip) 18%, transparent), transparent 42%),
        rgba(0,0,0,0.48);
      box-shadow: 0 0 28px color-mix(in srgb, var(--chip) 16%, transparent);
      outline: none;
    }

    .product-chip.active::before,
    .product-chip:hover::before,
    .product-chip:focus-visible::before {
      opacity: 1;
      width: 6px;
    }

    .product-chip b {
      color: var(--cream);
      font: 700 13px/1 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .product-chip span {
      color: rgba(244, 240, 223, 0.55);
      font-size: 13px;
      line-height: 1.35;
    }

    .counter-note {
      margin-top: 22px;
      color: rgba(244, 240, 223, 0.52);
      font: 700 10px/1.5 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .proof-slide {
      position: relative;
      z-index: 3;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(360px, 0.86fr) minmax(440px, 1.14fr);
      align-items: center;
      gap: clamp(26px, 5vw, 78px);
      padding: 96px clamp(18px, 6vw, 86px) 72px;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 74% 28%, rgba(201,255,47,0.12), transparent 26vw),
        radial-gradient(circle at 18% 75%, rgba(99,255,210,0.1), transparent 28vw),
        linear-gradient(180deg, #040807 0%, #07110c 50%, #030403 100%);
    }

    .proof-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        repeating-linear-gradient(90deg, rgba(201,255,47,0.024) 0 1px, transparent 1px 52px),
        repeating-linear-gradient(0deg, rgba(99,255,210,0.022) 0 1px, transparent 1px 52px);
      mask-image: radial-gradient(circle at 50% 50%, black 0%, transparent 78%);
      pointer-events: none;
    }

    .proof-slide::after {
      content: "";
      position: absolute;
      inset: -18%;
      z-index: 0;
      pointer-events: none;
      background-image:
        radial-gradient(circle, rgba(201,255,47,0.7) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(99,255,210,0.46) 0 1px, transparent 1.7px);
      background-size: 144px 132px, 252px 214px;
      background-position: 24px 18px, 120px 80px;
      opacity: 0.22;
      filter: drop-shadow(0 0 6px rgba(201,255,47,0.26));
      animation: galaxyDrift 58s linear infinite reverse;
    }

    .proof-copy,
    .proof-visuals {
      position: relative;
      z-index: 3;
    }

    .proof-kicker {
      display: inline-flex;
      min-height: 31px;
      align-items: center;
      padding: 0 12px;
      border: 1px solid rgba(201,255,47,0.3);
      color: var(--lime);
      background: rgba(244,240,223,0.055);
      box-shadow: 0 0 18px rgba(201,255,47,0.08);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .proof-title {
      color: var(--cream);
      font: 700 clamp(42px, 5.9vw, 82px)/0.92 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 32px rgba(201,255,47,0.12);
    }

    .proof-title span {
      display: block;
      color: rgba(244,240,223,0.92);
    }

    .proof-intro {
      max-width: 560px;
      margin-top: 22px;
      color: rgba(244,240,223,0.86);
      font-size: clamp(16px, 1.55vw, 19px);
      line-height: 1.58;
    }

    .proof-stat-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 24px;
    }

    .proof-stat {
      min-height: 38px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 0 12px;
      border: 1px solid rgba(244,240,223,0.2);
      color: rgba(244,240,223,0.88);
      background: rgba(244,240,223,0.045);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.11em;
      text-transform: uppercase;
    }

    .proof-stat strong {
      color: var(--lime);
      text-shadow: 0 0 16px rgba(201,255,47,0.5);
    }

    .review-stack {
      display: grid;
      gap: 10px;
      margin-top: 24px;
      max-width: 540px;
    }

    .review-card {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(244,240,223,0.13);
      background:
        linear-gradient(90deg, rgba(201,255,47,0.12), transparent 36%),
        rgba(0,0,0,0.34);
      padding: 15px 16px 14px;
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.025),
        0 16px 34px rgba(0,0,0,0.28);
    }

    .review-card::before {
      content: "★★★★★";
      display: block;
      margin-bottom: 7px;
      color: var(--lime);
      font: 700 10px/1 var(--pixel);
      letter-spacing: 0.08em;
      text-shadow: 0 0 14px rgba(201,255,47,0.46);
    }

    .review-card blockquote {
      color: rgba(244,240,223,0.9);
      font: 600 clamp(14px, 1.2vw, 16px)/1.38 var(--body);
    }

    .review-card cite {
      display: block;
      margin-top: 8px;
      color: rgba(244,240,223,0.48);
      font: 700 9px/1 var(--display);
      letter-spacing: 0.13em;
      text-transform: uppercase;
      font-style: normal;
    }

    .google-review-board {
      position: relative;
      z-index: 3;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      padding: clamp(16px, 2.1vw, 24px);
      border: 1px solid rgba(244,240,223,0.2);
      background:
        radial-gradient(circle at 84% 12%, rgba(201,255,47,0.08), transparent 38%),
        radial-gradient(circle at 12% 88%, rgba(99,255,210,0.1), transparent 42%),
        rgba(5,8,7,0.52);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.025),
        0 24px 68px rgba(0,0,0,0.36),
        0 0 34px rgba(201,255,47,0.06);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }

    .google-review-board::before {
      content: "";
      position: absolute;
      inset: 8px;
      border: 1px solid rgba(201,255,47,0.12);
      pointer-events: none;
    }

    .google-review-header {
      position: relative;
      z-index: 2;
      grid-column: 1 / -1;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      padding: 0 0 12px;
      border-bottom: 1px solid rgba(244,240,223,0.12);
      color: rgba(244,240,223,0.72);
      font: 700 10px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .google-review-header strong {
      color: var(--lime);
      font-size: 11px;
      letter-spacing: 0.08em;
      text-shadow: 0 0 18px rgba(201,255,47,0.52);
    }

    .google-review-board .review-card {
      z-index: 2;
      min-height: 132px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .review-disclaimer {
      position: relative;
      z-index: 2;
      grid-column: 1 / -1;
      margin-top: 2px;
      color: rgba(244,240,223,0.72);
      font: 600 12px/1.55 var(--body);
      letter-spacing: 0.01em;
      text-transform: none;
    }

    .proof-visuals {
      display: grid;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      grid-template-rows: repeat(6, minmax(60px, 1fr));
      min-height: min(650px, 70vh);
      gap: clamp(10px, 1.2vw, 16px);
      perspective: 1200px;
    }

    .proof-photo {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(244,240,223,0.13);
      background: #0a0e0c;
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.64),
        0 28px 76px rgba(0,0,0,0.46),
        0 0 44px rgba(201,255,47,0.08);
    }

    .proof-photo::before {
      content: "";
      position: absolute;
      inset: -6%;
      background: var(--proof-img) var(--proof-pos, center) / cover no-repeat;
      filter: saturate(1.12) contrast(1.08) brightness(0.82);
      transform: scale(1.04);
    }

    .proof-photo::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 54% 32%, transparent 0 36%, rgba(0,0,0,0.38) 78%),
        linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.44)),
        repeating-linear-gradient(to bottom, rgba(255,255,255,0.08) 0 1px, transparent 1px 5px);
      opacity: 0.22;
      mix-blend-mode: screen;
      pointer-events: none;
    }

    .proof-bags {
      grid-column: 1 / 5;
      grid-row: 1 / 5;
      transform: skewX(-2deg) translate3d(0, 10px, 0);
      --proof-img: url("/assets/site/big-bag-special.jpg");
      --proof-pos: center 48%;
    }

    .proof-board {
      grid-column: 3 / 7;
      grid-row: 3 / 7;
      transform: skewX(2deg) translate3d(12px, -6px, 0);
      --proof-img: url("/assets/site/strain-board.jpg");
      --proof-pos: center 42%;
    }

    .proof-badge {
      position: absolute;
      z-index: 4;
      left: 16px;
      top: 16px;
      min-height: 34px;
      display: inline-flex;
      align-items: center;
      padding: 0 12px;
      color: var(--black);
      background: var(--lime);
      box-shadow: 0 0 28px rgba(201,255,47,0.32);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.13em;
      text-transform: uppercase;
    }

    .proof-board .proof-badge {
      left: auto;
      right: 16px;
      background: var(--amber);
      box-shadow: 0 0 28px rgba(255,177,59,0.28);
    }

    .proof-callout {
      position: absolute;
      z-index: 5;
      left: 50%;
      top: 47%;
      width: min(270px, 52%);
      display: grid;
      gap: 7px;
      padding: 15px 16px 14px;
      border: 1px solid rgba(201,255,47,0.34);
      background:
        radial-gradient(circle at 86% 20%, rgba(201,255,47,0.16), transparent 42%),
        rgba(0,0,0,0.72);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.03),
        0 0 38px rgba(201,255,47,0.16);
      transform: translate(-50%, -50%);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }

    .proof-callout strong {
      color: var(--lime);
      font: 700 15px/1 var(--pixel);
      letter-spacing: 0.02em;
      text-transform: uppercase;
      text-shadow: 0 0 18px rgba(201,255,47,0.42);
    }

    .proof-callout span {
      color: rgba(244,240,223,0.72);
      font-size: 13px;
      line-height: 1.4;
    }

    .care-slide {
      position: relative;
      z-index: 3;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(380px, 0.95fr) minmax(420px, 1.05fr);
      align-items: center;
      gap: clamp(26px, 5vw, 76px);
      padding: 96px clamp(18px, 6vw, 86px) 72px;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 20% 24%, rgba(99,255,210,0.13), transparent 26vw),
        radial-gradient(circle at 76% 72%, rgba(201,255,47,0.1), transparent 28vw),
        linear-gradient(180deg, #030606 0%, #07110d 52%, #030403 100%);
    }

    .care-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        linear-gradient(90deg, rgba(99,255,210,0.035) 1px, transparent 1px),
        linear-gradient(rgba(201,255,47,0.03) 1px, transparent 1px);
      background-size: 58px 58px;
      mask-image: radial-gradient(circle at 48% 54%, black 0%, transparent 76%);
      pointer-events: none;
    }

    .care-slide::after {
      content: "";
      position: absolute;
      inset: -18%;
      z-index: 0;
      pointer-events: none;
      background-image:
        radial-gradient(circle, rgba(201,255,47,0.72) 0 1px, transparent 1.6px),
        radial-gradient(circle, rgba(99,255,210,0.48) 0 1px, transparent 1.7px);
      background-size: 136px 128px, 244px 212px;
      background-position: 20px 26px, 110px 74px;
      opacity: 0.24;
      filter: drop-shadow(0 0 7px rgba(99,255,210,0.24));
      animation: galaxyDrift 54s linear infinite;
    }

    .care-copy,
    .care-panel {
      position: relative;
      z-index: 3;
    }

    .care-eyebrow {
      display: inline-flex;
      min-height: 31px;
      align-items: center;
      gap: 9px;
      padding: 0 12px;
      border: 1px solid rgba(99,255,210,0.3);
      color: var(--mint);
      background: rgba(244,240,223,0.055);
      box-shadow: 0 0 18px rgba(99,255,210,0.08);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .thai-flag {
      width: 22px;
      height: 14px;
      display: inline-grid;
      overflow: hidden;
      border: 1px solid rgba(244,240,223,0.38);
      box-shadow: 0 0 16px rgba(244,240,223,0.12);
      background:
        linear-gradient(
          to bottom,
          #c3192d 0 16%,
          #fff 16% 30%,
          #233a7b 30% 70%,
          #fff 70% 84%,
          #c3192d 84% 100%
        );
    }

    .thai-flag i {
      display: none;
    }

    .care-title {
      color: var(--cream);
      font: 700 clamp(42px, 6vw, 84px)/0.92 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 34px rgba(99,255,210,0.12);
    }

    .care-title span {
      display: block;
      color: rgba(244,240,223,0.92);
    }

    .care-intro {
      max-width: 590px;
      margin-top: 22px;
      color: rgba(244,240,223,0.88);
      font-size: clamp(16px, 1.55vw, 19px);
      line-height: 1.58;
    }

    .care-note {
      max-width: 580px;
      margin-top: 18px;
      color: rgba(244,240,223,0.72);
      font: 600 13px/1.55 var(--body);
      letter-spacing: 0.01em;
      text-transform: none;
    }

    .care-panel {
      display: grid;
      gap: 12px;
      padding: clamp(14px, 2vw, 22px);
      border: 1px solid rgba(244,240,223,0.19);
      background:
        radial-gradient(circle at 90% 10%, rgba(201,255,47,0.07), transparent 42%),
        rgba(5,8,7,0.54);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.025),
        0 24px 68px rgba(0,0,0,0.36),
        0 0 34px rgba(99,255,210,0.06);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }

    .care-card {
      position: relative;
      display: grid;
      grid-template-columns: 64px 1fr;
      gap: 16px;
      align-items: center;
      min-height: 92px;
      padding: 16px;
      border: 1px solid rgba(244,240,223,0.16);
      background:
        linear-gradient(90deg, color-mix(in srgb, var(--care, var(--lime)) 8%, transparent), transparent 44%),
        rgba(244,240,223,0.035);
      overflow: hidden;
    }

    .care-card::before {
      content: attr(data-step);
      display: grid;
      place-items: center;
      width: 50px;
      height: 50px;
      color: var(--black);
      background: var(--care, var(--lime));
      box-shadow: 0 0 26px color-mix(in srgb, var(--care, var(--lime)) 34%, transparent);
      font: 700 14px/1 var(--pixel);
    }

    .care-card h3 {
      color: var(--cream);
      font: 700 clamp(17px, 1.7vw, 22px)/1.08 var(--display);
      letter-spacing: 0.07em;
      text-transform: uppercase;
      margin-bottom: 6px;
    }

    .care-card p {
      color: rgba(244,240,223,0.78);
      font-size: 14px;
      line-height: 1.48;
    }

    .contact-slide {
      position: relative;
      z-index: 3;
      min-height: 100vh;
      min-height: calc(var(--vh) * 100);
      scroll-snap-align: start;
      scroll-snap-stop: always;
      display: grid;
      grid-template-columns: minmax(410px, 0.88fr) minmax(430px, 1.12fr);
      align-items: center;
      gap: clamp(26px, 4vw, 72px);
      padding: 96px clamp(18px, 6vw, 86px) 76px;
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 74% 24%, rgba(255,177,59,0.14), transparent 28vw),
        radial-gradient(circle at 22% 76%, rgba(99,255,210,0.1), transparent 28vw),
        linear-gradient(180deg, #050707 0%, #09100d 48%, #030403 100%);
    }

    .contact-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background:
        repeating-linear-gradient(90deg, rgba(201,255,47,0.026) 0 1px, transparent 1px 46px),
        repeating-linear-gradient(0deg, rgba(255,177,59,0.024) 0 1px, transparent 1px 46px);
      mask-image: radial-gradient(circle at 52% 50%, black 0%, transparent 78%);
      pointer-events: none;
    }

    .contact-slide::after {
      content: "";
      position: absolute;
      inset: -22%;
      z-index: 0;
      pointer-events: none;
      background-image:
        radial-gradient(circle, rgba(201,255,47,0.74) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(255,177,59,0.54) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(99,255,210,0.5) 0 1px, transparent 1.7px);
      background-size: 132px 124px, 212px 196px, 306px 268px;
      background-position: 12px 22px, 86px 58px, 144px 112px;
      filter: drop-shadow(0 0 6px rgba(255,177,59,0.24));
      opacity: 0.3;
      animation: galaxyDrift 52s linear infinite;
    }

    .contact-copy {
      position: relative;
      z-index: 4;
      max-width: 560px;
    }

    .contact-eyebrow {
      display: inline-flex;
      min-height: 31px;
      align-items: center;
      padding: 0 12px;
      border: 1px solid rgba(99,255,210,0.28);
      color: var(--mint);
      background: rgba(99,255,210,0.06);
      box-shadow: 0 0 24px rgba(99,255,210,0.1);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .contact-title {
      color: var(--cream);
      font: 700 clamp(48px, 7vw, 104px)/0.9 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 50px rgba(255,177,59,0.15);
    }

    .contact-title span {
      display: block;
      color: var(--amber);
    }

    .contact-intro {
      margin-top: 24px;
      color: rgba(244,240,223,0.75);
      font-size: clamp(16px, 1.7vw, 20px);
      line-height: 1.52;
    }

    .contact-seo-copy {
      margin-top: 14px;
    }

    .contact-details {
      display: grid;
      gap: 10px;
      margin-top: 20px;
    }

    .contact-row {
      display: grid;
      grid-template-columns: 96px 1fr;
      align-items: center;
      gap: 14px;
      min-height: 46px;
      border: 1px solid rgba(244,240,223,0.12);
      background: rgba(0,0,0,0.28);
      padding: 10px 14px;
    }

    .contact-row span {
      color: rgba(99,255,210,0.82);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .contact-row strong,
    .contact-row a {
      color: rgba(244,240,223,0.86);
      font: 700 14px/1.25 var(--display);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .contact-row a {
      justify-self: start;
      transition: color 180ms ease, text-shadow 180ms ease;
    }

    .contact-row a:hover {
      color: var(--lime);
      text-shadow: 0 0 16px rgba(201,255,47,0.46);
    }

    .contact-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 24px;
    }

    .contact-actions a {
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(244,240,223,0.14);
      padding: 0 18px;
      color: rgba(244,240,223,0.8);
      background: rgba(0,0,0,0.38);
      font: 700 10px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
    }

    .contact-actions a:first-child {
      color: var(--black);
      border-color: var(--lime);
      background: var(--lime);
      box-shadow: 0 0 30px rgba(201,255,47,0.22);
    }

    .contact-actions a:hover {
      color: var(--mint);
      border-color: rgba(99,255,210,0.44);
      background: rgba(0,0,0,0.5);
      box-shadow: 0 0 24px rgba(99,255,210,0.14);
    }

    .contact-art-wrap {
      position: relative;
      z-index: 3;
      justify-self: center;
      width: min(100%, 600px);
      min-height: min(720px, 78vh);
      display: grid;
      place-items: center;
    }

    .contact-art-wrap::before {
      content: "";
      position: absolute;
      inset: 8% -4% 5% 8%;
      z-index: 0;
      border: 1px solid rgba(255,177,59,0.2);
      background:
        radial-gradient(circle at 52% 40%, rgba(255,177,59,0.18), transparent 46%),
        radial-gradient(circle at 72% 76%, rgba(99,255,210,0.12), transparent 48%);
      box-shadow:
        0 0 70px rgba(255,177,59,0.12),
        inset 0 0 40px rgba(0,0,0,0.52);
      transform: skewX(-3deg);
    }

    .contact-art {
      position: relative;
      z-index: 2;
      width: min(100%, 520px);
      max-height: min(760px, 78vh);
      object-fit: contain;
      border: 1px solid rgba(244,240,223,0.16);
      box-shadow:
        0 34px 100px rgba(0,0,0,0.54),
        0 0 42px rgba(255,177,59,0.12);
      filter: saturate(1.08) contrast(1.04) brightness(0.92);
    }

    .contact-art-glow {
      position: absolute;
      z-index: 1;
      inset: 14% 7% 10% 9%;
      background: radial-gradient(circle at 54% 54%, rgba(201,255,47,0.16), transparent 58%);
      filter: blur(20px);
      pointer-events: none;
    }

    .site-footer {
      position: relative;
      grid-column: 1 / -1;
      z-index: 5;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      margin-top: clamp(4px, 1.4vw, 18px);
      padding: 12px clamp(14px, 2vw, 20px);
      border: 1px solid rgba(244,240,223,0.18);
      background:
        radial-gradient(circle at 8% 50%, rgba(244,240,223,0.08), transparent 42%),
        rgba(244,240,223,0.045);
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.025),
        0 18px 54px rgba(0,0,0,0.34);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      color: rgba(244,240,223,0.74);
    }

    .footer-main {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: 12px;
      flex-wrap: wrap;
      font: 700 9px/1.4 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .footer-brand {
      color: var(--lime);
      font: 700 10px/1.25 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-shadow: 0 0 18px rgba(201,255,47,0.22);
    }

    .credit-link,
    .copyright-text {
      padding: 0;
    }

    .credit-link {
      color: rgba(244,240,223,0.92);
      transition: color 180ms ease, text-shadow 180ms ease;
    }

    .credit-link:hover,
    .credit-link.active {
      color: var(--mint);
      text-shadow: 0 0 18px rgba(99,255,210,0.42);
    }

    body.credit-lit .credit-link {
      color: var(--rose);
      text-shadow: 0 0 18px rgba(255,63,132,0.44);
    }

    .copyright-text {
      color: rgba(244,240,223,0.64);
    }

    .footer-law {
      max-width: 560px;
      margin: 0;
      color: rgba(244,240,223,0.62);
      font: 600 11px/1.45 var(--body);
      letter-spacing: 0.01em;
      text-align: right;
    }

    .age-gate {
      position: fixed;
      inset: 0;
      z-index: 100;
      display: grid;
      place-items: center;
      padding: 22px;
      background:
        radial-gradient(circle at 50% 22%, rgba(201, 255, 47, 0.18), transparent 34vw),
        radial-gradient(circle at 18% 82%, rgba(50, 220, 255, 0.1), transparent 26vw),
        #040506;
      transition: opacity 480ms ease, visibility 480ms ease, transform 480ms var(--ease);
    }

    .age-gate.hide {
      opacity: 0;
      visibility: hidden;
      transform: scale(1.015);
      pointer-events: none;
    }

    .age-panel {
      position: relative;
      width: min(560px, 100%);
      border: 1px solid rgba(201, 255, 47, 0.4);
      background:
        linear-gradient(180deg, rgba(255,255,255,0.05), transparent 24%),
        rgba(5, 7, 8, 0.9);
      box-shadow:
        inset 0 0 0 1px rgba(0,0,0,0.76),
        inset 0 -18px 42px rgba(0,0,0,0.4),
        0 0 0 6px rgba(201, 255, 47, 0.04),
        0 34px 110px rgba(0,0,0,0.62),
        0 0 70px rgba(201,255,47,0.12);
      padding: clamp(22px, 5vw, 40px);
      overflow: hidden;
    }

    .age-panel::before,
    .age-panel::after {
      content: "";
      position: absolute;
      width: 34px;
      height: 34px;
      border-color: var(--lime);
      opacity: 0.85;
      pointer-events: none;
    }

    .age-panel::before {
      top: 12px;
      left: 12px;
      border-top: 2px solid;
      border-left: 2px solid;
    }

    .age-panel::after {
      right: 12px;
      bottom: 12px;
      border-right: 2px solid;
      border-bottom: 2px solid;
    }

    .age-logo {
      display: block;
      width: min(310px, 82%);
      margin: 0 auto 26px;
      filter:
        drop-shadow(0 0 14px rgba(201,255,47,0.42))
        drop-shadow(0 0 32px rgba(99,255,210,0.16));
    }

    .age-lang {
      margin: 0 auto 22px;
    }

    .age-badge {
      width: fit-content;
      min-height: 30px;
      display: flex;
      align-items: center;
      margin: 0 auto 18px;
      padding: 0 12px;
      border: 1px solid rgba(255, 177, 59, 0.34);
      color: var(--amber);
      font: 700 10px/1 var(--pixel);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      background: rgba(255, 177, 59, 0.05);
    }

    .age-title {
      color: var(--cream);
      text-align: center;
      font: 700 clamp(28px, 5vw, 48px)/1 var(--display);
      letter-spacing: 0;
      text-transform: uppercase;
      text-shadow: 0 0 24px rgba(201,255,47,0.24);
    }

    .age-copy {
      max-width: 390px;
      margin: 14px auto 28px;
      color: rgba(244, 240, 223, 0.72);
      text-align: center;
      font-size: 15px;
      line-height: 1.58;
    }

    .age-actions {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }

    .age-btn {
      min-height: 54px;
      border: 1px solid rgba(244, 240, 223, 0.16);
      color: var(--cream);
      background: rgba(255,255,255,0.04);
      cursor: pointer;
      font: 700 12px/1.2 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      transition: transform 180ms var(--ease), background 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
    }

    .age-btn:hover {
      transform: translateY(-2px);
      border-color: rgba(244, 240, 223, 0.32);
    }

    .age-btn.yes {
      color: var(--black);
      border-color: var(--lime);
      background: var(--lime);
      box-shadow: 0 0 28px rgba(201, 255, 47, 0.22);
    }

    .age-btn.yes:hover {
      box-shadow: 0 0 44px rgba(201, 255, 47, 0.34);
    }

    .age-note {
      margin-top: 18px;
      color: rgba(244, 240, 223, 0.46);
      text-align: center;
      font-size: 12px;
      line-height: 1.45;
    }

    .mobile-actions {
      display: none;
      position: fixed;
      left: 14px;
      right: 14px;
      bottom: 14px;
      z-index: 25;
      grid-template-columns: repeat(4, 1fr);
      gap: 8px;
    }

    .mobile-actions a {
      min-height: 46px;
      display: grid;
      place-items: center;
      color: var(--cream);
      border: 1px solid rgba(244, 240, 223, 0.14);
      background: rgba(4, 6, 7, 0.72);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      font: 700 10px/1 var(--display);
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .mobile-actions a:first-child {
      color: var(--black);
      border-color: var(--lime);
      background: var(--lime);
    }

    .offer-pop {
      position: fixed;
      left: clamp(14px, 2.6vw, 32px);
      bottom: clamp(88px, 9vh, 116px);
      z-index: 54;
      width: min(340px, calc(100vw - 28px));
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 12px;
      align-items: center;
      padding: 14px 14px 14px 16px;
      border: 1px solid rgba(201,255,47,0.54);
      background:
        radial-gradient(circle at 12% 15%, rgba(201,255,47,0.2), transparent 42%),
        linear-gradient(135deg, rgba(5, 9, 7, 0.92), rgba(9, 12, 20, 0.9));
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.035),
        0 0 28px rgba(201,255,47,0.22),
        0 18px 54px rgba(0,0,0,0.5);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      transform: translateY(0);
      transition: opacity 220ms ease, transform 260ms var(--ease), visibility 220ms ease;
    }

    .offer-pop.hidden {
      opacity: 0;
      visibility: hidden;
      transform: translateY(18px);
      pointer-events: none;
    }

    .offer-copy {
      display: grid;
      gap: 5px;
      min-width: 0;
    }

    .offer-copy strong {
      color: var(--lime);
      font: 700 12px/1.18 var(--pixel);
      letter-spacing: 0.03em;
      text-transform: uppercase;
      text-shadow:
        0 0 12px rgba(201,255,47,0.72),
        0 0 28px rgba(201,255,47,0.28);
    }

    .offer-copy span {
      color: rgba(244,240,223,0.68);
      font: 700 10px/1.35 var(--display);
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .offer-actions {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .offer-visit {
      min-height: 36px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 12px;
      border: 1px solid var(--lime);
      color: var(--black);
      background: var(--lime);
      box-shadow: 0 0 22px rgba(201,255,47,0.3);
      font: 700 9px/1 var(--pixel);
      letter-spacing: 0.03em;
      text-transform: uppercase;
      white-space: nowrap;
      cursor: pointer;
    }

    .offer-close {
      position: absolute;
      top: -11px;
      right: -11px;
      width: 26px;
      height: 26px;
      border: 1px solid rgba(244,240,223,0.18);
      background: rgba(0,0,0,0.82);
      cursor: pointer;
    }

    .offer-close::before,
    .offer-close::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      width: 12px;
      height: 1px;
      background: var(--lime);
      box-shadow: 0 0 10px rgba(201,255,47,0.72);
    }

    .offer-close::before {
      transform: translate(-50%, -50%) rotate(45deg);
    }

    .offer-close::after {
      transform: translate(-50%, -50%) rotate(-45deg);
    }

    .scroll-joint {
      --joint-angle: -62deg;
      --joint-scale: 0.54;
      --joint-x: 18vw;
      --joint-y: -26vh;
      position: fixed;
      left: 0;
      top: 0;
      z-index: 35;
      width: clamp(46px, 4.6vw, 74px);
      height: clamp(220px, 34vh, 360px);
      pointer-events: none;
      opacity: 0;
      transform: translate3d(var(--joint-x), var(--joint-y), 0) rotate(var(--joint-angle)) scale(var(--joint-scale));
      transform-origin: 50% 50%;
      transition: opacity 150ms ease;
      filter:
        drop-shadow(0 18px 28px rgba(0,0,0,0.72))
        drop-shadow(0 0 22px rgba(201,255,47,0.16));
    }

    .scroll-joint.visible {
      opacity: 0.72;
    }

    .joint-cutout {
      position: absolute;
      inset: -2% 9%;
      background:
        linear-gradient(90deg, rgba(0,0,0,0.28), transparent 34%, transparent 68%, rgba(0,0,0,0.34)),
        url("/assets/site/raw-shop-joint.jpg") center / 122% 100% no-repeat;
      clip-path: polygon(
        50% 0%,
        63% 2%,
        68% 14%,
        72% 36%,
        75% 58%,
        70% 84%,
        62% 97%,
        48% 100%,
        35% 97%,
        29% 84%,
        27% 58%,
        31% 36%,
        34% 14%,
        38% 2%
      );
      filter: saturate(1.08) contrast(1.12) brightness(0.82);
    }

    .joint-cutout::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(100deg, rgba(255,255,255,0.2), transparent 28%, transparent 68%, rgba(0,0,0,0.22)),
        radial-gradient(circle at 48% 97%, rgba(255,80,35,0.28), transparent 12%);
      mix-blend-mode: screen;
    }

    .joint-ember {
      position: absolute;
      left: 50%;
      bottom: -4px;
      width: 16px;
      height: 16px;
      border-radius: 50%;
      background:
        radial-gradient(circle, #fff4ab 0 14%, #ffb13b 15% 36%, #ff3f1f 37% 60%, transparent 61%);
      box-shadow:
        0 0 14px rgba(255,177,59,0.95),
        0 0 34px rgba(255,63,132,0.42);
      transform: translateX(-50%);
      animation: jointEmberPulse 1.5s ease-in-out infinite;
    }

    .joint-smoke {
      position: absolute;
      left: 50%;
      bottom: 18px;
      width: 82px;
      height: 126px;
      transform: translateX(-50%) rotate(12deg);
      opacity: 0.48;
    }

    .joint-smoke i {
      position: absolute;
      bottom: 0;
      width: 18px;
      height: 86px;
      border-radius: 999px;
      background: linear-gradient(to top, rgba(214,235,220,0.34), transparent);
      filter: blur(11px);
      animation: smokeRise 3.2s ease-in-out infinite;
    }

    .joint-smoke i:nth-child(2) {
      left: 38px;
      animation-delay: 0.5s;
      animation-duration: 3.7s;
    }

    .joint-smoke i:nth-child(3) {
      left: 74px;
      animation-delay: 1s;
      animation-duration: 4.1s;
    }

    .back-to-top {
      position: fixed;
      right: 22px;
      bottom: 22px;
      z-index: 55;
      width: 78px;
      height: 78px;
      border: 1px solid rgba(201,255,47,0.92);
      border-radius: 50%;
      background:
        radial-gradient(circle at 50% 45%, rgba(201,255,47,0.3), transparent 62%),
        radial-gradient(circle at 50% 52%, rgba(99,255,210,0.16), transparent 72%),
        rgba(0,0,0,0.72);
      box-shadow:
        inset 0 0 0 2px rgba(0,0,0,0.64),
        inset 0 0 24px rgba(201,255,47,0.22),
        0 0 18px rgba(201,255,47,0.68),
        0 0 52px rgba(201,255,47,0.34),
        0 18px 38px rgba(0,0,0,0.58);
      cursor: pointer;
      opacity: 0;
      pointer-events: none;
      transform: translateY(16px) scale(0.92);
      transition: opacity 220ms ease, transform 260ms var(--ease), border-color 200ms ease, box-shadow 200ms ease;
      overflow: hidden;
    }

    .back-to-top::before,
    .back-to-top::after {
      content: "";
      position: absolute;
      inset: 8px;
      border-radius: 50%;
      pointer-events: none;
      z-index: 0;
    }

    .back-to-top::before {
      border: 1px solid rgba(201,255,47,0.48);
      box-shadow:
        inset 0 0 18px rgba(201,255,47,0.2),
        0 0 18px rgba(201,255,47,0.22);
    }

    .back-to-top::after {
      inset: 18px;
      background:
        radial-gradient(circle at 50% 50%, rgba(201,255,47,0.34), transparent 58%);
      filter: blur(5px);
      opacity: 0.9;
    }

    .back-to-top.visible {
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0) scale(1);
      animation: topGlow 2.4s ease-in-out infinite;
    }

    .back-to-top:hover {
      border-color: rgba(201,255,47,1);
      box-shadow:
        inset 0 0 0 2px rgba(0,0,0,0.62),
        inset 0 0 30px rgba(201,255,47,0.3),
        0 0 30px rgba(201,255,47,0.82),
        0 0 82px rgba(201,255,47,0.44),
        0 18px 38px rgba(0,0,0,0.58);
    }

    .leaf-neon {
      position: absolute;
      left: 50%;
      top: 39%;
      z-index: 2;
      width: 46px;
      height: 43px;
      transform: translate(-50%, -50%);
      filter:
        drop-shadow(0 0 7px rgba(201,255,47,0.98))
        drop-shadow(0 0 22px rgba(201,255,47,0.66));
    }

    .leaf-neon i {
      position: absolute;
      left: 50%;
      bottom: 7px;
      width: 9px;
      height: 27px;
      border-radius: 100% 0 100% 0;
      border: 1.5px solid #d8ff5b;
      background: linear-gradient(135deg, rgba(216,255,91,0.82), rgba(99,255,210,0.24));
      box-shadow:
        inset 0 0 10px rgba(201,255,47,0.38),
        0 0 12px rgba(201,255,47,0.74);
      transform-origin: 50% 100%;
    }

    .leaf-neon i:nth-child(1) {
      height: 34px;
      width: 10px;
      transform: translateX(-50%) rotate(0deg);
    }

    .leaf-neon i:nth-child(2) {
      height: 29px;
      transform: translateX(-50%) rotate(-30deg);
    }

    .leaf-neon i:nth-child(3) {
      height: 29px;
      transform: translateX(-50%) rotate(30deg);
    }

    .leaf-neon i:nth-child(4) {
      height: 24px;
      transform: translateX(-50%) rotate(-58deg);
    }

    .leaf-neon i:nth-child(5) {
      height: 24px;
      transform: translateX(-50%) rotate(58deg);
    }

    .leaf-neon::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: 2px;
      width: 2px;
      height: 15px;
      background: #d8ff5b;
      transform: translateX(-50%);
      box-shadow: 0 0 9px rgba(201,255,47,0.9);
    }

    .back-to-top .top-word {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 8px;
      z-index: 3;
      color: #d8ff5b;
      font: 700 8px/1 var(--pixel);
      letter-spacing: 0.05em;
      text-transform: uppercase;
      text-shadow:
        0 0 8px rgba(201,255,47,0.9),
        0 0 18px rgba(201,255,47,0.62);
    }

    @keyframes jointEmberPulse {
      0%, 100% {
        transform: translateX(-50%) scale(0.86);
        opacity: 0.56;
      }
      50% {
        transform: translateX(-50%) scale(1.14);
        opacity: 1;
      }
    }

    @keyframes topGlow {
      0%, 100% {
        box-shadow:
          inset 0 0 0 2px rgba(0,0,0,0.64),
          inset 0 0 24px rgba(201,255,47,0.22),
          0 0 18px rgba(201,255,47,0.68),
          0 0 52px rgba(201,255,47,0.34),
          0 18px 38px rgba(0,0,0,0.58);
      }
      50% {
        box-shadow:
          inset 0 0 0 2px rgba(0,0,0,0.62),
          inset 0 0 36px rgba(201,255,47,0.34),
          0 0 32px rgba(201,255,47,0.9),
          0 0 90px rgba(201,255,47,0.44),
          0 18px 38px rgba(0,0,0,0.58);
      }
    }

    @keyframes emberPulse {
      0%, 100% { transform: scale(0.86); opacity: 0.52; }
      50% { transform: scale(1.18); opacity: 0.92; }
    }

    @keyframes galaxyDrift {
      0% {
        transform: translate3d(0, 0, 0);
      }
      100% {
        transform: translate3d(120px, -90px, 0);
      }
    }

    @keyframes ringSpin {
      to { transform: rotate(360deg); }
    }

    @keyframes ringFloat {
      0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
      50% { transform: translate3d(0, -12px, 0) scale(1.02); }
    }

    @keyframes smokeRise {
      0% {
        opacity: 0;
        transform: translate3d(0, 30px, 0) rotate(-4deg) scale(0.72);
      }
      28% {
        opacity: 0.62;
      }
      100% {
        opacity: 0;
        transform: translate3d(22px, -142px, 0) rotate(18deg) scale(1.4);
      }
    }

    @media (max-width: 980px) {
      body {
        overflow: hidden;
      }

      .site {
        height: 100vh;
        height: calc(var(--vh) * 100);
        scroll-snap-type: y proximity;
      }

      .topbar {
        grid-template-columns: auto 1fr auto;
        min-height: 64px;
        padding: 14px 16px;
      }

      .section-rail {
        display: none;
      }

      .brand-chip span:last-child {
        display: none;
      }

      .quick-actions {
        display: inline-flex;
        gap: 8px;
      }

      .quick-actions a {
        display: none;
      }

      .time-chip {
        min-height: 34px;
        padding: 0 9px;
        gap: 6px;
      }

      .time-chip span {
        font-size: 7px;
      }

      .time-chip strong {
        font-size: 10px;
        letter-spacing: 0.1em;
      }

      .lang-toggle {
        justify-self: end;
      }

      .hero {
        min-height: 100vh;
        min-height: calc(var(--vh) * 100);
        grid-template-columns: 1fr;
        align-items: start;
        gap: 4px;
        padding: 72px 18px 112px;
      }

      .branch-slide {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 24px;
        padding: 88px 18px 92px;
      }

      .branch-copy {
        max-width: none;
      }

      .branch-title {
        font-size: clamp(42px, 13vw, 68px);
      }

      .branch-intro {
        margin-top: 16px;
        font-size: 16px;
      }

      .branch-small {
        margin-top: 18px;
        gap: 8px;
        font-size: 9px;
      }

      .branch-grid {
        grid-template-columns: 1fr;
        gap: 12px;
      }

      .branch-card,
      .branch-card:nth-child(2),
      .branch-card:nth-child(3),
      .branch-card:hover,
      .branch-card:nth-child(1):hover,
      .branch-card:nth-child(2):hover,
      .branch-card:nth-child(3):hover {
        min-height: 245px;
        transform: none;
      }

      .branch-content {
        padding: 20px 18px 16px;
      }

      .branch-name {
        font-size: 28px;
      }

      .branch-note {
        min-height: 0;
        max-width: 270px;
        font-size: 13px;
      }

      .branch-actions {
        margin-top: 13px;
      }

      .counter-slide {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 18px;
        padding: 86px 18px 92px;
      }

      .counter-stage {
        min-height: 36vh;
        order: 2;
      }

      .counter-copy {
        order: 1;
        max-width: none;
        justify-self: stretch;
      }

      .counter-title {
        font-size: clamp(42px, 13vw, 68px);
      }

      .counter-intro {
        margin-top: 16px;
        font-size: 16px;
      }

      .counter-products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        margin-top: 18px;
      }

      .product-preview-card {
        min-height: 98px;
        grid-template-columns: 108px 1fr;
        margin-top: 16px;
      }

      .product-preview-copy {
        padding: 14px 14px 14px 15px;
      }

      .product-preview-copy strong {
        font-size: 11px;
      }

      .product-preview-copy span {
        font-size: 12px;
      }

      .product-chip {
        min-height: 66px;
        padding: 12px 12px 12px 14px;
      }

      .product-chip b {
        font-size: 11px;
      }

      .product-chip span {
        font-size: 12px;
      }

      .counter-note {
        margin-top: 14px;
        font-size: 9px;
      }

      .counter-main-photo {
        inset: auto;
        grid-column: 1 / 7;
        grid-row: 1 / 5;
      }

      .counter-stage::before {
        inset: 9% 4% 8% 4%;
      }

      .counter-stage::after {
        right: 0;
      }

      .counter-readout {
        right: 7%;
        bottom: 9%;
        max-width: 200px;
        padding: 12px 13px;
      }

      .counter-readout strong {
        font-size: 10px;
      }

      .counter-readout span {
        font-size: 11px;
      }

      .counter-portrait {
        right: auto;
        top: auto;
        grid-column: 4 / 7;
        grid-row: 1 / 3;
        width: auto;
        height: auto;
      }

      .counter-cat {
        left: auto;
        bottom: auto;
        grid-column: 1 / 3;
        grid-row: 5 / 7;
        width: auto;
        height: auto;
      }

      .counter-sticker {
        right: auto;
        bottom: auto;
        grid-column: 3 / 7;
        grid-row: 5 / 7;
        width: auto;
        height: auto;
      }

      .proof-slide {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 20px;
        padding: 86px 18px 112px;
      }

      .proof-title {
        font-size: clamp(42px, 13vw, 68px);
      }

      .proof-intro {
        margin-top: 16px;
        font-size: 16px;
      }

      .proof-stat-row {
        margin-top: 18px;
        gap: 8px;
      }

      .proof-stat {
        min-height: 34px;
        font-size: 9px;
      }

      .review-stack {
        margin-top: 18px;
      }

      .review-card {
        padding: 13px 14px;
      }

      .review-card blockquote {
        font-size: 14px;
      }

      .google-review-board {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px;
      }

      .google-review-header {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
      }

      .google-review-board .review-card {
        min-height: auto;
      }

      .review-disclaimer {
        font-size: 12px;
        line-height: 1.55;
      }

      .care-slide {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 20px;
        padding: 86px 18px 112px;
      }

      .care-title {
        font-size: clamp(42px, 13vw, 68px);
      }

      .care-intro {
        margin-top: 16px;
        font-size: 16px;
      }

      .care-note {
        margin-top: 14px;
        font-size: 12px;
      }

      .care-panel {
        gap: 10px;
        padding: 12px;
      }

      .care-card {
        grid-template-columns: 52px 1fr;
        min-height: 84px;
        padding: 13px;
        gap: 12px;
      }

      .care-card::before {
        width: 42px;
        height: 42px;
        font-size: 11px;
      }

      .care-card h3 {
        font-size: 17px;
      }

      .care-card p {
        font-size: 13px;
      }

      .contact-slide {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 22px;
        padding: 86px 18px 112px;
      }

      .contact-copy {
        max-width: none;
      }

      .contact-title {
        font-size: clamp(42px, 13vw, 68px);
      }

      .contact-intro {
        margin-top: 16px;
        font-size: 16px;
      }

      .contact-details {
        margin-top: 18px;
        gap: 8px;
      }

      .contact-row {
        grid-template-columns: 76px 1fr;
        min-height: 42px;
        padding: 9px 11px;
      }

      .contact-row span {
        font-size: 8px;
      }

      .contact-row strong,
      .contact-row a {
        font-size: 12px;
        letter-spacing: 0.06em;
      }

      .contact-actions {
        margin-top: 16px;
      }

      .contact-art-wrap {
        width: 100%;
        min-height: 46vh;
      }

      .contact-art {
        width: min(100%, 390px);
        max-height: 46vh;
      }

      .site-footer {
        margin-top: 0;
        padding: 14px;
        flex-direction: column;
        align-items: stretch;
        text-align: center;
      }

      .footer-main {
        align-items: center;
        justify-content: center;
        flex-direction: row;
        gap: 8px;
      }

      .credit-link,
      .copyright-text {
        text-align: center;
      }

      .footer-law {
        font-size: 12px;
        max-width: none;
        text-align: center;
      }

      .hero-copy {
        order: 2;
        max-width: none;
      }

      .hero-object {
        order: 1;
        min-height: 44vh;
        margin: -4px -18px -10px;
      }

      .model-wrap {
        width: 100%;
        height: 44vh;
        min-height: 340px;
      }

      .spin-hint {
        bottom: clamp(18px, 4vh, 34px);
        font-size: 8px;
      }

      .kicker-row {
        font-size: 8px;
        margin-bottom: 16px;
      }

      .hero-title {
        font-size: clamp(38px, 12.2vw, 52px);
        line-height: 0.9;
      }

      .hero-title .thin {
        font-size: 0.44em;
        margin-top: 9px;
      }

      .hero-line {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.44;
      }

      .hero-meta {
        margin-top: 20px;
        gap: 8px;
      }

      .meta-pill {
        min-height: 32px;
        font-size: 9px;
      }

      .hero-control-row {
        margin-top: 20px;
      }

      .light-control {
        width: 100%;
      }

      .light-face {
        grid-template-columns: 96px 1fr 28px;
        gap: 10px;
        min-height: 68px;
        padding: 8px 13px 8px 8px;
      }

      .joint-strip {
        height: 48px;
        background-size: 164px auto;
      }

      .light-copy {
        font-size: 15px;
      }

      .mini-note {
        max-width: none;
        font-size: 9px;
      }

      .status-rail {
        display: none;
      }

      .mobile-actions {
        display: grid;
      }

      .offer-pop {
        left: 14px;
        right: 14px;
        bottom: 72px;
        width: auto;
        padding: 12px 12px 12px 14px;
      }

      .offer-copy strong {
        font-size: 10px;
      }

      .offer-copy span {
        font-size: 9px;
      }

      .offer-visit {
        min-height: 34px;
        padding: 0 10px;
        font-size: 8px;
      }

      .scroll-joint {
        width: clamp(40px, 10vw, 58px);
        height: clamp(210px, 34vh, 300px);
        opacity: 0;
      }

      .scroll-joint.visible {
        opacity: 0.5;
      }

      .joint-smoke {
        width: 90px;
        height: 140px;
      }

      .back-to-top {
        right: 14px;
        bottom: 76px;
        width: 66px;
        height: 66px;
      }

      .leaf-neon {
        width: 39px;
        height: 38px;
      }

      .back-to-top .top-word {
        bottom: 5px;
        font-size: 7px;
      }
    }

    @media (max-width: 520px) {
      .age-panel {
        padding: 24px 18px;
      }

      .age-actions {
        grid-template-columns: 1fr;
      }

      .age-copy {
        font-size: 14px;
      }

      .model-wrap {
        min-height: 330px;
        height: 42vh;
      }

      .hero {
        padding-top: 72px;
      }

      .hero-title {
        max-width: none;
        font-size: clamp(35px, 11.7vw, 46px);
      }

      .branch-slide {
        padding-top: 78px;
      }

      .branch-card,
      .branch-card:nth-child(2),
      .branch-card:nth-child(3) {
        min-height: 222px;
      }

      .counter-slide {
        padding-top: 76px;
      }

      .proof-slide {
        padding-top: 76px;
      }

      .proof-kicker {
        min-height: 28px;
        font-size: 8px;
      }

      .proof-stat-row {
        display: grid;
        grid-template-columns: 1fr;
      }

      .review-card:nth-child(3) {
        display: none;
      }

      .proof-badge {
        min-height: 28px;
        font-size: 8px;
      }

      .care-slide {
        padding-top: 76px;
      }

      .care-eyebrow {
        min-height: 28px;
        font-size: 8px;
      }

      .care-panel {
        padding: 10px;
      }

      .care-card {
        grid-template-columns: 44px 1fr;
        min-height: 78px;
        padding: 11px;
      }

      .care-card::before {
        width: 36px;
        height: 36px;
        font-size: 10px;
      }

      .care-card h3 {
        font-size: 15px;
        letter-spacing: 0.06em;
      }

      .care-card p {
        font-size: 12px;
      }

      .counter-stage {
        min-height: 31vh;
        gap: 8px;
      }

      .contact-slide {
        padding-top: 76px;
      }

      .contact-art-wrap {
        min-height: 40vh;
      }

      .contact-art {
        width: min(100%, 320px);
        max-height: 40vh;
      }

      .contact-row {
        grid-template-columns: 1fr;
        gap: 6px;
      }

      .contact-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
      }

      .counter-label {
        min-height: 28px;
        font-size: 8px;
      }

      .counter-readout {
        display: none;
      }

      .counter-products {
        grid-template-columns: 1fr 1fr;
      }

      .product-preview-card {
        min-height: 82px;
        grid-template-columns: 92px 1fr;
      }

      .product-preview-copy strong {
        font-size: 9px;
      }

      .product-preview-copy span {
        font-size: 11px;
      }

      .product-chip span {
        display: none;
      }

      .product-chip {
        min-height: 48px;
      }

      .offer-pop {
        grid-template-columns: 1fr;
        gap: 10px;
        padding-right: 14px;
      }

      .offer-actions {
        justify-content: stretch;
      }

      .offer-visit {
        width: 100%;
      }

      .light-face {
        grid-template-columns: 82px 1fr 24px;
      }

      .light-copy {
        font-size: 13px;
        letter-spacing: 0.1em;
      }

      .ember {
        width: 20px;
        height: 20px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      *,
      *::before,
      *::after {
        animation-duration: 1ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 1ms !important;
      }
    }
