/* ============================================
   ChocoTide™ — Premium Luxury Design System
   Mobile-First Responsive Stylesheet
   ============================================ */
:root {
  --black: #0A0A0A;
  --black-light: #141414;
  --black-card: #1A1A1A;
  --gold: #D4AF37;
  --gold-light: #E8C547;
  --gold-dark: #B8941F;
  --gold-glow: rgba(212,175,55,0.15);
  --white: #FFFFFF;
  --white-soft: #F5F5F0;
  --gray-100: #E8E8E8;
  --gray-200: #CCCCCC;
  --gray-300: #999999;
  --gray-400: #666666;
  --gray-500: #444444;
  --green: #22C55E;
  --red: #EF4444;
  --font-display: 'Playfair Display', Georgia, serif;
  --font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.3);
  --shadow-md: 0 4px 20px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 40px rgba(0,0,0,0.5);
  --shadow-gold: 0 4px 30px rgba(212,175,55,0.2);
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
html { font-size:16px; scroll-behavior:smooth; -webkit-text-size-adjust:100%; scroll-padding-top:80px; }
body { font-family:var(--font-body); background:var(--black); color:var(--gray-200); line-height:1.7; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
img { max-width:100%; height:auto; display:block; }
a { color:var(--gold); text-decoration:none; transition:color var(--transition); }
a:hover { color:var(--gold-light); }
.container { width:100%; max-width:1200px; margin:0 auto; padding:0 20px; }
.text-center { text-align:center; }
.gold { color:var(--gold); }
.gold-link { color:var(--gold); text-decoration:underline; }

h1, h2, h3, h4 { font-family:var(--font-display); color:var(--white); line-height:1.25; font-weight:700; }
h1 { font-size:1.75rem; margin-bottom:1rem; }
h2 { font-size:1.375rem; }
h3 { font-size:1.125rem; }

.section-title { font-size:1.5rem; text-align:center; margin-bottom:1rem; position:relative; padding-bottom:1rem; }
.section-title::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:60px; height:3px; background:linear-gradient(90deg, var(--gold-dark), var(--gold), var(--gold-dark)); border-radius:2px; }
.section-desc { text-align:center; max-width:700px; margin:1rem auto 2rem; color:var(--gray-300); font-size:1rem; line-height:1.7; }

/* CTA BUTTONS */
.cta-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; background:linear-gradient(135deg, var(--gold-dark), var(--gold), var(--gold-light)); color:var(--black); font-family:var(--font-body); font-weight:700; font-size:1rem; padding:16px 32px; border-radius:var(--radius-xl); border:none; cursor:pointer; text-decoration:none; min-height:52px; transition:all var(--transition); box-shadow:var(--shadow-gold); position:relative; overflow:hidden; width:100%; text-align:center; }
.cta-btn::before { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent); transition:left 0.5s; }
.cta-btn:hover { color:var(--black); transform:translateY(-2px); box-shadow:0 6px 40px rgba(212,175,55,0.4); }
.cta-btn:hover::before { left:100%; }
.cta-btn:active { transform:scale(0.98); }
.cta-sub { text-align:center; font-size:0.85rem; color:var(--gray-400); margin-top:0.75rem; }

