/* ═══════════════════════════════════════════════
   THEME VARIABLES — LIGHT & DARK
═══════════════════════════════════════════════ */
:root,
[data-theme="light"] {
  --navy:        #0a1628;
  --navy-2:      #0e1e38;
  --navy-3:      #162848;
  --gold:        #c9a84c;
  --gold-light:  #e8c97a;
  --gold-dim:    rgba(201,168,76,0.14);
  --white:       #ffffff;
  --off-white:   #f4f6fb;
  --text:        #1a2740;
  --muted:       #6b7a8d;
  --border:      #e2e8f0;
  --card-bg:     #ffffff;
  --section-bg:  #f4f6fb;
  --red:         #e53935;
  --green:       #2e7d32;
  --radius:      10px;
  --radius-lg:   16px;
  --page-gap:    clamp(12px, 2vw, 20px);
}

[data-theme="dark"] {
  --navy:        #080e1c;
  --navy-2:      #0c1526;
  --navy-3:      #10192f;
  --gold:        #e8c97a;
  --gold-light:  #f5dea0;
  --gold-dim:    rgba(232,201,122,0.11);
  --white:       #1a2235;
  --off-white:   #0d1526;
  --text:        #dde4f0;
  --muted:       #7b8fa8;
  --border:      #1c2d45;
  --card-bg:     #111d35;
  --section-bg:  #0d1526;
  --red:         #ff5252;
  --green:       #43a047;
  --radius:      10px;
  --radius-lg:   16px;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  font-family:'DM Sans',sans-serif;
  background:var(--section-bg);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
  padding-top:0;
  transition:background 0.3s, color 0.3s;
}
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--navy); }
::-webkit-scrollbar-thumb { background:var(--gold); border-radius:3px; }

.theme-toggle {
  width:40px; height:40px; border-radius:50%;
  border:1.5px solid rgba(201,168,76,0.35);
  background:rgba(255,255,255,0.07);
  color:var(--gold); font-size:16px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:all 0.25s; flex-shrink:0;
}
.theme-toggle:hover { background:var(--gold); color:var(--navy); border-color:var(--gold); }

/* ═══════════════════════════════════════════════
   NAVBAR
═══════════════════════════════════════════════ */
.navbar-main {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:var(--navy);
  border-bottom:1px solid rgba(201,168,76,0.1);
  transition:background 0.3s;
}
.navbar-top {
  display:flex; align-items:center;
  min-height:68px; padding:0 32px; gap:18px;
  border-bottom:1px solid rgba(201,168,76,0.12);
}
.brand { display:flex; align-items:center; gap:11px; text-decoration:none; flex-shrink:0; }
.brand img { width:80px; height:60px; object-fit:contain; }
.brand-name { font-family:'Playfair Display',serif; font-size:16px; font-weight:900; color:var(--white); }
.brand-sub { font-size:9.5px; color:var(--gold); font-weight:600; letter-spacing:1.2px; text-transform:uppercase; }

.search-wrap { flex:1; max-width:460px; margin:0 auto; }
.search-form {
  display:flex; background:rgba(255,255,255,0.06);
  border:1.5px solid rgba(201,168,76,0.2); border-radius:8px; overflow:hidden;
  transition:border-color 0.25s;
}
.search-form:focus-within { border-color:var(--gold); }
.search-form input {
  flex:1; border:none; outline:none; padding:10px 16px;
  font-size:13.5px; font-family:'DM Sans',sans-serif;
  background:transparent; color:var(--white);
}
.search-form input::placeholder { color:rgba(255,255,255,0.32); }
.search-form button {
  background:var(--gold); border:none; padding:10px 18px;
  color:var(--navy); cursor:pointer; font-size:14px; font-weight:700;
  transition:background 0.2s; flex-shrink:0;
}
.search-form button:hover { background:var(--gold-light); }

.nav-right { display:flex; align-items:center; gap:4px; flex-shrink:0; margin-left:auto; }
.nav-link {
  color:rgba(255,255,255,0.72); text-decoration:none;
  font-size:13px; font-weight:600; padding:7px 12px;
  border-radius:7px; transition:all 0.2s; white-space:nowrap;
}
.nav-link:hover { background:var(--gold-dim); color:var(--gold); text-decoration:none; }
.nav-link.active { color:var(--white); }
.nav-divider { width:1px; height:22px; background:rgba(255,255,255,0.1); margin:0 4px; }
.nav-icon-btn {
  position:relative; display:flex; align-items:center; gap:5px;
  color:rgba(255,255,255,0.78); text-decoration:none;
  font-size:13px; font-weight:600; padding:7px 11px;
  border-radius:7px; transition:all 0.2s;
}
.nav-icon-btn:hover { background:var(--gold-dim); color:var(--gold); text-decoration:none; }
.nav-icon-btn i { font-size:16px; }
.nav-badge {
  position:absolute; top:1px; right:1px;
  background:var(--gold); color:var(--navy);
  border-radius:50%; width:16px; height:16px;
  font-size:9px; font-weight:800;
  display:flex; align-items:center; justify-content:center;
}

.hamburger-btn {
  display:none; background:rgba(255,255,255,0.08);
  border:1.5px solid rgba(201,168,76,0.35); color:var(--white);
  font-size:20px; cursor:pointer; padding:7px 11px; border-radius:8px;
  margin-left:auto; flex-shrink:0; align-items:center; justify-content:center;
  transition:all 0.2s; line-height:1;
}
.hamburger-btn:hover { background:var(--gold); color:var(--navy); border-color:var(--gold); }

.mobile-nav {
  flex-direction:column; background:var(--navy-3);
  border-top:1px solid rgba(201,168,76,0.12);
  overflow:hidden; max-height:0;
  transition:max-height 0.4s ease; display:flex;
}
.mobile-nav.open { max-height:700px; }
.mobile-nav a {
  color:rgba(255,255,255,0.8); text-decoration:none; font-size:14px; font-weight:600;
  padding:13px 24px; border-bottom:1px solid rgba(255,255,255,0.05);
  display:flex; align-items:center; gap:12px; transition:all 0.2s;
}
.mobile-nav a:hover { color:var(--gold); background:var(--gold-dim); }
.mobile-nav a i { font-size:15px; color:var(--gold); width:18px; flex-shrink:0; }

