    :root {
      --gold: #C9A84C;
      --gold-light: #E8C96A;
      --gold-pale: #F5E6B8;
      --maroon: #6B1B2A;
      --maroon-deep: #4A0F1A;
      --maroon-mid: #8B2435;
      --black: #0A0604;
      --off-black: #130B09;
      --cream: #F7F0E6;
      --text-light: #D4B896;
      --nav-height: 74px;
    }

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

    html {
      scroll-behavior: smooth;
    }

    body {
      background: var(--black);
      color: var(--cream);
      font-family: "Raleway", sans-serif;
      font-weight: 300;
      overflow-x: hidden;
    }

    nav {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      display: flex;
      align-items: center;
      justify-content: space-between;
      box-sizing: border-box;
      min-height: var(--nav-height);
      padding-top: 0;
      padding-bottom: 0;
      padding-left: 16px;
      padding-right: 16px;
      background: linear-gradient(to bottom, rgba(10, 6, 4, 0.96), rgba(10, 6, 4, 0.9));
      backdrop-filter: blur(4px);
      -webkit-backdrop-filter: blur(4px);
      border-bottom: 1px solid rgba(201, 168, 76, 0.15);
    }

    @media (min-width: 640px) {
      nav {
        padding-left: 24px;
        padding-right: 24px;
      }
    }

    @media (min-width: 1024px) {
      :root {
        --nav-height: 88px;
      }

      nav {
        padding-left: calc((100vw - min(1600px, 100vw)) / 2 + 60px);
        padding-right: calc((100vw - min(1600px, 100vw)) / 2 + 60px);
      }
    }

    .nav-logo {
      display: inline-flex;
      align-items: center;
      text-decoration: none;
    }

    .nav-logo img {
      display: block;
      height: 40px;
      width: auto;
      object-fit: contain;
    }

    @media (min-width: 640px) {
      .nav-logo img {
        height: 44px;
      }
    }

    @media (min-width: 1024px) {
      .nav-logo img {
        height: 48px;
      }
    }

    .nav-links {
      display: flex;
      gap: 36px;
      list-style: none;
      align-items: center;
    }

    .nav-links a,
    .mobile-links a,
    .footer-links a,
    .nav-logo {
      cursor: pointer;
    }

    .nav-links a,
    .mobile-links a {
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.28em;
      color: var(--text-light);
      text-decoration: none;
      transition: color 0.3s;
      text-transform: uppercase;
    }

    .nav-links a:hover,
    .mobile-links a:hover {
      color: var(--gold);
    }

    .nav-cta,
    .btn-primary,
    .btn-secondary {
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      text-decoration: none;
      transition: all 0.35s;
    }

    .nav-cta {
      background: transparent;
      border: 1px solid var(--gold);
      color: var(--gold) !important;
      padding: 12px 24px !important;
    }

    .nav-cta:hover {
      background: var(--gold) !important;
      color: var(--black) !important;
    }

    .mobile-toggle {
      display: none;
      border: 1px solid rgba(201, 168, 76, 0.25);
      background: rgba(10, 6, 4, 0.5);
      color: var(--gold);
      padding: 10px 12px;
    }

    .mobile-panel {
      display: none;
      position: fixed;
      top: var(--nav-height);
      left: 20px;
      right: 20px;
      z-index: 101;
      background: rgba(19, 11, 9, 0.98);
      border: 1px solid rgba(201, 168, 76, 0.2);
      padding: 24px;
      box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

    .mobile-panel.open {
      display: block;
    }

    .order-online-float {
      position: fixed;
      right: 22px;
      bottom: var(--order-online-bottom, 22px);
      z-index: 250;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 54px;
      padding: 0 24px;
      border: 1px solid rgba(201, 168, 76, 0.88);
      background: linear-gradient(135deg, rgba(201, 168, 76, 0.96), rgba(232, 201, 106, 0.92));
      color: var(--black);
      font-family: "Cinzel", serif;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.24em;
      text-transform: uppercase;
      text-decoration: none;
      box-shadow:
        0 0 0 1px rgba(201, 168, 76, 0.2),
        0 10px 30px rgba(201, 168, 76, 0.34),
        0 0 28px rgba(201, 168, 76, 0.22);
      transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
    }

    .order-online-float:hover {
      transform: translateY(-2px);
      background: linear-gradient(135deg, rgba(232, 201, 106, 1), rgba(201, 168, 76, 0.96));
      box-shadow:
        0 0 0 1px rgba(201, 168, 76, 0.3),
        0 16px 36px rgba(201, 168, 76, 0.4),
        0 0 36px rgba(201, 168, 76, 0.28);
    }

    .mobile-links {
      display: flex;
      flex-direction: column;
      gap: 18px;
    }

    main {
      min-height: 100vh;
    }

    .hero {
      position: relative;
      min-height: 90svh;
      height: 90svh;
      display: flex;
      align-items: stretch;
      justify-content: center;
      overflow: hidden;
      padding: 0;
    }

    .hero-video-wrap {
      position: absolute;
      inset: 0;
      overflow: hidden;
    }

    .hero-video {
      width: 100%;
      height: 75vh;
      object-fit: cover;
      object-position: center center;
      display: block;
      filter: saturate(0.95) contrast(1.02) brightness(0.62);
      transform: scale(1.03);
    }

    .hero-bg {
      position: absolute;
      inset: 0;
      background:
        linear-gradient(to bottom, rgba(10, 6, 4, 0.34) 0%, rgba(10, 6, 4, 0.48) 36%, rgba(10, 6, 4, 0.78) 100%),
        radial-gradient(ellipse at 60% 40%, rgba(107, 27, 42, 0.38) 0%, transparent 60%),
        radial-gradient(ellipse at 20% 80%, rgba(74, 15, 26, 0.42) 0%, transparent 50%);
    }

    .hero-texture {
      position: absolute;
      inset: 0;
      background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C9A84C' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
      opacity: 0.72;
    }

    .hero-mandala {
      position: absolute;
      right: 8%;
      top: 50%;
      transform: translateY(-50%);
      width: 520px;
      height: 520px;
      opacity: 0.07;
      animation: slowRotate 60s linear infinite;
    }

    @keyframes slowRotate {
      from {
        transform: translateY(-50%) rotate(0deg);
      }
      to {
        transform: translateY(-50%) rotate(360deg);
      }
    }

    .hero-bottom {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 3;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 18px;
      padding: 0 24px 34px;
    }

    .hero-content {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 160px;
      z-index: 3;
      text-align: center;
      max-width: none;
      padding: 0 24px;
      animation: heroReveal 1.4s ease forwards;
      opacity: 0;
    }

    @keyframes heroReveal {
      0% {
        opacity: 0;
        transform: translateY(30px);
      }
      100% {
        opacity: 1;
        transform: translateY(0);
      }
    }

    .hero-eyebrow,
    .section-eyebrow {
      font-family: "Cinzel", serif;
      text-transform: uppercase;
      color: var(--gold);
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .hero-eyebrow {
      justify-content: center;
      font-size: 11px;
      letter-spacing: 0.5em;
      margin-bottom: 28px;
    }

    .hero-eyebrow::before,
    .hero-eyebrow::after {
      content: "";
      width: 50px;
      height: 1px;
      background: var(--gold);
      opacity: 0.6;
    }

    .hero-title {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(62px, 8vw, 110px);
      font-weight: 300;
      line-height: 0.9;
      color: var(--cream);
      margin-bottom: 8px;
      letter-spacing: -0.02em;
    }

    .hero-title em,
    .section-title em,
    .bar-quote em {
      font-style: italic;
      color: var(--gold-light);
    }

    .hero-subtitle {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(16px, 2.5vw, 24px);
      font-style: italic;
      color: var(--text-light);
      margin-bottom: 48px;
      letter-spacing: 0.05em;
      font-weight: 300;
    }

    .hero-ctas {
      display: flex;
      gap: 20px;
      justify-content: center;
      flex-wrap: wrap;
      align-items: center;
    }

    .btn-primary {
      padding: 16px 40px;
      background: var(--gold);
      color: var(--black);
      border: 1px solid var(--gold);
      font-weight: 600;
      box-shadow: 0 16px 44px rgba(10, 6, 4, 0.28);
    }

    .btn-primary:hover {
      background: var(--maroon);
      color: var(--gold);
      border-color: var(--gold);
    }

    .btn-secondary {
      padding: 16px 40px;
      background: rgba(10, 6, 4, 0.46);
      color: var(--gold);
      border: 1px solid rgba(201, 168, 76, 0.4);
      font-weight: 400;
      box-shadow: 0 16px 44px rgba(10, 6, 4, 0.22);
      backdrop-filter: blur(10px);
    }

    .btn-secondary:hover {
      border-color: var(--gold);
      background: rgba(201, 168, 76, 0.12);
    }

    .hero-scroll {
      position: absolute;
      left: 50%;
      bottom: 26px;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      color: var(--text-light);
      font-family: "Cinzel", serif;
      font-size: 9px;
      letter-spacing: 0.3em;
      text-transform: uppercase;
      opacity: 0.6;
      animation: scrollBob 2s ease-in-out infinite;
    }

    @keyframes scrollBob {
      0%, 100% {
        transform: translateX(-50%) translateY(0);
      }
      50% {
        transform: translateX(-50%) translateY(6px);
      }
    }

    .scroll-line {
      width: 1px;
      height: 40px;
      background: linear-gradient(to bottom, var(--gold), transparent);
    }

    .marquee-band {
      background: var(--maroon);
      min-height: 40px;
      padding: 0;
      display: flex;
      align-items: center;
      overflow: hidden;
      border-top: 1px solid rgba(201, 168, 76, 0.2);
      border-bottom: 1px solid rgba(201, 168, 76, 0.2);
      position: relative;
      z-index: 4;
    }

    .marquee-track {
      display: flex;
      gap: 0;
      animation: marquee 30s linear infinite;
      width: max-content;
    }

    .marquee-track span {
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.35em;
      color: var(--gold);
      text-transform: uppercase;
      white-space: nowrap;
      padding: 0 40px;
    }

    .marquee-dot {
      color: rgba(201, 168, 76, 0.4) !important;
      padding: 0 10px !important;
    }

    @keyframes marquee {
      from {
        transform: translateX(0);
      }
      to {
        transform: translateX(-50%);
      }
    }

    body:not(.page-home) section {
      padding: 98px 0px 30px 0px;
    }

    .section-eyebrow {
      font-size: 10px;
      letter-spacing: 0.45em;
      margin-bottom: 20px;
    }

    .section-eyebrow::after {
      content: "";
      flex: 1;
      max-width: 60px;
      height: 1px;
      background: var(--gold);
      opacity: 0.5;
    }

    .section-title {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(40px, 5vw, 68px);
      font-weight: 300;
      line-height: 1.05;
      color: var(--cream);
      margin-bottom: 28px;
    }

    .section-body {
      font-size: 15px;
      line-height: 1.9;
      color: var(--text-light);
      font-weight: 300;
      max-width: 560px;
    }

    .home-overview {
      max-width: 1300px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .home-card {
      background: var(--off-black);
      padding: 34px 28px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    .home-card h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: 34px;
      font-weight: 300;
      line-height: 1.1;
      color: var(--cream);
      margin: 14px 0 16px;
    }

    .home-card p {
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.85;
    }

    .home-card .btn-secondary {
      display: inline-block;
      margin-top: auto;
      white-space: nowrap;
    }

    .home-carousel-shell {
      max-width: 1300px;
      margin: 46px auto 0;
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(201, 168, 76, 0.16);
      background: rgba(201, 168, 76, 0.05);
    }

    .home-carousel-track {
      display: flex;
      transition: transform 0.55s ease;
    }

    .home-carousel-slide {
      min-width: 100%;
      min-height: 560px;
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: flex-end;
      padding: 42px;
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.92) 0%, rgba(10, 6, 4, 0.18) 58%, rgba(10, 6, 4, 0.06) 100%),
        linear-gradient(135deg, #1A0508 0%, #4A0F1A 42%, #24080F 100%);
    }

    .home-carousel-slide::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.9;
      background-size: cover;
      background-position: center;
      z-index: 0;
    }

    .home-carousel-slide[data-slide="1"]::before {
      background-image:
        radial-gradient(circle at 20% 25%, rgba(232, 201, 106, 0.22), transparent 24%),
        linear-gradient(135deg, rgba(107, 27, 42, 0.16), rgba(10, 6, 4, 0)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='900' viewBox='0 0 1200 900'%3E%3Crect fill='%23130B09' width='1200' height='900'/%3E%3Crect x='90' y='120' width='1020' height='620' rx='26' fill='%23501824'/%3E%3Crect x='120' y='150' width='960' height='560' rx='22' fill='%236B1B2A'/%3E%3Crect x='170' y='220' width='440' height='300' rx='18' fill='%23C9A84C' fill-opacity='0.3'/%3E%3Crect x='650' y='220' width='360' height='110' rx='16' fill='%23F7F0E6' fill-opacity='0.12'/%3E%3Crect x='650' y='370' width='360' height='240' rx='16' fill='%23F7F0E6' fill-opacity='0.08'/%3E%3Ccircle cx='860' cy='210' r='86' fill='%23E8C96A' fill-opacity='0.16'/%3E%3C/svg%3E");
    }

    .home-carousel-slide[data-slide="2"]::before {
      background-image:
        radial-gradient(circle at 78% 20%, rgba(232, 201, 106, 0.18), transparent 22%),
        linear-gradient(135deg, rgba(139, 36, 53, 0.22), rgba(10, 6, 4, 0)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='900' viewBox='0 0 1200 900'%3E%3Crect fill='%230F0508' width='1200' height='900'/%3E%3Crect x='110' y='140' width='980' height='600' rx='28' fill='%231A0810'/%3E%3Crect x='170' y='210' width='220' height='380' rx='26' fill='%23C9A84C' fill-opacity='0.22'/%3E%3Crect x='430' y='240' width='620' height='120' rx='22' fill='%238B2435' fill-opacity='0.55'/%3E%3Crect x='430' y='400' width='620' height='160' rx='22' fill='%23F7F0E6' fill-opacity='0.09'/%3E%3Ccircle cx='280' cy='640' r='86' fill='%23E8C96A' fill-opacity='0.16'/%3E%3C/svg%3E");
    }

    .home-carousel-slide[data-slide="3"]::before {
      background-image:
        radial-gradient(circle at 25% 24%, rgba(232, 201, 106, 0.18), transparent 22%),
        linear-gradient(135deg, rgba(74, 15, 26, 0.18), rgba(10, 6, 4, 0)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='900' viewBox='0 0 1200 900'%3E%3Crect fill='%23130B09' width='1200' height='900'/%3E%3Crect x='120' y='150' width='960' height='580' rx='28' fill='%234A0F1A'/%3E%3Ccircle cx='320' cy='450' r='160' fill='%23C9A84C' fill-opacity='0.18'/%3E%3Ccircle cx='790' cy='410' r='120' fill='%23F7F0E6' fill-opacity='0.08'/%3E%3Crect x='540' y='250' width='350' height='250' rx='26' fill='%238B2435' fill-opacity='0.5'/%3E%3Crect x='500' y='560' width='430' height='70' rx='20' fill='%23F7F0E6' fill-opacity='0.1'/%3E%3C/svg%3E");
    }

    .home-carousel-copy {
      position: relative;
      z-index: 1;
      max-width: 560px;
    }

    .home-carousel-copy h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(42px, 5vw, 68px);
      font-weight: 300;
      line-height: 1.04;
      color: var(--cream);
      margin: 16px 0 18px;
    }

    .home-carousel-copy p {
      color: var(--text-light);
      font-size: 15px;
      line-height: 1.9;
      max-width: 500px;
    }

    .home-carousel-actions {
      position: absolute;
      right: 24px;
      bottom: 24px;
      z-index: 2;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .home-carousel-arrow {
      width: 54px;
      height: 54px;
      border-radius: 999px;
      border: 1px solid rgba(201, 168, 76, 0.28);
      background: rgba(10, 6, 4, 0.78);
      color: var(--gold);
      font-size: 22px;
      line-height: 1;
      cursor: pointer;
      transition: all 0.3s;
    }

    .home-carousel-arrow:hover {
      background: var(--gold);
      color: var(--black);
    }

    .home-carousel-dots {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-top: 18px;
    }

    .home-carousel-dot {
      width: 12px;
      height: 12px;
      border-radius: 999px;
      border: 0;
      background: rgba(247, 240, 230, 0.22);
      cursor: pointer;
      transition: all 0.25s;
    }

    .home-carousel-dot.is-active {
      width: 36px;
      background: var(--gold);
    }

    .social-section {
      max-width: 1300px;
      margin: 0 auto;
    }

    .social-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .social-card {
      background: var(--black);
      padding: 34px 30px;
      display: flex;
      flex-direction: column;
      min-height: 320px;
      position: relative;
      overflow: hidden;
    }

    .social-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at top right, rgba(201, 168, 76, 0.12), transparent 32%),
        linear-gradient(180deg, rgba(139, 36, 53, 0.08), transparent 50%);
      pointer-events: none;
    }

    .social-card > * {
      position: relative;
      z-index: 1;
    }

    .social-card h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: 38px;
      font-weight: 300;
      line-height: 1.1;
      color: var(--cream);
      margin: 14px 0 14px;
    }

    .social-card p {
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.85;
    }

    .social-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 18px;
    }

    .social-tag {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 7px 12px;
      border-radius: 999px;
      background: rgba(201, 168, 76, 0.14);
      color: var(--gold-light);
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .social-link {
      margin-top: auto;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding-top: 22px;
      color: var(--gold);
      text-decoration: none;
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .social-link:hover {
      color: var(--gold-light);
    }

    .placeholder-section {
      max-width: 1300px;
      margin: 42px auto 0;
    }

    .placeholder-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .placeholder-card {
      min-height: 320px;
      background: var(--off-black);
      padding: 34px 30px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      position: relative;
      overflow: hidden;
    }

    .placeholder-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at top right, rgba(201, 168, 76, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(107, 27, 42, 0.14), transparent 52%);
      pointer-events: none;
    }

    .placeholder-card > * {
      position: relative;
      z-index: 1;
    }

    .placeholder-card[data-kind="video"] {
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.9), rgba(10, 6, 4, 0.15)),
        linear-gradient(145deg, #1A0508, #4A0F1A 48%, #220B10);
    }

    .placeholder-card[data-kind="image"] {
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.9), rgba(10, 6, 4, 0.15)),
        linear-gradient(145deg, #2A0A14, #6B1B2A 48%, #8B2435);
    }

    .placeholder-card[data-kind="story"] {
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.9), rgba(10, 6, 4, 0.15)),
        linear-gradient(145deg, #2A0D0A, #5A1810 48%, #3D0D08);
    }

    .placeholder-card h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: 38px;
      font-weight: 300;
      line-height: 1.08;
      color: var(--cream);
      margin: 14px 0 12px;
    }

    .placeholder-card p {
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.85;
    }

    .about {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
      max-width: 1300px;
      margin: 0 auto;
    }

    .about.about-compact {
      align-items: stretch;
      gap: 56px;
    }

    .about-visual {
      position: relative;
    }

    .about-img-main {
      width: 100%;
      aspect-ratio: 3 / 4;
      background: linear-gradient(135deg, var(--maroon-deep) 0%, var(--maroon) 50%, #2A0A14 100%);
      position: relative;
      overflow: hidden;
    }

    .about.about-compact .about-img-main {
      aspect-ratio: auto;
      min-height: 460px;
      height: 100%;
    }

    .about.about-compact .about-text {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .about-img-main::before {
      content: "";
      position: absolute;
      inset: 0;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='400' viewBox='0 0 300 400'%3E%3Cdefs%3E%3CradialGradient id='g' cx='50%25' cy='40%25' r='60%25'%3E%3Cstop offset='0%25' stop-color='%23C9A84C' stop-opacity='0.15'/%3E%3Cstop offset='100%25' stop-color='transparent'/%3E%3C/radialGradient%3E%3C/defs%3E%3Crect fill='url(%23g)' width='300' height='400'/%3E%3Ccircle cx='150' cy='160' r='80' fill='none' stroke='%23C9A84C' stroke-width='0.5' stroke-opacity='0.3'/%3E%3Ccircle cx='150' cy='160' r='60' fill='none' stroke='%23C9A84C' stroke-width='0.5' stroke-opacity='0.3'/%3E%3Ccircle cx='150' cy='160' r='100' fill='none' stroke='%23C9A84C' stroke-width='0.5' stroke-opacity='0.2'/%3E%3Ctext x='150' y='170' text-anchor='middle' font-family='serif' font-size='80' fill='%23C9A84C' fill-opacity='0.12'%3E✦%3C/text%3E%3C/svg%3E") center / cover no-repeat;
    }

    .about-img-float {
      position: absolute;
      bottom: -40px;
      right: -40px;
      width: 55%;
      aspect-ratio: 1;
      background: linear-gradient(145deg, var(--maroon-mid) 0%, var(--maroon-deep) 100%);
      border: 1px solid rgba(201, 168, 76, 0.3);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .about-img-float-inner {
      font-family: "Cormorant Garamond", serif;
      font-size: 13px;
      font-style: italic;
      color: var(--gold);
      letter-spacing: 0.1em;
      text-align: center;
      padding: 20px;
    }

    .about-img-float-inner strong {
      display: block;
      font-family: "Cinzel", serif;
      font-size: 28px;
      font-style: normal;
      font-weight: 600;
      color: var(--gold-light);
      line-height: 1;
      margin-bottom: 4px;
    }

    .about-gold-bar {
      position: absolute;
      top: 40px;
      left: -20px;
      width: 3px;
      height: 120px;
      background: linear-gradient(to bottom, var(--gold), var(--maroon));
    }

    .media-grid {
      max-width: 1300px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .video-panel,
    .media-stack > div {
      position: relative;
      overflow: hidden;
      background: var(--off-black);
      min-height: 300px;
    }

    .video-panel {
      min-height: 460px;
      display: flex;
      align-items: flex-end;
      padding: 40px;
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.9), rgba(10, 6, 4, 0.15)),
        linear-gradient(135deg, #1A0508, #4A0F1A 45%, #220B10);
    }

    .about-story-panel {
      align-items: stretch;
      padding: 46px 40px;
      background:
        linear-gradient(to bottom, rgba(10, 6, 4, 0.2), rgba(10, 6, 4, 0.5)),
        linear-gradient(145deg, #12080a 0%, #2a0a14 52%, #4a0f1a 100%);
    }

    .about-story-copy {
      max-width: 720px;
      margin: auto 0;
    }

    .about-story-copy h3 {
      color: var(--gold-light);
    }

    .about-story-copy p {
      color: var(--gold-pale);
      line-height: 1.9;
      font-size: 15px;
    }

    .about-story-copy .section-title {
      margin-bottom: 18px;
    }

    .about-story-copy .section-body {
      max-width: none;
    }

    .about-image-panel {
      min-height: 460px;
      position: relative;
      overflow: hidden;
      background:
        linear-gradient(to top, rgba(10, 6, 4, 0.82), rgba(10, 6, 4, 0.12)),
        linear-gradient(145deg, #1A0508 0%, #4A0F1A 48%, #220B10 100%);
    }

    .about-image-panel img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      opacity: 0.82;
    }

    .about-text-panel {
      min-height: 460px;
      padding: 46px 40px;
      display: flex;
      align-items: center;
      background:
        linear-gradient(to bottom, rgba(10, 6, 4, 0.18), rgba(10, 6, 4, 0.52)),
        linear-gradient(145deg, #12080a 0%, #250810 52%, #4a0f1a 100%);
    }

    .about-text-panel .about-story-copy {
      max-width: 720px;
    }

    .about-page-gap {
      margin-bottom: 32px;
    }

    .video-badge,
    .media-label,
    .testimonial-label {
      font-family: "Cinzel", serif;
      font-size: 9px;
      letter-spacing: 0.34em;
      text-transform: uppercase;
      color: var(--gold);
    }

    .pricing-label {
      font-family: "Cinzel", serif;
      font-size: clamp(20px, 2.4vw, 30px);
      font-weight: 600;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold);
    }

    .video-copy h3,
    .media-stack h3,
    .testimonial-card h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: 38px;
      font-weight: 300;
      line-height: 1.1;
      color: var(--cream);
    }

    .video-copy p,
    .media-stack p,
    .pricing-card p,
    .testimonial-card p {
      color: var(--text-light);
      line-height: 1.8;
      font-size: 14px;
    }

    .video-play {
      position: absolute;
      top: 32px;
      right: 32px;
      width: 74px;
      height: 74px;
      border-radius: 999px;
      border: 1px solid rgba(201, 168, 76, 0.32);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--gold);
      background: rgba(10, 6, 4, 0.35);
    }

    .media-stack {
      display: grid;
      grid-template-rows: 1fr 1fr;
      gap: 2px;
    }

    .media-stack > div {
      padding: 36px 32px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
    }

    .media-image-one {
      background: linear-gradient(145deg, #2A0D0A 0%, #5A1810 48%, #3D0D08 100%);
    }

    .media-image-two {
      background: linear-gradient(145deg, #2A0A14 0%, #6B1B2A 48%, #8B2435 100%);
    }

    .dishes-section,
    .pricing-section,
    .testimonials-section {
      background: var(--off-black);
      position: relative;
      overflow: hidden;
    }

    .dishes-section::before,
    .pricing-section::before,
    .testimonials-section::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 1px;
      background: linear-gradient(to right, transparent, var(--gold), transparent);
      opacity: 0.3;
    }

    .dishes-header,
    .pricing-header,
    .testimonials-header {
      text-align: center;
      max-width: 1024px;
      margin: 0 auto 80px;
    }

    .dishes-header .section-eyebrow,
    .pricing-header .section-eyebrow,
    .testimonials-header .section-eyebrow {
      justify-content: center;
    }

    .dishes-header .section-eyebrow::before,
    .pricing-header .section-eyebrow::before,
    .testimonials-header .section-eyebrow::before {
      content: "";
      flex: 1;
      max-width: 60px;
      height: 1px;
      background: var(--gold);
      opacity: 0.5;
    }

    .dishes-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      max-width: 1300px;
      margin: 0 auto 60px;
    }

    .dish-card {
      position: relative;
      aspect-ratio: 3 / 4;
      overflow: hidden;
      cursor: pointer;
      background: var(--maroon-deep);
    }

    .dish-card:nth-child(2) {
      aspect-ratio: 3 / 5;
      margin-top: -40px;
    }

    .dish-bg {
      position: absolute;
      inset: 0;
      transition: transform 0.7s ease;
    }

    .dish-card:hover .dish-bg {
      transform: scale(1.07);
    }

    .dish-bg-1 {
      background: linear-gradient(145deg, #3D0D1A 0%, #6B1B2A 40%, #8B2435 100%);
    }

    .dish-bg-2 {
      background: linear-gradient(145deg, #1A0810 0%, #4A0F1A 50%, #2A0A14 100%);
    }

    .dish-bg-3 {
      background: linear-gradient(145deg, #2A0D0A 0%, #5A1810 50%, #3D0D08 100%);
    }

    .dish-icon {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -60%);
      font-size: 80px;
      opacity: 0.12;
      transition: opacity 0.4s;
    }

    .dish-card:hover .dish-icon {
      opacity: 0.08;
    }

    .dish-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(10, 6, 4, 0.9) 0%, transparent 60%);
    }

    .dish-info {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 32px 28px;
    }

    .dish-tag {
      font-family: "Cinzel", serif;
      font-size: 9px;
      letter-spacing: 0.35em;
      color: var(--gold);
      text-transform: uppercase;
      margin-bottom: 8px;
      display: block;
      opacity: 0.8;
    }

    .dish-name {
      font-family: "Cormorant Garamond", serif;
      font-size: 28px;
      font-weight: 400;
      color: var(--cream);
      margin-bottom: 10px;
      line-height: 1.1;
    }

    .dish-desc {
      font-size: 12px;
      color: var(--text-light);
      line-height: 1.7;
      opacity: 0;
      transform: translateY(10px);
      transition: all 0.4s;
    }

    .dish-card:hover .dish-desc {
      opacity: 1;
      transform: translateY(0);
    }

    .dish-border {
      position: absolute;
      top: 16px;
      right: 16px;
      width: 30px;
      height: 30px;
      border-top: 1px solid rgba(201, 168, 76, 0.4);
      border-right: 1px solid rgba(201, 168, 76, 0.4);
    }

    .menu-notes {
      max-width: 960px;
      margin: 32px auto 0;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .menu-note {
      background: var(--black);
      padding: 28px 24px;
      text-align: center;
    }

    .menu-note h3 {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.32em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 10px;
    }

    .menu-note p {
      color: var(--text-light);
      font-size: 13px;
      line-height: 1.8;
    }

    .menu-switch {
      max-width: 1300px;
      margin: 42px auto 0;
      display: flex;
      justify-content: center;
      gap: 14px;
      flex-wrap: wrap;
    }

    .menu-switch-button {
      border: 1px solid rgba(201, 168, 76, 0.28);
      background: rgba(19, 11, 9, 0.9);
      color: var(--text-light);
      padding: 14px 24px;
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.24em;
      text-transform: uppercase;
      cursor: pointer;
      transition: all 0.3s;
    }

    .menu-switch-button:hover,
    .menu-switch-button.is-active {
      border-color: var(--gold);
      background: var(--gold);
      color: var(--black);
    }

    .menu-panel[hidden] {
      display: none !important;
    }

    .menu-catalog {
      max-width: 1300px;
      margin: 48px auto 0;
      background: var(--black);
      padding: 0 18px;
    }

    .menu-catalog-columns {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0 36px;
      align-items: start;
    }

    .menu-column {
      min-width: 0;
    }

    .menu-category {
      padding: 22px 0 8px;
    }

    .menu-page .dishes-header .section-title {
      font-size: clamp(30px, 3.8vw, 48px);
    }

    .menu-page .dishes-header .section-body {
      font-size: 12px !important;
    }

    .menu-category-toggle {
      width: 100%;
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 20px;
      padding: 0;
      border: 0;
      background: transparent;
      color: inherit;
      text-align: left;
      cursor: pointer;
    }

    .menu-category-heading {
      min-width: 0;
    }

    .menu-category-title {
      font-family: "Cinzel", serif;
      font-size: clamp(28px, 4vw, 42px);
      letter-spacing: 0.08em;
      color: var(--gold-light);
      text-transform: uppercase;
      margin-bottom: 10px;
    }

    .menu-category-rule {
      width: 180px;
      max-width: 100%;
      height: 3px;
      background: var(--gold);
      opacity: 0.95;
      margin-bottom: 34px;
    }

    .menu-subtitle {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(32px, 4vw, 48px);
      font-style: italic;
      color: var(--cream);
      margin: 18px 0 14px;
    }

    .menu-category-toggle:hover .menu-category-title,
    .menu-category-toggle:hover .menu-subtitle {
      color: var(--gold);
    }

    .menu-page .menu-switch-button {
      font-size: 9px;
      padding: 12px 20px;
    }

    .menu-page .menu-category-title {
      font-size: clamp(19px, 2.4vw, 27px);
      margin-bottom: 8px;
    }

    .menu-page .menu-category-rule {
      width: 150px;
      height: 2px;
      margin-bottom: 24px;
    }

    .menu-page .menu-subtitle {
      font-size: clamp(21px, 2.6vw, 29px);
      margin: 12px 0 8px;
    }

    .menu-category-arrow {
      flex-shrink: 0;
      width: 14px;
      height: 14px;
      border-right: 2px solid var(--gold);
      border-bottom: 2px solid var(--gold);
      transform: rotate(45deg);
      transition: transform 0.25s ease, margin-bottom 0.25s ease;
      margin-bottom: 40px;
    }

    .menu-category.is-collapsed .menu-category-arrow {
      transform: rotate(-45deg);
      margin-bottom: 34px;
    }

    .menu-category-body[hidden] {
      display: none !important;
    }

    .menu-time {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(52px, 8vw, 76px);
      font-weight: 600;
      line-height: 0.95;
      color: var(--cream);
      margin-bottom: 24px;
    }

    .menu-page .menu-time {
      font-size: clamp(32px, 4.4vw, 46px);
      margin-bottom: 16px;
    }

    .menu-inline-note {
      margin: -10px 0 18px;
      color: var(--text-light);
      font-size: 12px;
      line-height: 1.7;
      opacity: 0.9;
      text-align: left;
    }

    .menu-items {
      display: grid;
    }

    .menu-item {
      border-bottom: 1px solid rgba(201, 168, 76, 0.15);
      padding: 28px 0 30px;
    }

    .menu-page .menu-item {
      padding: 18px 0 20px;
    }

    .menu-item-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 10px;
    }

    .menu-item-title {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 10px;
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(28px, 3vw, 46px);
      line-height: 1.08;
      color: var(--cream);
    }

    .menu-page .menu-item-title {
      font-size: clamp(17px, 1.7vw, 24px);
      gap: 8px;
    }

    .menu-item-price {
      flex-shrink: 0;
      text-align: right;
      font-size: clamp(20px, 2vw, 28px);
      color: rgba(247, 240, 230, 0.86);
      line-height: 1.2;
      white-space: nowrap;
    }

    .menu-page .menu-item-price {
      font-size: clamp(14px, 1.2vw, 18px);
    }

    .menu-item-desc {
      color: rgba(212, 184, 150, 0.62);
      font-size: clamp(15px, 1.5vw, 18px);
      line-height: 1.8;
      max-width: 1280px;
    }

    .menu-page .menu-item-desc {
      font-size: clamp(12px, 0.95vw, 14px);
      line-height: 1.65;
    }

    .menu-item-options {
      margin-top: 10px;
      text-align: center;
      font-size: clamp(18px, 2vw, 28px);
      font-weight: 600;
      color: rgba(247, 240, 230, 0.88);
      line-height: 1.5;
    }

    .menu-page .menu-item-options {
      font-size: clamp(13px, 1.15vw, 17px);
    }

    .menu-meta-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 12px;
    }

    .menu-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 32px;
      height: 32px;
      padding: 0 8px;
      border-radius: 8px;
      background: var(--gold-light);
      color: var(--black);
      font-family: "Cinzel", serif;
      font-size: 16px;
      line-height: 1;
    }

    .menu-tag {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 5px 10px;
      border-radius: 6px;
      background: var(--gold-light);
      color: var(--black);
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      line-height: 1;
    }

    .menu-category-head {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 24px;
    }

    .menu-rate-row {
      display: flex;
      justify-content: flex-end;
      padding: 0 0 10px;
    }

    .bar-size-guide {
      padding-bottom: 0;
      text-align: right;
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold-light);
      white-space: nowrap;
    }

    .menu-page .bar-size-guide {
      font-size: 9px;
    }

    .experience-strip {
      background: var(--maroon-deep);
      border-top: 1px solid rgba(201, 168, 76, 0.2);
      border-bottom: 1px solid rgba(201, 168, 76, 0.2);
      padding: 80px 60px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1px;
      position: relative;
    }

    .exp-item {
      text-align: center;
      padding: 40px 30px;
      position: relative;
    }

    .exp-item::after {
      content: "";
      position: absolute;
      right: 0;
      top: 20%;
      bottom: 20%;
      width: 1px;
      background: rgba(201, 168, 76, 0.2);
    }

    .exp-item:last-child::after {
      display: none;
    }

    .exp-number {
      font-family: "Cormorant Garamond", serif;
      font-size: 56px;
      font-weight: 300;
      color: var(--gold);
      line-height: 1;
      margin-bottom: 8px;
    }

    .exp-label {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.3em;
      color: var(--text-light);
      text-transform: uppercase;
    }

    .pricing-grid,
    .testimonial-grid {
      max-width: 1300px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .pricing-grid {
      grid-template-columns: repeat(2, 1fr);
      max-width: 1100px;
    }

    .pricing-card,
    .testimonial-card {
      background: var(--black);
      padding: 36px 32px;
    }

    .pricing-price {
      font-family: "Cormorant Garamond", serif;
      font-size: 54px;
      line-height: 1;
      color: var(--cream);
      margin: 16px 0 18px;
    }

    .pricing-price span {
      font-size: 18px;
      color: var(--text-light);
    }

    .pricing-list {
      margin-top: 18px;
      list-style: none;
      display: grid;
      gap: 10px;
      color: var(--text-light);
      font-size: 13px;
      line-height: 1.8;
    }

    .pricing-actions {
      max-width: 1100px;
      margin: 40px auto 0;
      text-align: center;
    }

    .pricing-note {
      max-width: 1100px;
      margin: 32px auto 0;
      padding: 28px 24px;
      border-top: 1px solid rgba(201, 168, 76, 0.18);
      text-align: center;
    }

    .pricing-note p {
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.9;
    }

    .detail-grid {
      max-width: 1300px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .detail-card,
    .reservation-card,
    .home-card {
      background: var(--off-black);
      padding: 34px 30px;
    }

    .detail-card h3,
    .reservation-card h3 {
      font-family: "Cormorant Garamond", serif;
      font-size: 38px;
      font-weight: 300;
      line-height: 1.1;
      color: var(--cream);
      margin: 14px 0 16px;
    }

    .detail-card p,
    .reservation-card p {
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.85;
    }

    .mini-label {
      font-family: "Cinzel", serif;
      font-size: 9px;
      letter-spacing: 0.34em;
      text-transform: uppercase;
      color: var(--gold);
    }

    .events-showcase-curved {
      max-width: 1380px;
      margin: 0 auto;
      padding: 18px 18px 8px;
      background:
        radial-gradient(circle at top, rgba(201, 168, 76, 0.08), transparent 42%),
        rgba(201, 168, 76, 0.06);
    }

    .events-carousel-copy {
      max-width: 760px;
      margin: 0 auto 28px;
      text-align: center;
    }

    .events-carousel-copy p {
      margin-top: 10px;
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.8;
    }

    .events-carousel-shell {
      position: relative;
      min-height: 600px;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0 72px;
      perspective: 1400px;
      overflow: hidden;
    }

    .events-carousel-stage {
      position: relative;
      width: 100%;
      min-height: 600px;
      overflow: hidden;
    }

    .events-carousel-track {
      position: relative;
      width: 100%;
      height: 600px;
      transform-style: preserve-3d;
    }

    .events-carousel-slide {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 340px;
      height: 430px;
      display: block;
      overflow: hidden;
      background: #14090b;
      border: 6px solid rgba(10, 6, 4, 0.82);
      box-shadow: 0 28px 70px rgba(0, 0, 0, 0.34);
      opacity: 0;
      pointer-events: none;
      transform: translate(-50%, -50%) scale(0.84);
      transition: transform 0.75s ease, opacity 0.75s ease, filter 0.75s ease, box-shadow 0.75s ease;
      backface-visibility: hidden;
      transform-style: preserve-3d;
    }

    .events-carousel-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .events-carousel-slide::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(to top, rgba(10, 6, 4, 0.2), rgba(10, 6, 4, 0.02) 44%, rgba(10, 6, 4, 0.08));
      pointer-events: none;
    }

    .events-carousel-slide.pos-center {
      transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1.04);
      opacity: 1;
      z-index: 6;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-left-1 {
      transform: translate(-50%, -50%) translateX(-180px) rotateY(12deg) scale(1);
      opacity: 0.96;
      z-index: 4;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-right-1 {
      transform: translate(-50%, -50%) translateX(180px) rotateY(-12deg) scale(1);
      opacity: 0.96;
      z-index: 4;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-left-2 {
      transform: translate(-50%, -50%) translateX(-430px) rotateY(24deg) scale(0.92);
      opacity: 0.8;
      z-index: 3;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-right-2 {
      transform: translate(-50%, -50%) translateX(430px) rotateY(-24deg) scale(0.92);
      opacity: 0.8;
      z-index: 3;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-left-3 {
      transform: translate(-50%, -50%) translateX(-650px) rotateY(34deg) scale(0.84);
      opacity: 0.54;
      z-index: 2;
      pointer-events: auto;
    }

    .events-carousel-slide.pos-right-3 {
      transform: translate(-50%, -50%) translateX(650px) rotateY(-34deg) scale(0.84);
      opacity: 0.54;
      z-index: 2;
      pointer-events: auto;
    }

    .events-carousel-nav {
      position: absolute;
      top: 50%;
      z-index: 8;
      width: 52px;
      height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(201, 168, 76, 0.28);
      background: rgba(0, 0, 0, 0.22);
      backdrop-filter: blur(10px);
      color: var(--cream);
      font-size: 28px;
      line-height: 1;
      cursor: pointer;
      transform: translateY(-50%);
      transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
    }

    .events-carousel-nav:hover {
      border-color: var(--gold);
      background: rgba(201, 168, 76, 0.16);
      color: var(--gold-light);
    }

    .events-carousel-nav-prev {
      left: 8px;
    }

    .events-carousel-nav-next {
      right: 8px;
    }

    .events-carousel-meta {
      max-width: 1120px;
      margin: 18px auto 0;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      flex-wrap: wrap;
    }

    .events-carousel-progress {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .events-carousel-dot {
      width: 40px;
      height: 3px;
      border: 0;
      background: rgba(201, 168, 76, 0.18);
      cursor: pointer;
      transition: background 0.3s ease, transform 0.3s ease;
    }

    .events-carousel-dot.is-active {
      background: var(--gold);
      transform: scaleX(1.08);
    }

    .events-carousel-counter {
      color: var(--gold-light);
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .events-photo-caption {
      max-width: 1120px;
      margin: 26px auto 0;
      text-align: center;
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.9;
    }

    .events-prose {
      max-width: 1220px;
      margin: 52px auto 0;
      display: grid;
      gap: 26px;
      text-align: center;
    }

    .events-prose p {
      color: var(--text-light);
      font-size: clamp(18px, 1.7vw, 22px);
      line-height: 1.9;
    }

    .events-closing {
      font-style: italic;
      color: var(--cream) !important;
    }

    .bar-section {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0;
      max-width: 100%;
      padding: 0;
    }

    .bar-visual {
      background: linear-gradient(135deg, var(--maroon-deep) 0%, #1A0508 50%, var(--maroon) 100%);
      min-height: 600px;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      overflow: hidden;
    }

    .bar-visual::before {
      content: "✦";
      position: absolute;
      font-size: 200px;
      opacity: 0.04;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }

    .bar-visual-inner {
      position: relative;
      text-align: center;
      padding: 60px;
    }

    .bar-quote {
      font-family: "Cormorant Garamond", serif;
      font-size: clamp(28px, 4vw, 48px);
      font-style: italic;
      font-weight: 300;
      color: var(--cream);
      line-height: 1.3;
      margin-bottom: 24px;
    }

    .bar-attr {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.4em;
      color: var(--gold);
      text-transform: uppercase;
      opacity: 0.7;
    }

    .bar-content {
      background: #0D0508;
      padding: 80px 70px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .event-features {
      margin: 28px 0 36px;
      display: grid;
      gap: 14px;
      color: var(--text-light);
      font-size: 14px;
    }

    .testimonials-section .section-body {
      margin: 0 auto;
      text-align: center;
    }

    .testimonial-card .quote {
      font-family: "Cormorant Garamond", serif;
      font-size: 18px;
      line-height: 1.35;
      color: var(--cream);
      margin-bottom: 18px;
    }

    .testimonial-source {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      color: var(--gold);
      opacity: 0.8;
    }

    .reservation-grid {
      max-width: 1300px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(201, 168, 76, 0.08);
    }

    .reservation-shell {
      max-width: 1300px;
      margin: 0 auto;
      padding: 44px 42px 48px;
      background: var(--off-black);
      border: 1px solid rgba(201, 168, 76, 0.12);
    }

    .reservation-intro {
      max-width: 900px;
      margin: 0 auto 38px;
      text-align: center;
      color: var(--text-light);
      font-size: 14px;
      line-height: 1.9;
    }

    .reservation-form {
      display: grid;
      gap: 34px;
    }

    .reservation-form-row {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 28px;
    }

    .reservation-field {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .reservation-field label {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--gold);
      opacity: 0.82;
    }

    .reservation-input,
    .reservation-select,
    .reservation-textarea {
      width: 100%;
      padding: 12px 0 14px;
      border: 0;
      border-bottom: 1px solid rgba(247, 240, 230, 0.26);
      background: transparent;
      color: var(--cream);
      font-family: "Raleway", sans-serif;
      font-size: 15px;
      font-weight: 300;
      outline: none;
      border-radius: 0;
    }

    .reservation-input[type="date"] {
      color-scheme: dark;
    }

    .reservation-input[type="date"]::-webkit-calendar-picker-indicator {
      filter: brightness(0) saturate(100%) invert(79%) sepia(27%) saturate(877%) hue-rotate(4deg) brightness(97%) contrast(92%);
      opacity: 1;
      cursor: pointer;
    }

    .reservation-select option {
      color: var(--black);
    }

    .reservation-input:focus,
    .reservation-select:focus,
    .reservation-textarea:focus {
      border-bottom-color: var(--gold);
    }

    .reservation-input::placeholder,
    .reservation-textarea::placeholder {
      color: rgba(247, 240, 230, 0.42);
    }

    .reservation-textarea {
      min-height: 150px;
      resize: vertical;
    }

    .reservation-submit {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 14px;
      margin-top: -4px;
    }

    .reservation-note {
      text-align: center;
      color: rgba(212, 184, 150, 0.72);
      font-size: 13px;
      line-height: 1.8;
    }

    .reservation-feedback {
      text-align: center;
      font-size: 13px;
      line-height: 1.8;
      max-width: 720px;
    }

    .reservation-feedback.is-success {
      color: var(--gold-pale);
    }

    .reservation-feedback.is-error {
      color: #f0b8b8;
    }

    .reservation-feedback.is-note {
      color: var(--gold);
    }

    .reservation-field-note {
      color: var(--gold);
      font-size: 12px;
      line-height: 1.6;
      min-height: 1.6em;
      margin-top: -4px;
    }

    .reservation-submit .btn-primary:disabled {
      opacity: 0.6;
      cursor: wait;
    }

    .info-strip {
      background: var(--maroon);
      display: grid;
      grid-template-columns: 1fr 1px 1fr 1px 1fr;
      padding: 70px 100px;
      align-items: start;
      gap: 40px;
    }

    .info-divider {
      background: rgba(201, 168, 76, 0.25);
      height: 100%;
      min-height: 120px;
    }

    .info-block h4 {
      font-family: "Cinzel", serif;
      font-size: 11px;
      letter-spacing: 0.35em;
      color: var(--gold);
      text-transform: uppercase;
      margin-bottom: 20px;
    }

    .info-block p,
    .info-block a {
      font-size: 14px;
      color: var(--gold-pale);
      line-height: 2;
      text-decoration: none;
      display: block;
      font-weight: 300;
    }

    .info-block a:hover,
    .footer-links a:hover {
      color: var(--gold);
    }

    .info-action-link {
      margin-top: 20px;
      display: inline-block !important;
      border: 1px solid rgba(201, 168, 76, 0.3);
      padding: 12px 20px;
      font-family: "Cinzel", serif;
      font-size: 10px !important;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--gold) !important;
      line-height: 1.6 !important;
    }

    .info-action-link:hover {
      background: rgba(201, 168, 76, 0.08);
    }

    .hours-row {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid rgba(201, 168, 76, 0.1);
      padding: 6px 0;
      font-size: 13px;
      gap: 16px;
    }

    .hours-row:last-child {
      border: none;
    }

    .hours-day {
      color: var(--text-light);
    }

    .hours-time {
      color: var(--gold-pale);
      text-align: right;
    }

    body:not(.page-home) footer {
      background: var(--off-black);
      border-top: 1px solid rgba(201, 168, 76, 0.15);
      padding: 50px 60px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }

    .footer-logo {
      display: inline-flex;
      align-items: center;
    }

    .footer-logo img {
      display: block;
      height: 48px;
      width: auto;
      object-fit: contain;
    }

    .footer-copy {
      font-size: 11px;
      color: var(--text-light);
      opacity: 0.5;
      letter-spacing: 0.1em;
    }

    .footer-links {
      display: flex;
      align-items: center;
      gap: 30px;
    }

    .footer-links a {
      font-family: "Cinzel", serif;
      font-size: 10px;
      letter-spacing: 0.2em;
      color: var(--text-light);
      text-decoration: none;
      text-transform: uppercase;
      transition: color 0.3s;
    }

    .footer-socials {
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .footer-socials a {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 40px;
      height: 40px;
      border: 1px solid rgba(201, 168, 76, 0.26);
      border-radius: 999px;
      color: var(--text-light);
      transition: border-color 0.3s, color 0.3s, background 0.3s, transform 0.3s;
    }

    .footer-socials a:hover {
      color: var(--gold);
      border-color: var(--gold);
      background: rgba(201, 168, 76, 0.08);
      transform: translateY(-1px);
    }

    .footer-socials svg {
      width: 18px;
      height: 18px;
      fill: currentColor;
      display: block;
    }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .view-current {
      color: var(--gold) !important;
    }

    @media (max-width: 1100px) {
      body:not(.page-home) section {
        padding: 96px 28px;
      }

      .home-overview,
      .about,
      .media-grid,
      .dishes-grid,
      .menu-notes,
      .reservation-form-row,
      .pricing-grid,
      .detail-grid,
      .events-showcase-curved,
      .bar-section,
      .reservation-grid,
      .testimonial-grid,
      .social-grid,
      .placeholder-grid {
        grid-template-columns: 1fr;
      }

      .events-showcase-curved {
        padding: 14px 14px 6px;
      }

      .events-carousel-shell {
        min-height: 520px;
        padding: 0 42px;
      }

      .events-carousel-stage,
      .events-carousel-track {
        min-height: 520px;
        height: 520px;
      }

      .events-carousel-slide {
        width: 280px;
        height: 360px;
      }

      .events-carousel-slide.pos-left-1 {
        transform: translate(-50%, -50%) translateX(-145px) rotateY(12deg) scale(0.98);
      }

      .events-carousel-slide.pos-right-1 {
        transform: translate(-50%, -50%) translateX(145px) rotateY(-12deg) scale(0.98);
      }

      .events-carousel-slide.pos-left-2 {
        transform: translate(-50%, -50%) translateX(-310px) rotateY(24deg) scale(0.9);
      }

      .events-carousel-slide.pos-right-2 {
        transform: translate(-50%, -50%) translateX(310px) rotateY(-24deg) scale(0.9);
      }

      .events-carousel-slide.pos-left-3 {
        transform: translate(-50%, -50%) translateX(-470px) rotateY(34deg) scale(0.82);
      }

      .events-carousel-slide.pos-right-3 {
        transform: translate(-50%, -50%) translateX(470px) rotateY(-34deg) scale(0.82);
      }

      .dish-card:nth-child(2) {
        margin-top: 0;
        aspect-ratio: 3 / 4;
      }

      .menu-item-head {
        flex-direction: column;
        gap: 12px;
      }

      .menu-item-price {
        text-align: left;
        white-space: normal;
      }

      .menu-category-head {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
      }

      .menu-rate-row {
        justify-content: flex-end;
      }

      .bar-size-guide {
        text-align: right;
      }

      .menu-category-toggle {
        align-items: flex-start;
        gap: 16px;
      }

      .menu-catalog-columns {
        grid-template-columns: 1fr;
        gap: 0;
      }

      .menu-category-arrow,
      .menu-category.is-collapsed .menu-category-arrow {
        margin-bottom: 18px;
      }

      .info-strip {
        grid-template-columns: 1fr;
        padding: 60px 28px;
        gap: 28px;
      }

      .info-divider {
        width: 100%;
        height: 1px;
        min-height: 1px;
      }

      body:not(.page-home) footer {
        padding: 40px 28px;
        flex-direction: column;
        align-items: flex-start;
      }

      .footer-logo img {
        height: 42px;
      }
    }

    @media (max-width: 900px) {
      .nav-links {
        display: none;
      }

      .mobile-toggle {
        display: inline-flex;
      }

      .hero {
        min-height: 90svh;
        height: 90svh;
      }

      .hero-mandala {
        right: 50%;
        top: 62%;
        width: 360px;
        height: 360px;
        transform: translate(50%, -50%);
      }

      @keyframes slowRotate {
        from {
          transform: translate(50%, -50%) rotate(0deg);
        }
        to {
          transform: translate(50%, -50%) rotate(360deg);
        }
      }

      .about {
        gap: 60px;
      }

      .about.about-compact {
        gap: 48px;
      }

      .about-img-float {
        right: 20px;
        bottom: -26px;
      }

      .video-panel {
        min-height: 420px;
      }

      .about-image-panel,
      .about-text-panel {
        min-height: 420px;
      }

      .about-page-gap {
        margin-bottom: 24px;
      }

      .bar-content {
        padding: 64px 28px;
      }

      .events-carousel-shell {
        min-height: 430px;
        padding: 0 16px;
      }

      .events-carousel-stage,
      .events-carousel-track {
        min-height: 430px;
        height: 430px;
      }

      .events-carousel-slide {
        width: 220px;
        height: 300px;
      }

      .events-carousel-slide.pos-left-3,
      .events-carousel-slide.pos-right-3 {
        opacity: 0;
        pointer-events: none;
      }

      .events-carousel-slide.pos-left-2 {
        transform: translate(-50%, -50%) translateX(-235px) rotateY(22deg) scale(0.82);
      }

      .events-carousel-slide.pos-right-2 {
        transform: translate(-50%, -50%) translateX(235px) rotateY(-22deg) scale(0.82);
      }

      .events-carousel-slide.pos-left-1 {
        transform: translate(-50%, -50%) translateX(-118px) rotateY(14deg) scale(0.92);
      }

      .events-carousel-slide.pos-right-1 {
        transform: translate(-50%, -50%) translateX(118px) rotateY(-14deg) scale(0.92);
      }

      .events-carousel-nav {
        width: 44px;
        height: 44px;
        font-size: 24px;
      }
    }

    @media (max-width: 640px) {
      nav {
        padding-left: 16px;
        padding-right: 16px;
      }

      .mobile-panel {
        top: var(--nav-height);
        left: 12px;
        right: 12px;
      }

      .footer-logo img {
        height: 38px;
      }

      .events-carousel-shell {
        min-height: 340px;
        padding: 0;
      }

      .events-carousel-stage,
      .events-carousel-track {
        min-height: 340px;
        height: 340px;
      }

      .events-carousel-slide {
        width: 190px;
        height: 250px;
        border-width: 4px;
      }

      .events-carousel-slide.pos-left-2,
      .events-carousel-slide.pos-right-2 {
        opacity: 0;
        pointer-events: none;
      }

      .events-carousel-slide.pos-left-1 {
        transform: translate(-50%, -50%) translateX(-92px) rotateY(18deg) scale(0.84);
      }

      .events-carousel-slide.pos-right-1 {
        transform: translate(-50%, -50%) translateX(92px) rotateY(-18deg) scale(0.84);
      }

      .events-carousel-slide.pos-center {
        transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1);
      }

      .events-carousel-nav {
        top: auto;
        bottom: -8px;
        transform: none;
      }

      .events-carousel-nav-prev {
        left: calc(50% - 60px);
      }

      .events-carousel-nav-next {
        right: calc(50% - 60px);
      }

      .events-carousel-meta {
        justify-content: center;
        margin-top: 30px;
      }

      .events-carousel-counter {
        width: 100%;
        text-align: center;
      }

      .order-online-float {
        right: 14px;
        bottom: var(--order-online-bottom, 14px);
        left: 14px;
        min-height: 50px;
        padding: 0 18px;
        font-size: 10px;
        letter-spacing: 0.2em;
      }

      body:not(.page-home) section {
        padding: 84px 18px;
      }

      .hero-content {
        width: 100%;
        bottom: 82px;
      }

      .hero-title {
        font-size: clamp(52px, 17vw, 78px);
      }

      .hero-scroll {
        display: flex;
        bottom: 18px;
      }

      .hero-ctas {
        width: 100%;
        gap: 14px;
      }

      .hero-ctas .btn-primary,
      .hero-ctas .btn-secondary {
        width: 100%;
        text-align: center;
        justify-content: center;
      }

      .about-img-float {
        width: 58%;
        right: 12px;
      }

      .video-panel,
      .media-stack > div,
      .about-story-panel,
      .about-text-panel {
        padding: 24px 20px;
      }

      .events-photo-main,
      .events-photo-side {
        min-height: 360px;
      }

      .home-carousel-slide {
        min-height: 500px;
        padding: 28px 22px 110px;
      }

      .home-carousel-actions {
        right: 18px;
        left: 18px;
        justify-content: space-between;
      }

      .menu-catalog {
        padding: 0 8px;
      }

      .menu-time {
        line-height: 1.02;
      }

      .video-play {
        top: 18px;
        right: 18px;
        width: 58px;
        height: 58px;
      }

      body:not(.page-home) footer {
        padding: 36px 18px;
      }

      .footer-links {
        flex-wrap: wrap;
        gap: 16px;
      }

    }
