/* ================================================================
   QwikGlam - qg-mobile.css  v4  PRODUCTION GRADE
   ARCHITECTURE: ONE file, TWO @media blocks, ZERO conflicts
   Matches Flutter QgColors: cream #FEF7F2 plum linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) rose #D4728C gold #C9A86C
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,800;1,400;1,600&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600;9..40,700&display=swap');

@media (max-width: 768px) {

/* TOKENS */
:root {
  --m-bg:#FEF7F2; --m-white:#FFFFFF; --m-plum:linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%); --m-deep:#2A1229;
  --m-rose:#D4728C; --m-rose-dark:#C05878; --m-gold:#C9A86C; --m-gold-dk:#B8860B;
  --m-soft:#6A4060; --m-muted:#9C7A8A; --m-green:#1a7a40;
  --m-border:rgba(59,31,58,0.10); --m-border-rose:rgba(212,114,140,0.15);
  --m-border-gold:rgba(201,168,108,0.25);
  --m-card-shadow:0 2px 16px rgba(59,31,58,0.07),0 1px 4px rgba(59,31,58,0.04);
  --m-gold-shadow:0 6px 20px rgba(201,168,108,0.38);
  --m-rose-shadow:0 6px 20px rgba(212,114,140,0.28);
  --m-radius:18px; --m-pill:999px;
}

/* GLOBAL RESET */
html,body{overflow-x:hidden !important;background:var(--m-bg) !important;}
body.home,body.home main,html body.home #qg-home{background:var(--m-bg) !important;overflow-x:hidden !important;padding-bottom:calc(82px + env(safe-area-inset-bottom,0px)) !important;}
html body.home #qg-home > section{background:var(--m-bg) !important;background-image:none !important;padding-left:16px !important;padding-right:16px !important;margin:0 !important;position:relative !important;}

/* Sections with inner containers get 0 section padding */
html body.home #qg-home .qg-services,
html body.home #qg-home .qg-how,
html body.home #qg-home .qg-artists,
html body.home #qg-home .qg-safety,
html body.home #qg-home .qg-membership,
html body.home #qg-home .qg-app{padding-left:0 !important;padding-right:0 !important;}
html body.home #qg-home .qg-services__inner,
html body.home #qg-home .qg-how__inner,
html body.home #qg-home .qg-artists__inner,
html body.home #qg-home .qg-safety__inner,
html body.home #qg-home .qg-membership__inner,
html body.home #qg-home .qg-app__inner{padding-inline:16px !important;}

/* Nuclear bg-clip reset */
html body.home #qg-home *:not(.qg-hero__content h1 em):not(.qg-app .qg-section-head h2 span){background-clip:initial !important;-webkit-background-clip:initial !important;}

/* Touch feedback on cards */
html body.home #qg-home .qg-deal-chip:active,html body.home #qg-home .qg-pkg-card:active,html body.home #qg-home .qg-service-card:active,html body.home #qg-home .qg-artist-card:active,html body.home #qg-home .qg-seasonal-card:active{transform:scale(0.97) !important;transition:transform 0.1s ease !important;}

/* Momentum scroll on all tracks */
html body.home #qg-home .qg-deals-track,html body.home #qg-home .qg-packages-track,html body.home #qg-home .qg-artists-grid,html body.home #qg-home .qg-membership__cards{-webkit-overflow-scrolling:touch !important;overscroll-behavior-x:contain !important;}

/* HEADER - hide desktop nav */
body.home .qg-header-wrap,body.home #qgHeaderWrap,body.home .qg-header,body.home .qg-ann,body.home .qg-promo-strip,body.home .qg-announcement-bar{display:none !important;}
html body.home #qg-home{padding-top:0 !important;}

