﻿/* Styles moved from index.html */
:root { --ring-depth: 600px; }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      background:
        radial-gradient(circle at 12% 4%, rgba(212, 138, 45, 0.18), transparent 30rem),
        radial-gradient(circle at 90% 16%, rgba(15, 76, 69, 0.10), transparent 28rem),
        #fff9f2;
      color: #2b130b;
      font-family: "Be Vietnam Pro", sans-serif;
      overflow-x: hidden;
    }
    .material-symbols-outlined {
      font-variation-settings: "FILL" 0, "wght" 450, "GRAD" 0, "opsz" 24;
      line-height: 1;
    }

    /* ===== VIEW SYSTEM ===== */
    .view-section { display: none; }
    .view-section.active { display: block; animation: fadeIn 0.35s ease-out; }
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    /* ===== BRAND HERO  Three Cards ===== */
    .brand-hero-section {
      min-height: 100vh;
      height: 100vh;
      background: linear-gradient(135deg, #f8f6f2 0%, #fff9f2 50%, #fef5e7 100%);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 0 18px 40px;
      position: relative;
      overflow: hidden;
    }
    .brand-hero-section::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 15% 10%, rgba(212, 138, 45, 0.08) 0%, transparent 40%),
                  radial-gradient(circle at 85% 90%, rgba(43, 19, 11, 0.05) 0%, transparent 40%);
      pointer-events: none;
    }
    .header-logo-button {
      position: relative;
      padding-left: 108px;
    }
    .nav-logo-circle {
      position: absolute;
      left: -90px;
      bottom: -60px;
      width: 110px;
      height: 110px;
      border-radius: 100%;
      background: linear-gradient(135deg, #fff 0%, #fef5e7 100%);
      border: 4px solid rgba(255, 255, 255, 0.95);
      box-shadow: 0 12px 32px rgba(43, 19, 11, 0.15), 0 0 0 1px rgba(212, 138, 45, 0.2);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      z-index: 30;
      transition: all 0.3s ease;
    }
    .nav-logo-circle:hover {
      box-shadow: 0 16px 40px rgba(43, 19, 11, 0.2), 0 0 0 1px rgba(212, 138, 45, 0.3);
    }
    .nav-logo-circle img {
      MARGIN-LEFT: 150PX;
      width: 100%;
      height: 100%;
      object-fit: contain;
      padding: 1px;
    }
    .brand-hero-grid {
      width: 100%;
      max-width: 100vw;
      display: grid;
      grid-template-columns: 1fr;
      gap: 24px;
      align-items: stretch;
      height: 100vh;
      animation: fadeInUp 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
    }
    @keyframes fadeInUp {
      from {
        opacity: 0;
        transform: translateY(30px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    @media (min-width: 768px) {
      .brand-hero-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 28px;
      }
      .brand-story-card {
        padding: 56px 36px 48px;
      }
    }
    .brand-story-card {
      position: relative;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      border-radius: 28px;
      border: none;
      box-shadow: 0 16px 40px rgba(43, 19, 11, 0.06),
                  0 0 0 1px rgba(43, 19, 11, 0.03);
      padding: 48px 32px 40px;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
      cursor: default;
      overflow: hidden;
      flex: 1;
      min-width: 0;
      max-width: none;
      min-height: 100%;
      height: 100%;
    }
    .brand-story-card::before {
      content: '';
      position: absolute;
      inset: 0;
      background: rgba(255, 250, 245, 0.35);
      z-index: 1;
      border-radius: 28px;
      backdrop-filter: blur(2px);
    }
    .brand-story-card > * {
      position: relative;
      z-index: 2;
    }

    /* Brand card  portrait card per sketch */
    /* Layout handled by brand-hero-grid and full-width cards. */
    .brand-story-card:hover {
      transform: translateY(-20px) scale(1.02);
      box-shadow: 0 24px 56px rgba(43, 19, 11, 0.12),
                  0 0 0 1px rgba(43, 19, 11, 0.08);
    }
    
    .brand-story-card[data-brand="majestic"] {
      transform: scale(1.04);
    }
    
    .brand-story-card[data-brand="majestic"]:hover {
      transform: translateY(-20px) scale(1.06);
    }
    /* Shimmer on hover */
    .brand-story-card::after {
      content: '';
      position: absolute;
      top: -50%;
      left: -60%;
      width: 40%;
      height: 200%;
      background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,0.35) 50%, transparent 60%);
      transition: left 0.6s ease;
      pointer-events: none;
      z-index: 3;
    }
    .brand-story-card:hover::after { left: 130%; }


    .brand-catalog-download {
      position: absolute !important;
      top: 18px !important;
      right: 18px !important;
      z-index: 8 !important;
      width: 42px !important;
      height: 42px !important;
      border-radius: 999px !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      background: rgba(255, 255, 255, 0.96) !important;
      color: #2563eb !important;
      border: 1px solid rgba(37, 99, 235, 0.22) !important;
      box-shadow: 0 12px 28px rgba(43, 19, 11, 0.13) !important;
      transform: none !important;
    }
    .brand-catalog-download:hover {
      background: #2563eb !important;
      color: #fff !important;
      border-color: #2563eb !important;
      transform: translateY(-2px) !important;
    }
    .brand-catalog-download .material-symbols-outlined {
      color: inherit !important;
    }
    /* Circle logo container per sketch */
    .brand-logo-circle {
      width: 150px;
      height: 150px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      margin-bottom: 24px;
      position: relative;
      flex-shrink: 0;
      border: 5px solid rgba(255, 255, 255, 0.92);
      box-shadow: 0 16px 40px rgba(43, 19, 11, 0.12),
                  0 0 0 1px rgba(43, 19, 11, 0.08);
      z-index: 2;
      transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    }
    .brand-story-card:hover .brand-logo-circle {
      transform: scale(1.08);
      box-shadow: 0 20px 50px rgba(43, 19, 11, 0.15),
                  0 0 0 1px rgba(43, 19, 11, 0.1);
    }
    .brand-logo-circle img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      padding: 12px;
    }
    /* Fallback text logo badge */
    .brand-text-badge {
      font-family: 'Playfair Display', serif;
      font-size: 1.5rem;
      font-weight: 800;
      color: #fff;
      letter-spacing: 0.04em;
    }

    /* Card colours for three brands */
    .brand-logo-circle.golden {
      background: linear-gradient(135deg, #f59e0b 0%, #d97706 50%, #b45309 100%);
    }
    .brand-logo-circle.majestic {
      background: linear-gradient(135deg, #2b130b 0%, #543120 50%, #7c4a30 100%);
    }
    .brand-logo-circle.starbury {
      background: linear-gradient(135deg, #E6E215 0%, #c8c410 50%, #a8a408 100%);
    }

    .brand-card-title {
      font-family: 'Playfair Display', serif;
      font-size: 1.75rem;
      font-weight: 800;
      color: #2b130b;
      margin-bottom: 12px;
      line-height: 1.2;
      letter-spacing: -0.5px;
    }
    .brand-card-since {
      display: inline-block;
      font-size: 0.72rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.22em;
      padding: 6px 16px;
      border-radius: 20px;
      margin-bottom: 16px;
      order: -1;
      margin-top: 0;
      font-weight: 700;
      backdrop-filter: blur(8px);
    }
    .brand-card-desc {
      font-size: 0.95rem;
      color: #74645b;
      line-height: 1.8;
      flex: 1;
      margin-bottom: 32px;
      font-weight: 500;
      letter-spacing: 0.3px;
    }
    .brand-read-btn {
      width: 100%;
      padding: 16px 24px;
      border-radius: 12px;
      font-weight: 700;
      font-size: 0.95rem;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
      letter-spacing: 0.5px;
      text-transform: uppercase;
      box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    }
    .brand-read-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
    }
    .brand-read-btn.golden-btn {
      background: linear-gradient(135deg, #f59e0b 0%, #d97706 50%, #b45309 100%);
      color: #fff;
    }
    .brand-read-btn.golden-btn:hover {
      filter: brightness(1.08);
      box-shadow: 0 16px 40px rgba(245, 158, 11, 0.25);
    }
    .brand-read-btn.majestic-btn {
      background: linear-gradient(135deg, #3d1f0f 0%, #543120 50%, #7c4a30 100%);
      color: #fff;
    }
    .brand-read-btn.majestic-btn:hover {
      filter: brightness(1.1);
      box-shadow: 0 16px 40px rgba(43, 19, 11, 0.25);
    }
    .brand-read-btn.starbury-btn {
      background: linear-gradient(135deg, #c8c410 0%, #E6E215 50%, #d4d410 100%);
      color: #2b130b;
      font-weight: 800;
    }
    .brand-read-btn.starbury-btn:hover {
      filter: brightness(1.05);
      box-shadow: 0 16px 40px rgba(200, 196, 16, 0.3);
    }

    /* Brand card accent strip */
    .brand-story-card-accent {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 6px;
      border-radius: 32px 32px 0 0;
      z-index: 4;
    }
    /* ===== CLEAN THREE BRAND CARDS ===== */
    .brand-hero-section {
      min-height: auto !important;
      height: auto !important;
      padding: 72px 18px !important;
      margin-top: 0 !important;
      background: #f7efe6 !important;
      overflow: visible !important;
    }
    .brand-hero-section::before { display: none !important; }
    .brand-hero-grid {
      max-width: 1350px !important;
      height: auto !important;
      gap: 28px !important;
      align-items: stretch !important;
      padding: 0 !important;
    }
    .brand-story-card {
      min-height: 600px !important;
      height: auto !important;
      border-radius: 8px !important;
      border: 1px solid #dfc9b6 !important;
      background: #f3e9df !important;
      background-image: none !important;
      box-shadow: 0 22px 60px rgba(49, 23, 14, 0.08) !important;
      padding: 74px 32px 32px !important;
      justify-content: flex-start !important;
      transform: none !important;
    }
    .brand-story-card:hover { transform: translateY(-4px) !important; box-shadow: 0 28px 72px rgba(49, 23, 14, 0.12) !important; }
    .brand-story-card::before {
      display: block !important;
      border-radius: 8px !important;
      background: radial-gradient(circle at 50% 0%, rgba(255,255,255,0.78), transparent 45%) !important;
      backdrop-filter: none !important;
      z-index: 0 !important;
    }
    .brand-story-card::after, .brand-story-card-accent { display: none !important; }
    .brand-logo-circle {
      order: 1 !important;
      width: 190px !important;
      height: 118px !important;
      margin: 0 auto 44px !important;
      padding: 0 !important;
      border: 0 !important;
      border-radius: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      overflow: visible !important;
    }
    .brand-story-card:hover .brand-logo-circle { transform: none !important; box-shadow: none !important; }
    .brand-logo-circle img {
      width: 100% !important;
      height: 100% !important;
      object-fit: contain !important;
      padding: 0 !important;
    }
    .brand-card-since {
      order: 2 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      min-height: 32px !important;
      padding: 0 18px !important;
      margin: 0 auto 24px !important;
      border-radius: 999px !important;
      background: #ebebeb !important;
      border: 1px solid #000000 !important;
      color: #121211 !important;
      font-size: 0.72rem !important;
      font-weight: 900 !important;
      letter-spacing: 0.17em !important;
    }
    .brand-card-title {
      order: 3 !important;
      max-width: 390px !important;
      margin: 0 auto 18px !important;
      font-size: clamp(2rem, 2.5vw, 2.65rem) !important;
      line-height: 1.06 !important;
      font-weight: 900 !important;
      letter-spacing: 0 !important;
      color: #120705 !important;
    }
    .brand-card-desc {
      order: 4 !important;
      max-width: 380px !important;
      margin: 0 auto 34px !important;
      color: #695853 !important;
      font-size: 1.03rem !important;
      line-height: 1.75 !important;
      font-weight: 700 !important;
      letter-spacing: 0 !important;
    }
    .brand-read-btn {
      order: 5 !important;
      margin-top: auto !important;
      min-height: 54px !important;
      border-radius: 7px !important;
      padding: 0 24px !important;
      font-size: 1rem !important;
      font-weight: 900 !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
      box-shadow: none !important;
    }
    .brand-read-btn.golden-btn { background: #cf7d0d !important; color: #fff !important; }
    .brand-read-btn.majestic-btn { background: #401508 !important; color: #fff !important; }
    .brand-read-btn.starbury-btn { background: #d7cf00 !important; color: #120705 !important; }
    .brand-hero-section > .relative.z-10.mt-16 { display: none !important; }
    @media (max-width: 980px) {
      .brand-hero-grid { grid-template-columns: 1fr !important; max-width: 520px !important; }
      .brand-story-card { min-height: 560px !important; }
    }
    .brand-card-since {
      order: 2 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      min-height: 32px !important;
      padding: 0 18px !important;
      margin: 0 auto 24px !important;
      border-radius: 999px !important;
      background: #f7dfc2 !important;
      border: 1px solid #edc38c !important;
      color: #7a330d !important;
      font-size: 0.72rem !important;
      font-weight: 900 !important;
      letter-spacing: 0.17em !important;
    }
    #storyOverlay {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 9999;
      background: rgba(12, 6, 3, 0.62);
      align-items: center;
      justify-content: center;
      padding: 16px;
    }
    #storyOverlay.open {
      display: flex;
      animation: overlayIn 0.3s ease;
    }
    @keyframes overlayIn { from { opacity: 0; } to { opacity: 1; } }

    #storyPanel {
      position: relative;
      background: #fff9f2;
      border-radius: 32px;
      width: 100%;
      max-width: 820px;
      max-height: 88vh;
      overflow: hidden;
      box-shadow: 0 40px 100px rgba(43,19,11,0.35);
      animation: panelSlideUp 0.45s cubic-bezier(0.34, 1.2, 0.64, 1);
    }
    @keyframes panelSlideUp {
      from { opacity: 0; transform: translateY(60px) scale(0.96); }
      to { opacity: 1; transform: translateY(0) scale(1); }
    }
    .story-panel-header {
      position: sticky;
      top: 0;
      z-index: 10;
      padding: 24px 32px 20px;
      background: rgba(255,249,242,0.97);
      backdrop-filter: blur(8px);
      border-bottom: 1px solid rgba(222,200,186,0.5);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .story-panel-body {
      overflow-y: auto;
      max-height: calc(88vh - 80px);
      padding: 36px 32px 48px;
    }
    .story-panel-body::-webkit-scrollbar { width: 6px; }
    .story-panel-body::-webkit-scrollbar-track { background: transparent; }
    .story-panel-body::-webkit-scrollbar-thumb { background: rgba(43,19,11,0.2); border-radius: 20px; }

    .story-close-btn {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: #2b130b;
      color: #fff;
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.1rem;
      transition: transform 0.2s ease, background 0.2s;
      flex-shrink: 0;
    }
    .story-close-btn:hover { transform: rotate(90deg); background: #d48a2d; }

    .story-content { display: none; }
    .story-content.active { display: block; }

    .story-para {
      font-size: 1rem;
      color: #74645b;
      line-height: 1.9;
      margin-bottom: 20px;
    }
    .story-divider {
      height: 3px;
      width: 56px;
      border-radius: 100px;
      margin: 20px 0 32px;
    }

    /* ===== 3D CAROUSEL ===== */
    .hero-shell {
      position: relative;
      min-height: 540px;
      overflow: visible;
      padding: 40px 0 60px;
      background: linear-gradient(180deg, #fffaf5 0%, #fff9f2 100%);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
    }
    .hero-stage {
      min-height: 540px;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      perspective: 2000px;
      perspective-origin: 50% 50%;
      margin-bottom: 44px;
      touch-action: none;
      user-select: none;
      cursor: grab;
    }
    .slider {
      position: relative;
      width: 250px;
      height: 360px;
      transform-style: preserve-3d;
      transform: rotateY(0deg);
      transition: filter 0.25s ease;
      pointer-events: auto;
    }
    .slider-item {
      position: absolute;
      inset: 0;
      overflow: visible;
      backface-visibility: visible;
      transform-style: preserve-3d;
      pointer-events: auto;
      cursor: pointer;
    }
    .carousel-card-media {
      display: block;
      text-decoration: none;
      color: inherit;
      position: relative;
      z-index: 1;
      width: 100%;
      height: 300px;
      overflow: hidden;
      border: 4px solid rgba(255, 255, 255, 0.88);
      border-radius: 20px;
      background: #fff;
      box-shadow: 0 10px 30px rgba(74, 44, 33, 0.15);
      cursor: pointer;
    }
    .slider-item img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      background: #fff;
      pointer-events: none;
      user-select: none;
      image-rendering: auto;
      transform: translateZ(0);
    }
    .slider-item:nth-child(1) { transform: rotateY(0deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(2) { transform: rotateY(30deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(3) { transform: rotateY(60deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(4) { transform: rotateY(90deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(5) { transform: rotateY(120deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(6) { transform: rotateY(150deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(7) { transform: rotateY(180deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(8) { transform: rotateY(210deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(9) { transform: rotateY(240deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(10) { transform: rotateY(270deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(11) { transform: rotateY(300deg) translateZ(var(--ring-depth)); }
    .slider-item:nth-child(12) { transform: rotateY(330deg) translateZ(var(--ring-depth)); }
    .floating-panel {
      background: rgba(255, 250, 245, 0.74);
      border: 1px solid rgba(222, 200, 186, 0.72);
      box-shadow: 0 20px 55px rgba(49, 23, 14, 0.12);
      backdrop-filter: blur(18px);
      margin-top: 0 !important;
    }
    .category-card, .product-card, .summary-card, .cart-row {
      border: 1px solid rgba(222, 200, 186, 0.58);
      box-shadow: 0 18px 45px rgba(49, 23, 14, 0.07);
    }
    .category-card { border-radius: 8px; }
    .product-card { border-radius: 8px; }
    .btn-main {
      background: linear-gradient(135deg, #2b130b 0%, #543120 100%);
      color: #fff;
      box-shadow: 0 18px 36px rgba(49, 23, 14, 0.20);
    }
    .btn-main:disabled { opacity: 0.65; cursor: not-allowed; transform: none; }
    .product-detail-shell {
      background:
        radial-gradient(circle at 12% 8%, rgba(212, 138, 45, 0.18), transparent 24rem),
        radial-gradient(circle at 88% 12%, rgba(15, 76, 69, 0.10), transparent 25rem),
        linear-gradient(180deg, #fffaf5 0%, #fff9f2 100%);
    }
    .menu-pager-btn:disabled { opacity: 0.38; cursor: not-allowed; }
    .toast {
      position: fixed;
      right: 18px;
      bottom: 18px;
      z-index: 200;
      transform: translateY(18px);
      opacity: 0;
      pointer-events: none;
      transition: opacity 0.25s ease, transform 0.25s ease;
    }
    .toast.show { transform: translateY(0); opacity: 1; }
    .field-error input, .field-error textarea, .field-error select {
      border-color: rgba(186, 26, 26, 0.72) !important;
      background: rgba(186, 26, 26, 0.04) !important;
    }
    .field-valid input, .field-valid textarea { border-color: rgba(22, 133, 88, 0.52) !important; }
    .product-text-overlay {
      display: block;
      position: relative;
      z-index: 5;
      width: 100%;
      border: 0;
      background: transparent;
      font-family: inherit;
      margin-top: 14px;
      text-align: center;
      color: #2b130b;
      font-size: 0.95rem;
      font-weight: 900;
      line-height: 1.2;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      text-shadow: 0 2px 10px rgba(255,255,255,0.8);
      cursor: pointer;
      pointer-events: auto;
      transition: color 0.2s ease;
      transform: translateZ(4px);
    }
    .product-text-overlay:hover { color: #d48a2d; }
    .general-enquiry-modal { position: fixed; inset: 0; z-index: 190; display: none; align-items: center; justify-content: center; padding: 24px; background: rgba(24,10,6,0.62); backdrop-filter: blur(10px); }
    .general-enquiry-modal.active { display: flex; }
    .general-enquiry-shell { width: min(1120px, 100%); max-height: min(92vh, 860px); overflow: auto; display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 24px; border-radius: 14px; background: #fffaf5; padding: 20px; box-shadow: 0 28px 90px rgba(0,0,0,0.34); border: 1px solid rgba(212,138,45,0.22); }
    .general-enquiry-side, .general-enquiry-form { border-radius: 10px; background: #fff; border: 1px solid rgba(222,200,186,0.7); box-shadow: 0 14px 36px rgba(49,23,14,0.08); }
    .general-enquiry-side { padding: 28px; }
    .general-enquiry-form { padding: 28px 30px; position: relative; }
    .general-close { position: absolute; top: 16px; right: 16px; width: 36px; height: 36px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: #fff3ea; color: #2b130b; border: 1px solid rgba(212,138,45,0.25); }
    .general-heading { font-family: "Playfair Display", serif; color: #c5121d; text-align: center; text-transform: uppercase; font-weight: 900; letter-spacing: 0.03em; }
    .general-divider { display: flex; align-items: center; gap: 10px; justify-content: center; color: #ad7a12; margin: 10px auto 22px; }
    .general-divider::before, .general-divider::after { content: ""; width: 92px; height: 1px; background: linear-gradient(90deg, transparent, rgba(173,122,18,0.65)); }
    .general-divider::after { background: linear-gradient(90deg, rgba(173,122,18,0.65), transparent); }
    .general-contact-item { display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 16px 0; border-top: 1px solid rgba(222,200,186,0.55); color: #342019; }
    .general-contact-icon { width: 36px; height: 36px; border-radius: 999px; background: #ad7a12; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 20px; }
    .general-field { display: grid; grid-template-columns: 150px 1fr; gap: 14px; align-items: center; margin-bottom: 14px; }
    .general-field label { display: flex; align-items: center; gap: 10px; font-weight: 800; color: #4b3a31; }
    .general-field .material-symbols-outlined { color: #ad7a12; font-size: 25px; }
    .general-input { width: 100%; border: 1px solid rgba(222,200,186,0.85); border-radius: 4px; padding: 12px 14px; background: #fff; color: #2b130b; font-weight: 600; }
    .general-input:focus { outline: none; border-color: #d48a2d; box-shadow: 0 0 0 3px rgba(212,138,45,0.14); }
    .general-looking-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
    .general-looking-card { min-height: 112px; border: 1px solid rgba(173,122,18,0.28); border-radius: 6px; padding: 14px 10px 10px; display: grid; place-items: center; gap: 6px; text-align: center; cursor: pointer; color: #4a3023; background: #fff; transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease; }
    .general-looking-card:has(input:checked) { border-color: #c5121d; background: #fff4ef; transform: translateY(-2px); }
    .general-looking-card .material-symbols-outlined { color: #ad7a12; font-size: 36px; }
    .general-submit { margin: 18px auto 8px; min-width: 270px; min-height: 46px; border-radius: 5px; background: #df111d; color: #fff; display: flex; align-items: center; justify-content: center; gap: 10px; font-weight: 900; text-transform: uppercase; box-shadow: 0 12px 26px rgba(223,17,29,0.22); }
    @media (max-width: 900px) { .general-enquiry-shell { grid-template-columns: 1fr; } .general-field { grid-template-columns: 1fr; gap: 7px; } .general-looking-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 520px) { .general-enquiry-modal { align-items: center; padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom)); } .general-enquiry-shell { max-height: calc(100dvh - 24px); min-height: 0; margin: 0; overflow-y: auto; } .general-enquiry-side, .general-enquiry-form { padding: 22px 16px; } .general-looking-grid { grid-template-columns: 1fr; } }
    .whatsapp-float {
      position: fixed; width: 62px; height: 62px; bottom: 24px; right: 24px;
      background: #25D366; border-radius: 50%; display: flex; align-items: center;
      justify-content: center; box-shadow: 0 10px 25px rgba(0,0,0,0.25);
      z-index: 9999; transition: all 0.3s ease;
    }
    .whatsapp-float img { width: 34px; height: 34px; }
    .whatsapp-float:hover { transform: scale(1.1); box-shadow: 0 14px 35px rgba(0,0,0,0.35); }
    .google-btn {
      display: flex; align-items: center; justify-content: center; gap: 12px;
      width: 100%; padding: 14px; border: none; border-radius: 12px; background: white;
      color: #111; font-size: 16px; font-weight: 600; cursor: pointer; transition: 0.3s;
      box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    }
    .google-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(0,0,0,0.2); }
    @media (max-width: 980px) { :root { --ring-depth: 285px; } .hero-stage { min-height: 500px; } }
    @media (max-width: 640px) {
      :root { --ring-depth: 210px; }
      .hero-stage { min-height: 420px; }
      .slider { width: 168px; height: 306px; }
      .carousel-card-media { display: block;
      text-decoration: none;
      color: inherit;
      height: 250px; }
      .product-text-overlay { font-size: 0.76rem; margin-top: 11px; }
      .brand-story-card { min-width: 280px; max-width: 100%; padding: 40px 24px 32px; }
      .story-panel-header { padding: 18px 20px; }
      .story-panel-body { padding: 24px 20px 40px; }
      .brand-logo-circle { width: 120px; height: 120px; }
      .brand-card-title { font-size: 1.5rem; }
      .brand-read-btn { padding: 14px 20px; font-size: 0.9rem; }
    }
    /* ===== PREMIUM PRODUCT DETAIL ===== */
    .premium-product-detail { display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(320px, 1fr); gap: clamp(28px, 5vw, 72px); align-items: center; width: 100%; }
    .premium-product-media { position: relative; border-radius: 8px; background: #fff; padding: clamp(18px, 3vw, 34px); box-shadow: 0 28px 70px rgba(49,23,14,0.1); }
    .premium-product-media img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 4px; background: #f8eee3; }
    .premium-badge { position: absolute; top: 16px; left: 16px; background: #ff7a0d; color: #fff; min-height: 30px; border-radius: 999px; display: inline-flex; align-items: center; gap: 5px; padding: 0 12px; font-size: 0.68rem; font-weight: 900; z-index: 2; }
    .premium-product-info { max-width: 560px; }
    .premium-eyebrow { color: #9c5a16; font-size: 0.7rem; font-weight: 900; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 8px; }
    .premium-title { font-family: 'Playfair Display', serif; color: #2b130b; font-size: clamp(2.8rem, 6vw, 5.25rem); line-height: 0.96; font-weight: 900; margin-bottom: 14px; }
    .premium-price-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 18px; }
    .premium-price { font-size: clamp(2rem, 4vw, 3.35rem); line-height: 1; font-weight: 900; color: #050505; }
    .premium-mrp { color: #6f5b53; font-size: 0.8rem; text-decoration: line-through; font-weight: 800; }
    .premium-offer { background: #ffe2df; color: #c51616; font-size: 0.66rem; font-weight: 900; padding: 4px 8px; border-radius: 999px; }
    .premium-fact { display: flex; align-items: center; gap: 14px; min-height: 58px; border-radius: 8px; background: #fff1eb; padding: 13px 16px; margin-bottom: 12px; color: #32160e; font-weight: 800; }
    .premium-fact span { color: #c76412; }
    .premium-description { margin: 28px 0; border-top: 1px solid rgba(222,200,186,0.65); padding-top: 26px; color: #5d4b43; line-height: 1.78; }
    .premium-description h2 { font-family: 'Playfair Display', serif; color: #2b130b; font-size: 1.45rem; font-weight: 900; margin-bottom: 12px; }
    .premium-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .premium-action-primary, .premium-action-secondary { min-height: 56px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 0.82rem; font-weight: 900; text-transform: uppercase; letter-spacing: 0.04em; }
    .premium-action-primary { background: #2b130b; color: #fff; box-shadow: 0 16px 32px rgba(43,19,11,0.22); }
    .premium-action-secondary { background: #ff7a0d; color: #fff; }
    @media (max-width: 900px) { .premium-product-detail { grid-template-columns: 1fr; } .premium-product-info { max-width: none; } }
    @media (max-width: 640px) { .premium-actions { grid-template-columns: 1fr; } }
    body > nav {
      background: linear-gradient(90deg, #2b130b 0%, #c71313 52%, #4d0209 100%) !important;
      border-bottom: 1px solid rgba(255,255,255,0.16) !important;
      box-shadow: 0 12px 32px rgba(43, 19, 11, 0.18) !important;
      overflow: visible !important;
    }
    body > nav > div {
      min-height: 132px !important;
      max-width: 1500px !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      position: relative !important;
    }
    .header-logo-button {
      width: 300px !important;
      min-height: 132px !important;
      padding-left: 0 !important;
      justify-content: flex-start !important;
      flex-shrink: 0 !important;
      transform: none !important;
    }
    .header-logo-button > div { display: none !important; }
    .nav-logo-circle {
      position: relative !important;
      left: auto !important;
      bottom: auto !important;
      width: 286px !important;
      height: 198px !important;
      margin-top: 28px !important;
      border-radius: 0 !important;
      border: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      overflow: visible !important;
      z-index: 70 !important;
    }
    .nav-logo-circle img {
      width: 80% !important;
      height: 80% !important;
      object-fit: contain !important;
      padding: 0 !important;
      filter: drop-shadow(0 12px 14px rgba(0,0,0,0.2));
    }
    body > nav .hidden.md\:flex {
      background: transparent !important;
      gap: clamp(22px, 3vw, 48px) !important;
      padding: 0 !important;
    }
    body > nav .hidden.md\:flex button,
    body > nav .hidden.md\:flex a {
      color: rgba(255,255,255,0.9) !important;
      font-size: 0.98rem !important;
      font-weight: 900 !important;
      text-transform: uppercase !important;
      letter-spacing: 0.035em !important;
      position: relative !important;
      white-space: nowrap !important;
    }
    body > nav .hidden.md\:flex button::after {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      bottom: -14px;
      height: 4px;
      border-radius: 999px;
      background: #d48a2d;
    }
    .home-main-hero {
      position: relative;
      min-height: calc(100vh - 132px);
      overflow: hidden;
      background: #fff9f2;
      isolation: isolate;
    }
    .home-main-hero-slide {
      position: absolute;
      inset: 0;
      opacity: 0;
      background-size: cover;
      background-position: center;
      transition: opacity 900ms ease;
      transform: scale(1.02);
    }
    .home-main-hero-slide.active { opacity: 1; animation: heroDrift 5.5s ease forwards; }
    @keyframes heroDrift { from { transform: scale(1.035); } to { transform: scale(1); } }
    .home-main-hero::after {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 1;
      background: linear-gradient(90deg, rgba(255,249,242,0.98) 0%, rgba(255,249,242,0.9) 32%, rgba(255,249,242,0.22) 62%, rgba(255,249,242,0.05) 100%);
      pointer-events: none;
    }
    .home-main-hero-content {
      position: relative;
      z-index: 2;
      min-height: calc(100vh - 132px);
      max-width: 1500px;
      margin: 0 auto;
      padding: clamp(64px, 7vw, 110px) 28px 92px;
      display: grid;
      grid-template-columns: minmax(300px, 0.88fr) minmax(360px, 1.12fr);
      align-items: center;
      gap: 32px;
    }
    .home-main-hero-copy { max-width: 560px; }
    .home-main-hero-eyebrow { color: #9b611f; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; font-size: 1rem; margin-bottom: 12px; }
    .home-main-hero-title { font-family: 'Playfair Display', serif; color: #d71920; font-size: clamp(3.8rem, 7vw, 7rem); line-height: 0.88; font-weight: 900; text-transform: uppercase; margin-bottom: 24px; }
    .home-main-hero-title span { display: block; color: #2b130b; }
    .home-main-hero-subtitle { color: #9f1d1d; font-size: clamp(1.05rem, 1.8vw, 1.45rem); line-height: 1.35; font-weight: 900; margin-bottom: 14px; max-width: 480px; }
    .home-main-hero-text { color: #6c5a52; font-size: 0.95rem; line-height: 1.7; font-weight: 700; margin-bottom: 28px; max-width: 430px; }
    .home-main-hero-cta { display: inline-flex; min-height: 48px; align-items: center; gap: 12px; border-radius: 999px; background: #d71920; color: #fff; padding: 0 26px; font-size: 0.78rem; font-weight: 900; text-transform: uppercase; letter-spacing: 0.04em; box-shadow: 0 16px 34px rgba(215,25,32,0.24); }
    .home-main-hero-badge { position: absolute; z-index: 3; left: min(44vw, 690px); top: 48%; width: clamp(92px, 11vw, 136px); aspect-ratio: 1; border-radius: 50%; background: rgba(255,252,245,0.88); border: 2px solid rgba(212,138,45,0.35); color: #5c3b22; display: flex; align-items: center; justify-content: center; text-align: center; box-shadow: 0 16px 42px rgba(92,59,34,0.12); }
    .home-main-hero-badge small { display: block; font-size: 0.62rem; font-weight: 900; text-transform: uppercase; letter-spacing: 0.04em; }
    .home-main-hero-badge strong { display: block; font-family: 'Playfair Display', serif; font-size: clamp(1.85rem, 3vw, 2.75rem); line-height: 1; }
    .home-main-hero-dots { position: absolute; z-index: 4; left: 50%; bottom: 26px; transform: translateX(-50%); display: flex; gap: 10px; align-items: center; }
    .home-main-hero-dot { width: 9px; height: 9px; border: 0; border-radius: 999px; background: rgba(43,19,11,0.18); transition: width 0.25s ease, background 0.25s ease; }
    .home-main-hero-dot.active { width: 24px; background: #d71920; }
    @media (max-width: 900px) {
      body > nav, body > nav > div { min-height: 104px !important; }
      .header-logo-button { width: 188px !important; min-height: 104px !important; }
      .nav-logo-circle { width: 176px !important; height: 126px !important; margin-top: 20px !important; }
      .home-main-hero, .home-main-hero-content { min-height: calc(100vh - 104px); }
      .home-main-hero-content { grid-template-columns: 1fr; align-content: end; padding: 72px 20px 88px; }
      .home-main-hero::after { background: linear-gradient(180deg, rgba(255,249,242,0.92), rgba(255,249,242,0.5) 42%, rgba(255,249,242,0.96)); }
      .home-main-hero-badge { left: auto; right: 22px; top: 118px; width: 86px; }
    }
    /* ===== HEADER LOGO HANGING POSITION FIX ===== */
    body > nav {
      min-height: 140px !important;
      overflow: visible !important;
    }
    body > nav > div {
      min-height: 140px !important;
      position: relative !important;
      padding-left: clamp(320px, 23vw, 390px) !important;
    }
    .header-logo-button {
      position: absolute !important;
      left: 28px !important;
      top: 12px !important;
      width: clamp(270px, 21vw, 350px) !important;
      height: 250px !important;
      min-height: 250px !important;
      padding-left: 0 !important;
      z-index: 80 !important;
    }
    .nav-logo-circle {
      position: absolute !important;
      left: 0 !important;
      top: 0 !important;
      width: clamp(270px, 21vw, 350px) !important;
      height: 250px !important;
      margin: 0 !important;
      border: 0 !important;
      border-radius: 0 !important;
      background: transparent !important;
      box-shadow: none !important;
      overflow: visible !important;
    }
    .nav-logo-circle img {
      width: 100% !important;
      height: 100% !important;
      object-fit: contain !important;
      padding: 0 !important;
    }
    .story-close-btn {
      font-family: Arial, Helvetica, sans-serif !important;
      font-size: 1.6rem !important;
      line-height: 1 !important;
      font-weight: 700 !important;
    }
    @media (max-width: 900px) {
      body > nav, body > nav > div { min-height: 112px !important; }
      body > nav > div { padding-left: 190px !important; }
      .header-logo-button { left: 14px !important; top: 10px !important; width: 178px !important; height: 150px !important; min-height: 150px !important; }
      .nav-logo-circle { width: 178px !important; height: 150px !important; }
    }
    /* ===== HEADER RIGHT ALIGN + COMPACT SIZE ===== */
    body > nav {
      min-height: 112px !important;
    }
    body > nav > div {
      min-height: 112px !important;
      max-width: none !important;
      padding-left: 280px !important;
      padding-right: clamp(24px, 3vw, 56px) !important;
      justify-content: flex-end !important;
    }
    .header-logo-button {
      left: 28px !important;
      top: 8px !important;
      width: 280px !important;
      height: 200px !important;
      min-height: 200px !important;
    }
    .nav-logo-circle {
      width: 280px !important;
      height: 200px !important;
    }
    body > nav > div > .flex.items-center.gap-2.md\:gap-6 {
      margin-left: auto !important;
      justify-content: flex-end !important;
      width: auto !important;
    }
    body > nav .hidden.md\:flex {
      margin-left: auto !important;
      justify-content: flex-end !important;
      gap: clamp(28px, 3.2vw, 56px) !important;
    }
    @media (max-width: 900px) {
      body > nav, body > nav > div { min-height: 92px !important; }
      body > nav > div { padding-left: 158px !important; padding-right: 16px !important; }
      .header-logo-button { left: 12px !important; top: 7px !important; width: 142px !important; height: 120px !important; min-height: 120px !important; }
      .nav-logo-circle { width: 142px !important; height: 120px !important; }
    }
    .product-gallery-shell { position: relative; height: 100%; width: 100%; }
    .product-gallery-arrow { position: absolute; top: 50%; z-index: 5; width: 42px; height: 42px; border-radius: 999px; border: 1px solid rgba(43,19,11,0.14); background: rgba(255,255,255,0.92); color: #2b130b; display: inline-flex; align-items: center; justify-content: center; font-size: 1.7rem; font-weight: 900; line-height: 1; box-shadow: 0 12px 28px rgba(43,19,11,0.16); transform: translateY(-50%); transition: transform 0.2s ease, background 0.2s ease; }
    .product-gallery-arrow:hover { background: #fff; transform: translateY(-50%) scale(1.06); }
    .product-gallery-arrow.prev { left: 12px; }
    .product-gallery-arrow.next { right: 12px; }
    .product-gallery-arrow[hidden] { display: none; }
  
    .brand-read-btn { min-height: 54px; border-radius: 8px; border: 1px solid transparent; box-shadow: 0 14px 28px rgba(43,19,11,0.12); }
    .brand-read-btn.golden-btn { background: #d71920 !important; color: #fff !important; border-color: #f2b542 !important; }
    .brand-read-btn.majestic-btn { background: #d71920 !important; color: #fff !important; border-color: #f2b542 !important; }
    .brand-read-btn.starbury-btn { background: #e11b22 !important; color: #fff !important; border-color: #f7d64d !important; }
    .brand-read-btn.golden-btn:hover, .brand-read-btn.majestic-btn:hover, .brand-read-btn.starbury-btn:hover { filter: brightness(0.96); transform: translateY(-2px); }
    .brand-story-details { order: 6; width: 100%; max-height: 0; margin: 0; overflow: hidden; opacity: 0; text-align: left; transition: max-height .45s ease, margin-top .3s ease, opacity .25s ease; }
    .brand-story-card.is-story-open .brand-story-details { max-height: 1700px; margin-top: 24px; opacity: 1; }
    .brand-story-details .story-para { margin: 0 0 14px; color: #665850; font-size: .94rem; line-height: 1.7; }
    .brand-story-card.is-story-open:hover, .brand-story-card[data-brand="majestic"].is-story-open:hover { transform: none; }
    .brand-hero-grid.has-open-story { align-items: start; }
    .brand-hero-grid.has-open-story .brand-story-card:not(.is-story-open) { height: 720px !important; }
    .brand-hero-grid.has-open-story .brand-story-card.is-story-open { height: auto !important; }
    @media (max-width: 700px) { .brand-hero-grid.has-open-story .brand-story-card:not(.is-story-open) { height: 650px !important; } }
  
    .premium-image-scroll { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; border-radius: 4px; }
    .premium-image-scroll img { min-width: 100%; scroll-snap-align: center; flex: 0 0 100%; }
    .premium-image-scroll::-webkit-scrollbar { height: 8px; }
    .premium-image-scroll::-webkit-scrollbar-thumb { background: rgba(43,19,11,0.22); border-radius: 999px; }
  
    /* Final requested homepage visual overrides */
    .brand-logo-circle {
      width: 380px !important;
      height: 236px !important;
      max-width: 92% !important;
      margin: 0 auto 30px !important;
    }    .brand-story-card {
      min-height: 720px !important;
      padding-top: 54px !important;
    }
    #about {
      padding-top: 54px !important;
      padding-bottom: 15px !important;
    }
    #about > div {
      max-width: none !important;
      width: calc(100% - 60px) !important;
      margin-left: 30px !important;
      margin-right: 30px !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }
    #about > div > .relative {
      min-height: 500px !important;
    }
    @media (min-width: 1024px) {
      #about > div > .relative { min-height: 540px !important; }
    }
    #shop {
      padding-top: 15px !important;
    }
    @media (max-width: 700px) {
      .brand-logo-circle { width: 260px !important; height: 165px !important; }
      .brand-story-card { min-height: 650px !important; }
      #about > div { width: calc(100% - 36px) !important; margin-left: 18px !important; margin-right: 18px !important; }
      #about > div > .relative { min-height: 580px !important; }
    }
      .cart-header-flat-white,
    body > nav button[aria-label="Open cart"] {
      background: transparent !important;
      border-color: transparent !important;
      box-shadow: none !important;
    }
    .cart-header-flat-white .material-symbols-outlined,
    body > nav button[aria-label="Open cart"] .material-symbols-outlined {
      color: #fff !important;
    }
    .telegram-float {
      position: fixed;
      right: 24px;
      bottom: 96px;
      width: 58px;
      height: 58px;
      border-radius: 50%;
      background: #229ED9;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 18px 36px rgba(34, 158, 217, 0.32);
      z-index: 120;
      transition: transform 0.22s ease, box-shadow 0.22s ease;
    }
    .telegram-float:hover {
      transform: translateY(-3px) scale(1.04);
      box-shadow: 0 24px 48px rgba(34, 158, 217, 0.38);
    }
    .telegram-float .fa-telegram {
      font-size: 28px;
      line-height: 1;
    }
    /* ===== REQUESTED HERO REFINEMENT ===== */
    body > nav .hidden.md\:flex button::after,
    body > nav .hidden.md\:flex a::after {
      content: '' !important;
      position: absolute !important;
      left: 0 !important;
      right: 0 !important;
      bottom: -10px !important;
      height: 3px !important;
      border-radius: 999px !important;
      background: #f2b542 !important;
      transform: scaleX(0) !important;
      transform-origin: center !important;
      opacity: 0 !important;
      transition: transform 0.22s ease, opacity 0.22s ease !important;
    }
    body > nav .hidden.md\:flex button:hover::after,
    body > nav .hidden.md\:flex a:hover::after,
    body > nav .hidden.md\:flex button:focus-visible::after,
    body > nav .hidden.md\:flex a:focus-visible::after {
      transform: scaleX(1) !important;
      opacity: 1 !important;
    }
    .home-main-hero {
      min-height: clamp(720px, calc(100vh - 80px), 900px) !important;
      background: #fff4e7 !important;
      border-top: 1px solid rgba(112, 7, 19, 0.18);
      border-bottom: 5px solid #730712;
    }
    .home-main-hero-slide {
      background-position: center right !important;
      transform: none !important;
    }
    .home-main-hero-slide:not(.active) {
      opacity: 0 !important;
    }
    .home-main-hero::after {
      background:
        linear-gradient(90deg, rgba(255,244,231,0.98) 0%, rgba(255,244,231,0.94) 29%, rgba(255,244,231,0.62) 43%, rgba(255,244,231,0.10) 68%, rgba(255,244,231,0) 100%) !important;
    }
    .home-main-hero-content {
      min-height: clamp(720px, calc(100vh - 80px), 900px) !important;
      max-width: 1500px !important;
      grid-template-columns: minmax(360px, 0.48fr) minmax(520px, 0.52fr) !important;
      padding: 96px clamp(32px, 5.5vw, 86px) 42px !important;
      align-items: center !important;
    }
    .home-main-hero-copy {
      max-width: 520px !important;
      padding-top: 18px;
    }
    .home-main-hero-eyebrow {
      color: #7c1017 !important;
      font-size: 1.05rem !important;
      font-weight: 900 !important;
      letter-spacing: 0.16em !important;
      margin-bottom: 12px !important;
    }
    .home-main-hero-title {
      position: relative;
      color: #87131b !important;
      font-family: "Marcellus", Georgia, serif !important;
      font-size: clamp(1.75rem, 2.45vw, 2.43rem) !important;
      line-height: 1.04 !important;
      font-style: normal !important;
      font-weight: 400 !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
      margin-bottom: 34px !important;
      text-shadow: 0 2px 0 rgba(255,255,255,0.55);
    }
    .home-main-hero-title span {
      color: #87131b !important;
      white-space: nowrap;
    }
    .home-main-hero-title::after {
      content: '' !important;
      display: block !important;
      position: absolute;
      left: 0;
      bottom: -18px;
      width: min(440px, 92%);
      height: 3px;
      border-radius: 999px;
      background: #c9902f;
      box-shadow: 0 1px 0 rgba(255,255,255,0.55);
    }
    .home-main-hero-subtitle {
      display: none !important;
    }
    .home-main-hero-text {
      max-width: 430px !important;
      color: #26201d !important;
      font-family: "Marcellus", Georgia, serif !important;
      font-size: clamp(1.2rem, 1.5vw, 1.43rem) !important;
      line-height: 1.36 !important;
      font-weight: 400 !important;
      margin-bottom: 26px !important;
    }
    .home-main-hero-cta {
      min-height: 48px !important;
      padding: 0 24px !important;
      background: #c80f18 !important;
      border: 2px solid #e7b33f !important;
      color: #fff !important;
      box-shadow: 0 10px 24px rgba(122, 7, 18, 0.28) !important;
      font-size: 1.1rem !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
    }
    .home-main-hero-dots {
      display: none !important;
    }
    .hero-trust-strip {
      position: relative;
      z-index: 4;
      width: 100%;
      min-height: 132px;
      margin: 0;
      display: grid !important;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      overflow: hidden;
      border: 1px solid rgba(199, 88, 54, 0.26);
      border-left: 0;
      border-right: 0;
      border-radius: 0;
      background: #fff7ef;
      box-shadow: 0 12px 30px rgba(49, 23, 14, 0.08);
    }
    .hero-trust-item {
      min-height: 132px;
      display: grid !important;
      grid-template-columns: 42px minmax(0, 1fr);
      align-items: center;
      gap: 12px;
      padding: 11px 18px;
      color: #1f1713;
    }
    .hero-trust-item + .hero-trust-item {
      border-left: 1px solid rgba(199, 88, 54, 0.22);
    }
    .hero-trust-icon.material-symbols-outlined {
      color: #c62b34;
      font-size: 34px;
      font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 36;
    }
    .hero-trust-copy {
      display: block !important;
      min-width: 0;
      text-align: left;
    }
    .hero-trust-title {
      display: block;
      font-size: 0.86rem;
      line-height: 1.15;
      font-weight: 900;
      margin-bottom: 5px;
    }
    .hero-trust-text {
      display: block;
      color: #3e332d;
      font-size: 0.76rem;
      line-height: 1.38;
      font-weight: 600;
    }
    @media (max-width: 900px) {
      .home-main-hero,
      .home-main-hero-content {
        min-height: 760px !important;
      }
      .home-main-hero-content {
        grid-template-columns: 1fr !important;
        padding: 124px 22px 44px !important;
        align-content: end !important;
      }
      .home-main-hero::after {
        background: linear-gradient(180deg, rgba(255,244,231,0.78), rgba(255,244,231,0.42) 38%, rgba(255,244,231,0.96) 76%) !important;
      }
      .home-main-hero-copy {
        max-width: 540px !important;
        padding-top: 0 !important;
      }
      .hero-trust-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 0;
        min-height: auto;
      }
      .hero-trust-item { min-height: 80px; }
      .hero-trust-item + .hero-trust-item {
        border-left: 0;
        border-top: 1px solid rgba(199, 88, 54, 0.22);
      }
      .hero-trust-item:nth-child(even) {
        border-left: 1px solid rgba(199, 88, 54, 0.22);
      }
    }
    @media (max-width: 560px) {
      .hero-trust-strip {
        grid-template-columns: 1fr;
      }
      .hero-trust-item:nth-child(even) {
        border-left: 0;
      }
    }
  
    /* Keeps product-detail back buttons clear of the oversized header logo. */
    #product-view.product-detail-shell,
    #product-detail-view.product-detail-shell {
      padding-top: 150px !important;
    }
    @media (max-width: 900px) {
      #product-view.product-detail-shell,
      #product-detail-view.product-detail-shell {
        padding-top: 96px !important;
      }
    }    .premium-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 18px 0 24px; }
    .premium-info-card { min-height: 84px; display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 16px; border-radius: 8px; background: rgba(255,255,255,0.72); box-shadow: 0 18px 44px rgba(49,23,14,0.08); padding: 16px 20px; border-left: 5px solid #0f4c45; }
    .premium-info-card.quantity { border-left-color: #7b6258; }
    .premium-info-card .material-symbols-outlined { color: #0f4c45; font-size: 32px; }
    .premium-info-card.quantity .material-symbols-outlined { color: #7b6258; }
    .premium-info-card small { display: block; color: #5f514b; font-size: 0.82rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; }
    .premium-info-card strong { display: block; margin-top: 4px; color: #130704; font-family: "Playfair Display", serif; font-size: clamp(1.45rem, 2.7vw, 2rem); line-height: 1; font-weight: 900; }
    @media (max-width: 640px) { .premium-meta { grid-template-columns: 1fr; } }

/* Styles moved from <style id="premium-footer-styles"> in index.html */
.premium-site-footer {
      --footer-gold: #d6a33f;
      --footer-gold-soft: rgba(214, 163, 63, 0.55);
      --footer-cream: #fff3cf;
      position: relative;
      margin-top: 80px;
      overflow: hidden;
      color: var(--footer-cream);
      background:
        radial-gradient(circle at 18% 28%, rgba(108, 55, 16, 0.32), transparent 32rem),
        radial-gradient(circle at 82% 35%, rgba(171, 108, 25, 0.16), transparent 28rem),
        linear-gradient(90deg, #140802 0%, #251005 48%, #120702 100%);
      border-top: 1px solid rgba(214, 163, 63, 0.35);
      font-family: "Playfair Display", Georgia, serif;
    }
    .premium-site-footer::before {
      content: "";
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(214, 163, 63, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(214, 163, 63, 0.04) 1px, transparent 1px);
      background-size: 42px 42px;
      opacity: 0.18;
      pointer-events: none;
    }
    .premium-site-footer a { color: inherit; text-decoration: none; }
    .premium-site-footer-inner {
      position: relative;
      z-index: 1;
      max-width: 1720px;
      margin: 0 auto;
      padding: clamp(44px, 5vw, 70px) clamp(22px, 3vw, 46px) 0;
    }
    .premium-footer-main {
      display: grid;
      grid-template-columns: minmax(260px, 1.55fr) minmax(170px, 0.86fr) minmax(190px, 0.95fr) minmax(210px, 1.05fr) minmax(300px, 1.45fr);
      gap: clamp(24px, 2.6vw, 48px);
      align-items: start;
    }
    .premium-footer-col {
      min-height: 420px;
      padding-left: clamp(18px, 2vw, 34px);
      border-left: 1px solid rgba(214, 163, 63, 0.56);
    }
    .premium-footer-brand {
      position: relative;
      min-height: 420px;
      border-left: 0;
      padding-left: 0;
      text-align: center;
    }
    .premium-footer-logo {
      width: min(330px, 88%);
      max-height: 205px;
      object-fit: contain;
      margin: 0 auto 12px;
      display: block;
      filter: drop-shadow(0 12px 20px rgba(0,0,0,0.3));
    }
    .premium-footer-since {
      color: var(--footer-gold);
      letter-spacing: 0.26em;
      font-size: 1.15rem;
      text-transform: uppercase;
      margin: 10px 0 16px;
    }
    .premium-footer-copy {
      max-width: 340px;
      margin: 0 auto;
      line-height: 1.65;
      font-size: 1.03rem;
      color: #ffe8bd;
    }
    .premium-footer-bakery-art {
      position: absolute;
      left: -34px;
      right: 0;
      bottom: -18px;
      height: 170px;

      opacity: 0.92;
      pointer-events: none;
    }
    .premium-footer-heading {
      color: var(--footer-gold);
      font-size: clamp(1.3rem, 1.5vw, 1.75rem);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.02em;
      margin: 0 0 22px;
    }
    .premium-footer-heading::after {
      content: "";
      display: block;
      width: 112px;
      height: 12px;
      margin-top: 7px;
      background: linear-gradient(90deg, var(--footer-gold-soft), transparent 45%, var(--footer-gold-soft));
      border-top: 1px solid rgba(214, 163, 63, 0.6);
      opacity: 0.75;
    }
    .premium-footer-list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      gap: 0;
    }
    .premium-footer-list li { border-bottom: 1px dotted rgba(214, 163, 63, 0.22); }
    .premium-footer-link {
      min-height: 43px;
      display: flex;
      align-items: center;
      gap: 13px;
      color: #fff4d7;
      font-size: clamp(0.95rem, 1.05vw, 1.18rem);
      line-height: 1.25;
      transition: color 0.2s ease, transform 0.2s ease;
    }
    .premium-footer-link:hover { color: #ffd36d; transform: translateX(3px); }
    .premium-footer-icon,
    .premium-footer-arrow,
    .premium-contact-icon {
      flex: 0 0 auto;
      width: 32px;
      height: 32px;
      border: 1.5px solid var(--footer-gold);
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--footer-gold);
      font-size: 1rem;
      box-shadow: inset 0 0 12px rgba(214, 163, 63, 0.1);
    }
    .premium-footer-icon { border: 0; border-radius: 0; width: 34px; font-size: 1.25rem; box-shadow: none; }
    .premium-social-instagram { color: #e4409f; }
    .premium-social-whatsapp { color: #25D366; }
    .premium-social-facebook { color: #1877F2; }
    .premium-social-telegram { color: #229ED9; }
    .premium-social-youtube { color: #FF0000; }
    .premium-customer-care {
      margin-top: 34px;
      padding-top: 18px;
    }
    .premium-customer-row {
      display: flex;
      gap: 15px;
      align-items: center;
      color: #fff4d7;
      font-size: clamp(1.35rem, 1.55vw, 1.75rem);
      line-height: 1.25;
    }
    .premium-customer-note { margin: 14px 0 3px; font-size: 0.96rem; color: #fff4d7; }
    .premium-hours { color: var(--footer-gold); font-size: 0.9rem; }
    .premium-contact-list { display: grid; gap: 26px; margin-top: 28px; }
    .premium-contact-item {
      display: grid;
      grid-template-columns: 52px minmax(0, 1fr);
      gap: 15px;
      align-items: start;
      padding-bottom: 18px;
      border-bottom: 1px dotted rgba(214, 163, 63, 0.23);
      color: #fff4d7;
      font-size: clamp(1rem, 1.08vw, 1.18rem);
      line-height: 1.45;
    }
    .premium-contact-icon { width: 50px; height: 50px; font-size: 1.3rem; }
    .premium-love-note {
      margin-top: 52px;
      color: var(--footer-gold);
      font-family: "Brush Script MT", "Segoe Script", cursive;
      font-size: clamp(1.8rem, 2.3vw, 2.75rem);
      line-height: 1.1;
      transform: rotate(-4deg);
    }
    .premium-footer-badges {
      position: relative;
      z-index: 1;
      margin-top: 38px;
      padding: 26px clamp(18px, 3vw, 52px);
      border: 1px solid rgba(214, 163, 63, 0.72);
      border-radius: 22px;
      display: grid;
      grid-template-columns: repeat(5, minmax(140px, 1fr)) minmax(150px, 0.85fr);
      gap: 18px;
      align-items: center;
      background: rgba(23, 10, 4, 0.58);
      box-shadow: inset 0 0 24px rgba(214, 163, 63, 0.08);
    }
    .premium-badge-item {
      min-height: 72px;
      display: flex;
      align-items: center;
      gap: 16px;
      border-right: 1px solid rgba(214, 163, 63, 0.52);
      color: #fff3cf;
      font-size: clamp(1rem, 1.1vw, 1.2rem);
      line-height: 1.2;
    }
    .premium-badge-item i,
    .premium-badge-item .material-symbols-outlined { color: var(--footer-gold); font-size: 2.6rem; }
    .premium-heritage-seal {
      justify-self: center;
      width: clamp(120px, 10vw, 170px);
      aspect-ratio: 1;
      border-radius: 999px;
      border: 2px solid var(--footer-gold);
      display: grid;
      place-items: center;
      color: #f9d68b;
      text-align: center;
      background: radial-gradient(circle, rgba(214, 163, 63, 0.18), rgba(20, 8, 2, 0.86) 66%);
      box-shadow: 0 0 0 8px rgba(214, 163, 63, 0.12), inset 0 0 22px rgba(0, 0, 0, 0.45);
    }
    .premium-heritage-seal span:first-child { display: block; font-size: 0.9rem; letter-spacing: 0.12em; text-transform: uppercase; }
    .premium-heritage-seal span:last-child { display: block; font-size: clamp(2.5rem, 4vw, 4.3rem); line-height: 0.9; }
    .premium-footer-bottom {
      position: relative;
      z-index: 1;
      margin-top: 0;
      padding: 24px clamp(22px, 3vw, 46px);
      border-top: 1px solid rgba(214, 163, 63, 0.34);
      display: flex;
      justify-content: space-between;
      gap: 20px;
      color: #f6d18a;
      font-size: 1rem;
      background: rgba(10, 4, 1, 0.38);
    }
arousel-card-media {
      position: relative;
      z-index: 1;
      width: 100%;
      height: 300px;
      overflow: hidden;
      border: 4px solid rgba(255, 255, 255, 0.88);
      border-radius: 20px;
      background: #fff;
      box-shadow: 0 10px 30px rgba(74, 44, 33, 0.15);
      cursor: zoom-in;
      display: flex;
      align-items: center;
      justify-content: center;
    }
       .carousel-image-modal {
      position: fixed;
      inset: 0;
      z-index: 180;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 24px;
      background: rgba(16, 9, 6, 0.74);
      backdrop-filter: blur(6px);
    }
    .carousel-image-modal.active { display: flex; }
    .carousel-image-dialog {
      position: relative;
      width: min(92vw, 760px);
      max-height: 86vh;
      border-radius: 12px;
      background: #fffaf5;
      border: 1px solid rgba(255,255,255,0.72);
      box-shadow: 0 30px 80px rgba(0,0,0,0.36);
      padding: 18px;
    }
    .carousel-image-dialog img {
      width: 100%;
      max-height: 70vh;
      object-fit: contain;
      border-radius: 8px;
      background: #fff;
    }
    .carousel-image-title {
      margin-top: 12px;
      text-align: center;
      font-weight: 900;
      color: #2b130b;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      font-size: 0.9rem;
    }
    .carousel-image-close {
      position: absolute;
      top: -14px;
      right: -14px;
      width: 38px;
      height: 38px;
      border-radius: 999px;
      background: #2b130b;
      color: #fff;
      border: 2px solid #fff;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 1.4rem;
      line-height: 1;
      box-shadow: 0 12px 28px rgba(0,0,0,0.22);
      cursor: pointer;
    }    @media (max-width: 640px) {
      :root { --ring-depth: 210px; }
      .hero-stage { min-height: 420px; }
      .slider { width: 168px; height: 306px; }
      .carousel-card-media { height: 250px; }
      .product-text-overlay { font-size: 0.76rem; margin-top: 11px; }
    }
    .premium-footer-tagline { color: var(--footer-gold); }
    @media (max-width: 1180px) {
      .premium-footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .premium-footer-col, .premium-footer-brand { min-height: 0; }
      .premium-footer-bakery-art { display: none; }
      .premium-footer-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .premium-heritage-seal { grid-column: 1 / -1; }
    }
    @media (max-width: 680px) {
      .premium-site-footer { margin-top: 48px; }
      .premium-site-footer-inner { padding: 34px 18px 0; }
      .premium-footer-main { grid-template-columns: 1fr; }
      .premium-footer-col { border-left: 0; padding-left: 0; border-top: 1px solid rgba(214, 163, 63, 0.38); padding-top: 24px; }
      .premium-footer-badges { grid-template-columns: 1fr; padding: 18px; }
      .premium-badge-item { border-right: 0; border-bottom: 1px solid rgba(214, 163, 63, 0.28); padding-bottom: 14px; }
      .premium-footer-bottom { flex-direction: column; text-align: center; }
    }








/* Premium homepage refresh */
:root {
  --cream: #FFFDF7;
  --warm-beige: #F5E6CA;
  --soft-sand: #DCC7AA;
  --coffee: #6F4E37;
  --chocolate: #4B3832;
  --premium-shadow: 0 22px 55px rgba(75, 56, 50, 0.16);
}
body {
  background: linear-gradient(180deg, var(--cream) 0%, #fbf0dc 48%, var(--cream) 100%) !important;
  color: var(--chocolate) !important;
}
body.reference-header-enabled nav {
  background: linear-gradient(135deg, rgba(75, 56, 50, 0.98), rgba(111, 78, 55, 0.95)) !important;
  border-bottom: 1px solid rgba(220, 199, 170, 0.34) !important;
  box-shadow: 0 14px 36px rgba(75, 56, 50, 0.20) !important;
}
body.reference-header-enabled .nav-logo-circle {
  background: rgba(255, 253, 247, 0.98) !important;
  border-color: rgba(245, 230, 202, 0.95) !important;
  box-shadow: 0 16px 38px rgba(75, 56, 50, 0.20), inset 0 0 0 1px rgba(220, 199, 170, 0.42) !important;
  transition: transform 280ms ease, box-shadow 280ms ease, opacity 280ms ease !important;
}
body.reference-header-enabled .header-logo-button:hover .nav-logo-circle {
  transform: translate(-50%, -50%) scale(1.035) !important;
  opacity: .96;
}
body.reference-header-enabled .nav-logo-circle img {
  padding: 8px !important;
  object-fit: contain !important;
}
.home-main-hero,
.hero-shell,
#categories,
#about,
#google-reviews {
  background: transparent !important;
}
.home-main-hero-title,
.font-display {
  color: var(--chocolate);
}
.home-main-hero-cta,
.btn-main,
.general-submit {
  background: linear-gradient(135deg, var(--coffee), var(--chocolate)) !important;
  color: var(--cream) !important;
  border: 1px solid rgba(220, 199, 170, .5) !important;
  box-shadow: 0 16px 34px rgba(75, 56, 50, .22) !important;
}
.hero-shell {
  padding: clamp(54px, 7vw, 92px) 0 clamp(34px, 5vw, 70px) !important;
  overflow: hidden;
}
.hero-stage {
  min-height: 360px !important;
  width: min(100vw, 1440px) !important;
  overflow: visible !important;
  perspective: none !important;
  cursor: default !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}
.slider {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: max-content !important;
  height: auto !important;
  display: flex !important;
  gap: clamp(18px, 2.4vw, 34px) !important;
  transform-style: flat !important;
  transform: translate3d(0,0,0) !important;
  animation: premiumProductMarquee 42s linear infinite;
  will-change: transform;
}
.hero-stage:hover .slider { animation-play-state: paused; }
.slider-item {
  position: relative !important;
  inset: auto !important;
  flex: 0 0 clamp(210px, 24vw, 310px) !important;
  width: clamp(210px, 24vw, 310px) !important;
  height: clamp(300px, 32vw, 390px) !important;
  transform: translate3d(0,0,0) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,253,247,.96), rgba(245,230,202,.9)) !important;
  border: 1px solid rgba(220,199,170,.8) !important;
  box-shadow: 0 18px 42px rgba(75,56,50,.13) !important;
  padding: 12px !important;
  transition: transform 320ms cubic-bezier(.2,.8,.2,1), box-shadow 320ms ease, border-color 320ms ease;
  animation: premiumCardFloat 5.4s ease-in-out infinite;
}
.slider-item:nth-child(2n) { animation-delay: -1.8s; }
.slider-item:nth-child(3n) { animation-delay: -3.2s; }
.slider-item:hover {
  transform: translate3d(0,-10px,0) scale(1.04) !important;
  z-index: 3;
  border-color: rgba(111,78,55,.44) !important;
  box-shadow: 0 28px 70px rgba(75,56,50,.22) !important;
}
.carousel-card-media {
  height: calc(100% - 58px) !important;
  border: 1px solid rgba(220,199,170,.64) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  background: var(--cream) !important;
}
.carousel-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 600ms ease;
}
.slider-item:hover .carousel-card-media img { transform: scale(1.08); }
.product-text-overlay {
  position: static !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 46px;
  margin-top: 10px !important;
  border-radius: 999px !important;
  background: rgba(75,56,50,.94) !important;
  color: var(--cream) !important;
  border: 1px solid rgba(245,230,202,.34) !important;
  box-shadow: 0 10px 22px rgba(75,56,50,.14) !important;
}
@keyframes premiumProductMarquee {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-50%,0,0); }
}
@keyframes premiumCardFloat {
  0%, 100% { translate: 0 0; }
  50% { translate: 0 -6px; }
}
.premium-category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: clamp(190px, 18vw, 260px);
  gap: clamp(14px, 2vw, 24px);
}
.premium-category-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 0;
  overflow: hidden;
  border-radius: 18px !important;
  border: 1px solid rgba(220,199,170,.78);
  background: var(--warm-beige);
  box-shadow: 0 18px 48px rgba(75,56,50,.14);
  isolation: isolate;
  transition: transform 360ms cubic-bezier(.2,.8,.2,1), box-shadow 360ms ease, border-color 360ms ease;
}
.premium-category-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(75,56,50,0) 24%, rgba(75,56,50,.42) 62%, rgba(75,56,50,.9) 100%);
  transition: opacity 360ms ease;
}
.premium-category-card img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 700ms ease, filter 700ms ease;
}
.premium-category-card span,
.premium-category-card h3 {
  position: relative;
  z-index: 1;
  padding-inline: clamp(16px, 2vw, 24px);
  color: var(--cream);
  text-shadow: 0 2px 16px rgba(0,0,0,.24);
}
.premium-category-card span {
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .86;
}
.premium-category-card h3 {
  padding-bottom: clamp(16px, 2vw, 24px);
  font-family: "Playfair Display", serif;
  font-size: clamp(1.55rem, 2.3vw, 2.55rem);
  font-weight: 800;
  line-height: 1.05;
}
.premium-category-card:hover {
  transform: translateY(-8px) scale(1.018);
  border-color: rgba(255,253,247,.74);
  box-shadow: 0 30px 80px rgba(75,56,50,.25);
}
.premium-category-card:hover img {
  transform: scale(1.1);
  filter: saturate(1.05) contrast(1.04);
}
.premium-category-wide { grid-column: span 2; }
.premium-category-tall { grid-row: span 2; }
#about .relative.overflow-hidden,
#google-reviews article,
.floating-panel,
.bg-white\/90 {
  border-color: rgba(220,199,170,.68) !important;
  background-color: rgba(255,253,247,.92) !important;
  box-shadow: var(--premium-shadow) !important;
}
.premium-site-footer {
  background: linear-gradient(135deg, #2f211d, var(--chocolate) 48%, #241916) !important;
}
@media (max-width: 900px) {
  .premium-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: clamp(170px, 38vw, 230px); }
  .premium-category-wide,
  .premium-category-tall { grid-column: span 1; grid-row: span 1; }
  .hero-stage { min-height: 330px !important; }
}
@media (max-width: 560px) {
  .premium-category-grid { grid-template-columns: 1fr; grid-auto-rows: 220px; }
  .slider-item { flex-basis: 220px !important; width: 220px !important; height: 320px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .slider,
  .slider-item { animation: none !important; }
  .hero-stage { overflow-x: auto !important; -webkit-mask-image: none; mask-image: none; }
}