/* NAVIGATION */
.nav-header { position:fixed; top:0; left:0; width:100%; z-index:1000; background:rgba(10,10,10,0.95); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border-bottom:1px solid rgba(212,175,55,0.1); transition:all var(--transition); }
.nav-header.scrolled { background:rgba(10,10,10,0.98); box-shadow:0 2px 20px rgba(0,0,0,0.5); }
.nav-container { display:flex; align-items:center; justify-content:space-between; height:70px; }
.nav-logo { display:flex; align-items:center; gap:8px; text-decoration:none; z-index:1001; }
.logo-icon { font-size:1.5rem; }
.logo-text { font-family:var(--font-display); font-size:1.35rem; font-weight:700; color:var(--white); }
.nav-links { position:fixed; top:0; right:-100%; width:75%; max-width:320px; height:100vh; height:100dvh; background:var(--black-light); display:flex; flex-direction:column; padding:100px 30px 30px; gap:0; transition:right 0.4s cubic-bezier(0.4, 0, 0.2, 1); z-index:999; border-left:1px solid rgba(212,175,55,0.15); }
.nav-links.open { right:0; }
.nav-link { color:var(--gray-200); font-size:1.1rem; font-weight:500; padding:16px 0; border-bottom:1px solid rgba(255,255,255,0.05); transition:color var(--transition); }
.nav-link:hover { color:var(--gold); }
.nav-cta { display:none; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black) !important; padding:10px 24px; border-radius:var(--radius-xl); font-weight:700; font-size:0.9rem; min-height:44px; align-items:center; justify-content:center; transition:all var(--transition); }
.nav-cta:hover { transform:scale(1.05); box-shadow:var(--shadow-gold); color:var(--black); }
.nav-cta-mobile { display:inline-flex; align-items:center; justify-content:center; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black) !important; padding:14px 24px; border-radius:var(--radius-xl); font-weight:700; font-size:1rem; margin-top:20px; min-height:48px; text-align:center; }
.hamburger { display:flex; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; z-index:1001; min-width:44px; min-height:44px; align-items:center; justify-content:center; }
.hamburger span { display:block; width:24px; height:2px; background:var(--white); transition:all var(--transition); border-radius:2px; }
.hamburger.active span:nth-child(1) { transform:rotate(45deg) translate(5px, 5px); }
.hamburger.active span:nth-child(2) { opacity:0; }
.hamburger.active span:nth-child(3) { transform:rotate(-45deg) translate(5px, -5px); }
.nav-overlay { position:fixed; top:0; left:0; width:100%; height:100vh; background:rgba(0,0,0,0.6); z-index:998; opacity:0; pointer-events:none; transition:opacity var(--transition); }
.nav-overlay.show { opacity:1; pointer-events:auto; }

/* HERO */
.hero { position:relative; padding:100px 0 60px; overflow:hidden; background:linear-gradient(180deg, var(--black) 0%, var(--black-light) 100%); }
.hero-bg-particles { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.particle { position:absolute; border-radius:50%; background:var(--gold); opacity:0.06; }
.p1 { width:300px; height:300px; top:-100px; right:-100px; animation:float 8s ease-in-out infinite; }
.p2 { width:200px; height:200px; bottom:-50px; left:-50px; animation:float 10s ease-in-out infinite reverse; }
.p3 { width:150px; height:150px; top:40%; left:10%; animation:float 12s ease-in-out infinite; }
.p4 { width:100px; height:100px; top:20%; right:20%; animation:float 7s ease-in-out infinite reverse; }
.p5 { width:80px; height:80px; bottom:20%; right:10%; animation:float 9s ease-in-out infinite; }
@keyframes float { 0%, 100% { transform:translateY(0) scale(1); } 50% { transform:translateY(-30px) scale(1.05); } }

.hero-grid { display:flex; flex-direction:column; align-items:center; gap:2rem; position:relative; z-index:1; }
.hero-image-wrap { position:relative; display:flex; justify-content:center; align-items:center; max-width:280px; margin:0 auto; }
.hero-glow { position:absolute; width:100%; height:100%; border-radius:50%; background:radial-gradient(circle, rgba(212,175,55,0.2) 0%, transparent 70%); animation:glow-pulse 3s ease-in-out infinite; }
@keyframes glow-pulse { 0%, 100% { opacity:0.5; transform:scale(1); } 50% { opacity:1; transform:scale(1.1); } }
.hero-product-img { position:relative; z-index:2; animation:hero-float 4s ease-in-out infinite; filter:drop-shadow(0 20px 40px rgba(212,175,55,0.15)); max-width:100%; }
@keyframes hero-float { 0%, 100% { transform:translateY(0); } 50% { transform:translateY(-15px); } }
.hero-badge { position:absolute; top:0; right:-10px; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black); padding:8px 16px; border-radius:var(--radius-sm); font-weight:700; font-size:0.75rem; z-index:3; animation:badge-bounce 2s ease-in-out infinite; }
@keyframes badge-bounce { 0%, 100% { transform:translateY(0); } 50% { transform:translateY(-5px); } }
.hero-content { text-align:center; }
.hero-trust-strip { display:inline-flex; align-items:center; gap:8px; background:rgba(212,175,55,0.08); border:1px solid rgba(212,175,55,0.2); border-radius:var(--radius-xl); padding:8px 16px; margin-bottom:1.25rem; font-size:0.85rem; }
.stars { color:var(--gold); letter-spacing:2px; }
.trust-text { color:var(--gray-300); }
.hero-content h1 { font-size:1.75rem; line-height:1.3; margin-bottom:1.25rem; }
.hero-content p { margin-bottom:1rem; font-size:1rem; line-height:1.7; color:var(--gray-300); }
.hero-benefits { list-style:none; text-align:left; margin:1.5rem 0; display:flex; flex-direction:column; gap:10px; }
.hero-benefits li { font-size:1rem; line-height:1.5; padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.05); color:var(--gray-100); }