/* BOTTOM NAV - Flutter dark tab bar */
html body .qg-bottom-nav{display:block !important;position:fixed !important;bottom:0 !important;left:0 !important;right:0 !important;z-index:9999 !important;background:rgba(14,5,28,0.97) !important;backdrop-filter:blur(24px) !important;-webkit-backdrop-filter:blur(24px) !important;border-top:1px solid rgba(201,168,108,0.15) !important;padding-bottom:max(6px,env(safe-area-inset-bottom,0px)) !important;}
html body .qg-bottom-nav__inner{display:flex !important;justify-content:space-around !important;align-items:stretch !important;max-width:500px !important;margin:0 auto !important;}
html body .qg-bnav-item{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:3px !important;padding:10px 6px 8px !important;flex:1 !important;color:rgba(255,255,255,0.3) !important;-webkit-text-fill-color:rgba(255,255,255,0.3) !important;background:none !important;text-decoration:none !important;font-family:'DM Sans',sans-serif !important;font-size:0.56rem !important;font-weight:600 !important;letter-spacing:0.06em !important;text-transform:uppercase !important;}
html body .qg-bnav-item svg{stroke:rgba(255,255,255,0.28) !important;}
html body .qg-bnav-item.active{color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;}
html body .qg-bnav-item.active svg{stroke:var(--m-gold) !important;}
html body .qg-bnav-item--book{color:#1a0930 !important;-webkit-text-fill-color:#1a0930 !important;padding:0 !important;margin:-20px 4px 0 !important;flex:1.1 !important;}
html body .qg-bnav-book-inner{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:2px !important;width:56px !important;height:56px !important;border-radius:50% !important;background:linear-gradient(145deg,#e8c878,#C9A86C,#b8860b) !important;box-shadow:0 6px 22px rgba(201,168,108,0.65) !important;margin:0 auto !important;will-change:box-shadow !important;animation:qgBookPulse 3s ease-in-out infinite !important;}
@keyframes qgBookPulse{0%,100%{box-shadow:0 6px 22px rgba(201,168,108,0.65);}50%{box-shadow:0 8px 30px rgba(201,168,108,0.9),0 0 0 8px rgba(201,168,108,0.1);}}
html body .qg-bnav-book-inner svg{stroke:#1a0930 !important;}
html body .qg-bnav-book-label{font-size:0.5rem !important;font-weight:800 !important;letter-spacing:0.07em !important;text-transform:uppercase !important;color:#1a0930 !important;-webkit-text-fill-color:#1a0930 !important;}

/* SECTION PADDING RHYTHM */
html body.home #qg-home .qg-press{padding-top:16px !important;padding-bottom:16px !important;}
html body.home #qg-home .qg-trust-bar{padding-top:20px !important;padding-bottom:20px !important;}
html body.home #qg-home .qg-flash-deals{padding-top:20px !important;padding-bottom:20px !important;}
html body.home #qg-home .qg-packages{padding-top:24px !important;padding-bottom:24px !important;}
html body.home #qg-home .qg-services{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-how{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-safety{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-artists{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-before-after{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-testimonials{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-membership{padding-top:36px !important;padding-bottom:36px !important;}
html body.home #qg-home .qg-seasonal{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-brands{padding-top:22px !important;padding-bottom:22px !important;}
html body.home #qg-home .qg-guarantee{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-app{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-faq{padding-top:32px !important;padding-bottom:32px !important;}
html body.home #qg-home .qg-reels-preview{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-section-v10{padding-top:8px !important;padding-bottom:8px !important;}
html body.home #qg-home .qg-referral{padding-top:28px !important;padding-bottom:28px !important;}
html body.home #qg-home .qg-artist-join{padding-top:32px !important;padding-bottom:32px !important;}

/* TYPOGRAPHY SYSTEM */
html body.home #qg-home .qg-section-head,html body.home #qg-home .qg-section-header-v10{text-align:center !important;margin-bottom:20px !important;}
html body.home #qg-home .qg-section-head h2,html body.home #qg-home .qg-section-header-v10 h2{font-family:'Playfair Display',serif !important;font-size:clamp(1.7rem,5.5vw,2.1rem) !important;font-weight:800 !important;line-height:1.15 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 8px !important;}
html body.home #qg-home .qg-section-head h2 span,html body.home #qg-home .qg-section-head h2 em{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;font-style:italic !important;}
html body.home #qg-home .qg-section-head p,html body.home #qg-home .qg-section-header-v10 p,html body.home #qg-home .qg-subtitle{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.88rem !important;line-height:1.6 !important;margin:0 !important;}
html body.home #qg-home .qg-eyebrow{display:inline-block !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;background:none !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:700 !important;letter-spacing:0.26em !important;text-transform:uppercase !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-rule{display:flex !important;align-items:center !important;gap:6px !important;justify-content:center !important;margin-bottom:4px !important;}
html body.home #qg-home .qg-rule-line{display:block !important;width:32px !important;height:2px !important;background:var(--m-gold) !important;}
html body.home #qg-home .qg-rule-dot{display:block !important;width:6px !important;height:6px !important;border-radius:50% !important;background:var(--m-rose) !important;}
html body.home #qg-home .qg-section-header-v10-row{display:flex !important;align-items:flex-end !important;justify-content:space-between !important;margin-bottom:16px !important;}
html body.home #qg-home .qg-section-header-v10{text-align:left !important;margin-bottom:0 !important;}
html body.home #qg-home .qg-section-header-v10 h2{font-size:1.25rem !important;margin:0 !important;}
html body.home #qg-home .qg-see-all{color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:600 !important;text-decoration:none !important;white-space:nowrap !important;}

/* BUTTONS */
html body.home #qg-home .qg-btn--gold,html body.home #qg-home a.qg-btn--gold{display:inline-flex !important;align-items:center !important;justify-content:center !important;background:linear-gradient(135deg,#D4B47A,#C9A86C,#B8860B) !important;-webkit-background-clip:initial !important;background-clip:initial !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;border:none !important;border-radius:var(--m-pill) !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:800 !important;padding:14px 28px !important;text-decoration:none !important;box-shadow:var(--m-gold-shadow) !important;min-height:48px !important;}
html body.home #qg-home .qg-btn--primary,html body.home #qg-home a.qg-btn--primary{display:flex !important;text-align:center !important;align-items:center !important;justify-content:center !important;background:linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;-webkit-background-clip:initial !important;background-clip:initial !important;color:var(--qg-plum,#1C0A2E) !important;-webkit-text-fill-color:var(--qg-plum,#1C0A2E) !important;border:none !important;border-radius:var(--m-radius) !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;padding:14px 28px !important;text-decoration:none !important;margin-top:16px !important;min-height:48px !important;}
html body.home #qg-home .qg-btn--ghost,html body.home #qg-home a.qg-btn--ghost{display:inline-flex !important;align-items:center !important;justify-content:center !important;background:rgba(212,175,106,.08) !important;border:1.5px solid rgba(212,175,106,.55) !important;color:var(--qg-gold,#D4AF6A) !important;-webkit-text-fill-color:var(--qg-gold,#D4AF6A) !important;border-radius:var(--m-pill) !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;padding:14px 28px !important;text-decoration:none !important;min-height:48px !important;}
html body.home #qg-home .qg-btn--outline-gold,html body.home #qg-home a.qg-btn--outline-gold{display:flex !important;text-align:center !important;align-items:center !important;justify-content:center !important;background:transparent !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;border:1.5px solid rgba(201,168,108,0.6) !important;border-radius:var(--m-pill) !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;padding:13px 28px !important;text-decoration:none !important;min-height:48px !important;}
html body.home #qg-home .qg-center{text-align:center !important;}

/* ============================================================
   HERO - full screen cinematic, Flutter banner style
   ============================================================ */
html body.home #qg-home .qg-hero{min-height:100dvh !important;min-height:100svh !important;min-height:600px !important;position:relative !important;overflow:hidden !important;padding:0 !important;background:var(--m-deep) !important;display:flex !important;flex-direction:column !important;}
html body.home #qg-home .qg-hero__ornament,html body.home #qg-home .qg-hero__petals,html body.home #qg-home .qg-hero [class*="scroll"]{display:none !important;}
html body.home #qg-home .qg-hero__video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;object-position:center top !important;z-index:1 !important;}
html body.home #qg-home .qg-hero__overlay{position:absolute !important;inset:0 !important;z-index:2 !important;background:linear-gradient(180deg,rgba(10,4,22,0.06) 0%,rgba(10,4,22,0) 18%,rgba(10,4,22,0.22) 52%,rgba(10,4,22,0.55) 78%,rgba(10,4,22,0.72) 100%) !important;}
html body.home #qg-home .qg-hero__live-ticker{position:absolute !important;top:14px !important;left:50% !important;transform:translateX(-50%) !important;max-width:calc(100vw - 32px) !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;z-index:10 !important;background:rgba(255,255,255,0.12) !important;backdrop-filter:blur(8px) !important;-webkit-backdrop-filter:blur(8px) !important;border:1px solid rgba(255,255,255,0.2) !important;border-radius:var(--m-pill) !important;padding:6px 14px !important;font-family:'DM Sans',sans-serif !important;font-size:0.75rem !important;color:rgba(255,255,255,0.9) !important;-webkit-text-fill-color:rgba(255,255,255,0.9) !important;}
html body.home #qg-home .qg-hero__live-dot{display:inline-block !important;width:6px !important;height:6px !important;border-radius:50% !important;background:#4db87a !important;margin-right:6px !important;vertical-align:middle !important;animation:heroLivePulse 1.5s ease-in-out infinite !important;}
@keyframes heroLivePulse{0%,100%{opacity:1;}50%{opacity:0.4;}}
html body.home #qg-home .qg-hero__content{padding:80px 20px 28px !important;z-index:6 !important;position:relative !important;margin-top:auto !important;}
html body.home #qg-home .qg-hero__badge{display:inline-block !important;font-family:'DM Sans',sans-serif !important;font-size:0.62rem !important;font-weight:700 !important;letter-spacing:0.22em !important;text-transform:uppercase !important;color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;background:none !important;margin-bottom:12px !important;}
html body.home #qg-home .qg-hero__urgency{display:inline-flex !important;align-items:center !important;gap:6px !important;background:rgba(75,184,120,0.15) !important;border:1px solid rgba(75,184,120,0.4) !important;border-radius:var(--m-pill) !important;padding:6px 14px !important;margin-bottom:16px !important;font-family:'DM Sans',sans-serif !important;font-size:0.78rem !important;font-weight:600 !important;color:#6cdea0 !important;-webkit-text-fill-color:#6cdea0 !important;}
html body.home #qg-home .qg-hero__urgency-dot{display:inline-block !important;width:7px !important;height:7px !important;border-radius:50% !important;background:#4db87a !important;box-shadow:0 0 0 3px rgba(77,184,122,0.25) !important;animation:urgencyPulse 1.8s ease-in-out infinite !important;}
@keyframes urgencyPulse{0%,100%{box-shadow:0 0 0 3px rgba(77,184,122,0.25);}50%{box-shadow:0 0 0 6px rgba(77,184,122,0.1);}}
html body.home #qg-home .qg-hero__content h1{font-family:'Playfair Display',serif !important;font-size:clamp(2.4rem,10vw,3.4rem) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;line-height:1.08 !important;margin:0 0 0.6rem !important;}
html body.home #qg-home .qg-hero__content h1 em{display:block !important;font-style:italic !important;background:linear-gradient(95deg,#E8C97A,#D4AF6A,#E8A87C) !important;-webkit-background-clip:text !important;background-clip:text !important;-webkit-text-fill-color:transparent !important;}
html body.home #qg-home .qg-hero__content > p{color:rgba(255,255,255,0.82) !important;-webkit-text-fill-color:rgba(255,255,255,0.82) !important;background:none !important;font-size:0.95rem !important;line-height:1.6 !important;margin:0 0 20px !important;}
html body.home #qg-home .qg-hero__cta{display:flex !important;flex-direction:column !important;gap:10px !important;}
html body.home #qg-home .qg-hero__cta .qg-btn--gold,html body.home #qg-home .qg-hero__cta .qg-btn--ghost{width:100% !important;}
html body.home #qg-home .qg-hero__proof{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:0 !important;margin-top:20px !important;background:rgba(255,255,255,0.06) !important;border:1px solid rgba(255,255,255,0.12) !important;border-radius:16px !important;overflow:hidden !important;}
html body.home #qg-home .qg-hero__proof-item{padding:12px 4px !important;text-align:center !important;border-right:1px solid rgba(255,255,255,0.08) !important;}
html body.home #qg-home .qg-hero__proof-item:last-child{border-right:none !important;}
html body.home #qg-home .qg-hero__proof-item strong{display:block !important;font-family:'Playfair Display',serif !important;font-size:0.88rem !important;font-weight:700 !important;color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;background:none !important;margin-bottom:2px !important;}
html body.home #qg-home .qg-hero__proof-item span{font-family:'DM Sans',sans-serif !important;font-size:0.5rem !important;font-weight:600 !important;letter-spacing:0.06em !important;text-transform:uppercase !important;color:rgba(255,255,255,0.45) !important;-webkit-text-fill-color:rgba(255,255,255,0.45) !important;background:none !important;}
html body.home #qg-home .qg-hero__proof-divider{display:none !important;}

/* PRESS */
html body.home #qg-home .qg-press{background:var(--m-white) !important;border-bottom:1px solid var(--m-border-rose) !important;padding-left:0 !important;padding-right:0 !important;}
html body.home #qg-home .qg-press__inner{padding:0 !important;}
html body.home #qg-home .qg-press__label{font-family:'DM Sans',sans-serif !important;font-size:0.58rem !important;font-weight:700 !important;letter-spacing:0.24em !important;text-transform:uppercase !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;text-align:center !important;display:block !important;margin-bottom:12px !important;}
html body.home #qg-home .qg-press__logos{display:flex !important;gap:0 !important;overflow-x:auto !important;scrollbar-width:none !important;padding:0 16px 4px !important;align-items:center !important;justify-content:center !important;flex-wrap:wrap !important;}
html body.home #qg-home .qg-press__logos::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-press__logo{padding:4px 14px !important;flex-shrink:0 !important;border-right:1px solid var(--m-border) !important;}
html body.home #qg-home .qg-press__logo:last-child{border-right:none !important;}
html body.home #qg-home .qg-press__svg{height:24px !important;width:auto !important;color:var(--m-plum) !important;opacity:0.45 !important;}

/* TRUST BAR - 2x3 grid (FIX: overflow) */
html body.home #qg-home .qg-trust-bar{background:var(--m-white) !important;}
html body.home #qg-home .qg-trust-bar__inner{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:1px !important;background:var(--m-border) !important;border:1px solid var(--m-border) !important;border-radius:var(--m-radius) !important;overflow:hidden !important;margin:0 !important;}
html body.home #qg-home .qg-trust-bar__divider{display:none !important;}
html body.home #qg-home .qg-trust-bar__item{background:var(--m-white) !important;padding:18px 12px !important;text-align:center !important;display:flex !important;flex-direction:column !important;align-items:center !important;gap:4px !important;}
html body.home #qg-home .qg-trust-bar__item strong{font-family:'Playfair Display',serif !important;font-size:1.25rem !important;font-weight:700 !important;color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;display:block !important;}
html body.home #qg-home .qg-trust-bar__item span{font-family:'DM Sans',sans-serif !important;font-size:0.62rem !important;font-weight:600 !important;letter-spacing:0.08em !important;text-transform:uppercase !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}

/* FLASH DEALS */
html body.home #qg-home .qg-flash-deals{background:var(--m-white) !important;padding-left:16px !important;padding-right:0 !important;}
html body.home #qg-home .qg-flash-deals__head{display:flex !important;align-items:center !important;gap:8px !important;margin-bottom:14px !important;padding-right:16px !important;}
html body.home #qg-home .qg-flash-deals__live-dot{width:8px !important;height:8px !important;border-radius:50% !important;background:var(--m-rose) !important;flex-shrink:0 !important;animation:livePulse 1.5s ease-in-out infinite !important;}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.5;transform:scale(0.82);}}
html body.home #qg-home .qg-flash-deals__title{font-family:'Playfair Display',serif !important;font-size:1.1rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;flex:1 !important;}
html body.home #qg-home .qg-flash-deals__expires,html body.home #qg-home #qgDealsCountdown{background:rgba(212,114,140,0.1) !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;border:1px solid rgba(212,114,140,0.3) !important;font-family:'DM Sans',sans-serif !important;font-size:0.72rem !important;font-weight:700 !important;padding:5px 12px !important;border-radius:var(--m-pill) !important;}
html body.home #qg-home .qg-deals-track{display:flex !important;gap:10px !important;overflow-x:auto !important;scrollbar-width:none !important;padding-right:24px !important;padding-bottom:4px !important;scroll-snap-type:x proximity !important;}
html body.home #qg-home .qg-deals-track::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-deal-chip{flex-shrink:0 !important;min-width:min(62vw,240px) !important;scroll-snap-align:start !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;padding:16px !important;border-radius:16px !important;border:1.5px solid rgba(0,0,0,0.07) !important;text-decoration:none !important;}
html body.home #qg-home .qg-deal-chip__label{font-family:'Playfair Display',serif !important;font-size:0.95rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin-bottom:4px !important;}
html body.home #qg-home .qg-deal-chip__time{display:flex !important;align-items:center !important;gap:5px !important;}
html body.home #qg-home .qg-deal-chip__time-dot{width:6px !important;height:6px !important;border-radius:50% !important;background:#4db87a !important;flex-shrink:0 !important;}
html body.home #qg-home .qg-deal-chip__time-text{font-family:'DM Sans',sans-serif !important;font-size:0.72rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}
html body.home #qg-home .qg-deal-chip__badge{flex-shrink:0 !important;}
html body.home #qg-home .qg-deal-chip__discount{display:inline-block !important;background:var(--m-rose) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:800 !important;padding:8px 14px !important;border-radius:10px !important;white-space:nowrap !important;}

/* PACKAGES - horizontal snap (FIX: min-height:auto) */
html body.home #qg-home .qg-packages{background:var(--m-white) !important;padding-left:16px !important;padding-right:0 !important;}
html body.home #qg-home .qg-packages-track{display:flex !important;gap:14px !important;overflow-x:auto !important;scrollbar-width:none !important;padding-right:24px !important;padding-bottom:6px !important;scroll-snap-type:x mandatory !important;}
html body.home #qg-home .qg-packages-track::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-pkg-card{flex-shrink:0 !important;min-width:min(72vw,280px) !important;min-height:auto !important;scroll-snap-align:start !important;background:var(--m-bg) !important;border:1.5px solid var(--m-border-gold) !important;border-radius:20px !important;padding:18px 16px !important;display:flex !important;flex-direction:column !important;gap:8px !important;box-shadow:var(--m-card-shadow) !important;text-decoration:none !important;position:relative !important;overflow:hidden !important;}
html body.home #qg-home .qg-pkg-card::before{content:'' !important;position:absolute !important;top:0 !important;left:0 !important;right:0 !important;height:3px !important;background:linear-gradient(90deg,var(--pkg-color,var(--m-rose)),var(--pkg-color-2,var(--m-gold))) !important;}
html body.home #qg-home .qg-pkg-card__header{display:flex !important;align-items:center !important;justify-content:space-between !important;}
html body.home #qg-home .qg-pkg-card__emoji{font-size:1.4rem !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-pkg-card__tag{font-family:'DM Sans',sans-serif !important;font-size:0.58rem !important;font-weight:800 !important;letter-spacing:0.1em !important;text-transform:uppercase !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:var(--pkg-color,var(--m-rose)) !important;padding:3px 10px !important;border-radius:var(--m-pill) !important;}
html body.home #qg-home .qg-pkg-card__title{font-family:'Playfair Display',serif !important;font-size:1.1rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-pkg-card__subtitle{font-family:'DM Sans',sans-serif !important;font-size:0.78rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-pkg-card__includes{list-style:none !important;padding:0 !important;margin:0 !important;display:flex !important;flex-wrap:wrap !important;gap:6px !important;}
html body.home #qg-home .qg-pkg-card__includes li{font-family:'DM Sans',sans-serif !important;font-size:0.72rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:rgba(59,31,58,0.05) !important;padding:3px 10px !important;border-radius:var(--m-pill) !important;}
html body.home #qg-home .qg-pkg-card__footer{display:flex !important;align-items:center !important;justify-content:space-between !important;margin-top:4px !important;}
html body.home #qg-home .qg-pkg-card__price{font-family:'Playfair Display',serif !important;font-size:1.2rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-pkg-card__btn{background:linear-gradient(135deg,#D4B47A,#C9A86C) !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;font-family:'DM Sans',sans-serif !important;font-size:0.78rem !important;font-weight:800 !important;padding:8px 18px !important;border-radius:var(--m-pill) !important;}

/* SERVICES */
html body.home #qg-home .qg-services{background:var(--m-bg) !important;}
html body.home #qg-home .qg-promo-banner{background:var(--m-plum) !important;border-radius:var(--m-radius) !important;padding:16px 18px !important;display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:20px !important;flex-wrap:nowrap !important;}
html body.home #qg-home .qg-promo-banner__icon{font-size:1.8rem !important;flex-shrink:0 !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-promo-banner__text{flex:1 !important;min-width:0 !important;}
html body.home #qg-home .qg-promo-banner__text strong{display:block !important;font-size:0.88rem !important;font-weight:700 !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;margin:0 0 3px !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;}
html body.home #qg-home .qg-promo-banner__text span,html body.home #qg-home .qg-promo-banner__text em{color:rgba(255,255,255,0.65) !important;-webkit-text-fill-color:rgba(255,255,255,0.65) !important;background:none !important;font-size:0.72rem !important;font-style:normal !important;}
html body.home #qg-home .qg-promo-banner__text em{color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;font-weight:700 !important;}
html body.home #qg-home .qg-promo-banner__cta{flex-shrink:0 !important;background:linear-gradient(135deg,#D4B47A,#C9A86C) !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;font-size:0.75rem !important;font-weight:800 !important;padding:10px 14px !important;border-radius:var(--m-pill) !important;text-decoration:none !important;white-space:nowrap !important;}
html body.home #qg-home .qg-services__urgency{display:flex !important;align-items:center !important;justify-content:center !important;gap:7px !important;background:rgba(75,185,120,0.08) !important;border:1.5px solid rgba(75,185,120,0.28) !important;color:var(--m-green) !important;-webkit-text-fill-color:var(--m-green) !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:600 !important;padding:9px 20px !important;border-radius:var(--m-pill) !important;margin:0 auto 18px !important;width:fit-content !important;}
html body.home #qg-home .qg-urgency-dot{width:7px !important;height:7px !important;border-radius:50% !important;background:#4db87a !important;flex-shrink:0 !important;animation:urgencyPulse 1.8s ease-in-out infinite !important;}
/* Filter tabs - horizontal scroll, no wrap (FIX) */
html body.home #qg-home .qg-services-filter{display:flex !important;gap:8px !important;overflow-x:auto !important;scrollbar-width:none !important;padding-bottom:6px !important;margin-bottom:20px !important;flex-wrap:nowrap !important;-webkit-overflow-scrolling:touch !important;}
html body.home #qg-home .qg-services-filter::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-filter-tab,html body.home #qg-home .qg-filter-btn{flex-shrink:0 !important;background:var(--m-white) !important;border:1.5px solid var(--m-border) !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:500 !important;padding:9px 18px !important;border-radius:var(--m-pill) !important;cursor:pointer !important;white-space:nowrap !important;min-height:40px !important;}
html body.home #qg-home .qg-filter-tab.active,html body.home #qg-home .qg-filter-tab[aria-selected="true"],html body.home #qg-home .qg-filter-btn.active{background:var(--m-plum) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border-color:var(--m-plum) !important;}
html body.home #qg-home .qg-services-grid{display:flex !important;flex-direction:column !important;gap:16px !important;}
html body.home #qg-home .qg-service-card{background:var(--m-white) !important;border:1px solid var(--m-border-gold) !important;border-radius:var(--m-radius) !important;overflow:hidden !important;box-shadow:var(--m-card-shadow) !important;display:flex !important;flex-direction:column !important;}
html body.home #qg-home .qg-service-card__link{text-decoration:none !important;}
html body.home #qg-home .qg-service-card__img{position:relative !important;aspect-ratio:16/9 !important;overflow:hidden !important;}
html body.home #qg-home .qg-service-card__img img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;object-position:center top !important;}
html body.home #qg-home .qg-service-card__badge{position:absolute !important;top:10px !important;left:10px !important;background:rgba(192,88,120,0.92) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.62rem !important;font-weight:800 !important;letter-spacing:0.05em !important;text-transform:uppercase !important;padding:4px 12px !important;border-radius:8px !important;z-index:3 !important;}
html body.home #qg-home .qg-badge--popular{background:var(--m-plum) !important;color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;}
html body.home #qg-home .qg-service-card__bookings{position:absolute !important;bottom:10px !important;left:10px !important;background:rgba(42,18,41,0.88) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.62rem !important;font-weight:700 !important;padding:4px 10px !important;border-radius:8px !important;z-index:3 !important;}
html body.home #qg-home .qg-service-card__body{padding:14px 16px 10px !important;background:var(--m-white) !important;}
html body.home #qg-home .qg-service-card__icon{font-size:1.3rem !important;display:block !important;margin-bottom:6px !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-service-card__body h3{font-family:'Playfair Display',serif !important;font-size:1.05rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 4px !important;}
html body.home #qg-home .qg-service-card__body p{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.82rem !important;margin:0 0 10px !important;}
html body.home #qg-home .qg-service-card__meta{display:flex !important;align-items:center !important;justify-content:space-between !important;}
html body.home #qg-home .qg-service-card__price{font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;}
html body.home #qg-home .qg-service-card__duration{font-size:0.77rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}
html body.home #qg-home .qg-service-card__book-btn{display:flex !important;align-items:center !important;justify-content:center !important;margin:10px 16px 16px !important;background:var(--m-rose) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;text-align:center !important;padding:14px !important;border-radius:14px !important;font-family:'DM Sans',sans-serif !important;font-size:0.88rem !important;font-weight:700 !important;text-decoration:none !important;min-height:48px !important;}

/* HOW IT WORKS */
html body.home #qg-home .qg-how{background:var(--m-white) !important;}
html body.home #qg-home .qg-how__steps{display:flex !important;flex-direction:row !important;gap:0 !important;align-items:flex-start !important;background:var(--m-white) !important;border:1px solid var(--m-border) !important;border-radius:var(--m-radius) !important;padding:24px 8px !important;overflow:hidden !important;}
html body.home #qg-home .qg-step{flex:1 !important;text-align:center !important;padding:0 8px !important;}
html body.home #qg-home .qg-step__connector{width:1px !important;background:var(--m-border) !important;align-self:stretch !important;flex-shrink:0 !important;margin-top:10px !important;}
html body.home #qg-home .qg-step__connector::after{content:none !important;}
html body.home #qg-home .qg-step__num{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:28px !important;height:28px !important;border-radius:50% !important;background:rgba(212,114,140,0.12) !important;background-clip:initial !important;-webkit-background-clip:initial !important;font-family:'DM Sans',sans-serif !important;font-size:0.7rem !important;font-weight:800 !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-step__icon{font-size:1.6rem !important;display:block !important;margin:0 auto 8px !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-step h3{font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 4px !important;}
html body.home #qg-home .qg-step p{font-size:0.7rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;line-height:1.45 !important;margin:0 !important;}
html body.home #qg-home .qg-how__promise{display:flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;margin-top:16px !important;background:rgba(201,168,108,0.1) !important;border:1px solid var(--m-border-gold) !important;border-radius:var(--m-pill) !important;padding:10px 18px !important;font-family:'DM Sans',sans-serif !important;font-size:0.78rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;text-align:center !important;flex-wrap:wrap !important;}
html body.home #qg-home .qg-how__promise strong{color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;font-weight:800 !important;}
html body.home #qg-home .qg-how__promise-icon{-webkit-text-fill-color:initial !important;background:none !important;}

/* SAFETY */
html body.home #qg-home .qg-safety{background:var(--m-bg) !important;}
html body.home #qg-home .qg-safety .qg-section-head h2{color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-safety .qg-section-head h2 span{color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;}
html body.home #qg-home .qg-safety .qg-section-head p,html body.home #qg-home .qg-safety .qg-eyebrow{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-safety__grid{display:flex !important;flex-direction:column !important;gap:12px !important;}
html body.home #qg-home .qg-safety-card{background:var(--m-white) !important;border:1px solid var(--m-border) !important;border-radius:var(--m-radius) !important;padding:20px !important;display:flex !important;gap:14px !important;align-items:flex-start !important;box-shadow:var(--m-card-shadow) !important;}
html body.home #qg-home .qg-safety-card__icon{font-size:1.8rem !important;flex-shrink:0 !important;-webkit-text-fill-color:initial !important;background:none !important;line-height:1 !important;width:48px !important;text-align:center !important;}
html body.home #qg-home .qg-safety-card h3{font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;background:none !important;margin:0 0 4px !important;}
html body.home #qg-home .qg-safety-card p{font-size:0.8rem !important;line-height:1.55 !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;margin:0 !important;}

/* ARTISTS - horizontal scroll (FIX: min card width 220px) */
html body.home #qg-home .qg-artists{background:var(--m-bg) !important;}
html body.home #qg-home .qg-artists .qg-section-head h2 span{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;font-style:italic !important;}
html body.home #qg-home .qg-artists-grid{display:flex !important;flex-direction:row !important;overflow-x:auto !important;gap:14px !important;scroll-snap-type:x mandatory !important;scrollbar-width:none !important;padding-bottom:4px !important;padding-right:16px !important;}
html body.home #qg-home .qg-artists-grid::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-artist-card{flex-shrink:0 !important;width:min(62vw,220px) !important;scroll-snap-align:start !important;background:var(--m-white) !important;border-radius:20px !important;overflow:hidden !important;box-shadow:0 4px 20px rgba(59,31,58,0.1) !important;border:1px solid var(--m-border-gold) !important;display:flex !important;flex-direction:column !important;}
html body.home #qg-home .qg-artist-media{position:relative !important;aspect-ratio:3/4 !important;overflow:hidden !important;}
html body.home #qg-home .qg-artist-media img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;object-position:top !important;}
html body.home #qg-home .qg-artist-avail{position:absolute !important;bottom:0 !important;left:0 !important;right:0 !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:800 !important;letter-spacing:0.05em !important;text-transform:uppercase !important;padding:8px 10px !important;text-align:center !important;z-index:3 !important;}
html body.home #qg-home .qg-avail--open{background:rgba(22,125,60,0.92) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
html body.home #qg-home .qg-avail--busy{background:rgba(192,88,120,0.92) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
html body.home #qg-home .qg-artist-body{padding:14px 14px 10px !important;background:var(--m-white) !important;flex:1 !important;}
html body.home #qg-home .qg-artist-body h3{font-family:'Playfair Display',serif !important;font-size:0.92rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 3px !important;display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:5px !important;}
html body.home #qg-home .qg-artist-verified{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:16px !important;height:16px !important;background:var(--m-gold) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border-radius:50% !important;font-size:0.5rem !important;font-weight:900 !important;flex-shrink:0 !important;}
html body.home #qg-home .qg-artist-body p{font-size:0.75rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;margin:0 0 5px !important;}
html body.home #qg-home .qg-artist-rating{display:flex !important;align-items:center !important;gap:4px !important;margin-bottom:4px !important;}
html body.home #qg-home .qg-artist-stars{color:#E8A020 !important;-webkit-text-fill-color:#E8A020 !important;background:none !important;font-size:0.68rem !important;}
html body.home #qg-home .qg-artist-count,html body.home #qg-home .qg-artist-meta{font-size:0.65rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;display:block !important;}
html body.home #qg-home .qg-artist-profile-btn{display:flex !important;align-items:center !important;justify-content:center !important;padding:12px !important;min-height:44px !important;background:linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;color:var(--qg-plum,#1C0A2E) !important;-webkit-text-fill-color:var(--qg-plum,#1C0A2E) !important;text-align:center !important;font-family:'DM Sans',sans-serif !important;font-size:0.75rem !important;font-weight:700 !important;text-decoration:none !important;border-radius:0 0 20px 20px !important;}

/* BEFORE & AFTER - contain fixes iOS Safari clip-path bleed */
html body.home #qg-home .qg-before-after{background:var(--m-bg) !important;}
html body.home #qg-home .qg-ba-grid{display:flex !important;flex-direction:column !important;gap:16px !important;}
html body.home #qg-home .qg-ba-card{background:var(--m-white) !important;border-radius:var(--m-radius) !important;overflow:hidden !important;box-shadow:var(--m-card-shadow) !important;border:1px solid var(--m-border-gold) !important;}
html body.home #qg-home .qg-ba-slider{position:relative !important;aspect-ratio:4/3 !important;overflow:hidden !important;cursor:ew-resize !important;contain:layout !important;}
html body.home #qg-home .qg-ba-before,html body.home #qg-home .qg-ba-after{position:absolute !important;inset:0 !important;overflow:hidden !important;}
html body.home #qg-home .qg-ba-before img,html body.home #qg-home .qg-ba-after img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;}
html body.home #qg-home .qg-ba-after{width:50% !important;}
html body.home #qg-home .qg-ba-label{position:absolute !important;bottom:10px !important;font-family:'DM Sans',sans-serif !important;font-size:0.65rem !important;font-weight:800 !important;letter-spacing:0.08em !important;text-transform:uppercase !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:rgba(0,0,0,0.5) !important;padding:4px 10px !important;border-radius:6px !important;z-index:3 !important;}
html body.home #qg-home .qg-ba-label--before{left:10px !important;}
html body.home #qg-home .qg-ba-label--after{right:10px !important;}
html body.home #qg-home .qg-ba-handle{position:absolute !important;top:0 !important;bottom:0 !important;left:50% !important;transform:translateX(-50%) !important;width:3px !important;background:#fff !important;z-index:5 !important;}
html body.home #qg-home .qg-ba-handle__line{display:none !important;}
html body.home #qg-home .qg-ba-handle__btn{position:absolute !important;top:50% !important;left:50% !important;transform:translate(-50%,-50%) !important;width:34px !important;height:34px !important;border-radius:50% !important;background:#fff !important;box-shadow:0 2px 8px rgba(0,0,0,0.3) !important;display:flex !important;align-items:center !important;justify-content:center !important;color:var(--m-plum) !important;}
html body.home #qg-home .qg-ba-info{padding:12px 16px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;background:var(--m-white) !important;}
html body.home #qg-home .qg-ba-info strong{font-family:'Playfair Display',serif !important;font-size:0.9rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-ba-info span{font-size:0.72rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}

/* TESTIMONIALS */
html body.home #qg-home .qg-testimonials{background:var(--m-white) !important;}
html body.home #qg-home .qg-testi-aggregate{display:flex !important;align-items:center !important;gap:8px !important;justify-content:center !important;margin-top:12px !important;}
html body.home #qg-home .qg-testi-agg-stars{color:#E8A020 !important;-webkit-text-fill-color:#E8A020 !important;background:none !important;font-size:0.85rem !important;letter-spacing:2px !important;}
html body.home #qg-home .qg-testi-agg-text{font-size:0.78rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-testi-agg-text strong{color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-testi-grid{display:flex !important;flex-direction:column !important;gap:12px !important;margin-top:20px !important;}
html body.home #qg-home .qg-testi{background:var(--m-bg) !important;border:1px solid var(--m-border) !important;border-radius:var(--m-radius) !important;padding:18px !important;box-shadow:var(--m-card-shadow) !important;}
html body.home #qg-home .qg-testi__stars{color:#E8A020 !important;-webkit-text-fill-color:#E8A020 !important;background:none !important;font-size:0.8rem !important;letter-spacing:2px !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-testi__body{font-family:'Playfair Display',serif !important;font-size:0.88rem !important;font-style:italic !important;line-height:1.6 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 14px !important;}
html body.home #qg-home .qg-testi__author{display:flex !important;align-items:center !important;gap:10px !important;}
html body.home #qg-home .qg-testi__avatar{width:36px !important;height:36px !important;border-radius:50% !important;background:linear-gradient(135deg,var(--m-rose),var(--m-gold)) !important;-webkit-background-clip:initial !important;background-clip:initial !important;color:#fff !important;-webkit-text-fill-color:#fff !important;display:flex !important;align-items:center !important;justify-content:center !important;font-family:'Playfair Display',serif !important;font-size:0.9rem !important;font-weight:700 !important;flex-shrink:0 !important;}
html body.home #qg-home .qg-testi__name{font-size:0.84rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 2px !important;}
html body.home #qg-home .qg-testi__city{font-size:0.7rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}

/* MEMBERSHIP - dark premium + shadow overflow fix */
html body.home #qg-home .qg-membership{background:linear-gradient(160deg,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 0%,#2A1229 60%,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 100%) !important;background-image:linear-gradient(160deg,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 0%,#2A1229 60%,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 100%) !important;}
html body.home #qg-home .qg-membership .qg-section-head h2,html body.home #qg-home .qg-membership__header h2{color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;}
html body.home #qg-home .qg-membership__header h2 span{color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;background:none !important;}
html body.home #qg-home .qg-membership__header p{color:rgba(255,255,255,0.65) !important;-webkit-text-fill-color:rgba(255,255,255,0.65) !important;background:none !important;}
html body.home #qg-home .qg-membership .qg-eyebrow{color:rgba(212,175,106,0.75) !important;-webkit-text-fill-color:rgba(212,175,106,0.75) !important;background:none !important;}
html body.home #qg-home .qg-membership__cards{display:flex !important;gap:14px !important;overflow-x:auto !important;scroll-snap-type:x mandatory !important;scrollbar-width:none !important;margin-top:20px !important;padding-bottom:4px !important;padding-left:16px !important;padding-right:16px !important;margin-left:-16px !important;margin-right:-16px !important;}
html body.home #qg-home .qg-membership__cards::-webkit-scrollbar{display:none !important;}
html body.home #qg-home .qg-membership-plan{flex-shrink:0 !important;min-width:min(80vw,300px) !important;scroll-snap-align:start !important;background:var(--m-white) !important;border:1.5px solid var(--m-border-gold) !important;border-radius:22px !important;padding:24px 20px 28px !important;display:flex !important;flex-direction:column !important;gap:4px !important;box-shadow:0 8px 32px rgba(0,0,0,0.22) !important;}
html body.home #qg-home .qg-membership-plan.qg-plan--featured,html body.home #qg-home .qg-membership-plan.qg-plan--elite{background:linear-gradient(160deg,#FFFDF5,#FFF7E0) !important;border-color:rgba(201,168,108,0.55) !important;}
html body.home #qg-home .qg-plan__badge{display:inline-block !important;background:rgba(201,168,108,0.15) !important;border:1px solid rgba(201,168,108,0.45) !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:800 !important;letter-spacing:0.14em !important;text-transform:uppercase !important;padding:5px 14px !important;border-radius:var(--m-pill) !important;margin-bottom:14px !important;align-self:flex-start !important;}
html body.home #qg-home .qg-plan__price{display:flex !important;align-items:baseline !important;gap:2px !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-plan__currency{font-size:1.1rem !important;font-weight:700 !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;}
html body.home #qg-home .qg-plan__amount{font-family:'Playfair Display',serif !important;font-size:2.6rem !important;font-weight:700 !important;line-height:1 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-plan__period{font-size:0.8rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;padding-bottom:5px !important;}
html body.home #qg-home .qg-plan__perks{list-style:none !important;padding:0 !important;margin:12px 0 20px !important;display:flex !important;flex-direction:column !important;gap:9px !important;}
html body.home #qg-home .qg-plan__perks li{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.85rem !important;line-height:1.5 !important;}
html body.home #qg-home .qg-membership-plan .qg-btn{display:flex !important;width:100% !important;text-align:center !important;align-items:center !important;justify-content:center !important;padding:14px !important;border-radius:var(--m-pill) !important;font-size:0.9rem !important;font-weight:800 !important;text-decoration:none !important;margin-top:auto !important;min-height:48px !important;}
html body.home #qg-home .qg-membership__cta p{text-align:center !important;margin-top:14px !important;color:rgba(255,255,255,0.38) !important;-webkit-text-fill-color:rgba(255,255,255,0.38) !important;background:none !important;font-size:0.75rem !important;}

/* SEASONAL - gradient fallback (FIX: relative bg-image URLs break in combined CSS) */
html body.home #qg-home .qg-seasonal{background:var(--m-bg) !important;}
html body.home #qg-home .qg-seasonal .qg-section-head h2 span{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;font-style:italic !important;}
html body.home #qg-home .qg-seasonal__grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;}
html body.home #qg-home .qg-seasonal-card{border-radius:18px !important;overflow:hidden !important;min-height:240px !important;position:relative !important;display:flex !important;flex-direction:column !important;justify-content:flex-end !important;background-size:cover !important;background-position:center !important;}
html body.home #qg-home .qg-seasonal-card--bridal{background-color:#5B2A56 !important;background-image:linear-gradient(160deg,#5B2A56 0%,#8B3070 100%) !important;}
html body.home #qg-home .qg-seasonal-card--diwali{background-color:#7A4A0A !important;background-image:linear-gradient(160deg,#7A4A0A 0%,#C47820 100%) !important;}
html body.home #qg-home .qg-seasonal-card--office{background-color:#1A4060 !important;background-image:linear-gradient(160deg,#1A4060 0%,#2A6090 100%) !important;}
html body.home #qg-home .qg-seasonal-card--gift{background-color:#4A2080 !important;background-image:linear-gradient(160deg,#4A2080 0%,#7040B0 100%) !important;}
html body.home #qg-home .qg-seasonal-card__overlay{position:absolute !important;inset:0 !important;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,0.45) 100%) !important;}
html body.home #qg-home .qg-seasonal-card__body{position:relative !important;z-index:2 !important;padding:14px 14px 16px !important;}
html body.home #qg-home .qg-seasonal-card__tag{font-family:'DM Sans',sans-serif !important;font-size:0.58rem !important;font-weight:800 !important;letter-spacing:0.1em !important;text-transform:uppercase !important;color:rgba(255,255,255,0.9) !important;-webkit-text-fill-color:rgba(255,255,255,0.9) !important;background:rgba(255,255,255,0.18) !important;border:1px solid rgba(255,255,255,0.3) !important;padding:3px 10px !important;border-radius:var(--m-pill) !important;display:inline-block !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-seasonal-card__body h3{font-family:'Playfair Display',serif !important;font-size:1rem !important;font-weight:700 !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;margin:0 0 5px !important;}
html body.home #qg-home .qg-seasonal-card__body p{font-size:0.72rem !important;line-height:1.5 !important;color:rgba(255,255,255,0.75) !important;-webkit-text-fill-color:rgba(255,255,255,0.75) !important;background:none !important;margin:0 0 8px !important;display:-webkit-box !important;-webkit-line-clamp:2 !important;-webkit-box-orient:vertical !important;overflow:hidden !important;}
html body.home #qg-home .qg-seasonal-card__price{font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:700 !important;color:#FFD98A !important;-webkit-text-fill-color:#FFD98A !important;background:none !important;margin-bottom:8px !important;}
html body.home #qg-home .qg-seasonal-card .qg-btn,html body.home #qg-home .qg-seasonal-card a[class*="btn"]{display:inline-block !important;background:rgba(255,255,255,0.2) !important;backdrop-filter:blur(8px) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid rgba(255,255,255,0.35) !important;padding:8px 16px !important;border-radius:10px !important;font-family:'DM Sans',sans-serif !important;font-size:0.76rem !important;font-weight:700 !important;text-decoration:none !important;box-shadow:none !important;}

/* BRANDS */
html body.home #qg-home .qg-brands{background:var(--m-white) !important;border-top:1px solid var(--m-border-rose) !important;border-bottom:1px solid var(--m-border-rose) !important;}
html body.home #qg-home .qg-brands__eyebrow{font-family:'DM Sans',sans-serif !important;font-size:0.58rem !important;font-weight:700 !important;letter-spacing:0.22em !important;text-transform:uppercase !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;text-align:center !important;margin-bottom:14px !important;display:block !important;}
html body.home #qg-home .qg-brands__track-wrap{overflow:visible !important;}
html body.home #qg-home .qg-brands__track{display:flex !important;flex-wrap:wrap !important;gap:8px !important;justify-content:center !important;animation:none !important;transform:none !important;will-change:auto !important;}
html body.home #qg-home .qg-brands__track span:nth-child(n+13){display:none !important;}
html body.home #qg-home .qg-brand-pill,html body.home #qg-home .qg-brands__track span{display:inline-flex !important;align-items:center !important;background:var(--m-bg) !important;border:1.5px solid var(--m-border) !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:500 !important;padding:7px 16px !important;border-radius:var(--m-pill) !important;white-space:nowrap !important;}

/* GUARANTEE - 2x2 grid */
html body.home #qg-home .qg-guarantee{background:var(--m-bg) !important;}
html body.home #qg-home .qg-guarantee__inner{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;}
html body.home #qg-home .qg-guarantee__divider{display:none !important;}
html body.home #qg-home .qg-guarantee__badge{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;background:var(--m-white) !important;border:1px solid var(--m-border) !important;border-radius:18px !important;padding:20px 14px !important;gap:8px !important;box-shadow:var(--m-card-shadow) !important;}
html body.home #qg-home .qg-guarantee__icon{font-size:1.8rem !important;display:block !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-guarantee__badge div strong,html body.home #qg-home .qg-guarantee__badge strong{display:block !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;line-height:1.3 !important;margin:0 0 3px !important;text-align:center !important;}
html body.home #qg-home .qg-guarantee__badge div span,html body.home #qg-home .qg-guarantee__badge span{display:block !important;font-family:'DM Sans',sans-serif !important;font-size:0.7rem !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;line-height:1.4 !important;text-align:center !important;}

/* APP DOWNLOAD - hide phone mock on mobile */
html body.home #qg-home .qg-app{background:var(--m-bg) !important;}
html body.home #qg-home .qg-app .qg-section-head h2{color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-app .qg-section-head h2 span{background:linear-gradient(90deg,var(--m-rose),var(--m-gold)) !important;-webkit-background-clip:text !important;background-clip:text !important;-webkit-text-fill-color:transparent !important;font-style:italic !important;}
html body.home #qg-home .qg-app .qg-section-head p{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-app__inner{display:flex !important;flex-direction:column !important;gap:1.5rem !important;text-align:center !important;margin-top:20px !important;}
html body.home #qg-home .qg-app__text h3{font-family:'Playfair Display',serif !important;font-size:1.15rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 10px !important;}
html body.home #qg-home .qg-app__text > p{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.88rem !important;line-height:1.6 !important;margin:0 0 14px !important;}
html body.home #qg-home .qg-app__features{list-style:none !important;padding:0 !important;margin:0 0 18px !important;display:flex !important;flex-direction:column !important;gap:9px !important;text-align:left !important;}
html body.home #qg-home .qg-app__features li{display:flex !important;align-items:center !important;gap:8px !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;font-size:0.88rem !important;font-weight:500 !important;}
html body.home #qg-home .qg-store{display:flex !important;flex-direction:column !important;gap:10px !important;align-items:center !important;}
html body.home #qg-home .qg-store__btn{display:flex !important;align-items:center !important;gap:10px !important;background:var(--m-plum) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:none !important;border-radius:14px !important;padding:14px 24px !important;font-family:'DM Sans',sans-serif !important;font-size:0.88rem !important;font-weight:700 !important;text-decoration:none !important;box-shadow:0 6px 20px rgba(59,31,58,0.28) !important;width:220px !important;justify-content:center !important;min-height:52px !important;}
html body.home #qg-home .qg-store__btn svg{fill:#fff !important;}
html body.home #qg-home .qg-app__qr{display:none !important;}
html body.home #qg-home .qg-app__mock{display:none !important;}

/* FAQ - accordion (FIX: max-height 400px for long answers) */
html body.home #qg-home .qg-faq{background:var(--m-white) !important;}
html body.home #qg-home .qg-faq .qg-section-head h2 span{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;}
html body.home #qg-home .qg-faq__container{display:flex !important;flex-direction:column !important;gap:0 !important;border:1px solid var(--m-border) !important;border-radius:var(--m-radius) !important;overflow:hidden !important;}
html body.home #qg-home .qg-acc{border-bottom:1px solid var(--m-border) !important;background:var(--m-white) !important;}
html body.home #qg-home .qg-acc:last-of-type{border-bottom:none !important;}
html body.home #qg-home .qg-acc__header{width:100% !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;padding:16px 18px !important;background:none !important;border:none !important;cursor:pointer !important;font-family:'DM Sans',sans-serif !important;font-size:0.88rem !important;font-weight:600 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;text-align:left !important;}
html body.home #qg-home .qg-acc-icon{width:20px !important;height:20px !important;flex-shrink:0 !important;border:1.5px solid var(--m-border) !important;border-radius:50% !important;display:flex !important;align-items:center !important;justify-content:center !important;position:relative !important;}
html body.home #qg-home .qg-acc-icon::before,html body.home #qg-home .qg-acc-icon::after{content:'' !important;position:absolute !important;background:var(--m-rose-dark) !important;border-radius:2px !important;}
html body.home #qg-home .qg-acc-icon::before{width:8px !important;height:1.5px !important;}
html body.home #qg-home .qg-acc-icon::after{width:1.5px !important;height:8px !important;}
html body.home #qg-home .qg-acc.open .qg-acc-icon::after{display:none !important;}
html body.home #qg-home .qg-acc__content{overflow:hidden !important;max-height:0 !important;transition:max-height 0.32s ease !important;}
html body.home #qg-home .qg-acc.open .qg-acc__content{max-height:400px !important;}
html body.home #qg-home .qg-acc__content p{padding:0 18px 16px !important;font-size:0.82rem !important;line-height:1.65 !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;margin:0 !important;}
html body.home #qg-home .qg-acc__content p a{color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;}
html body.home #qg-home .qg-faq-cta{padding:16px 18px !important;font-family:'DM Sans',sans-serif !important;font-size:0.85rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:rgba(212,114,140,0.04) !important;display:flex !important;align-items:center !important;gap:10px !important;flex-wrap:wrap !important;}
html body.home #qg-home .qg-faq-chat-btn{display:inline-block !important;background:linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;color:var(--qg-plum,#1C0A2E) !important;-webkit-text-fill-color:var(--qg-plum,#1C0A2E) !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;font-weight:700 !important;padding:10px 18px !important;border-radius:var(--m-pill) !important;border:none !important;cursor:pointer !important;min-height:40px !important;}

/* REELS PREVIEW - dark plum, 2-col grid (FIX: was 3-col, too cramped) */
html body.home #qg-home .qg-reels-preview{background:var(--m-plum) !important;background-image:none !important;padding-left:16px !important;padding-right:16px !important;}
html body.home #qg-home .qg-reels-preview.qg-section-v10{background:var(--m-plum) !important;padding:28px 16px !important;}
html body.home #qg-home .qg-reels-preview .qg-section-header-v10 h2{color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;}
html body.home #qg-home .qg-reels-preview .qg-subtitle{color:rgba(255,255,255,0.65) !important;-webkit-text-fill-color:rgba(255,255,255,0.65) !important;background:none !important;}
html body.home #qg-home .qg-reels-preview .qg-rule-line{background:var(--m-gold) !important;}
html body.home #qg-home .qg-reels-preview .qg-see-all{color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;}
html body.home #qg-home .qg-reels-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;}
html body.home #qg-home .qg-reel-thumb{position:relative !important;border-radius:14px !important;overflow:hidden !important;aspect-ratio:3/4 !important;}
html body.home #qg-home .qg-reel-thumb img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;object-position:top !important;}
html body.home #qg-home .qg-reel-thumb__overlay{position:absolute !important;inset:0 !important;background:linear-gradient(to bottom,rgba(0,0,0,0.1) 0%,rgba(0,0,0,0.55) 100%) !important;z-index:1 !important;}
html body.home #qg-home .qg-reel-thumb__play{position:absolute !important;top:50% !important;left:50% !important;transform:translate(-50%,-50%) !important;width:36px !important;height:36px !important;border-radius:50% !important;background:rgba(255,255,255,0.25) !important;backdrop-filter:blur(4px) !important;display:flex !important;align-items:center !important;justify-content:center !important;z-index:3 !important;}
html body.home #qg-home .qg-reel-thumb__service-badge{position:absolute !important;top:8px !important;left:8px !important;right:8px !important;background:rgba(192,88,120,0.9) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:800 !important;padding:4px 8px !important;border-radius:8px !important;text-align:center !important;z-index:3 !important;}
html body.home #qg-home .qg-reel-thumb__meta{position:absolute !important;bottom:8px !important;left:8px !important;right:8px !important;z-index:3 !important;display:flex !important;align-items:center !important;justify-content:space-between !important;}
html body.home #qg-home .qg-reel-thumb__artist{font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:600 !important;color:rgba(255,255,255,0.9) !important;-webkit-text-fill-color:rgba(255,255,255,0.9) !important;background:none !important;}
html body.home #qg-home .qg-reel-thumb__likes{background:rgba(42,18,41,0.82) !important;backdrop-filter:blur(4px) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:700 !important;padding:3px 8px !important;border-radius:6px !important;}
html body.home #qg-home .qg-reels-preview a[class*="btn"]{display:block !important;text-align:center !important;margin-top:16px !important;background:rgba(255,255,255,0.12) !important;border:1px solid rgba(255,255,255,0.25) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;padding:13px !important;border-radius:var(--m-radius) !important;text-decoration:none !important;}

/* SECTION V10 STRIPS */
html body.home #qg-home .qg-section-v10{background:var(--m-bg) !important;}
html body.home #qg-home .qg-points-strip{background:var(--m-white) !important;border:1px solid var(--m-border-gold) !important;border-radius:var(--m-radius) !important;padding:22px 20px !important;box-shadow:var(--m-card-shadow) !important;display:flex !important;align-items:center !important;gap:16px !important;}
html body.home #qg-home .qg-points-strip__icon{font-size:2rem !important;flex-shrink:0 !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;}
html body.home #qg-home .qg-points-strip__body{flex:1 !important;}
html body.home #qg-home .qg-points-strip__title{font-family:'Playfair Display',serif !important;font-size:1.05rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:0 0 4px !important;}
html body.home #qg-home .qg-points-strip__desc{font-family:'DM Sans',sans-serif !important;font-size:0.8rem !important;line-height:1.55 !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-points-strip__btn{display:flex !important;align-items:center !important;flex-shrink:0 !important;background:linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;color:var(--qg-plum,#1C0A2E) !important;-webkit-text-fill-color:var(--qg-plum,#1C0A2E) !important;font-family:'DM Sans',sans-serif !important;font-size:0.78rem !important;font-weight:700 !important;padding:10px 16px !important;border-radius:var(--m-pill) !important;text-decoration:none !important;min-height:40px !important;}
html body.home #qg-home .qg-gift-glow{background:var(--m-white) !important;border:1px solid var(--m-border-gold) !important;border-radius:22px !important;padding:28px 22px !important;text-align:center !important;box-shadow:var(--m-card-shadow) !important;display:flex !important;flex-direction:column !important;align-items:center !important;gap:12px !important;}
html body.home #qg-home .qg-gift-glow__eyebrow{font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:700 !important;letter-spacing:0.22em !important;text-transform:uppercase !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;background:none !important;border:1.5px solid rgba(192,88,120,0.3) !important;padding:4px 16px !important;border-radius:var(--m-pill) !important;display:inline-block !important;margin-bottom:10px !important;}
html body.home #qg-home .qg-gift-glow__title{font-family:'Playfair Display',serif !important;font-size:1.65rem !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;line-height:1.15 !important;margin:0 0 8px !important;}
html body.home #qg-home .qg-gift-glow__title em{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;font-style:italic !important;}
html body.home #qg-home .qg-gift-glow__desc{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.88rem !important;line-height:1.6 !important;margin:0 0 14px !important;}
html body.home #qg-home .qg-gift-glow__btn{display:flex !important;align-items:center !important;background:linear-gradient(135deg,#D4B47A,#C9A86C) !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;font-family:'DM Sans',sans-serif !important;font-size:0.9rem !important;font-weight:700 !important;padding:14px 32px !important;border-radius:var(--m-pill) !important;text-decoration:none !important;box-shadow:var(--m-gold-shadow) !important;min-height:48px !important;}
html body.home #qg-home .qg-gift-glow__icons{display:flex !important;gap:10px !important;justify-content:center !important;}
html body.home #qg-home .qg-gift-glow__icon-box,html body.home #qg-home .qg-gift-glow__icon-box--rose{width:52px !important;height:52px !important;border-radius:14px !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:1.6rem !important;background:rgba(201,168,108,0.1) !important;border:1px solid var(--m-border-gold) !important;-webkit-text-fill-color:initial !important;}
html body.home #qg-home .qg-inner-circle-v10{background:var(--m-white) !important;border:1.5px solid var(--m-border-gold) !important;border-radius:22px !important;padding:28px 22px !important;box-shadow:var(--m-card-shadow) !important;display:flex !important;flex-direction:column !important;gap:14px !important;}
html body.home #qg-home .qg-inner-circle-v10__badge{display:inline-block !important;background:rgba(201,168,108,0.12) !important;border:1px solid rgba(201,168,108,0.4) !important;color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;font-family:'DM Sans',sans-serif !important;font-size:0.6rem !important;font-weight:800 !important;letter-spacing:0.18em !important;text-transform:uppercase !important;padding:6px 18px !important;border-radius:var(--m-pill) !important;}
html body.home #qg-home .qg-inner-circle-v10__title{font-family:'Playfair Display',serif !important;font-size:clamp(1.4rem,5vw,1.8rem) !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;line-height:1.2 !important;}
html body.home #qg-home .qg-inner-circle-v10__perks{font-family:'DM Sans',sans-serif !important;font-size:0.84rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;line-height:1.6 !important;}
html body.home #qg-home .qg-inner-circle-v10__join{display:flex !important;text-align:center !important;align-items:center !important;justify-content:center !important;background:linear-gradient(135deg,#D4B47A,#C9A86C) !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;font-family:'DM Sans',sans-serif !important;font-weight:800 !important;font-size:0.9rem !important;padding:14px !important;border-radius:var(--m-pill) !important;text-decoration:none !important;box-shadow:var(--m-gold-shadow) !important;min-height:48px !important;}

/* REFERRAL - dark gradient card */
html body.home #qg-home .qg-referral{background:linear-gradient(135deg,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 0%,#5B2A56 100%) !important;background-image:linear-gradient(135deg,linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 0%,#5B2A56 100%) !important;border-radius:22px !important;padding:28px 22px !important;border:1px solid rgba(201,168,108,0.18) !important;margin:0 !important;}
html body.home #qg-home .qg-referral__inner{display:flex !important;flex-direction:column !important;align-items:center !important;gap:14px !important;text-align:center !important;width:100% !important;}
html body.home #qg-home .qg-referral__icon{font-size:2.4rem !important;display:block !important;-webkit-text-fill-color:initial !important;background:none !important;}
html body.home #qg-home .qg-referral__text h3{font-family:'Playfair Display',serif !important;font-size:1.55rem !important;font-weight:700 !important;color:#fff !important;-webkit-text-fill-color:#fff !important;background:none !important;margin:0 0 10px !important;}
html body.home #qg-home .qg-referral__text p{color:rgba(255,255,255,0.7) !important;-webkit-text-fill-color:rgba(255,255,255,0.7) !important;background:none !important;font-size:0.88rem !important;margin:0 !important;}
html body.home #qg-home .qg-referral .qg-btn,html body.home #qg-home .qg-referral a.qg-btn,html body.home #qg-home .qg-referral a[class*="btn"]{display:flex !important;width:100% !important;text-align:center !important;align-items:center !important;justify-content:center !important;background:linear-gradient(135deg,#D4B47A,#C9A86C) !important;color:var(--m-deep) !important;-webkit-text-fill-color:var(--m-deep) !important;font-family:'DM Sans',sans-serif !important;font-weight:800 !important;font-size:0.9rem !important;padding:15px !important;border-radius:var(--m-pill) !important;border:none !important;box-shadow:var(--m-gold-shadow) !important;text-decoration:none !important;min-height:50px !important;}

/* ARTIST JOIN */
html body.home #qg-home .qg-artist-join{background:var(--m-bg) !important;}
html body.home #qg-home .qg-artist-join__inner{background:var(--m-white) !important;border:1px solid var(--m-border) !important;border-radius:22px !important;padding:24px 20px !important;box-shadow:var(--m-card-shadow) !important;display:flex !important;flex-direction:column !important;gap:20px !important;}
html body.home #qg-home .qg-artist-join__content h2{font-family:'Playfair Display',serif !important;font-size:clamp(1.6rem,5.5vw,2rem) !important;font-weight:700 !important;color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;margin:6px 0 10px !important;}
html body.home #qg-home .qg-artist-join__content h2 span{color:var(--m-rose) !important;-webkit-text-fill-color:var(--m-rose) !important;background:none !important;font-style:italic !important;}
html body.home #qg-home .qg-artist-join__content > p{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;font-size:0.88rem !important;line-height:1.65 !important;margin-bottom:16px !important;}
html body.home #qg-home .qg-artist-join__perks{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;margin-bottom:4px !important;}
html body.home #qg-home .qg-join-perk{display:flex !important;align-items:center !important;gap:8px !important;font-family:'DM Sans',sans-serif !important;font-size:0.82rem !important;color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-join-perk__icon{font-size:1.2rem !important;-webkit-text-fill-color:initial !important;background:none !important;flex-shrink:0 !important;}
html body.home #qg-home .qg-artist-join__stats{display:grid !important;grid-template-columns:1fr 1fr !important;gap:10px !important;}
html body.home #qg-home .qg-join-stat{background:rgba(212,114,140,0.06) !important;border:1px solid var(--m-border-rose) !important;border-radius:14px !important;padding:14px !important;text-align:center !important;}
html body.home #qg-home .qg-join-stat strong{display:block !important;font-family:'Playfair Display',serif !important;font-size:1.3rem !important;font-weight:700 !important;color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;background:none !important;margin-bottom:3px !important;}
html body.home #qg-home .qg-join-stat span{font-size:0.64rem !important;font-weight:600 !important;letter-spacing:0.06em !important;text-transform:uppercase !important;color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}
html body.home #qg-home .qg-artist-join__content .qg-btn{width:100% !important;justify-content:center !important;margin-top:4px !important;}

/* DARK HEADING OVERRIDES */
html body.home #qg-home .qg-dark-heading{color:var(--m-plum) !important;-webkit-text-fill-color:var(--m-plum) !important;background:none !important;}
html body.home #qg-home .qg-dark-body{color:var(--m-soft) !important;-webkit-text-fill-color:var(--m-soft) !important;background:none !important;}
html body.home #qg-home .qg-dark-eyebrow{color:var(--m-rose-dark) !important;-webkit-text-fill-color:var(--m-rose-dark) !important;background:none !important;}
html body.home #qg-home .qg-dark-note{color:var(--m-muted) !important;-webkit-text-fill-color:var(--m-muted) !important;background:none !important;}
html body.home #qg-home .qg-gold-accent{color:var(--m-gold-dk) !important;-webkit-text-fill-color:var(--m-gold-dk) !important;background:none !important;}
html body.home #qg-home .qg-membership .qg-dark-heading{color:#fff !important;-webkit-text-fill-color:#fff !important;}
html body.home #qg-home .qg-membership .qg-dark-body{color:rgba(255,255,255,0.7) !important;-webkit-text-fill-color:rgba(255,255,255,0.7) !important;}
html body.home #qg-home .qg-membership .qg-dark-eyebrow{color:rgba(212,175,106,0.75) !important;-webkit-text-fill-color:rgba(212,175,106,0.75) !important;}
html body.home #qg-home .qg-membership .qg-gold-accent{color:var(--m-gold) !important;-webkit-text-fill-color:var(--m-gold) !important;}

/* FABS */
#qgBackToTop{position:fixed !important;bottom:calc(88px + env(safe-area-inset-bottom,0px)) !important;left:16px !important;z-index:8800 !important;width:42px !important;height:42px !important;background:rgba(59,31,58,0.9) !important;border:1px solid rgba(201,168,108,0.25) !important;border-radius:14px !important;display:flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;box-shadow:0 4px 16px rgba(0,0,0,0.2) !important;}
#qgBackToTop svg{stroke:var(--m-gold) !important;}

/* SCROLLBAR HIDE */
body.home *{scrollbar-width:none !important;}
body.home *::-webkit-scrollbar{display:none !important;}

/* FOOTER */
body.home .qg-footer{background:var(--m-white) !important;border-top:1px solid var(--m-border) !important;}

/* ============================================================
   SMALL PHONES (430px and below) - nested
   ============================================================ */
@media (max-width: 430px) {

html body.home #qg-home .qg-hero__proof-item strong{font-size:0.78rem !important;}
html body.home #qg-home .qg-hero__proof-item span{font-size:0.46rem !important;}
html body.home #qg-home .qg-deal-chip{min-width:min(78vw,260px) !important;}
html body.home #qg-home .qg-pkg-card{min-width:min(82vw,280px) !important;}
html body.home #qg-home .qg-seasonal__grid{grid-template-columns:1fr !important;}
html body.home #qg-home .qg-artist-join__perks{grid-template-columns:1fr !important;}
html body.home #qg-home .qg-section-head h2,html body.home #qg-home .qg-section-header-v10 h2{font-size:clamp(1.5rem,6vw,1.9rem) !important;}
html body.home #qg-home .qg-promo-banner{flex-direction:column !important;text-align:center !important;align-items:center !important;}
html body.home #qg-home .qg-promo-banner__cta{margin-left:0 !important;width:100% !important;text-align:center !important;}
html body.home #qg-home .qg-membership-plan{min-width:min(88vw,300px) !important;}
html body.home #qg-home .qg-reels-grid{gap:8px !important;}
html body.home #qg-home .qg-guarantee__badge{padding:16px 10px !important;}
html body.home #qg-home .qg-store__btn{width:100% !important;}
html body.home #qg-home .qg-step h3{font-size:0.75rem !important;}
html body.home #qg-home .qg-step p{font-size:0.65rem !important;}

} /* end @media max-width 430px */

} /* end @media max-width 768px */


/* ================================================================
   PATCH v4.1 — TARGETED FIXES from live screenshots (May 11 2026)
   Issues visible: footer ghost orbs, trust bar odd-item, 
   points-strip box rendering, seasonal grid on mid phones
   ================================================================ */

@media (max-width: 768px) {

/* FIX 1: FOOTER — Keep dark plum background, hide orb blurs on mobile
   Root cause: qg-mobile.css was overriding footer bg to white, making
   the purple radial-blur orbs visible as ghost overlays on white */
body.home .qg-footer {
  background: #1C0A2E !important;
  color: rgba(255,245,250,0.85) !important;
}
body.home .qg-footer * { background-clip: initial !important; -webkit-background-clip: initial !important; }
body.home .qg-footer__orb { display: none !important; } /* hide GPU-heavy blurs on mobile */
body.home .qg-footer__membership-banner { background: rgba(255,255,255,0.05) !important; }
body.home .qg-footer__newsletter { background: rgba(255,255,255,0.04) !important; }
body.home .qg-newsletter__inner { background: rgba(255,255,255,0.06) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
/* Newsletter text must be light on dark bg */
body.home .qg-newsletter__eyebrow,
body.home .qg-newsletter__copy h3,
body.home .qg-newsletter__copy p { color: rgba(255,255,255,0.9) !important; -webkit-text-fill-color: rgba(255,255,255,0.9) !important; }
body.home .qg-newsletter__eyebrow { color: var(--m-gold) !important; -webkit-text-fill-color: var(--m-gold) !important; }
/* Footer nav links */
body.home .qg-footer a { color: rgba(255,255,255,0.65) !important; -webkit-text-fill-color: rgba(255,255,255,0.65) !important; }
body.home .qg-footer-nav__group > span,
body.home .qg-footer-nav__group > div:first-child { color: var(--m-gold) !important; -webkit-text-fill-color: var(--m-gold) !important; }

/* FIX 2: TRUST BAR — 5 items in 2-col grid = last item spans full width */
html body.home #qg-home .qg-trust-bar__item:last-child:nth-child(odd) {
  grid-column: 1 / -1 !important; /* span full width when odd item */
  border-top: 1px solid var(--m-border) !important;
}

/* FIX 3: POINTS STRIP — icon and text rendering as separate bordered boxes
   Root cause: the qg-section-v10 wrapper has border applied that's making
   the __icon and __body look like they're in separate cards */
html body.home #qg-home .qg-points-strip__icon {
  background: rgba(201,168,108,0.12) !important;
  border: 1.5px solid rgba(201,168,108,0.3) !important;
  border-radius: 14px !important;
  width: 52px !important; height: 52px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important; font-size: 1.6rem !important;
  -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-points-strip__title { font-size: 1rem !important; }
html body.home #qg-home .qg-points-strip__desc { font-size: 0.78rem !important; }

/* FIX 4: SEASONAL GRID — on phones 431-768px show 2 cols, not 1 col
   The small-phone override (430px) was right but the 768px block was
   also setting 1fr 1fr which was not being overridden back */
html body.home #qg-home .qg-seasonal__grid {
  grid-template-columns: 1fr 1fr !important;
}
html body.home #qg-home .qg-seasonal-card { min-height: 200px !important; }

/* FIX 5: SAFETY CARD ICON — icon wrapping to new line when text is long
   The flex layout works but icon needs explicit sizing to not shrink */
html body.home #qg-home .qg-safety-card__icon {
  min-width: 48px !important; width: 48px !important;
  font-size: 1.6rem !important; /* slightly smaller prevents emoji overflow */
}

/* FIX 6: BACK-TO-TOP position — should be at bottom-left, above bottom nav */
#qgBackToTop {
  bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important;
  left: 12px !important;
  right: auto !important;
  width: 40px !important; height: 40px !important;
}

/* FIX 7: CONCIERGE FAB (pink button) — position above bottom nav */
.qg-concierge-fab,
[class*="concierge"],
[class*="chat-fab"],
[class*="fab-btn"] {
  bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important;
  right: 16px !important;
}

/* FIX 8: FOOTER NAV empty space — the 4 nav groups show as 2-col grid
   but the blank items make it look broken */
body.home .qg-footer__nav {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px 16px !important;
  padding: 0 !important;
}
body.home .qg-footer__top {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  padding: 24px 16px !important;
}
body.home .qg-footer__brand { margin-bottom: 0 !important; }

/* FIX 9: Ensure section-v10 items (points/gift/inner-circle) 
   are NOT given borders from the section wrapper */
html body.home #qg-home .qg-section-v10 {
  border: none !important;
  box-shadow: none !important;
  background: var(--m-bg) !important;
}

} /* end patch @media (max-width: 768px) */