/* ── Mobile nav: drone categories group ── */
.mnav-cat-group {
  padding:6px 24px 14px;
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.mnav-cat-title {
  display:flex; align-items:center; gap:10px;
  color:var(--gold); font-size:12px; font-weight:800;
  letter-spacing:.6px; text-transform:uppercase;
  padding:10px 0 6px;
}
.mnav-cat-item {
  display:block; color:rgba(255,255,255,0.65) !important;
  font-size:13.5px !important; font-weight:500 !important;
  padding:9px 0 9px 26px !important; border-bottom:none !important;
}
.mnav-cat-item:hover { color:var(--gold) !important; background:transparent !important; }

/* ═══════════════════════════════════════════════
   CATEGORY BAR (below navbar-top) + DRONE DROPDOWN
═══════════════════════════════════════════════ */
.cat-bar {
  display:flex; align-items:center; gap:2px;
  background:var(--navy-2);
  padding:0 32px;
  overflow:visible;
  scrollbar-width:none;
}
.cat-bar::-webkit-scrollbar { display:none; }

.cat-link {
  display:flex; align-items:center; gap:7px;
  color:rgba(255,255,255,0.72); text-decoration:none;
  font-size:12.5px; font-weight:600; letter-spacing:.2px;
  padding:12px 15px; white-space:nowrap;
  border-bottom:2px solid transparent;
  transition:color 0.2s, border-color 0.2s;
}
.cat-link:hover { color:var(--gold); text-decoration:none; border-bottom-color:var(--gold); }
.cat-link i { font-size:9px; transition:transform 0.2s; }

.cat-dropdown { position:relative; display:flex; align-items:stretch; flex-shrink:0; }
.cat-dropdown:hover .cat-link,
.cat-dropdown.open .cat-link { color:var(--gold); border-bottom-color:var(--gold); }
.cat-dropdown:hover .cat-link i,
.cat-dropdown.open .cat-link i { transform:rotate(180deg); }

.cat-dropdown-menu {
  position:absolute; top:100%; left:0;
  min-width:230px; max-height:340px; overflow-y:auto;
  background:var(--card-bg);
  border:1px solid var(--border); border-top:3px solid var(--gold);
  border-radius:0 0 10px 10px;
  box-shadow:0 20px 44px -14px rgba(0,0,0,0.4);
  padding:8px;
  opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  z-index:1500;
}
.cat-dropdown:hover .cat-dropdown-menu,
.cat-dropdown.open .cat-dropdown-menu {
  opacity:1; visibility:visible; transform:translateY(0);
}
.cat-dropdown-menu a {
  display:block; padding:9px 12px; border-radius:6px;
  color:var(--text); font-size:13px; font-weight:600;
  text-decoration:none; transition:all 0.15s;
}
.cat-dropdown-menu a:hover { background:var(--gold-dim); color:var(--gold); text-decoration:none; }
.cat-dropdown-menu .no-category {
  display:block; padding:9px 12px;
  color:var(--muted); font-size:12.5px; font-style:italic;
}

/* ═══════════════════════════════════════════════
   INQUIRY FLOAT
═══════════════════════════════════════════════ */
.inquiry-float {
  position:fixed; right:0; top:50%; transform:translateY(-50%);
  background:var(--gold); color:var(--navy); border:none; cursor:pointer;
  z-index:4999; border-radius:12px 0 0 12px; transition:all 0.3s ease;
  display:flex; flex-direction:column; align-items:center;
  justify-content:center; gap:6px; width:44px; padding:16px 0;
}
.inquiry-float:hover { width:52px; background:var(--gold-light); color:var(--navy); }
.inquiry-float .float-text {
  font-size:10px; font-weight:800; letter-spacing:1.8px; text-transform:uppercase;
  writing-mode:vertical-rl; text-orientation:mixed; transform:rotate(180deg); white-space:nowrap;
}

/* ═══════════════════════════════════════════════
   INQUIRY MODAL
═══════════════════════════════════════════════ */
.modal-overlay {
  position:fixed; inset:0; background:rgba(5,10,22,0.8); backdrop-filter:blur(6px);
  z-index:5000; display:none; align-items:center; justify-content:center;
  padding:20px;
}
.modal-overlay.open { display:flex; }
.modal-box {
  background:var(--card-bg); border-radius:var(--radius-lg);
  width:900px; max-width:95vw; max-height:90vh; overflow:hidden;
  animation:modalPop 0.3s cubic-bezier(.4,0,.2,1) both;
  box-shadow:0 30px 70px -20px rgba(0,0,0,0.5);
  display:flex; flex-direction:column;
}
@keyframes modalPop {
  from { opacity:0; transform:scale(0.93) translateY(18px); }
  to   { opacity:1; transform:scale(1) translateY(0); }
}
.modal-header {
  background:linear-gradient(135deg,var(--navy),var(--navy-2));
  padding:20px 28px;
  display:flex; align-items:center; justify-content:space-between;
  border-bottom:3px solid var(--gold); position:sticky; top:0; z-index:10;
  flex-shrink:0;
}
.modal-header h3 { color:#fff; font-family:'Playfair Display',serif; font-size:19px; font-weight:700; display:flex; align-items:center; gap:10px; }
.modal-header h3 i { color:var(--gold); }
.modal-close-btn {
  background:rgba(255,255,255,0.1); color:#fff; border:1px solid rgba(255,255,255,0.15);
  width:34px; height:34px; border-radius:50%; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:all 0.2s;
}
.modal-close-btn:hover { background:var(--gold); color:var(--navy); border-color:var(--gold); }
.modal-body { padding:28px; overflow-y:auto; }

/* --- Inquiry form section headings & layout --- */
.form-section-title {
  font-size:12px; font-weight:800; letter-spacing:1px; text-transform:uppercase;
  color:var(--gold); margin:26px 0 14px; padding-bottom:8px;
  border-bottom:1.5px solid var(--border); display:flex; align-items:center; gap:8px;
}
.form-section-title:first-child { margin-top:0; }
.form-section-title i { font-size:12px; }

.modal-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.modal-form-row .form-group { margin-bottom:0; }

.checkbox-grid {
  display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:10px;
}
.check-pill, .radio-pill {
  display:flex; align-items:center; gap:9px;
  border:1.5px solid var(--border); border-radius:8px;
  padding:10px 14px; font-size:13.5px; font-weight:600; color:var(--text);
  cursor:pointer; transition:all 0.2s; background:var(--off-white);
}
.check-pill:hover, .radio-pill:hover { border-color:var(--gold); }
.check-pill input, .radio-pill input {
  width:16px; height:16px; accent-color:var(--gold); cursor:pointer; flex-shrink:0;
}
.contact-method-row { display:flex; gap:12px; flex-wrap:wrap; margin-top:10px; }
.contact-method-row .radio-pill { flex:1; min-width:120px; justify-content:center; }

.modal-footer {
  display:flex; gap:12px; padding:20px 28px;
  border-top:1px solid var(--border); background:var(--off-white);
  flex-shrink:0;
}

/* ═══════════════════════════════════════════════
   HERO SLIDER
═══════════════════════════════════════════════ */
.slider-section { position:relative; overflow:hidden; }
.slider-track { display:flex; transition:transform 0.75s cubic-bezier(.4,0,.2,1); }
.slide { min-width:100%; height:500px; position:relative; overflow:hidden; display:flex; align-items:center; }
.slide-bg { position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.06); transition:transform 9s ease; }
.slide.is-active .slide-bg { transform:scale(1); }
.slide-overlay {
  position:absolute; inset:0;
  display:none;
}
.slide-content { position:relative; z-index:2; padding:0 80px; max-width:620px; opacity:0; transform:translateY(28px); transition:all 0.75s 0.25s; }
.slide.is-active .slide-content { opacity:1; transform:translateY(0); }
.slide-eyebrow { font-size:10.5px; font-weight:700; letter-spacing:3.5px; text-transform:uppercase; color:var(--gold); margin-bottom:10px; }
.slide-title { font-family:'Playfair Display',serif; font-size:46px; font-weight:900; color:#ffffff; line-height:1.12; margin-bottom:14px; }
.slide-cta {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--gold); color:var(--navy); font-weight:800; font-size:13.5px;
  padding:12px 30px; border-radius:8px; text-decoration:none; transition:all 0.25s;
}
.slide-cta:hover { background:var(--gold-light); transform:translateY(-2px); color:var(--navy); text-decoration:none; }
.slider-arrow {
  position:absolute; top:50%; transform:translateY(-50%);
  background:rgba(255,255,255,0.1); backdrop-filter:blur(10px);
  border:1.5px solid rgba(255,255,255,0.16); color:#fff;
  width:46px; height:46px; border-radius:50%; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  font-size:15px; z-index:10; transition:all 0.2s;
}
.slider-arrow:hover { background:var(--gold); border-color:var(--gold); color:var(--navy); }
.slider-arrow.prev { left:22px; }
.slider-arrow.next { right:22px; }
.slider-dots { position:absolute; bottom:18px; left:50%; transform:translateX(-50%); display:flex; gap:7px; z-index:10; }
.sdot { width:7px; height:7px; border-radius:4px; background:rgba(255,255,255,0.32); cursor:pointer; transition:all 0.3s; }
.sdot.active { width:26px; background:var(--gold); }

/* ═══════════════════════════════════════════════
   TRUST STRIP
═══════════════════════════════════════════════ */
.trust-strip {
  background:var(--card-bg);
  border-top:3px solid var(--gold); border-bottom:1px solid var(--border);
  display:flex; align-items:stretch; overflow-x:auto; padding:0;
}
.trust-item {
  display:flex; align-items:center; gap:12px; flex:1; min-width:160px;
  padding:16px 24px; border-right:1px solid var(--border); transition:background 0.2s;
}
.trust-item:last-child { border-right:none; }
.trust-item:hover { background:var(--gold-dim); }
.trust-icon-wrap { width:42px; height:42px; flex-shrink:0; background:var(--gold-dim); border-radius:10px; display:flex; align-items:center; justify-content:center; }
.trust-icon-wrap i { font-size:20px; color:var(--gold); }
.trust-label { font-size:13px; font-weight:700; color:var(--text); line-height:1.2; }
.trust-sub { font-size:11px; color:var(--muted); margin-top:1px; }

/* ═══════════════════════════════════════════════
   OFFER MARQUEE (FIXED — removed width:100% that
   caused it to overflow past the right edge)
═══════════════════════════════════════════════ */
.offer-marquee {
  margin:20px 0 28px; overflow:hidden; border-radius:14px;
  background:linear-gradient(90deg,var(--navy),var(--navy-2),var(--navy));
  border:1px solid rgba(201,168,76,.2); position:relative;
}
.offer-marquee::before {
  content:'SPECIAL OFFER'; position:absolute; left:0; top:0; bottom:0;
  background:var(--gold); color:var(--navy); font-size:11px; font-weight:800;
  letter-spacing:1px; padding:0 16px; display:flex; align-items:center; z-index:2;
}
.offer-track { display:flex; width:max-content; white-space:nowrap; animation:offerScroll 35s linear infinite; padding-left:130px; }
.offer-track span { color:var(--gold); font-size:14px; font-weight:700; padding:14px 30px; }
.offer-track span::after { content:'✦'; margin-left:30px; color:rgba(201,168,76,.45); }
.offer-marquee:hover .offer-track { animation-play-state:paused; }
@keyframes offerScroll { from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ═══════════════════════════════════════════════
   SECTION HEADER
═══════════════════════════════════════════════ */
.section-header {
  display:flex; align-items:center; justify-content:space-between;
  background:var(--card-bg); border-radius:var(--radius-lg) var(--radius-lg) 0 0;
  padding:20px 26px 16px; border-bottom:1px solid var(--border);
  position:relative; overflow:hidden;
}
.section-header::before {
  content:''; position:absolute; left:0; top:0;
  width:4px; height:100%; background:var(--gold);
}
.section-title { font-family:'Playfair Display',serif; font-size:22px; font-weight:700; color:var(--text); }
.section-title em { color:var(--gold); font-style:normal; }
.view-all {
  color:var(--gold); font-size:12.5px; font-weight:700; text-decoration:none;
  border:1.5px solid var(--gold); padding:6px 18px; border-radius:7px; transition:all 0.2s;
}
.view-all:hover { background:var(--gold); color:var(--navy); text-decoration:none; }

/* ═══════════════════════════════════════════════
   PRODUCTS — fixed 4-per-row grid, image cover fix,
   shadow-free unique cards
═══════════════════════════════════════════════ */
.products-wrapper { background:var(--card-bg); border-radius:0 0 var(--radius-lg) var(--radius-lg); padding:24px; }

.product-grid {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:16px;
  align-items:stretch;
}

.product-card {
  background:var(--card-bg); border:1.5px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:none;
  transition:border-color 0.3s, transform 0.3s, box-shadow 0.3s;
  position:relative; cursor:pointer;
  display:flex; flex-direction:column; height:100%;
}
.product-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--gold), var(--gold-light));
  opacity:0; transition:opacity 0.3s; z-index:2;
}
.product-card:hover {
  border-color:var(--gold);
  transform:translateY(-6px);
  box-shadow:0 12px 26px -8px rgba(201,168,76,0.28);
}
.product-card:hover::before { opacity:1; }