/* WHY CHOOSE */
.why-choose { padding:60px 0; background:var(--black-light); }
.trust-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:2rem; }
.trust-card { background:var(--black-card); border:1px solid rgba(212,175,55,0.1); border-radius:var(--radius-md); padding:24px 16px; text-align:center; transition:all var(--transition); }
.trust-card:hover { border-color:rgba(212,175,55,0.3); transform:translateY(-4px); box-shadow:var(--shadow-gold); }
.trust-card img { width:60px; height:60px; margin:0 auto 12px; object-fit:contain; }
.trust-card h3 { font-size:1rem; margin-bottom:8px; font-family:var(--font-body); font-weight:700; }
.trust-card p { font-size:0.875rem; color:var(--gray-400); line-height:1.6; }

/* WHO FOR */
.who-for { padding:60px 0; background:var(--black); }
.who-grid { display:grid; grid-template-columns:1fr; gap:20px; margin-top:2rem; }
.who-card { background:var(--black-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius-md); padding:24px 20px; transition:all var(--transition); }
.who-card:hover { border-color:rgba(212,175,55,0.2); box-shadow:var(--shadow-gold); }
.who-icon { font-size:2rem; margin-bottom:12px; }
.who-card h3 { font-size:1.1rem; margin-bottom:10px; font-family:var(--font-body); font-weight:700; color:var(--gold); }
.who-card p { font-size:0.95rem; color:var(--gray-300); line-height:1.7; }

/* WHAT IS */
.what-is { padding:60px 0; background:var(--black-light); }
.what-grid { display:flex; flex-direction:column; gap:2rem; margin-top:2rem; }
.what-content p { margin-bottom:1rem; font-size:1rem; line-height:1.7; color:var(--gray-300); }
.what-image { text-align:center; }
.what-image img { border-radius:var(--radius-md); box-shadow:var(--shadow-md); margin:0 auto; }

/* HOW IT WORKS */
.how-works { padding:60px 0; background:var(--black); }
.steps-timeline { position:relative; margin-top:2rem; padding-left:20px; }
.steps-timeline::before { content:''; position:absolute; left:20px; top:0; bottom:0; width:2px; background:linear-gradient(180deg, var(--gold), rgba(212,175,55,0.1)); }
.step-item { position:relative; padding-left:40px; padding-bottom:30px; }
.step-item:last-child { padding-bottom:0; }
.step-number { position:absolute; left:-8px; top:0; width:36px; height:36px; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black); border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:0.8rem; z-index:2; }
.step-content h3 { font-size:1.1rem; margin-bottom:8px; font-family:var(--font-body); font-weight:700; color:var(--gold); }
.step-content p { font-size:0.95rem; color:var(--gray-300); line-height:1.7; }

/* REVIEWS */
.reviews { padding:60px 0; background:var(--black-light); }
.reviews-grid { display:grid; grid-template-columns:1fr; gap:20px; margin-top:2rem; }
.review-card { background:var(--black-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius-md); padding:24px 20px; transition:all var(--transition); }
.review-card:hover { border-color:rgba(212,175,55,0.2); box-shadow:var(--shadow-gold); }
.review-header { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:16px; }
.review-avatar { width:56px; height:56px; border-radius:50%; object-fit:cover; border:2px solid var(--gold); }
.review-header h4 { font-size:1rem; font-family:var(--font-body); font-weight:700; margin-bottom:2px; }
.review-loc { font-size:0.8rem; color:var(--gray-400); }
.review-stars { color:var(--gold); font-size:0.85rem; letter-spacing:2px; }
.verified-badge { font-size:0.75rem; color:var(--green); font-weight:600; margin-left:auto; }
.review-text { font-size:0.95rem; line-height:1.7; color:var(--gray-300); font-style:italic; }

/* RESEARCH */
.research-backed { padding:60px 0; background:var(--black); }
.research-content { max-width:800px; margin:0 auto; }
.research-content p { margin-bottom:1rem; line-height:1.7; color:var(--gray-300); }
.research-list { list-style:none; margin-top:1.5rem; }
.research-list li { padding:12px 0; border-bottom:1px solid rgba(255,255,255,0.05); font-size:0.95rem; line-height:1.6; color:var(--gray-200); }
.research-list li strong { color:var(--gold); }

