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

    .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; }
    html { scroll-behavior:smooth; }
    body {
      font-family:'Almarai',sans-serif;
      background:#F7F5F0;
      color:#1A1A1A;
      direction:rtl;
      overflow-x:hidden;
    }
    a { text-decoration:none; color:inherit; }
    button { cursor:pointer; font-family:inherit; }
    .container { max-width:1400px; margin:0 auto; padding:0 40px; }

    :root {
      --gold:#C9A84C;
      --gold-light:#E4D5B0;
      --dark:#0D0C0C;
      --white:#FFFFFF;
      --gray:#F7F5F0;
      --text:#1A1A1A;
      --muted:rgba(0,0,0,0.45);
    }

    header {
      position:fixed;
      top:var(--ship-banner-h, 0px); left:0; right:0;
      z-index:1000;
      display:flex;
      align-items:center;
      justify-content:flex-start;
      gap:10px;
      padding:0 40px;
      height:88px;
      background:rgba(255,255,255,0.88);
      backdrop-filter:blur(14px);
      border-bottom:1px solid rgba(0,0,0,0.04);
      box-shadow:0 2px 24px rgba(0,0,0,0.02);
    }
    .header-brand { display:flex; align-items:center; flex:0 0 auto; min-width:0; }
    .header-logo-right {
      width:142px;
      height:68px;
      object-fit:contain;
      display:block;
      border-radius:0;
    }
    .header-main-nav {
      display:flex;
      align-items:center;
      justify-content:center;
      gap:2px;
      flex:0 1 auto;
      min-width:0;
      margin:0 0 0 auto;
    }
    .header-main-nav a,
    .header-main-nav button {
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:38px;
      padding:7px 11px;
      border:1px solid transparent;
      border-radius:9px;
      background:transparent;
      color:var(--dark);
      font-size:12px;
      font-weight:700;
      white-space:nowrap;
      transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
    }
    .header-main-nav a:hover,
    .header-main-nav button:hover {
      color:var(--gold);
      background:rgba(201,168,76,.08);
      border-color:rgba(201,168,76,.25);
      transform:translateY(-1px);
    }
    .nav-controls { flex:0 0 auto; margin-left:0; }
    section[id] { scroll-margin-top:calc(104px + var(--ship-banner-h, 0px)); }
    .logo {
      font-family:'Amiri', serif;
      font-size:28px;
      color:#000;
      font-weight:700;
      letter-spacing:0.5px;
      text-shadow:0 0 10px rgba(201,168,76,0.55);
      animation:logoShine 4s ease-in-out infinite;
    }
    .logo span { color:inherit; }
    @keyframes logoShine {
      0%, 100% { text-shadow:0 0 10px rgba(201,168,76,0.55); }
      50% { text-shadow:0 0 16px rgba(201,168,76,0.75); }
    }
    .nav-controls {
      display:flex;
      gap:12px;
      align-items:center;
    }
    .country-select, .lang-btn {
      background:transparent;
      border:1px solid rgba(0,0,0,0.06);
      color:var(--text);
      padding:8px 16px;
      border-radius:30px;
      font-size:12px;
      font-weight:600;
      transition:all 0.2s;
      outline:none;
    }
    .country-select:hover, .lang-btn:hover {
      border-color:var(--gold);
      background:rgba(201,168,76,0.04);
    }
    .cart-btn {
      background:var(--dark);
      border:none;
      color:white;
      width:44px;
      height:44px;
      border-radius:50%;
      font-size:18px;
      position:relative;
      display:flex;
      align-items:center;
      justify-content:center;
      transition:all 0.2s;
      box-shadow:0 4px 16px rgba(0,0,0,0.04);
    }
    .cart-btn:hover { background:var(--gold); }
    .cart-badge {
      position:absolute;
      top:-6px; right:-6px;
      background:var(--gold);
      color:white;
      width:22px; height:22px;
      border-radius:50%;
      font-size:11px;
      font-weight:700;
      display:flex;
      align-items:center;
      justify-content:center;
      border:2px solid white;
    }

    .hamburger-btn {
      width:44px; height:44px;
      border:1px solid rgba(0,0,0,0.08);
      background:transparent;
      border-radius:50%;
      display:flex; flex-direction:column; align-items:center; justify-content:center;
      gap:4px;
      transition:all 0.2s;
    }
    .hamburger-btn:hover { border-color:var(--gold); background:rgba(201,168,76,0.06); }
    .hamburger-btn span { display:block; width:18px; height:2px; background:var(--text); border-radius:2px; transition:all 0.2s; }
    .hamburger-btn:hover span { background:var(--gold); }

    .drawer-overlay {
      position:fixed; inset:0; background:rgba(10,9,7,0.45); backdrop-filter:blur(2px);
      z-index:2100; opacity:0; pointer-events:none; transition:opacity 0.25s;
    }
    .drawer-overlay.open { opacity:1; pointer-events:auto; }
    .side-drawer {
      position:fixed; top:0; bottom:0; right:0;
      width:300px; max-width:82vw;
      background:linear-gradient(180deg,#FFFFFF 0%, #FBF9F4 100%);
      z-index:2200;
      box-shadow:-20px 0 60px rgba(0,0,0,0.2);
      transform:translateX(100%);
      transition:transform 0.3s cubic-bezier(.4,0,.2,1);
      display:flex; flex-direction:column;
      padding:24px 20px;
      overflow-y:auto;
    }
    html[dir="ltr"] .side-drawer { right:auto; left:0; box-shadow:20px 0 60px rgba(0,0,0,0.2); transform:translateX(-100%); }
    html[dir="ltr"] .side-drawer.open { transform:translateX(0); }
    .side-drawer.open { transform:translateX(0); }
    .drawer-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
    .drawer-brand { font-family:'Amiri',serif; font-size:19px; color:var(--dark); }
    .drawer-close {
      width:32px; height:32px; border:none; border-radius:50%; background:var(--gray); color:var(--dark);
      font-size:14px; display:flex; align-items:center; justify-content:center; transition:all 0.2s;
    }
    .drawer-close:hover { background:var(--gold); color:#fff; }
    .drawer-quiz-cta {
      display:flex; align-items:center; gap:12px;
      background:var(--dark); color:#fff;
      border:none; border-radius:16px; padding:16px; margin-bottom:22px;
      text-align:start; transition:all 0.2s;
    }
    .drawer-quiz-cta:hover { background:#1c1a17; }
    .dqc-icon { font-size:24px; flex-shrink:0; }
    .dqc-text { display:flex; flex-direction:column; gap:3px; }
    .dqc-text b { font-size:14.5px; }
    .dqc-text span { font-size:12px; color:rgba(255,255,255,0.6); line-height:1.5; }
    .drawer-nav { display:flex; flex-direction:column; margin-bottom:22px; border-top:1px solid rgba(0,0,0,0.06); border-bottom:1px solid rgba(0,0,0,0.06); }
    .drawer-nav a { padding:13px 4px; font-size:14px; color:var(--text); border-bottom:1px solid rgba(0,0,0,0.05); transition:color 0.15s; }
    .drawer-nav a:last-child { border-bottom:none; }
    .drawer-nav a:hover { color:var(--gold); }
    .drawer-section { margin-bottom:16px; }
    .drawer-label { display:block; font-size:11px; color:var(--muted); margin-bottom:8px; letter-spacing:0.5px; }
    .drawer-select { width:100%; }
    .drawer-lang-btn { width:100%; text-align:center; }

    #collectionsSlider {
      margin-top:calc(88px + var(--ship-banner-h, 0px));
      width:100%;
      background:var(--dark);
      position:relative;
    }

    .slider-container {
      position:relative;
      width:100%;
      touch-action:pan-y;
      user-select:none;
      cursor:grab;
      aspect-ratio:16/7;
      max-height:80vh;
      background:var(--dark);
    }
    .slider-container:active { cursor:grabbing; }
    .slider-track { position:relative; width:100%; height:100%; }
    .slider-slide { position:relative; width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
    .slider-slide video, .slider-slide img, .hero-video-placeholder {
      display:block;
      width:100%;
      height:auto;
      max-height:80vh;
      object-fit:cover;
      aspect-ratio:16/7;
    }
    .hero-video-placeholder {
      background:linear-gradient(135deg,#0d0c0c 0%,#2a2116 48%,#c9a84c 180%);
    }

    .slider-controls {
      position:absolute;
      bottom:24px;
      left:50%;
      transform:translateX(-50%);
      display:flex;
      gap:12px;
      z-index:10;
    }
    .slider-dot {
      width:10px; height:10px;
      border-radius:50%;
      background:rgba(255,255,255,0.25);
      cursor:pointer;
      transition:all 0.2s;
    }
    .slider-dot.active { background:var(--gold); width:28px; border-radius:6px; }

    #extraSliderAfterBoxes, #extraSliderBeforeOffers { margin:36px 0; }

    #boxesSection {
      padding:80px 0 40px;
      background:var(--white);
    }
    .section-header {
      text-align:center;
      margin-bottom:48px;
    }
    .section-header h2 {
      font-family:'Amiri',serif;
      font-size:clamp(28px,4vw,42px);
      color:var(--dark);
      letter-spacing:0.5px;
    }
    .section-header p {
      color:var(--muted);
      font-size:16px;
      margin-top:6px;
      font-weight:300;
    }
    .gold-line {
      width:60px;
      height:2px;
      background:var(--gold);
      margin:12px auto 20px;
      border-radius:2px;
    }
    .quick-nav-wrap {
      background:linear-gradient(180deg, rgba(247,243,232,0.6), transparent);
      padding:28px 0 8px;
    }
    .quick-nav-inner {
      display:flex;
      justify-content:center;
      flex-wrap:wrap;
      gap:14px;
    }
    .quick-nav-btn {
      font-family:'Amiri',serif;
      font-size:19px;
      letter-spacing:.3px;
      color:var(--dark, #222);
      background:#fff;
      border:1px solid rgba(201,168,76,0.4);
      padding:16px 42px;
      border-radius:999px;
      text-decoration:none;
      transition:all .3s ease;
      box-shadow:0 2px 8px rgba(0,0,0,0.04);
    }
    .quick-nav-btn:hover {
      background:var(--gold);
      color:#fff;
      border-color:var(--gold);
      transform:translateY(-2px);
      box-shadow:0 6px 16px rgba(201,168,76,0.3);
    }
    @media (max-width:600px) {
      .quick-nav-inner { gap:10px; }
      .quick-nav-btn { padding:13px 26px; font-size:16px; }
    }

    .box-grid {
      display:grid;
      grid-template-columns:repeat(auto-fill, minmax(240px,1fr));
      gap:32px 24px;
    }
    .box-card {
      background:white;
      border-radius:16px;
      overflow:hidden;
      box-shadow:0 4px 20px rgba(0,0,0,0.02);
      border:1px solid rgba(0,0,0,0.04);
      transition:all 0.35s cubic-bezier(0.16,1,0.3,1);
    }
    .box-card:hover {
      transform:translateY(-8px);
      box-shadow:0 20px 48px rgba(0,0,0,0.04);
      border-color:rgba(201,168,76,0.15);
    }
    .box-gallery {
      position:relative;
      width:100%;
      aspect-ratio:3/4;
      overflow:hidden;
      background:#F2EFE9;
    }
    .box-gallery img {
      display:none;
      width:100%;
      height:100%;
      object-fit:cover;
      cursor:zoom-in;
    }
    .box-gallery img.active { display:block; }
    .box-arrow {
      position:absolute;
      top:50%;
      transform:translateY(-50%);
      background:rgba(255,255,255,0.7);
      backdrop-filter:blur(4px);
      border:1px solid rgba(0,0,0,0.04);
      color:var(--dark);
      width:30px; height:30px;
      border-radius:50%;
      font-size:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      z-index:5;
      opacity:0;
      transition:all 0.2s;
    }
    .box-gallery:hover .box-arrow { opacity:1; }
    .box-arrow:hover { background:var(--gold); color:white; }
    .box-arrow-prev { left:10px; }
    .box-arrow-next { right:10px; }
    .box-info {
      padding:18px 20px 22px;
    }
    .box-name {
      font-family:'Almarai',sans-serif;
      font-size:20px;
      color:var(--dark);
      margin-bottom:4px;
    }
    .box-price {
      color:var(--gold);
      font-weight:700;
      font-size:20px;
      font-family:'Almarai',sans-serif;
      margin-bottom:16px;
    }
    .pcard-buttons {
      display:flex;
      gap:10px;
      justify-content:center;
    }
    .pcard-buttons .add-btn {
      flex:1 1 100%;
      width:100%;
      max-width:100%;
    }
    .add-btn, .buy-btn {
      flex:1;
      padding:12px 10px;
      border-radius:30px;
      font-weight:700;
      font-size:13px;
      letter-spacing:0.3px;
      transition:all 0.2s;
      border:1.5px solid var(--dark);
      background:transparent;
      color:var(--dark);
    }
    .buy-btn {
      background:var(--dark);
      color:white;
      border-color:var(--dark);
    }
    .add-btn:hover { background:rgba(0,0,0,0.02); }
    .buy-btn:hover { background:var(--gold); border-color:var(--gold); color:white; }

    #products {
      padding:80px 0 100px;
      background:#F7F5F0;
    }
    .header-search-panel {
      display:none;
      position:absolute;
      top:calc(100% + 8px);
      left:0;
      min-width:280px;
      max-width:340px;
      z-index:500;
    }
    .header-search-panel.open { display:block; animation:searchPanelFade 0.15s ease; }
    @keyframes searchPanelFade { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }
    .search-input-row {
      display:flex;
      align-items:center;
      gap:8px;
      background:#eef2f6;
      border-radius:999px;
      padding:8px 16px;
      box-shadow:0 6px 20px rgba(0,0,0,0.08);
    }
    .header-search-panel input {
      border:none;
      background:transparent;
      outline:none;
      font-family:inherit;
      font-size:14px;
      flex:1;
      color:#333;
    }
    .search-results-list {
      background:#fff;
      border-radius:14px;
      margin-top:6px;
      max-height:360px;
      overflow-y:auto;
      box-shadow:0 8px 24px rgba(0,0,0,0.1);
    }
    .search-results-list:empty { display:none; box-shadow:none; }
    .search-result-item {
      display:flex;
      align-items:center;
      gap:10px;
      padding:10px 14px;
      cursor:pointer;
      border-bottom:1px solid #f2f2f2;
    }
    .search-result-item:last-child { border-bottom:none; }
    .search-result-item:hover { background:#f7f5f0; }
    .search-result-item img {
      width:40px; height:40px;
      border-radius:8px;
      object-fit:cover;
      flex-shrink:0;
    }
    .search-result-name { font-size:13px; font-weight:600; flex:1; }
    .search-result-price { font-size:12px; color:#999; white-space:nowrap; }
    .search-result-empty { padding:14px; text-align:center; font-size:13px; color:#999; }
    .pgrid {
      display:grid;
      grid-template-columns:repeat(auto-fill, minmax(200px,1fr));
      gap:28px 24px;
    }
    .pgroup-section { margin-bottom:44px; }
    .pgroup-section:last-child { margin-bottom:0; }
    .pgroup-title {
      font-family:'Amiri',serif;
      font-size:clamp(26px,3.6vw,38px);
      text-align:center;
      color:var(--dark, #222);
      margin-bottom:26px;
      padding-bottom:14px;
      border-bottom:1px solid rgba(201,168,76,0.35);
      position:relative;
    }
    .pgroup-title::after {
      content:'';
      position:absolute;
      bottom:-1px; left:50%;
      transform:translateX(-50%);
      width:60px; height:2px;
      background:var(--gold, #C9A84C);
    }
    .pgrid-inner {
      display:grid;
      grid-template-columns:repeat(auto-fill, minmax(200px,1fr));
      gap:28px 24px;
    }
    .pcard {
      background:white;
      border-radius:16px;
      overflow:hidden;
      box-shadow:0 4px 20px rgba(0,0,0,0.02);
      border:1px solid rgba(0,0,0,0.04);
      transition:all 0.35s cubic-bezier(0.16,1,0.3,1);
    }
    .pcard:hover {
      transform:translateY(-8px);
      box-shadow:0 20px 48px rgba(0,0,0,0.04);
      border-color:rgba(201,168,76,0.12);
    }
    .pcard-img {
      position:relative;
      width:100%;
      aspect-ratio:3/4;
      overflow:hidden;
      background:#F2EFE9;
    }
    .pcard-img img {
      display:none;
      width:100%;
      height:100%;
      object-fit:cover;
      cursor:zoom-in;
      transition:transform 0.5s ease;
    }
    .pcard-img img.active { display:block; }
    .pcard:hover .pcard-img img.active { transform:scale(1.03); }
    .pcard-img:hover .box-arrow { opacity:1; }
    .pcard-info {
      padding:16px 18px 22px;
    }
    .pcard-cat {
      font-size:10px;
      letter-spacing:2px;
      color:var(--gold);
      text-transform:uppercase;
      font-weight:600;
      margin-bottom:4px;
    }
    .pcard-name {
      font-family:'Almarai',sans-serif;
      font-size:18px;
      color:var(--dark);
      margin-bottom:6px;
      min-height:44px;
      line-height:1.3;
    }
    .pcard-price {
      color:var(--gold);
      font-weight:700;
      font-size:18px;
      font-family:'Almarai',sans-serif;
      margin-bottom:14px;
    }

    .price-display {
      display:flex;
      align-items:baseline;
      justify-content:flex-start;
      flex-wrap:wrap;
      gap:7px 12px;
      direction:ltr;
      line-height:1.35;
      font-variant-numeric:tabular-nums;
    }
    .price-original,
    .price-current {
      display:inline-flex;
      align-items:baseline;
      gap:5px;
      margin:0;
      white-space:nowrap;
      direction:ltr;
    }
    .price-original {
      color:rgba(26,26,26,0.58);
      font-weight:600;
      text-decoration:line-through;
      text-decoration-color:#e0473e;
      text-decoration-thickness:1.5px;
      font-size:.86em;
    }
    .price-current { color:var(--gold); font-weight:800; }
    .price-value { display:inline-block; }
    .price-currency {
      display:inline-block;
      font-size:.72em;
      font-weight:700;
      letter-spacing:.2px;
      opacity:.82;
    }
    .price-discount-badge {
      display:inline-flex;
      align-items:center;
      background:#e0473e;
      color:#fff;
      font-size:10px;
      font-weight:800;
      padding:3px 8px;
      border-radius:20px;
      white-space:nowrap;
      direction:ltr;
      font-family:'Almarai',sans-serif;
    }

    html[dir="rtl"] .price-display {
      display:inline;
      direction:inherit;
      line-height:inherit;
      font-variant-numeric:normal;
    }
    html[dir="rtl"] .price-original,
    html[dir="rtl"] .price-current {
      display:inline;
      gap:0;
      white-space:normal;
      direction:inherit;
      vertical-align:middle;
    }
    html[dir="rtl"] .price-original {
      color:#1a1a1a;
      font-weight:700;
      font-size:inherit;
      text-decoration:line-through;
      text-decoration-color:#e0473e;
      text-decoration-thickness:1.5px;
      margin-inline-end:10px;
    }
    html[dir="rtl"] .price-current {
      color:var(--gold);
      font-weight:700;
    }
    html[dir="rtl"] .price-value,
    html[dir="rtl"] .price-currency {
      display:inline;
      font-size:inherit;
      font-weight:inherit;
      letter-spacing:normal;
      opacity:1;
    }
    html[dir="rtl"] .price-currency { margin-inline-start:4px; }
    html[dir="rtl"] .price-discount-badge {
      display:inline-block;
      font-size:11px;
      font-weight:700;
      padding:2px 9px;
      margin-inline-start:8px;
      vertical-align:middle;
    }

    .wl-heart {
      position:absolute;
      top:10px;
      left:10px;
      width:34px;
      height:34px;
      border-radius:50%;
      background:rgba(255,255,255,0.85);
      backdrop-filter:blur(4px);
      border:1px solid rgba(0,0,0,0.05);
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      z-index:6;
      transition:transform 0.15s ease;
      padding:0;
    }
    html[dir="ltr"] .wl-heart { left:auto; right:10px; }
    .wl-heart:hover { transform:scale(1.1); background:#fff; }
    .wl-heart.pop { animation:wlPop 0.35s ease; }
    @keyframes wlPop { 0%{transform:scale(1);} 35%{transform:scale(1.35);} 100%{transform:scale(1);} }
    .qv-info .wl-heart { position:static; margin-bottom:12px; width:auto; height:auto; border-radius:20px; padding:6px 14px; gap:6px; font-size:12px; font-weight:700; color:var(--dark); background:#FAF8F3; border:1px solid rgba(0,0,0,0.08); }
    .qv-info .wl-heart svg { flex-shrink:0; }

    .coupon-row { display:flex; gap:8px; margin:14px 0; }
    .coupon-row input {
      flex:1; background:#FFFFFF; border:1.5px solid rgba(0,0,0,0.08); border-radius:12px;
      padding:11px 14px; font-size:13.5px; font-family:inherit; outline:none; text-transform:uppercase;
    }
    .coupon-row input:focus { border-color:var(--gold); }
    .coupon-row button {
      background:var(--dark); color:#fff; border:none; border-radius:12px; padding:0 18px;
      font-weight:700; font-size:13px; white-space:nowrap; transition:all 0.2s;
    }
    .coupon-row button:hover { background:var(--gold); color:var(--dark); }
    .coupon-msg { font-size:12px; margin:-6px 0 10px; min-height:14px; }
    .coupon-msg.ok { color:#2e8b57; }
    .coupon-msg.err { color:#c0392b; }
    .order-total.discount-line span:last-child { color:#2e8b57; }
    .order-total-final { border-top:1px dashed rgba(0,0,0,0.1); padding-top:10px; margin-top:2px; }

    .qv-reviews { margin-top:22px; padding-top:18px; border-top:1px solid rgba(0,0,0,0.06); }
    .qv-reviews-title { font-weight:700; font-size:14px; color:var(--dark); margin-bottom:10px; display:flex; align-items:center; gap:8px; }
    .review-item { padding:10px 0; border-bottom:1px dashed rgba(0,0,0,0.07); }
    .review-item:last-child { border-bottom:none; }
    .review-stars { color:var(--gold); font-size:13px; letter-spacing:1px; display:flex; gap:2px; }
    .review-stars svg { width:14px; height:14px; flex-shrink:0; }
    .review-name { font-weight:700; font-size:13px; color:var(--dark); }
    .review-text { font-size:12.5px; color:var(--muted); margin-top:2px; line-height:1.6; }
    .review-empty { font-size:12.5px; color:var(--muted); text-align:center; padding:8px 0; }
    .add-review-btn { font-size:12px; font-weight:700; color:var(--gold); background:none; border:none; cursor:pointer; text-decoration:underline; margin-top:6px; }
    .review-form { display:none; margin-top:12px; background:#FAF8F3; border-radius:12px; padding:14px; }
    .review-form.show { display:block; }
    .review-form input, .review-form textarea {
      width:100%; border:1px solid rgba(0,0,0,0.1); border-radius:10px; padding:9px 12px;
      font-size:13px; font-family:inherit; margin-bottom:8px; outline:none;
    }
    .review-form input:focus, .review-form textarea:focus { border-color:var(--gold); }
    .star-picker { display:flex; gap:4px; margin-bottom:10px; font-size:22px; }
    .star-picker span { cursor:pointer; color:rgba(0,0,0,0.15); transition:color 0.15s; }
    .star-picker span.on { color:var(--gold); }
    .review-form button { background:var(--dark); color:#fff; border:none; border-radius:10px; padding:8px 16px; font-size:12.5px; font-weight:700; cursor:pointer; }
    .review-form button:hover { background:var(--gold); color:var(--dark); }

    .wl-modal-item { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px dashed rgba(0,0,0,0.07); }
    .wl-modal-item img { width:52px; height:52px; object-fit:cover; border-radius:10px; flex-shrink:0; }
    .wl-modal-item .wl-item-name { font-weight:700; font-size:13.5px; color:var(--dark); }
    .wl-modal-item .wl-item-price { font-size:12px; color:var(--gold); font-weight:700; }
    .wl-modal-item .wl-item-actions { display:flex; gap:6px; margin-right:auto; }
    .wl-modal-item .wl-item-actions button { font-size:11px; font-weight:700; border-radius:20px; padding:6px 10px; border:1px solid rgba(0,0,0,0.1); background:#fff; cursor:pointer; }
    .wl-modal-item .wl-item-actions button.wl-remove-btn { color:#c0392b; }
    .wl-empty { text-align:center; padding:30px 0; color:var(--muted); font-size:13px; }

    .modal {
      position:fixed;
      inset:0;
      background:rgba(10,9,7,0.65);
      backdrop-filter:blur(10px);
      display:none;
      align-items:center;
      justify-content:center;
      z-index:2000;
      padding:20px;
    }
    .modal.open { display:flex; }
    .modal-content {
      background:linear-gradient(180deg,#FFFFFF 0%, #FBF9F4 100%);
      padding:36px 30px 34px;
      border-radius:22px;
      width:100%;
      max-width:540px;
      position:relative;
      box-shadow:0 40px 90px rgba(0,0,0,0.35);
      border:1px solid rgba(201,168,76,0.18);
      max-height:90vh;
      overflow-y:auto;
      overflow-x:hidden;
      box-sizing:border-box;
    }
    .modal-content::before {
      content:'';
      position:absolute;
      top:0; left:22px; right:22px;
      height:3px;
      border-radius:0 0 4px 4px;
      background:linear-gradient(90deg,transparent,var(--gold),transparent);
    }
    .modal-close {
      position:absolute;
      top:14px; left:14px;
      width:38px; height:38px;
      background:var(--dark);
      border:2px solid var(--gold);
      border-radius:50%;
      color:#fff;
      font-size:18px;
      font-weight:700;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition:all 0.2s;
      box-shadow:0 4px 14px rgba(0,0,0,0.35);
      z-index:10;
    }
    .modal-close:hover { transform:rotate(90deg); background:var(--gold); color:var(--dark); border-color:var(--gold); }
    #qvBackBtn:hover, #qvBackBtn:active, #qvBackBtn:focus { transform:none; }
    @media(max-width:600px) {
      .modal-close { width:42px; height:42px; font-size:20px; top:12px; left:12px; }
    }
    .modal-content h2 {
      font-family:'Amiri',serif;
      color:var(--dark);
      margin-bottom:6px;
      text-align:center;
      font-size:27px;
    }

    .modal.qv-fullpage-mode {
      position:static;
      inset:auto;
      background:#fff;
      backdrop-filter:none;
      display:none;
      padding:0;
      min-height:100vh;
    }
    .modal.qv-fullpage-mode.open { display:flex; }
    .qv-fullpage-mode .qv-content {
      max-width:1100px;
      width:100%;
      margin:calc(88px + var(--ship-banner-h, 0px)) auto 0;
      border-radius:0;
      box-shadow:none;
      border:none;
      padding:28px 24px 60px;
      max-height:none;
    }
    .qv-fullpage-mode .qv-content::before { display:none; }
    .qv-fullpage-mode .qv-body { align-items:flex-start; gap:48px; }
    .qv-fullpage-mode .qv-gallery { flex:0 0 460px; width:460px; border-radius:18px; }
    .qv-fullpage-mode .modal-close {
      position:fixed;
      top:calc(88px + var(--ship-banner-h, 0px) + 14px);
      z-index:1002;
    }
    @media(max-width:768px) {
      .qv-fullpage-mode .modal-close { top:calc(64px + var(--ship-banner-h, 0px) + 12px); }
    }
    @media(max-width:900px) {
      .qv-fullpage-mode .qv-gallery { flex:none; width:100%; }
      .qv-fullpage-mode .qv-body { flex-direction:column; }
    }
    @media(max-width:768px) {
      .qv-fullpage-mode .qv-content { margin-top:calc(64px + var(--ship-banner-h, 0px)); }
    }

    .qv-star-rating { display:flex; align-items:center; gap:8px; margin-bottom:14px; }
    .qv-star-rating .stars { display:flex; gap:2px; }
    .qv-star-rating svg { width:18px; height:18px; }
    .qv-star-rating .stars-count { font-size:13px; color:var(--muted); }

    .qv-meta-row { display:flex; flex-wrap:wrap; gap:16px; margin:10px 0 18px; font-size:13px; color:var(--muted); }
    .qv-meta-row span { display:flex; align-items:center; gap:5px; }

    .qv-related { margin-top:40px; padding-top:32px; border-top:1px solid rgba(0,0,0,0.06); }
    .qv-related-title { font-family:'Amiri',serif; font-size:22px; color:var(--dark); margin-bottom:18px; }

    .qv-related-slider { overflow:hidden; position:relative; }
    .qv-related-nav {
      position:absolute; top:50%; transform:translateY(-50%);
      width:34px; height:34px; border-radius:50%;
      background:rgba(255,255,255,0.92); border:1px solid rgba(0,0,0,0.1);
      display:flex; align-items:center; justify-content:center;
      font-size:16px; color:var(--dark); cursor:pointer; z-index:2;
      box-shadow:0 2px 10px rgba(0,0,0,0.08);
    }
    .qv-related-nav:hover { background:var(--gold); color:#fff; border-color:var(--gold); }
    .qv-related-nav.prev { right:4px; }
    .qv-related-nav.next { left:4px; }
    .qv-related-track { display:flex; gap:16px; will-change:transform; animation: qv-marquee linear infinite; animation-play-state:running; }
    @keyframes qv-marquee { from { transform:translateX(0); } to { transform:translateX(var(--marquee-distance, 0px)); } }
    .qv-related-card { cursor:pointer; text-align:center; flex:0 0 150px; width:150px; }
    .qv-related-card img { width:100%; aspect-ratio:3/4; object-fit:cover; border-radius:12px; background:#F2EFE9; margin-bottom:8px; }
    .qv-related-card .qv-related-name { font-size:13px; color:var(--dark); font-weight:600; margin-bottom:2px; }
    .qv-related-card .qv-related-price { font-size:13px; color:var(--gold); font-weight:700; }
    @media(max-width:600px) { .qv-related-card { flex:0 0 130px; width:130px; } }

    .qv-share-btn {
      display:flex; align-items:center; justify-content:center; gap:7px;
      width:100%; margin-top:10px; padding:9px;
      background:transparent; border:1px solid rgba(0,0,0,0.12); border-radius:12px;
      color:var(--muted); font-size:13px; font-weight:600;
      transition:all 0.2s;
    }
    .qv-share-btn:hover { border-color:var(--gold); color:var(--gold); background:rgba(201,168,76,0.06); }
    .qv-share-btn svg { width:15px; height:15px; }

    .qv-content { max-width:640px; }
    .qv-body { display:flex; gap:28px; align-items:center; }
    .qv-gallery {
      position:relative;
      flex:0 0 260px;
      width:260px;
      border-radius:14px;
      overflow:hidden;
      background:#F2EFE9;
    }
    .qv-gallery img { width:100%; height:auto; display:block; }
    .qv-gallery .box-arrow { opacity:1; }
    .qv-info { flex:1; display:flex; flex-direction:column; justify-content:center; }
    .qv-name { font-family:'Almarai',sans-serif; font-size:24px; color:var(--dark); margin-bottom:8px; }
    .qv-price { color:var(--gold); font-weight:700; font-size:20px; font-family:'Almarai',sans-serif; margin-bottom:20px; }
    @media(max-width:600px) {
      .qv-body { flex-direction:column; }
      .qv-gallery { width:100%; flex:none; }
    }

    .ui-icon {
      width:18px;
      height:18px;
      display:block;
      fill:none;
      stroke:currentColor;
      stroke-width:1.8;
      stroke-linecap:round;
      stroke-linejoin:round;
      pointer-events:none;
    }
    .ui-icon-close { width:17px; height:17px; }
    .modal-close {
      top:16px;
      left:16px;
      width:38px;
      height:38px;
      background:rgba(255,255,255,0.96);
      color:rgba(13,12,12,0.72);
      border:1px solid rgba(13,12,12,0.10);
      border-radius:12px;
      font-size:0;
      box-shadow:0 5px 16px rgba(0,0,0,0.08);
      transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
    }
    .modal-close .ui-icon { transition:transform .2s ease; }
    .modal-close:hover {
      transform:none;
      background:var(--dark);
      color:#fff;
      border-color:var(--dark);
      box-shadow:0 8px 20px rgba(0,0,0,0.16);
    }
    .modal-close:hover .ui-icon { transform:rotate(90deg); }
    .modal-back { left:auto; right:16px; }
    .modal-back:hover .ui-icon { transform:none; }
    .ship-banner-close,
    .ib-close { font-size:0; display:flex; align-items:center; justify-content:center; }
    .ship-banner-close .ui-icon { width:16px; height:16px; }
    .ib-close .ui-icon { width:14px; height:14px; }

    .box-arrow {
      width:38px;
      height:38px;
      font-size:0;
      opacity:.92;
      background:rgba(255,255,255,0.90);
      border:1px solid rgba(13,12,12,0.10);
      box-shadow:0 5px 14px rgba(0,0,0,0.10);
    }
    .box-arrow .ui-icon { width:17px; height:17px; }
    .box-arrow:hover { transform:translateY(-50%) scale(1.04); background:var(--gold); color:#fff; border-color:var(--gold); }
    .box-gallery:hover .box-arrow { opacity:1; }
    .qv-gallery .box-arrow { opacity:1; }
    .lb-nav {
      width:46px;
      height:46px;
      font-size:0;
      background:rgba(255,255,255,0.10);
      border:1px solid rgba(255,255,255,0.18);
    }
    .lb-nav .ui-icon { width:20px; height:20px; }
    .lb-nav:hover { transform:translateY(-50%) scale(1.04); }
    .qv-related-nav { display:none !important; font-size:0; }
    .qv-related-nav .ui-icon { width:18px; height:18px; }
    .qv-related-track { touch-action:pan-y; user-select:none; cursor:grab; }
    .qv-related-track.is-dragging { cursor:grabbing; }
    .qv-related-nav:hover { transform:translateY(-50%) scale(1.04); }

    .modal.qv-fullpage-mode {
      position:fixed;
      inset:0;
      display:none;
      align-items:center;
      justify-content:center;
      padding:20px;
      background:rgba(10,9,7,0.65);
      backdrop-filter:blur(10px);
      min-height:0;
    }
    .modal.qv-fullpage-mode.open { display:flex; }
    .qv-fullpage-mode .qv-content {
      width:100%;
      max-width:860px;
      margin:0;
      border-radius:22px;
      box-shadow:0 40px 90px rgba(0,0,0,0.35);
      border:1px solid rgba(201,168,76,0.18);
      padding:36px 30px 34px;
      max-height:90vh;
      overflow-y:auto;
    }
    .qv-fullpage-mode .qv-content::before { display:block; }
    .qv-fullpage-mode .qv-body { align-items:center; gap:34px; }
    .qv-fullpage-mode .qv-gallery { flex:0 0 300px; width:300px; border-radius:16px; }
    .qv-fullpage-mode .modal-close { position:absolute; top:16px; right:auto; left:16px; }
    .qv-fullpage-mode .modal-back { left:auto; right:16px; }

    .checkout-modal-content {
      max-width:860px;
      padding:38px 34px 32px;
    }
    .checkout-modal-content > h2 { text-align:center; padding-inline:52px; font-size:30px; }
    .checkout-summary {
      background:linear-gradient(180deg,#fffdf8 0%,#faf8f3 100%);
      border:1px solid rgba(201,168,76,0.20);
      border-radius:18px;
      padding:18px;
      margin:8px 0 24px;
    }
    .checkout-summary .modal-subtitle { text-align:right; margin-bottom:14px; }
    .checkout-summary .order-items { margin-bottom:14px; max-height:180px; background:#fff; }
    .checkout-summary .coupon-row { margin:14px 0 8px; }
    .checkout-summary .order-total { margin-bottom:8px; padding:11px 14px; font-size:16px; background:transparent; border:none; border-bottom:1px solid rgba(0,0,0,0.06); border-radius:0; }
    .checkout-summary .order-total-final { margin:8px -2px 0; padding:14px 16px; border:1px solid rgba(201,168,76,0.30); border-radius:13px; background:rgba(201,168,76,0.10); font-size:23px; }
    .checkout-summary .order-total-final span:first-child { font-size:14px; }
    .checkout-details {
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      column-gap:18px;
      row-gap:10px;
    }
    .checkout-details > .form-section-title,
    .checkout-details > #hp_website,
    .checkout-details > #locationBtn,
    .checkout-details > #deliveryRequirementBox,
    .checkout-details > .checkout-notes,
    .checkout-details > div[style*="margin-bottom:20px"],
    .checkout-details > .cf-turnstile,
    .checkout-details > .confirm-btn { grid-column:1 / -1; }
    .checkout-details > .form-section-title { margin-top:4px; }
    .checkout-details > .form-group { margin-bottom:0; }
    .checkout-details > #locationBtn { margin:2px 0 16px !important; }
    #deliveryRequirementBox {
      grid-column:1 / -1;
      margin:4px 0 6px;
      padding:18px 18px 16px;
      border:1.5px solid rgba(201,168,76,0.55);
      border-radius:18px;
      background:linear-gradient(180deg,#fffdf8 0%,#faf6ea 100%);
      box-shadow:0 5px 18px rgba(80,58,10,0.07);
    }
    #deliveryRequirementBox .requirement-heading {
      display:flex;
      align-items:flex-start;
      gap:10px;
      margin-bottom:6px;
      color:var(--dark);
      font-size:16px;
      font-weight:800;
      line-height:1.6;
    }
    #deliveryRequirementBox .requirement-heading::before {
      content:'!';
      display:inline-flex;
      align-items:center;
      justify-content:center;
      flex:0 0 24px;
      width:24px;
      height:24px;
      margin-top:1px;
      border-radius:50%;
      background:var(--gold);
      color:#fff;
      font-size:15px;
      font-weight:800;
    }
    #deliveryRequirementBox .requirement-intro {
      margin:0 0 14px 34px;
      color:#5f5747;
      font-size:13px;
      line-height:1.8;
    }
    #deliveryRequirementBox .form-group { margin-bottom:12px; }
    #deliveryRequirementBox .form-group label { font-weight:700; }
    #deliveryRequirementBox .national-help {
      display:block;
      margin-top:7px;
      color:#665d4c;
      font-size:12.5px;
      line-height:1.75;
    }
    #deliveryRequirementBox #locationBtn {
      margin:0;
      background:#fff;
      border-color:rgba(201,168,76,0.40);
      box-shadow:0 2px 7px rgba(80,58,10,0.05);
    }
    #deliveryRequirementBox #locationTitle { font-size:14px !important; }
    #deliveryRequirementBox #locationSub { margin-top:3px; font-size:12px !important; line-height:1.6; }
    .checkout-details > div[style*="margin-bottom:20px"] { margin-bottom:10px !important; }
    .checkout-details .payment-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .payment-option { min-height:52px; }
    .payment-option > span:first-of-type { width:16px; height:16px; border:1.5px solid rgba(0,0,0,0.20); border-radius:50%; flex:0 0 16px; transition:all .2s ease; }
    .payment-option.selected > span:first-of-type { border-color:var(--gold); background:var(--gold); box-shadow:inset 0 0 0 4px #fff; }
    .checkout-details .confirm-btn { margin-top:8px; }
    @media (hover:none), (max-width:600px) {
      .box-gallery .box-arrow { opacity:1; }
    }
    @media(max-width:700px) {
      .checkout-modal-content { padding:34px 18px 24px; }
      .checkout-modal-content > h2 { padding-inline:40px; font-size:25px; }
      .checkout-details { grid-template-columns:1fr; }
      .checkout-details > .form-section-title,
      .checkout-details > #locationBtn,
      .checkout-details > #deliveryRequirementBox,
      .checkout-details > .checkout-notes,
      .checkout-details > div[style*="margin-bottom:20px"],
      .checkout-details > .cf-turnstile,
      .checkout-details > .confirm-btn { grid-column:1; }
      .checkout-summary { padding:13px; }
    }
    @media(max-width:600px) {
      .modal { padding:10px; }
      .modal-content { max-height:calc(100vh - 20px); }
      .qv-fullpage-mode .qv-content { padding:34px 18px 24px; }
      .qv-fullpage-mode .qv-gallery { flex:none; width:100%; }
      .modal-close { top:12px; left:12px; width:36px; height:36px; }
      .modal-back { left:auto; right:12px; }
      .lb-nav { width:40px; height:40px; }
      #lb-prev { left:10px; }
      #lb-next { right:10px; }
    }
    .modal-subtitle {
      text-align:center;
      color:var(--muted);
      font-size:12.5px;
      margin-bottom:22px;
      letter-spacing:.2px;
    }
    .order-items {
      margin-bottom:16px;
      background:rgba(0,0,0,0.015);
      border:1px solid rgba(0,0,0,0.05);
      border-radius:14px;
      padding:10px 14px;
      max-height:200px;
      overflow-y:auto;
    }
    .order-item {
      display:flex;
      align-items:center;
      gap:12px;
      padding:9px 0;
      border-bottom:1px solid rgba(0,0,0,0.05);
      font-size:13px;
    }
    .order-item:last-child { border-bottom:none; }
    .order-item-name { color:var(--dark); font-weight:700; font-size:14px; flex:1; min-width:0; overflow-wrap:break-word; }
    .order-total {
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:16px;
      padding:14px 18px;
      background:linear-gradient(135deg, rgba(201,168,76,0.1), rgba(201,168,76,0.04));
      border:1px solid rgba(201,168,76,0.25);
      border-radius:14px;
      font-size:21px;
      font-family:'Almarai',sans-serif;
      color:var(--dark);
      font-weight:700;
    }
    .order-total span:first-child { font-size:14px; font-family:'Almarai',sans-serif; color:var(--muted); font-weight:600; }
    .order-total span:last-child { color:var(--gold); }
    .free-shipping-badge {
      display:flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      background:rgba(201,168,76,0.06);
      border:1px dashed var(--gold);
      border-radius:30px;
      padding:10px 16px;
      margin-bottom:24px;
      color:#8a6d24;
      font-size:13px;
      font-weight:700;
    }
    .form-section-title {
      font-size:12px;
      font-weight:700;
      color:var(--gold);
      letter-spacing:1px;
      text-transform:uppercase;
      margin:22px 0 12px;
      display:flex;
      align-items:center;
      gap:8px;
    }
    .form-section-title::after {
      content:'';
      flex:1;
      height:1px;
      background:rgba(201,168,76,0.2);
    }
    .form-group { margin-bottom:16px; }
    .form-group label {
      display:block;
      margin-bottom:6px;
      font-size:12.5px;
      color:var(--dark);
      font-weight:700;
      letter-spacing:.2px;
    }
    .form-group input, .form-group select, .form-group textarea {
      width:100%;
      padding:13px 16px;
      background:#FFFFFF;
      border:1.5px solid rgba(0,0,0,0.08);
      border-radius:12px;
      color:#3a3a3a;
      outline:none;
      font-size:14px;
      font-weight:500;
      transition:all 0.2s;
      font-family:inherit;
      box-shadow:0 1px 3px rgba(0,0,0,0.02);
    }
    .form-group input::placeholder, .form-group textarea::placeholder { color:rgba(0,0,0,0.28); font-weight:400; }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus {
      border-color:var(--gold);
      background:#FFFDF7;
      box-shadow:0 0 0 4px rgba(201,168,76,0.1);
    }
    .payment-options {
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:10px;
      margin-top:6px;
    }
    .payment-option {
      display:flex;
      align-items:center;
      gap:8px;
      background:#FFFFFF;
      border:1.5px solid rgba(0,0,0,0.08);
      border-radius:14px;
      padding:12px 14px;
      cursor:pointer;
      transition:all 0.2s;
      font-size:13px;
      font-weight:700;
      color:rgba(0,0,0,0.65);
    }
    .payment-option:hover { border-color:var(--gold); background:rgba(201,168,76,0.05); }
    .payment-option.selected { border-color:var(--gold); background:rgba(201,168,76,0.1); color:#8a6d24; box-shadow:0 0 0 3px rgba(201,168,76,0.08); }
    .payment-option input[type=radio] { display:none; }
    .bank-info {
      display:none;
      margin-top:14px;
      background:rgba(201,168,76,0.05);
      border:1px solid rgba(201,168,76,0.2);
      border-radius:14px;
      padding:16px 18px;
    }
    .bank-info.show { display:block; }
    .bank-info p { color:#5a4c22; font-size:13px; line-height:1.6; }
    .bank-account-row {
      display:flex;
      align-items:center;
      justify-content:space-between;
      background:#FFFFFF;
      border:1px solid rgba(201,168,76,0.2);
      border-radius:10px;
      padding:11px 14px;
      margin-top:8px;
    }
    .bank-account-num { color:var(--gold); font-weight:700; font-family:monospace; letter-spacing:1px; font-size:14px; }
    .copy-btn {
      background:var(--gold);
      color:white;
      border:none;
      border-radius:20px;
      padding:7px 16px;
      font-size:12px;
      font-weight:700;
      transition:all 0.2s;
    }
    .copy-btn:hover { background:var(--dark); }
    .confirm-btn {
      width:100%;
      padding:17px;
      background:linear-gradient(135deg, #1a1917, var(--dark));
      color:white;
      border:1.5px solid var(--gold);
      border-radius:40px;
      font-weight:700;
      font-size:16px;
      letter-spacing:0.5px;
      margin-top:24px;
      transition:all 0.25s;
      box-shadow:0 10px 30px rgba(0,0,0,0.15);
    }
    .confirm-btn:hover { background:var(--gold); color:#1a1917; border-color:var(--gold); transform:translateY(-2px); box-shadow:0 14px 34px rgba(201,168,76,0.35); }
    .confirm-btn:disabled { opacity:0.55; cursor:not-allowed; transform:none; box-shadow:none; }

    .phone-hint { font-size:11px; color:var(--muted); margin-top:5px; }
    .phone-input-row { display:flex; gap:8px; }
    #phoneCountryCode.phone-code-select {
      flex:0 0 auto;
      width:82px !important;
      background:#FFFFFF;
      border:1.5px solid rgba(0,0,0,0.08);
      border-radius:12px;
      padding:0 2px 0 4px !important;
      font-size:12px;
      color:var(--dark);
      font-family:inherit;
      outline:none;
      cursor:pointer;
      text-overflow:ellipsis;
    }
    .phone-input-row input { flex:1; min-width:0; }
    .field-error {
      display:none;
      color:#c0392b;
      font-size:11.5px;
      font-weight:700;
      margin-top:6px;
    }
    .field-error.show { display:block; }
    .form-group input.invalid { border-color:#c0392b !important; background:#FFF6F5 !important; }
    .form-group input.valid-ok { border-color:#4b9c6f !important; }

    .payment-proof-box {
      display:none;
      margin-top:14px;
      background:rgba(201,168,76,0.05);
      border:1px solid rgba(201,168,76,0.2);
      border-radius:14px;
      padding:16px 18px;
    }
    .payment-proof-box.show { display:block; }
    .payment-proof-box p.proof-title { color:#5a4c22; font-size:13px; line-height:1.6; margin-bottom:10px; font-weight:700; }
    .proof-upload-row { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
    .proof-file-btn {
      display:inline-flex;
      align-items:center;
      gap:8px;
      background:var(--dark);
      color:#fff;
      border:1.5px solid var(--gold);
      border-radius:30px;
      padding:9px 18px;
      font-size:12.5px;
      font-weight:700;
      cursor:pointer;
      transition:all 0.2s;
    }
    .proof-file-btn:hover { background:var(--gold); color:var(--dark); }
    .proof-preview-wrap { position:relative; width:56px; height:56px; border-radius:10px; overflow:hidden; border:1px solid rgba(0,0,0,0.1); display:none; }
    .proof-preview-wrap.show { display:block; }
    .proof-preview-wrap img { width:100%; height:100%; object-fit:cover; }
    .proof-preview-wrap .proof-remove {
      position:absolute; top:2px; left:2px;
      width:18px; height:18px;
      background:rgba(0,0,0,0.65);
      color:#fff;
      border-radius:50%;
      font-size:11px;
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
    }
    .proof-status { font-size:11.5px; margin-top:8px; color:var(--muted); }
    .proof-status.ok { color:#4b9c6f; font-weight:700; }
    .proof-status.err { color:#c0392b; font-weight:700; }

    .success-modal-content { max-width:420px; text-align:center; }
    .success-icon { font-size:54px; margin-bottom:8px; }
    .success-modal-content p.success-text { color:var(--muted); font-size:14px; line-height:1.9; margin-bottom:18px; }

    @media(max-width:480px) {
      .checkout-summary .coupon-row { flex-direction:column; }
      .checkout-summary .coupon-row button { min-height:44px; }
      .checkout-details .payment-options { grid-template-columns:1fr; }
      .checkout-modal-content > h2 { font-size:23px; }
    }

    footer {
      background:var(--dark);
      padding:60px 40px 30px;
      border-top:1px solid rgba(201,168,76,0.15);
    }
    .footer-container { max-width:1200px; margin:0 auto; }
    .footer-top {
      display:grid;
      grid-template-columns:2fr 1fr 1fr;
      gap:50px;
      margin-bottom:40px;
    }
    .footer-logo-wrap { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
    .footer-logo-img {
      width:52px; height:52px;
      border-radius:50%;
      object-fit:cover;
      border:2px solid var(--gold);
      box-shadow:0 2px 12px rgba(201,168,76,0.3);
      flex-shrink:0;
    }
    .footer-logo {
      font-family:'Amiri',serif;
      font-size:26px;
      color:var(--gold);
      letter-spacing:0.5px;
    }
    .footer-desc {
      color:rgba(255,255,255,0.62);
      font-size:14px;
      line-height:1.8;
      max-width:340px;
    }
    .footer-section h3 {
      font-family:'Amiri',serif;
      color:var(--gold-light);
      font-size:18px;
      margin-bottom:16px;
    }
    .footer-links {
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .footer-links a {
      color:rgba(255,255,255,0.65);
      font-size:14px;
      transition:all 0.2s;
      display:flex;
      align-items:center;
      gap:6px;
    }
    .footer-links a:hover { color:var(--gold); transform:translateX(-4px); }
    .footer-trademark-line { font-size:12px; color:rgba(255,255,255,0.45); margin-top:18px; margin-bottom:0; }
    .footer-cr {
      display:flex;
      align-items:center;
      gap:12px;
      margin-top:22px;
      width:fit-content;
    }
    .footer-cr-v2 { flex-direction:column; align-items:flex-start; gap:10px; }
    .footer-cr-row { display:flex; align-items:center; gap:10px; }
    .footer-cr-icon {
      width:36px; height:36px;
      border-radius:8px;
      object-fit:cover;
      flex-shrink:0;
    }
    .footer-cr-text { display:flex; flex-direction:column; gap:2px; }
    .footer-cr-text .cr-brand,
    .footer-cr-row > .cr-brand { font-size:12px; color:rgba(255,255,255,0.6); }
    .footer-cr-text .cr-label { font-size:11px; color:rgba(255,255,255,0.45); letter-spacing:.3px; }
    .footer-cr-text .cr-number { font-size:14px; color:var(--gold-light); font-weight:700; font-family:monospace; letter-spacing:.5px; }
    .footer-bottom {
      border-top:1px solid rgba(255,255,255,0.08);
      padding-top:24px;
      text-align:center;
      color:rgba(255,255,255,0.4);
      font-size:13px;
    }

    .footer-contact-btns { display:flex; flex-direction:column; gap:10px; align-items:flex-start; }
    .footer-contact-btn {
      display:flex; align-items:center; gap:8px;
      border:1px solid rgba(255,255,255,0.18);
      border-radius:999px;
      padding:9px 18px;
      font-size:13.5px;
      color:rgba(255,255,255,0.85);
      transition:all 0.2s;
    }
    .footer-contact-btn:hover { border-color:var(--gold); color:var(--gold-light); }
    .footer-contact-btn svg { width:15px; height:15px; flex-shrink:0; }
    .footer-contact-btn .contact-value {
      direction:ltr;
      unicode-bidi:plaintext;
      white-space:nowrap;
      font-family:'Almarai',sans-serif;
      font-weight:700;
      letter-spacing:.15px;
    }
    .pcard-name, .box-name, .qv-name, .qv-related-name, .search-result-name {
      font-family:'Almarai',sans-serif;
      font-weight:700;
    }
    .offer-first-name { color:#000 !important; }
    .footer-countries {
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:16px;
    }
    .footer-country-badge {
      display:flex;
      align-items:center;
      gap:6px;
      background:rgba(255,255,255,0.05);
      border:1px solid rgba(255,255,255,0.12);
      border-radius:30px;
      padding:6px 16px;
      font-size:13px;
      color:rgba(255,255,255,0.75);
      font-weight:600;
      cursor:pointer;
      transition:all 0.2s;
    }
    .footer-country-badge .flag { font-size:15px; }
    .footer-country-badge:hover { border-color:var(--gold); background:rgba(201,168,76,0.12); }
    .footer-country-badge.active { background:var(--gold); color:#1a1917; border-color:var(--gold); }
    .footer-presence-badge {
      cursor:default;
      border:1px solid rgba(255,255,255,0.18);
      background:transparent;
      color:rgba(255,255,255,0.85);
      font-size:13.5px;
      padding:9px 18px;
    }
    .footer-presence-badge:hover { border-color:var(--gold); color:var(--gold-light); background:transparent; }
    .footer-presence-badge .flag { font-size:15px; }
    .footer-presence-wrap { position:relative; display:inline-block; cursor:pointer; }
    .footer-countries-dropdown {
      display:none;
      position:absolute;
      top:calc(100% + 8px);
      right:0;
      background:#1a1917;
      border:1px solid rgba(201,168,76,0.25);
      border-radius:14px;
      padding:12px;
      flex-wrap:wrap;
      gap:8px;
      width:max-content;
      max-width:280px;
      box-shadow:0 12px 30px rgba(0,0,0,0.35);
      z-index:50;
    }
    .footer-presence-wrap:hover .footer-countries-dropdown,
    .footer-presence-wrap.open .footer-countries-dropdown {
      display:flex;
      animation:searchPanelFade 0.15s ease;
    }

    .footer-social-bottom { display:flex; gap:10px; justify-content:center; margin-bottom:16px; flex-wrap:wrap; }
    .social-icon-circle {
      width:36px; height:36px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,0.28);
      display:flex; align-items:center; justify-content:center;
      color:rgba(255,255,255,0.85);
      transition:all 0.2s;
    }
    .social-icon-circle:hover { border-color:var(--gold); color:var(--gold-light); transform:translateY(-2px); }
    .social-icon-circle svg { width:16px; height:16px; fill:currentColor; }

    #floatingCartBtn {
      position:fixed;
      bottom:28px; left:24px;
      z-index:7000;
      width:52px; height:52px;
      border-radius:50%;
      background:var(--dark);
      border:1px solid rgba(201,168,76,0.55);
      color:#fff;
      box-shadow:0 10px 26px rgba(0,0,0,0.18);
      display:none;
      align-items:center;
      justify-content:center;
      transition:all 0.2s;
    }
    #floatingCartBtn:hover { background:var(--gold); color:var(--dark); transform:translateY(-3px); }
    #floatingCartBtn .floating-cart-count {
      position:absolute;
      top:-5px; right:-5px;
      min-width:20px; height:20px;
      padding:0 5px;
      display:flex; align-items:center; justify-content:center;
      border-radius:999px;
      background:#e0405a; color:#fff;
      border:2px solid #fff;
      font-size:11px; font-weight:800; line-height:1;
    }

    #lightbox {
      position:fixed;
      inset:0;
      z-index:8000;
      background:rgba(0,0,0,0);
      display:flex;
      align-items:center;
      justify-content:center;
      padding:20px;
      visibility:hidden;
      transition:background 0.3s ease;
      cursor:zoom-out;
    }
    #lightbox.open { background:rgba(0,0,0,0.92); visibility:visible; }
    #lb-img {
      max-width:90vw;
      max-height:85vh;
      object-fit:contain;
      border-radius:8px;
      border:1px solid rgba(255,255,255,0.05);
      opacity:0;
      transform:scale(0.92);
      transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
      cursor:default;
    }
    #lightbox.open #lb-img { opacity:1; transform:scale(1); }
    #lb-close {
      position:fixed;
      top:20px; left:20px;
      width:40px; height:40px;
      border-radius:50%;
      background:rgba(255,255,255,0.04);
      border:1px solid rgba(255,255,255,0.06);
      color:white;
      font-size:20px;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition:all 0.2s;
    }
    #lb-close:hover { background:var(--gold); color:var(--dark); transform:rotate(90deg); }
    .lb-nav {
      position:fixed;
      top:50%;
      transform:translateY(-50%);
      width:48px; height:48px;
      border-radius:50%;
      background:rgba(255,255,255,0.06);
      border:1px solid rgba(255,255,255,0.08);
      color:white;
      font-size:20px;
      display:flex;
      align-items:center;
      justify-content:center;
      cursor:pointer;
      transition:all 0.2s;
      z-index:8001;
    }
    .lb-nav:hover { background:var(--gold); color:var(--dark); }
    #lb-prev { left:20px; }
    #lb-next { right:20px; }

    #toast {
      position:fixed;
      bottom:30px;
      left:50%;
      transform:translateX(-50%) translateY(20px);
      background:rgba(0,0,0,0.9);
      backdrop-filter:blur(8px);
      border:1px solid rgba(255,255,255,0.06);
      color:white;
      padding:12px 28px;
      border-radius:40px;
      font-weight:700;
      font-size:14px;
      z-index:9000;
      opacity:0;
      transition:all 0.3s ease;
      white-space:nowrap;
      box-shadow:0 8px 32px rgba(0,0,0,0.1);
      pointer-events:none;
    }
    #toast.show { opacity:1; transform:translateX(-50%) translateY(0); }

    .ship-banner {
      width:100%;
      background:#2E7D46;
      color:#fff;
      text-align:center;
      padding:11px 44px;
      font-size:14px;
      font-weight:600;
      position:fixed;
      top:0; left:0; right:0;
      z-index:1001;
      letter-spacing:0.3px;
    }
    .ship-banner-close {
      position:absolute;
      left:16px; top:50%; transform:translateY(-50%);
      background:none; border:none; color:#fff; font-size:15px; cursor:pointer; padding:6px; line-height:1;
    }
    html[dir="ltr"] .ship-banner-close { left:auto; right:16px; }
    @media (max-width:600px) {
      .ship-banner { font-size:12.5px; padding:10px 36px; }
    }

    .intro-banner {
      position:fixed; bottom:24px; left:24px; z-index:1500;
      display:flex; align-items:center; gap:12px;
      background:linear-gradient(180deg,#FFFFFF 0%, #FBF9F4 100%);
      border:1px solid rgba(201,168,76,0.3);
      border-radius:16px; padding:14px 16px; max-width:340px;
      box-shadow:0 20px 50px rgba(0,0,0,0.18);
      opacity:0; transform:translateY(16px) scale(0.97); pointer-events:none;
      transition:opacity 0.4s ease, transform 0.4s ease;
    }
    .intro-banner.show { opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }
    html[dir="ltr"] .intro-banner { left:auto; right:24px; }
    .ib-close { position:absolute; top:6px; left:8px; background:none; border:none; color:var(--muted); font-size:12px; padding:4px; }
    html[dir="ltr"] .ib-close { left:auto; right:8px; }
    .ib-icon { font-size:24px; flex-shrink:0; }
    .ib-text { display:flex; flex-direction:column; gap:2px; flex:1; }
    .ib-text b { font-size:13.5px; color:var(--dark); }
    .ib-text span { font-size:11.5px; color:var(--muted); line-height:1.5; }
    .ib-cta { background:var(--gold); color:var(--dark); border:none; border-radius:10px; padding:8px 12px; font-size:12px; font-weight:700; white-space:nowrap; flex-shrink:0; }
    .ib-cta:hover { background:var(--dark); color:#fff; }
    @media(max-width:600px) {
      .intro-banner { left:14px; right:14px; max-width:none; bottom:14px; }
      html[dir="ltr"] .intro-banner { right:14px; }
    }

    .quiz-content { max-width:520px; }
    .quiz-progress-wrap { display:flex; align-items:center; gap:12px; margin:6px 0 18px; padding-top:14px; }
    .quiz-vial { width:16px; height:24px; border:1.5px solid rgba(201,168,76,0.5); border-radius:3px 3px 6px 6px; position:relative; overflow:hidden; flex-shrink:0; background:rgba(0,0,0,0.03); }
    .quiz-vial-fill { position:absolute; bottom:0; left:0; right:0; height:0%; background:linear-gradient(to top, var(--gold), var(--gold-light)); transition:height 0.6s ease; }
    .quiz-progress-track { flex:1; height:3px; background:rgba(0,0,0,0.08); border-radius:3px; overflow:hidden; }
    .quiz-progress-fill { height:100%; width:0%; background:var(--gold); transition:width 0.5s ease; }
    .quiz-progress-label { font-size:11px; color:var(--muted); white-space:nowrap; }
    .qz-intro { text-align:center; display:flex; flex-direction:column; align-items:center; gap:16px; padding:6px 0 8px; }
    .qz-drop { width:52px; height:52px; background:radial-gradient(circle at 35% 30%, var(--gold-light), var(--gold) 60%, #8a5a2b 100%); border-radius:50% 50% 50% 0; transform:rotate(45deg); box-shadow:0 0 30px rgba(201,168,76,0.35); }
    .qz-logo-img { width:56px; height:56px; border-radius:50%; object-fit:cover; border:2px solid var(--gold); box-shadow:0 4px 20px rgba(201,168,76,0.35); }
    .qz-intro h2 { font-family:'Almarai',sans-serif; font-size:24px; }
    .qz-intro p { color:var(--muted); font-size:14px; max-width:360px; line-height:1.8; }
    .qz-eyebrow { font-size:11px; color:var(--gold); letter-spacing:1px; font-weight:700; margin-bottom:8px; }
    .qz-title { font-family:'Almarai',sans-serif; font-size:21px; margin-bottom:20px; line-height:1.6; }
    .qz-options { display:grid; gap:10px; margin-bottom:6px; }
    .qz-opt { display:flex; align-items:center; gap:12px; background:rgba(0,0,0,0.02); border:1px solid rgba(0,0,0,0.08); border-radius:12px; padding:13px 14px; transition:all 0.15s; text-align:start; }
    .qz-opt:hover { border-color:var(--gold); background:rgba(201,168,76,0.06); }
    .qz-opt.selected { border-color:var(--gold); background:rgba(201,168,76,0.12); }
    .qz-opt-icon { font-size:19px; width:26px; text-align:center; flex-shrink:0; }
    .qz-opt-text b { display:block; font-size:14px; }
    .qz-opt-text span { display:block; font-size:11.5px; color:var(--muted); margin-top:1px; }
    .qz-nav-row { display:flex; justify-content:space-between; align-items:center; margin-top:18px; }
    .qz-btn { border:none; border-radius:12px; padding:11px 22px; font-family:inherit; font-weight:700; font-size:13.5px; transition:all 0.15s; }
    .qz-btn-primary { background:var(--gold); color:var(--dark); }
    .qz-btn-primary:hover { background:var(--dark); color:#fff; }
    .qz-btn-primary:disabled { opacity:0.35; cursor:not-allowed; }
    .qz-btn-ghost { background:none; color:var(--muted); font-size:12.5px; }
    .qz-btn-ghost:hover { color:var(--gold); }
    .qz-result-head { text-align:center; margin-bottom:18px; }
    .qz-result-head .qz-tag { font-size:11px; color:var(--gold); letter-spacing:1px; font-weight:700; margin-bottom:6px; }
    .qz-result-head h2 { font-family:'Almarai',sans-serif; font-size:21px; }
    .qz-products { display:grid; gap:12px; margin-bottom:16px; }
    .qz-product { display:flex; flex-wrap:wrap; gap:14px; align-items:center; background:rgba(0,0,0,0.02); border:1px solid rgba(0,0,0,0.08); border-radius:14px; padding:13px; }
    .qz-bottle { width:44px; height:54px; border-radius:6px 6px 12px 12px; flex-shrink:0; }
    .qz-p-info { flex:1; }
    .qz-p-info .qz-match { font-size:10.5px; color:var(--gold); font-weight:700; margin-bottom:2px; }
    .qz-p-info .qz-badge-box { display:inline-block; font-size:9.5px; font-weight:700; background:var(--dark); color:var(--gold-light); border-radius:20px; padding:2px 8px; margin-inline-start:6px; vertical-align:middle; }
    .qz-p-info h3 { font-size:14.5px; margin-bottom:3px; }
    .qz-p-info p { font-size:11.5px; color:var(--muted); line-height:1.6; }
    .qz-p-price { font-size:13px; color:var(--dark); font-weight:700; white-space:nowrap; }
    .qz-p-actions { flex-basis:100%; display:flex; align-items:center; justify-content:space-between; margin-top:10px; padding-top:10px; border-top:1px dashed rgba(0,0,0,0.08); }
    .qz-p-btns { display:flex; gap:6px; }
    .qz-mini-btn { font-size:11.5px; font-weight:700; padding:6px 13px; border-radius:20px; border:1px solid rgba(0,0,0,0.12); background:#fff; color:var(--dark); transition:all 0.15s; }
    .qz-mini-btn:hover { border-color:var(--gold); }
    .qz-note { font-size:11.5px; color:var(--muted); text-align:center; line-height:1.8; margin-top:4px; border-top:1px dashed rgba(0,0,0,0.08); padding-top:14px; }

    @media(max-width:1020px) {
      .header-main-nav { display:none; }
      .header-brand { order:1; }
      .nav-controls { order:2; }
    }
    @media(max-width:768px) {
      header { padding:0 12px 0 8px; height:64px; justify-content:space-between; gap:0; }
      .header-logo-right { width:100px; height:52px; }
      .header-main-nav { display:none; }
      .header-brand { order:1; }
      .nav-controls { order:2; gap:6px; margin-left:0; }
      #collectionsSlider { margin-top:calc(64px + var(--ship-banner-h, 0px)); }
      section[id] { scroll-margin-top:calc(80px + var(--ship-banner-h, 0px)); }
      .logo { font-size:20px; }
      .country-select, .lang-btn { padding:6px 10px; font-size:10px; }
      .container { padding:0 20px; }
      #boxesSection { padding:60px 0 30px; }
      #products { padding:60px 0 80px; }
      .box-grid { grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:20px; }
      .pgrid { grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:16px; }
      .pgrid-inner { grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:16px; }
      .footer-top { grid-template-columns:1fr; gap:30px; }

      .modal-content { padding:28px 18px; }
    }

    @media(max-width:600px) {
      header { padding-left:6px; padding-right:10px; }
      .header-logo-right { width:88px; height:48px; }
      .pgrid { grid-template-columns:1fr; }
      .pgrid-inner { grid-template-columns:1fr; }
    }

    body.en * { font-family:'Almarai',sans-serif; }

    @keyframes fadeInUp { from{opacity:0;transform:translateY(26px);} to{opacity:1;transform:translateY(0);} }
    .reveal { opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
    .reveal.visible { opacity:1; transform:translateY(0); }

    #lb-caption {
      position:fixed; bottom:26px; left:50%; transform:translateX(-50%);
      background:rgba(0,0,0,0.85); border:1px solid rgba(201,168,76,0.3);
      color:var(--gold); font-family:'Almarai',sans-serif; font-size:16px;
      padding:9px 24px; border-radius:30px; white-space:nowrap;
      backdrop-filter:blur(6px); opacity:0; transition:opacity .4s .15s ease; pointer-events:none;
    }
    #lightbox.open #lb-caption { opacity:1; }

    #heritage { background:var(--white); padding:56px 0; text-align:center; border-bottom:1px solid rgba(0,0,0,0.04); }
    #heritage h3 { font-family:'Amiri',serif; font-size:clamp(20px,3vw,28px); color:var(--dark); margin-bottom:10px; letter-spacing:.3px; }
    #heritage p { color:var(--muted); font-size:14px; max-width:640px; margin:0 auto 30px; line-height:1.9; }

    #shopByImageSection { background:var(--white); padding:50px 0; }
    #shopByImageSection .container { overflow:hidden; }
    .shop-image-row { display:flex; gap:16px; overflow:visible; will-change:transform; touch-action:pan-y; user-select:none; cursor:grab; }
    .shop-image-row.is-dragging { cursor:grabbing; }
    .shop-image-set { display:flex; flex:0 0 auto; gap:16px; }
    .shop-image-card { flex:0 0 200px; width:200px; cursor:pointer; text-align:center; }
    .shop-image-card img {
      width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:18px;
      background:#F2EFE9; transition:transform 0.25s ease;
    }
    .shop-image-card:hover img { transform:scale(1.03); }
    @media(max-width:600px) { .shop-image-card { flex:0 0 140px; width:140px; } }

    #specialOffersSection .container { overflow:visible; }
    #offerGrid {
      display:grid;
      grid-template-columns:repeat(3, 270px);
      justify-content:center;
      gap:32px 24px;
    }
    @media(max-width:900px) {
      #offerGrid { grid-template-columns:repeat(2, 270px); }
    }
    @media(max-width:600px) {
      #offerGrid { grid-template-columns:1fr; justify-content:stretch; }
    }

    #boxesSection { background:var(--dark); padding:90px 0 76px; position:relative; overflow:hidden; }
    #boxesSection::before {
      content:''; position:absolute; inset:0;
      background:radial-gradient(circle at 20% 20%, rgba(201,168,76,0.08), transparent 55%),
                 radial-gradient(circle at 85% 80%, rgba(201,168,76,0.06), transparent 50%);
      pointer-events:none;
    }
    #boxesSection .section-header { position:relative; z-index:1; }
    #boxesSection .section-header h2 { color:var(--gold-light); }
    #boxesSection .section-header p { color:rgba(255,255,255,0.5); }
    #boxesSection .gold-line { background:var(--gold); }
    .box-grid { position:relative; z-index:1; grid-template-columns:repeat(auto-fill, minmax(270px,1fr)); gap:36px 28px; }
    .box-card {
      position:relative;
      border:1px solid rgba(201,168,76,0.14);
      box-shadow:0 14px 40px rgba(0,0,0,0.45);
    }
    .box-card:hover {
      box-shadow:0 26px 60px rgba(201,168,76,0.18);
      border-color:rgba(201,168,76,0.5);
    }
    .box-ribbon {
      position:absolute; top:16px; right:16px; z-index:4;
      display:flex; align-items:center; gap:5px;
      background:linear-gradient(135deg,var(--gold),#9c7a2e);
      color:#fff; font-size:11px; font-weight:700; letter-spacing:.3px;
      padding:6px 13px; border-radius:20px;
      box-shadow:0 6px 16px rgba(201,168,76,0.4);
    }
    .box-desc {
      font-size:13px; color:var(--muted); line-height:1.7;
      margin-bottom:12px; min-height:38px;
    }

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

    body.product-page-active > *:not(#quickViewModal):not(#orderModal):not(#successModal):not(#floatingCartBtn):not(#toast) { display:none !important; }
    body.product-page-active { background:#fff; overflow-x:hidden; }
    body.product-page-active #quickViewModal.qv-fullpage-mode.open { display:block; position:static; min-height:100vh; padding:0; background:#fff; backdrop-filter:none; }
    body.product-page-active .qv-fullpage-mode .qv-content { max-width:1180px; min-height:100vh; margin:0 auto; padding:42px 40px 72px; border:0; border-radius:0; box-shadow:none; background:#fff; }
    body.product-page-active .qv-fullpage-mode .qv-content::before { display:none; }
    body.product-page-active .qv-fullpage-mode .qv-body { align-items:flex-start; gap:64px; padding-top:28px; }
    body.product-page-active .qv-fullpage-mode .qv-gallery { flex:0 0 480px; width:480px; border-radius:20px; background:#f4f1eb; }
    body.product-page-active .qv-fullpage-mode .qv-info { padding-top:18px; }
    body.product-page-active .qv-fullpage-mode .modal-close { position:fixed; top:24px; left:24px; right:auto; z-index:1002; }
    body.product-page-active .qv-fullpage-mode .modal-back { left:auto; right:24px; }
    body.product-page-active .qv-fullpage-mode .qv-name { font-size:34px; line-height:1.35; }
    body.product-page-active .qv-fullpage-mode .qv-price { font-size:24px; margin-bottom:26px; }
    @media(max-width:768px) {
      .pcard-img .box-arrow,
      .box-gallery .box-arrow { display:none !important; }
      .pcard-img,
      .box-gallery { touch-action:pan-y; }
    }
    body.product-page-active .qv-fullpage-mode .qv-related { margin-top:64px; }
    #floatingCartBtn.is-hidden { display:none !important; }
    @media(max-width:900px) {
      body.product-page-active .qv-fullpage-mode .qv-content { padding:36px 24px 56px; }
      body.product-page-active .qv-fullpage-mode .qv-body { gap:34px; }
      body.product-page-active .qv-fullpage-mode .qv-gallery { flex:0 0 40%; width:40%; }
    }
    @media(max-width:700px) {
      body.product-page-active .qv-fullpage-mode .qv-content { padding:28px 18px 44px; }
      body.product-page-active .qv-fullpage-mode .qv-body { flex-direction:column; padding-top:30px; }
      body.product-page-active .qv-fullpage-mode .qv-gallery { flex:none; width:100%; }
      body.product-page-active .qv-fullpage-mode .qv-info { padding-top:0; }
      body.product-page-active .qv-fullpage-mode .qv-name { font-size:27px; }
      body.product-page-active .qv-fullpage-mode .modal-close { top:16px; left:16px; }
      body.product-page-active .qv-fullpage-mode .modal-back { left:auto; right:16px; }
      #floatingCartBtn { width:48px; height:48px; left:16px; bottom:18px; }
    }