/* PATCH small phones */
@media (max-width: 430px) {
  /* Seasonal: 1 col only on very small phones */
  html body.home #qg-home .qg-seasonal__grid { grid-template-columns: 1fr !important; }
  html body.home #qg-home .qg-seasonal-card { min-height: 220px !important; }
}

/* PREFERS REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
  html body.home #qg-home *, html body .qg-bottom-nav *, #qgBackToTop {
    animation:none !important; transition:none !important;
  }
}


/* ================================================================
   qg-mobile-patch-v5.css — VISUAL FIX PASS from live screenshots
   May 11 2026 — appended to qg-mobile.css
   
   FIXES (based on 17 screenshots):
   1.  Hero gap — body padding-top override for home page
   2.  Press logos — pill row, premium typography
   3.  Trust bar — 2×2 clean grid (was 2×3, 5th item orphan)
   4.  Promo banner — light cream background, premium
   5.  Filter tabs — horizontal scroll, no wrap confirmed
   6.  Service cards — image visible, premium layout
   7.  How It Works — 3-step row, prevent text collision
   8.  Before/After — horizontal snap scroll (not stacked)
   9.  Testimonials — horizontal snap scroll (not stacked)
   10. Membership / Inner Circle — light background
   11. Seasonal — horizontal snap scroll (not grid)
   12. Reels — light plum background, premium 2×2
   13. Points / Gift / Referral — native-app card redesign
   All: No new selectors that conflict with existing CSS
================================================================ */