.product-badge {
  position:absolute; top:12px; left:12px; background:var(--gold); color:var(--navy);
  font-size:9.5px; font-weight:800; padding:3px 9px; border-radius:4px; z-index:5; letter-spacing:1px;
  box-shadow:0 2px 6px rgba(0,0,0,0.25);
}
.wishlist-btn {
  position:absolute; top:10px; right:10px;
  background:rgba(255,255,255,0.92); border:1px solid var(--border); border-radius:50%;
  width:36px; height:36px; display:flex; align-items:center; justify-content:center;
  cursor:pointer; z-index:5; transition:all 0.2s;
  box-shadow:0 2px 6px rgba(0,0,0,0.25);
}
.wishlist-btn:hover { border-color:var(--red); }
.wishlist-btn i { color:var(--muted); font-size:14px; transition:color 0.2s; }
.wishlist-btn.active i, .wishlist-btn:hover i { color:var(--red); }

.product-img-wrap {
  width:100%; height:220px; background:var(--off-white);
  display:flex; align-items:center; justify-content:center; overflow:hidden;
  border-radius:var(--radius-lg) var(--radius-lg) 0 0;
  position:relative;
}
.product-img-wrap img {
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  transition:transform 0.4s;
  display:block;
}
.product-card:hover .product-img-wrap img { transform:scale(1.08); }