/* PRICING */
.pricing { padding:60px 0; background:linear-gradient(180deg, var(--black-light), var(--black)); }
.countdown-wrap { text-align:center; margin:1.5rem 0 2rem; }
.countdown-label { font-size:1rem; color:var(--gray-300); margin-bottom:10px; }
.countdown-timer { display:inline-flex; align-items:center; gap:8px; background:rgba(212,175,55,0.08); border:2px solid var(--gold); border-radius:var(--radius-lg); padding:12px 24px; }
.countdown-digit { text-align:center; }
.countdown-digit span { display:block; font-family:var(--font-display); font-size:2rem; font-weight:800; color:var(--gold); line-height:1; }
.countdown-digit small { font-size:0.65rem; color:var(--gray-400); text-transform:uppercase; letter-spacing:2px; }
.countdown-sep { font-size:2rem; font-weight:800; color:var(--gold); line-height:1; margin-bottom:14px; }
.pricing-grid { display:grid; grid-template-columns:1fr; gap:20px; margin-top:1rem; }
.price-card { background:var(--black-card); border:1px solid rgba(255,255,255,0.08); border-radius:var(--radius-lg); padding:30px 20px; text-align:center; transition:all var(--transition); position:relative; }
.price-card:hover { border-color:rgba(212,175,55,0.3); transform:translateY(-4px); box-shadow:var(--shadow-gold); }
.price-card.popular { border-color:var(--gold); background:linear-gradient(180deg, rgba(212,175,55,0.08), var(--black-card)); }
.popular-badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black); padding:6px 20px; border-radius:var(--radius-xl); font-weight:800; font-size:0.75rem; white-space:nowrap; }
.price-label { font-size:0.8rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
.price-bottles { font-family:var(--font-display); font-size:1.4rem; font-weight:700; color:var(--white); margin-bottom:4px; }
.price-supply { font-size:0.85rem; color:var(--gray-400); margin-bottom:16px; }
.price-img { max-width:180px; margin:0 auto 16px; }
.price-amount { margin-bottom:8px; }
.price-old { text-decoration:line-through; color:var(--gray-500); font-size:1.1rem; margin-right:8px; }
.price-new { font-family:var(--font-display); font-size:2.2rem; font-weight:800; color:var(--gold); }
.price-per { font-size:0.9rem; color:var(--gray-400); }
.price-total { font-size:0.9rem; color:var(--gray-300); margin-bottom:10px; }
.price-badges { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; align-items:center; }
.badge-free { display:inline-block; background:rgba(34,197,94,0.1); color:var(--green); font-size:0.8rem; font-weight:700; padding:6px 12px; border-radius:var(--radius-sm); border:1px solid rgba(34,197,94,0.2); }
.cta-price { width:100%; margin-top:12px; }
.price-guarantee { font-size:0.8rem; color:var(--gray-400); margin-top:12px; }
.pricing-rating { margin-top:2rem; }
.stars-big { color:var(--gold); font-size:1.5rem; letter-spacing:4px; margin-bottom:6px; }
.pricing-rating p { color:var(--gray-400); font-size:0.9rem; }

/* INGREDIENTS */
.ingredients { padding:60px 0; background:var(--black-light); }
.ingredients-grid { display:grid; grid-template-columns:1fr; gap:16px; margin-top:2rem; }
.ingredient-card { background:var(--black-card); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius-md); padding:20px; transition:all var(--transition); }
.ingredient-card:hover { border-color:rgba(212,175,55,0.2); }
.ing-icon { font-size:1.5rem; margin-bottom:8px; }
.ingredient-card h3 { font-size:1rem; margin-bottom:8px; font-family:var(--font-body); font-weight:700; color:var(--gold); }
.ingredient-card p { font-size:0.9rem; color:var(--gray-400); line-height:1.6; }