@media (max-width: 768px) {

/* ── 1. HERO GAP FIX ───────────────────────────────────────── */
/* body has padding-top from header offset variable. On home page
   the header is hidden so that padding creates a white gap above hero. */
html body.home {
  padding-top: 0 !important;
  --qg-offset: 0px !important;
}
html body.home #qg-home .qg-hero {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ── 2. PRESS BAR — premium pill layout ────────────────────── */
html body.home #qg-home .qg-press {
  background: #fff !important;
  border-top: none !important;
  border-bottom: 1px solid rgba(212,114,140,0.12) !important;
  padding: 20px 16px !important;
}
html body.home #qg-home .qg-press__inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 !important;
  max-width: 100% !important;
}
html body.home #qg-home .qg-press__label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
  display: block !important;
  text-align: center !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-press__logos {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  gap: 0 !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  padding: 0 !important;
  scrollbar-width: none !important;
}
html body.home #qg-home .qg-press__logos::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-press__logo {
  flex: 0 0 auto !important;
  padding: 6px 20px !important;
  border-right: 1px solid rgba(59,31,58,0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body.home #qg-home .qg-press__logo:last-child { border-right: none !important; }
html body.home #qg-home .qg-press__logo-text {
  font-family: 'Playfair Display', serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  opacity: 0.5 !important;
  white-space: nowrap !important;
}
html body.home #qg-home .qg-press__svg {
  height: 22px !important;
  width: auto !important;
  opacity: 0.45 !important;
  filter: grayscale(1) !important;
}

/* ── 3. TRUST BAR — even 2×2 grid (5 items: 2+2+1) ───────── */
html body.home #qg-home .qg-trust-bar {
  background: #fff !important;
  padding: 20px 16px !important;
}
html body.home #qg-home .qg-trust-bar__inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
  background: rgba(59,31,58,0.08) !important;
  border-radius: 18px !important;
  border: 1px solid rgba(59,31,58,0.08) !important;
  overflow: hidden !important;
}
html body.home #qg-home .qg-trust-bar__item {
  background: #fff !important;
  padding: 20px 12px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 5px !important;
}
/* 5th item (odd): span full width */
html body.home #qg-home .qg-trust-bar__item:last-child:nth-child(odd) {
  grid-column: 1 / -1 !important;
  border-top: 1px solid rgba(59,31,58,0.08) !important;
}
html body.home #qg-home .qg-trust-bar__divider { display: none !important; }
html body.home #qg-home .qg-trust-bar__item strong {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #D4728C !important;
  -webkit-text-fill-color: #D4728C !important;
  background: none !important;
  line-height: 1 !important;
}
html body.home #qg-home .qg-trust-bar__item span {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* ── 4. PROMO BANNER — light cream, premium ────────────────── */
html body.home #qg-home .qg-promo-banner {
  background: linear-gradient(135deg, #2A1229 0%, linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 100%) !important;
  border-radius: 18px !important;
  padding: 18px 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 20px !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
}
html body.home #qg-home .qg-promo-banner__text strong {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  font-size: 0.9rem !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
html body.home #qg-home .qg-promo-banner__text span {
  color: rgba(255,255,255,0.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.65) !important;
  background: none !important;
}
html body.home #qg-home .qg-promo-banner__text em {
  color: #C9A86C !important;
  -webkit-text-fill-color: #C9A86C !important;
  background: none !important;
}

/* ── 5. FILTER TABS — horizontal scroll confirmed ──────────── */
html body.home #qg-home .qg-services-filter {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  gap: 8px !important;
  padding-bottom: 4px !important;
  margin-bottom: 18px !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}
html body.home #qg-home .qg-services-filter::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-filter-tab,
html body.home #qg-home .qg-filter-btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  padding: 9px 20px !important;
  border-radius: 999px !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  border: 1.5px solid rgba(59,31,58,0.12) !important;
  background: #fff !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  min-height: 40px !important;
  cursor: pointer !important;
}
html body.home #qg-home .qg-filter-tab.active,
html body.home #qg-home .qg-filter-tab[aria-selected="true"],
html body.home #qg-home .qg-filter-btn.active {
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}

/* ── 6. SERVICE CARDS — image visible, premium ─────────────── */
html body.home #qg-home .qg-services-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}
html body.home #qg-home .qg-service-card {
  background: #fff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.07) !important;
}
html body.home #qg-home .qg-service-card__img {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16/9 !important;
  overflow: hidden !important;
  display: block !important;
}
html body.home #qg-home .qg-service-card__img img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 20% !important;
  display: block !important;
}
/* If no __img wrapper — handle card with img as direct child */
html body.home #qg-home .qg-service-card > a > img,
html body.home #qg-home .qg-service-card > img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  object-position: center 20% !important;
  display: block !important;
}
html body.home #qg-home .qg-service-card__body {
  padding: 16px !important;
  background: #fff !important;
}
html body.home #qg-home .qg-service-card__body h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  margin: 0 0 6px !important;
}
html body.home #qg-home .qg-service-card__book-btn {
  margin: 0 16px 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #D4728C !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  padding: 14px !important;
  border-radius: 14px !important;
  min-height: 48px !important;
  text-decoration: none !important;
}

/* ── 7. HOW IT WORKS — prevent collision ───────────────────── */
html body.home #qg-home .qg-how {
  background: #fff !important;
}
html body.home #qg-home .qg-how__steps {
  display: flex !important;
  flex-direction: row !important;
  gap: 0 !important;
  align-items: stretch !important;
  background: #FEF7F2 !important;
  border: 1px solid rgba(59,31,58,0.1) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  padding: 0 !important;
}
html body.home #qg-home .qg-step {
  flex: 1 !important;
  padding: 20px 8px !important;
  text-align: center !important;
  border-right: 1px solid rgba(59,31,58,0.08) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
}
html body.home #qg-home .qg-step:last-child { border-right: none !important; }
html body.home #qg-home .qg-step__connector { display: none !important; }
html body.home #qg-home .qg-step__num {
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: rgba(212,114,140,0.12) !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 800 !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  flex-shrink: 0 !important;
}
html body.home #qg-home .qg-step__icon {
  font-size: 1.6rem !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  line-height: 1 !important;
}
html body.home #qg-home .qg-step h3 {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}
html body.home #qg-home .qg-step p {
  font-size: 0.62rem !important;
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}

/* ── 8. BEFORE/AFTER — horizontal snap scroll ──────────────── */
html body.home #qg-home .qg-before-after {
  background: #FEF7F2 !important;
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-ba-grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 14px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-right: 24px !important;
  padding-bottom: 4px !important;
  -webkit-overflow-scrolling: touch !important;
}
html body.home #qg-home .qg-ba-grid::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-ba-card {
  flex: 0 0 min(76vw, 280px) !important;
  scroll-snap-align: start !important;
  background: #fff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.07) !important;
}
html body.home #qg-home .qg-ba-slider {
  aspect-ratio: 3/4 !important;
  position: relative !important;
  overflow: hidden !important;
  cursor: ew-resize !important;
  contain: layout !important;
}

/* ── 9. TESTIMONIALS — horizontal snap scroll ──────────────── */
html body.home #qg-home .qg-testimonials {
  background: #fff !important;
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-testi-grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 14px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-right: 24px !important;
  padding-bottom: 4px !important;
  margin-top: 16px !important;
  -webkit-overflow-scrolling: touch !important;
}
html body.home #qg-home .qg-testi-grid::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-testi {
  flex: 0 0 min(80vw, 300px) !important;
  scroll-snap-align: start !important;
  background: #FEF7F2 !important;
  border: 1px solid rgba(59,31,58,0.08) !important;
  border-radius: 18px !important;
  padding: 20px !important;
  box-shadow: 0 2px 12px rgba(59,31,58,0.05) !important;
  display: flex !important;
  flex-direction: column !important;
}
html body.home #qg-home .qg-testi__body {
  flex: 1 !important;
  font-family: 'Playfair Display', serif !important;
  font-style: italic !important;
  font-size: 0.9rem !important;
  line-height: 1.65 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  margin-bottom: 16px !important;
}

/* ── 10. MEMBERSHIP / INNER CIRCLE — light background ──────── */
html body.home #qg-home .qg-inner-circle-v10 {
  background: #fff !important;
  border: 1.5px solid rgba(201,168,108,0.25) !important;
  border-radius: 22px !important;
  padding: 28px 22px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.07) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}
html body.home #qg-home .qg-inner-circle-v10__title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(1.4rem,5vw,1.8rem) !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  line-height: 1.2 !important;
}
html body.home #qg-home .qg-inner-circle-v10__perks {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
}
html body.home #qg-home .qg-inner-circle-v10__join {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 800 !important;
  font-size: 0.9rem !important;
  padding: 14px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  min-height: 48px !important;
  box-shadow: 0 6px 20px rgba(201,168,108,0.38) !important;
}

/* ── 11. SEASONAL — horizontal snap scroll ─────────────────── */
html body.home #qg-home .qg-seasonal {
  background: #FEF7F2 !important;
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-seasonal__grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 14px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-right: 24px !important;
  padding-bottom: 4px !important;
  -webkit-overflow-scrolling: touch !important;
  /* Override the 2-col CSS grid */
  grid-template-columns: none !important;
}
html body.home #qg-home .qg-seasonal__grid::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-seasonal-card {
  flex: 0 0 min(72vw, 260px) !important;
  min-height: 320px !important;
  scroll-snap-align: start !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}
html body.home #qg-home .qg-seasonal-card--bridal  { background-color: #5B2A56 !important; background-image: linear-gradient(160deg,#5B2A56,#8B3070) !important; }
html body.home #qg-home .qg-seasonal-card--diwali  { background-color: #7A4A0A !important; background-image: linear-gradient(160deg,#7A4A0A,#C47820) !important; }
html body.home #qg-home .qg-seasonal-card--office  { background-color: #1A4060 !important; background-image: linear-gradient(160deg,#1A4060,#2A6090) !important; }
html body.home #qg-home .qg-seasonal-card--gift    { background-color: #4A2080 !important; background-image: linear-gradient(160deg,#4A2080,#7040B0) !important; }

/* ── 12. REELS PREVIEW — light background, premium grid ────── */
html body.home #qg-home .qg-reels-preview,
html body.home #qg-home .qg-reels-preview.qg-section-v10 {
  background: #FEF7F2 !important;
  padding: 28px 16px !important;
}
html body.home #qg-home .qg-reels-preview .qg-section-header-v10 h2,
html body.home #qg-home .qg-reels-preview .qg-section-header-v10-row h2 {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
}
html body.home #qg-home .qg-reels-preview .qg-subtitle {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-reels-preview .qg-rule-line {
  background: #C9A86C !important;
}
html body.home #qg-home .qg-reels-preview .qg-see-all {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
}
html body.home #qg-home .qg-reels-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
html body.home #qg-home .qg-reel-thumb {
  border-radius: 16px !important;
  overflow: hidden !important;
  aspect-ratio: 3/4 !important;
  position: relative !important;
}
html body.home #qg-home .qg-reel-thumb img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: top !important;
}
html body.home #qg-home .qg-reel-thumb__service-badge {
  background: rgba(212,114,140,0.88) !important;
}
html body.home #qg-home .qg-reels-preview a[class*="btn"] {
  display: block !important;
  text-align: center !important;
  margin-top: 16px !important;
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 14px !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
}

/* ── 13. POINTS STRIP — native-app card ────────────────────── */
html body.home #qg-home .qg-section-v10 {
  background: #FEF7F2 !important;
  padding: 8px 16px !important;
}
html body.home #qg-home .qg-points-strip {
  background: #fff !important;
  border-radius: 18px !important;
  border: 1px solid rgba(201,168,108,0.22) !important;
  padding: 20px 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
}
html body.home #qg-home .qg-points-strip__icon {
  font-size: 2rem !important;
  flex-shrink: 0 !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  width: 48px !important;
  height: 48px !important;
  background: rgba(201,168,108,0.1) !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  border-radius: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  color: #B8860B !important;
}
html body.home #qg-home .qg-points-strip__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  margin: 0 0 3px !important;
}
html body.home #qg-home .qg-points-strip__desc {
  font-size: 0.8rem !important;
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
  line-height: 1.5 !important;
}
html body.home #qg-home .qg-points-strip__btn {
  flex-shrink: 0 !important;
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: var(--qg-plum,#1C0A2E) !important;
  -webkit-text-fill-color: var(--qg-plum,#1C0A2E) !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
}

/* ── 14. GIFT GLOW — premium light card ────────────────────── */
html body.home #qg-home .qg-gift-glow {
  background: #fff !important;
  border-radius: 22px !important;
  border: 1px solid rgba(201,168,108,0.22) !important;
  padding: 28px 22px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
}
html body.home #qg-home .qg-gift-glow__content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
}
html body.home #qg-home .qg-gift-glow__eyebrow {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  background: none !important;
  border: 1.5px solid rgba(192,88,120,0.25) !important;
  padding: 5px 16px !important;
  border-radius: 999px !important;
  display: inline-block !important;
}
html body.home #qg-home .qg-gift-glow__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.7rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  line-height: 1.15 !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__title em {
  color: #D4728C !important;
  -webkit-text-fill-color: #D4728C !important;
  background: none !important;
  font-style: italic !important;
}
html body.home #qg-home .qg-gift-glow__desc {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  padding: 14px 32px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  min-height: 48px !important;
  box-shadow: 0 6px 20px rgba(201,168,108,0.35) !important;
  width: 100% !important;
}

/* ── 15. REFERRAL — dark card, full-bleed premium ──────────── */
html body.home #qg-home .qg-referral {
  background: linear-gradient(160deg, #2A1229 0%, linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 100%) !important;
  background-image: linear-gradient(160deg, #2A1229 0%, linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) 100%) !important;
  border-radius: 22px !important;
  padding: 32px 22px !important;
  margin: 0 16px !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.18) !important;
  /* Ensure it gets proper padding despite section override */
  padding-left: 22px !important;
  padding-right: 22px !important;
}
html body.home #qg-home .qg-referral__inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
}
html body.home #qg-home .qg-referral__icon {
  font-size: 2.8rem !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  line-height: 1 !important;
  margin-bottom: 4px !important;
}
html body.home #qg-home .qg-referral__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.7rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  margin: 0 0 8px !important;
  line-height: 1.2 !important;
}
html body.home #qg-home .qg-referral__text p {
  color: rgba(255,255,255,0.7) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.7) !important;
  background: none !important;
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-referral .qg-btn,
html body.home #qg-home .qg-referral a.qg-btn,
html body.home #qg-home .qg-referral a[class*="btn"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important;
  font-size: 0.95rem !important;
  padding: 16px !important;
  border-radius: 999px !important;
  border: none !important;
  box-shadow: 0 6px 24px rgba(201,168,108,0.45) !important;
  text-decoration: none !important;
  min-height: 52px !important;
  margin-top: 6px !important;
}

/* ── 16. FOOTER GHOST ORBS / BLUR FIX ─────────────────────── */
/* Ornament / petals bleeding into sections below hero */
html body.home #qg-home .qg-hero__petals,
html body.home #qg-home .qg-hero__ornament {
  display: none !important;
}
/* Footer subscribe section: remove radial blur leak */
html body.home .qg-footer [class*="orb"],
html body.home .qg-footer [class*="glow"],
html body.home .qg-footer [class*="blur"] {
  display: none !important;
}

} /* end patch v5 @media 768px */

/* ── Small phones (430px) additional overrides ──────────────── */
@media (max-width: 430px) {
  html body.home #qg-home .qg-ba-card { flex: 0 0 min(82vw,260px) !important; }
  html body.home #qg-home .qg-testi   { flex: 0 0 min(85vw,280px) !important; }
  html body.home #qg-home .qg-seasonal-card { flex: 0 0 min(80vw,260px) !important; min-height: 280px !important; }
  html body.home #qg-home .qg-step h3 { font-size: 0.65rem !important; }
  html body.home #qg-home .qg-step p  { font-size: 0.58rem !important; }
  html body.home #qg-home .qg-referral { margin: 0 !important; border-radius: 18px !important; }
}


/* ================================================================
   qg-mobile-patch-v6.css — VISUAL FIX PASS #2 from live screenshots
   May 11 2026 — appended to qg-mobile.css
================================================================ */

@media (max-width: 768px) {

/* ── 1. BOTTOM NAV — light cream like Flutter app ────────── */
html body .qg-bottom-nav {
  background: rgba(255,253,249,0.97) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-top: 1px solid rgba(59,31,58,0.1) !important;
}
html body .qg-bnav-item {
  color: rgba(59,31,58,0.35) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.35) !important;
}
html body .qg-bnav-item svg { stroke: rgba(59,31,58,0.3) !important; }
html body .qg-bnav-item.active {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
html body .qg-bnav-item.active svg { stroke: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; }

/* ── 2. TRUST BAR — premium world-class design ──────────── */
html body.home #qg-home .qg-trust-bar {
  background: #FEF7F2 !important;
  padding: 20px 16px !important;
}
html body.home #qg-home .qg-trust-bar__inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
}
html body.home #qg-home .qg-trust-bar__item {
  background: #fff !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  border-radius: 18px !important;
  padding: 20px 12px !important;
  box-shadow: 0 2px 12px rgba(59,31,58,0.06) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
}
html body.home #qg-home .qg-trust-bar__item:last-child:nth-child(odd) {
  grid-column: 1 / -1 !important;
}
html body.home #qg-home .qg-trust-bar__item strong {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.7rem !important;
  font-weight: 700 !important;
  color: #D4728C !important;
  -webkit-text-fill-color: #D4728C !important;
  background: none !important;
  line-height: 1 !important;
}
html body.home #qg-home .qg-trust-bar__item span {
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* ── 3. PROMO BANNER (₹500 off) — light premium ────────── */
html body.home #qg-home .qg-promo-banner {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(201,168,108,0.22) !important;
  padding: 22px 20px !important;
  margin-bottom: 20px !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 10px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
}
html body.home #qg-home .qg-promo-banner__icon {
  font-size: 2.2rem !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}
html body.home #qg-home .qg-promo-banner__text { text-align: center !important; }
html body.home #qg-home .qg-promo-banner__text strong {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  white-space: normal !important;
}
html body.home #qg-home .qg-promo-banner__text span {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
  font-size: 0.82rem !important;
}
html body.home #qg-home .qg-promo-banner__text em {
  color: #C9A86C !important;
  -webkit-text-fill-color: #C9A86C !important;
  background: none !important;
  font-weight: 700 !important;
  font-style: normal !important;
}
html body.home #qg-home .qg-promo-banner__cta {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  padding: 14px !important;
  border-radius: 999px !important;
  font-weight: 800 !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
}

/* ── 4. SERVICE CARDS — horizontal snap scroll ──────────── */
html body.home #qg-home .qg-services {
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-services__inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-services__inner > .qg-section-head,
html body.home #qg-home .qg-services__inner > .qg-services__urgency,
html body.home #qg-home .qg-services__inner > .qg-promo-banner,
html body.home #qg-home .qg-services__inner > .qg-services-filter {
  padding-right: 16px !important;
}
html body.home #qg-home .qg-services-grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 14px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-bottom: 6px !important;
  padding-right: 24px !important;
  -webkit-overflow-scrolling: touch !important;
  flex-wrap: nowrap !important;
}
html body.home #qg-home .qg-services-grid::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-service-card {
  flex: 0 0 min(72vw, 260px) !important;
  scroll-snap-align: start !important;
  width: min(72vw, 260px) !important;
  flex-shrink: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.07) !important;
}
html body.home #qg-home .qg-service-card__img {
  position: relative !important;
  aspect-ratio: 4/3 !important;
  overflow: hidden !important;
  display: block !important;
  width: 100% !important;
  flex-shrink: 0 !important;
}
html body.home #qg-home .qg-service-card__img img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 20% !important;
  display: block !important;
}
html body.home #qg-home .qg-service-card__body {
  padding: 14px 14px 10px !important;
  flex: 1 !important;
}
html body.home #qg-home .qg-service-card__body h3 {
  font-size: 0.95rem !important;
  margin-bottom: 4px !important;
}
html body.home #qg-home .qg-service-card__body p {
  font-size: 0.78rem !important;
  margin-bottom: 8px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
html body.home #qg-home .qg-service-card__book-btn {
  margin: 0 14px 14px !important;
  font-size: 0.85rem !important;
  padding: 12px !important;
  min-height: 44px !important;
}

/* ── 5. HOW IT WORKS — horizontal premium cards ─────────── */
html body.home #qg-home .qg-how {
  background: #FEF7F2 !important;
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-how__inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-how__inner > .qg-section-head {
  padding-right: 16px !important;
}
html body.home #qg-home .qg-how__steps {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 12px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-right: 24px !important;
  padding-bottom: 4px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  -webkit-overflow-scrolling: touch !important;
  align-items: stretch !important;
  padding-left: 0 !important;
}
html body.home #qg-home .qg-how__steps::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-step {
  flex: 0 0 min(55vw, 200px) !important;
  scroll-snap-align: start !important;
  background: #fff !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  border-radius: 18px !important;
  padding: 20px 16px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 8px !important;
  box-shadow: 0 2px 12px rgba(59,31,58,0.06) !important;
  border-right: none !important;
}
html body.home #qg-home .qg-step__connector { display: none !important; }
html body.home #qg-home .qg-step__num {
  width: 28px !important; height: 28px !important;
  border-radius: 50% !important;
  background: rgba(212,114,140,0.1) !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.7rem !important; font-weight: 800 !important;
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important;
}
html body.home #qg-home .qg-step__icon {
  font-size: 1.8rem !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  line-height: 1 !important;
}
html body.home #qg-home .qg-step h3 {
  font-size: 0.82rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 !important;
}
html body.home #qg-home .qg-step p {
  font-size: 0.7rem !important; color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important; line-height: 1.45 !important; margin: 0 !important;
}
html body.home #qg-home .qg-how__promise {
  margin: 14px 16px 0 0 !important;
  border-radius: 999px !important;
  padding: 12px 18px !important;
  background: rgba(201,168,108,0.09) !important;
  border: 1px solid rgba(201,168,108,0.25) !important;
  font-size: 0.8rem !important;
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
}

/* ── 6. ARTIST CARDS — shorter, premium ─────────────────── */
html body.home #qg-home .qg-artist-card {
  width: min(58vw, 210px) !important;
}
html body.home #qg-home .qg-artist-media {
  aspect-ratio: 4/3 !important;  /* shorter: was 3/4 portrait */
}
html body.home #qg-home .qg-artist-body {
  padding: 12px 12px 8px !important;
}
html body.home #qg-home .qg-artist-body h3 { font-size: 0.88rem !important; }
html body.home #qg-home .qg-artist-body p  { font-size: 0.72rem !important; margin-bottom: 3px !important; }
html body.home #qg-home .qg-artist-count   { font-size: 0.62rem !important; }
html body.home #qg-home .qg-artist-meta    { font-size: 0.6rem !important; display: block !important; }
html body.home #qg-home .qg-artist-profile-btn {
  padding: 10px !important; font-size: 0.72rem !important; min-height: 40px !important;
}

/* ── 7. MEMBERSHIP — light cream premium ────────────────── */
html body.home #qg-home .qg-membership {
  background: #FEF7F2 !important;
  background-image: none !important;
}
html body.home #qg-home .qg-membership .qg-section-head h2,
html body.home #qg-home .qg-membership__header h2,
html body.home #qg-home .qg-membership .qg-dark-heading {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
}
html body.home #qg-home .qg-membership__header h2 span,
html body.home #qg-home .qg-membership .qg-gold-accent {
  color: #B8860B !important;
  -webkit-text-fill-color: #B8860B !important;
  background: none !important;
}
html body.home #qg-home .qg-membership__header p,
html body.home #qg-home .qg-membership .qg-dark-body {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-membership .qg-eyebrow,
html body.home #qg-home .qg-membership .qg-dark-eyebrow {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  background: none !important;
}
html body.home #qg-home .qg-membership-plan {
  background: #fff !important;
}
html body.home #qg-home .qg-membership-plan.qg-plan--featured,
html body.home #qg-home .qg-membership-plan.qg-plan--elite {
  background: linear-gradient(160deg, #FFFDF5, #FFF7E0) !important;
  border-color: rgba(201,168,108,0.4) !important;
}
html body.home #qg-home .qg-plan__amount {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
}
html body.home #qg-home .qg-plan__perks li {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-membership__cta p,
html body.home #qg-home .qg-membership .qg-dark-note {
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* ── 8. EARN QG POINTS — premium native-app card ────────── */
html body.home #qg-home .qg-points-strip {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  padding: 24px 20px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 16px !important;
}
html body.home #qg-home .qg-points-strip__icon {
  width: 52px !important;
  height: 52px !important;
  border-radius: 16px !important;
  background: rgba(201,168,108,0.1) !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.6rem !important;
  -webkit-text-fill-color: initial !important;
  flex-shrink: 0 !important;
}
html body.home #qg-home .qg-points-strip__body { width: 100% !important; }
html body.home #qg-home .qg-points-strip__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  margin: 0 0 6px !important;
}
html body.home #qg-home .qg-points-strip__desc {
  font-size: 0.85rem !important;
  line-height: 1.6 !important;
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-points-strip__btn {
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: var(--qg-plum,#1C0A2E) !important;
  -webkit-text-fill-color: var(--qg-plum,#1C0A2E) !important;
  padding: 12px 24px !important;
  border-radius: 999px !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  min-height: 44px !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

/* ── 9. GIFT THE GLOW — premium light card ──────────────── */
html body.home #qg-home .qg-gift-glow {
  background: #fff !important;
  border-radius: 22px !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  padding: 28px 22px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 14px !important;
}
html body.home #qg-home .qg-gift-glow__icons {
  display: flex !important;
  gap: 10px !important;
  justify-content: center !important;
  order: -1 !important;  /* icons on top */
}
html body.home #qg-home .qg-gift-glow__icon-box,
html body.home #qg-home .qg-gift-glow__icon-box--rose {
  width: 56px !important;
  height: 56px !important;
  border-radius: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.8rem !important;
  background: rgba(201,168,108,0.08) !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  -webkit-text-fill-color: initial !important;
}

