/* ===== TOKENS ===== */
:root {
  --gold: #FFD600;
  --gold-light: #FFE033;
  --gold-dark: #E6C000;
  --onyx: #000000;
  --charcoal: #0D0D0D;
  --surface: #111111;
  --deep-gray: #1A1A1A;
  --white: #FFFFFF;
  --white-dim: rgba(255,255,255,0.06);
  --white-border: rgba(255,214,0,0.25);
  --gold-glow: rgba(255,214,0,0.5);
  --gold-dim: rgba(255,214,0,0.1);
  --radius-pill: 9999px;
  --radius-card: 28px;
  --radius-sm: 16px;
  --ease-fluid: cubic-bezier(0.22,1,0.36,1);
  --font: 'Inter', sans-serif;
}

/* ===== RESET ===== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--font); background: var(--onyx); color: var(--white); overflow-x: hidden; }
img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }
s { opacity: 0.5; }
u { text-underline-offset: 3px; }

/* ===== UTILITIES ===== */
.container { max-width: 1100px; margin: 0 auto; padding: 0 24px; }
.gold-text { color: var(--gold); }
.label { font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; opacity: 0.6; font-weight: 600; }
.section-label { font-size: 11px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 10px; }
.section-header { text-align: center; margin-bottom: 56px; }
.section-header h2 { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 800; line-height: 1.15; letter-spacing: -0.03em; margin-top: 8px; }
.glass { background: var(--white-dim); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid var(--white-border); }

/* ===== BUTTONS ===== */
.btn { display: inline-flex; align-items: center; justify-content: center; font-family: var(--font); font-weight: 700; border-radius: var(--radius-pill); cursor: pointer; transition: transform 0.2s var(--ease-fluid), box-shadow 0.2s ease; border: none; white-space: nowrap; }
.btn:hover { transform: scale(1.04); }
.btn:active { transform: scale(0.97); }
.btn-dark { background: var(--onyx); color: var(--white); border: 2px solid rgba(255,255,255,0.2); }
.btn-gold { background: var(--gold); color: var(--onyx); box-shadow: 0 0 28px var(--gold-glow), 0 0 60px rgba(255,214,0,0.2); }
.btn-gold:hover { background: var(--gold-light); box-shadow: 0 0 60px var(--gold-glow), 0 0 100px rgba(255,214,0,0.3); }
.btn-sm { font-size: 13px; padding: 10px 22px; }
.btn-md { font-size: 15px; padding: 14px 32px; }
.btn-lg { font-size: 17px; padding: 18px 42px; }
.btn-xl { font-size: 18px; padding: 22px 52px; letter-spacing: 0.02em; }

/* ===== NAV ===== */
#navbar { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: 16px 32px; display: flex; align-items: center; justify-content: center; transition: background 0.3s ease, backdrop-filter 0.3s ease; }
#navbar.scrolled { background: rgba(10,10,10,0.9); backdrop-filter: blur(16px); border-bottom: 1px solid var(--white-border); }
.nav-inner { width: 100%; max-width: 1100px; display: flex; align-items: center; justify-content: space-between; }
.nav-logo { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; }
.logo-dot { color: var(--gold); font-size: 12px; }