/* SCIENCE ACCORDION */
.science { padding:60px 0; background:var(--black); }
.science-accordion { max-width:800px; margin:2rem auto 0; }
.science-item { border-bottom:1px solid rgba(255,255,255,0.06); }
.science-toggle, .faq-toggle { display:flex; align-items:center; justify-content:space-between; width:100%; background:none; border:none; color:var(--white); font-family:var(--font-body); font-size:1rem; font-weight:600; padding:18px 0; cursor:pointer; text-align:left; gap:12px; min-height:56px; transition:color var(--transition); }
.science-toggle:hover, .faq-toggle:hover { color:var(--gold); }
.toggle-icon, .faq-icon { font-size:1.5rem; color:var(--gold); flex-shrink:0; transition:transform var(--transition); }
.science-toggle[aria-expanded="true"] .toggle-icon, .faq-toggle[aria-expanded="true"] .faq-icon { transform:rotate(45deg); }
.science-panel, .faq-panel { max-height:0; overflow:hidden; transition:max-height 0.4s ease, padding 0.4s ease; }
.science-panel.open, .faq-panel.open { max-height:600px; padding-bottom:18px; }
.science-panel p, .faq-panel p { font-size:0.95rem; line-height:1.7; color:var(--gray-300); }
.faq-panel a { color:var(--gold); text-decoration:underline; }

/* GUARANTEE */
.guarantee { padding:60px 0; background:var(--black-light); }
.guarantee-grid { display:flex; flex-direction:column; align-items:center; gap:2rem; margin-top:2rem; }
.guarantee-image { text-align:center; max-width:250px; }
.guarantee-image img { margin:0 auto; filter:drop-shadow(0 10px 30px rgba(212,175,55,0.1)); }
.guarantee-point { margin-bottom:1.5rem; }
.guarantee-point:last-child { margin-bottom:0; }
.guarantee-point h3 { font-size:1.1rem; margin-bottom:8px; font-family:var(--font-body); font-weight:700; }
.guarantee-point p { font-size:0.95rem; color:var(--gray-300); line-height:1.7; }

/* BENEFITS */
.benefits-section { padding:60px 0; background:var(--black); }
.benefits-list { max-width:800px; margin:0 auto; }
.benefit-item { display:flex; gap:14px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,0.05); }
.benefit-check { flex-shrink:0; width:28px; height:28px; display:flex; align-items:center; justify-content:center; background:rgba(212,175,55,0.1); color:var(--gold); border-radius:50%; font-weight:700; font-size:0.85rem; margin-top:2px; }
.benefit-item div { font-size:0.95rem; color:var(--gray-300); line-height:1.6; }
.benefit-item strong { color:var(--white); }

/* PROS & CONS */
.pros-cons { padding:60px 0; background:var(--black-light); }
.pc-grid { display:grid; grid-template-columns:1fr; gap:20px; margin-top:2rem; }
.pc-card { border-radius:var(--radius-md); padding:24px 20px; }
.pc-card.pros { background:rgba(34,197,94,0.05); border:1px solid rgba(34,197,94,0.15); }
.pc-card.cons { background:rgba(239,68,68,0.05); border:1px solid rgba(239,68,68,0.15); }
.pc-card h3 { font-size:1.2rem; font-family:var(--font-body); margin-bottom:16px; }
.pc-card ul { list-style:none; }
.pc-card li { padding:10px 0 10px 20px; position:relative; font-size:0.95rem; color:var(--gray-300); line-height:1.6; border-bottom:1px solid rgba(255,255,255,0.03); }
.pc-card.pros li::before { content:'✓'; position:absolute; left:0; color:var(--green); font-weight:700; }
.pc-card.cons li::before { content:'✕'; position:absolute; left:0; color:var(--red); font-weight:700; }

/* WHERE TO BUY */
.where-buy { padding:60px 0; background:var(--black); }
.where-content { max-width:800px; margin:2rem auto 0; }
.where-content p { margin-bottom:1rem; font-size:1rem; line-height:1.7; color:var(--gray-300); }

/* ORDER PROCESS */
.order-process { padding:60px 0; background:var(--black-light); }
.order-grid { display:flex; flex-direction:column; gap:2rem; margin-top:2rem; }
.order-steps { display:flex; flex-direction:column; gap:20px; margin-bottom:1.5rem; }
.order-step { display:flex; gap:16px; align-items:flex-start; }
.order-step-num { flex-shrink:0; width:40px; height:40px; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black); border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1rem; }
.order-step h3 { font-size:1rem; margin-bottom:4px; font-family:var(--font-body); font-weight:700; }
.order-step p { font-size:0.9rem; color:var(--gray-400); line-height:1.6; }
.order-content > p { margin-bottom:1rem; font-size:0.95rem; color:var(--gray-300); line-height:1.7; }
.order-image { text-align:center; }
.order-image img { border-radius:var(--radius-md); box-shadow:var(--shadow-md); margin:0 auto; }