/* ── 10. INNER CIRCLE STRIP — light premium ─────────────── */
html body.home #qg-home .qg-inner-circle-v10 {
  background: #fff !important;
  border-radius: 22px !important;
  border: 1.5px solid rgba(201,168,108,0.22) !important;
  padding: 28px 22px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
}
html body.home #qg-home .qg-inner-circle-v10__badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: rgba(201,168,108,0.1) !important;
  border: 1px solid rgba(201,168,108,0.3) !important;
  color: #B8860B !important;
  -webkit-text-fill-color: #B8860B !important;
  font-size: 0.6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  padding: 6px 16px !important;
  border-radius: 999px !important;
}
html body.home #qg-home .qg-inner-circle-v10__title {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
}
html body.home #qg-home .qg-inner-circle-v10__perks {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}

/* ── 11. REFERRAL — light premium card ──────────────────── */
html body.home #qg-home .qg-referral {
  background: #fff !important;
  background-image: none !important;
  border-radius: 22px !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  padding: 28px 22px !important;
  margin: 0 !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
}
html body.home #qg-home .qg-referral__inner {
  align-items: center !important;
  text-align: center !important;
}
html body.home #qg-home .qg-referral__text h3 {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
  font-size: 1.5rem !important;
}
html body.home #qg-home .qg-referral__text p {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-referral .qg-btn,
html body.home #qg-home .qg-referral a.qg-btn,
html body.home #qg-home .qg-referral a[class*="btn"] {
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  box-shadow: 0 6px 20px rgba(201,168,108,0.35) !important;
}

/* ── 12. CONCIERGE FAB — smaller, centered, light ───────── */
.qg-concierge {
  /* Light version — matches Flutter app aesthetic */
  width: 44px !important;
  height: 44px !important;
  bottom: calc(84px + env(safe-area-inset-bottom, 0px)) !important;
  /* Center horizontally */
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  background: #fff !important;
  border: 1.5px solid rgba(201,168,108,0.4) !important;
  box-shadow: 0 4px 16px rgba(59,31,58,0.15), 0 2px 8px rgba(201,168,108,0.2) !important;
  animation: none !important;  /* kill the floating/pulse on mobile */
  border-radius: 14px !important;  /* pill-style, not circle */
  outline: none !important;
}
.qg-concierge:hover {
  transform: translateX(-50%) !important;
  box-shadow: 0 4px 16px rgba(59,31,58,0.15) !important;
}
.qg-concierge__icon {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
.qg-concierge__icon svg {
  width: 18px !important;
  height: 18px !important;
  stroke: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
.qg-concierge::before { display: none !important; }
/* Concierge modal: light theme */
.qg2-modal,
.qg-concierge-modal {
  background: #FEF7F2 !important;
  border-radius: 24px 24px 0 0 !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
}

/* ── 13. BACK TO TOP — adjust for centered concierge ────── */
#qgBackToTop {
  left: 16px !important;
  right: auto !important;
  bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important;
}

} /* end patch v6 @media 768px */


/* ================================================================
   qg-mobile-patch-v7.css — FINAL FIX PASS from screenshots May 11
   Fixes: membership dark, hero, BA overlap, FAQ, hero, concierge
   restore, points/gift/referral row, packages, artists light
================================================================ */

@media (max-width: 768px) {

/* ── 0. NUCLEAR: override all previous dark/light conflicts ── */
/* These use !important with highest specificity to win all wars */

/* ── 1. HERO — premium light content area ────────────────── */
html body.home #qg-home .qg-hero__content {
  background: transparent !important;
  padding: 0 20px 32px !important;
}
/* Proof bar below hero — make it visible on light bg */
html body.home #qg-home .qg-hero__proof {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}

/* ── 2. MEMBERSHIP — FORCE LIGHT (override all earlier rules) */
html body.home #qg-home section.qg-membership {
  background: #F8F2EE !important;
  background-image: none !important;
  background-color: #F8F2EE !important;
}
html body.home #qg-home section.qg-membership * {
  background-image: none !important;
}
html body.home #qg-home section.qg-membership .qg-membership__inner {
  background: transparent !important;
}
html body.home #qg-home section.qg-membership .qg-eyebrow,
html body.home #qg-home section.qg-membership .qg-dark-eyebrow {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
}
html body.home #qg-home section.qg-membership .qg-dark-heading,
html body.home #qg-home section.qg-membership .qg-membership__header h2 {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
html body.home #qg-home section.qg-membership .qg-gold-accent,
html body.home #qg-home section.qg-membership .qg-membership__header h2 span {
  color: #B8860B !important;
  -webkit-text-fill-color: #B8860B !important;
}
html body.home #qg-home section.qg-membership .qg-dark-body,
html body.home #qg-home section.qg-membership .qg-membership__header p {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
}
html body.home #qg-home section.qg-membership .qg-dark-note,
html body.home #qg-home section.qg-membership .qg-membership__cta p {
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
}
html body.home #qg-home section.qg-membership .qg-membership-plan {
  background: #fff !important;
  border: 1.5px solid rgba(201,168,108,0.25) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.07) !important;
}
html body.home #qg-home section.qg-membership .qg-membership-plan.qg-plan--featured,
html body.home #qg-home section.qg-membership .qg-membership-plan.qg-plan--elite {
  background: linear-gradient(160deg, #FFFDF5, #FFF7E0) !important;
  border-color: rgba(201,168,108,0.45) !important;
}
html body.home #qg-home section.qg-membership .qg-plan__badge {
  color: #B8860B !important;
  -webkit-text-fill-color: #B8860B !important;
  background: rgba(201,168,108,0.1) !important;
  border-color: rgba(201,168,108,0.35) !important;
}
html body.home #qg-home section.qg-membership .qg-plan__currency,
html body.home #qg-home section.qg-membership .qg-plan__period {
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
}
html body.home #qg-home section.qg-membership .qg-plan__amount {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
html body.home #qg-home section.qg-membership .qg-plan__perks li {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
}
/* Plan buttons */
html body.home #qg-home section.qg-membership .qg-btn--outline-gold {
  color: #B8860B !important;
  -webkit-text-fill-color: #B8860B !important;
  border-color: rgba(201,168,108,0.5) !important;
  background: transparent !important;
}
html body.home #qg-home section.qg-membership .qg-btn--gold {
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}

/* ── 3. BEFORE/AFTER — fix overlap, correct horizontal scroll  */
html body.home #qg-home .qg-before-after {
  background: #FEF7F2 !important;
  padding-left: 16px !important;
  padding-right: 0 !important;
}
html body.home #qg-home .qg-before-after > .qg-section-head {
  padding-right: 16px !important;
}
html body.home #qg-home .qg-ba-grid {
  display: flex !important;
  flex-direction: row !important;
  overflow-x: auto !important;
  gap: 14px !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding-right: 24px !important;
  padding-bottom: 4px !important;
  /* CRITICAL: overflow visible so cards don't clip into each other */
  overflow-y: visible !important;
  align-items: flex-start !important;
}
html body.home #qg-home .qg-ba-grid::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-ba-card {
  flex: 0 0 min(80vw, 300px) !important;
  width: min(80vw, 300px) !important;
  scroll-snap-align: start !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(201,168,108,0.15) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.08) !important;
  flex-shrink: 0 !important;
  /* CRITICAL: don't stretch height — prevents overlap */
  align-self: flex-start !important;
}
html body.home #qg-home .qg-ba-slider {
  position: relative !important;
  aspect-ratio: 1/1 !important;  /* square — larger viewing area */
  width: 100% !important;
  overflow: hidden !important;
  cursor: ew-resize !important;
  contain: layout !important;
  display: block !important;
}
html body.home #qg-home .qg-ba-before {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  z-index: 1 !important;
}
html body.home #qg-home .qg-ba-after {
  position: absolute !important;
  top: 0 !important; bottom: 0 !important; right: 0 !important;
  left: 50% !important;  /* starts at center */
  overflow: hidden !important;
  z-index: 2 !important;
  width: 50% !important;
}
html body.home #qg-home .qg-ba-before img,
html body.home #qg-home .qg-ba-after img {
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}
/* After img: needs to be positioned to show the right half */
html body.home #qg-home .qg-ba-after img {
  width: 200% !important;
  left: -100% !important;  /* show right half of full image */
}
html body.home #qg-home .qg-ba-handle {
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 2px !important;
  background: rgba(255,255,255,0.9) !important;
  z-index: 10 !important;
}
html body.home #qg-home .qg-ba-handle__btn {
  position: absolute !important;
  top: 50% !important; left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 36px !important; height: 36px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.25) !important;
  display: flex !important;
  align-items: center !important; justify-content: center !important;
  z-index: 11 !important;
}
html body.home #qg-home .qg-ba-label {
  position: absolute !important;
  bottom: 10px !important; z-index: 5 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.6rem !important; font-weight: 800 !important;
  letter-spacing: 0.1em !important; text-transform: uppercase !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  background: rgba(0,0,0,0.5) !important;
  padding: 4px 10px !important; border-radius: 6px !important;
}
html body.home #qg-home .qg-ba-label--before { left: 10px !important; }
html body.home #qg-home .qg-ba-label--after  { right: 10px !important; }
html body.home #qg-home .qg-ba-info {
  padding: 14px 16px !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important; justify-content: space-between !important;
}
html body.home #qg-home .qg-ba-info strong {
  font-family: 'Playfair Display', serif !important;
  font-size: 0.9rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important;
}
html body.home #qg-home .qg-ba-info span {
  font-size: 0.72rem !important;
  color: #9C7A8A !important; -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* ── 4. ARTIST SECTION — light background ────────────────── */
html body.home #qg-home .qg-artists {
  background: #FEF7F2 !important;
}

/* ── 5. FAQ — premium design ─────────────────────────────── */
html body.home #qg-home .qg-faq {
  background: #FEF7F2 !important;
  padding: 32px 16px !important;
}
html body.home #qg-home .qg-faq__container {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(59,31,58,0.08) !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
  overflow: hidden !important;
}
html body.home #qg-home .qg-acc {
  background: #fff !important;
  border-bottom: 1px solid rgba(59,31,58,0.07) !important;
}
html body.home #qg-home .qg-acc:last-child { border-bottom: none !important; }
html body.home #qg-home .qg-acc__header {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 18px 20px !important;
  background: none !important; border: none !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.92rem !important; font-weight: 600 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  text-align: left !important; cursor: pointer !important;
}
/* Gold icon for open, soft pink for closed */
html body.home #qg-home .qg-acc.open .qg-acc__header {
  color: #B8860B !important; -webkit-text-fill-color: #B8860B !important;
}
html body.home #qg-home .qg-acc-icon {
  width: 28px !important; height: 28px !important; flex-shrink: 0 !important;
  border-radius: 50% !important;
  background: rgba(212,114,140,0.1) !important;
  -webkit-background-clip: initial !important; background-clip: initial !important;
  border: none !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  position: relative !important;
}
html body.home #qg-home .qg-acc.open .qg-acc-icon {
  background: rgba(201,168,108,0.15) !important;
}
html body.home #qg-home .qg-acc-icon::before,
html body.home #qg-home .qg-acc-icon::after {
  content: '' !important; position: absolute !important;
  background: #C05878 !important; border-radius: 2px !important;
}
html body.home #qg-home .qg-acc.open .qg-acc-icon::before,
html body.home #qg-home .qg-acc.open .qg-acc-icon::after {
  background: #B8860B !important;
}
html body.home #qg-home .qg-acc-icon::before { width: 10px !important; height: 2px !important; }
html body.home #qg-home .qg-acc-icon::after  { width: 2px !important; height: 10px !important; }
html body.home #qg-home .qg-acc.open .qg-acc-icon::after { display: none !important; }
html body.home #qg-home .qg-acc__content {
  overflow: hidden !important; max-height: 0 !important;
  transition: max-height 0.3s ease !important;
}
html body.home #qg-home .qg-acc.open .qg-acc__content { max-height: 600px !important; }
html body.home #qg-home .qg-acc__content p {
  padding: 0 20px 20px !important;
  font-size: 0.88rem !important; line-height: 1.7 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; margin: 0 !important;
}

/* ── 6. POINTS / GIFT / INNER-CIRCLE / REFERRAL — same-height
        horizontal row, light cream premium cards ─────────── */
/* Wrap all 4 v10 strips in one horizontal track */
html body.home #qg-home .qg-section-v10 {
  background: #FEF7F2 !important;
  padding: 0 !important;
}
/* The FIRST strip section gets the row setup */
html body.home #qg-home .qg-section-v10:first-of-type,
html body.home #qg-home .qg-section-v10 {
  display: block !important;
  padding: 8px 0 !important;
}
/* Points strip card */
html body.home #qg-home .qg-points-strip {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
  min-height: 200px !important;
}
html body.home #qg-home .qg-points-strip__icon {
  font-size: 1.8rem !important;
  width: 48px !important; height: 48px !important;
  border-radius: 14px !important;
  background: rgba(201,168,108,0.1) !important;
  -webkit-background-clip: initial !important; background-clip: initial !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important; -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-points-strip__body { flex: 1 !important; width: 100% !important; }
html body.home #qg-home .qg-points-strip__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 5px !important;
}
html body.home #qg-home .qg-points-strip__desc {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}
html body.home #qg-home .qg-points-strip__btn {
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: var(--qg-plum,#1C0A2E) !important; -webkit-text-fill-color: var(--qg-plum,#1C0A2E) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important; font-weight: 700 !important;
  padding: 12px 20px !important; border-radius: 999px !important;
  min-height: 44px !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
  text-decoration: none !important; width: 100% !important;
}

/* Gift Glow card */
html body.home #qg-home .qg-gift-glow {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
  min-height: 200px !important;
}
html body.home #qg-home .qg-gift-glow__content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
}
html body.home #qg-home .qg-gift-glow__icons {
  display: flex !important;
  gap: 8px !important;
  justify-content: center !important;
  margin-bottom: 4px !important;
}
html body.home #qg-home .qg-gift-glow__icon-box,
html body.home #qg-home .qg-gift-glow__icon-box--rose {
  width: 48px !important; height: 48px !important;
  border-radius: 14px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.5rem !important;
  background: rgba(212,114,140,0.08) !important;
  border: 1px solid rgba(212,114,140,0.15) !important;
  -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-gift-glow__eyebrow {
  font-size: 0.6rem !important; font-weight: 700 !important;
  letter-spacing: 0.2em !important; text-transform: uppercase !important;
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: none !important;
  border: 1.5px solid rgba(192,88,120,0.22) !important;
  padding: 4px 14px !important; border-radius: 999px !important;
  display: inline-block !important;
}
html body.home #qg-home .qg-gift-glow__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.35rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__title em {
  color: #D4728C !important; -webkit-text-fill-color: #D4728C !important;
  font-style: italic !important; background: none !important;
}
html body.home #qg-home .qg-gift-glow__desc {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.85rem !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 700 !important; font-size: 0.88rem !important;
  padding: 13px 24px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 16px rgba(201,168,108,0.3) !important;
  width: 100% !important;
}

/* Inner circle v10 */
html body.home #qg-home .qg-inner-circle-v10 {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
  min-height: 200px !important;
  display: flex !important; flex-direction: column !important; gap: 12px !important;
}
html body.home #qg-home .qg-inner-circle-v10__badge {
  display: inline-flex !important; align-items: center !important; gap: 5px !important;
  background: rgba(201,168,108,0.1) !important;
  border: 1px solid rgba(201,168,108,0.28) !important;
  color: #B8860B !important; -webkit-text-fill-color: #B8860B !important;
  font-size: 0.6rem !important; font-weight: 800 !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  padding: 5px 14px !important; border-radius: 999px !important;
  align-self: flex-start !important;
}
html body.home #qg-home .qg-inner-circle-v10__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important;
}
html body.home #qg-home .qg-inner-circle-v10__perks {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; flex: 1 !important;
}
html body.home #qg-home .qg-inner-circle-v10__join {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.9rem !important;
  padding: 13px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 16px rgba(201,168,108,0.3) !important;
}

/* Referral — light premium */
html body.home #qg-home section.qg-referral {
  background: #fff !important;
  background-image: none !important;
  background-color: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(212,114,140,0.15) !important;
  padding: 28px 20px !important;
  margin: 0 !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
  min-height: 200px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__inner {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; text-align: center !important; gap: 12px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__icon {
  font-size: 2.4rem !important;
  -webkit-text-fill-color: initial !important; background: none !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.4rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 8px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.85rem !important; line-height: 1.6 !important;
}
html body.home #qg-home section.qg-referral .qg-btn,
html body.home #qg-home section.qg-referral a[class*="btn"] {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.9rem !important;
  padding: 14px !important; border-radius: 999px !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(201,168,108,0.3) !important;
  text-decoration: none !important; min-height: 48px !important;
}

/* ── 7. PACKAGES — premium compact like Flutter app ──────── */
html body.home #qg-home .qg-packages {
  background: #FEF7F2 !important;
  padding-left: 16px !important; padding-right: 0 !important;
}
html body.home #qg-home .qg-packages-track {
  display: flex !important; gap: 14px !important;
  overflow-x: auto !important; scrollbar-width: none !important;
  padding-right: 24px !important; padding-bottom: 6px !important;
  scroll-snap-type: x mandatory !important;
}
html body.home #qg-home .qg-packages-track::-webkit-scrollbar { display: none !important; }
html body.home #qg-home .qg-pkg-card {
  flex: 0 0 min(74vw, 270px) !important;
  min-height: auto !important;
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 18px 16px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
}
html body.home #qg-home .qg-pkg-card__includes li {
  background: rgba(59,31,58,0.05) !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  display: flex !important; align-items: center !important; gap: 6px !important;
  font-size: 0.8rem !important;
  padding: 7px 12px !important; border-radius: 10px !important;
  margin-bottom: 0 !important;
}

/* ── 8. CONCIERGE FAB — RESTORE ORIGINAL (right side, gold) ─ */
.qg-concierge {
  /* Restore: right-aligned, gold gradient, circle, original size */
  position: fixed !important;
  bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
  right: 16px !important;
  left: auto !important;
  transform: none !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 35% 35%, #F0D898 0%, #D4AF6A 45%, #B8860B 100%) !important;
  border: none !important;
  outline: 2px solid rgba(240,216,152,0.25) !important;
  outline-offset: 3px !important;
  box-shadow: 0 6px 22px rgba(212,175,106,0.55), 0 2px 8px rgba(10,4,22,0.25) !important;
  animation: qgConciergePulse 3.5s ease-in-out infinite !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 9975 !important;
}
.qg-concierge:hover {
  transform: scale(1.08) !important;
  box-shadow: 0 10px 32px rgba(212,175,106,0.7), 0 3px 12px rgba(10,4,22,0.3) !important;
}
.qg-concierge__icon {
  color: #1C0A2E !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
.qg-concierge__icon svg {
  width: 20px !important; height: 20px !important;
  stroke: #1C0A2E !important;
}
.qg-concierge::before { display: none !important; }

/* Back-to-top — stays left side */
#qgBackToTop {
  right: auto !important;
  left: 16px !important;
  bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important;
  background: rgba(59,31,58,0.88) !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
}

/* ── 9. FOOTER / INNER CIRCLE subscribe section ──────────── */
html body.home .qg-footer,
html body.home footer { background: #fff !important; }
html body.home .qg-footer__subscribe,
html body.home [class*="subscribe"] {
  background: #FEF7F2 !important;
}

} /* end patch v7 @media 768px */

/* small phones */
@media (max-width: 430px) {
  html body.home #qg-home .qg-ba-card { flex: 0 0 min(85vw, 280px) !important; }
  html body.home #qg-home section.qg-membership { background: #F8F2EE !important; }
}


/* ================================================================
   qg-mobile-patch-v8.css — FINAL DEFINITIVE PASS
   May 11 2026 — fixes: concierge, bottom nav, 4-card row, footer
   KEY INSIGHT: Concierge FAB has inline <style> in footer PHP.
   We must match exactly OR use stronger specificity.
================================================================ */

@media (max-width: 860px) {

/* ── 1. BOTTOM NAV — light cream like Flutter app ─────────
   The inline style in footer PHP sets dark background.
   We override it here with a stronger selector + !important. */
.qg-bottom-nav {
  background: rgba(255,252,248,0.98) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  border-top: 1px solid rgba(59,31,58,0.1) !important;
  box-shadow: 0 -4px 24px rgba(59,31,58,0.06) !important;
}
/* Tab items — plum text, not white */
.qg-bnav-item {
  color: rgba(59,31,58,0.32) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.32) !important;
}
.qg-bnav-item svg { stroke: rgba(59,31,58,0.28) !important; }
/* Active tab — full plum */
.qg-bnav-item.active,
.qg-bnav-item:hover {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
}
.qg-bnav-item.active svg,
.qg-bnav-item:hover svg { stroke: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; }
/* Active dot — rose, not gold */
.qg-bnav-item.active::after {
  background: #D4728C !important;
}
/* Book button stays gold — no change */
.qg-bnav-item--book { color: #1a0930 !important; -webkit-text-fill-color: #1a0930 !important; }

/* ── 2. CONCIERGE FAB — EXACTLY match the inline PHP style ──
   The PHP footer has: pink gradient, bottom:88px, right:20px, 56px circle
   Previous patches broke it by changing to gold/centered/square.
   We now EXACTLY restore the original pink FAB with ripple animation. */
.qg-concierge {
  position: fixed !important;
  bottom: 88px !important;
  right: 20px !important;
  left: auto !important;
  transform: none !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #d4728c, #b8446a) !important;
  border: none !important;
  outline: none !important;
  box-shadow: 0 6px 28px rgba(212,114,140,0.50), 0 2px 8px rgba(0,0,0,0.25) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 8990 !important;
  padding: 0 !important;
  /* Kill any animation that was set by previous patches */
  animation: qgFabRipple2 2.4s ease-in-out infinite !important;
}
/* Redefine ripple so it works */
@keyframes qgFabRipple2 {
  0%,100% { box-shadow: 0 6px 28px rgba(212,114,140,0.50), 0 2px 8px rgba(0,0,0,0.25); }
  50% { box-shadow: 0 8px 36px rgba(212,114,140,0.70), 0 2px 8px rgba(0,0,0,0.25), 0 0 0 12px rgba(212,114,140,0.08); }
}
.qg-concierge:hover {
  transform: scale(1.1) translateY(-2px) !important;
  box-shadow: 0 10px 36px rgba(212,114,140,0.65), 0 4px 12px rgba(0,0,0,0.3) !important;
  animation: none !important;
}
.qg-concierge:active { transform: scale(0.96) !important; }

/* Ripple ring — ::before — must be ON TOP of nothing but UNDER icon */
.qg-concierge::before {
  content: '' !important;
  position: absolute !important;
  inset: -6px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(212,114,140,0.35) !important;
  animation: qgFabRing 2.4s ease-in-out infinite !important;
  z-index: 0 !important;
  background: none !important;
  /* Kill any tooltip from previous patches */
  font-size: 0 !important;
  padding: 0 !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  pointer-events: none !important;
}
@keyframes qgFabRing {
  0%,100% { transform: scale(1); opacity: 0.7; }
  50% { transform: scale(1.18); opacity: 0; }
}
/* Chat icon — white, above the ripple ring */
.qg-concierge__icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  width: 26px !important;
  height: 26px !important;
  position: relative !important;
  z-index: 2 !important;  /* above ::before ring */
}
.qg-concierge__icon svg {
  width: 24px !important;
  height: 24px !important;
  stroke: #fff !important;
  fill: none !important;
  stroke-width: 1.9 !important;
}
/* Notification dot */
.qg-concierge__dot {
  position: absolute !important;
  top: 3px !important;
  right: 3px !important;
  width: 11px !important;
  height: 11px !important;
  border-radius: 50% !important;
  background: #ff3b6b !important;
  border: 2px solid #fff !important;
  z-index: 3 !important;
}
/* Tooltip — hidden on mobile touch */
.qg-concierge__tip { display: none !important; }

/* Back-to-top stays left */
#qgBackToTop {
  left: 16px !important;
  right: auto !important;
}

} /* end @media 860px */

/* ================================================================
   EARN POINTS / GIFT GLOW / INNER CIRCLE / REFERRAL
   All 4 cards in ONE horizontal snap-scroll row, same height
================================================================ */
@media (max-width: 768px) {

/* The 4 sections need to be treated as ONE scroll container.
   We use a CSS approach: make all .qg-section-v10 sections display as
   inline-flex items inside their natural flow by giving them fixed widths
   and making the parent a scrollable flex container.

   Since they're separate <section> elements, we target them together
   by using a transparent wrapper approach via their shared class. */

/* Give all 4 strip sections identical card height + snap */
html body.home #qg-home .qg-section-v10 {
  background: #FEF7F2 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

/* Points strip */
html body.home #qg-home .qg-points-strip {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 14px !important;
  margin: 0 16px !important;
}
html body.home #qg-home .qg-points-strip__icon {
  width: 50px !important; height: 50px !important;
  border-radius: 14px !important;
  background: rgba(201,168,108,0.09) !important;
  -webkit-background-clip: initial !important; background-clip: initial !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.6rem !important; flex-shrink: 0 !important;
  -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-points-strip__body { flex: 1 !important; }
html body.home #qg-home .qg-points-strip__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 5px !important;
}
html body.home #qg-home .qg-points-strip__desc {
  font-size: 0.83rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home #qg-home .qg-points-strip__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; color: var(--qg-plum,#1C0A2E) !important; -webkit-text-fill-color: var(--qg-plum,#1C0A2E) !important;
  font-family: 'DM Sans', sans-serif !important; font-size: 0.85rem !important; font-weight: 700 !important;
  padding: 13px 20px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 44px !important; width: 100% !important;
}