/* ===== HERO ===== */
.hero { position: relative; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; background: var(--gold); overflow: hidden; padding: 120px 0 160px; }
.hero-bg-blob { position: absolute; inset: 0; background: radial-gradient(ellipse 70% 80% at 110% 50%, rgba(255,255,255,0.08) 0%, transparent 60%); pointer-events: none; }
.hero-inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 40px; max-width: 1100px; width: 100%; margin: 0 auto; padding: 0 48px; }
.hero-content { flex: 0 0 auto; max-width: 520px; }
.hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(0,0,0,0.15); color: var(--onyx); font-size: 12px; font-weight: 600; padding: 8px 18px; border-radius: var(--radius-pill); margin-bottom: 32px; }
.badge-dot { width: 8px; height: 8px; background: var(--onyx); border-radius: 50%; animation: pulse 2s infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.3)} }
.hero-headline { font-size: clamp(2.8rem, 6vw, 5rem); font-weight: 900; line-height: 1.0; letter-spacing: -0.04em; color: var(--onyx); margin-bottom: 24px; text-shadow: 0 0 40px rgba(0,0,0,0.3); }
.hero-headline-accent { display: block; }
.hero-sub { font-size: clamp(1rem, 1.5vw, 1.15rem); font-weight: 500; color: rgba(10,10,10,0.8); line-height: 1.6; margin-bottom: 40px; max-width: 440px; }
.hero-sub strong { color: var(--onyx); }
.hero-cta-group { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.hero-guarantee { font-size: 12px; color: rgba(10,10,10,0.65); font-weight: 500; }
.hero-mockup { flex: 0 0 auto; width: min(45%, 480px); position: relative; }
.mockup-glow { position: absolute; inset: -40px; background: radial-gradient(ellipse, rgba(0,0,0,0.15) 0%, transparent 70%); filter: blur(30px); pointer-events: none; }
.mockup-img { position: relative; width: 100%; filter: drop-shadow(0 40px 80px rgba(0,0,0,0.35)); animation: float 6s ease-in-out infinite; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
.hero-liquid-cut { position: absolute; bottom: -1px; left: 0; right: 0; height: 120px; background: var(--onyx); border-radius: 80% 80% 0 0 / 120px 120px 0 0; }

/* price-flash removed */

/* ===== PAIN ===== */
.pain-section { background: var(--onyx); padding: 100px 0; }
.pain-pill-container { background: var(--charcoal); border-radius: 60px; padding: 60px; margin-bottom: 56px; border: 1px solid var(--white-border); }
.pain-intro-label { font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 32px; }
.questions-stack { display: flex; flex-direction: column; gap: 20px; margin-bottom: 40px; }
.question-item { display: flex; align-items: flex-start; gap: 16px; }
.q-icon { color: var(--gold); font-size: 18px; flex-shrink: 0; margin-top: 2px; }
.question-item p { font-size: clamp(1.1rem, 2.5vw, 1.5rem); font-weight: 700; line-height: 1.4; color: var(--white); }
.pain-body { border-top: 1px solid var(--white-border); padding-top: 32px; display: flex; flex-direction: column; gap: 16px; }
.pain-body p { font-size: 1.05rem; line-height: 1.75; color: rgba(255,255,255,0.8); }
.possibility-box { background: var(--gold); border-radius: 40px; padding: 56px 48px; color: var(--onyx); }
.possibility-label { font-size: 11px; letter-spacing: 0.25em; text-transform: uppercase; font-weight: 700; opacity: 0.65; margin-bottom: 32px; }
.possibility-items { display: flex; flex-direction: column; gap: 0; }
.poss-item { display: flex; align-items: flex-start; gap: 20px; padding: 24px 0; }
.poss-divider { height: 1px; background: rgba(0,0,0,0.15); }
.poss-num { font-size: 2.5rem; font-weight: 900; opacity: 0.25; line-height: 1; flex-shrink: 0; width: 48px; }
.poss-item p { font-size: 1.15rem; font-weight: 500; line-height: 1.5; padding-top: 6px; }
.poss-footer { margin-top: 32px; font-size: 1.05rem; font-weight: 600; line-height: 1.6; border-top: 1px solid rgba(0,0,0,0.15); padding-top: 24px; }

/* ===== ORIGIN ===== */
.origin-section { background: var(--charcoal); padding: 100px 0; }
.origin-content { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
.origin-label { font-size: 11px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 16px; }
.origin-text h2 { font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; line-height: 1.2; margin-bottom: 24px; letter-spacing: -0.02em; }
.origin-text p { font-size: 1rem; line-height: 1.8; color: rgba(255,255,255,0.75); margin-bottom: 16px; }
.origin-stats { display: flex; flex-direction: column; gap: 16px; }
.stat-card { border-radius: var(--radius-card); padding: 28px 32px; }
.stat-number { font-size: 2.8rem; font-weight: 900; color: var(--gold); letter-spacing: -0.03em; text-shadow: 0 0 20px var(--gold-glow); }
.stat-label { font-size: 13px; color: rgba(255,255,255,0.6); margin-top: 4px; font-weight: 500; }
.origin-pill { background: var(--gold-dim); border: 1px solid rgba(255,214,0,0.25); border-radius: var(--radius-card); padding: 28px; }
.origin-pill p { font-size: 1rem; line-height: 1.75; color: rgba(255,255,255,0.8); }

/* ===== WHAT'S INSIDE ===== */
.whats-inside { background: var(--onyx); padding: 100px 0; }
.inside-mockup-wrap { text-align: center; margin-bottom: 56px; }
.inside-mockup-img { max-width: 500px; margin: 0 auto; filter: drop-shadow(0 30px 60px rgba(201,162,39,0.25)); animation: float 6s ease-in-out infinite; }
.inside-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.inside-card { background: var(--charcoal); border: 1px solid var(--white-border); border-radius: var(--radius-card); padding: 36px 28px; transition: transform 0.3s var(--ease-fluid), border-color 0.3s ease; }
.inside-card:hover { transform: translateY(-6px); border-color: rgba(201,162,39,0.5); }
.card-icon { font-size: 2.2rem; margin-bottom: 16px; }
.inside-card h3 { font-size: 1.15rem; font-weight: 800; margin-bottom: 12px; color: var(--gold); }
.inside-card p { font-size: 0.95rem; line-height: 1.75; color: rgba(255,255,255,0.7); }

/* ===== BONUSES ===== */
.bonuses { background: var(--charcoal); padding: 100px 0; }
.bonus-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.bonus-card { border-radius: var(--radius-card); padding: 36px 28px; display: flex; flex-direction: column; gap: 20px; transition: transform 0.3s var(--ease-fluid); }
.bonus-card:hover { transform: translateY(-6px); }
.bonus-number { font-size: 10px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--gold); font-weight: 700; }
.bonus-card h3 { font-size: 1.2rem; font-weight: 800; line-height: 1.3; }
.bonus-card img { width: 100%; border-radius: var(--radius-sm); }
.bonus-highlight { font-size: 0.95rem; line-height: 1.7; color: rgba(255,255,255,0.8); }
.bonus-tag { background: var(--gold); color: var(--onyx); font-size: 12px; font-weight: 600; padding: 10px 16px; border-radius: var(--radius-sm); line-height: 1.5; margin-top: auto; }

/* ===== SOCIAL PROOF ===== */
.social-proof { background: var(--onyx); padding: 100px 0; overflow: hidden; }
.proof-ticker-wrap { overflow: hidden; margin: 0 -24px 56px; -webkit-mask: linear-gradient(90deg, transparent, black 10%, black 90%, transparent); mask: linear-gradient(90deg, transparent, black 10%, black 90%, transparent); }
.proof-ticker { display: flex; }
.ticker-track { display: flex; gap: 16px; animation: ticker 30s linear infinite; will-change: transform; }
.ticker-track img { width: 220px; height: 180px; object-fit: cover; border-radius: var(--radius-sm); flex-shrink: 0; border: 2px solid var(--white-border); }
@keyframes ticker { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.proof-testimonial { text-align: center; }
.testimonial-img { max-width: 600px; margin: 0 auto; border-radius: var(--radius-card); border: 2px solid var(--white-border); }

/* ===== OFFER ===== */
.offer-section { background: var(--charcoal); padding: 100px 0; }
.offer-badge-best { display: inline-block; background: var(--gold); color: var(--onyx); font-size: 12px; font-weight: 800; letter-spacing: 0.15em; padding: 6px 20px; border-radius: var(--radius-pill); margin-top: 12px; }
.offer-card { margin-top: 40px; }
.offer-card-inner { border-radius: 48px; padding: 56px; display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: 48px; align-items: start; }
.offer-mockup { border-radius: var(--radius-card); filter: drop-shadow(0 20px 40px rgba(201,162,39,0.2)); }
.offer-includes-title { font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 20px; }
.offer-list { list-style: none; display: flex; flex-direction: column; gap: 14px; }
.offer-list li { display: flex; align-items: flex-start; gap: 10px; font-size: 0.9rem; line-height: 1.6; color: rgba(255,255,255,0.8); }
.check { color: var(--gold); font-weight: 900; flex-shrink: 0; margin-top: 1px; }
.offer-pricing { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.offer-value { font-size: 0.9rem; color: rgba(255,255,255,0.5); }
.offer-today { font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.5); font-weight: 600; }
.offer-price { font-size: 5rem; font-weight: 900; color: var(--gold); letter-spacing: -0.04em; line-height: 1; text-shadow: 0 0 30px var(--gold-glow), 0 0 60px rgba(255,214,0,0.3); }
.offer-urgency { font-size: 13px; color: rgba(255,255,255,0.55); max-width: 260px; text-align: center; line-height: 1.5; }
.offer-guarantee { display: flex; align-items: center; gap: 14px; background: rgba(255,214,0,0.08); border: 1px solid rgba(255,214,0,0.3); border-radius: var(--radius-sm); padding: 16px 20px; text-align: left; margin-top: 8px; }
.guarantee-icon { font-size: 2rem; flex-shrink: 0; }
.offer-guarantee strong { display: block; font-size: 14px; color: var(--gold); margin-bottom: 4px; }
.offer-guarantee p { font-size: 12px; color: rgba(255,255,255,0.6); line-height: 1.5; }

/* ===== RECAP ===== */
.recap-section { background: var(--onyx); padding: 100px 0; }
.recap-inner { max-width: 700px; margin: 0 auto; text-align: center; }
.recap-inner h2 { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 800; letter-spacing: -0.03em; margin-bottom: 32px; }
.recap-text { display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px; }
.recap-text p { font-size: 1.05rem; line-height: 1.8; color: rgba(255,255,255,0.75); }

/* ===== FAQ ===== */
.faq-section { background: var(--charcoal); padding: 100px 0; }
.faq-list { max-width: 720px; margin: 0 auto; display: flex; flex-direction: column; gap: 16px; }
.faq-item { border-radius: var(--radius-card); border: 1px solid var(--white-border); overflow: hidden; }
.faq-question { width: 100%; background: var(--surface); color: var(--white); border: none; padding: 24px 28px; text-align: left; font-family: var(--font); font-size: 1rem; font-weight: 700; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; transition: background 0.2s ease; }
.faq-question:hover { background: var(--deep-gray); }
.faq-arrow { color: var(--gold); font-size: 1.2rem; transition: transform 0.3s var(--ease-fluid); flex-shrink: 0; }
.faq-question[aria-expanded="true"] .faq-arrow { transform: rotate(180deg); }
.faq-answer { display: none; padding: 0 28px 24px; background: var(--surface); }
.faq-answer.open { display: block; }
.faq-answer p { font-size: 0.95rem; line-height: 1.8; color: rgba(255,255,255,0.7); margin-bottom: 10px; }

/* ===== FINAL CTA ===== */
.final-cta { background: var(--gold); padding: 100px 0; }
.final-cta-inner { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.final-cta-inner h2 { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 900; color: var(--onyx); letter-spacing: -0.04em; }
.final-cta-inner .gold-text { color: var(--onyx); text-decoration: underline; text-underline-offset: 4px; }
.final-cta-inner p { font-size: 1.1rem; color: rgba(10,10,10,0.7); font-weight: 500; }
.final-cta .btn-gold { background: var(--onyx); color: var(--white); box-shadow: 0 8px 40px rgba(0,0,0,0.3); }
.final-cta .btn-gold:hover { background: var(--charcoal); }
.final-guarantee { font-size: 13px; color: rgba(10,10,10,0.6); font-weight: 600; }

/* ===== FOOTER ===== */
.footer { background: var(--onyx); border-top: 1px solid var(--white-border); padding: 48px 0; }
.footer-inner { display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.footer-copy { font-size: 13px; color: rgba(255,255,255,0.4); }
.footer-disclaimer { font-size: 11px; color: rgba(255,255,255,0.25); max-width: 560px; line-height: 1.6; }

/* ===== SCROLL ANIMATIONS ===== */
.reveal { opacity: 0; transform: translateY(32px); transition: opacity 0.7s var(--ease-fluid), transform 0.7s var(--ease-fluid); }
.reveal.visible { opacity: 1; transform: translateY(0); }

/* ===== RESPONSIVE ===== */
@media (max-width: 900px) {
  .hero { padding: 120px 0 160px; }
  .hero-inner { flex-direction: column; text-align: center; padding: 0 24px; gap: 32px; }
  .hero-content { max-width: 100%; }
  .hero-cta-group { align-items: center; }
  .hero-mockup { width: 80%; max-width: 420px; margin: 0 auto; }
  .hero-liquid-cut { height: 80px; }
  .origin-content { grid-template-columns: 1fr; }
  .inside-cards, .bonus-grid { grid-template-columns: 1fr; }
  .offer-card-inner { grid-template-columns: 1fr; padding: 36px 28px; gap: 32px; border-radius: 32px; }
  .offer-mockup { width: 70%; max-width: 280px; margin: 0 auto; display: block; }
  .pain-pill-container { padding: 40px 24px; border-radius: 32px; }
  .possibility-box { padding: 40px 24px; border-radius: 28px; }
}

@media (max-width: 600px) {
  /* --- HERO --- */
  .hero { padding: 100px 0 140px; }
  .hero-inner { padding: 0 20px; gap: 20px; }
  .hero-badge { font-size: 10px; padding: 6px 12px; }
  .hero-headline { font-size: 2.4rem; letter-spacing: -0.03em; margin-bottom: 16px; }
  .hero-sub { font-size: 0.95rem; margin-bottom: 24px; max-width: 100%; }
  .hero-mockup { width: 90%; max-width: 300px; margin: 0 auto; }
  .mockup-img { filter: drop-shadow(0 16px 32px rgba(0,0,0,0.3)); }
  .hero-liquid-cut { height: 52px; border-radius: 60% 60% 0 0 / 52px 52px 0 0; }
  .hero-cta-group { align-items: center; gap: 12px; }
  .btn-lg { font-size: 14px; padding: 15px 24px; }
  .hero-guarantee { font-size: 10px; text-align: center; line-height: 1.6; }

  /* --- WHAT'S INSIDE MOCKUP --- */
  .whats-inside { overflow: hidden; }
  .inside-mockup-wrap {
    overflow: hidden;
    padding: 0 16px;
    margin-bottom: 36px;
  }
  .inside-mockup-img {
    width: 100%;
    max-width: 100%;
    animation: none;
    filter: drop-shadow(0 12px 24px rgba(201,162,39,0.2));
  }

  /* --- TESTIMONIAL (LUCIANO) --- */
  .proof-testimonial { padding: 0 16px; overflow: hidden; }
  .testimonial-img {
    width: 100%;
    max-width: 100%;
    border-radius: var(--radius-sm);
  }

  /* --- OFFER --- */
  .offer-card-inner { grid-template-columns: 1fr; padding: 24px 16px; border-radius: 24px; gap: 24px; }
  .offer-mockup { width: 80%; max-width: 220px; margin: 0 auto; display: block; }
  .offer-includes-title { font-size: 10px; margin-bottom: 14px; }
  .offer-list { gap: 10px; }
  .offer-list li { font-size: 0.82rem; gap: 8px; line-height: 1.5; }
  .offer-pricing { gap: 8px; }
  .offer-value { font-size: 0.82rem; }
  .offer-today { font-size: 10px; }
  .offer-price { font-size: 3.8rem; }
  .btn-xl { font-size: 13px; padding: 16px 20px; width: 100%; }
  .offer-urgency { font-size: 11px; max-width: 100%; }
  .offer-guarantee { flex-direction: column; align-items: center; text-align: center; padding: 14px 16px; gap: 8px; }
  .guarantee-icon { font-size: 1.5rem; }

  /* --- NAV --- */
  .nav-cta { display: none; }
}