/* FAQ */
.faq { padding:60px 0; background:var(--black); }
.faq-list { max-width:800px; margin:2rem auto 0; }
.faq-item { border-bottom:1px solid rgba(255,255,255,0.06); }

/* FINAL CTA */
.final-cta { padding:60px 0; background:linear-gradient(180deg, var(--black-light), var(--black)); position:relative; overflow:hidden; }
.final-cta::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at center, rgba(212,175,55,0.06), transparent 70%); }
.final-grid { display:flex; flex-direction:column; align-items:center; gap:2rem; text-align:center; position:relative; z-index:1; }
.final-product-img { max-width:280px; margin:0 auto; animation:hero-float 4s ease-in-out infinite; filter:drop-shadow(0 20px 40px rgba(212,175,55,0.15)); }
.final-content h2 { font-size:1.5rem; margin-bottom:1.5rem; }
.final-pricing { margin-bottom:1.5rem; }
.final-old-price { display:block; text-decoration:line-through; color:var(--gray-500); font-size:1.1rem; margin-bottom:4px; }
.final-new-price { font-family:var(--font-display); font-size:1.6rem; color:var(--gold); }
.final-new-price strong { font-size:2rem; }
.cta-final { width:100%; max-width:500px; margin:0 auto; }

/* FOOTER */
.site-footer { padding:40px 0 20px; background:var(--black); border-top:1px solid rgba(212,175,55,0.1); }
.footer-grid { display:grid; grid-template-columns:1fr; gap:30px; text-align:center; margin-bottom:30px; }
.footer-logo { font-family:var(--font-display); font-size:1.5rem; font-weight:700; color:var(--white); }
.footer-tagline { font-size:0.85rem; color:var(--gray-400); margin-top:4px; }
.footer-social { display:flex; justify-content:center; gap:12px; margin-top:16px; }
.social-icon { width:40px; height:40px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,0.05); border-radius:50%; color:var(--gray-300); transition:all var(--transition); }
.social-icon:hover { background:var(--gold); color:var(--black); }
.footer-col h4 { font-family:var(--font-body); font-size:1rem; font-weight:700; margin-bottom:12px; color:var(--gold); }
.footer-col a { display:block; color:var(--gray-400); font-size:0.9rem; padding:4px 0; transition:color var(--transition); }
.footer-col a:hover { color:var(--gold); }
.footer-disclaimer { border-top:1px solid rgba(255,255,255,0.05); padding-top:20px; margin-top:20px; }
.footer-disclaimer p { font-size:0.75rem; color:var(--gray-500); line-height:1.6; margin-bottom:10px; }
.footer-bottom { text-align:center; padding-top:16px; border-top:1px solid rgba(255,255,255,0.05); }
.footer-bottom p { font-size:0.8rem; color:var(--gray-500); }

/* PURCHASE POPUP */
.purchase-popup { position:fixed; bottom:20px; left:20px; right:20px; z-index:900; transform:translateY(120%); transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); pointer-events:none; }
.purchase-popup.show { transform:translateY(0); pointer-events:auto; }
.popup-content { background:var(--black-card); border:1px solid rgba(212,175,55,0.2); border-radius:var(--radius-md); padding:14px 16px; display:flex; align-items:center; gap:10px; box-shadow:var(--shadow-lg); position:relative; }
.popup-close { position:absolute; top:6px; right:10px; font-size:1.2rem; color:var(--gray-400); cursor:pointer; min-width:30px; min-height:30px; display:flex; align-items:center; justify-content:center; }
.popup-icon { font-size:1.3rem; flex-shrink:0; }
.popup-content p { font-size:0.85rem; color:var(--gray-200); line-height:1.4; margin:0; }
.popup-content small { font-size:0.75rem; color:var(--gray-500); white-space:nowrap; }

/* SCROLL TO TOP */
.scroll-top { position:fixed; bottom:24px; right:24px; width:52px; height:52px; background:linear-gradient(135deg, var(--gold-dark), var(--gold)); color:var(--black); border:none; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-md); z-index:800; opacity:0; transform:translateY(20px); transition:all var(--transition); pointer-events:none; }
.scroll-top.show { opacity:1; transform:translateY(0); pointer-events:auto; }
.scroll-top:hover { transform:translateY(-3px); box-shadow:var(--shadow-gold); }