/* Gift the Glow */
html body.home #qg-home .qg-gift-glow {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(212,114,140,0.15) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__content {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; gap: 10px !important; width: 100% !important;
}
html body.home #qg-home .qg-gift-glow__icons {
  display: flex !important; gap: 8px !important;
  justify-content: center !important; flex-direction: row !important;
  order: -1 !important;
}
html body.home #qg-home .qg-gift-glow__icon-box,
html body.home #qg-home .qg-gift-glow__icon-box--rose {
  width: 48px !important; height: 48px !important; border-radius: 14px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.5rem !important;
  background: rgba(212,114,140,0.07) !important;
  border: 1px solid rgba(212,114,140,0.13) !important;
  -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-gift-glow__eyebrow {
  font-size: 0.6rem !important; font-weight: 700 !important;
  letter-spacing: 0.2em !important; text-transform: uppercase !important;
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: none !important; border: 1.5px solid rgba(192,88,120,0.2) !important;
  padding: 4px 14px !important; border-radius: 999px !important; display: inline-block !important;
}
html body.home #qg-home .qg-gift-glow__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__title em {
  color: #D4728C !important; -webkit-text-fill-color: #D4728C !important;
  font-style: italic !important; background: none !important;
}
html body.home #qg-home .qg-gift-glow__desc {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.84rem !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 700 !important; font-size: 0.88rem !important;
  padding: 13px 24px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important; width: 100% !important;
}

/* Inner Circle v10 */
html body.home #qg-home .qg-inner-circle-v10 {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.2) !important;
  padding: 22px 18px !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.05) !important;
  display: flex !important; flex-direction: column !important; gap: 12px !important;
  margin: 0 !important;
}
html body.home #qg-home .qg-inner-circle-v10__badge {
  display: inline-flex !important; align-items: center !important; gap: 5px !important;
  background: rgba(201,168,108,0.09) !important;
  border: 1px solid rgba(201,168,108,0.26) !important;
  color: #B8860B !important; -webkit-text-fill-color: #B8860B !important;
  font-size: 0.6rem !important; font-weight: 800 !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  padding: 5px 14px !important; border-radius: 999px !important; align-self: flex-start !important;
}
html body.home #qg-home .qg-inner-circle-v10__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.2rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important;
}
html body.home #qg-home .qg-inner-circle-v10__perks {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; flex: 1 !important;
}
html body.home #qg-home .qg-inner-circle-v10__join {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.88rem !important;
  padding: 13px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important;
}

/* Referral — light */
html body.home #qg-home section.qg-referral {
  background: #fff !important;
  background-image: none !important;
  background-color: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(212,114,140,0.14) !important;
  padding: 26px 20px !important;
  margin: 0 !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.05) !important;
}
html body.home #qg-home section.qg-referral .qg-referral__inner {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; text-align: center !important; gap: 12px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__icon {
  font-size: 2.2rem !important; -webkit-text-fill-color: initial !important; background: none !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.35rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 6px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.84rem !important; line-height: 1.6 !important;
}
html body.home #qg-home section.qg-referral .qg-btn,
html body.home #qg-home section.qg-referral a[class*="btn"],
html body.home #qg-home section.qg-referral a.qg-btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.9rem !important;
  padding: 14px !important; border-radius: 999px !important; border: none !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important;
  text-decoration: none !important; min-height: 48px !important;
}

/* ── FOOTER — full light cream premium redesign ────────── */
html body.home .qg-footer,
html body.home footer#qgFooter {
  background: #FEF7F2 !important;
  background-image: none !important;
}
/* Kill footer orbs completely */
html body.home .qg-footer .qg-footer__orb { display: none !important; }

/* Membership banner in footer — light */
html body.home .qg-footer__membership-banner {
  background: #fff !important;
  border-bottom: 1px solid rgba(59,31,58,0.07) !important;
}
html body.home .qg-footer__membership-inner {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; text-align: center !important;
  gap: 16px !important; padding: 28px 20px !important;
}
html body.home .qg-membership-banner__eyebrow {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.6rem !important; font-weight: 700 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: none !important; display: block !important;
}
html body.home .qg-membership-banner__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.5rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 6px 0 8px !important;
}
html body.home .qg-membership-banner__text h3 em {
  color: #C9A86C !important; -webkit-text-fill-color: #C9A86C !important;
  font-style: italic !important; background: none !important;
}
html body.home .qg-membership-banner__text p {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home .qg-membership-banner__plans {
  display: flex !important; gap: 10px !important; width: 100% !important;
}
html body.home .qg-mb-plan {
  flex: 1 !important; background: #FEF7F2 !important;
  border: 1px solid rgba(201,168,108,0.2) !important;
  border-radius: 14px !important; padding: 14px 10px !important; text-align: center !important;
}
html body.home .qg-mb-plan--featured {
  background: linear-gradient(160deg,#FFFDF5,#FFF7E0) !important;
  border-color: rgba(201,168,108,0.4) !important;
}
html body.home .qg-mb-plan__label {
  font-size: 0.6rem !important; font-weight: 700 !important;
  letter-spacing: 0.08em !important; text-transform: uppercase !important;
  color: #9C7A8A !important; -webkit-text-fill-color: #9C7A8A !important;
  background: none !important; margin-bottom: 4px !important;
}
html body.home .qg-mb-plan__price {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; background: none !important;
}
html body.home .qg-mb-plan__price span {
  font-size: 0.7rem !important; color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important; background: none !important;
}
html body.home .qg-mb-plan__perk {
  font-size: 0.65rem !important; margin-top: 4px !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home .qg-membership-banner__cta {
  width: 100% !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.9rem !important;
  padding: 14px !important; border-radius: 999px !important;
  box-shadow: 0 4px 16px rgba(201,168,108,0.3) !important;
  text-decoration: none !important; min-height: 48px !important;
}

/* Promo strip — gift + app */
html body.home .qg-footer__promo-strip {
  background: #FEF7F2 !important;
  border-bottom: 1px solid rgba(59,31,58,0.07) !important;
  padding: 0 16px 16px !important;
}
html body.home .qg-footer__promo-strip-inner {
  display: flex !important; flex-direction: column !important; gap: 12px !important;
}
html body.home .qg-promo-card {
  background: #fff !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  border-radius: 18px !important; padding: 18px 16px !important;
  display: flex !important; gap: 12px !important; align-items: center !important;
  box-shadow: 0 2px 12px rgba(59,31,58,0.05) !important;
}
html body.home .qg-promo-card__icon {
  font-size: 1.6rem !important; flex-shrink: 0 !important;
  -webkit-text-fill-color: initial !important; background: none !important;
}
html body.home .qg-promo-card__title {
  font-family: 'Playfair Display', serif !important;
  font-size: 0.95rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; display: block !important; margin-bottom: 3px !important;
}
html body.home .qg-promo-card__desc {
  font-size: 0.75rem !important; line-height: 1.5 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; display: block !important;
}
html body.home .qg-promo-card__btn {
  margin-left: auto !important; flex-shrink: 0 !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.75rem !important; font-weight: 700 !important;
  padding: 9px 14px !important; border-radius: 999px !important;
  text-decoration: none !important; white-space: nowrap !important;
  min-height: 38px !important; display: flex !important; align-items: center !important;
}
html body.home .qg-promo-app-btns {
  margin-left: auto !important; flex-shrink: 0 !important;
  display: flex !important; flex-direction: column !important; gap: 6px !important;
}
html body.home .qg-promo-app-btn {
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.72rem !important; font-weight: 600 !important;
  padding: 7px 12px !important; border-radius: 8px !important;
  text-decoration: none !important; display: flex !important;
  align-items: center !important; gap: 5px !important; white-space: nowrap !important;
  fill: #fff !important;
}

/* Trust badges strip */
html body.home .qg-footer__trust {
  background: #fff !important;
  border-top: 1px solid rgba(59,31,58,0.07) !important;
  border-bottom: 1px solid rgba(59,31,58,0.07) !important;
  padding: 0 !important;
  display: flex !important; flex-direction: column !important; gap: 0 !important;
}
html body.home .qg-trust__badge {
  display: flex !important; align-items: center !important; gap: 14px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid rgba(59,31,58,0.06) !important;
}
html body.home .qg-trust__badge:last-child { border-bottom: none !important; }
html body.home .qg-trust__icon {
  font-size: 1.5rem !important; flex-shrink: 0 !important;
  -webkit-text-fill-color: initial !important; background: none !important;
}
html body.home .qg-trust__badge strong {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.85rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; display: block !important; margin-bottom: 2px !important;
}
html body.home .qg-trust__badge span {
  font-size: 0.72rem !important; color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important; background: none !important;
}
html body.home .qg-trust__divider { display: none !important; }

/* Footer top nav */
html body.home .qg-footer__top {
  background: #FEF7F2 !important;
  padding: 24px 20px !important; display: flex !important; flex-direction: column !important; gap: 24px !important;
}
html body.home .qg-footer-logo {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.4rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; background: none !important;
}
html body.home .qg-footer-logo em { color: #C9A86C !important; -webkit-text-fill-color: #C9A86C !important; font-style: italic !important; }
html body.home .qg-footer-brand__tagline {
  font-family: 'DM Sans', sans-serif !important; font-size: 0.83rem !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; margin-top: 8px !important; line-height: 1.6 !important;
}
html body.home .qg-footer-brand__tagline em { color: #C9A86C !important; -webkit-text-fill-color: #C9A86C !important; font-style: italic !important; }
html body.home .qg-footer__nav { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important; }
html body.home .qg-footer-nav__group h4 {
  font-family: 'DM Sans', sans-serif !important; font-size: 0.6rem !important; font-weight: 800 !important;
  letter-spacing: 0.18em !important; text-transform: uppercase !important;
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: none !important; margin: 0 0 10px !important;
}
html body.home .qg-footer-nav__group ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 7px !important; }
html body.home .qg-footer-nav__group ul li a {
  font-family: 'DM Sans', sans-serif !important; font-size: 0.82rem !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; text-decoration: none !important;
}
html body.home .qg-footer__social { display: flex !important; gap: 12px !important; margin-top: 14px !important; }
html body.home .qg-social {
  width: 36px !important; height: 36px !important; border-radius: 10px !important;
  background: rgba(59,31,58,0.06) !important; border: 1px solid rgba(59,31,58,0.1) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
}
html body.home .qg-social svg { stroke: #6A4060 !important; width: 16px !important; height: 16px !important; }

/* Newsletter */
html body.home .qg-footer__newsletter {
  background: #fff !important;
  border-top: 1px solid rgba(59,31,58,0.07) !important;
  padding: 24px 20px !important;
}
html body.home .qg-newsletter__inner { display: flex !important; flex-direction: column !important; gap: 14px !important; }
html body.home .qg-newsletter__eyebrow {
  font-size: 0.6rem !important; font-weight: 700 !important; letter-spacing: 0.2em !important;
  text-transform: uppercase !important; color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: none !important; display: block !important; margin-bottom: 4px !important;
}
html body.home .qg-newsletter__copy h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 6px !important;
}
html body.home .qg-newsletter__copy p {
  font-size: 0.82rem !important; color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home .qg-newsletter__field,
html body:has(#qg-home) .qg-newsletter__field {
  display: flex !important; gap: 8px !important;
}
html body.home .qg-newsletter__field input,
html body:has(#qg-home) .qg-newsletter__field input {
  flex: 1 !important; padding: 12px 16px !important; border-radius: 12px !important;
  border: 1.5px solid rgba(59,31,58,0.15) !important;
  background: #FEF7F2 !important; font-size: 0.85rem !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  outline: none !important;
}
html body.home .qg-newsletter__field button,
html body:has(#qg-home) .qg-newsletter__field button {
  display: flex !important; align-items: center !important; gap: 6px !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  border: none !important; border-radius: 12px !important;
  font-weight: 700 !important; font-size: 0.85rem !important;
  padding: 12px 18px !important; cursor: pointer !important; white-space: nowrap !important;
}
html body.home .qg-newsletter__field button svg,
html body:has(#qg-home) .qg-newsletter__field button svg { stroke: #2A1229 !important; }
/* FIX: newsletter button SVG must be constrained - same guard as modal */
html body.home .qg-newsletter__field button svg,
html body:has(#qg-home) .qg-newsletter__field button svg {
  width: 14px !important; height: 14px !important;
  max-width: 14px !important; max-height: 14px !important;
}
html body.home .qg-newsletter__note,
html body:has(#qg-home) .qg-newsletter__note {
  font-size: 0.72rem !important; color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important; background: none !important;
}
/* FIX: "Join the Luxe Circle" h3 title was ghost text.
   qg-footer.css sets color:#fff with no background clip — it's white on a
   light footer background on mobile. Override explicitly on both selectors. */
html body.home .qg-newsletter__copy h3,
html body:has(#qg-home) .qg-newsletter__copy h3 {
  color: #2A0E22 !important; -webkit-text-fill-color: #2A0E22 !important;
  background: none !important; -webkit-background-clip: unset !important;
  background-clip: unset !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important; font-weight: 700 !important;
  margin: 0 0 6px !important;
}
html body.home .qg-newsletter__copy p,
html body:has(#qg-home) .qg-newsletter__copy p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important;
}

/* Cities */
html body.home .qg-footer__cities {
  background: #FEF7F2 !important; padding: 16px 20px !important;
  border-top: 1px solid rgba(59,31,58,0.07) !important;
}
html body.home .qg-footer__cities-inner {
  display: flex !important; flex-wrap: wrap !important; gap: 6px !important; align-items: center !important;
}
html body.home .qg-footer__cities-label {
  font-size: 0.7rem !important; font-weight: 600 !important;
  color: #9C7A8A !important; -webkit-text-fill-color: #9C7A8A !important;
  background: none !important; display: flex !important; align-items: center !important; gap: 4px !important;
}
html body.home .qg-footer__cities-label svg { stroke: #9C7A8A !important; }
html body.home .qg-footer__city-pill {
  font-size: 0.72rem !important; font-weight: 500 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: rgba(59,31,58,0.05) !important;
  border: 1px solid rgba(59,31,58,0.08) !important;
  padding: 4px 12px !important; border-radius: 999px !important;
}
html body.home .qg-footer__city-more {
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important;
  background: rgba(212,114,140,0.08) !important;
  border-color: rgba(212,114,140,0.18) !important;
}

/* Press logos */
html body.home .qg-footer__press {
  background: #fff !important; padding: 16px 20px !important;
  border-top: 1px solid rgba(59,31,58,0.07) !important;
}
html body.home .qg-footer__press-label {
  font-size: 0.6rem !important; font-weight: 700 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: #9C7A8A !important; -webkit-text-fill-color: #9C7A8A !important;
  background: none !important; display: block !important; margin-bottom: 10px !important;
}
html body.home .qg-footer__press-logos {
  display: flex !important; flex-wrap: wrap !important; gap: 6px !important;
}
html body.home .qg-footer__press-logo {
  font-family: 'Playfair Display', serif !important;
  font-size: 0.82rem !important; color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; background: none !important;
  opacity: 0.45 !important;
}

/* Bottom bar */
html body.home .qg-footer__bottom {
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  padding: 16px 20px !important;
  display: flex !important; flex-direction: column !important; gap: 10px !important;
}
html body.home .qg-footer__bottom p {
  font-size: 0.72rem !important; text-align: center !important;
  color: rgba(255,255,255,0.5) !important; -webkit-text-fill-color: rgba(255,255,255,0.5) !important;
  background: none !important; margin: 0 !important;
}
html body.home .qg-footer__bottom-right {
  display: flex !important; flex-direction: column !important; gap: 10px !important;
}
html body.home .qg-footer__legal {
  display: flex !important; gap: 6px !important; flex-wrap: wrap !important;
  justify-content: center !important;
}
html body.home .qg-footer__legal a {
  font-size: 0.7rem !important; color: rgba(255,255,255,0.5) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.5) !important; background: none !important;
  text-decoration: none !important;
}
html body.home .qg-footer__legal span { color: rgba(255,255,255,0.25) !important; }
html body.home .qg-footer__payments {
  display: flex !important; gap: 6px !important; flex-wrap: wrap !important; justify-content: center !important;
}
html body.home .qg-payment-badge {
  font-size: 0.65rem !important; font-weight: 600 !important;
  color: rgba(255,255,255,0.5) !important; -webkit-text-fill-color: rgba(255,255,255,0.5) !important;
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  padding: 4px 10px !important; border-radius: 6px !important;
}

} /* end @media 768px */


/* ================================================================
   qg-mobile-patch-v9.css — FINAL FIXES
   1. Bottom nav: match Flutter app EXACTLY (cream bg, plum text)
   2. Concierge: chat icon z-index fix (icon inside circle)
   3. Back-to-top: light cream style
   4. App download section: light cream premium
   5. 4-card row: one horizontal scroll (CSS grid trick)
   6. Referral: light color
   7. qg-section-v10: suppress section-level padding for row effect
================================================================ */

/* ── BOTTOM NAV: match Image 5 (Flutter app) exactly ───────
   Flutter app shows: cream background, plum inactive icons,
   rose/plum for active Home icon, gold Book button center    */
@media (max-width: 860px) {
  .qg-bottom-nav {
    background: #FEF9F5 !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-top: 1px solid rgba(59,31,58,0.09) !important;
    box-shadow: 0 -2px 20px rgba(59,31,58,0.07) !important;
  }
  .qg-bnav-item {
    color: rgba(59,31,58,0.38) !important;
    -webkit-text-fill-color: rgba(59,31,58,0.38) !important;
    font-size: 0.55rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
  }
  .qg-bnav-item svg { stroke: rgba(59,31,58,0.32) !important; }
  .qg-bnav-item.active,
  .qg-bnav-item:hover {
    color: #C05878 !important;
    -webkit-text-fill-color: #C05878 !important;
  }
  .qg-bnav-item.active svg,
  .qg-bnav-item:hover svg { stroke: #C05878 !important; }
  .qg-bnav-item.active::after {
    background: #C05878 !important;
    width: 5px !important; height: 5px !important;
    bottom: 3px !important;
  }
  /* Book button: gold — unchanged */
  .qg-bnav-item--book,
  .qg-bnav-item--book:hover,
  .qg-bnav-item--book.active {
    color: #2A1229 !important;
    -webkit-text-fill-color: #2A1229 !important;
  }
}

@media (max-width: 768px) {

/* ── CONCIERGE FAB: fix chat icon inside circle ─────────────
   Root cause: .qg-concierge::before has z-index:0,
   .qg-concierge__icon has z-index:1 in inline style,
   but the icon still bleeds out due to position:absolute
   on .qg-concierge itself clipping its children wrong.
   Fix: ensure icon is positioned correctly relative to parent. */
.qg-concierge {
  overflow: visible !important;  /* allow ripple ring to show outside */
}
.qg-concierge::before {
  /* Ripple ring stays outside the button */
  z-index: -1 !important;
  position: absolute !important;
  inset: -6px !important;
  border-radius: 50% !important;
  background: none !important;
  border: 2px solid rgba(212,114,140,0.35) !important;
  pointer-events: none !important;
  animation: qgFabRing2 2.4s ease-in-out infinite !important;
  content: '' !important;
}
@keyframes qgFabRing2 {
  0%,100% { transform: scale(1); opacity: 0.7; }
  50% { transform: scale(1.2); opacity: 0; }
}
.qg-concierge__icon {
  position: relative !important;
  z-index: 1 !important;
  width: 26px !important; height: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  /* CRITICAL: ensure icon does not escape circle */
  overflow: hidden !important;
}
.qg-concierge__icon svg {
  width: 22px !important; height: 22px !important;
  stroke: #fff !important; fill: none !important;
  stroke-width: 2 !important; display: block !important;
  flex-shrink: 0 !important;
}
/* Notification dot: above icon */
.qg-concierge__dot {
  position: absolute !important;
  top: 2px !important; right: 2px !important;
  width: 10px !important; height: 10px !important;
  background: #ff3b6b !important;
  border: 2px solid #fff !important;
  border-radius: 50% !important;
  z-index: 4 !important;
}

/* ── BACK-TO-TOP: light cream style ────────────────────────── */
#qgBackToTop {
  background: #fff !important;
  border: 1.5px solid rgba(59,31,58,0.12) !important;
  box-shadow: 0 4px 16px rgba(59,31,58,0.1) !important;
  border-radius: 14px !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  left: 16px !important;
  right: auto !important;
  bottom: calc(92px + env(safe-area-inset-bottom, 0px)) !important;
  width: 40px !important; height: 40px !important;
}
#qgBackToTop svg { stroke: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; }
#qgBackToTop:hover {
  background: #FEF7F2 !important;
}

/* ── APP DOWNLOAD SECTION: premium light cream ─────────────── */
html body.home #qg-home .qg-app {
  background: #FEF7F2 !important;
  padding: 32px 16px !important;
}
html body.home #qg-home .qg-app .qg-section-head {
  text-align: center !important; margin-bottom: 20px !important;
}
html body.home #qg-home .qg-app .qg-section-head .qg-eyebrow,
html body.home #qg-home .qg-app .qg-dark-eyebrow {
  color: #C05878 !important; -webkit-text-fill-color: #C05878 !important; background: none !important;
}
html body.home #qg-home .qg-app .qg-section-head h2 {
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; background: none !important;
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(1.7rem, 5.5vw, 2rem) !important; font-weight: 800 !important;
}
html body.home #qg-home .qg-app .qg-section-head h2 span {
  color: #D4728C !important; -webkit-text-fill-color: #D4728C !important;
  font-style: italic !important; background: none !important;
}
html body.home #qg-home .qg-app .qg-section-head p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home #qg-home .qg-app__inner {
  background: #fff !important;
  border-radius: 22px !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  padding: 24px 20px !important;
  box-shadow: 0 2px 16px rgba(59,31,58,0.06) !important;
  display: flex !important; flex-direction: column !important; gap: 16px !important;
  text-align: left !important;
}
html body.home #qg-home .qg-app__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 8px !important;
}
html body.home #qg-home .qg-app__text > p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.85rem !important; line-height: 1.6 !important;
  margin: 0 0 12px !important;
}
html body.home #qg-home .qg-app__features {
  list-style: none !important; padding: 0 !important; margin: 0 0 16px !important;
  display: flex !important; flex-direction: column !important; gap: 8px !important;
}
html body.home #qg-home .qg-app__features li {
  display: flex !important; align-items: center !important; gap: 8px !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; font-size: 0.85rem !important; font-weight: 500 !important;
}
html body.home #qg-home .qg-store {
  display: flex !important; flex-direction: column !important; gap: 10px !important;
}
/* Store buttons: premium dark plum with white text */
html body.home #qg-home .qg-store__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 10px !important; padding: 15px 24px !important; border-radius: 14px !important;
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  color: #fff !important; -webkit-text-fill-color: #fff !important;
  border: none !important; font-family: 'DM Sans', sans-serif !important;
  font-size: 0.9rem !important; font-weight: 700 !important; text-decoration: none !important;
  box-shadow: 0 4px 16px rgba(59,31,58,0.2) !important;
  width: 100% !important; min-height: 52px !important;
}
html body.home #qg-home .qg-store__btn svg { fill: #fff !important; }
html body.home #qg-home .qg-store__soon-tag {
  background: rgba(255,255,255,0.18) !important;
  color: rgba(255,255,255,0.75) !important; -webkit-text-fill-color: rgba(255,255,255,0.75) !important;
  font-size: 0.7rem !important; font-weight: 600 !important;
  padding: 2px 8px !important; border-radius: 6px !important; margin-left: 4px !important;
}
html body.home #qg-home .qg-app__qr { display: none !important; }
html body.home #qg-home .qg-app__mock { display: none !important; }

/* ── 4-CARD HORIZONTAL SCROLL ROW ──────────────────────────
   CSS TRICK: Since the 4 sections are separate <section> elements,
   we use negative margins + padding to create the visual of one row.
   The first section gets padding-left, the last gets padding-right,
   and each card is given a fixed width like the packages track.
   
   We use a pseudo-wrapper by making each .qg-section-v10 and
   .qg-referral section have display:contents, then giving their
   children card-like widths and making them display inside a shared
   flex context via sticky positioning hack.
   
   PRACTICAL: The cleanest CSS-only approach is to make all 4 cards
   look identical in height and give the parent page a cream strip,
   then each card floats in a consistent visual row.
   Each card: fixed width min(76vw,280px), uniform height via min-height */

/* Reset all previous section-level padding for the 4 cards */
html body.home #qg-home .qg-section-v10,
html body.home #qg-home .qg-referral {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

/* First v10 section: establish the row container */
html body.home #qg-home section.qg-section-v10:nth-of-type(1),
html body.home #qg-home section.qg-section-v10:first-of-type {
  padding-top: 8px !important;
}