.product-body { padding:14px; display:flex; flex-direction:column; flex:1; }
.product-name { font-size:13.5px; font-weight:700; color:var(--text); margin-bottom:4px; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.4; }
.product-desc { font-size:11.5px; color:var(--muted); margin-bottom:9px; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product-rating { display:inline-flex; align-items:center; gap:4px; background:var(--green); color:#fff; font-size:11.5px; font-weight:700; padding:2px 8px; border-radius:3px; margin-bottom:8px; }
.product-price { font-family:'Playfair Display',serif; font-size:19px; font-weight:700; color:var(--text); }
.price-sym { font-size:13px; }
.product-old { font-size:12px; color:var(--muted); text-decoration:line-through; margin-left:6px; }
.product-off { font-size:12px; color:var(--green); font-weight:700; margin-left:5px; }
.add-cart-btn {
  display:flex; align-items:center; justify-content:center; gap:6px;
  width:100%; background:transparent; color:var(--text);
  border:1.5px solid var(--gold); padding:10px; border-radius:8px;
  font-size:13px; font-weight:700; cursor:pointer; margin-top:auto;
  text-align:center; text-decoration:none; transition:all 0.25s;
  font-family:'DM Sans',sans-serif;
}
.add-cart-btn:hover { background:var(--gold); color:var(--navy); text-decoration:none; }

/* ═══════════════════════════════════════════════
   PAGINATION
═══════════════════════════════════════════════ */
.pagination-wrap { padding:20px 0 4px; display:flex; justify-content:center; }
.pagination .page-link {
  color:var(--text); border-color:var(--border); font-weight:600;
  border-radius:7px !important; margin:0 3px; padding:8px 16px;
  background:var(--card-bg); font-family:'DM Sans',sans-serif; transition:all 0.2s;
}
.pagination .page-item.active .page-link { background:var(--gold); border-color:var(--gold); color:var(--navy); }
.pagination .page-link:hover { background:var(--gold); color:var(--navy); border-color:var(--gold); }

/* ═══════════════════════════════════════════════
   POPULAR CATEGORIES
═══════════════════════════════════════════════ */
.popular-category { background:var(--card-bg); padding:26px 30px 22px; overflow:hidden; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.pop-cat-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.marquee-outer {
  width:100%; overflow:hidden; position:relative;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,black 6%,black 94%,transparent 100%);
}
.marquee-track {
  display:flex;
  gap:0;
  width:max-content;
  animation:marqueeScroll 28s linear infinite;
  animation-play-state:running !important;
  will-change:transform;
  backface-visibility:hidden;
}
.marquee-set { display:flex; align-items:flex-start; gap:18px; padding-right:18px; flex-shrink:0; }
.marquee-outer:hover .marquee-track,
.marquee-track:hover { animation-play-state:paused !important; }
@keyframes marqueeScroll {
  from { transform:translate3d(0,0,0); }
  to { transform:translate3d(-50%,0,0); }
}
.category-card { min-width:130px; text-align:center; flex-shrink:0; cursor:pointer; color:inherit; text-decoration:none; }
.category-card .cat-img-wrap {
  width:120px; height:120px; border-radius:14px; overflow:hidden; margin:0 auto;
  border:2px solid var(--border); background:#f7f7f7; padding:8px;
  display:flex; align-items:center; justify-content:center; transition:all 0.3s;
}
.category-card .cat-img-wrap img { width:100%; height:100%; object-fit:contain; object-position:center; display:block; transition:transform 0.35s; }
.category-card .cat-img-wrap .cat-icon { font-size:36px; color:var(--gold); opacity:0.7; }
.category-card:hover .cat-img-wrap { border-color:var(--gold); transform:translateY(-4px); }
.category-card:hover .cat-img-wrap img { transform:scale(1.08); }
.category-card h6 { margin-top:10px; font-size:12.5px; font-weight:800; color:var(--text); text-transform:uppercase; letter-spacing:0.5px; }

/* ═══════════════════════════════════════════════
   REVIEWS
═══════════════════════════════════════════════ */
.reviews-section { background:var(--card-bg); border-radius:var(--radius-lg); padding:32px 28px; margin-top:28px; border:1px solid var(--border); }
.reviews-section h2 { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:var(--text); margin-bottom:20px; }
.rating-summary { display:flex; align-items:center; gap:24px; padding:20px; background:var(--off-white); border-radius:var(--radius); border:1px solid var(--border); margin-bottom:20px; }
.rating-score { font-family:'Playfair Display',serif; font-size:52px; font-weight:900; color:var(--gold); line-height:1; }
.stars { color:var(--gold); font-size:22px; letter-spacing:3px; }
.rating-count { color:var(--muted); font-size:13px; margin-top:4px; }
.review-actions { display:flex; gap:12px; }
.btn-write-review { background:var(--gold); color:var(--navy); border:none; padding:11px 26px; border-radius:8px; font-weight:700; font-size:13px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all 0.2s; }
.btn-write-review:hover { background:var(--gold-light); }
.btn-all-reviews { background:transparent; color:var(--text); border:2px solid var(--border); padding:11px 26px; border-radius:8px; font-weight:700; font-size:13px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all 0.2s; }
.btn-all-reviews:hover { border-color:var(--gold); color:var(--gold); }
.reviews-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:16px; margin-top:22px; }
.review-card { border:1.5px solid var(--border); border-radius:var(--radius); padding:18px; transition:border-color 0.2s; background:var(--off-white); }
.review-card:hover { border-color:var(--gold); }
.review-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; }
.reviewer-name { font-weight:700; font-size:13.5px; color:var(--text); }
.badge-rating { background:var(--green); color:#fff; font-size:11.5px; font-weight:700; padding:3px 10px; border-radius:4px; }
.review-date { color:var(--muted); font-size:11.5px; margin-bottom:8px; }
.review-text { font-size:13.5px; color:var(--muted); line-height:1.6; }

/* ═══════════════════════════════════════════════
   SLIDE PANELS
═══════════════════════════════════════════════ */
.slide-panel {
  position:fixed; top:0; right:-460px; width:440px; height:100vh;
  background:var(--card-bg); z-index:3000;
  transition:right 0.4s cubic-bezier(.4,0,.2,1);
  border-left:1px solid var(--border); overflow-y:auto;
}
.slide-panel.active { right:0; }
.panel-header { background:var(--navy); color:var(--white); padding:22px 26px; display:flex; align-items:center; justify-content:space-between; border-bottom:3px solid var(--gold); }
.panel-header h3 { font-family:'Playfair Display',serif; font-size:20px; }
.panel-close { background:rgba(255,255,255,0.1); border:none; color:var(--white); width:34px; height:34px; border-radius:50%; cursor:pointer; font-size:17px; display:flex; align-items:center; justify-content:center; transition:all 0.2s; }
.panel-close:hover { background:var(--gold); color:var(--navy); }
.panel-body { padding:26px; }
.form-group { margin-bottom:20px; }
.form-group label { font-size:13px; font-weight:700; color:var(--text); margin-bottom:7px; display:block; }
.input-field { width:100%; border:1.5px solid var(--border); border-radius:8px; padding:11px 14px; font-family:'DM Sans',sans-serif; font-size:14px; color:var(--text); outline:none; transition:border-color 0.2s; background:var(--card-bg); }
.input-field:focus { border-color:var(--gold); }
.phone-row { display:flex; overflow:hidden; border:1.5px solid var(--border); border-radius:8px; }
.phone-row:focus-within { border-color:var(--gold); }
.phone-prefix { background:var(--off-white); padding:11px 14px; font-size:14px; font-weight:700; color:var(--text); border-right:1.5px solid var(--border); }
.phone-row input { flex:1; border:none; outline:none; padding:11px 14px; font-family:'DM Sans',sans-serif; font-size:14px; color:var(--text); background:var(--card-bg); }
.star-rating { display:flex; flex-direction:row-reverse; gap:4px; font-size:32px; justify-content:flex-end; }
.star-rating input { display:none; }
.star-rating label { color:var(--border); cursor:pointer; transition:color 0.15s; }
.star-rating input:checked ~ label, .star-rating label:hover, .star-rating label:hover ~ label { color:var(--gold); }
.panel-footer { display:flex; gap:12px; margin-top:24px; }
.btn-cancel { flex:1; background:var(--off-white); color:var(--text); border:1.5px solid var(--border); padding:12px; border-radius:8px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; }
.btn-submit { flex:2; background:var(--gold); color:var(--navy); border:none; padding:12px; border-radius:8px; font-weight:800; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all 0.2s; }
.btn-submit:hover { background:var(--gold-light); }
.overlay { position:fixed; inset:0; background:rgba(5,10,22,0.55); z-index:2999; display:none; backdrop-filter:blur(3px); }
.overlay.active { display:block; }

/* ═══════════════════════════════════════════════
   WHATSAPP + SCROLL BUTTONS
═══════════════════════════════════════════════ */
.whatsapp-float {
  position:fixed; right:20px; bottom:28px; background:#25D366; color:#fff;
  border-radius:50%; width:54px; height:54px;
  display:flex; align-items:center; justify-content:center;
  z-index:900; text-decoration:none; transition:all 0.25s; font-size:25px;
}
.whatsapp-float:hover { background:#1ebe57; transform:scale(1.1); color:#fff; }
.scroll-buttons { position:fixed; right:20px; bottom:95px; display:flex; flex-direction:column; gap:12px; z-index:999; }
.scroll-buttons button { width:50px; height:50px; border:none; border-radius:50%; background:var(--gold); color:var(--navy); font-size:18px; cursor:pointer; transition:.3s; }
.scroll-buttons button:hover { transform:translateY(-3px); background:var(--gold-light); }
#scrollTopBtn { display:none; }

/* ═══════════════════════════════════════════════
   VLOGGER SECTION
═══════════════════════════════════════════════ */
.vlogger-section { background:var(--card-bg); border-radius:14px; padding:25px; margin:28px 0; border:1px solid var(--border); }
.vlogger-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:20px; }
.vlogger-card { border:1px solid var(--border); border-radius:12px; overflow:hidden; background:var(--off-white); transition:border-color 0.3s, transform 0.3s; }
.vlogger-card:hover { transform:translateY(-4px); border-color:var(--gold); }
.vlogger-card iframe { display:block; width:100%; aspect-ratio:16/9; height:auto; border:0; background:#000; }
.vlogger-content { padding:18px; }
.vlogger-content h4 { color:var(--text); font-size:18px; font-weight:700; margin-bottom:8px; }
.vlogger-content p { color:var(--muted); font-size:14px; margin:0; }

/* ═══════════════════════════════════════════════
   TESTIMONIALS
═══════════════════════════════════════════════ */
.testimonials-section { background:var(--card-bg); border-radius:14px; padding:25px; margin:28px 0; border:1px solid var(--border); }
.testimonial-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:20px; }
.testimonial-card { background:var(--off-white); border:1.5px solid var(--border); border-radius:12px; padding:25px; transition:border-color 0.3s, transform 0.3s; position:relative; }
.testimonial-card:hover { transform:translateY(-5px); border-color:var(--gold); }
.quote-icon { font-size:30px; color:var(--gold); margin-bottom:12px; opacity:0.55; }
.testimonial-card p { color:var(--muted); line-height:1.8; font-size:14px; min-height:100px; }
.testimonial-user { display:flex; align-items:center; gap:12px; margin-top:18px; }
.testimonial-user img { width:55px; height:55px; border-radius:50%; object-fit:cover; border:3px solid var(--gold); }
.testimonial-user h5 { margin:0; color:var(--text); font-size:15px; font-weight:700; }
.testimonial-user span { color:var(--muted); font-size:13px; }

/* ═══════════════════════════════════════════════
   VIDEO SHOWCASE
═══════════════════════════════════════════════ */
.video-showcase { background:var(--card-bg); border-radius:14px; padding:25px; margin:28px 0; border:1px solid var(--border); }
.video-showcase .section-title { text-align:center; margin-bottom:35px; }
.video-showcase .section-title h2 { color:var(--text); font-size:32px; font-weight:800; }
.video-showcase .section-title span { color:var(--gold); }
.video-showcase .section-title p { color:var(--muted); margin-top:8px; }
.video-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.video-card { background:var(--card-bg); border-radius:14px; overflow:hidden; border:1px solid var(--border); transition:border-color 0.3s, transform 0.3s; line-height:0; }
.video-card:hover { transform:translateY(-5px); border-color:var(--gold); }
.video-card iframe { display:block; width:100%; aspect-ratio:16/9; height:auto; border:0; background:#000; }

/* ═══════════════════════════════════════════════
   CONTENT SECTIONS — compact, readable typography
═══════════════════════════════════════════════ */
.content-section {
  background:var(--card-bg);
  padding:clamp(22px,4vw,36px);
  margin:16px 0;
  border-radius:16px;
  border:1px solid var(--border);
}
.content-section > *:last-child { margin-bottom:0; }
.content-section h2 {
  color:var(--text);
  font-size:clamp(18px,2.4vw,22px);
  font-weight:700;
  line-height:1.35;
  margin-bottom:14px;
  position:relative;
  font-family:'Playfair Display',serif;
}
.content-section h2::after {
  content:'';
  width:44px; height:3px;
  background:var(--gold);
  display:block;
  margin-top:10px;
  border-radius:20px;
}
.content-section p {
  color:var(--muted);
  line-height:1.75;
  font-size:14.5px;
  font-weight:400;
  max-width:75ch;
  margin-bottom:12px;
}
.content-section p:last-child { margin-bottom:0; }
.content-section h3 {
  color:var(--text);
  font-size:15.5px;
  font-weight:700;
  margin:18px 0 8px;
}
.content-section ul { padding-left:20px; margin-bottom:12px; }
.content-section ul li {
  color:var(--muted);
  font-size:13.5px;
  font-weight:400;
  margin-bottom:6px;
  line-height:1.6;
}
.content-section ul:last-child { margin-bottom:0; }

/* ═══════════════════════════════════════════════
   HELP SECTION
═══════════════════════════════════════════════ */
.help-section { margin:40px 0; }
.help-card { display:flex; gap:0; border-radius:16px; overflow:hidden; border:1px solid var(--border); }
.help-box { flex:1; padding:40px; }
.left-box { background:var(--navy); color:#fff; text-align:center; }
.help-icon { width:75px; height:75px; margin:0 auto 20px; border-radius:50%; background:var(--gold); color:var(--navy); display:flex; align-items:center; justify-content:center; font-size:30px; }
.left-box h3 { margin:0 0 12px; color:var(--gold); font-size:28px; font-weight:700; }
.left-box p { margin:0; font-size:16px; line-height:1.8; color:rgba(255,255,255,0.7); }
.right-box { background:var(--gold); color:var(--navy); text-align:center; }
.phone-number { font-size:30px; font-weight:800; margin-bottom:15px; }
.phone-number i { margin-right:10px; }
.help-time { font-size:16px; line-height:1.8; font-weight:600; }

/* ═══════════════════════════════════════════════
   SPECIAL DEAL BANNER
═══════════════════════════════════════════════ */
.special-deal-banner {
  background:linear-gradient(135deg,var(--navy),var(--navy-2));
  border:1px solid rgba(201,168,76,0.35);
  border-radius:16px; padding:25px 30px; margin:22px 0;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;
}
.deal-tag { background:var(--gold); color:var(--navy); padding:6px 14px; border-radius:30px; font-size:12px; font-weight:800; display:inline-block; margin-bottom:10px; }
.deal-left h2 { color:#fff; margin:0; font-size:30px; font-weight:800; }
.deal-left p { color:rgba(255,255,255,.65); margin-top:6px; }
.countdown-box { display:flex; gap:14px; flex-wrap:wrap; }
.time-box { width:88px; height:88px; background:var(--card-bg); border-radius:14px; display:flex; flex-direction:column; justify-content:center; align-items:center; border:2px solid var(--gold); }
.time-box span { font-size:28px; font-weight:900; color:var(--text); line-height:1; }
.time-box small { margin-top:6px; color:var(--gold); font-weight:700; font-size:11px; }

/* ═══════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════ */
.footer { background:var(--navy); color:#fff; padding:56px 40px 26px; margin-top:60px; border-top:3px solid var(--gold); }
.footer-grid { max-width:1300px; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1.6fr; gap:48px; }
.footer h4 { font-family:'Playfair Display',serif; font-size:13.5px; font-weight:700; letter-spacing:1px; margin-bottom:18px; color:var(--gold); text-transform:uppercase; }
.footer p, .footer a { color:rgba(255,255,255,0.52); font-size:13.5px; line-height:1.75; text-decoration:none; }
.footer a:hover { color:var(--gold); }
.footer ul { list-style:none; padding:0; }
.footer ul li { margin-bottom:9px; }
.footer ul li a { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,0.52); font-size:13.5px; transition:color 0.2s; }
.footer ul li a:hover { color:var(--gold); }
.footer ul li a i { font-size:11px; color:var(--gold); }
.footer-contact p { display:flex; align-items:flex-start; gap:10px; margin-bottom:11px; }
.footer-contact i { margin-top:3px; color:var(--gold); flex-shrink:0; font-size:13px; }
.social-row { display:flex; gap:9px; margin-top:16px; }
.social-icon { width:36px; height:36px; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); border-radius:8px; display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.52); font-size:14px; transition:all 0.2s; text-decoration:none; }
.social-icon:hover { background:var(--gold); border-color:var(--gold); color:var(--navy); }
.footer-brand-p { margin-top:12px; font-size:13px; }
.footer-bottom { max-width:1300px; margin:32px auto 0; border-top:1px solid rgba(255,255,255,0.07); padding-top:22px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; color:rgba(255,255,255,0.32); font-size:12.5px; }
.footer-logo-sm { display:flex; align-items:center; gap:8px; }
.footer-logo-sm i { color:var(--gold); font-size:18px; }
.footer-logo-sm span { font-family:'Playfair Display',serif; font-weight:700; font-size:15px; color:#fff; }

/* PAYMENT STRIP */
.payment-strip { border-top:1px solid rgba(255,255,255,0.06); padding:18px 0; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; }
.payment-strip .pay-label { font-size:11.5px; color:rgba(255,255,255,0.32); font-weight:600; letter-spacing:.5px; text-transform:uppercase; flex-shrink:0; }
.pay-icons { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.pay-icon { background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); border-radius:6px; padding:5px 10px; display:flex; align-items:center; gap:6px; transition:all .2s; }
.pay-icon:hover { background:rgba(255,255,255,0.1); border-color:rgba(201,168,76,0.3); }
.pay-icon span { font-size:11px; font-weight:700; }
.pay-visa span { color:#1a6cef; }
.pay-mc span { color:#eb001b; }
.pay-rupay span { color:#006b3c; }
.pay-upi span { color:#097939; }
.pay-paytm span { color:#00baf2; }
.pay-gpay span { color:#4285f4; }
.pay-phonepe span { color:#5f259f; }
.pay-netbank span { color:var(--gold); }
.pay-cod span { color:#e67e22; }

/* ═══════════════════════════════════════════════
   CONTENT MARGINS
═══════════════════════════════════════════════ */
.offer-marquee, .special-deal-banner, .section-header, .products-wrapper,
.vlogger-section, .video-showcase, .reviews-section, .testimonials-section,
.content-section, .help-section, .popular-category {
  margin-left:var(--page-gap);
  margin-right:var(--page-gap);
}

/* ═══════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════ */
@media (max-width:1200px) {
  .product-grid { grid-template-columns:repeat(3, 1fr); }
}
@media (max-width:1024px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:36px; }
  .testimonial-grid { grid-template-columns:repeat(2,1fr); }
  .vlogger-grid { grid-template-columns:repeat(2,1fr); }
  .video-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px) {
  body { padding-top:0; }
  .navbar-top { padding:0 16px; gap:10px; flex-wrap:wrap; }
  .cat-bar { padding:0 16px; }
  .nav-link { display:none; }
  .nav-divider { display:none; }
  .nav-right .nav-icon-btn span { display:none; }
  .hamburger-btn { display:flex; }
  .search-wrap { order:3; width:100%; max-width:none; margin:0; padding-bottom:8px; }
  .product-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .cat-dropdown-menu { left:0; right:auto; }
}
@media (max-width:600px) {
  body { padding-top:0; }
  .product-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
  .testimonial-grid { grid-template-columns:1fr; }
  .vlogger-grid { grid-template-columns:1fr; }
  .video-grid { grid-template-columns:1fr; }
  .help-card { flex-direction:column; }
  .slide { height:320px; }
  .slide-content { padding:0 24px; }
  .slide-title { font-size:26px; }
  .products-wrapper { padding:16px; }
  .section-header { flex-wrap:nowrap; gap:10px; padding:16px 18px 14px; }
  .section-header .section-title { min-width:0; font-size:20px; line-height:1.2; }
  .section-header .view-all { flex:0 0 auto; white-space:nowrap; padding:6px 12px; }
  .content-section { padding:20px; }
  .content-section p, .content-section ul li { font-size:13.5px; }
  .checkbox-grid { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  body { padding-top:0; }
  .brand img { width:64px; height:48px; }
  .slide { height:280px; }
  .slide-title { font-size:20px; }
  .slide-content { padding:0 16px; }
  .navbar-top { padding:0 12px; gap:8px; }
  .slide-panel { width:100%; right:-100%; }
  .footer-grid { grid-template-columns:1fr; gap:28px; }
  .footer { padding:36px 18px 18px; }
  .trust-strip { flex-wrap:wrap; }
  .trust-item { min-width:50%; border-right:none; border-bottom:1px solid var(--border); }
  .mega-grid { grid-template-columns:1fr; }
  .mega-menu { padding:16px; max-height:65vh; overflow-y:auto; }
  .more-cat .mega-menu { width:100%; right:0; left:0; }
  .modal-form-row { grid-template-columns:1fr; }
  .special-deal-banner { flex-direction:column; gap:20px; text-align:center; }
  .deal-left h2 { font-size:22px; }
  .countdown-box { justify-content:center; }
  .time-box { width:70px; height:70px; }
  .time-box span { font-size:22px; }
  .search-wrap { max-width:none; }
  .modal-body { padding:18px; }
  .modal-footer { padding:16px 18px; flex-direction:column; }
}

/* Homepage banner and published customer reviews. */
.slider-section { margin:16px 24px; border-radius:14px; background:#f5f7fb; }
.slider-section .slide-bg { width:100%; height:100%; object-fit:scale-down; object-position:center; transform:none; transition:none; }
.slider-section .slide.is-active .slide-bg { transform:none; }
.slider-section .slider-arrow { background:#fff; border:1px solid var(--gold); color:var(--navy); backdrop-filter:none; box-shadow:0 2px 8px #0002; }
.slider-section .slider-arrow:hover { background:var(--gold); }
.slider-section .slide-content { padding:0 84px; }
.slider-section .slide-title { text-shadow:0 1px 4px #0009; }
.testimonial-carousel { display:flex; align-items:center; gap:12px; margin-top:20px; }
.testimonial-viewport { flex:1; min-width:0; overflow-x:auto; scrollbar-width:none; }
.testimonial-viewport::-webkit-scrollbar { display:none; }
.testimonial-track { display:flex; align-items:flex-start; gap:22px; width:100%; }
.testimonial-track .testimonial-card { flex:0 0 calc((100% - 44px)/3); min-width:0; display:flex; flex-direction:column; }
.testimonial-track .testimonial-card h4 { font-size:17px; overflow-wrap:anywhere; }
.testimonial-track .testimonial-card p { min-height:0; margin-bottom:0; overflow-wrap:anywhere; }
.testimonial-track .testimonial-user { margin-top:12px; padding-top:0; }
.testimonial-track .testimonial-card:hover { transform:none; }
.testimonial-arrow { flex:0 0 38px; height:38px; border-radius:50%; border:1px solid var(--gold); background:#fff; color:var(--navy); cursor:pointer; }
.testimonial-arrow:hover { background:var(--gold); }
.testimonial-arrow:disabled { opacity:.4; cursor:default; }
.testimonial-carousel :focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
@media(max-width:1000px) { .testimonial-track .testimonial-card { flex-basis:calc((100% - 22px)/2); } }
@media(max-width:600px) {
  .slider-section { margin:12px; }
  .slider-section .slider-arrow { width:34px; height:34px; }
  .slider-section .slider-arrow.prev { left:8px; }
  .slider-section .slider-arrow.next { right:8px; }
  .slider-section .slide-content { padding:0 50px; }
  .testimonial-carousel { gap:6px; }
  .testimonial-track .testimonial-card { flex-basis:100%; padding:18px; }
  .testimonial-arrow { flex-basis:30px; height:30px; }
}

/* Full-width banner photography with compact surrounding spacing. */
html body .home-store-stats { padding-bottom:4px; }
.slider-section { max-width:none; width:calc(100% - 32px); margin:6px auto; background:#fff; border:1px solid var(--border); }
.slider-section .banner-photo-slide { display:block; position:relative; height:clamp(300px,32vw,500px); padding:0; overflow:hidden; }
.slider-section .banner-photo-slide .banner-image { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; margin:0; padding:0; object-fit:cover; object-position:center; transform:none; filter:none; }
.slider-section .banner-photo-slide .slide-content { position:absolute; left:70px; right:70px; bottom:34px; padding:0; max-width:none; text-align:center; opacity:1; transform:none; transition:none; }
.slider-section .banner-photo-slide .slide-title { font-size:24px; color:#fff; text-shadow:0 1px 5px #000; margin:0 0 6px; }
.slider-section .banner-photo-slide .slide-eyebrow { margin-bottom:4px; text-shadow:0 1px 4px #000; }
.slider-section .banner-photo-slide .slide-cta { padding:11px 28px; }
.slider-section .slider-dots { bottom:12px; }
.slider-section + .trust-strip { width:calc(100% - 32px); margin:6px auto 10px; border-radius:8px; }
.slider-section + .trust-strip .trust-item { padding:10px 16px; gap:8px; }
@media(max-width:600px) {
  .slider-section { width:calc(100% - 40px); max-width:100%; margin:4px auto; }
  .slider-section .banner-photo-slide { height:auto; }
  .slider-section .banner-photo-slide .banner-image { position:static; height:auto; object-fit:contain; }
  .slider-section .banner-photo-slide .slide-content { left:44px; right:44px; bottom:32px; }
  .slider-section .banner-photo-slide .slide-title { font-size:18px; }
  .slider-section + .trust-strip { width:calc(100% - 20px); margin:4px auto 8px; }
  .slider-section + .trust-strip .trust-item { padding:8px 10px; }
}

/* One consistent gap between homepage sections; no spacer line breaks. */
.home-page-content { display:flow-root; --home-section-gap:12px; }
.home-page-content > :is(.section-header,.vlogger-section,.video-showcase,.reviews-section,.testimonials-section,.content-section,.help-section,.special-deal-banner,.offer-marquee) { margin-top:var(--home-section-gap); margin-bottom:0; }
.home-page-content > .products-wrapper { margin-top:0; margin-bottom:0; padding-top:16px; padding-bottom:16px; }
.home-page-content .section-header { padding-top:12px; padding-bottom:12px; }
.home-page-content :is(.vlogger-section,.video-showcase,.reviews-section,.testimonials-section,.content-section) { padding-top:18px; padding-bottom:18px; }
.home-page-content :is(.vlogger-section,.testimonials-section) > .section-header { margin-top:0; margin-bottom:0; }
.home-page-content .video-showcase .section-title { margin-bottom:16px; }
.home-page-content :is(.vlogger-grid,.testimonial-carousel) { margin-top:12px; }
.home-page-content .pagination-wrap { padding-top:12px; padding-bottom:0; }
.home-page-content .home-review-cta { margin-top:16px; margin-bottom:0; }
@media(max-width:600px) {
  .home-page-content { --home-section-gap:10px; }
  .home-page-content :is(.products-wrapper,.vlogger-section,.video-showcase,.reviews-section,.testimonials-section,.content-section) { padding-top:12px; padding-bottom:12px; }
  .home-page-content .video-showcase .section-title { margin-bottom:12px; }
  .home-page-content .video-showcase .section-title h2 { font-size:clamp(20px,5.5vw,26px); line-height:1.25; }
  .home-page-content .video-showcase .section-title p { font-size:clamp(12px,3.5vw,14px); line-height:1.5; text-wrap:balance; }
  .home-page-content .special-deal-banner { flex-direction:column; gap:16px; padding:20px 12px; text-align:center; }
  .home-page-content .special-deal-banner .countdown-box { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; width:100%; max-width:340px; }
  .home-page-content .special-deal-banner .time-box { width:100%; min-width:0; height:70px; border-radius:10px; }
  .home-page-content .special-deal-banner .time-box span { font-size:22px; }
  .home-page-content .special-deal-banner .time-box small { font-size:10px; }
}
/* Keep homepage category links free of underlines in every interaction state. */
.home-page-content a.category-card,
.home-page-content a.category-card:hover,
.home-page-content a.category-card:focus,
.home-page-content a.category-card:active,
.home-page-content a.category-card:visited {
  text-decoration:none;
  color:inherit;
}

.home-page-content :is(.vlogger-card,.video-card) .home-managed-video { display:block; width:100%; height:auto; aspect-ratio:16/9; border:0; background:#000; object-fit:contain; }
.home-page-content :is(.vlogger-grid,.video-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); width:96%; margin-left:auto; margin-right:auto; }
.home-page-content :is(.vlogger-card,.video-card) { position:relative; line-height:0; }
.home-page-content :is(.vlogger-card,.video-card) .home-managed-video { aspect-ratio:11/4; object-fit:cover; }
.home-page-content .vlogger-shop-button { position:absolute; left:50%; bottom:48px; transform:translateX(-50%); display:inline-flex; align-items:center; justify-content:center; padding:12px 28px; border-radius:30px; background:var(--gold); color:var(--navy); font-size:15px; font-weight:700; line-height:1.4; text-decoration:none; white-space:nowrap; }
#homeTestimonialVideos .video-grid { grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; }
#homeTestimonialVideos .video-card { min-width:0; border-radius:12px; aspect-ratio:9/16; overflow:hidden; }
#homeTestimonialVideos .video-card .home-managed-video { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; }
/* YouTube embeds ignore object-fit; crop their landscape player to fill the portrait card. */
#homeTestimonialVideos .video-card iframe.home-managed-video { position:absolute; top:0; left:50%; width:316.667%; max-width:none; transform:translateX(-50%); }
#homeTestimonialVideos .vlogger-shop-button { padding:9px 16px; font-size:13px; }
@media(max-width:1100px) {
  #homeTestimonialVideos .video-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; }
  #homeTestimonialVideos .video-card { flex:0 0 calc((100% - 36px)/3); scroll-snap-align:start; }
}
@media(max-width:600px) {
  #homeTestimonialVideos .video-grid { width:100%; gap:14px; }
  #homeTestimonialVideos .video-card { flex-basis:78%; }
}
.home-page-content .vlogger-shop-button:hover { background:var(--gold-light); }
.home-page-content .vlogger-shop-button:focus-visible { outline:3px solid #fff; outline-offset:3px; }
@media(max-width:600px) {
  .home-page-content :is(.vlogger-grid,.video-grid) { grid-template-columns:1fr; width:100%; gap:14px; }
  .home-page-content :is(.vlogger-card,.video-card) { min-width:0; }
  .home-page-content :is(.vlogger-card,.video-card) .home-managed-video { aspect-ratio:16/9; object-fit:contain; }
  .home-page-content .vlogger-shop-button { padding:10px 22px; min-height:44px; font-size:14px; }
}