/* FADE-IN ANIMATION */
.fade-in { opacity:0; transform:translateY(30px); transition:opacity 0.6s ease, transform 0.6s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }

/* REDUCED MOTION */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; }
  html { scroll-behavior:auto; }
  .fade-in { opacity:1; transform:none; }
}

/* ====== RESPONSIVE ====== */

/* 576px+ */
@media (min-width:576px) {
  .container { padding:0 24px; }
  h1 { font-size:2rem; }
  .section-title { font-size:1.75rem; }
  .hero-image-wrap { max-width:320px; }
  .pricing-grid { grid-template-columns:1fr 1fr; }
  .price-card.popular { grid-column:1 / -1; }
  .ingredients-grid { grid-template-columns:1fr 1fr; }
  .pc-grid { grid-template-columns:1fr 1fr; }
  .reviews-grid { grid-template-columns:1fr 1fr; }
  .reviews-grid .review-card:last-child { grid-column:1 / -1; }
  .who-grid { grid-template-columns:1fr 1fr; }
  .purchase-popup { left:auto; right:20px; max-width:380px; }
}

/* 768px+ */
@media (min-width:768px) {
  .container { padding:0 30px; }
  h1 { font-size:2.25rem; }
  h2 { font-size:1.625rem; }
  .section-title { font-size:2rem; }
  .hamburger { display:none; }
  .nav-overlay { display:none; }
  .nav-links { position:static; width:auto; max-width:none; height:auto; background:transparent; flex-direction:row; padding:0; gap:24px; align-items:center; border:none; }
  .nav-link { font-size:0.9rem; padding:8px 0; border:none; }
  .nav-cta { display:inline-flex; }
  .nav-cta-mobile { display:none; }
  .hero { padding:120px 0 80px; }
  .hero-grid { flex-direction:row; align-items:center; }
  .hero-image-wrap { flex:0 0 40%; max-width:350px; }
  .hero-content { flex:1; text-align:left; }
  .cta-hero { width:auto; max-width:400px; }
  .cta-sub { text-align:left; }
  .what-grid { flex-direction:row; align-items:center; }
  .what-content { flex:1.2; }
  .what-image { flex:0.8; }
  .trust-grid { grid-template-columns:repeat(4, 1fr); gap:20px; }
  .guarantee-grid { flex-direction:row; align-items:flex-start; }
  .guarantee-image { flex:0 0 250px; }
  .guarantee-content { flex:1; }
  .order-grid { flex-direction:row; align-items:center; }
  .order-content { flex:1.2; }
  .order-image { flex:0.8; }
  .footer-grid { grid-template-columns:2fr 1fr 1fr; text-align:left; }
  .footer-social { justify-content:flex-start; }
}

/* 1024px+ */
@media (min-width:1024px) {
  h1 { font-size:2.75rem; }
  h2 { font-size:1.875rem; }
  .section-title { font-size:2.25rem; }
  .hero { padding:140px 0 100px; min-height:90vh; display:flex; align-items:center; }
  .hero-grid { gap:3rem; }
  .hero-image-wrap { max-width:400px; flex:0 0 45%; }
  .hero-content h1 { font-size:2.75rem; }
  .pricing-grid { grid-template-columns:repeat(3, 1fr); gap:24px; }
  .price-card.popular { grid-column:auto; transform:scale(1.05); }
  .price-card.popular:hover { transform:scale(1.08); }
  .reviews-grid { grid-template-columns:repeat(3, 1fr); }
  .reviews-grid .review-card:last-child { grid-column:auto; }
  .who-grid { grid-template-columns:repeat(3, 1fr); }
  .ingredients-grid { grid-template-columns:repeat(3, 1fr); }
  .final-grid { flex-direction:row; text-align:left; }
  .final-product-img { max-width:350px; }
  .final-content { flex:1; }
  .cta-final { margin:0; }
  section { padding:80px 0; }
  .hero { padding:140px 0 100px; }
  .cta-btn { width:auto; }
  .cta-price { width:100%; }
}

/* 1440px+ */
@media (min-width:1440px) {
  .container { max-width:1320px; }
  h1 { font-size:3rem; }
  .hero-content h1 { font-size:3rem; }
  .section-title { font-size:2.5rem; }
  .ingredients-grid { grid-template-columns:repeat(4, 1fr); }
}