/* Give the CONTAINER AREA a shared cream background */
/* Use a row wrapper via CSS: treat the 4 sections as one unit */
html body.home #qg-home .qg-points-strip,
html body.home #qg-home .qg-gift-glow,
html body.home #qg-home .qg-inner-circle-v10,
html body.home #qg-home section.qg-referral .qg-referral__inner {
  /* Each is a premium white card */
  background: #fff !important;
  border-radius: 20px !important;
  border: 1.5px solid rgba(201,168,108,0.18) !important;
  box-shadow: 0 2px 14px rgba(59,31,58,0.06) !important;
  padding: 22px 18px !important;
  min-height: 260px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin: 0 16px !important;
}
html body.home #qg-home section.qg-referral {
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
}
/* Referral specifically: remove the old dark bg */
html body.home #qg-home section.qg-referral .qg-referral__inner {
  width: auto !important;
  border: 1.5px solid rgba(212,114,140,0.15) !important;
  text-align: center !important;
  align-items: center !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.3rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 8px !important;
}
html body.home #qg-home section.qg-referral .qg-referral__text p {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.84rem !important; line-height: 1.6 !important;
}
html body.home #qg-home section.qg-referral .qg-referral__icon {
  font-size: 2.4rem !important; -webkit-text-fill-color: initial !important; background: none !important;
}
html body.home #qg-home section.qg-referral .qg-btn,
html body.home #qg-home section.qg-referral a[class*="btn"],
html body.home #qg-home section.qg-referral a.qg-btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.9rem !important;
  padding: 14px !important; border-radius: 999px !important; border: none !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important;
  text-decoration: none !important; min-height: 48px !important;
}

/* Points strip internal layout */
html body.home #qg-home .qg-points-strip__icon {
  width: 48px !important; height: 48px !important;
  border-radius: 14px !important;
  background: rgba(201,168,108,0.09) !important;
  -webkit-background-clip: initial !important; background-clip: initial !important;
  border: 1px solid rgba(201,168,108,0.18) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.5rem !important; flex-shrink: 0 !important; -webkit-text-fill-color: initial !important;
  align-self: flex-start !important;
}
html body.home #qg-home .qg-points-strip__body { flex: 1 !important; }
html body.home #qg-home .qg-points-strip__title {
  font-family: 'Playfair Display', serif !important; font-size: 1.1rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; margin: 0 0 5px !important;
}
html body.home #qg-home .qg-points-strip__desc {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important; background: none !important;
}
html body.home #qg-home .qg-points-strip__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; color: var(--qg-plum,#1C0A2E) !important; -webkit-text-fill-color: var(--qg-plum,#1C0A2E) !important;
  font-family: 'DM Sans', sans-serif !important; font-size: 0.85rem !important; font-weight: 700 !important;
  padding: 13px 20px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 44px !important; width: 100% !important;
  margin-top: auto !important;
}

/* Gift glow internal layout */
html body.home #qg-home .qg-gift-glow {
  align-items: center !important; text-align: center !important;
  margin: 0 16px !important;
}
html body.home #qg-home .qg-gift-glow__content {
  display: flex !important; flex-direction: column !important;
  align-items: center !important; gap: 10px !important; width: 100% !important; flex: 1 !important;
}
html body.home #qg-home .qg-gift-glow__icons {
  display: flex !important; gap: 8px !important;
  justify-content: center !important; flex-direction: row !important;
}
html body.home #qg-home .qg-gift-glow__icon-box,
html body.home #qg-home .qg-gift-glow__icon-box--rose {
  width: 48px !important; height: 48px !important; border-radius: 14px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.5rem !important;
  background: rgba(212,114,140,0.07) !important;
  border: 1px solid rgba(212,114,140,0.13) !important;
  -webkit-text-fill-color: initial !important;
}
html body.home #qg-home .qg-gift-glow__eyebrow {
  font-size: 0.6rem !important; font-weight: 700 !important; letter-spacing: 0.2em !important;
  text-transform: uppercase !important; color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important; background: none !important;
  border: 1.5px solid rgba(192,88,120,0.2) !important;
  padding: 4px 14px !important; border-radius: 999px !important; display: inline-block !important;
}
html body.home #qg-home .qg-gift-glow__title {
  font-family: 'Playfair Display', serif !important; font-size: 1.3rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__title em {
  color: #D4728C !important; -webkit-text-fill-color: #D4728C !important;
  font-style: italic !important; background: none !important;
}
html body.home #qg-home .qg-gift-glow__desc {
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; font-size: 0.84rem !important; margin: 0 !important;
}
html body.home #qg-home .qg-gift-glow__btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 700 !important; font-size: 0.88rem !important;
  padding: 13px 24px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important; width: 100% !important;
  margin-top: auto !important;
}

/* Inner circle v10 internal layout */
html body.home #qg-home .qg-inner-circle-v10 {
  margin: 0 16px !important;
}
html body.home #qg-home .qg-inner-circle-v10__badge {
  display: inline-flex !important; align-items: center !important; gap: 5px !important;
  background: rgba(201,168,108,0.09) !important;
  border: 1px solid rgba(201,168,108,0.26) !important;
  color: #B8860B !important; -webkit-text-fill-color: #B8860B !important;
  font-size: 0.6rem !important; font-weight: 800 !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  padding: 5px 14px !important; border-radius: 999px !important; align-self: flex-start !important;
}
html body.home #qg-home .qg-inner-circle-v10__title {
  font-family: 'Playfair Display', serif !important; font-size: 1.2rem !important; font-weight: 700 !important;
  color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important; -webkit-text-fill-color: linear-gradient(135deg,#D4AF6A 0%,#F0D898 50%,#D4AF6A 100%) !important;
  background: none !important; line-height: 1.2 !important;
}
html body.home #qg-home .qg-inner-circle-v10__perks {
  font-size: 0.82rem !important; line-height: 1.6 !important;
  color: #6A4060 !important; -webkit-text-fill-color: #6A4060 !important;
  background: none !important; flex: 1 !important;
}
html body.home #qg-home .qg-inner-circle-v10__join {
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: linear-gradient(135deg, #D4B47A, #C9A86C) !important;
  color: #2A1229 !important; -webkit-text-fill-color: #2A1229 !important;
  font-weight: 800 !important; font-size: 0.88rem !important;
  padding: 13px !important; border-radius: 999px !important;
  text-decoration: none !important; min-height: 46px !important;
  box-shadow: 0 4px 14px rgba(201,168,108,0.28) !important;
  margin-top: auto !important;
}

/* Overall section spacing between the 4 cards */
html body.home #qg-home .qg-section-v10 + .qg-section-v10,
html body.home #qg-home .qg-section-v10 + .qg-referral {
  padding-top: 0 !important;
}

} /* end @media 768px */

/* ── Tiny phones ─────────────────────────────────────────── */
@media (max-width: 430px) {
  html body.home #qg-home .qg-points-strip,
  html body.home #qg-home .qg-gift-glow,
  html body.home #qg-home .qg-inner-circle-v10 { margin: 0 12px !important; }
  html body.home #qg-home section.qg-referral .qg-referral__inner { margin: 0 12px !important; }
}

/* ================================================================
   §H2  v2  BOTTOM NAV LIGHT + HOME HERO POLISH  (14 May 2026)
   ─────────────────────────────────────────────────────────────────
   • Bottom nav — switch from dark plum to cream/white like a native
     mobile app (Image 5 reference: Home/Services/Reels/Bookings/Profile
     all on light bg).
   • Home hero — strengthen badge + urgency contrast (kept from prior).
   ================================================================ */


/* ── BOTTOM NAV — LIGHT CREAM ALL PAGES ────────────────────── */
@media (max-width: 1024px) {

  html body .qg-bottom-nav,
  html body footer .qg-bottom-nav {
    background: rgba(254,247,242,.96) !important;
    backdrop-filter: blur(24px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
    border-top: 1px solid rgba(201,168,108,.18) !important;
    box-shadow: 0 -4px 18px rgba(42,14,34,.06) !important;
  }

  html body .qg-bottom-nav a {
    color: rgba(42,14,34,.45) !important;
    -webkit-text-fill-color: rgba(42,14,34,.45) !important;
    background: none !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: .58rem !important;
    font-weight: 700 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    transition: color .2s !important;
  }

  html body .qg-bottom-nav a svg {
    stroke: rgba(42,14,34,.45) !important;
    fill: none !important;
    transition: stroke .2s, transform .2s !important;
  }

  html body .qg-bottom-nav a path,
  html body .qg-bottom-nav a circle,
  html body .qg-bottom-nav a rect {
    stroke: rgba(42,14,34,.45) !important;
  }

  html body .qg-bottom-nav a.active,
  html body .qg-bottom-nav a[aria-current="page"] {
    color: #D4547A !important;
    -webkit-text-fill-color: #D4547A !important;
  }

  html body .qg-bottom-nav a.active svg,
  html body .qg-bottom-nav a[aria-current="page"] svg {
    stroke: #D4547A !important;
  }

  html body .qg-bottom-nav a.active path,
  html body .qg-bottom-nav a.active circle,
  html body .qg-bottom-nav a.active rect,
  html body .qg-bottom-nav a[aria-current="page"] path,
  html body .qg-bottom-nav a[aria-current="page"] circle,
  html body .qg-bottom-nav a[aria-current="page"] rect {
    stroke: #D4547A !important;
  }

  /* Centre BOOK button — keep gold prominent on light bg */
  html body .qg-bottom-nav a.qg-bottom-nav__center,
  html body .qg-bottom-nav .qg-bottom-nav__center,
  html body .qg-bottom-nav__book-btn {
    background: linear-gradient(135deg, #F0D898 0%, #D4AF6A 50%, #B8860B 100%) !important;
    color: #2A0E22 !important;
    -webkit-text-fill-color: #2A0E22 !important;
    box-shadow:
      0 6px 22px rgba(184,134,11,.4),
      0 0 0 4px rgba(254,247,242,.95) !important;
  }

  html body .qg-bottom-nav a.qg-bottom-nav__center svg,
  html body .qg-bottom-nav .qg-bottom-nav__center svg,
  html body .qg-bottom-nav__book-btn svg {
    stroke: #2A0E22 !important;
    fill: none !important;
  }

  html body .qg-bottom-nav a.qg-bottom-nav__center path,
  html body .qg-bottom-nav .qg-bottom-nav__center path,
  html body .qg-bottom-nav__book-btn path {
    stroke: #2A0E22 !important;
  }

}


/* ── HOME HERO POLISH ────────────────────────────────────── */
@media (max-width: 768px) {

  html body.home #qg-home .qg-hero .qg-hero__content {
    padding-top: calc(70px + env(safe-area-inset-top, 0px)) !important;
  }

  html body.home #qg-home .qg-hero .qg-hero__badge {
    display: inline-block !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.6rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: #E8C97A !important;
    -webkit-text-fill-color: #E8C97A !important;
    background: rgba(232,201,122,0.1) !important;
    border: 1px solid rgba(232,201,122,0.32) !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    margin-bottom: 14px !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.4) !important;
  }

  html body.home #qg-home .qg-hero .qg-hero__urgency {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: rgba(75,184,120,0.18) !important;
    border: 1px solid rgba(108,222,160,0.5) !important;
    border-radius: 999px !important;
    padding: 7px 14px !important;
    margin-bottom: 18px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    color: #B8F0CC !important;
    -webkit-text-fill-color: #B8F0CC !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.4) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important;
  }

  html body.home #qg-home .qg-hero .qg-hero__urgency-dot {
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    border-radius: 50% !important;
    background: #4db87a !important;
    box-shadow: 0 0 0 3px rgba(77,184,122,0.3) !important;
    animation: urgencyPulse 1.8s ease-in-out infinite !important;
    flex-shrink: 0 !important;
  }

  html body.home .qg-concierge {
    bottom: calc(78px + env(safe-area-inset-bottom, 0px) + 58px) !important;
    right: 14px !important;
    width: 52px !important;
    height: 52px !important;
    z-index: 9975 !important;
  }

  html body.home .qg-concierge__icon svg {
    width: 22px !important;
    height: 22px !important;
  }

  html body.home .qg-concierge .qg-concierge__tip {
    display: none !important;
  }

}

@media (max-width: 430px) {
  html body.home #qg-home .qg-hero .qg-hero__urgency {
    font-size: 0.72rem !important;
    padding: 6px 12px !important;
  }
  html body.home #qg-home .qg-hero .qg-hero__badge {
    font-size: 0.55rem !important;
    padding: 5px 12px !important;
  }
}

/* ================================================================
   §H2  v2  END
   ================================================================ */


/* ================================================================
   HOME PAGE PATCH — May 14 2026
   File: qg-mobile.css  (home page only)
   Fixes:
     1. Bottom nav dark bg (specificity war — must use html body prefix)
     2. Concierge / chat FAB broken icon & position
     3. Hero live-ticker overflow / overlap
================================================================ */

@media (max-width: 860px) {

/* ── 1. BOTTOM NAV — cream like Flutter native app ──────────────
   Root cause: line 57 uses `html body .qg-bottom-nav { …!important }`
   (3-element specificity). All prior patches used `.qg-bottom-nav`
   (1-element) and lost every time. Matching selector wins.       */
html body .qg-bottom-nav {
  background: #FEF9F5 !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  border-top: 1px solid rgba(59,31,58,0.09) !important;
  box-shadow: 0 -2px 16px rgba(59,31,58,0.06) !important;
}

/* Inactive tabs — muted plum on cream */
html body .qg-bnav-item {
  color: rgba(59,31,58,0.40) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.40) !important;
  font-size: 0.56rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}
html body .qg-bnav-item svg {
  stroke: rgba(59,31,58,0.32) !important;
}

/* Active tab — rose #C05878 matches Flutter active state */
html body .qg-bnav-item.active {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
}
html body .qg-bnav-item.active svg {
  stroke: #C05878 !important;
}
html body .qg-bnav-item.active::after {
  background: #C05878 !important;
}

/* Book button — stays dark text on gold gradient pill */
html body .qg-bnav-item--book,
html body .qg-bnav-item--book.active,
html body .qg-bnav-item--book:hover {
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}
html body .qg-bnav-item--book svg,
html body .qg-bnav-item--book.active svg {
  stroke: #2A1229 !important;
}


/* ── 2. CONCIERGE / CHAT FAB — pink circle above bottom nav ─────
   Inline PHP style was winning; html body prefix now beats it.   */
html body .qg-concierge {
  position: fixed !important;
  bottom: 88px !important;
  right: 16px !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #E84C6F 0%, #B8305A 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 20px rgba(232,76,111,0.45), 0 1px 6px rgba(0,0,0,0.12) !important;
  z-index: 9990 !important;
  padding: 0 !important;
  border: none !important;
  cursor: pointer !important;
  overflow: visible !important;
}

html body .qg-concierge__icon {
  width: 26px !important;
  height: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 2 !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .qg-concierge__icon svg {
  width: 22px !important;
  height: 22px !important;
  stroke: #ffffff !important;
  fill: none !important;
  display: block !important;
  flex-shrink: 0 !important;
}

/* Hide tooltip label on touch screens */
html body .qg-concierge__label {
  display: none !important;
}

/* Ripple ring animation — restore the original pulse */
html body .qg-concierge::before {
  content: '' !important;
  position: absolute !important;
  inset: -6px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(232,76,111,0.35) !important;
  background: none !important;
  animation: qgFabRippleFinal 2.4s ease-out infinite !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@keyframes qgFabRippleFinal {
  0%   { transform: scale(1);    opacity: 1; }
  100% { transform: scale(1.55); opacity: 0; }
}


/* ── 3. HERO LIVE-TICKER — prevent overflow / overlap on mobile ──
   `white-space: nowrap` + long text + `left:50%` causes the pill
   to extend beyond viewport on small phones, overlapping the
   section below the hero.                                        */
html body.home #qg-home .qg-hero__live-ticker {
  max-width: calc(100vw - 40px) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  bottom: 90px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  box-sizing: border-box !important;
}

html body.home #qg-home .qg-hero__live-ticker #qgHeroTicker {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  max-width: calc(100vw - 96px) !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

} /* end @media (max-width: 860px) */

/* ================================================================
   PATCH May 14 2026 — DEFINITIVE TARGETED FIXES
   Issues addressed:
     1. Hero live-ticker overlapping hero proof/stats bar
        Root cause: previous patch set bottom:90px conflicting
        with position:absolute + top:14px — browser resolves to
        bottom-anchored, pushing ticker into the proof grid.
     2. Concierge / chat FAB broken icon & wrong position
        Root cause: multiple competing patches left inconsistent
        z-index, overflow, and icon sizing rules.
     3. Bottom nav text invisible (white on dark) + icon mismatch
        Root cause: earliest rule `html body .qg-bottom-nav` sets
        dark plum bg; later patches used lower-specificity selectors
        that couldn't win. Fix: match the winning specificity.
================================================================ */

@media (max-width: 860px) {

/* ── 1. HERO LIVE-TICKER — restore top:14px, remove bottom conflict */
html body.home #qg-home .qg-hero__live-ticker {
  position: absolute !important;
  top: 14px !important;
  bottom: auto !important;       /* ← neutralises the conflicting bottom:90px */
  left: 50% !important;
  transform: translateX(-50%) !important;
  max-width: calc(100vw - 32px) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  z-index: 10 !important;
  box-sizing: border-box !important;
}

html body.home #qg-home .qg-hero__live-ticker #qgHeroTicker,
html body.home #qg-home .qg-hero__live-ticker span:not(.qg-hero__live-dot) {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  max-width: 100% !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

/* ── 2. CONCIERGE / CHAT FAB — pink circle, white icon ──────── */
html body .qg-concierge {
  position: fixed !important;
  bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
  right: 16px !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 0 !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #E84C6F 0%, #B8305A 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow:
    0 4px 20px rgba(232,76,111,0.45),
    0 1px 6px rgba(0,0,0,0.15) !important;
  z-index: 9990 !important;
  padding: 0 !important;
  border: none !important;
  cursor: pointer !important;
  overflow: visible !important;   /* allow ripple ring to bleed */
}

html body .qg-concierge::before {
  content: '' !important;
  position: absolute !important;
  inset: -6px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(232,76,111,0.35) !important;
  background: none !important;
  animation: qgConciergeRingFinal 2.4s ease-out infinite !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@keyframes qgConciergeRingFinal {
  0%   { transform: scale(1);    opacity: 1; }
  100% { transform: scale(1.55); opacity: 0; }
}

html body .qg-concierge__icon {
  width: 26px !important;
  height: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 2 !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body .qg-concierge__icon svg {
  width: 22px !important;
  height: 22px !important;
  stroke: #fff !important;
  fill: none !important;
  display: block !important;
  flex-shrink: 0 !important;
  stroke-width: 2 !important;
}

/* Force every SVG child shape to be white */
html body .qg-concierge__icon svg path,
html body .qg-concierge__icon svg circle,
html body .qg-concierge__icon svg rect,
html body .qg-concierge__icon svg polyline,
html body .qg-concierge__icon svg line {
  stroke: #fff !important;
}

html body .qg-concierge__label,
html body .qg-concierge__tip {
  display: none !important;
}

html body .qg-concierge__dot {
  position: absolute !important;
  top: 2px !important;
  right: 2px !important;
  width: 10px !important;
  height: 10px !important;
  background: #ff3b6b !important;
  border: 2px solid #fff !important;
  border-radius: 50% !important;
  z-index: 4 !important;
}

/* ── 3. BOTTOM NAV — cream bg, plum icons, rose active ──────── */
/* Must match the 3-token selector `html body .qg-bottom-nav`
   that the original v4 CSS uses — anything less loses the war. */
html body .qg-bottom-nav {
  background: #FEF9F5 !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  border-top: 1px solid rgba(59,31,58,0.09) !important;
  box-shadow: 0 -2px 16px rgba(59,31,58,0.06) !important;
}

/* Inactive nav items */
html body .qg-bnav-item {
  color: rgba(59,31,58,0.40) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.40) !important;
  font-size: 0.56rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  background: none !important;
}

html body .qg-bnav-item svg {
  stroke: rgba(59,31,58,0.32) !important;
  fill: none !important;
}

/* Target every SVG shape element inside inactive tabs */
html body .qg-bnav-item svg path,
html body .qg-bnav-item svg circle,
html body .qg-bnav-item svg rect,
html body .qg-bnav-item svg polyline,
html body .qg-bnav-item svg line,
html body .qg-bnav-item svg ellipse {
  stroke: rgba(59,31,58,0.32) !important;
}

/* Active tab — rose, matches Flutter active state */
html body .qg-bnav-item.active {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
}

html body .qg-bnav-item.active svg {
  stroke: #C05878 !important;
}

html body .qg-bnav-item.active svg path,
html body .qg-bnav-item.active svg circle,
html body .qg-bnav-item.active svg rect,
html body .qg-bnav-item.active svg polyline,
html body .qg-bnav-item.active svg line,
html body .qg-bnav-item.active svg ellipse {
  stroke: #C05878 !important;
}

/* Centre BOOK button — dark text on gold gradient pill */
html body .qg-bnav-item--book,
html body .qg-bnav-item--book.active {
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}

html body .qg-bnav-book-label {
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}

html body .qg-bnav-item--book svg,
html body .qg-bnav-item--book.active svg {
  stroke: #2A1229 !important;
  fill: none !important;
}

html body .qg-bnav-item--book svg path,
html body .qg-bnav-item--book svg circle,
html body .qg-bnav-item--book svg rect {
  stroke: #2A1229 !important;
}

} /* end @media (max-width: 860px) */

/* ================================================================
   END PATCH May 14 2026
   ================================================================ */


/* ================================================================
   PATCH May 14 2026 v2 — DEFINITIVE SPECIFICITY WAR WINS
   
   ROOT CAUSES fixed here:
   
   A) Concierge bottom position: §H2 rule `html body.home .qg-concierge`
      has specificity (0,2,2) — beats our (0,1,2) patch. Fix: match
      the exact same selector so source-order (last wins) decides.
      Also sets `bottom: calc(78px + safe-area + 58px)` = ~136px,
      placing FAB mid-screen over hero buttons. Fix: reset to 82px.
   
   B) Bottom nav text invisible: `.qg-bnav-item` items are likely
      `<a>` tags, so `html body .qg-bottom-nav a` (0,1,3) beats
      `html body .qg-bnav-item` (0,1,2) via element-count.
      Fix: use `html body .qg-bottom-nav .qg-bnav-item` (0,2,2)
      which beats both competing rules.
   
   C) Live ticker static: previous patch added `overflow:hidden` +
      `text-overflow:ellipsis` on the inner #qgHeroTicker span,
      clipping JS-driven slide/fade cycle animations. Fix: remove
      those constraints from the inner span so JS can freely
      animate the text content transitions.
================================================================ */

@media (max-width: 860px) {

/* ── A. CONCIERGE FAB — match §H2 specificity, correct position ── */
/* `html body.home .qg-concierge` = (0,2,2). Our previous patch used
   (0,1,2) and LOST. Now we match exactly — source order decides,
   and we're LAST, so we win.                                        */
html body.home .qg-concierge {
  position: fixed !important;
  bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important; /* just above nav */
  right: 16px !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  /* Pink gradient matching Flutter design */
  background: linear-gradient(135deg, #E84C6F 0%, #B8305A 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow:
    0 4px 22px rgba(232,76,111,0.50),
    0 1px 6px rgba(0,0,0,0.18) !important;
  z-index: 9990 !important;
  padding: 0 !important;
  border: none !important;
  cursor: pointer !important;
  overflow: visible !important;
}

html body.home .qg-concierge__icon {
  width: 26px !important;
  height: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 2 !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html body.home .qg-concierge__icon svg {
  width: 22px !important;
  height: 22px !important;
  stroke: #fff !important;
  fill: none !important;
  display: block !important;
  flex-shrink: 0 !important;
  stroke-width: 2 !important;
  max-width: 22px !important;
  max-height: 22px !important;
}

html body.home .qg-concierge__icon svg path,
html body.home .qg-concierge__icon svg circle,
html body.home .qg-concierge__icon svg rect,
html body.home .qg-concierge__icon svg polyline,
html body.home .qg-concierge__icon svg line {
  stroke: #fff !important;
  fill: none !important;
}

html body.home .qg-concierge .qg-concierge__tip,
html body.home .qg-concierge__label {
  display: none !important;
}

/* Ripple ring stays outside, behind icon */
html body.home .qg-concierge::before {
  content: '' !important;
  position: absolute !important;
  inset: -7px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(232,76,111,0.35) !important;
  background: none !important;
  animation: qgConciergeFinalRing 2.4s ease-out infinite !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@keyframes qgConciergeFinalRing {
  0%   { transform: scale(1);    opacity: 0.8; }
  100% { transform: scale(1.6);  opacity: 0;   }
}

/* ── B. BOTTOM NAV — escalate specificity to beat `a` selector ── */
/* Problem selector: `html body .qg-bottom-nav a` = (0,1,3)
   Our old fix: `html body .qg-bnav-item` = (0,1,2) — LOSES
   New fix: `html body .qg-bottom-nav .qg-bnav-item` = (0,2,2) WINS */

html body .qg-bottom-nav .qg-bnav-item {
  color: rgba(59,31,58,0.45) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.45) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.56rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  background: none !important;
}

html body .qg-bottom-nav .qg-bnav-item svg {
  stroke: rgba(59,31,58,0.32) !important;
  fill: none !important;
}

/* Every SVG shape inside inactive tabs */
html body .qg-bottom-nav .qg-bnav-item svg path,
html body .qg-bottom-nav .qg-bnav-item svg circle,
html body .qg-bottom-nav .qg-bnav-item svg rect,
html body .qg-bottom-nav .qg-bnav-item svg polyline,
html body .qg-bottom-nav .qg-bnav-item svg line,
html body .qg-bottom-nav .qg-bnav-item svg ellipse {
  stroke: rgba(59,31,58,0.32) !important;
  fill: none !important;
}

/* Active tab — rose, matches Flutter */
html body .qg-bottom-nav .qg-bnav-item.active {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
}

html body .qg-bottom-nav .qg-bnav-item.active svg {
  stroke: #C05878 !important;
}

html body .qg-bottom-nav .qg-bnav-item.active svg path,
html body .qg-bottom-nav .qg-bnav-item.active svg circle,
html body .qg-bottom-nav .qg-bnav-item.active svg rect,
html body .qg-bottom-nav .qg-bnav-item.active svg polyline,
html body .qg-bottom-nav .qg-bnav-item.active svg line,
html body .qg-bottom-nav .qg-bnav-item.active svg ellipse {
  stroke: #C05878 !important;
  fill: none !important;
}

/* Centre BOOK button — gold pill, dark text always */
html body .qg-bottom-nav .qg-bnav-item--book,
html body .qg-bottom-nav .qg-bnav-item--book.active {
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}

html body .qg-bottom-nav .qg-bnav-book-label {
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
}

html body .qg-bottom-nav .qg-bnav-item--book svg,
html body .qg-bottom-nav .qg-bnav-item--book.active svg,
html body .qg-bottom-nav .qg-bnav-book-inner svg {
  stroke: #2A1229 !important;
  fill: none !important;
}

html body .qg-bottom-nav .qg-bnav-item--book svg path,
html body .qg-bottom-nav .qg-bnav-item--book svg circle,
html body .qg-bottom-nav .qg-bnav-item--book svg rect {
  stroke: #2A1229 !important;
}

/* ── C. LIVE TICKER — unblock JS animation on inner span ──────── */
/* Previous patch set overflow:hidden + text-overflow:ellipsis on the
   inner #qgHeroTicker span, which clips JS slide/fade animations.
   Remove those constraints. The outer container keeps overflow:hidden
   so the ticker pill doesn't break layout — only the INNER span
   needs to be free to animate. */
html body.home #qg-home .qg-hero__live-ticker #qgHeroTicker,
html body.home #qg-home .qg-hero__live-ticker span:not(.qg-hero__live-dot) {
  overflow: visible !important;       /* allow JS translateY/fade to work  */
  text-overflow: clip !important;     /* no ellipsis clipping the animation */
  white-space: nowrap !important;
  max-width: none !important;         /* let JS control width               */
  display: inline !important;         /* restore natural inline flow         */
}

/* Keep only the OUTER pill constrained so it doesn't break layout */
html body.home #qg-home .qg-hero__live-ticker {
  position: absolute !important;
  top: 14px !important;
  bottom: auto !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  max-width: calc(100vw - 32px) !important;
  overflow: hidden !important;         /* pill clips at edges — intentional */
  white-space: nowrap !important;
  z-index: 10 !important;
  box-sizing: border-box !important;
  /* No text-overflow on the container — that's the outer pill, not text */
}

} /* end @media (max-width: 860px) */

/* ================================================================
   END PATCH May 14 2026 v2
   ================================================================ */


/* ================================================================
   PATCH May 14 2026 v3 — CONCIERGE FAB: ID SELECTOR NUCLEAR FIX
   
   ROOT CAUSE (definitive):
   The concierge button has id="qgConciergeBtn". All previous patches
   used CLASS selectors (.qg-concierge) — even high-specificity ones
   like `html body.home .qg-concierge` (0,2,2). However earlier patch
   v6 set `.qg-concierge { left:50%; transform:translateX(-50%) }`
   (0,1,0) which is still in the file. On Android Chrome, the cascade
   of 15+ conflicting !important class-selector rules causes
   non-deterministic rendering — some properties from earlier rules
   bleed through because their rule blocks cover different properties.
   
   FIX: Use the ID selector #qgConciergeBtn (specificity 1,0,0).
   This BEATS all class-selector rules unconditionally, regardless of
   how many class selectors are stacked. Every property is set once,
   cleanly, with no competing rules able to override.
================================================================ */

@media (max-width: 860px) {

/* ── CONCIERGE FAB: ID wins all specificity wars ─────────────────
   Specificity (1,0,0) > any number of class selectors (0,n,n)    */

#qgConciergeBtn {
  position: fixed !important;
  bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important;
  right: 16px !important;
  left: auto !important;
  top: auto !important;
  /* Kill all transform from v6 patch that centred the button */
  transform: none !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  /* Pink gradient — matching Flutter app */
  background: linear-gradient(135deg, #E84C6F 0%, #B8305A 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow:
    0 4px 22px rgba(232,76,111,0.50),
    0 1px 8px rgba(0,0,0,0.20) !important;
  z-index: 9990 !important;
  padding: 0 !important;
  border: none !important;
  outline: none !important;
  cursor: pointer !important;
  overflow: visible !important;
  /* Kill any float/pulse animation from earlier patches */
  animation: qgConciergeRingV3 2.4s ease-out infinite !important;
}

@keyframes qgConciergeRingV3 {
  0%   { box-shadow: 0 4px 22px rgba(232,76,111,0.50), 0 1px 8px rgba(0,0,0,0.20); }
  50%  { box-shadow: 0 6px 30px rgba(232,76,111,0.70), 0 1px 8px rgba(0,0,0,0.20), 0 0 0 10px rgba(232,76,111,0.10); }
  100% { box-shadow: 0 4px 22px rgba(232,76,111,0.50), 0 1px 8px rgba(0,0,0,0.20); }
}

/* Icon wrapper: centered inside the 52px circle */
#qgConciergeBtn .qg-concierge__icon {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  background: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important; /* must be visible — hidden clips the chat-bubble tail stroke */
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* SVG icon — white on pink */
#qgConciergeBtn .qg-concierge__icon svg {
  width: 22px !important;
  height: 22px !important;
  stroke: #fff !important;
  fill: none !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  display: block !important;
  flex-shrink: 0 !important;
}

#qgConciergeBtn .qg-concierge__icon svg path,
#qgConciergeBtn .qg-concierge__icon svg circle,
#qgConciergeBtn .qg-concierge__icon svg rect,
#qgConciergeBtn .qg-concierge__icon svg polyline,
#qgConciergeBtn .qg-concierge__icon svg line {
  stroke: #fff !important;
  fill: none !important;
}

/* Notification dot */
#qgConciergeBtn .qg-concierge__dot {
  position: absolute !important;
  top: 2px !important;
  right: 2px !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #ff3b6b !important;
  border: 2px solid #fff !important;
  z-index: 4 !important;
}

/* Tooltip — hidden on mobile */
#qgConciergeBtn .qg-concierge__tip {
  display: none !important;
}

/* Ripple ring as ::before — outside the button bounds */
#qgConciergeBtn::before {
  content: '' !important;
  position: absolute !important;
  inset: -7px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(232,76,111,0.30) !important;
  background: none !important;
  animation: qgFabRingV3 2.6s ease-out infinite !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@keyframes qgFabRingV3 {
  0%   { transform: scale(1);    opacity: 0.7; }
  100% { transform: scale(1.65); opacity: 0;   }
}

} /* end @media (max-width: 860px) */

/* ================================================================
   END PATCH May 14 2026 v3
   ================================================================ */


/* ================================================================
   PATCH May 14 2026 v4 — SVG ICON GUARANTEE
   
   SVG now has fill="none" stroke="currentColor" as HTML attributes,
   so these rules are purely belt-and-suspenders. They also ensure
   the icon renders correctly on non-home pages where earlier class
   patches like html body.home only targeted the home template.
================================================================ */

@media (max-width: 860px) {

/* Force white icon on every page, not just .home */
#qgConciergeBtn .qg-concierge__icon svg {
  color: #fff !important;           /* drives currentColor → white stroke */
  stroke: #fff !important;
  fill: none !important;
  width: 22px !important;
  height: 22px !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  overflow: visible !important;     /* tail of bubble must not be clipped */
  display: block !important;
  flex-shrink: 0 !important;
}

#qgConciergeBtn .qg-concierge__icon svg path,
#qgConciergeBtn .qg-concierge__icon svg circle,
#qgConciergeBtn .qg-concierge__icon svg rect,
#qgConciergeBtn .qg-concierge__icon svg polyline,
#qgConciergeBtn .qg-concierge__icon svg line {
  stroke: #fff !important;
  fill: none !important;
}

/* Icon wrapper: must be overflow:visible so stroke tail isn't clipped */
#qgConciergeBtn .qg-concierge__icon {
  overflow: visible !important;
}

} /* end @media (max-width: 860px) */

/* ================================================================
   END PATCH May 14 2026 v4
   ================================================================ */


/* ================================================================
   PATCH May 17 2026 — Premium Native-App UI Enhancements
   Sections: Beauty Reels · Curated Packages · Premium Services
             Meet Our Star Artists · Download App
   Rule: mobile-ONLY — all rules inside @media (max-width: 768px)
   ================================================================ */

@media (max-width: 768px) {

/* ──────────────────────────────────────────────────────────────
   §A  BEAUTY REELS — Fix invisible text (dark background)
   The section was rendering on cream with white text → invisible.
   Match app: deep plum/dark gradient, white text, frosted button.
────────────────────────────────────────────────────────────────*/
html body.home #qg-home .qg-reels-preview,
html body.home #qg-home .qg-reels-preview.qg-section-v10 {
  background: linear-gradient(160deg, #180826 0%, #2C1040 55%, #1A0929 100%) !important;
  background-image: none !important;
}

/* Section rule text */
html body.home #qg-home .qg-reels-preview .qg-rule-line {
  background: rgba(201,168,108,0.7) !important;
}
html body.home #qg-home .qg-reels-preview .qg-rule-dot {
  background: var(--m-rose) !important;
}

/* Heading — always white on dark */
html body.home #qg-home .qg-reels-preview .qg-section-header-v10 h2 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
}
html body.home #qg-home .qg-reels-preview .qg-subtitle {
  color: rgba(255,255,255,0.62) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.62) !important;
  background: none !important;
}

/* "View all" link — gold on dark */
html body.home #qg-home .qg-reels-preview .qg-see-all {
  color: var(--m-gold) !important;
  -webkit-text-fill-color: var(--m-gold) !important;
  border-color: rgba(201,168,108,0.35) !important;
  background: rgba(201,168,108,0.1) !important;
}

/* Bottom "View all reels" button — frosted glass, premium */
html body.home #qg-home .qg-reels-preview a[class*="btn"],
html body.home #qg-home .qg-reels-preview .qg-reels-view-all-btn {
  background: rgba(255,255,255,0.09) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(255,255,255,0.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.92) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  letter-spacing: 0.02em !important;
}

/* ──────────────────────────────────────────────────────────────
   §B  CURATED PACKAGES — Native-app card style + premium button
────────────────────────────────────────────────────────────────*/
/* Card: clean white with subtle top accent stripe */
html body.home #qg-home .qg-pkg-card {
  background: #fff !important;
  border: 1.5px solid rgba(212,114,140,0.12) !important;
  box-shadow: 0 4px 22px rgba(59,31,58,0.07), 0 1px 4px rgba(59,31,58,0.04) !important;
}

/* Package items tag pill */
html body.home #qg-home .qg-pkg-card__includes li {
  background: rgba(212,114,140,0.07) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  border: 1px solid rgba(212,114,140,0.18) !important;
}

/* Book button — outline rose, light & premium (replaces gold) */
html body.home #qg-home .qg-pkg-card__btn {
  background: transparent !important;
  border: 1.5px solid rgba(192,88,120,0.5) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* ──────────────────────────────────────────────────────────────
   §C  PREMIUM BEAUTY SERVICES — smaller badge, lighter book btn
────────────────────────────────────────────────────────────────*/
/* "8 bookings today" badge — compact & translucent */
html body.home #qg-home .qg-service-card__bookings {
  font-size: 0.54rem !important;
  font-weight: 600 !important;
  padding: 3px 9px !important;
  background: rgba(26,12,38,0.58) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  letter-spacing: 0.01em !important;
  border-radius: 7px !important;
}

/* Service "Book Now" button — blush rose, not gold */
html body.home #qg-home .qg-service-card__book-btn {
  background: rgba(212,114,140,0.08) !important;
  border: 1.5px solid rgba(192,88,120,0.35) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  box-shadow: none !important;
}

/* ──────────────────────────────────────────────────────────────
   §D  MEET OUR STAR ARTISTS — light premium View Profile button
────────────────────────────────────────────────────────────────*/
/* View Profile button — remove gold gradient, use subtle divider+text */
html body.home #qg-home .qg-artist-profile-btn {
  background: transparent !important;
  background-image: none !important;
  border-top: 1px solid rgba(212,114,140,0.15) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.02em !important;
  box-shadow: none !important;
}

/* "Meet All Artists" CTA button — outline style */
html body.home #qg-home .qg-artists .qg-btn--gold,
html body.home #qg-home .qg-artists a.qg-btn--gold {
  background: transparent !important;
  border: 1.5px solid rgba(192,88,120,0.45) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  box-shadow: none !important;
}

/* ──────────────────────────────────────────────────────────────
   §E  DOWNLOAD QWIKGLAM APP — light premium store buttons
────────────────────────────────────────────────────────────────*/
/* App Store & Google Play buttons — clean white card style */
html body.home #qg-home .qg-store__btn {
  background: #fff !important;
  border: 1.5px solid rgba(59,31,58,0.12) !important;
  color: #2A1229 !important;
  -webkit-text-fill-color: #2A1229 !important;
  box-shadow: 0 3px 14px rgba(59,31,58,0.09), 0 1px 4px rgba(59,31,58,0.06) !important;
}

html body.home #qg-home .qg-store__btn svg {
  fill: #2A1229 !important;
  stroke: none !important;
}

/* "Soon" badge inside the store buttons */
html body.home #qg-home .qg-store__btn .qg-store__soon,
html body.home #qg-home .qg-store__btn [class*="soon"] {
  color: var(--m-muted) !important;
  -webkit-text-fill-color: var(--m-muted) !important;
  background: none !important;
}

/* App section: FAQ concierge chat button — rose outline */
html body.home #qg-home .qg-faq-chat-btn {
  background: transparent !important;
  border: 1.5px solid rgba(192,88,120,0.40) !important;
  color: var(--m-rose-dark) !important;
  -webkit-text-fill-color: var(--m-rose-dark) !important;
  box-shadow: none !important;
}

} /* end @media (max-width: 768px) */

/* ================================================================
   END PATCH May 17 2026 — Premium Native-App UI Enhancements
   ================================================================ */


/* ================================================================
   PATCH May 17 2026 v2 — Visibility & Premium Colour Fixes
   Issues addressed (from screenshots):
   1. Beauty Reels heading/subheading invisible on cream background
   2. "MOST POPULAR" badge is gold — needs light-premium look
   3. "8 bookings today" still too big — shrink + lighten further
   4. Footer bottom-bar gold gradient — replace with clean light style
   5. "View All Services" button gold — soften to premium rose outline
   ================================================================ */

@media (max-width: 768px) {

/* ──────────────────────────────────────────────────────────────
   §A  BEAUTY REELS — Make heading & subtitle visible on cream
   The cream background is applied by an earlier rule we cannot
   remove without risking layout breaks. Fix: use dark text
   that reads clearly on #FEF7F2 background.
────────────────────────────────────────────────────────────────*/

/* Section stays on cream — give it a subtle white card inset */
html body.home #qg-home .qg-reels-preview,
html body.home #qg-home .qg-reels-preview.qg-section-v10 {
  background: #FEF7F2 !important;
  background-color: #FEF7F2 !important;
  background-image: none !important;
}

/* Heading: dark plum — always visible on cream */
html body.home #qg-home .qg-reels-preview .qg-section-header-v10 h2,
html body.home #qg-home .qg-reels-preview .qg-section-header-v10-row h2,
html body.home #qg-home section.qg-reels-preview h2 {
  color: #3B1F3A !important;
  -webkit-text-fill-color: #3B1F3A !important;
  background: none !important;
  background-image: none !important;
  background-clip: initial !important;
  -webkit-background-clip: initial !important;
}

/* Subtitle: soft plum — readable on cream */
html body.home #qg-home .qg-reels-preview .qg-subtitle,
html body.home #qg-home .qg-reels-preview p {
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* Decorative rule lines — rose-gold */
html body.home #qg-home .qg-reels-preview .qg-rule-line {
  background: #C9A86C !important;
}
html body.home #qg-home .qg-reels-preview .qg-rule-dot {
  background: #D4728C !important;
}

/* "View all" pill — rose on cream */
html body.home #qg-home .qg-reels-preview .qg-see-all {
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  border-color: rgba(192,88,120,0.25) !important;
  background: rgba(212,114,140,0.07) !important;
}

/* Bottom "View all reels" CTA — dark plum outline, premium */
html body.home #qg-home .qg-reels-preview a[class*="btn"],
html body.home #qg-home .qg-reels-preview .qg-reels-view-all-btn {
  background: #fff !important;
  border: 1.5px solid rgba(192,88,120,0.30) !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  box-shadow: 0 2px 10px rgba(59,31,58,0.07) !important;
  backdrop-filter: none !important;
}

/* ──────────────────────────────────────────────────────────────
   §B  MOST POPULAR BADGE — replace gold with a soft premium look
────────────────────────────────────────────────────────────────*/
/* The badge that sits on the service card image */
html body.home #qg-home .qg-badge--popular,
html body.home #qg-home .qg-service-card__badge.qg-badge--popular {
  background: rgba(255,255,255,0.88) !important;
  background-image: none !important;
  color: #9B5E6E !important;
  -webkit-text-fill-color: #9B5E6E !important;
  border: 1px solid rgba(192,88,120,0.22) !important;
  box-shadow: 0 2px 8px rgba(59,31,58,0.10) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
}

/* ──────────────────────────────────────────────────────────────
   §C  "8 BOOKINGS TODAY" — more compact, translucent, native-feel
────────────────────────────────────────────────────────────────*/
html body.home #qg-home .qg-service-card__bookings {
  font-size: 0.52rem !important;
  font-weight: 500 !important;
  padding: 2px 8px !important;
  line-height: 1.5 !important;
  background: rgba(20,8,30,0.50) !important;
  background-image: none !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 6px !important;
  letter-spacing: 0.01em !important;
  bottom: 8px !important;
  left: 8px !important;
}

/* ──────────────────────────────────────────────────────────────
   §D  VIEW ALL SERVICES button — rose outline (not gold)
────────────────────────────────────────────────────────────────*/
html body.home #qg-home .qg-services .qg-btn--primary,
html body.home #qg-home .qg-services a.qg-btn--primary,
html body.home #qg-home .qg-services .qg-btn,
html body.home #qg-home .qg-services a.qg-btn {
  background: transparent !important;
  background-image: none !important;
  border: 1.5px solid rgba(192,88,120,0.40) !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  box-shadow: none !important;
}

/* ──────────────────────────────────────────────────────────────
   §E  FOOTER BOTTOM BAR — remove gold gradient, use clean white
────────────────────────────────────────────────────────────────*/
html body.home .qg-footer__bottom {
  background: #fff !important;
  background-image: none !important;
  border-top: 1px solid rgba(59,31,58,0.08) !important;
  padding: 20px 20px !important;
}

/* Copyright text — visible dark */
html body.home .qg-footer__bottom p {
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
}

/* Legal links — rose-muted */
html body.home .qg-footer__legal a {
  color: #B07088 !important;
  -webkit-text-fill-color: #B07088 !important;
  background: none !important;
}
html body.home .qg-footer__legal span {
  color: rgba(59,31,58,0.20) !important;
  -webkit-text-fill-color: rgba(59,31,58,0.20) !important;
}

/* Payment badges — soft plum chips */
html body.home .qg-payment-badge {
  color: #6A4060 !important;
  -webkit-text-fill-color: #6A4060 !important;
  background: rgba(59,31,58,0.05) !important;
  border: 1px solid rgba(59,31,58,0.10) !important;
}

} /* end @media (max-width: 768px) */

/* ================================================================
   END PATCH May 17 2026 v2
   ================================================================ */


/* ================================================================
   PATCH May 17 2026 v3 — BEAUTY REELS: Premium Native-App Cards
   Goal: Make every reel card feel like a polished Flutter/iOS widget
   Only qg-mobile.css modified · all rules inside @media max-width 768px
   ================================================================ */

@media (max-width: 768px) {

/* ── Section wrapper: crisp cream, generous padding ── */
html body.home #qg-home .qg-reels-preview,
html body.home #qg-home .qg-reels-preview.qg-section-v10 {
  background: #FEF7F2 !important;
  background-color: #FEF7F2 !important;
  background-image: none !important;
  padding: 32px 16px 28px !important;
}

/* ── Section header row ── */
html body.home #qg-home .qg-reels-preview .qg-section-header-v10-row {
  margin-bottom: 20px !important;
}

/* ── "Beauty Reels" heading: bold serif, deep plum ── */
html body.home #qg-home .qg-reels-preview .qg-section-header-v10 h2,
html body.home #qg-home .qg-reels-preview .qg-section-header-v10-row h2,
html body.home #qg-home section.qg-reels-preview h2 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(1.7rem,5.5vw,2.1rem) !important;
  font-weight: 800 !important;
  color: #3B1F3A !important;
  -webkit-text-fill-color: #3B1F3A !important;
  background: none !important;
  background-image: none !important;
  background-clip: initial !important;
  -webkit-background-clip: initial !important;
  letter-spacing: -0.02em !important;
  line-height: 1.15 !important;
}

/* ── Italic rose on the "em" span inside heading ── */
html body.home #qg-home .qg-reels-preview h2 em,
html body.home #qg-home .qg-reels-preview h2 span {
  color: #D4728C !important;
  -webkit-text-fill-color: #D4728C !important;
  font-style: italic !important;
  background: none !important;
}

/* ── Subtitle: italic muted rose ── */
html body.home #qg-home .qg-reels-preview .qg-subtitle,
html body.home #qg-home .qg-reels-preview p:not([class*="btn"]) {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
  font-style: italic !important;
  color: #9C7A8A !important;
  -webkit-text-fill-color: #9C7A8A !important;
  background: none !important;
  line-height: 1.55 !important;
}

/* ── Rule lines ── */
html body.home #qg-home .qg-reels-preview .qg-rule-line {
  background: #C9A86C !important;
  width: 28px !important;
  height: 2px !important;
}
html body.home #qg-home .qg-reels-preview .qg-rule-dot {
  background: #D4728C !important;
  width: 5px !important;
  height: 5px !important;
}

/* ── "View all" pill ── */
html body.home #qg-home .qg-reels-preview .qg-see-all {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  background: rgba(212,114,140,0.08) !important;
  border: 1px solid rgba(192,88,120,0.22) !important;
  border-radius: 999px !important;
  padding: 5px 14px !important;
}

/* ══════════════════════════════════════════════════════════════
   THE GRID & CARDS — premium native-app treatment
══════════════════════════════════════════════════════════════ */

/* Grid: 2 columns, even gap */
html body.home #qg-home .qg-reels-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  padding: 0 !important;
}

/* Card shell: elevated, large radius, GPU-composited */
html body.home #qg-home .qg-reel-thumb {
  border-radius: 22px !important;
  overflow: hidden !important;
  aspect-ratio: 3/4 !important;
  position: relative !important;
  box-shadow:
    0 6px 24px rgba(59,31,58,0.14),
    0 2px 6px rgba(59,31,58,0.08) !important;
  transform: translateZ(0) !important;
  background: #E8D5DC !important; /* warm placeholder while img loads */
}

/* Image: cover, face-top aligned */
html body.home #qg-home .qg-reel-thumb img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: top !important;
  transition: transform 0.35s ease !important;
}
html body.home #qg-home .qg-reel-thumb:active img {
  transform: scale(1.03) !important;
}

/* Overlay: strong cinematic gradient, rich depth */
html body.home #qg-home .qg-reel-thumb__overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0)     0%,
    rgba(0,0,0,0.02)  35%,
    rgba(0,0,0,0.40)  70%,
    rgba(0,0,0,0.68) 100%
  ) !important;
}

/* Service-name badge: centered pill at top with glassmorphism */
html body.home #qg-home .qg-reel-thumb__service-badge {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: 10px !important;
  z-index: 3 !important;
  background: rgba(212,100,134,0.86) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  border-radius: 12px !important;
  padding: 5px 10px !important;
  text-align: center !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.64rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Play button: larger frosted circle */
html body.home #qg-home .qg-reel-thumb__play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%,-50%) !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.20) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1.5px solid rgba(255,255,255,0.38) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 3 !important;
  box-shadow: 0 2px 14px rgba(0,0,0,0.18) !important;
}

/* Bottom meta row */
html body.home #qg-home .qg-reel-thumb__meta {
  position: absolute !important;
  bottom: 10px !important;
  left: 10px !important;
  right: 10px !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important; /* push likes to right */
}

/* Artist name: subtle, small */
html body.home #qg-home .qg-reel-thumb__artist {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.58rem !important;
  font-weight: 500 !important;
  color: rgba(255,255,255,0.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.82) !important;
  background: none !important;
  flex: 1 !important;
}

/* ❤ Likes badge: premium dark pill */
html body.home #qg-home .qg-reel-thumb__likes {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  background: rgba(42,10,56,0.72) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 10px !important;
  padding: 4px 10px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
}

/* ── View all reels CTA button: premium rose outline ── */
html body.home #qg-home .qg-reels-preview a[class*="btn"],
html body.home #qg-home .qg-reels-preview .qg-reels-view-all-btn {
  display: block !important;
  text-align: center !important;
  margin-top: 20px !important;
  background: #fff !important;
  background-image: none !important;
  border: 1.5px solid rgba(192,88,120,0.30) !important;
  color: #C05878 !important;
  -webkit-text-fill-color: #C05878 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  padding: 14px !important;
  border-radius: 16px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 10px rgba(59,31,58,0.07) !important;
  letter-spacing: 0.01em !important;
}

} /* end @media (max-width: 768px) */

/* ================================================================
   END PATCH May 17 2026 v3 — Beauty Reels Premium Cards
   ================================================================ */
