/* ============================================================
   OPERAÇÃO CONCURSOS — LP PRF + SISTEMA 4P (2026-09-11)
   Design system tático v2 (Teko + Inter + Barlow Condensed,
   preto dominante + dourado #FFD700), consolidado em um arquivo.
   ============================================================ */

/* ─────────────── TOKENS ─────────────── */
:root {
  --color-black: #000000;
  --color-black-900: #0A0A0A;
  --color-black-800: #111111;
  --color-black-700: #1A1A1A;
  --color-black-600: #222222;
  --color-black-500: #2A2A2A;

  --color-gold: #FFD700;
  --color-gold-light: #FFE44D;
  --color-gold-dark: #C7A800;
  --color-gold-subtle: rgba(255, 215, 0, 0.08);

  --color-navy: #0D1B3E;
  --color-navy-dark: #08112A;

  --color-white: #FFFFFF;
  --color-gray-100: #F0F0F0;
  --color-gray-200: #D4D4D4;
  --color-gray-300: #B0B0B0;
  --color-gray-400: #8A8A8A;
  --color-gray-500: #666666;
  --color-gray-600: #444444;

  --color-green: #25D366;
  --color-green-dark: #1FB558;
  --color-red: #FF1744;

  --color-text: var(--color-white);
  --color-text-secondary: var(--color-gray-300);
  --color-text-muted: var(--color-gray-500);
  --color-border: rgba(255, 215, 0, 0.12);
  --color-border-strong: rgba(255, 215, 0, 0.3);
  --color-border-subtle: rgba(255, 255, 255, 0.06);

  --font-heading: 'Teko', 'Barlow Condensed', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, -apple-system, sans-serif;
  --font-accent: 'Barlow Condensed', 'Teko', sans-serif;

  --text-hero: clamp(2.5rem, 6vw, 4.5rem);
  --text-h1: clamp(2.25rem, 5vw, 3.5rem);
  --text-h2: clamp(1.75rem, 3.5vw, 2.5rem);
  --text-h3: clamp(1.25rem, 2.5vw, 1.75rem);
  --text-h4: clamp(1.125rem, 2vw, 1.375rem);
  --text-body-lg: clamp(1.0625rem, 1.5vw, 1.2rem);
  --text-body: clamp(0.9375rem, 1.25vw, 1.0625rem);
  --text-sm: 0.875rem;
  --text-xs: 0.75rem;
  --text-badge: 0.6875rem;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --weight-black: 900;

  --leading-tight: 1.1;
  --leading-snug: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  --tracking-wide: 0.08em;
  --tracking-wider: 0.15em;
  --tracking-widest: 0.25em;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --section-padding: clamp(4.5rem, 9vw, 7.5rem);

  --container-max: 1240px;
  --container-padding: clamp(1.25rem, 4vw, 2rem);

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;

  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.6);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.7);
  --shadow-gold: 0 0 30px rgba(255, 215, 0, 0.15);
  --shadow-gold-strong: 0 0 40px rgba(255, 215, 0, 0.25);
  --shadow-gold-btn: 0 4px 20px rgba(255, 215, 0, 0.3);

  --gradient-card: linear-gradient(160deg, var(--color-black-600) 0%, var(--color-black-800) 100%);
  --gradient-gold: linear-gradient(135deg, #FFD700 0%, #FFA000 100%);
  --gradient-gold-text: linear-gradient(135deg, #FFE44D 0%, #FFD700 50%, #C7A800 100%);

  --transition-fast: 150ms ease;
  --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);

  --z-sticky: 100;
  --z-nav: 200;
  --z-modal: 400;

  --nav-h: 64px;
  --announce-h: 40px;
}

@media (prefers-reduced-motion: reduce) {
  :root { --transition-fast: 0ms; --transition-base: 0ms; --transition-slow: 0ms; }
  html { scroll-behavior: auto; }
}

/* ─────────────── RESET ─────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--nav-h) + 16px); }
body {
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: var(--leading-normal);
  color: var(--color-text);
  background: var(--color-black);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img, svg, video { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
ul, ol { list-style: none; }
strong { font-weight: var(--weight-semibold); color: var(--color-white); }
:focus-visible { outline: 2px solid var(--color-gold); outline-offset: 3px; }
::selection { background: var(--color-gold); color: var(--color-black); }

/* ─────────────── LAYOUT / TYPO ─────────────── */
.container { width: 100%; max-width: var(--container-max); margin-inline: auto; padding-inline: var(--container-padding); }
.section { padding-block: var(--section-padding); position: relative; }
.section--alt { background: linear-gradient(180deg, #0d0d0d 0%, #070707 100%); }
.section--tight { padding-block: clamp(3rem, 6vw, 5rem); }

.section__header { text-align: center; max-width: 820px; margin-inline: auto; margin-bottom: var(--space-12); }
.section__eyebrow {
  display: block; font-family: var(--font-accent); font-size: var(--text-sm); font-weight: var(--weight-semibold);
  text-transform: uppercase; letter-spacing: var(--tracking-widest); color: var(--color-gold); margin-bottom: var(--space-3);
}
.section__title {
  font-family: var(--font-heading); font-size: var(--text-h1); font-weight: var(--weight-bold); line-height: 1.05;
  letter-spacing: var(--tracking-wide); text-transform: uppercase; margin-bottom: var(--space-4);
}
.section__title .gold { color: var(--color-gold); }
.section__subtitle { font-size: var(--text-body-lg); color: var(--color-text-secondary); max-width: 680px; margin-inline: auto; line-height: var(--leading-relaxed); }
.section__header::after { content: ''; display: block; width: 60px; height: 2px; background: var(--color-gold); margin: var(--space-6) auto 0; }
.section__header--left { text-align: left; margin-inline: 0; }
.section__header--left::after { margin-left: 0; }
.section__header--left .section__subtitle { margin-inline: 0; }
.text-gold { color: var(--color-gold); }
.text-center { text-align: center; }
.text-muted { color: var(--color-text-secondary); }
.note { font-size: var(--text-xs); color: var(--color-gray-500); line-height: var(--leading-relaxed); }
.note a { color: var(--color-gray-400); text-decoration: underline; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* HUD header */
.section__header--hud { position: relative; padding: var(--space-6); }
.hud-corner--tl, .hud-corner--tr, .hud-corner--bl, .hud-corner--br {
  position: absolute; width: 20px; height: 20px; opacity: 0; transition: opacity 0.8s ease 0.5s; pointer-events: none;
}
.hud-corner--tl { top: 0; left: 0; border-top: 2px solid var(--color-gold); border-left: 2px solid var(--color-gold); }
.hud-corner--tr { top: 0; right: 0; border-top: 2px solid var(--color-gold); border-right: 2px solid var(--color-gold); }
.hud-corner--bl { bottom: 0; left: 0; border-bottom: 2px solid var(--color-gold); border-left: 2px solid var(--color-gold); }
.hud-corner--br { bottom: 0; right: 0; border-bottom: 2px solid var(--color-gold); border-right: 2px solid var(--color-gold); }
.section__header--hud.animate-in .hud-corner--tl, .section__header--hud.animate-in .hud-corner--tr,
.section__header--hud.animate-in .hud-corner--bl, .section__header--hud.animate-in .hud-corner--br { opacity: 0.55; }

/* Tactical ambient */
.section--tactical { position: relative; overflow: hidden; }
.section--tactical::before {
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background:
    radial-gradient(ellipse 560px 320px at 12% 28%, rgba(255, 215, 0, 0.07) 0%, transparent 70%),
    radial-gradient(ellipse 460px 280px at 86% 72%, rgba(255, 215, 0, 0.05) 0%, transparent 70%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 72px);
  -webkit-mask-image: radial-gradient(ellipse 90% 80% at 50% 45%, #000 25%, transparent 100%);
  mask-image: radial-gradient(ellipse 90% 80% at 50% 45%, #000 25%, transparent 100%);
}
.section--tactical::after {
  content: ''; position: absolute; left: 0; right: 0; top: 0; height: 1px; pointer-events: none; z-index: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 215, 0, 0.35) 50%, transparent 100%);
}
.section--tactical > .container { position: relative; z-index: 1; }

/* ─────────────── BUTTONS ─────────────── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2);
  padding: var(--space-4) var(--space-8); font-family: var(--font-accent); font-size: var(--text-body);
  font-weight: var(--weight-bold); letter-spacing: var(--tracking-wide); text-transform: uppercase; line-height: 1;
  border-radius: var(--radius-sm); transition: all var(--transition-base); white-space: nowrap; cursor: pointer;
  border: 2px solid transparent; position: relative; overflow: hidden; text-align: center;
}
.btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.14), transparent); transition: left 0.5s ease; }
.btn:hover::before { left: 100%; }
.btn--primary { background: var(--gradient-gold); color: var(--color-black); font-weight: var(--weight-extrabold); box-shadow: var(--shadow-gold-btn); }
.btn--primary:hover { transform: translateY(-2px); box-shadow: var(--shadow-gold-strong); filter: brightness(1.08); }
.btn--primary:active { transform: translateY(0); }
.btn--outline { background: rgba(0, 0, 0, 0.3); color: var(--color-white); border-color: rgba(255, 255, 255, 0.35); }
.btn--outline:hover { border-color: var(--color-white); background: rgba(255, 255, 255, 0.06); }
.btn--whatsapp { background: var(--color-green); color: var(--color-black-900); font-weight: var(--weight-extrabold); }
.btn--whatsapp:hover { background: var(--color-green-dark); transform: translateY(-2px); box-shadow: 0 4px 20px rgba(37, 211, 102, 0.35); }
.btn--lg { padding: var(--space-5) var(--space-10); font-size: var(--text-body-lg); }
.btn--sm { padding: var(--space-2) var(--space-5); font-size: var(--text-sm); }
.btn--full { width: 100%; }
.btn--pulse { animation: btnPulse 2.8s ease-in-out infinite; }
@keyframes btnPulse { 0%, 100% { box-shadow: 0 4px 20px rgba(255, 215, 0, 0.3); } 50% { box-shadow: 0 6px 34px rgba(255, 215, 0, 0.55); } }
.btn svg { flex-shrink: 0; }
.btn__sub { display: block; font-family: var(--font-body); font-size: 0.68rem; font-weight: var(--weight-semibold); letter-spacing: 0.02em; text-transform: none; opacity: 0.8; margin-top: 3px; }
.btn--stack { flex-direction: column; line-height: 1.05; }

/* ─────────────── BADGES ─────────────── */
.badge {
  display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-1) var(--space-3);
  font-family: var(--font-accent); font-size: var(--text-badge); font-weight: var(--weight-bold); text-transform: uppercase;
  letter-spacing: var(--tracking-wider); border-radius: var(--radius-sm); line-height: 1.5;
}
.badge--gold { background: rgba(255, 215, 0, 0.12); color: var(--color-gold); border: 1px solid rgba(255, 215, 0, 0.3); }
.badge--live { background: rgba(255, 23, 68, 0.14); color: #FF5C7A; border: 1px solid rgba(255, 23, 68, 0.35); }
.badge--live::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--color-red); box-shadow: 0 0 0 0 rgba(255, 23, 68, 0.6); animation: liveDot 1.6s ease-out infinite; }
@keyframes liveDot { 0% { box-shadow: 0 0 0 0 rgba(255, 23, 68, 0.6); } 100% { box-shadow: 0 0 0 8px rgba(255, 23, 68, 0); } }

/* ─────────────── ANNOUNCEMENT BAR ─────────────── */
.announce {
  position: fixed; top: 0; left: 0; right: 0; z-index: calc(var(--z-nav) + 1); height: var(--announce-h);
  display: flex; align-items: center; justify-content: center; gap: var(--space-3); padding-inline: var(--space-4);
  background: var(--gradient-gold); color: var(--color-black); font-family: var(--font-accent); font-weight: var(--weight-bold);
  font-size: 0.82rem; letter-spacing: 0.05em; text-transform: uppercase; text-align: center; line-height: 1.2;
}
.announce strong { color: var(--color-black); font-weight: var(--weight-extrabold); }
.announce__cta { text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
.announce__short { display: none; }
@media (max-width: 720px) {
  .announce { font-size: 0.72rem; letter-spacing: 0.03em; }
  .announce__long { display: none; }
  .announce__short { display: inline; }
}

/* ─────────────── NAV ─────────────── */
.nav {
  position: fixed; top: var(--announce-h); left: 0; right: 0; z-index: var(--z-nav); height: var(--nav-h);
  background: rgba(0, 0, 0, 0.72); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--color-border-subtle); transition: background var(--transition-base), border-color var(--transition-base);
}
.nav--scrolled { background: rgba(0, 0, 0, 0.94); border-bottom-color: var(--color-border); }
.nav__inner { display: flex; align-items: center; justify-content: space-between; height: 100%; gap: var(--space-4); }
.nav__logo { height: 34px; width: auto; display: block; }
.nav__links { display: flex; gap: var(--space-6); align-items: center; }
.nav__link {
  font-family: var(--font-accent); font-size: var(--text-sm); font-weight: var(--weight-semibold); text-transform: uppercase;
  letter-spacing: var(--tracking-wide); color: var(--color-gray-300); position: relative; padding: 4px 0; transition: color var(--transition-fast);
}
.nav__link::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: var(--color-gold); transition: width var(--transition-base); }
.nav__link:hover, .nav__link.is-active { color: var(--color-gold); }
.nav__link:hover::after, .nav__link.is-active::after { width: 100%; }
.nav__cta { margin-left: var(--space-2); }
.nav__hamburger { display: none; flex-direction: column; gap: 5px; padding: var(--space-2); }
.nav__hamburger span { display: block; width: 22px; height: 2px; background: var(--color-gold); transition: all var(--transition-base); border-radius: 1px; }
.nav__hamburger--open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.nav__hamburger--open span:nth-child(2) { opacity: 0; }
.nav__hamburger--open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
.nav__mobile {
  display: none; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0;
  padding: var(--space-4) var(--container-padding) var(--space-6); border-top: 1px solid var(--color-border);
  background: rgba(0, 0, 0, 0.97); box-shadow: var(--shadow-lg);
}
.nav__mobile--open { display: flex; }
.nav__mobile-link {
  padding: var(--space-3) 0; font-family: var(--font-accent); font-size: var(--text-body); font-weight: var(--weight-semibold);
  text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-gray-300); border-bottom: 1px solid var(--color-border-subtle);
}
.nav__mobile-link:hover { color: var(--color-gold); }
@media (max-width: 900px) {
  .nav__links, .nav__cta { display: none; }
  .nav__hamburger { display: flex; }
}

/* ─────────────── HERO ─────────────── */
.hero {
  position: relative; min-height: 100svh; display: flex; align-items: center; overflow: hidden;
  padding-top: calc(var(--announce-h) + var(--nav-h) + var(--space-8)); padding-bottom: var(--space-12);
}
.hero__bg { position: absolute; inset: 0; z-index: 0; background: url('../assets/hero-bg.webp') center center / cover no-repeat; transform: scale(1.02); }
@media (max-width: 720px) { .hero__bg { background-image: url('../assets/hero-bg-mobile.webp'); } }
.hero__overlay {
  position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.72) 40%, rgba(0,0,0,0.3) 72%, rgba(0,0,0,0.45) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.5) 0%, transparent 30%, transparent 60%, rgba(0,0,0,0.98) 100%);
}
.hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.hero__badges { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin-bottom: var(--space-5); }
.hero__brasao { width: clamp(44px, 5vw, 60px); height: auto; filter: drop-shadow(0 0 14px rgba(255, 215, 0, 0.45)) drop-shadow(0 2px 8px rgba(0, 0, 0, 0.8)); }
.hero__title { margin-bottom: var(--space-5); }
.hero__line { display: block; font-family: var(--font-heading); font-weight: var(--weight-bold); text-transform: uppercase; line-height: 0.92; letter-spacing: 0.01em; }
.hero__line--white { font-size: clamp(2.2rem, 4.6vw, 4rem); color: var(--color-white); }
.hero__line--gold { font-size: clamp(3.6rem, 8.6vw, 7.4rem); color: var(--color-gold); text-shadow: 0 0 40px rgba(255, 215, 0, 0.25); animation: goldGlow 3.2s ease-in-out 1.5s infinite; }
@keyframes goldGlow { 0%, 100% { text-shadow: 0 0 14px rgba(255, 215, 0, 0.12); } 50% { text-shadow: 0 0 44px rgba(255, 215, 0, 0.42), 0 0 90px rgba(255, 215, 0, 0.16); } }
.hero__subtitle { font-size: clamp(1.02rem, 1.7vw, 1.2rem); color: var(--color-gray-200); line-height: var(--leading-relaxed); max-width: 600px; margin-bottom: var(--space-6); }
.hero__subtitle strong { color: var(--color-gold); }
.hero__checks { display: grid; gap: var(--space-2); margin-bottom: var(--space-8); }
.hero__checks li { display: flex; align-items: flex-start; gap: var(--space-3); color: var(--color-gray-200); font-size: var(--text-body); line-height: 1.45; }
.hero__checks svg { color: var(--color-gold); flex-shrink: 0; margin-top: 3px; }
.hero__cta { display: flex; gap: var(--space-4); flex-wrap: wrap; align-items: stretch; margin-bottom: var(--space-6); }
.hero__price-hint { display: block; font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-gray-300); font-size: var(--text-sm); line-height: 1.7; margin-bottom: var(--space-10); }
.hero__price-hint strong { color: var(--color-gold); font-size: 1.2rem; margin-inline: 4px; }
.hero__price-hint s { color: var(--color-gray-500); }
.hero__stats { display: grid; grid-template-columns: repeat(4, auto); gap: var(--space-8); padding-top: var(--space-6); border-top: 1px solid rgba(255, 215, 0, 0.14); }
.hero__stat { display: flex; flex-direction: column; gap: 2px; }
.hero__stat strong { font-family: var(--font-heading); font-size: clamp(1.5rem, 2.4vw, 2.1rem); color: var(--color-gold); line-height: 1; font-weight: var(--weight-bold); }
.hero__stat span { font-family: var(--font-accent); font-size: var(--text-xs); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-gray-400); }

.hero__visual { position: relative; isolation: isolate; }
.hero__stack { position: relative; padding-bottom: 27%; }
.hero__cover {
  position: relative; width: 84%; border-radius: var(--radius-xl); overflow: hidden; border: 1px solid rgba(255, 215, 0, 0.35);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8), 0 0 60px rgba(255, 215, 0, 0.12); background: var(--color-navy-dark);
  transform: perspective(1400px) rotateY(-6deg) rotateX(2deg); transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.hero__visual:hover .hero__cover { transform: perspective(1400px) rotateY(-2deg) rotateX(0deg); }
.hero__app {
  position: absolute; right: -3%; bottom: 0; width: 68%; border-radius: var(--radius-lg); overflow: hidden; background: #0b0b0b;
  border: 1px solid rgba(255, 215, 0, 0.5); box-shadow: 0 34px 80px rgba(0, 0, 0, 0.9), 0 0 50px rgba(255, 215, 0, 0.14);
  transform: perspective(1400px) rotateY(-5deg) rotateX(1deg); transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); z-index: 2;
}
.hero__visual:hover .hero__app { transform: perspective(1400px) rotateY(-1deg) translateY(-6px); }
.hero__app-bar { display: flex; align-items: center; gap: 6px; padding: 8px 12px; background: #151515; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
.hero__app-bar i { width: 8px; height: 8px; border-radius: 50%; display: block; background: #333; }
.hero__app-bar i:nth-child(1) { background: #ff5f57; } .hero__app-bar i:nth-child(2) { background: #febc2e; } .hero__app-bar i:nth-child(3) { background: #28c840; }
.hero__app-bar span { margin-left: auto; font-family: var(--font-accent); font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-gold); }
.hero__app img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: left top; }
.hero__cover img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.hero__cover-glow { position: absolute; inset: -40px; z-index: -1; background: radial-gradient(ellipse at 60% 50%, rgba(255, 215, 0, 0.18) 0%, transparent 65%); filter: blur(10px); }
.hero__ribbon {
  position: absolute; left: clamp(-14px, -1.5vw, -8px); bottom: -38px; display: flex; align-items: center; gap: var(--space-3);
  background: rgba(8, 8, 8, 0.92); border: 1px solid rgba(255, 215, 0, 0.4); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4);
  box-shadow: var(--shadow-lg); backdrop-filter: blur(10px);
}
.hero__ribbon-mark { font-family: var(--font-heading); font-size: 1.9rem; line-height: 1; color: var(--color-gold); font-weight: var(--weight-bold); }
.hero__ribbon-mark sup { font-size: 0.55em; }
.hero__ribbon strong { display: block; font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; font-size: var(--text-sm); }
.hero__ribbon span { font-size: var(--text-xs); color: var(--color-gray-400); }
.hero__tag {
  position: absolute; top: clamp(12px, 2vw, 22px); right: clamp(12px, 2vw, 22px); background: var(--color-red); color: var(--color-white);
  font-family: var(--font-accent); font-weight: var(--weight-extrabold); text-transform: uppercase; letter-spacing: 0.1em; font-size: var(--text-xs);
  padding: 6px 10px; border-radius: var(--radius-sm); box-shadow: 0 6px 20px rgba(255, 23, 68, 0.4);
}
.hero__scroll { position: absolute; bottom: var(--space-6); left: 50%; transform: translateX(-50%); z-index: 2; color: var(--color-gray-500); animation: scrollHint 2s ease-in-out infinite; }
@keyframes scrollHint { 0%, 100% { transform: translate(-50%, 0); opacity: 0.5; } 50% { transform: translate(-50%, 8px); opacity: 1; } }

.hero [data-hero] { opacity: 0; transform: translateY(18px); animation: heroIn 0.8s ease-out forwards; }
.hero [data-hero="1"] { animation-delay: 0.15s; } .hero [data-hero="2"] { animation-delay: 0.3s; } .hero [data-hero="3"] { animation-delay: 0.45s; }
.hero [data-hero="4"] { animation-delay: 0.6s; } .hero [data-hero="5"] { animation-delay: 0.75s; } .hero [data-hero="6"] { animation-delay: 0.9s; } .hero [data-hero="7"] { animation-delay: 1.05s; }
.hero [data-hero="8"] { animation-delay: 0.5s; }
@keyframes heroIn { to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1024px) {
  .hero__grid { grid-template-columns: 1fr; }
  .hero__visual { max-width: 640px; margin-inline: auto; order: -1; margin-bottom: var(--space-8); }
  .hero__stack { padding-bottom: 30%; }
  .hero__cover { transform: none; width: 86%; }
  .hero__app { transform: none; width: 70%; right: -2%; }
  .hero__ribbon { position: static; display: inline-flex; margin-top: var(--space-5); }
  .hero__stats { grid-template-columns: repeat(2, 1fr); gap: var(--space-5); }
  .hero { min-height: 0; }
}
@media (max-width: 640px) {
  .hero__cta { flex-direction: column; }
  .hero__cta .btn { width: 100%; }
  .hero__line--gold { font-size: clamp(3.6rem, 19vw, 5.4rem); }
  .hero__ribbon { padding: var(--space-2) var(--space-3); }
  .hero__ribbon-mark { font-size: 1.5rem; }
  .hero__scroll { display: none; }
}

/* ─────────────── TRUST STRIP ─────────────── */
.trust { border-block: 1px solid var(--color-border-subtle); background: var(--color-black-900); }
.trust__inner { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-4) var(--space-10); padding-block: var(--space-4); }
.trust__item { display: flex; align-items: center; gap: var(--space-3); font-family: var(--font-accent); font-size: var(--text-sm); text-transform: uppercase; letter-spacing: var(--tracking-wide); color: var(--color-gray-300); }
.trust__item svg { color: var(--color-gold); flex-shrink: 0; }

/* ─────────────── STAT CARDS (CONCURSO) ─────────────── */
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-5); margin-bottom: var(--space-12); }
.stat-card {
  position: relative; padding: var(--space-6); background: rgba(255, 255, 255, 0.035); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: var(--radius-lg);
  backdrop-filter: blur(12px); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.06); overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.4s ease;
}
.stat-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--gradient-gold); opacity: 0.85; }
.stat-card:hover { transform: translateY(-4px); border-color: rgba(255, 215, 0, 0.25); }
.stat-card__icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--color-gold-subtle); border: 1px solid var(--color-border); color: var(--color-gold); margin-bottom: var(--space-4); }
.stat-card__value { font-family: var(--font-heading); font-size: clamp(2rem, 3.4vw, 2.9rem); color: var(--color-gold); line-height: 1; font-weight: var(--weight-bold); margin-bottom: var(--space-2); }
.stat-card__value small { font-size: 0.5em; color: var(--color-gray-300); font-family: var(--font-accent); letter-spacing: 0.04em; }
.stat-card__label { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: var(--tracking-wide); font-size: var(--text-sm); color: var(--color-white); font-weight: var(--weight-semibold); }
.stat-card__desc { font-size: var(--text-xs); color: var(--color-gray-400); margin-top: var(--space-2); line-height: 1.5; }
@media (max-width: 1024px) { .stats-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .stats-grid { grid-template-columns: 1fr; } }

/* Concurso: timeline + facts */
.concurso-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: var(--space-10); align-items: start; }
.timeline { position: relative; padding-left: var(--space-8); }
.timeline::before { content: ''; position: absolute; left: 9px; top: 6px; bottom: 6px; width: 2px; background: linear-gradient(180deg, var(--color-gold) 0%, rgba(255, 215, 0, 0.15) 100%); }
.timeline__item { position: relative; padding-bottom: var(--space-8); }
.timeline__item:last-child { padding-bottom: 0; }
.timeline__dot { position: absolute; left: calc(-1 * var(--space-8) + 2px); top: 4px; width: 16px; height: 16px; border-radius: 50%; background: var(--color-black); border: 3px solid var(--color-gold); box-shadow: 0 0 0 4px rgba(255, 215, 0, 0.12); }
.timeline__item--now .timeline__dot { background: var(--color-gold); animation: liveDot 1.8s ease-out infinite; }
.timeline__date { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: var(--tracking-wider); font-size: var(--text-xs); color: var(--color-gold); font-weight: var(--weight-bold); margin-bottom: var(--space-1); }
.timeline__title { font-family: var(--font-heading); font-size: var(--text-h3); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.1; margin-bottom: var(--space-2); }
.timeline__text { color: var(--color-text-secondary); font-size: var(--text-body); line-height: var(--leading-relaxed); }
.callout {
  margin-top: var(--space-8); padding: var(--space-5) var(--space-6); border-left: 3px solid var(--color-gold); background: rgba(255, 215, 0, 0.06); border-radius: 0 var(--radius-md) var(--radius-md) 0;
  font-size: var(--text-body-lg); line-height: var(--leading-relaxed); color: var(--color-gray-100);
}
.callout strong { color: var(--color-gold); }
.facts { display: grid; gap: var(--space-5); }
.facts__card { background: var(--gradient-card); border: 1px solid var(--color-border); border-radius: var(--radius-lg); padding: var(--space-6); }
.facts__card h3 { font-family: var(--font-heading); text-transform: uppercase; letter-spacing: 0.04em; font-size: var(--text-h3); margin-bottom: var(--space-4); display: flex; align-items: center; gap: var(--space-3); }
.facts__card h3 svg { color: var(--color-gold); }
.facts__list { display: grid; gap: var(--space-3); }
.facts__list li { display: flex; gap: var(--space-3); align-items: flex-start; color: var(--color-gray-200); font-size: var(--text-sm); line-height: 1.5; }
.facts__list li svg { color: var(--color-gold); flex-shrink: 0; margin-top: 2px; }
.facts__list li b { color: var(--color-white); font-weight: var(--weight-semibold); }
@media (max-width: 900px) { .concurso-grid { grid-template-columns: 1fr; } }

/* ─────────────── PERFIL (para quem é) ─────────────── */
.compare { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6); max-width: 1000px; margin-inline: auto; }
.compare__col { padding: var(--space-8); border-radius: var(--radius-lg); border: 1px solid rgba(255, 255, 255, 0.08); position: relative; overflow: hidden; }
.compare__col--no { background: rgba(255, 255, 255, 0.02); }
.compare__col--yes { background: rgba(255, 215, 0, 0.05); border-color: rgba(255, 215, 0, 0.22); box-shadow: 0 0 40px rgba(255, 215, 0, 0.06); }
.compare__heading { font-family: var(--font-heading); font-size: var(--text-h3); text-transform: uppercase; letter-spacing: var(--tracking-wide); margin-bottom: var(--space-6); padding-bottom: var(--space-4); border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.compare__col--no .compare__heading { color: var(--color-gray-400); }
.compare__col--yes .compare__heading { color: var(--color-gold); }
.compare__list { display: grid; gap: var(--space-4); }
.compare__item { display: flex; align-items: flex-start; gap: var(--space-3); line-height: var(--leading-relaxed); font-size: var(--text-body); }
.compare__item svg { flex-shrink: 0; margin-top: 3px; }
.compare__item--no { color: var(--color-gray-400); } .compare__item--no svg { color: rgba(255, 80, 80, 0.7); }
.compare__item--yes { color: var(--color-gray-100); } .compare__item--yes svg { color: var(--color-gold); }
@media (max-width: 720px) { .compare { grid-template-columns: 1fr; } }

/* ─────────────── FEATURES (o que você recebe) ─────────────── */
.features { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-5); }
.feature {
  display: flex; flex-direction: column; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: var(--radius-lg); overflow: hidden;
  backdrop-filter: blur(14px); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.4s ease, box-shadow 0.4s ease;
}
.feature:hover { transform: translateY(-5px); border-color: rgba(255, 215, 0, 0.25); box-shadow: 0 16px 48px rgba(0, 0, 0, 0.7), 0 0 30px rgba(255, 215, 0, 0.05); }
.feature__media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--color-black-800); }
.feature__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.feature:hover .feature__media img { transform: scale(1.05); }
.feature__tag { position: absolute; top: var(--space-3); left: var(--space-3); }
.feature__icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--radius-md); background: rgba(0, 0, 0, 0.88); border: 1px solid rgba(255, 215, 0, 0.3); color: var(--color-gold); margin: -22px 0 0 var(--space-5); position: relative; z-index: 2; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5); }
.feature__body { padding: var(--space-3) var(--space-5) var(--space-6); display: flex; flex-direction: column; gap: var(--space-2); flex: 1; }
.feature__title { font-family: var(--font-heading); font-size: var(--text-h4); text-transform: uppercase; letter-spacing: var(--tracking-wide); line-height: 1.1; }
.feature__text { font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }
@media (max-width: 1100px) { .features { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .features { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; } }
.section__cta { text-align: center; margin-top: var(--space-12); display: flex; flex-direction: column; align-items: center; gap: var(--space-3); }
.section__cta small { color: var(--color-gray-500); font-size: var(--text-xs); text-transform: uppercase; letter-spacing: var(--tracking-wide); font-family: var(--font-accent); }

/* ─────────────── SISTEMA 4P ─────────────── */
.s4p-hero { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: var(--space-10); align-items: center; margin-bottom: var(--space-16); }
.s4p-hero__copy .section__eyebrow { margin-bottom: var(--space-3); }
.s4p-hero__copy .section__title { text-align: left; }
.s4p-hero__copy p { color: var(--color-text-secondary); font-size: var(--text-body-lg); line-height: var(--leading-relaxed); margin-bottom: var(--space-5); }
.s4p-hero__copy p strong { color: var(--color-white); }
.s4p-pills { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-bottom: var(--space-6); }
.s4p-pill { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; font-size: var(--text-xs); font-weight: var(--weight-bold); padding: 6px 12px; border-radius: var(--radius-full); border: 1px solid rgba(255, 215, 0, 0.3); color: var(--color-gold); background: rgba(255, 215, 0, 0.06); }
.s4p-screen { position: relative; border-radius: var(--radius-xl); overflow: hidden; border: 1px solid rgba(255, 215, 0, 0.3); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8), 0 0 50px rgba(255, 215, 0, 0.1); background: #0b0b0b; }
.s4p-screen img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: top; }
.s4p-screen__bar { display: flex; align-items: center; gap: 6px; padding: 10px 14px; background: #161616; border-bottom: 1px solid rgba(255, 255, 255, 0.06); }
.s4p-screen__bar i { width: 10px; height: 10px; border-radius: 50%; background: #333; display: block; }
.s4p-screen__bar i:nth-child(1) { background: #ff5f57; } .s4p-screen__bar i:nth-child(2) { background: #febc2e; } .s4p-screen__bar i:nth-child(3) { background: #28c840; }
.s4p-screen__bar span { margin-left: auto; font-family: var(--font-accent); font-size: var(--text-xs); letter-spacing: 0.1em; text-transform: uppercase; color: var(--color-gray-500); }
@media (max-width: 960px) { .s4p-hero { grid-template-columns: 1fr; } .s4p-hero__copy .section__title { text-align: left; } }

.s4p-tabs { display: grid; grid-template-columns: 340px 1fr; gap: var(--space-8); align-items: start; margin-bottom: var(--space-16); }
.s4p-tablist { display: flex; flex-direction: column; gap: var(--space-2); }
.s4p-tab {
  display: flex; align-items: center; gap: var(--space-4); text-align: left; padding: var(--space-4) var(--space-5); border-radius: var(--radius-md);
  border: 1px solid rgba(255, 255, 255, 0.07); background: rgba(255, 255, 255, 0.025); color: var(--color-gray-300); transition: all var(--transition-base);
}
.s4p-tab:hover { border-color: rgba(255, 215, 0, 0.25); color: var(--color-white); }
.s4p-tab[aria-selected="true"] { background: rgba(255, 215, 0, 0.08); border-color: rgba(255, 215, 0, 0.45); color: var(--color-white); box-shadow: inset 3px 0 0 var(--color-gold); }
.s4p-tab__num { font-family: var(--font-heading); font-size: 1.6rem; color: var(--color-gold); line-height: 1; min-width: 32px; }
.s4p-tab strong { display: block; font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; font-size: var(--text-body); }
.s4p-tab span { display: block; font-size: var(--text-xs); color: var(--color-gray-400); margin-top: 2px; }
.s4p-panel { display: none; }
.s4p-panel.is-active { display: block; animation: panelIn 0.5s ease; }
@keyframes panelIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.s4p-panel__copy { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-6); margin-bottom: var(--space-4); }
.s4p-panel__copy h3 { font-family: var(--font-heading); font-size: var(--text-h3); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.1; }
.s4p-panel__copy p { color: var(--color-text-secondary); font-size: var(--text-sm); max-width: 420px; }
.s4p-panel .s4p-screen img { aspect-ratio: auto; max-height: 520px; object-fit: contain; background: #0b0b0b; }
@media (max-width: 960px) {
  .s4p-tabs { grid-template-columns: 1fr; }
  .s4p-tablist { flex-direction: row; overflow-x: auto; gap: var(--space-2); padding-bottom: var(--space-2); scrollbar-width: none; }
  .s4p-tablist::-webkit-scrollbar { display: none; }
  .s4p-tab { flex: 0 0 auto; padding: var(--space-3) var(--space-4); }
  .s4p-tab span { display: none; }
  .s4p-panel__copy { flex-direction: column; gap: var(--space-2); }
}

.deliverables { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4); }
.deliverable { position: relative; padding: var(--space-5); border-radius: var(--radius-lg); background: var(--gradient-card); border: 1px solid var(--color-border); transition: border-color var(--transition-base), transform var(--transition-base); }
.deliverable:hover { border-color: var(--color-border-strong); transform: translateY(-3px); }
.deliverable__num { position: absolute; top: var(--space-4); right: var(--space-5); font-family: var(--font-heading); font-size: 1.6rem; color: rgba(255, 215, 0, 0.25); line-height: 1; }
.deliverable__icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--color-gold-subtle); border: 1px solid var(--color-border); color: var(--color-gold); margin-bottom: var(--space-4); }
.deliverable h4 { font-family: var(--font-heading); font-size: var(--text-h4); text-transform: uppercase; letter-spacing: 0.04em; line-height: 1.1; margin-bottom: var(--space-2); }
.deliverable p { font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-4); }
.deliverable__value { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; font-size: var(--text-xs); color: var(--color-gray-500); }
.deliverable__value b { color: var(--color-gray-200); font-weight: var(--weight-bold); }
.s4p-total {
  margin-top: var(--space-8); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4);
  padding: var(--space-5) var(--space-8); border-radius: var(--radius-lg); border: 1px solid rgba(255, 215, 0, 0.35); background: rgba(255, 215, 0, 0.06);
}
.s4p-total__label { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.1em; color: var(--color-gray-300); font-size: var(--text-sm); }
.s4p-total__label b { display: block; font-family: var(--font-heading); font-size: 2rem; color: var(--color-white); letter-spacing: 0.02em; line-height: 1; margin-top: 4px; }
.s4p-total__label b s { color: var(--color-gray-500); font-weight: var(--weight-regular); }
.s4p-total__included { font-family: var(--font-heading); font-size: clamp(1.4rem, 2.4vw, 2rem); color: var(--color-gold); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1; }
@media (max-width: 1100px) { .deliverables { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .deliverables { grid-template-columns: 1fr; } }

/* ─────────────── PDF SHOWCASE ─────────────── */
.pdf-card { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-10); align-items: center; }
.pdf-stage { position: relative; border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--color-border-strong); background: #0d0d0d; box-shadow: var(--shadow-lg), var(--shadow-gold); max-width: 520px; margin-inline: auto; }
.pdf-track { display: flex; transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
.pdf-slide { flex: 0 0 100%; }
.pdf-slide img { width: 100%; aspect-ratio: 1000 / 1414; object-fit: cover; object-position: top; }
.pdf-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; background: rgba(0, 0, 0, 0.75); border: 1px solid rgba(255, 215, 0, 0.4); color: var(--color-gold); display: grid; place-items: center; transition: all var(--transition-fast); }
.pdf-nav:hover { background: var(--color-gold); color: var(--color-black); }
.pdf-nav.prev { left: var(--space-3); } .pdf-nav.next { right: var(--space-3); }
.pdf-dots { position: absolute; bottom: var(--space-3); left: 50%; transform: translateX(-50%); display: flex; gap: 8px; padding: 6px 10px; border-radius: var(--radius-full); background: rgba(0, 0, 0, 0.6); }
.pdf-dots button { width: 9px; height: 9px; border-radius: 50%; background: rgba(255, 255, 255, 0.35); transition: all var(--transition-fast); }
.pdf-dots button.is-active { background: var(--color-gold); transform: scale(1.25); }
.pdf-side .section__eyebrow { text-align: left; }
.pdf-side h3 { font-family: var(--font-heading); font-size: var(--text-h2); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.05; margin-bottom: var(--space-4); }
.pdf-side p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-5); }
.check-list { display: grid; gap: var(--space-3); }
.check-list li { display: flex; gap: var(--space-3); align-items: flex-start; color: var(--color-gray-100); line-height: 1.5; }
.check-list li svg { color: var(--color-gold); flex-shrink: 0; margin-top: 3px; }
@media (max-width: 900px) { .pdf-card { grid-template-columns: 1fr; } }

/* ─────────────── DISCIPLINAS ─────────────── */
.disc-grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: var(--space-10); align-items: start; }
.disc-list { display: grid; gap: var(--space-2); }
.disc { display: grid; grid-template-columns: 1fr auto; gap: var(--space-2) var(--space-4); align-items: center; padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.06); transition: border-color var(--transition-fast), background var(--transition-fast); }
.disc:hover { border-color: rgba(255, 215, 0, 0.25); background: rgba(255, 215, 0, 0.04); }
.disc--top { border-color: rgba(255, 215, 0, 0.35); background: rgba(255, 215, 0, 0.06); }
.disc__name { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.06em; font-weight: var(--weight-semibold); font-size: var(--text-sm); color: var(--color-gray-100); }
.disc__qty { font-family: var(--font-heading); font-size: 1.4rem; color: var(--color-gold); line-height: 1; }
.disc__qty small { font-family: var(--font-accent); font-size: 0.6em; color: var(--color-gray-400); letter-spacing: 0.05em; }
.disc__bar { grid-column: 1 / -1; height: 5px; border-radius: 3px; background: rgba(255, 255, 255, 0.07); overflow: hidden; }
.disc__bar i { display: block; height: 100%; width: 0; background: var(--gradient-gold); border-radius: 3px; transition: width 1.2s cubic-bezier(0.16, 1, 0.3, 1); }
.animate-in .disc__bar i { width: var(--w); }
.disc-extra { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-5); }
.disc-side .section__title { text-align: left; }
.disc-side p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-5); }
.disc-total { display: flex; align-items: baseline; gap: var(--space-3); margin-block: var(--space-6); }
.disc-total strong { font-family: var(--font-heading); font-size: clamp(3rem, 6vw, 4.5rem); color: var(--color-gold); line-height: 1; }
.disc-total span { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.1em; color: var(--color-gray-400); font-size: var(--text-sm); line-height: 1.3; }
@media (max-width: 900px) { .disc-grid { grid-template-columns: 1fr; } }

/* ─────────────── MENTORES / PROFESSORES ─────────────── */
.mentors { display: grid; grid-template-columns: repeat(2, minmax(0, 400px)); justify-content: center; gap: var(--space-6); margin-bottom: var(--space-12); }
.mentor { position: relative; border-radius: var(--radius-lg); overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); background: var(--color-black-800); transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.4s ease; }
.mentor:hover { transform: translateY(-5px); border-color: rgba(255, 215, 0, 0.3); }
.mentor__photo { aspect-ratio: 4 / 5; overflow: hidden; background: #0f0f0f; position: relative; }
.mentor__photo::after { content: ''; position: absolute; inset: auto 0 0; height: 34%; background: linear-gradient(180deg, transparent, rgba(10, 10, 10, 0.85)); pointer-events: none; }
.mentor__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 15%; transition: transform 0.6s ease; }
.mentor:hover .mentor__photo img { transform: scale(1.04); }
.mentor__body { padding: var(--space-5) var(--space-5) var(--space-6); margin-top: -8px; position: relative; }
.mentor__role { font-family: var(--font-accent); text-transform: uppercase; letter-spacing: var(--tracking-wider); font-size: var(--text-xs); color: var(--color-gold); font-weight: var(--weight-bold); margin-bottom: var(--space-1); }
.mentor__name { font-family: var(--font-heading); font-size: var(--text-h3); text-transform: uppercase; letter-spacing: 0.04em; line-height: 1; margin-bottom: var(--space-3); }
.mentor__list { display: grid; gap: var(--space-2); }
.mentor__list li { display: flex; gap: var(--space-2); align-items: flex-start; font-size: var(--text-sm); color: var(--color-gray-300); line-height: 1.45; }
.mentor__list li svg { color: var(--color-gold); flex-shrink: 0; margin-top: 3px; }
.team { max-width: 1000px; margin-inline: auto; text-align: center; }
.team img { border-radius: var(--radius-lg); border: 1px solid var(--color-border); box-shadow: var(--shadow-lg); }
.team figcaption { margin-top: var(--space-4); font-size: var(--text-sm); color: var(--color-gray-400); line-height: var(--leading-relaxed); }
@media (max-width: 900px) { .mentors { grid-template-columns: 1fr; max-width: 420px; margin-inline: auto; } }

/* ─────────────── INVESTIMENTO ─────────────── */
.invest { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-8); align-items: start; }
.value-stack { background: var(--gradient-card); border: 1px solid var(--color-border); border-radius: var(--radius-xl); padding: var(--space-8); }
.value-stack h3 { font-family: var(--font-heading); text-transform: uppercase; letter-spacing: 0.04em; font-size: var(--text-h3); margin-bottom: var(--space-5); }
.value-stack ul { display: grid; }
.value-stack li { display: flex; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) 0; border-bottom: 1px dashed rgba(255, 255, 255, 0.1); font-size: var(--text-body); color: var(--color-gray-200); }
.value-stack li span:first-child { display: flex; align-items: center; gap: var(--space-3); }
.value-stack li span:first-child svg { color: var(--color-gold); flex-shrink: 0; }
.value-stack li span:last-child { font-family: var(--font-accent); color: var(--color-gray-400); white-space: nowrap; letter-spacing: 0.04em; }
.value-stack li.is-hot span:first-child { color: var(--color-gold); font-weight: var(--weight-semibold); }
.value-stack__total { display: flex; justify-content: space-between; align-items: baseline; padding-top: var(--space-5); font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-gray-300); }
.value-stack__total b { font-family: var(--font-heading); font-size: 2.2rem; color: var(--color-white); letter-spacing: 0.02em; text-decoration: line-through; text-decoration-color: var(--color-red); text-decoration-thickness: 3px; }
.value-stack__math { margin-top: var(--space-6); padding: var(--space-4) var(--space-5); border-radius: var(--radius-md); background: rgba(255, 215, 0, 0.06); border: 1px solid rgba(255, 215, 0, 0.2); font-size: var(--text-sm); color: var(--color-gray-200); line-height: var(--leading-relaxed); }
.value-stack__math strong { color: var(--color-gold); }

.price-box {
  position: relative; text-align: center; padding: var(--space-10) var(--space-8); border-radius: var(--radius-xl); border: 2px solid rgba(255, 215, 0, 0.45);
  background: rgba(255, 255, 255, 0.04); backdrop-filter: blur(14px); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7), 0 0 60px rgba(255, 215, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.08); overflow: hidden;
}
.price-box::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--gradient-gold); }
.price-box__flag { position: absolute; top: 18px; right: -38px; transform: rotate(45deg); background: var(--color-red); color: var(--color-white); font-family: var(--font-accent); font-weight: var(--weight-extrabold); text-transform: uppercase; letter-spacing: 0.1em; font-size: var(--text-xs); padding: 6px 44px; box-shadow: var(--shadow-md); }
.price-box__label { font-family: var(--font-accent); font-size: var(--text-sm); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: var(--color-gray-400); margin-bottom: var(--space-2); }
.price-box__name { font-family: var(--font-heading); font-size: var(--text-h2); text-transform: uppercase; letter-spacing: 0.04em; line-height: 1; margin-bottom: var(--space-5); }
.price-box__name .gold { color: var(--color-gold); }
.price-box__old { font-size: var(--text-body-lg); color: var(--color-gray-500); }
.price-box__old s { text-decoration-color: var(--color-red); }
.price-box__current { font-family: var(--font-heading); font-size: clamp(3.4rem, 6vw, 5rem); font-weight: var(--weight-bold); color: var(--color-gold); line-height: 1; margin: var(--space-2) 0; display: flex; align-items: baseline; justify-content: center; gap: 6px; }
.price-box__current small { font-size: 0.35em; color: var(--color-gray-200); font-family: var(--font-accent); letter-spacing: 0.04em; }
.price-box__current sup { font-size: 0.45em; vertical-align: super; line-height: 0; }
.price-box__cash { font-size: var(--text-body-lg); color: var(--color-white); font-weight: var(--weight-semibold); }
.price-box__cash strong { color: var(--color-gold); }
.price-box__fine { font-size: var(--text-xs); color: var(--color-gray-500); margin-top: var(--space-1); }
.price-box__features { display: grid; gap: var(--space-2); margin: var(--space-6) 0; text-align: left; }
.price-box__features li { display: flex; gap: var(--space-3); align-items: flex-start; font-size: var(--text-sm); color: var(--color-gray-200); line-height: 1.45; }
.price-box__features li svg { color: var(--color-gold); flex-shrink: 0; margin-top: 2px; }
.price-box__features li.is-hot { color: var(--color-gold); font-weight: var(--weight-semibold); }
.price-box .btn--lg { font-size: clamp(1rem, 1.6vw, 1.15rem); padding-block: var(--space-5); }
.price-box__secure { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: var(--space-2) var(--space-4); margin-top: var(--space-4); font-size: var(--text-xs); color: var(--color-gray-400); font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.06em; }
.price-box__secure span { display: inline-flex; align-items: center; gap: 6px; }
.price-box__secure svg { color: var(--color-gold); }
.price-box__wa { margin-top: var(--space-4); font-size: var(--text-sm); color: var(--color-gray-400); }
.price-box__wa a { color: var(--color-green); text-decoration: underline; text-underline-offset: 3px; }

.guarantee { display: flex; align-items: center; gap: var(--space-6); margin-top: var(--space-6); padding: var(--space-6); border-radius: var(--radius-lg); background: var(--gradient-card); border: 1px solid var(--color-border); }
.guarantee img { width: 110px; flex-shrink: 0; }
.guarantee h3 { font-family: var(--font-heading); font-size: var(--text-h3); text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-gold); margin-bottom: var(--space-2); line-height: 1.05; }
.guarantee p { color: var(--color-text-secondary); font-size: var(--text-sm); line-height: var(--leading-relaxed); }
.combo { margin-top: var(--space-6); padding: var(--space-5) var(--space-6); border-radius: var(--radius-lg); border: 1px dashed rgba(255, 215, 0, 0.35); display: flex; gap: var(--space-4); align-items: center; justify-content: space-between; flex-wrap: wrap; }
.combo p { font-size: var(--text-sm); color: var(--color-gray-200); line-height: 1.5; max-width: 560px; }
.combo p strong { color: var(--color-gold); }
@media (max-width: 960px) { .invest { grid-template-columns: 1fr; } .invest > .invest__offer { order: -1; } }
@media (max-width: 520px) { .guarantee { flex-direction: column; text-align: center; } .price-box { padding: var(--space-8) var(--space-5); } }

/* ─────────────── FAQ ─────────────── */
.faq { max-width: 800px; margin-inline: auto; }
.faq__item { border: 1px solid rgba(255, 255, 255, 0.06); background: rgba(255, 255, 255, 0.02); border-radius: var(--radius-md); margin-bottom: var(--space-2); padding-inline: var(--space-5); transition: border-color var(--transition-fast); }
.faq__item--open { border-color: rgba(255, 215, 0, 0.3); background: rgba(255, 215, 0, 0.03); }
.faq__question { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); padding: var(--space-5) 0; font-size: var(--text-body-lg); font-weight: var(--weight-medium); color: var(--color-white); text-align: left; transition: color var(--transition-fast); }
.faq__question:hover { color: var(--color-gold); }
.faq__icon { width: 24px; height: 24px; flex-shrink: 0; color: var(--color-gray-500); transition: transform var(--transition-base), color var(--transition-base); }
.faq__item--open .faq__icon { transform: rotate(45deg); color: var(--color-gold); }
.faq__answer { max-height: 0; overflow: hidden; transition: max-height var(--transition-slow); }
.faq__item--open .faq__answer { max-height: 600px; }
.faq__answer p { padding-bottom: var(--space-5); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }
.faq__answer p + p { margin-top: calc(-1 * var(--space-3)); }
.faq__more { text-align: center; margin-top: var(--space-8); color: var(--color-text-secondary); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: var(--space-4); }

/* ─────────────── CTA FINAL ─────────────── */
.final { position: relative; overflow: hidden; padding-block: var(--space-24); text-align: center; background: radial-gradient(ellipse 900px 500px at 50% 100%, rgba(255, 215, 0, 0.1) 0%, transparent 70%), var(--color-black); border-top: 1px solid var(--color-border-subtle); }
.final .section__title { font-size: clamp(2.4rem, 5.5vw, 4.2rem); }
.final__actions { display: flex; gap: var(--space-4); justify-content: center; flex-wrap: wrap; margin-top: var(--space-8); }
.final__meta { margin-top: var(--space-6); font-family: var(--font-accent); text-transform: uppercase; letter-spacing: var(--tracking-wide); font-size: var(--text-sm); color: var(--color-gray-500); display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2) var(--space-4); }
.final__meta svg { display: inline; vertical-align: -3px; margin-right: 4px; color: var(--color-gold); }

/* ─────────────── FOOTER ─────────────── */
.footer { background: linear-gradient(180deg, #0c0c0c 0%, #050505 100%); border-top: 1px solid rgba(255, 255, 255, 0.06); padding-block: var(--space-16) calc(var(--space-8) + 64px); }
.footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: var(--space-10); }
.footer__brand { display: flex; flex-direction: column; gap: var(--space-4); }
.footer__logo { height: 40px; width: auto; align-self: flex-start; object-fit: contain; }
.footer__tagline { font-size: var(--text-sm); color: var(--color-gray-500); max-width: 300px; line-height: var(--leading-relaxed); }
.footer__social { display: flex; gap: var(--space-3); }
.footer__social-link { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--radius-md); border: 1px solid var(--color-border); color: var(--color-gray-400); transition: all var(--transition-fast); }
.footer__social-link:hover { color: var(--color-gold); border-color: var(--color-border-strong); background: var(--color-gold-subtle); }
.footer__col { display: flex; flex-direction: column; gap: var(--space-3); }
.footer__heading { font-family: var(--font-accent); font-size: var(--text-sm); font-weight: var(--weight-bold); text-transform: uppercase; letter-spacing: var(--tracking-wider); color: var(--color-gold); margin-bottom: var(--space-1); }
.footer__link { font-size: var(--text-sm); color: var(--color-gray-500); transition: color var(--transition-fast); }
.footer__link:hover { color: var(--color-white); }
.footer__bottom { margin-top: var(--space-12); padding-top: var(--space-6); border-top: 1px solid var(--color-border-subtle); font-size: var(--text-xs); color: var(--color-gray-600); text-align: center; line-height: var(--leading-relaxed); }
@media (max-width: 768px) { .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--space-8); } .footer__brand { grid-column: 1 / -1; } }
@media (max-width: 480px) { .footer__grid { grid-template-columns: 1fr; } }

/* ─────────────── FLOATING WHATSAPP + MOBILE BAR ─────────────── */
.whatsapp-float { position: fixed; bottom: var(--space-6); right: var(--space-6); width: 58px; height: 58px; background: var(--color-green); border-radius: var(--radius-full); display: grid; place-items: center; box-shadow: 0 4px 20px rgba(37, 211, 102, 0.45); z-index: var(--z-sticky); transition: all var(--transition-base); color: var(--color-white); }
.whatsapp-float:hover { transform: scale(1.08); box-shadow: 0 6px 30px rgba(37, 211, 102, 0.55); }
.whatsapp-float svg { width: 30px; height: 30px; }
.whatsapp-float__tip { position: absolute; right: 68px; top: 50%; transform: translateY(-50%); background: var(--color-white); color: var(--color-black); font-family: var(--font-accent); font-weight: var(--weight-bold); text-transform: uppercase; letter-spacing: 0.06em; font-size: var(--text-xs); padding: 8px 12px; border-radius: var(--radius-md); white-space: nowrap; box-shadow: var(--shadow-md); opacity: 0; pointer-events: none; transition: opacity var(--transition-base); }
.whatsapp-float:hover .whatsapp-float__tip { opacity: 1; }
.whatsapp-float__tip::after { content: ''; position: absolute; right: -6px; top: 50%; transform: translateY(-50%); border: 6px solid transparent; border-left-color: var(--color-white); border-right: 0; }

.mobile-bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-sticky); display: none; align-items: center; justify-content: space-between; gap: var(--space-3);
  padding: var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom)); background: rgba(6, 6, 6, 0.97); border-top: 1px solid rgba(255, 215, 0, 0.35);
  box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.7); transform: translateY(110%); transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.mobile-bar.is-visible { transform: translateY(0); }
.mobile-bar__price { display: flex; flex-direction: column; line-height: 1.1; }
.mobile-bar__price span { font-family: var(--font-accent); font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--color-gray-400); }
.mobile-bar__price strong { font-family: var(--font-heading); font-size: 1.5rem; color: var(--color-gold); }
.mobile-bar__price strong small { font-size: 0.55em; color: var(--color-gray-300); font-family: var(--font-accent); }
.mobile-bar .btn { padding: var(--space-3) var(--space-5); font-size: var(--text-sm); }
@media (max-width: 900px) {
  .mobile-bar { display: flex; }
  .whatsapp-float { bottom: 88px; right: var(--space-4); width: 52px; height: 52px; }
  .whatsapp-float__tip { display: none; }
}

/* ─────────────── EXIT MODAL ─────────────── */
.modal { position: fixed; inset: 0; z-index: var(--z-modal); display: none; align-items: center; justify-content: center; padding: var(--space-4); background: rgba(0, 0, 0, 0.82); backdrop-filter: blur(6px); }
.modal.is-open { display: flex; }
.modal__box { position: relative; width: 100%; max-width: 560px; padding: var(--space-10) var(--space-8); border-radius: var(--radius-xl); background: var(--gradient-card); border: 1px solid rgba(255, 215, 0, 0.4); box-shadow: var(--shadow-lg), var(--shadow-gold-strong); text-align: center; animation: panelIn 0.4s ease; }
.modal__close { position: absolute; top: var(--space-3); right: var(--space-3); width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; color: var(--color-gray-400); border: 1px solid rgba(255, 255, 255, 0.1); }
.modal__close:hover { color: var(--color-white); border-color: var(--color-white); }
.modal__box .section__eyebrow { margin-bottom: var(--space-2); }
.modal__box h3 { font-family: var(--font-heading); font-size: var(--text-h2); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.05; margin-bottom: var(--space-3); }
.modal__box p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-6); }
.modal__actions { display: grid; gap: var(--space-3); }

/* ─────────────── SCROLL REVEAL ─────────────── */
[data-animate] { opacity: 0; will-change: opacity, transform; transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1); transition-delay: calc(var(--stagger, 0) * 0.12s); }
[data-animate="fade-up"] { transform: translateY(36px); }
[data-animate="fade-left"] { transform: translateX(-40px); }
[data-animate="fade-right"] { transform: translateX(40px); }
[data-animate="fade-scale"] { transform: scale(0.92); }
[data-animate].animate-in { opacity: 1; transform: none; }
.section__header .section__eyebrow { clip-path: inset(0 100% 0 0); transition: clip-path 1.2s cubic-bezier(0.25, 1, 0.5, 1) 0.2s; }
.section__header.animate-in .section__eyebrow { clip-path: inset(0 0 0 0); }
.section__header .section__title, .section__header .section__subtitle { opacity: 0; transform: translateY(14px); transition: opacity 0.8s ease 0.35s, transform 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.35s; }
.section__header .section__subtitle { transition-delay: 0.5s; }
.section__header.animate-in .section__title, .section__header.animate-in .section__subtitle { opacity: 1; transform: none; }
.section__header::after { width: 0; transition: width 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.4s; }
.section__header.animate-in::after { width: 60px; }

@media (prefers-reduced-motion: reduce) {
  [data-animate], .section__header .section__title, .section__header .section__subtitle, .hero [data-hero] { opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important; }
  .section__header .section__eyebrow { clip-path: none !important; }
  .section__header::after { width: 60px !important; }
  .hud-corner--tl, .hud-corner--tr, .hud-corner--bl, .hud-corner--br { opacity: 0.55; }
  .animate-in .disc__bar i, .disc__bar i { width: var(--w) !important; transition: none; }
  .hero__line--gold, .btn--pulse, .badge--live::before, .timeline__item--now .timeline__dot, .hero__scroll { animation: none !important; }
}
.no-js [data-animate], .no-js .section__header .section__title, .no-js .section__header .section__subtitle { opacity: 1; transform: none; }
.no-js .section__header .section__eyebrow { clip-path: none; }
.no-js .hud-corner--tl, .no-js .hud-corner--tr, .no-js .hud-corner--bl, .no-js .hud-corner--br { opacity: 0.55; }
.no-js .disc__bar i { width: var(--w); }
.no-js .s4p-panel { display: block; }
.no-js .faq__answer { max-height: none; }


/* ─────────────── ÍCONES ANIMADOS (entregas do 4P) ─────────────── */
.deliverable__icon.dicon { width: 60px; height: 60px; padding: 6px; color: var(--color-gold); }
.dicon svg { width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round; }
.dicon .ic-body { fill: #141414; }
.dicon .ic-base, .dicon .ic-marks { stroke: #9e955e; }
.dicon .ic-lines { stroke: #cfc9a3; stroke-width: 2; }
.dicon .ic-days > rect, .dicon .ic-bars > rect, .dicon .ic-boxes > rect { fill: rgba(232, 202, 50, 0.22); stroke: #e8cf54; stroke-width: 1.6; }
.dicon .ic-check, .dicon .ic-ticks path { stroke: #f7dc49; stroke-width: 4; stroke-dasharray: 100; stroke-dashoffset: 0; }
.dicon .ic-trace { stroke: #f4d629; stroke-width: 4; stroke-dasharray: 100; stroke-dashoffset: 0; }
.dicon .ic-halo > circle { fill: #1c1c14; stroke: #c9b23e; stroke-width: 2; }
.dicon .ic-pen { fill: rgba(245, 210, 27, 0.25); }
.dicon .ic-dot { fill: var(--color-gold); }
.dicon .ic-core { fill: rgba(245, 210, 27, 0.25); }
.dicon .ic-pins { stroke: #8f875a; stroke-width: 2.2; }
.dicon .ic-pulse path { stroke: #f7dc49; stroke-width: 3; stroke-dasharray: 100; stroke-dashoffset: 0; }
.dicon .ic-badge circle { fill: #1c1c14; stroke: #c9b23e; } .dicon .ic-badge path { stroke: #f7dc49; stroke-width: 3.5; }
.dicon .ic-card-back { stroke: #777954; }
.dicon .ic-orbit { stroke: #e2c642; stroke-width: 2.4; }
.dicon .ic-star path { fill: rgba(245, 210, 27, 0.35); stroke: #f5d21b; stroke-width: 2; }
.dicon .ic-spark { stroke: #f8e17a; stroke-width: 2.6; }

@media (prefers-reduced-motion: no-preference) {
  .dicon [class^="ic-"], .dicon [class*=" ic-"] { animation-play-state: paused; }
  .deliverables.is-live .dicon [class^="ic-"], .deliverables.is-live .dicon [class*=" ic-"] { animation-play-state: running; }
  .dicon--planning .ic-days > rect { animation: dk-day 4s ease-in-out infinite; }
  .dicon--planning .ic-days > rect:nth-child(2) { animation-delay: -3.4s; } .dicon--planning .ic-days > rect:nth-child(3) { animation-delay: -2.8s; } .dicon--planning .ic-days > rect:nth-child(4) { animation-delay: -2.2s; }
  .dicon--planning .ic-check { animation: dk-draw 4s ease-in-out infinite; }
  .dicon--focus .ic-hand { animation: dk-spin 6s linear infinite; transform-origin: 49px 54px; }
  .dicon--focus .ic-trace { animation: dk-trace 6s ease-in-out infinite; }
  .dicon--ai .ic-pulse path { animation: dk-pulse 3.2s ease-in-out infinite; }
  .dicon--ai .ic-core { animation: dk-glow 3.2s ease-in-out infinite; }
  .dicon--ai .ic-badge { animation: dk-pop 3.2s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
  .dicon--questions .ic-pen { animation: dk-pencil 3.8s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
  .dicon--questions .ic-check { animation: dk-draw 3.8s ease-in-out infinite; }
  .dicon--questions .ic-halo > circle { animation: dk-halo 3.8s ease-in-out infinite; }
  .dicon--exams .ic-ticks path { animation: dk-draw 4.5s ease-in-out infinite; }
  .dicon--exams .ic-ticks path:nth-child(2) { animation-delay: 0.6s; } .dicon--exams .ic-ticks path:nth-child(3) { animation-delay: 1.2s; }
  .dicon--exams .ic-boxes > rect { animation: dk-day 4.5s ease-in-out infinite; }
  .dicon--exams .ic-boxes > rect:nth-child(2) { animation-delay: 0.6s; } .dicon--exams .ic-boxes > rect:nth-child(3) { animation-delay: 1.2s; }
  .dicon--reviews .ic-card-front { animation: dk-front 5.4s ease-in-out infinite; transform-origin: 50% 50%; }
  .dicon--reviews .ic-card-back { animation: dk-back 5.4s ease-in-out infinite; transform-origin: 50% 50%; }
  .dicon--reviews .ic-orbit { animation: dk-spin 10.8s linear infinite; transform-origin: 48px 48px; }
  .dicon--data .ic-bars > rect { animation: dk-growth 5.6s ease-in-out infinite; transform-origin: center 73px; }
  .dicon--data .ic-bars > rect:nth-child(2) { animation-delay: -0.3s; } .dicon--data .ic-bars > rect:nth-child(3) { animation-delay: -0.6s; }
  .dicon--data .ic-trace { animation: dk-trace 5.6s ease-in-out infinite; }
  .dicon--trophy .ic-star { animation: dk-pop 3.6s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
  .dicon--trophy .ic-spark { animation: dk-sparkle 3.6s ease-in-out infinite; }
  .dicon--trophy .ic-body { animation: dk-glow 3.6s ease-in-out infinite; }
}
@keyframes dk-day { 0%, 100% { fill: rgba(232, 202, 50, 0.12); } 25%, 45% { fill: #f5d21b; stroke: #fff2a4; } }
@keyframes dk-draw { 0%, 15% { stroke-dashoffset: 100; } 50%, 90%, 100% { stroke-dashoffset: 0; } }
@keyframes dk-trace { 0%, 100% { stroke-dashoffset: 100; opacity: 0.35; } 85% { stroke-dashoffset: 0; opacity: 1; } }
@keyframes dk-spin { to { transform: rotate(360deg); } }
@keyframes dk-pulse { 0%, 10% { stroke-dashoffset: 100; opacity: 0.3; } 45%, 80% { stroke-dashoffset: 0; opacity: 1; } 100% { stroke-dashoffset: 0; opacity: 0.3; } }
@keyframes dk-glow { 0%, 100% { fill: rgba(245, 210, 27, 0.12); } 50% { fill: rgba(245, 210, 27, 0.45); } }
@keyframes dk-pop { 0%, 30%, 100% { transform: scale(0.88); opacity: 0.55; } 50%, 80% { transform: scale(1.12); opacity: 1; } }
@keyframes dk-pencil { 0%, 100% { transform: translate(0, 0) rotate(0); } 20% { transform: translate(-5px, 6px) rotate(-9deg); } 35% { transform: translate(1px, 3px) rotate(5deg); } 60%, 80% { transform: translate(-3px, 5px) rotate(-4deg); } }
@keyframes dk-halo { 0%, 25%, 100% { fill: #1c1c14; stroke: #c9b23e; } 55%, 75% { fill: rgba(167, 158, 40, 0.3); stroke: #f6e685; } }
@keyframes dk-front { 0%, 100% { transform: translate(0, 0) rotate(0); } 35%, 50% { transform: translate(6px, -5px) rotate(7deg); } 70% { transform: translate(-3px, 3px) rotate(-3deg); } }
@keyframes dk-back { 0%, 100% { transform: translate(0, 0); } 35%, 50% { transform: translate(-4px, 5px) rotate(-5deg); } }
@keyframes dk-growth { 0%, 100% { transform: scaleY(0.5); fill: rgba(232, 202, 50, 0.12); } 55%, 75% { transform: scaleY(1); fill: rgba(232, 202, 50, 0.6); } }
@keyframes dk-sparkle { 0%, 100% { opacity: 0.2; transform: scale(0.8); } 40%, 60% { opacity: 1; transform: scale(1.1); } }


/* ─────────────── SHOWCASE DO CURSO (abas + carrossel) ─────────────── */
.showcase { grid-template-columns: 320px 1fr; margin-bottom: 0; }
.showcase__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: var(--space-8); align-items: center; }
.showcase__media { max-width: none; margin: 0; }
.showcase__media .pdf-slide img { aspect-ratio: 16 / 10; object-fit: cover; object-position: center top; background: #0b0b0b; }
.showcase__media--portrait .pdf-slide img { aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; }
.showcase__media--portrait { max-width: 460px; }
.showcase__copy .badge { margin-bottom: var(--space-4); }
.showcase__copy h3 { font-family: var(--font-heading); font-size: var(--text-h2); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.05; margin-bottom: var(--space-4); }
.showcase__copy p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-5); }
.showcase__copy .check-list { margin-bottom: var(--space-6); }
.text-link { display: inline-flex; align-items: center; gap: var(--space-2); font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.08em; font-weight: var(--weight-bold); color: var(--color-gold); border-bottom: 1px solid rgba(255, 215, 0, 0.4); padding-bottom: 2px; transition: gap var(--transition-fast), border-color var(--transition-fast); }
.text-link:hover { gap: var(--space-3); border-color: var(--color-gold); }
@media (max-width: 960px) {
  .showcase { grid-template-columns: 1fr; }
  .showcase__grid { grid-template-columns: 1fr; }
  .showcase__media--portrait { max-width: 380px; margin-inline: auto; }
}

/* ─────────────── INVESTIMENTO v2 ─────────────── */
.invest__left { display: grid; gap: var(--space-6); align-content: start; }
.after-buy { background: var(--gradient-card); border: 1px solid var(--color-border); border-radius: var(--radius-xl); padding: var(--space-6) var(--space-8); }
.after-buy h3 { font-family: var(--font-heading); text-transform: uppercase; letter-spacing: 0.04em; font-size: var(--text-h3); display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-5); }
.after-buy h3 svg { color: var(--color-gold); }
.after-buy ol { display: grid; gap: var(--space-4); }
.after-buy li { display: flex; gap: var(--space-4); align-items: flex-start; }
.after-buy li b { font-family: var(--font-heading); font-size: 1.6rem; line-height: 1; color: var(--color-gold); min-width: 34px; }
.after-buy li strong { display: block; font-family: var(--font-accent); text-transform: uppercase; letter-spacing: 0.06em; font-size: var(--text-body); margin-bottom: 2px; }
.after-buy li span { font-size: var(--text-sm); color: var(--color-text-secondary); line-height: 1.5; }
.guarantee--center { max-width: 860px; margin: var(--space-10) auto 0; }
.combo-banner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: var(--space-10); align-items: center; margin-top: var(--space-10); padding: var(--space-8); border-radius: var(--radius-xl); border: 1px solid rgba(255, 215, 0, 0.4); background: radial-gradient(ellipse 70% 120% at 20% 50%, rgba(255, 215, 0, 0.1) 0%, transparent 60%), var(--gradient-card); box-shadow: var(--shadow-lg), var(--shadow-gold); position: relative; overflow: hidden; }
.combo-banner__covers { position: relative; aspect-ratio: 16 / 10; }
.combo-banner__covers img { position: absolute; width: 74%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--radius-lg); border: 1px solid rgba(255, 215, 0, 0.45); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.85); }
.combo-banner__covers img:nth-of-type(1) { left: 0; top: 4%; transform: rotate(-5deg); z-index: 1; }
.combo-banner__covers img:nth-of-type(2) { right: 0; bottom: 4%; transform: rotate(4deg); z-index: 2; }
.combo-banner__plus { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 3; width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--gradient-gold); color: var(--color-black); font-family: var(--font-heading); font-size: 2.2rem; line-height: 1; box-shadow: var(--shadow-gold-strong); }
.combo-banner__copy .section__eyebrow { margin-bottom: var(--space-2); }
.combo-banner__copy h3 { font-family: var(--font-heading); font-size: var(--text-h2); text-transform: uppercase; letter-spacing: 0.03em; line-height: 1.05; margin-bottom: var(--space-4); }
.combo-banner__copy p { color: var(--color-text-secondary); line-height: var(--leading-relaxed); margin-bottom: var(--space-6); }
.combo-banner__actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-2); }
.combo-banner__actions small { font-size: var(--text-xs); color: var(--color-gray-500); text-transform: uppercase; letter-spacing: 0.06em; font-family: var(--font-accent); }
@media (max-width: 960px) { .combo-banner { grid-template-columns: 1fr; } .combo-banner__covers { max-width: 520px; margin-inline: auto; width: 100%; } }


/* PRF / Sistema 4P: editorial rhythm, real product screens and scroll chapters. */
:root {
  --color-black: #0b0c0c;
  --color-black-900: #101111;
  --color-black-800: #131514;
  --color-black-700: #1b1d1b;
  --color-gold: #f4d313;
  --color-gold-light: #ffe65c;
  --color-gray-300: #babdb5;
  --color-gray-400: #9a9f94;
  --color-gray-500: #969b90;
  --color-border: rgba(221,218,177,.18);
  --gradient-card: linear-gradient(130deg,#171a16,#101211);
  --gradient-gold: linear-gradient(110deg,#f4d313,#f8df38);
  --shadow-gold-btn: none;
  --shadow-gold: 0 0 40px #f4d31308;
  --shadow-gold-strong: 0 8px 28px #f4d31320;
  --container-max: 1320px;
  --announce-h: 34px;
  --nav-h: 74px;
  --text-h1: clamp(2.7rem,4.6vw,4.25rem);
  --section-padding: clamp(64px,7vw,104px);
}
html { scroll-padding-top: 124px; }
body { background:#0b0c0c; -webkit-font-smoothing:antialiased; }
main { overflow:clip; }
section { scroll-margin-top:124px; }
.container { padding-inline:clamp(22px,5vw,56px); }
.section__title { letter-spacing:.005em; line-height:1; }
.section__subtitle { font-size:16px; line-height:1.8; }
.section__header { margin-bottom:42px; max-width:860px; }
.section__header--hud { padding:0; }
.section__header::after,.hud-corner--tl,.hud-corner--tr,.hud-corner--bl,.hud-corner--br { display:none; }
.section__eyebrow { font:600 11px/1.5 var(--font-body); letter-spacing:.14em; margin-bottom:20px; }
.section--tactical::before { opacity:.3; }
.section--tactical::after { opacity:.5; }
.btn { font:600 13px/1.3 var(--font-body); text-transform:none; letter-spacing:0; border-width:1px; border-radius:5px; padding:17px 25px; }
.btn--lg { padding:19px 27px; font-size:14px; }
.btn--sm { padding:13px 19px; font-size:12px; }
.btn--primary { color:#11130d; }
.btn--outline { border-color:#d4d2b94a; background:transparent; }
.btn--pulse { animation:none; }
.btn__sub { margin-top:5px; }
.announce { background:#181b13; color:#cbd0bd; border-bottom:1px solid #d8d3a720; font:400 11px/1.3 var(--font-body); text-transform:none; letter-spacing:.01em; gap:20px; }
.announce strong,.announce__cta { color:#e9d454; font-weight:500; }
.announce__cta { text-decoration:none; }
.announce__cta span { padding-left:6px; }
.nav { background:#0b0c0ce6; border-color:#f0ead916; }
.nav__logo { height:43px; width:auto; }
.nav__links { gap:24px; }
.nav__link { font:500 12px/1.4 var(--font-body); text-transform:none; letter-spacing:0; padding-block:10px; }
.nav__cta { min-height:42px; }
.nav__hamburger { min-width:44px; min-height:44px; align-items:center; justify-content:center; }
.nav__mobile { max-height:calc(100svh - 108px); overflow:auto; }
.nav__mobile-link { font:500 15px/1.5 var(--font-body); text-transform:none; letter-spacing:0; padding-block:14px; }
.skip-link { position:fixed; top:8px; left:20px; z-index:1000; padding:12px 18px; background:#f4d313; color:#111; transform:translateY(-160%); }
.skip-link:focus { transform:none; }
.reading-progress { position:fixed; z-index:600; left:0; top:0; width:100%; height:2px; pointer-events:none; }
.reading-progress span { display:block; width:100%; height:100%; background:#f4d313; transform:scaleX(0); transform-origin:left; }

/* Hero: one dominant PRF cover, with the study system connected beneath it. */
.hero { padding:calc(var(--announce-h) + var(--nav-h) + 74px) 0 0; min-height:0; display:block; }
.hero__bg { opacity:.3; background-position:center 58%; }
.hero__overlay { background:linear-gradient(90deg,#0b0c0c 4%,#0b0c0cf5 30%,#0b0c0c70 70%),linear-gradient(0deg,#0b0c0c 1%,transparent 65%,#0b0c0c95); }
.hero > .container { position:relative; z-index:2; }
.hero__grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:40px; align-items:center; }
.hero-kicker { display:flex; align-items:center; gap:9px; font:600 10px/1.6 var(--font-body); color:#c7c9ba; letter-spacing:.11em; margin-bottom:25px; }
.hero-kicker > span { flex-shrink:0; width:5px; height:5px; background:var(--color-gold); border-radius:50%; }
.hero-kicker i { font-style:normal; color:#555d4d; }
.hero__title { margin-bottom:16px; }
.hero-title-intro { display:block; font:600 clamp(46px,5.1vw,73px)/.98 var(--font-heading); letter-spacing:-.008em; text-transform:uppercase; color:#f0f0e7; }
.hero-title-prf { display:block; font:600 clamp(122px,12vw,172px)/.9 var(--font-heading); color:var(--color-gold); letter-spacing:-.015em; margin-top:10px; }
.hero-title-point { color:#f0f0e7; }
.hero__subtitle { font-size:16px; line-height:1.75; color:#bcc0b7; margin-bottom:27px; max-width:430px; }
.hero__subtitle strong { color:#eeeede; font-weight:600; }
.hero__cta { align-items:center; flex-wrap:wrap; gap:22px; margin-bottom:17px; }
.hero-tour-link { display:inline-flex; align-items:center; gap:10px; font-size:12px; min-height:44px; }
.hero-tour-link:hover { color:var(--color-gold); }
.hero-play { width:31px; height:31px; display:grid; place-items:center; color:var(--color-gold); border:1px solid #f4d31340; border-radius:50%; font-size:10px; padding-left:2px; }
.hero__price-hint { font:400 12px/1.6 var(--font-body); text-transform:none; letter-spacing:0; color:#b1b6a9; margin:0 0 17px; }
.hero__price-hint strong { font-size:15px; margin:0 3px 0 0; color:#f1f0e2; }
.hero__price-hint > span { border-left:1px solid #73776355; margin-left:10px; padding-left:12px; }
.hero-assurances { display:flex; flex-wrap:wrap; gap:17px; font-size:11px; color:#a8ae9f; }
.hero-assurances > span { display:flex; align-items:center; gap:7px; }
.hero-assurances svg { color:#dace72; }
.hero__visual { height:570px; align-self:center; }
.hero-visual-grid { position:absolute; inset:5% -6%; background-image:linear-gradient(#d5cb7710 1px,transparent 1px),linear-gradient(90deg,#d5cb7710 1px,transparent 1px); background-size:52px 52px; mask-image:radial-gradient(ellipse,black,transparent 74%); }
.hero-course-card { position:absolute; top:10px; left:6%; width:94%; border:1px solid #e4d68055; border-radius:7px; overflow:hidden; transform:rotate(-3deg); background:#13150f; box-shadow:0 25px 65px #0009; }
.hero-course-card > img { width:100%; height:auto; display:block; }
.visual-label { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 15px; min-height:42px; font:500 9px/1.4 var(--font-body); letter-spacing:.08em; color:#c6ccb9; background:#15170f; border-bottom:1px solid #ede2a424; }
.visual-label > span { display:flex; align-items:center; gap:8px; }
.visual-label > span:last-child { color:#c4b960; font-size:8px; }
.visual-label img { width:22px; height:22px; object-fit:contain; }
.visual-label i,.visual-bottom i { display:block; width:4px; height:4px; background:#e5ce34; border-radius:50%; }
.hero-system-card { position:absolute; top:225px; width:82%; left:-2%; transform:rotate(2deg); border:1px solid #d7c15777; border-radius:7px; overflow:hidden; background:#111; box-shadow:0 24px 70px #000c; }
.hero-system-screen { width:100%; aspect-ratio:16/9; object-fit:cover; object-position:top; }
.visual-bottom { display:flex; align-items:center; gap:7px; background:#181b12; padding:9px 13px; color:#c2b96d; font:500 8px/1.3 var(--font-body); letter-spacing:.035em; }
.visual-bottom > span { margin-left:auto; font-size:7px; color:#a1a48e; }
.hero-feature-note { position:absolute; display:flex; align-items:center; gap:12px; right:-1%; bottom:9px; padding:14px 18px; border:1px solid #cabc5760; border-radius:6px; background:#161a12f5; box-shadow:0 14px 40px #0009; transform:rotate(-3deg); }
.hero-feature-note > svg { color:#ddce5d; flex-shrink:0; }
.hero-feature-note strong { display:block; font-size:12px; font-weight:500; color:#efefde; }
.hero-feature-note small { display:block; font-size:10px; margin-top:5px; color:#a9af9f; }
.hero-feature-note:hover { border-color:#f4d313; }
.hero-orbit { position:absolute; width:680px; height:680px; border:1px solid #e5cd4210; border-radius:50%; top:20%; right:-10%; pointer-events:none; }
.hero-route { display:flex; align-items:center; gap:30px; padding:25px 0; margin-top:64px; border-top:1px solid #d9d4b826; color:#c4c8bb; }
.hero-route > span { margin-right:auto; font-size:9px; letter-spacing:.13em; color:#a1a795; }
.hero-route a { display:flex; gap:12px; align-items:center; font-size:12px; min-height:32px; }
.hero-route small { font-size:9px; color:#818a67; }
.hero-route a > span { color:#c5b641; }
.hero-route a:hover { color:#f4d313; }
.trust { background:#11140e; border-block:1px solid #dddbac18; }
.trust__inner { padding-block:18px; }
.trust__item { font:400 11px/1.4 var(--font-body); text-transform:none; letter-spacing:0; }
.trust__item svg { width:15px; height:15px; }

/* A bright editorial pause separates the promise from the product. */
.ecosystem { background:#eeeDE5; color:#252923; padding:76px 0 72px; }
.ecosystem-heading { display:grid; grid-template-columns:1fr .8fr; column-gap:100px; align-items:end; }
.ecosystem-heading .section__eyebrow { grid-column:1/-1; color:#687054; }
.ecosystem h2 { font:600 clamp(42px,4.7vw,65px)/1.02 var(--font-heading); text-transform:uppercase; letter-spacing:0; }
.ecosystem h2 span { color:#777e62; }
.ecosystem-heading p { font-size:16px; line-height:1.8; max-width:410px; color:#5c6356; padding-bottom:6px; }
.ecosystem-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:40px; border-top:1px solid #3a45372e; }
.ecosystem-item { position:relative; padding:30px 32px 0 0; }
.ecosystem-item + .ecosystem-item { padding-left:32px; border-left:1px solid #3a453721; }
.ecosystem-num { display:block; font-size:9px; letter-spacing:.13em; color:#697260; margin-bottom:26px; }
.ecosystem-item > svg { color:#657347; margin-bottom:20px; transition:transform .5s ease; }
.ecosystem-item:hover > svg { transform:translateY(-4px); }
.ecosystem h3 { font:600 21px/1.3 var(--font-body); letter-spacing:-.04em; margin-bottom:12px; }
.ecosystem-item p { color:#61665b; font-size:13px; line-height:1.8; }
.ecosystem-link { display:flex; align-items:center; justify-content:space-between; margin-top:25px; font-size:11px; font-weight:600; }
.ecosystem-link > span { font-size:20px; color:#6f775d; }
.ecosystem :focus-visible { outline-color:#424f21; }

/* Course gallery: media large enough to actually inspect. */
#curso .section__header { text-align:left; margin-inline:0; }
#curso .section__subtitle { margin-inline:0; }
.showcase { display:block; }
.showcase .s4p-tablist { display:flex; flex-direction:row; overflow-x:auto; gap:0; border-bottom:1px solid #cdc79b38; margin-bottom:30px; padding-bottom:0; scrollbar-width:thin; scrollbar-color:#666747 #171914; }
.showcase .s4p-tab { flex:1 0 auto; border:0; border-radius:0; padding:16px 16px 19px; box-shadow:none; border-bottom:2px solid transparent; text-align:center; justify-content:center; min-height:66px; }
.showcase .s4p-tab[aria-selected="true"] { border-bottom-color:#f4d313; background:#d9cf5010; }
.showcase .s4p-tab strong { font:500 12px/1.4 var(--font-body); letter-spacing:0; text-transform:none; }
.showcase .s4p-tab span { display:none; }
.showcase__grid { grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr); gap:50px; align-items:center; }
.showcase__copy h3 { font-size:clamp(30px,3vw,42px); text-transform:uppercase; letter-spacing:0; }
.showcase__copy p { font-size:14px; line-height:1.8; }
.showcase__copy .check-list { font-size:12px; }
.showcase__media { border-radius:5px; border-color:#ccc69230; box-shadow:0 20px 60px #0005; }
.showcase__media--portrait { max-width:420px; max-height:570px; }
.showcase__panel { min-height:450px; }
.showcase__copy .badge { font:500 10px/1.4 var(--font-body); letter-spacing:.06em; padding:6px 9px; }
.text-link { font:500 12px/1.5 var(--font-body); text-transform:none; letter-spacing:0; }

/* The pinned stage moves only the images; native page scrolling stays in control. */
.system-experience { background:#11140f; padding-top:92px; border-block:1px solid #d9d3a822; }
.system-heading { display:grid; grid-template-columns:1.4fr .7fr; gap:65px; align-items:end; margin-bottom:12px; }
.system-brand { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:26px; font-size:24px; letter-spacing:-.03em; }
.system-brand img { width:40px; height:40px; object-fit:contain; }
.system-brand small { font:500 8px/1.4 var(--font-body); color:#d0c965; letter-spacing:.09em; border:1px solid #d0c9654a; border-radius:3px; padding:6px 8px; margin-left:8px; }
.system-heading h2 { font:600 clamp(38px,4.5vw,62px)/1.04 var(--font-heading); text-transform:uppercase; letter-spacing:0; }
.system-heading > p { font-size:14px; line-height:1.9; color:#aeb7a3; padding-bottom:7px; }
.gold { color:var(--color-gold); }
.story-layout { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:66px; position:relative; }
.story-step { min-height:570px; min-height:max(540px,65svh); display:flex; align-items:center; scroll-margin-top:140px; }
.story-step-inner { padding-block:45px; width:100%; }
.story-eyebrow { display:flex; align-items:center; gap:14px; color:#b2ba9b; font:500 9px/1.5 var(--font-body); letter-spacing:.1em; }
.story-eyebrow b { font-weight:400; color:#d9cd52; border:1px solid #bcb6534d; padding:7px; border-radius:50%; }
.story-icon { color:#d8cc55; margin:25px 0 15px; }
.story-step h3 { font:600 clamp(32px,3.3vw,45px)/1.04 var(--font-heading); text-transform:uppercase; margin-bottom:18px; color:#edeee1; }
.story-step p { color:#b2b9a7; font-size:14px; line-height:1.9; }
.story-step ul { display:grid; gap:12px; margin-top:23px; }
.story-step li { display:flex; gap:10px; font-size:12px; line-height:1.6; color:#d0d5c4; }
.story-step li svg { flex-shrink:0; color:#b5b665; margin-top:2px; }
.story-stage { position:relative; padding-top:72px; padding-bottom:64px; min-width:0; }
.story-stage-inner { position:sticky; top:calc(145px + 2vh); }
.story-window { border:1px solid #d5cd7155; border-radius:7px; background:#0c0e0b; overflow:hidden; box-shadow:0 24px 70px #0006,0 0 75px #cdce3510; }
.story-screens { display:grid; isolation:isolate; }
.story-screen { grid-area:1/1; min-width:0; margin:0; opacity:0; visibility:hidden; transition:opacity .6s ease,visibility .6s; }
.story-screen.is-current { opacity:1; visibility:visible; z-index:1; }
.story-screen > img { width:100%; aspect-ratio:16/10; object-fit:contain; object-position:center; background:#0b0d0b; display:block; }
.story-screen figcaption { padding:15px 18px; font-size:11px; color:#c8ccb9; border-top:1px solid #c8cb901a; }
.story-controls { display:flex; border-bottom:1px solid #c5c99627; margin-top:22px; gap:18px; }
.story-controls a { flex:1; display:flex; align-items:center; gap:7px; font-size:9px; color:#b1b899; padding:12px 0; border-bottom:1px solid transparent; }
.story-controls a span { color:#979f8d; font-size:10px; }
.story-controls a[aria-current="step"] { color:#f4d313; border-color:#d9cb51; }
.story-controls a[aria-current="step"] span { color:#dedfc9; }
.story-hint { color:#9ca789; font-size:10px; margin-top:17px; display:flex; justify-content:space-between; }
.story-hint span { color:#c9c279; font-size:17px; }
.story-mobile-screen { display:none; }
.system-explorer { border-block:1px solid #c5c79a35; }
.system-explorer summary { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:25px 0; cursor:pointer; list-style:none; font-size:20px; font-weight:500; }
.system-explorer summary::-webkit-details-marker { display:none; }
.system-explorer summary small { display:block; color:#a4ad8e; font-size:9px; letter-spacing:.12em; margin-bottom:8px; }
.system-explorer summary > svg { color:#d4ca5e; transition:transform .3s; flex-shrink:0; }
.system-explorer[open] summary > svg { transform:rotate(45deg); }
.system-explorer-content { padding-top:20px; }
.system-explorer .s4p-tabs { margin-bottom:32px; }
.system-explorer .s4p-tab { border-radius:4px; }
.system-explorer .s4p-panel__copy { flex-direction:column; gap:10px; }
.system-explorer .s4p-screen { box-shadow:none; }
.system-demo-link { display:flex; align-items:center; justify-content:space-between; gap:30px; border-bottom:1px solid #c5c79a35; padding:35px 0; margin-bottom:70px; }
.system-demo-link .section__eyebrow { margin-bottom:10px; font-size:9px; }
.system-demo-link h3 { font:600 30px/1 var(--font-heading); text-transform:uppercase; margin-bottom:9px; }
.system-demo-link p { font-size:12px; color:#aeb5a0; }
.deliverables-heading { text-align:left; margin-inline:0; margin-bottom:32px; }
.deliverables { gap:1px; border:1px solid #c5c79a25; background:#c5c79a25; }
.deliverable { background:#121610; border:0; border-radius:0; box-shadow:none; padding:28px 23px; }
.deliverable:hover { background:#1a2014; transform:none; }
.deliverable__icon.dicon { width:62px; height:62px; margin-bottom:20px; }
.deliverable h4 { font:500 15px/1.5 var(--font-body); letter-spacing:-.02em; text-transform:none; }
.deliverable p { font-size:12px; line-height:1.8; }
.deliverable__value { font-size:8px; letter-spacing:.05em; color:#a4ad8b; border-top:0; margin-top:20px; }
.deliverable__num { opacity:.28; }
.dicon .ic-body { fill:#171c13; }

.exam-context { background:#ecece3; color:#282d22; }
.exam-context-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; }
.exam-context .section__eyebrow { color:#717c57; }
.exam-context h2 { font:600 clamp(38px,4.3vw,60px)/1.02 var(--font-heading); text-transform:uppercase; }
.exam-context h2 span { color:#737c61; }
.exam-context p { color:#5e6754; font-size:14px; line-height:1.85; margin:20px 0 24px; }
.exam-context .text-link { color:#4e5c2e; border-color:#7d87544a; }
.exam-context-facts article { display:flex; gap:20px; padding:0 0 23px; margin-bottom:23px; border-bottom:1px solid #4c573326; }
.exam-context-facts article > span { color:#818b6a; font-size:11px; padding-top:3px; }
.exam-context-facts h3 { font-size:17px; font-weight:500; letter-spacing:-.03em; }
.exam-context-facts p { font-size:12px; line-height:1.8; margin:8px 0 0; }
.exam-source { color:#656f51; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
#disciplinas { padding-block:65px; }
.disc { background:#12150f; border-color:#dfdab520; box-shadow:none; }
.mentors { grid-template-columns:repeat(2,minmax(0,430px)); gap:36px; }
.mentor { background:#141710; border-color:#d6d0a429; border-radius:5px; }
.mentor__photo { aspect-ratio:4/4.4; }
.mentor__photo::after { background:linear-gradient(180deg,transparent,#141710); }
.mentor__body { padding:24px 27px 28px; }
.mentor__name { font-size:36px; letter-spacing:0; }
.mentor__role { color:#c7c380; font:500 9px/1.7 var(--font-body); letter-spacing:.05em; }
.team-photo { border-radius:5px; }
.value-stack,.after-buy { background:#141810; border-color:#d6d0a42b; border-radius:5px; box-shadow:none; }
.price-box { border-color:#d8cf5580; border-radius:7px; background:radial-gradient(ellipse at top,#383c191a,transparent 65%),#13160f; box-shadow:0 20px 80px #0006; }
.price-box__name { font-size:40px; letter-spacing:0; }
.price-box__flag { background:#566039; }
.price-box__fine,.note { color:#a2a893; }
.guarantee { background:transparent; border-color:#c5c29830; border-radius:5px; }
.combo-banner { background:#131810; border-color:#c5c29840; border-radius:5px; box-shadow:none; }
.combo-banner__copy h3 { font-size:39px; letter-spacing:0; }
.faq__item { border-color:#d7d0a127; background:#11140e; border-radius:4px; }
.faq__question { min-height:66px; font-size:15px; }
.faq__answer { font-size:14px; line-height:1.85; }
.final { background:radial-gradient(ellipse at bottom,#5d611823,transparent 70%),#0b0e09; padding-block:100px; }
.footer { background:#0b0d09; }
.wa-float { width:46px; height:46px; bottom:26px; right:24px; box-shadow:0 5px 24px #0006; }
.wa-float svg { width:25px; height:25px; }
.back-top { position:fixed; bottom:84px; right:26px; width:42px; height:42px; display:grid; place-items:center; z-index:101; border:1px solid #d0cd714a; border-radius:50%; background:#171b11ee; color:#dbd47b; opacity:0; visibility:hidden; transition:opacity .25s,visibility .25s; }
.back-top.is-visible { opacity:1; visibility:visible; }
.mobile-bar { background:#14170ff5; border-color:#d7ce6545; }

/* Progressive enhancement: content is visible even if JS fails to load. */
html:not(.motion-ready) [data-animate],html:not(.motion-ready) .section__header .section__title,html:not(.motion-ready) .section__header .section__subtitle { opacity:1; transform:none; }
html:not(.motion-ready) .section__header .section__eyebrow { clip-path:none; }
.no-js .hero [data-hero] { opacity:1; transform:none; animation:none; }
[data-animate] { will-change:auto; transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1); transition-delay:calc(min(var(--stagger,0),3) * .09s); }
[data-animate="fade-up"] { transform:translateY(24px); }
[data-animate="fade-left"] { transform:translateX(-25px); }
[data-animate="fade-right"] { transform:translateX(25px); }
[data-animate].animate-in { transform:none; opacity:1; }
.animate-in { will-change:auto; }
.system-explorer[open] [data-animate] { opacity:1; transform:none; }
[data-drift] { translate:0 var(--drift,0px); }
@media (prefers-reduced-motion:no-preference) {
  .hero-orbit { animation:orbit-breathe 16s ease-in-out infinite; animation-play-state:paused; }
  .hero.is-in-view .hero-orbit { animation-play-state:running; }
  @keyframes orbit-breathe { 50% { transform:scale(1.08); opacity:.4; } }
}
@media (max-width:1120px) {
  .nav__links { gap:16px; }
  .hero__grid { gap:20px; grid-template-columns:1fr 1fr; }
  .hero__visual { height:500px; }
  .hero-system-card { top:205px; width:91%; left:0; }
  .hero-feature-note { bottom:5px; right:0; padding:12px; }
  .hero-kicker { font-size:8px; gap:5px; }
  .hero__cta { gap:10px; }
  .hero-tour-link { font-size:11px; }
  .story-layout { gap:32px; }
  .story-controls { gap:10px; }
  .story-controls a span { font-size:9px; }
  .ecosystem-heading { column-gap:60px; }
}
@media (max-width:900px) {
  .hero { padding-top:154px; }
  .hero__grid { grid-template-columns:1fr; gap:40px; }
  .hero__content { max-width:590px; }
  .hero-kicker { font-size:10px; gap:8px; }
  .hero-title-intro { font-size:64px; }
  .hero-title-prf { font-size:145px; }
  .hero__visual { width:100%; max-width:650px; margin-inline:auto; height:570px; }
  .hero-course-card { left:8%; width:89%; }
  .hero-system-card { top:225px; width:83%; left:0; }
  .hero-feature-note { bottom:0; }
  .hero-route { gap:24px; flex-wrap:wrap; margin-top:40px; }
  .hero-route > span { flex-basis:100%; }
  .ecosystem-heading { gap:22px; }
  .ecosystem-heading p { font-size:14px; }
  .ecosystem h3 { font-size:18px; }
  .ecosystem-item + .ecosystem-item { padding-left:22px; }
  .ecosystem-item { padding-right:22px; }
  .showcase__grid { grid-template-columns:1fr; gap:30px; }
  .showcase__panel { min-height:0; }
  .showcase__copy { max-width:630px; }
  .showcase .s4p-tab { padding-inline:19px; }
  .system-heading { grid-template-columns:1fr; gap:20px; }
  .system-heading > p { max-width:600px; }
  .story-layout { display:block; }
  .story-stage { display:none; }
  .story-step { min-height:0; border-bottom:1px solid #c5c79a25; }
  .story-step-inner { padding-block:45px; }
  .story-step h3 { font-size:44px; }
  .story-mobile-screen { display:block; margin:28px 0 0; border:1px solid #c5c79a35; border-radius:5px; overflow:hidden; background:#0b0e08; }
  .story-mobile-screen img { display:block; width:100%; height:auto; max-height:460px; object-fit:contain; }
  .story-mobile-screen figcaption { font-size:10px; line-height:1.6; padding:12px; color:#b4bca4; }
  .system-explorer { margin-top:30px; }
  .system-demo-link { flex-wrap:wrap; }
  .exam-context-grid { gap:45px; }
  .mentors { max-width:none; grid-template-columns:1fr 1fr; gap:24px; }
  .mentor__body { padding:20px; }
  .mentor__name { font-size:29px; }
  .back-top { bottom:150px; }
  [data-drift] { translate:none; }
}
@media (max-width:600px) {
  :root { --nav-h:65px; --announce-h:34px; --section-padding:60px; }
  html { scroll-padding-top:115px; }
  section { scroll-margin-top:115px; }
  .container { padding-inline:23px; }
  .announce { font-size:10px; gap:20px; }
  .nav__logo { height:38px; }
  .hero { padding-top:136px; }
  .hero__grid { gap:29px; }
  .hero-kicker { font-size:8px; letter-spacing:.07em; gap:6px; margin-bottom:23px; }
  .hero-title-intro { font-size:53px; }
  .hero-title-prf { font-size:128px; margin-top:10px; }
  .hero__title { margin-bottom:14px; }
  .hero__subtitle { font-size:14px; line-height:1.8; max-width:330px; margin-bottom:24px; }
  .hero__cta { gap:14px; }
  .hero__cta .btn { width:100%; justify-content:space-between; padding:18px 21px; }
  .hero-tour-link { font-size:12px; padding-block:3px; }
  .hero__price-hint { font-size:10px; margin-bottom:13px; }
  .hero__price-hint strong { font-size:13px; }
  .hero-assurances { font-size:10px; gap:14px; }
  .hero__visual { height:365px; margin-top:12px; }
  .hero-course-card { width:94%; left:4%; top:5px; }
  .hero-system-card { top:139px; width:87%; left:0; }
  .visual-label { padding:8px 10px; font-size:7px; min-height:32px; }
  .visual-label > span:last-child { font-size:6px; }
  .visual-label img { width:16px; height:16px; }
  .visual-bottom { font-size:6px; padding:7px 9px; }
  .visual-bottom > span { font-size:5px; }
  .hero-feature-note { padding:11px 12px; right:0; bottom:0; gap:8px; }
  .hero-feature-note > svg:first-child { width:22px; }
  .hero-feature-note strong { font-size:10px; }
  .hero-feature-note small { font-size:8px; }
  .hero-route { gap:14px; justify-content:space-between; margin-top:27px; padding-block:20px; }
  .hero-route > span { font-size:8px; }
  .hero-route a { font-size:10px; gap:7px; }
  .hero-route a > span { display:none; }
  .trust__inner { justify-content:flex-start; gap:15px 18px; padding-block:19px; }
  .trust__item { font-size:10px; }
  .ecosystem { padding:50px 0; }
  .ecosystem-heading { display:block; }
  .ecosystem h2 { font-size:43px; }
  .ecosystem-heading p { margin-top:20px; font-size:14px; }
  .ecosystem-grid { grid-template-columns:1fr; margin-top:25px; }
  .ecosystem-item,.ecosystem-item + .ecosystem-item { border:0; border-bottom:1px solid #3a453729; padding:26px 0; }
  .ecosystem-num { margin-bottom:20px; }
  .ecosystem-item > svg { position:absolute; right:0; top:24px; width:28px; }
  .ecosystem h3 { font-size:19px; }
  .ecosystem-item p { max-width:300px; }
  .ecosystem-link { margin-top:14px; }
  .section__title { font-size:39px; line-height:1.02; }
  .section__eyebrow { font-size:9px; margin-bottom:15px; }
  .section__subtitle { font-size:14px; }
  .showcase .s4p-tablist { margin-bottom:25px; }
  .showcase .s4p-tab { min-height:50px; padding:12px 16px; }
  .showcase .s4p-tab strong { font-size:11px; }
  .showcase__copy h3 { font-size:33px; }
  .showcase__copy p { font-size:13px; }
  .system-experience { padding-top:60px; }
  .system-brand { font-size:23px; gap:10px; margin-bottom:22px; }
  .system-brand img { width:36px; height:36px; }
  .system-brand small { margin-left:0; font-size:7px; }
  .system-heading h2 { font-size:40px; }
  .system-heading > p { font-size:13px; }
  .story-step { scroll-margin-top:115px; }
  .story-step h3 { font-size:36px; }
  .story-step p { font-size:13px; }
  .story-step li { font-size:11px; }
  .story-controls { display:none; }
  .system-explorer summary { font-size:16px; padding-block:23px; }
  .system-explorer summary small { font-size:8px; }
  .system-demo-link { gap:22px; margin-bottom:50px; }
  .system-demo-link .btn { width:100%; font-size:12px; }
  .deliverables { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .deliverable { padding:22px 14px; }
  .deliverable__num { font-size:26px; }
  .deliverable__icon.dicon { width:48px; height:48px; margin-bottom:15px; }
  .deliverable h4 { font-size:13px; }
  .deliverable p { font-size:11px; }
  .deliverable__value { font-size:7px; line-height:1.7; }
  .exam-context-grid { grid-template-columns:1fr; gap:32px; }
  .exam-context h2 { font-size:40px; }
  .exam-context p { font-size:13px; }
  .exam-context-facts p { font-size:12px; }
  .mentors { grid-template-columns:1fr; max-width:400px; gap:26px; }
  .mentor__photo { aspect-ratio:4/4.2; }
  .mentor__body { padding:21px; }
  .mentor__name { font-size:33px; }
  .mentor__list li { font-size:12px; }
  .price-box__name { font-size:35px; }
  .combo-banner { padding:23px; }
  .combo-banner__copy h3 { font-size:34px; }
  .faq__question { font-size:13px; line-height:1.6; }
  .faq__answer { font-size:13px; }
  .final { padding-block:70px; }
  .wa-float { right:16px; bottom:89px; width:43px; height:43px; }
  .back-top { width:36px; height:36px; right:20px; bottom:143px; }
  .mobile-bar .btn { padding:13px 17px; font-size:12px; }
}
@media (max-width:360px) {
  .container { padding-inline:18px; }
  .hero-kicker { font-size:7px; }
  .hero-title-intro { font-size:47px; }
  .hero-title-prf { font-size:116px; }
  .hero__visual { height:335px; }
  .hero-system-card { top:124px; }
  .system-brand small { font-size:6px; }
  .hero-route { gap:10px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  [data-drift] { translate:none!important; }
  [data-animate],.section__header .section__title,.section__header .section__subtitle { opacity:1!important; transform:none!important; }
}
html.motion-page-hidden *,html.motion-page-hidden *::before,html.motion-page-hidden *::after { animation-play-state:paused!important; }


/* Direção final do Eliab: tecnológico e sóbrio; uma única capa na hero. */
:root {
  --color-black:#0d0f12;
  --color-black-900:#101217;
  --color-black-800:#15181d;
  --color-gold:#d6c17b;
  --color-gold-light:#e4d398;
  --color-gold-dark:#b6a267;
  --color-text:#eceff1;
  --color-text-secondary:#a8adb6;
  --color-gray-300:#a8adb6;
  --color-gray-400:#9197a1;
  --color-gray-500:#9197a1;
  --color-border:#ffffff12;
  --gradient-card:linear-gradient(145deg,#191c22,#12151a);
  --gradient-gold:linear-gradient(110deg,#d6c17b,#e0cb8b);
  --font-heading:'Inter',system-ui,sans-serif;
  --announce-h:0px;
  --nav-h:80px;
  --section-padding:100px;
}
body { background:#0d0f12; color:#eceff1; }
strong { color:#eef0f3; }
.nav { top:0; background:#0d0f12e6; backdrop-filter:blur(18px); border-bottom:1px solid #ffffff0e; }
.nav--scrolled { background:#0d0f12f5; border-bottom-color:#ffffff18; }
.nav__logo { height:40px; }
.nav__link { color:#a8adb7; font-size:12px; }
.nav__link:hover,.nav__link.is-active { color:#e1d4a6; }
.nav__link::after { background:#c4b075; }
.nav__mobile { background:#12151afc; }
.btn { border-radius:5px; font-size:12px; letter-spacing:.005em; padding:16px 22px; }
.btn--primary { color:#1b1a15; background:#d6c17b; box-shadow:none; }
.btn--primary:hover { background:#e1ce94; filter:none; box-shadow:0 5px 22px #0003; }
.btn::before { display:none; }
.btn--outline { border-color:#ffffff2a; color:#dce0e5; }
.btn--outline:hover { border-color:#d6c17b70; background:#ffffff04; }
.btn--whatsapp { background:#252a29; color:#d8e3da; border-color:#52665c55; }
.btn--whatsapp:hover { background:#303a35; box-shadow:none; }
.section { padding-block:100px; }
.section--alt { background:#101318; }
.section--tactical::before,.section--tactical::after { display:none; }
.section__header { max-width:740px; }
.section__title { font-size:clamp(30px,3.2vw,43px); font-weight:500; line-height:1.18; letter-spacing:-.045em; text-transform:none; }
.section__title .gold { color:#aeb4be; }
.section__eyebrow { font-size:9px; font-weight:500; color:#a79b79; letter-spacing:.14em; margin-bottom:18px; }
.section__subtitle { font-size:14px; color:#969da8; line-height:1.8; }

/* Concise hero. Only the official PRF cover appears here. */
.hero { padding:180px 0 104px; background:#0d0f12; }
.hero__bg { background:none; opacity:1; }
.hero__bg::after { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 50% 65% at 76% 50%,#bfa8640b,transparent 78%); }
.hero__overlay { display:none; }
.hero__grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:76px; }
.hero-kicker { font-size:8px; color:#959ca8; font-weight:500; line-height:1.6; letter-spacing:.13em; margin-bottom:30px; }
.hero-kicker > span { background:#b3a070; width:4px; height:4px; }
.hero__title { font-family:var(--font-body); font-size:clamp(40px,4.4vw,63px); font-weight:500; line-height:1.08; letter-spacing:-.055em; color:#f0f1f3; margin-bottom:23px; }
.hero__title > span { color:#d6c17b; }
.hero__subtitle { font-size:15px; font-weight:400; line-height:1.8; max-width:420px; color:#9ca3af; margin-bottom:30px; }
.nowrap { white-space:nowrap; }
.hero__cta { margin:0; }
.hero__cta .btn { font-size:12px; gap:28px; padding:18px 23px; }
.hero__visual { height:auto; width:100%; max-width:none; align-self:center; margin:0; }
.hero-prf-cover { margin:0; border:1px solid #c9b9792b; border-radius:7px; overflow:hidden; background:#14171c; box-shadow:0 25px 80px #0004; }
.hero-prf-cover img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.trust { border-block:1px solid #ffffff0b; background:#101216; }
.trust__inner { display:flex; justify-content:center; flex-wrap:wrap; align-items:center; gap:38px; padding-block:21px; color:#8f96a2; font-size:8px; letter-spacing:.16em; font-weight:500; }
.trust__inner > i { display:block; width:3px; height:3px; background:#746e5e; border-radius:50%; }

/* Calm navigation and detailed content available on demand. */
#curso { background:#101318; }
#curso .section__header { margin-bottom:35px; }
.showcase .s4p-tablist { border-color:#ffffff17; margin-bottom:36px; }
.showcase .s4p-tab { border-radius:0; padding:15px 16px; min-height:55px; color:#969eab; }
.showcase .s4p-tab[aria-selected="true"] { border-bottom-color:#ccb779; background:#ffffff03; }
.showcase .s4p-tab strong { font-size:11px; color:inherit; }
.showcase .s4p-tab[aria-selected="true"] strong { color:#dfd6ba; }
.showcase__copy h3 { font-size:clamp(23px,2.4vw,32px); font-weight:500; line-height:1.2; letter-spacing:-.04em; text-transform:none; }
.showcase__copy p { font-size:13px; line-height:1.8; color:#9ca4af; }
.showcase__copy .check-list li { font-size:11px; color:#b3bac4; line-height:1.6; }
.showcase__copy .check-list svg { width:14px; height:14px; color:#9e956e; }
.showcase__media { border-color:#ffffff17; border-radius:5px; }
.showcase__media .pdf-slide img { background:#13161b; }
.pdf-dots button.is-active { background:#c0ad78; }
.pdf-nav { background:#171a21d9; border-color:#ffffff30; color:#ddd5ba; }
.text-link { color:#c2b48c; border-color:#bdae7b40; font-size:11px; }
.curriculum { margin-top:36px; border-block:1px solid #ffffff13; }
.curriculum summary { cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:21px 0; font-size:12px; color:#aeb5c0; list-style:none; }
.curriculum summary::-webkit-details-marker { display:none; }
.curriculum summary svg { color:#aa9e7b; }
.curriculum[open] summary svg { transform:rotate(45deg); }
.curriculum-content { padding-block:25px 35px; }
.curriculum-content > .container { padding:0; }
.curriculum-content .section__title { font-size:24px; }
.curriculum-content .section__subtitle { font-size:12px; }
.disc { background:#171a20; border-color:#ffffff10; }
.disc__bar { background:#ffffff08; }
.disc__bar i { background:#a59872; }
.disc h3,.disc__name { font-size:14px; text-transform:none; font-weight:500; letter-spacing:-.01em; }

/* Product storytelling in graphite, with one stable screen at a time. */
.system-experience { background:#0d0f13; border-block:1px solid #ffffff0b; }
.system-heading { grid-template-columns:1fr .65fr; gap:120px; margin-bottom:10px; }
.system-brand { font-size:18px; font-weight:400; letter-spacing:-.03em; margin-bottom:27px; }
.system-brand img { width:28px; height:28px; }
.system-brand strong { font-weight:500; }
.system-brand small { border:0; background:#ffffff05; color:#aaa28b; font-size:7px; letter-spacing:.06em; border-radius:3px; }
.system-heading h2 { font-family:var(--font-body); font-size:clamp(35px,3.6vw,49px); line-height:1.14; letter-spacing:-.05em; font-weight:500; text-transform:none; }
.system-heading h2 .gold { color:#a0a8b5; }
.system-heading > p { font-size:13px; line-height:1.9; color:#929ba9; }
.story-layout { grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr); gap:86px; }
.story-step { min-height:max(480px,58svh); }
@media (min-width:901px) {
  .story-copy::after { content:''; display:block; height:clamp(190px,26vh,260px); }
}
.story-eyebrow { color:#8f97a3; font-size:8px; letter-spacing:.11em; }
.story-eyebrow b { border:0; border-radius:0; color:#ada17b; padding:0 10px 0 0; border-right:1px solid #a99f7b3d; font-size:10px; }
.story-step h3 { margin-top:26px; font-family:var(--font-body); font-size:clamp(24px,2.7vw,34px); font-weight:500; letter-spacing:-.045em; line-height:1.2; text-transform:none; color:#e4e7ec; }
.story-step p { color:#969fab; font-size:13px; line-height:1.9; }
.story-step li { color:#b3bac4; font-size:11px; }
.story-step li svg { color:#9e9577; width:13px; height:13px; }
.story-stage { padding-top:65px; padding-bottom:40px; }
.story-stage-inner { top:145px; }
.story-window { background:#11141a; border:1px solid #d5c28a2e; border-radius:6px; box-shadow:0 22px 55px #0005; }
.visual-label { background:#171a20; color:#afb5bf; border-color:#ffffff0d; font-size:8px; letter-spacing:.06em; padding:13px 16px; }
.visual-label > span:last-child { color:#aaa18a; font-size:8px; }
.visual-label img { width:18px; height:18px; }
.visual-bottom { background:#16191e; color:#929aaa; font-size:7px; border-top:1px solid #ffffff0a; padding:11px 16px; }
.visual-bottom i { background:#aa9d76; width:3px; height:3px; }
.visual-bottom > span { color:#8b93a0; }
.story-screen img { background:#0d1015; }
.story-screen figcaption { background:#12151a; color:#b2b9c6; font-size:10px; border-color:#ffffff0b; }
.story-controls { border-color:#ffffff12; }
.story-controls a { color:#9e9580; padding-block:14px; }
.story-controls a span { color:#979fac; }
.story-controls a[aria-current="step"] { color:#d0be88; border-color:#b3a172; }
.story-controls a[aria-current="step"] span { color:#dadce2; }
.story-hint,.story-hint span { color:#808a99; font-size:9px; }
.system-explorer { border-color:#ffffff14; }
.system-explorer summary { font-size:16px; font-weight:400; }
.system-explorer summary small { font-size:8px; color:#9298a3; }
.system-explorer summary > svg { width:18px; color:#a69b7e; }
.system-explorer .s4p-tab { background:#13171c; border-color:#ffffff0c; }
.system-explorer .s4p-tab[aria-selected="true"] { background:#20221d; border-color:#baa56740; box-shadow:inset 2px 0 0 #b7a776; }
.system-explorer .s4p-tab strong { font-family:var(--font-body); font-size:12px; text-transform:none; letter-spacing:0; font-weight:500; }
.system-explorer .s4p-tab__num { font-size:17px; font-weight:400; color:#a99f86; }
.system-explorer .s4p-panel__copy h3 { font-size:21px; font-weight:500; text-transform:none; letter-spacing:-.035em; line-height:1.3; }
.system-explorer .s4p-panel__copy p { font-size:12px; }
.system-explorer .s4p-screen { border-color:#ffffff18; border-radius:4px; }
.system-demo-link { border-bottom:0; padding:33px 0 0; margin-bottom:0; }
.system-demo-link h3 { font:500 20px/1.3 var(--font-body); text-transform:none; letter-spacing:-.04em; margin-bottom:9px; }
.system-demo-link .section__eyebrow { display:none; }
.system-demo-link p { font-size:12px; color:#8f98a6; }

/* People, one clear offer, and practical answers. */
#professores { background:#111419; border-block:1px solid #ffffff0a; }
.mentors { max-width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-bottom:36px; }
.mentor { display:grid; grid-template-columns:.8fr 1fr; border-color:#ffffff12; background:#15191f; }
.mentor__photo { height:100%; aspect-ratio:auto; min-height:300px; }
.mentor__photo::after { background:linear-gradient(0deg,#15191f90,transparent 35%); }
.mentor__photo img { object-position:50% 10%; }
.mentor__body { align-self:center; padding:28px 24px; margin-top:0; }
.mentor__role { font-size:8px; color:#a79f89; line-height:1.8; }
.mentor__name { font:500 23px/1.15 var(--font-body); text-transform:none; letter-spacing:-.04em; margin-block:13px 16px; }
.mentor__list li { font-size:10px; line-height:1.75; color:#9fa8b5; }
.mentor__list svg { width:12px; color:#9d977f; }
.team-photo { max-width:840px; border-color:#ffffff10; }
.team-caption { font-size:10px; color:#929aa6; }
#investimento { background:#0d1014; }
.enrollment-copy { padding:10px 0 32px; }
.enrollment-copy h3 { font:500 29px/1.3 var(--font-body); letter-spacing:-.045em; margin-bottom:16px; }
.enrollment-copy p { color:#939dab; font-size:13px; line-height:1.8; max-width:360px; }
.after-buy { background:transparent; border:0; border-top:1px solid #ffffff13; padding:25px 0; }
.after-buy h3 { font:500 15px/1.4 var(--font-body); letter-spacing:0; text-transform:none; margin-bottom:25px; }
.after-buy li b { font:400 11px/1.6 var(--font-body); color:#a49a7e; padding-top:1px; }
.after-buy li strong { font:500 12px/1.4 var(--font-body); text-transform:none; letter-spacing:0; margin-bottom:5px; }
.after-buy li span { color:#929eac; font-size:11px; }
.price-box { background:#15191f; border-color:#c7b77d48; border-radius:7px; box-shadow:0 22px 60px #0003; }
.price-box::before { height:2px; background:#c6b179; }
.price-box__label { font:400 9px/1.5 var(--font-body); text-transform:uppercase; letter-spacing:.08em; color:#919ba9; margin-bottom:14px; }
.price-box__name { font:500 25px/1.25 var(--font-body); text-transform:none; letter-spacing:-.04em; }
.price-box__name .gold { color:#c9bb94; }
.price-box__old { font-size:12px; color:#929ba8; }
.price-box__old s { text-decoration-color:#929ba8; }
.price-box__current { font:500 clamp(45px,4.8vw,62px)/1.2 var(--font-body); color:#e3d5ac; letter-spacing:-.06em; margin:14px 0; }
.price-box__current small { font:400 13px/1.4 var(--font-body); letter-spacing:0; }
.price-box__cash { font-size:13px; color:#c9d0d9; }
.price-box__cash strong { color:#e3d5ac; }
.price-box__fine { font-size:10px; line-height:1.7; margin-top:7px; color:#8d98a7; }
.price-box__features { gap:11px; padding-top:24px; border-top:1px solid #ffffff12; }
.price-box__features li { font-size:11px; color:#b6bfcd; line-height:1.6; }
.price-box__features li.is-hot { color:#d5c79e; font-weight:400; }
.price-box__features svg { color:#a79d80; width:14px; height:14px; }
.price-box .btn--lg { font-size:12px; padding-block:18px; }
.price-box__secure { color:#959fad; font-family:var(--font-body); font-size:8px; text-transform:none; letter-spacing:0; gap:8px; }
.price-box__secure svg { color:#a79d80; width:12px; height:12px; }
.price-box__wa { color:#929caa; font-size:11px; }
.price-box__wa a { color:#b4c5b9; }
.guarantee { max-width:800px; border:0; border-top:1px solid #ffffff12; padding:35px 0 0; gap:25px; }
.guarantee h3 { font:500 20px/1.35 var(--font-body); text-transform:none; letter-spacing:-.035em; }
.guarantee p { font-size:12px; line-height:1.9; color:#969eaa; }
.guarantee img { width:76px; }
#faq { background:#111419; padding-block:75px 90px; }
.faq__item { background:transparent; border:0; border-bottom:1px solid #ffffff14; border-radius:0; }
.faq__question { font-family:var(--font-body); font-size:13px; font-weight:400; letter-spacing:0; text-transform:none; padding:21px 0; }
.faq__question svg { width:16px; color:#a69c81; }
.faq__answer { font-size:12px; line-height:1.9; color:#a1abb9; }
.footer { background:#0b0e12; padding-top:50px; border-top:1px solid #ffffff10; }
.footer__legal { color:#85909f; }
.footer__logo { max-width:150px; }
.back-top { background:#1a1e25e6; border-color:#ffffff26; color:#aaa38d; right:23px; bottom:28px; }
.reading-progress span { background:#b2a06b; }
.mobile-bar { background:#14181eef; border-color:#c1b48c30; }
.mobile-bar__price span { font-size:8px; color:#97a0af; }
.mobile-bar__price strong { font:500 19px/1.3 var(--font-body); letter-spacing:-.03em; color:#d3c391; }
.mobile-bar__price small { font-size:.75em; }
.story-screen { transition:opacity .45s ease,visibility .45s; }
.story-mobile-screen { background:#11151a; border-color:#ffffff1c; }
.story-mobile-screen figcaption { color:#a0a9b7; font-size:9px; }
.no-js .s4p-tablist { display:none; }
.no-js .s4p-panel[hidden] { display:block!important; }
.no-js .s4p-panel { margin-bottom:40px; }
.no-js .pdf-nav,.no-js .pdf-dots { display:none; }
.no-js .faq__answer { max-height:none!important; }
.no-js .story-screen:not(.is-current) { display:none; }
.no-js .hero { animation:none; }
@media (min-width:901px) and (max-height:800px) {
  .story-stage-inner { top:105px; }
  .story-screen > img { height:48svh; max-height:390px; aspect-ratio:auto; }
  .story-controls { margin-top:12px; }
  .story-hint { margin-top:10px; }
}
@media (max-width:1120px) {
  .hero__grid { gap:48px; }
  .hero { padding:155px 0 85px; }
  .hero-kicker { font-size:7px; }
  .system-heading { gap:65px; }
  .story-layout { gap:45px; }
  .mentors { gap:24px; }
  .mentor { grid-template-columns:1fr; }
  .mentor__photo { aspect-ratio:4/3.7; min-height:0; }
  .mentor__photo img { object-position:50% 17%; }
  .mentor__list li { font-size:11px; }
}
@media (max-width:900px) {
  :root { --nav-h:72px; }
  .hero { padding:136px 0 68px; }
  .hero__grid { grid-template-columns:1fr 1fr; gap:30px; }
  .hero__title { font-size:43px; }
  .hero__subtitle { font-size:13px; }
  .hero-kicker { font-size:6px; margin-bottom:24px; }
  .hero__cta .btn { padding:16px 18px; gap:18px; font-size:11px; }
  .section { padding-block:75px; }
  .system-heading { grid-template-columns:1fr .7fr; gap:45px; }
  .system-heading h2 { font-size:40px; }
  .story-step { min-height:0; }
  .story-step-inner { padding-block:38px; }
  .story-step h3 { font-size:29px; margin-top:22px; }
  .story-mobile-screen { max-width:650px; }
  .story-step { border-color:#ffffff11; }
  .back-top { bottom:95px; }
}
@media (max-width:600px) {
  :root { --nav-h:67px; }
  .nav__logo { height:34px; }
  .hero { padding:120px 0 48px; }
  .hero__grid { grid-template-columns:1fr; gap:38px; }
  .hero-kicker { font-size:7px; letter-spacing:.09em; margin-bottom:24px; gap:6px; }
  .hero__title { font-size:46px; margin-bottom:21px; line-height:1.09; }
  .hero__subtitle { max-width:280px; font-size:14px; margin-bottom:25px; }
  .hero__cta .btn { width:auto; justify-content:center; padding:17px 22px; font-size:11px; gap:27px; }
  .hero__visual { margin:0; height:auto; }
  .hero-prf-cover { border-radius:5px; }
  .trust__inner { gap:13px; font-size:6px; letter-spacing:.09em; padding-block:19px; }
  .trust__inner > i { width:2px; height:2px; }
  .section { padding-block:62px; }
  .section__title { font-size:30px; font-weight:500; line-height:1.2; letter-spacing:-.045em; }
  .section__subtitle { font-size:12px; line-height:1.8; }
  .section__eyebrow { font-size:8px; margin-bottom:17px; }
  #curso .section__header { margin-bottom:27px; }
  .showcase .s4p-tablist { margin-bottom:28px; }
  .showcase .s4p-tab { padding:12px 16px; min-height:46px; }
  .showcase__grid { gap:28px; }
  .showcase__copy h3 { font-size:24px; }
  .showcase__copy p { font-size:12px; }
  .showcase__copy .check-list li { font-size:10px; }
  .curriculum summary { font-size:11px; }
  .curriculum-content .section__title { font-size:23px; }
  .system-heading { grid-template-columns:1fr; gap:17px; }
  .system-brand { font-size:17px; gap:9px; margin-bottom:24px; }
  .system-brand img { width:26px; height:26px; }
  .system-brand small { font-size:6px; }
  .system-heading h2 { font-size:36px; }
  .system-heading > p { max-width:295px; font-size:12px; }
  .story-eyebrow { font-size:7px; }
  .story-step h3 { font-size:26px; margin-top:22px; line-height:1.2; }
  .story-step p { font-size:12px; }
  .story-step ul { margin-top:20px; gap:10px; }
  .story-step li { font-size:10px; }
  .story-mobile-screen { margin-top:24px; }
  .system-explorer { margin-top:25px; }
  .system-explorer summary { font-size:14px; padding-block:22px; }
  .system-explorer summary small { font-size:7px; }
  .system-demo-link { gap:20px; }
  .system-demo-link h3 { font-size:18px; }
  .system-demo-link p { font-size:11px; }
  .system-demo-link .btn { font-size:11px; }
  .mentors { grid-template-columns:1fr; max-width:400px; }
  .mentor__photo { aspect-ratio:4/3.8; }
  .mentor__body { padding:24px; }
  .mentor__name { font-size:25px; }
  .enrollment-copy { padding:0 0 10px; }
  .enrollment-copy h3 { font-size:24px; }
  .enrollment-copy p { font-size:12px; }
  .price-box__name { font-size:23px; }
  .price-box__features li { font-size:10px; }
  .price-box__current { font-size:51px; }
  .price-box__fine { font-size:9px; }
  .price-box__secure { font-size:7px; }
  .guarantee h3 { font-size:18px; }
  .guarantee p { font-size:11px; }
  .faq__question { font-size:12px; }
  .faq__answer { font-size:11px; }
  #faq { padding-block:55px 65px; }
  .back-top { right:18px; bottom:90px; width:34px; height:34px; }
  .mobile-bar .btn { font-size:10px; padding:13px 16px; }
}
@media (max-width:360px) {
  .hero__title { font-size:42px; }
  .hero-kicker { font-size:6px; }
  .trust__inner { gap:10px; font-size:5.5px; }
  .system-heading h2 { font-size:33px; }
}


/* Immersive PRF scene and an editorial presentation of real teaching material. */
.hero--immersive { position:relative; isolation:isolate; min-height:730px; padding:0; display:flex; align-items:center; background:#0d0f12; }
.hero-scene { position:absolute; inset:55px 0 0; z-index:-2; overflow:hidden; }
.hero-scene > img { width:100%; height:100%; display:block; object-fit:cover; object-position:70% 10%; filter:saturate(.82) brightness(.88); transform:translateY(var(--hero-drift,0px)) scale(1.055); }
.hero-scene-shade { position:absolute; inset:0; background:linear-gradient(90deg,#0d0f12fa 0%,#0d0f12e8 23%,#0d0f128f 43%,#0d0f1210 73%),linear-gradient(0deg,#0d0f12 0%,#0d0f1265 15%,transparent 38%,#0d0f1270 100%); }
.hero--immersive .hero-immersive-inner { position:relative; width:100%; padding-top:80px; padding-bottom:45px; z-index:1; }
.hero--immersive .hero__content { width:540px; max-width:50%; padding-block:45px; }
.hero--immersive .hero-kicker { color:#acb0b9; font-size:9px; letter-spacing:.13em; margin-bottom:30px; }
.hero--immersive .hero__title { font-size:clamp(48px,4.5vw,65px); line-height:1.08; font-weight:500; letter-spacing:-.055em; margin-bottom:24px; }
.hero--immersive .hero__title span { color:#ddcb91; }
.hero--immersive .hero__subtitle { max-width:425px; font-size:15px; line-height:1.85; color:#b6bac4; margin-bottom:32px; }
.hero--immersive .hero__cta { justify-content:flex-start; align-items:flex-start; }
.hero--immersive .hero__cta .btn { padding:18px 24px; }
.hero-explore { position:absolute; bottom:-26px; left:56px; display:flex; align-items:center; gap:13px; font-size:7px; letter-spacing:.18em; color:#8e97a2; min-height:34px; }
.hero-explore svg { color:#b0a27a; }
.hero-trace { position:absolute; inset:auto 0 0; height:1px; background:linear-gradient(90deg,transparent,#bdae752e 28%,#9c999345 65%,transparent); overflow:hidden; }
.hero-trace i { position:absolute; top:0; width:120px; height:1px; background:linear-gradient(90deg,transparent,#e0d4ad,transparent); opacity:.6; }
@media (prefers-reduced-motion:no-preference) { .hero-trace i { animation:trace-travel 9s ease-in-out infinite; animation-play-state:paused; } .hero--immersive.is-in-view .hero-trace i { animation-play-state:running; } }
@keyframes trace-travel { from { transform:translateX(-140px); } to { transform:translateX(100vw); } }

.course-resources { background:#101318; }
.resource-heading { display:grid; grid-template-columns:1.1fr .65fr; align-items:end; gap:110px; margin-bottom:45px; }
.resource-heading p { color:#9ea6b3; font-size:14px; line-height:1.85; padding-bottom:6px; max-width:340px; }
.resource-heading h2 { margin-bottom:0; }
.learning-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.learning-card { min-width:0; background:#14181e; border:1px solid #ffffff14; border-radius:8px; overflow:hidden; transition:border-color .3s ease; }
.learning-card:hover { border-color:#c8b47d44; }
.learning-card-label { display:flex; align-items:center; justify-content:space-between; padding:23px 26px; border-bottom:1px solid #ffffff0a; }
.learning-card-label > span { display:flex; align-items:center; gap:11px; font-size:9px; color:#bbc1c9; letter-spacing:.09em; }
.learning-card-label svg { color:#b6a578; }
.learning-card-label small { color:#767d89; font-size:9px; }
.lesson-variants { padding:20px 20px 0; }
.lesson-preview { display:block; position:relative; border:1px solid #ffffff1b; border-radius:4px; overflow:hidden; background:#0d1014; }
.lesson-preview > img { width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; display:block; }
.media-enlarge { position:absolute; right:12px; bottom:12px; display:flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid #ffffff27; border-radius:4px; background:#10151de8; color:#c5cbd4; font-size:9px; backdrop-filter:blur(8px); }
.lesson-preview:hover .media-enlarge,.pdf-composition:hover .media-enlarge { border-color:#cabd91a0; color:#eee3c5; }
.lesson-select { display:flex; gap:7px; align-items:center; padding:14px 21px 0; }
.lesson-select button { padding:9px 12px; min-height:36px; border:1px solid #ffffff13; border-radius:4px; font-size:10px; color:#a5adba; }
.lesson-select button[aria-selected="true"] { border-color:#c2b17b50; color:#dccfa8; background:#c5b4810b; }
.lesson-select > span { margin-left:auto; color:#7f8998; font-size:6px; letter-spacing:.06em; }
.learning-card-copy { padding:27px 28px 31px; }
.learning-card-copy h3 { font:500 27px/1.25 var(--font-body); letter-spacing:-.045em; color:#e4e7ec; margin-bottom:13px; }
.learning-card-copy p { color:#a1aab8; font-size:12px; line-height:1.85; max-width:450px; }
.learning-tags { display:flex; flex-wrap:wrap; align-items:center; gap:11px; margin-top:22px; font-size:9px; color:#9da7b4; }
.learning-tags i { width:3px; height:3px; border-radius:50%; background:#a09371; }
.learning-card--pdf { display:flex; flex-direction:column; }
.pdf-composition { position:relative; display:block; height:0; padding-top:calc((100% - 40px) * .5625 + 70px); overflow:hidden; background:radial-gradient(ellipse at 55% 56%,#a5936d13,transparent 70%); }
.pdf-stage-lines { position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent 0 54px,#aaa0780a 54px 55px),repeating-linear-gradient(90deg,transparent 0 54px,#aaa0780a 54px 55px); mask-image:radial-gradient(ellipse at center,#000,transparent 75%); }
.pdf-sheet { position:absolute; height:87%; width:42%; top:8%; border:1px solid #bbae722e; box-shadow:0 17px 32px #0008; border-radius:3px; overflow:hidden; background:#eee; transition:transform .7s cubic-bezier(.22,1,.36,1); }
.pdf-sheet img { width:100%; height:100%; display:block; object-fit:contain; object-position:center; background:#f4f4ef; }
.pdf-sheet--back { left:18%; top:4%; transform:perspective(1000px) rotateY(10deg) rotateZ(-11deg) scale(.9); opacity:.82; }
.pdf-sheet--front { left:42%; transform:perspective(1000px) rotateY(-9deg) rotateZ(7deg); }
.pdf-composition:hover .pdf-sheet--back { transform:perspective(1000px) rotateY(6deg) rotateZ(-14deg) translateX(-8px) scale(.9); }
.pdf-composition:hover .pdf-sheet--front { transform:perspective(1000px) rotateY(-5deg) rotateZ(4deg) translateY(-4px); }
.pdf-composition-note { position:absolute; bottom:14px; left:23px; color:#8e97a5; font-size:6px; letter-spacing:.07em; }
.learning-card--pdf .learning-card-copy { margin-top:auto; }

.support-heading { display:flex; justify-content:space-between; gap:24px; align-items:center; margin:47px 0 23px; }
.support-heading .section__eyebrow { margin:0; font-size:8px; }
.support-heading > p { font-size:11px; color:#8c96a4; }
.support-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 30px; }
.support-item { display:flex; gap:21px; padding:30px 0; border-top:1px solid #ffffff17; }
.support-icon { flex-shrink:0; width:40px; height:40px; display:grid; place-items:center; border:1px solid #ffffff13; border-radius:8px; color:#b0a585; background:#ffffff02; }
.support-item h3 { font:500 21px/1.25 var(--font-body); letter-spacing:-.035em; color:#d9dee6; margin-bottom:12px; }
.support-item p { font-size:12px; line-height:1.85; color:#959eae; max-width:405px; }
.support-item h3 br { display:none; }
.support-item--writing h3 span { color:#d7c691; }
.support-detail { display:block; color:#9f9780; font-size:9px; margin-top:15px; }
.system-connection { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:25px 27px; margin-top:15px; border:1px solid #c9b67c25; background:#c0b08005; border-radius:5px; font-size:11px; color:#a7b0bf; }
.system-connection > span { display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
.system-connection > span:first-child > svg { color:#aa9c74; margin-right:8px; flex-shrink:0; }
.system-connection strong { font-weight:500; color:#d4c798; }
.system-connection > span:last-child { font-size:10px; white-space:nowrap; color:#b8b2a1; }
.system-connection:hover { border-color:#c9b67c60; }
.course-resources .curriculum { margin-top:30px; }

/* Native dialog preserves keyboard focus and opens the actual image. */
.media-dialog { max-width:min(1120px,94vw); width:max-content; max-height:92svh; margin:auto; border:1px solid #cbb77a40; border-radius:8px; padding:0; background:#12171e; color:#d9dfe9; box-shadow:0 30px 110px #000b; }
.media-dialog::backdrop { background:#07090ddf; backdrop-filter:blur(9px); }
.media-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px 18px; border-bottom:1px solid #ffffff18; }
.media-dialog-header h2 { font:400 12px/1.6 var(--font-body); }
.media-dialog-close { min-height:38px; min-width:38px; display:grid; place-items:center; color:#c1b792; border:1px solid #ffffff1a; border-radius:4px; }
.media-dialog-body { background:#0b0e13; display:flex; justify-content:center; overflow:auto; }
.media-dialog-body img { display:block; width:auto; max-width:100%; max-height:calc(92svh - 106px); height:auto; object-fit:contain; }
.media-dialog > p { padding:12px 18px; color:#8a95a6; font-size:9px; }
.no-js .lesson-select { display:none; }
.no-js .lesson-variants .s4p-panel[hidden] { display:block!important; }
.no-js .lesson-variants .s4p-panel { margin-bottom:16px; }
.no-js .media-dialog { display:none; }

@media (max-width:1120px) {
  .hero--immersive { min-height:665px; }
  .hero--immersive .hero__content { max-width:55%; }
  .hero--immersive .hero__title { font-size:55px; }
  .hero-scene > img { object-position:66% center; }
  .resource-heading { gap:70px; }
  .learning-card-copy { padding:24px; }
  .learning-card-copy h3 { font-size:24px; }
  .learning-card-label { padding:20px 23px; }
  .lesson-select > span { display:none; }
  .support-item h3 { font-size:19px; }
}
@media (max-width:900px) {
  .hero--immersive { min-height:640px; }
  .hero--immersive .hero__content { max-width:62%; padding-block:20px; }
  .hero--immersive .hero__title { font-size:48px; }
  .hero--immersive .hero__subtitle { font-size:13px; }
  .hero-scene > img { object-position:68% center; }
  .hero-scene-shade { background:linear-gradient(90deg,#0d0f12fa,#0d0f12e0 35%,#0d0f1210 100%),linear-gradient(0deg,#0d0f12,transparent 40%); }
  .hero-explore { left:40px; bottom:-55px; }
  .resource-heading { gap:30px; }
  .resource-heading p { font-size:12px; }
  .learning-grid { gap:20px; }
  .learning-card-label { padding:18px; }
  .lesson-variants { padding:15px 12px 0; }
  .lesson-select { padding:12px 12px 0; }
  .learning-card-copy { padding:23px 19px; }
  .learning-card-copy h3 { font-size:21px; }
  .learning-card-copy p { font-size:11px; }
  .pdf-composition { padding-top:calc((100% - 24px) * .5625 + 63px); }
  .pdf-composition-note { display:none; }
  .support-grid { gap:0 25px; }
  .support-item { gap:15px; }
  .support-item p { font-size:11px; }
  .support-icon { width:35px; height:35px; }
  .support-icon svg { width:21px; }
  .system-connection { gap:18px; padding:22px; }
  .system-connection > span:first-child { display:block; line-height:1.8; }
  .system-connection > span:first-child > svg { display:none; }
}
@media (max-width:600px) {
  .hero--immersive { display:block; min-height:775px; }
  .hero-scene { top:0; height:100%; }
  .hero-scene > img { width:100%; height:60%; position:absolute; bottom:0; object-position:77% center; object-fit:cover; filter:saturate(.82) brightness(.90); transform:scale(1.03); }
  .hero-scene-shade { background:linear-gradient(0deg,#0d0f12 0%,transparent 17%,#0d0f120c 36%,#0d0f12 65%,#0d0f12 100%); }
  .hero--immersive .hero-immersive-inner { padding-top:125px; padding-bottom:0; }
  .hero--immersive .hero__content { width:100%; max-width:none; padding:0; }
  .hero--immersive .hero-kicker { font-size:7px; letter-spacing:.1em; margin-bottom:26px; }
  .hero--immersive .hero__title { font-size:46px; line-height:1.08; max-width:350px; margin-bottom:22px; }
  .hero--immersive .hero__subtitle { font-size:13px; line-height:1.85; margin-bottom:24px; color:#acb3c0; }
  .hero--immersive .hero__cta { justify-content:flex-start; }
  .hero--immersive .hero__cta .btn { width:auto; font-size:11px; padding:16px 21px; }
  .hero-explore { display:none; }
  .trust__inner { gap:13px; }
  .resource-heading { display:block; margin-bottom:30px; }
  .resource-heading p { margin-top:18px; max-width:300px; font-size:12px; }
  .resource-heading h2 { font-size:31px; }
  .learning-grid { grid-template-columns:1fr; gap:24px; }
  .learning-card-label { padding:18px 20px; }
  .learning-card-label > span { font-size:8px; }
  .lesson-variants { padding:16px 14px 0; }
  .lesson-select { padding:12px 14px 0; }
  .lesson-select button { font-size:9px; min-height:36px; }
  .lesson-select > span { display:block; font-size:5px; }
  .learning-card-copy { padding:25px 22px; }
  .learning-card-copy h3 { font-size:23px; }
  .learning-card-copy p { font-size:12px; }
  .learning-tags { font-size:8px; gap:10px; margin-top:19px; }
  .pdf-composition { padding-top:88%; }
  .pdf-composition-note { display:block; left:20px; font-size:5px; }
  .pdf-sheet { width:44%; height:87%; }
  .pdf-sheet--back { left:14%; }
  .pdf-sheet--front { left:39%; }
  .support-heading { display:block; margin-top:39px; margin-bottom:22px; }
  .support-heading > p { margin-top:12px; font-size:11px; }
  .support-grid { grid-template-columns:1fr; }
  .support-item { padding:25px 0; gap:17px; }
  .support-icon { width:39px; height:39px; border-radius:6px; }
  .support-item h3 { font-size:20px; letter-spacing:-.04em; }
  .support-item p { font-size:11px; }
  .support-item--writing h3 br { display:block; }
  .support-detail { font-size:8px; }
  .system-connection { display:block; padding:22px; margin-top:10px; }
  .system-connection > span:first-child { font-size:11px; line-height:1.85; }
  .system-connection > span:last-child { margin-top:17px; justify-content:space-between; font-size:10px; }
  .media-dialog { max-width:96vw; }
  .media-dialog-header { gap:12px; padding:11px 12px; }
  .media-dialog-header h2 { font-size:10px; }
  .media-dialog > p { font-size:8px; line-height:1.7; }
}
@media (max-width:360px) {
  .hero--immersive .hero__title { font-size:41px; }
  .hero--immersive { min-height:750px; }
  .hero--immersive .hero-kicker { font-size:6px; }
  .hero--immersive .hero__subtitle { font-size:12px; }
  .lesson-select > span { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-scene > img { transform:none!important; }
  .pdf-sheet { transition:none; }
  .pdf-composition:hover .pdf-sheet { transform:none; }
}


/* Cores da Operação e contato comercial com retrato do Paulo. */
:root {
  --color-gold: #f2d33d;
  --color-gold-light: #f7dd62;
  --color-gold-dark: #d0b42f;
  --color-green: #25d366;
  --color-green-dark: #20bc5a;
  --gradient-gold: linear-gradient(110deg, #f2d33d, #f5d94f);
  --purchase-bar-offset: 0px;
}
.btn--primary { background:#f2d33d; color:#14160e; }
.btn--primary:hover { background:#f7dd62; }
.hero--immersive .hero__title span,
.section__title .gold,
.system-heading h2 .gold,
.support-item--writing h3 span,
.price-box__name .gold,
.price-box__current,
.price-box__cash strong,
.mobile-bar__price strong { color:#f2d33d; }
.section__eyebrow { color:#f2d33d; }
.hero-kicker > span,
.reading-progress span,
.nav__link::after,
.price-box::before { background:#f2d33d; }
.nav__link.is-active,.nav__link:hover { color:#f2d33d; }
.text-link,.hero-explore svg,.support-icon,
.learning-card-label svg,
.story-step li svg,.story-eyebrow b,
.story-controls a[aria-current="step"],
.system-explorer summary > svg,
.system-explorer .s4p-tab__num,
.system-connection strong,.system-connection > span:first-child > svg,
.price-box__features svg,.price-box__features li.is-hot,
.price-box__secure svg,.mentor__list svg,
.after-buy li b,.faq__question svg { color:#f2d33d; }
.text-link { border-bottom-color:#f2d33d60; }
.lesson-select button[aria-selected="true"] { color:#f2d33d; border-color:#f2d33d70; background:#f2d33d0d; }
.story-controls a[aria-current="step"] { border-color:#f2d33d; }
.system-explorer .s4p-tab[aria-selected="true"] { border-color:#f2d33d60; background:#f2d33d09; box-shadow:inset 2px 0 0 #f2d33d; }
.system-brand small { color:#f2d33d; background:#f2d33d0b; }
.price-box { border-color:#f2d33d65; }
.btn--whatsapp { background:#25d366; color:#082312; border-color:#25d366; }
.btn--whatsapp:hover { background:#38e179; color:#082312; border-color:#38e179; box-shadow:0 5px 20px #25d36618; }
.price-box__wa a,.footer__link.js-wa,.footer__social-link.js-wa { color:#25d366; }
.price-box__wa a:hover,.footer__link.js-wa:hover { color:#5bed96; }

/* Um único link abre o rodízio comercial; a foto não promete atendimento do mentor. */
.sales-float {
  position:fixed;
  right:24px;
  bottom:calc(24px + var(--purchase-bar-offset) + env(safe-area-inset-bottom, 0px));
  z-index:150;
  display:flex;
  align-items:center;
  gap:13px;
  max-width:calc(100vw - 40px);
  text-decoration:none;
  border-radius:36px;
  -webkit-tap-highlight-color:transparent;
  transition:bottom .25s ease;
}
.sales-float__message {
  position:relative;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:15px 18px;
  border:1px solid #25d36665;
  border-radius:10px;
  background:#141b19f5;
  box-shadow:0 7px 30px #0005;
  backdrop-filter:blur(12px);
}
.sales-float__message::after {
  content:'';
  position:absolute;
  right:-5px;
  top:calc(50% - 5px);
  width:8px;
  height:8px;
  transform:rotate(45deg);
  background:#141b19;
  border-top:1px solid #25d36665;
  border-right:1px solid #25d36665;
}
.sales-float__message strong { font:500 12px/1.4 var(--font-body); color:#eef3ef; }
.sales-float__message > span { display:flex; align-items:center; gap:15px; color:#25d366; font:500 11px/1.4 var(--font-body); }
.sales-float__portrait { position:relative; display:block; flex-shrink:0; width:64px; height:64px; }
.sales-float__photo { display:block; width:100%; height:100%; overflow:hidden; border:2px solid #25d366; border-radius:50%; background:#101a13; box-shadow:0 7px 28px #0005; }
.sales-float__photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 14%; transform:scale(1.18); transform-origin:50% 20%; }
.sales-float__badge { position:absolute; right:-2px; bottom:-2px; width:25px; height:25px; display:grid; place-items:center; border:2px solid #101a13; border-radius:50%; background:#25d366; color:#072614; }
.sales-float__badge svg { width:15px; height:15px; }
.sales-float:hover .sales-float__message { border-color:#25d366; background:#18271d; }
.sales-float:hover .sales-float__message::after { border-color:#25d366; background:#18271d; }
.sales-float:focus-visible { outline:2px solid #25d366; outline-offset:6px; }
.back-top { bottom:calc(112px + var(--purchase-bar-offset) + env(safe-area-inset-bottom, 0px)); right:34px; }
@media (max-width:900px) {
  .sales-float { right:18px; bottom:calc(16px + var(--purchase-bar-offset) + env(safe-area-inset-bottom, 0px)); }
  .back-top { right:27px; bottom:calc(98px + var(--purchase-bar-offset) + env(safe-area-inset-bottom, 0px)); }
  .mobile-bar { padding-bottom:calc(10px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width:600px) {
  .sales-float { gap:11px; right:16px; }
  .sales-float__portrait { width:54px; height:54px; }
  .sales-float__message { padding:12px 14px; gap:6px; border-radius:9px; }
  .sales-float__message strong { font-size:10px; }
  .sales-float__message > span { font-size:10px; gap:10px; }
  .sales-float__badge { width:23px; height:23px; }
  .sales-float__badge svg { width:13px; height:13px; }
  .back-top { right:26px; bottom:calc(90px + var(--purchase-bar-offset) + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion:reduce) { .sales-float { transition:none; } }

/* Equilíbrio de cor da cena PRF, sem alterar o asset original. */
.hero-scene > img { filter:saturate(.82) brightness(.88); }
@media (max-width:600px) { .hero-scene > img { filter:saturate(.82) brightness(.90); } }


/* Interfaces da Operação: movimentos internos aos ícones, sem deslocar os controles. */
.op-icon { flex-shrink:0; overflow:visible; vertical-align:middle; }
.op-icon .oi-body { fill:#141a20; }
.op-icon .oi-muted { stroke:#bcb396; stroke-width:2.1; }
.op-icon .oi-fill,.op-icon .oi-fold { fill:#f2d33d25; }
.op-icon .oi-check { stroke-width:4; stroke-dasharray:100; }
.op-icon .oi-ink,.op-icon .oi-speech { stroke-dasharray:100; stroke-width:2.4; }
.op-icon .oi-loading { stroke-dasharray:100; stroke-width:3; }
.op-icon .oi-track { stroke:#ffffff18; stroke-width:3; }
.op-icon .oi-play { fill:#f2d33d20; }
.op-icon .oi-days > rect,.op-icon .oi-bars > rect { fill:#f2d33d30; stroke-width:1.6; }
.op-icon .oi-card-back { stroke:#8f8c72; }
.support-icon { width:48px; height:48px; }
.support-icon .op-icon { width:37px; height:37px; }
.learning-card-label .op-icon { width:30px; height:30px; }
.story-eyebrow > .op-icon { color:var(--color-gold); width:43px; height:43px; margin-right:2px; }
.op-icon--plus,.op-icon--x { overflow:visible; }

@media (prefers-reduced-motion:no-preference) {
  .op-icon .oi-paper { animation:oi-paper 6s ease-in-out infinite; transform-origin:48px 55px; }
  .op-icon .oi-fold { animation:oi-fold 6s ease-in-out infinite; transform-box:fill-box; transform-origin:0 100%; }
  .op-icon .oi-download { animation:oi-download 3s ease-in-out infinite; }
  .op-icon .oi-ink,.op-icon .oi-speech { animation:oi-ink 6s ease-in-out infinite; }
  .op-icon .oi-check { animation:oi-draw 5.8s ease-in-out infinite; }
  .op-icon .oi-loading { animation:oi-ink 5.2s ease-in-out infinite; }
  .op-icon .oi-play { animation:oi-play 5.2s ease-in-out infinite; transform-origin:48px 43px; }
  .op-icon .oi-pencil { animation:oi-pencil 4.8s ease-in-out infinite; transform-box:fill-box; transform-origin:center; }
  .op-icon .oi-person-a { animation:oi-person 5.4s ease-in-out infinite; }
  .op-icon .oi-person-b { animation:oi-person 5.4s ease-in-out -2.7s infinite; }
  .op-icon .oi-run-arm { animation:oi-run-arm 2s ease-in-out infinite; transform-origin:51px 34px; }
  .op-icon .oi-run-back { animation:oi-run-arm 2s ease-in-out -1s infinite; transform-origin:49px 36px; }
  .op-icon .oi-run-leg { animation:oi-run-leg 2s ease-in-out infinite; transform-origin:43px 51px; }
  .op-icon .oi-run-forward { animation:oi-run-leg 2s ease-in-out -1s infinite; transform-origin:53px 63px; }
  .op-icon .oi-card-front { animation:oi-card-front 6s ease-in-out infinite; transform-origin:48px 48px; }
  .op-icon .oi-card-back { animation:oi-card-back 6s ease-in-out infinite; transform-origin:48px 48px; }
  .op-icon .oi-orbit { animation:oi-orbit 16s linear infinite; transform-origin:48px 48px; }
  .op-icon .oi-hand { animation:oi-orbit 12s linear infinite; transform-origin:48px 48px; }
  .op-icon .oi-bars > rect { animation:oi-growth 6s ease-in-out infinite; transform-origin:center 73px; }
  .op-icon .oi-bars > rect:nth-child(2) { animation-delay:-.6s; }
  .op-icon .oi-bars > rect:nth-child(3) { animation-delay:-1.2s; }
  .op-icon .oi-days > rect { animation:oi-day 4.8s ease-in-out infinite; }
  .op-icon .oi-days > rect:nth-child(2) { animation-delay:-3.6s; }
  .op-icon .oi-days > rect:nth-child(3) { animation-delay:-2.4s; }
  .op-icon .oi-days > rect:nth-child(4) { animation-delay:-1.2s; }
  .op-icon .oi-check-small { stroke-dasharray:100; animation:oi-small-check 9s ease-in-out infinite; animation-delay:var(--icon-phase,0s); }
  .op-icon .oi-glyph-arrow { animation:oi-arrow 5.8s ease-in-out infinite; animation-delay:var(--icon-phase,0s); }
  .op-icon .oi-glyph-vertical { animation:oi-vertical 5s ease-in-out infinite; }
  .op-icon .oi-glyph-wa { animation:oi-phone 7s ease-in-out infinite; transform-origin:50% 50%; }
  .op-icon .oi-glyph-shield,.op-icon .oi-glyph-lock,.op-icon .oi-glyph-zoom { animation:oi-breathe 6s ease-in-out infinite; transform-origin:50% 50%; }
  .op-icon .oi-glyph-plus,.op-icon .oi-glyph-x { animation:oi-breathe 7s ease-in-out infinite; transform-origin:50% 50%; }
  .op-icon * { animation-play-state:paused!important; }
  .op-icon.is-icon-visible * { animation-play-state:running!important; }

  /* The link's hit area stays fixed while the portrait, halo and message move. */
  .sales-float__portrait::before { content:''; position:absolute; inset:-5px; border:1px solid #25d36670; border-radius:50%; pointer-events:none; animation:contact-ring 6.5s ease-out infinite; }
  .sales-float__portrait { animation:contact-lift 6.5s ease-in-out infinite; }
  .sales-float__message { animation:contact-message 6.5s ease-in-out infinite; }
  .sales-float__portrait,.sales-float__portrait::before,.sales-float__message { animation-play-state:paused; }
  .sales-float.is-icon-visible .sales-float__portrait,.sales-float.is-icon-visible .sales-float__portrait::before,.sales-float.is-icon-visible .sales-float__message { animation-play-state:running; }
  .sales-float:hover *,.sales-float:focus-within *,.sales-float:hover .sales-float__portrait::before,.sales-float:focus-within .sales-float__portrait::before { animation-play-state:paused!important; }
}
@keyframes oi-paper { 0%,100%{transform:translateY(0) rotate(-2deg)} 45%{transform:translateY(-3px) rotate(2deg)} }
@keyframes oi-fold { 0%,15%,80%,100%{transform:scaleX(1)} 45%{transform:scaleX(.2) skewY(-12deg)} }
@keyframes oi-download { 0%,100%{transform:translateY(-2px)} 55%{transform:translateY(2px)} }
@keyframes oi-ink { 0%,10%{stroke-dashoffset:100;opacity:.45} 45%,85%,100%{stroke-dashoffset:0;opacity:1} }
@keyframes oi-draw { 0%,15%{stroke-dashoffset:100} 50%,95%,100%{stroke-dashoffset:0} }
@keyframes oi-play { 0%,100%{transform:scale(.93);fill:#f2d33d20} 45%,65%{transform:scale(1.07);fill:#f2d33d60} }
@keyframes oi-pencil { 0%,100%{transform:translate(0,0) rotate(0)} 20%{transform:translate(-4px,5px) rotate(-7deg)} 40%{transform:translate(2px,1px) rotate(5deg)} 70%{transform:translate(-2px,4px) rotate(-3deg)} }
@keyframes oi-person { 0%,100%{transform:translateY(0)} 45%{transform:translateY(-3px)} }
@keyframes oi-run-arm { 0%,100%{transform:rotate(-11deg)} 50%{transform:rotate(11deg)} }
@keyframes oi-run-leg { 0%,100%{transform:rotate(9deg)} 50%{transform:rotate(-9deg)} }
@keyframes oi-card-front { 0%,100%{transform:translate(0,0) rotate(0)} 40%,55%{transform:translate(4px,-4px) rotate(5deg)} 75%{transform:translate(-2px,2px) rotate(-2deg)} }
@keyframes oi-card-back { 0%,100%{transform:translate(0,0)} 40%,55%{transform:translate(-3px,4px) rotate(-4deg)} }
@keyframes oi-orbit { to {transform:rotate(360deg)} }
@keyframes oi-growth { 0%,100%{transform:scaleY(.55);fill:#f2d33d20} 50%,75%{transform:scaleY(1);fill:#f2d33d80} }
@keyframes oi-day { 0%,100%{fill:#f2d33d15} 30%,50%{fill:#f2d33d;stroke:#fff0b3} }
@keyframes oi-small-check { 0%,70%,100%{stroke-dashoffset:0;opacity:1} 77%{stroke-dashoffset:100;opacity:.5} 90%{stroke-dashoffset:0;opacity:1} }
@keyframes oi-arrow { 0%,65%,100%{transform:translateX(0)} 75%{transform:translateX(2px)} 88%{transform:translateX(0)} }
@keyframes oi-vertical { 0%,100%{transform:translateY(0)} 50%{transform:translateY(2px)} }
@keyframes oi-phone { 0%,70%,100%{transform:rotate(0)} 77%{transform:rotate(-9deg)} 83%{transform:rotate(8deg)} 90%{transform:rotate(-4deg)} }
@keyframes oi-breathe { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(.94);opacity:.7} }
@keyframes contact-ring { 0%,50%{transform:scale(.94);opacity:0} 58%{opacity:.6} 85%,100%{transform:scale(1.2);opacity:0} }
@keyframes contact-lift { 0%,50%,100%{transform:translateY(0)} 65%,80%{transform:translateY(-3px)} }
@keyframes contact-message { 0%,50%,100%{transform:translateY(0);border-color:#25d36665} 65%,80%{transform:translateY(-2px);border-color:#25d366ba} }

/* Recorte visual só na vitrine: os arquivos e a ampliação ficam completos. */
.pdf-composition .pdf-sheet { height:auto; background:#050608; border:1px solid #bbae7233; }
.pdf-composition .pdf-sheet--back { aspect-ratio:977/1367; }
.pdf-composition .pdf-sheet--front { aspect-ratio:830/1181; width:39%; left:43%; }
.pdf-composition .pdf-sheet img { position:absolute; object-fit:fill; max-width:none; background:#050608; }
.pdf-composition .pdf-sheet--back img { width:100.5118%;height:101.6825%;left:-.2047%;top:-.1463%; }
.pdf-composition .pdf-sheet--front img { width:118.3133%;height:117.6969%;left:-9.0362%;top:-5.8425%; }
@media (max-width:900px) { .support-icon { width:44px; height:44px; } .support-icon .op-icon { width:34px; height:34px; } }
@media (max-width:600px) { .story-eyebrow > .op-icon { width:38px; height:38px; } .learning-card-label .op-icon { width:28px; height:28px; } .pdf-composition .pdf-sheet--front { width:44%; left:39%; } }
@media (prefers-reduced-motion:reduce) { .op-icon *,.sales-float__portrait,.sales-float__portrait::before,.sales-float__message { animation:none!important; } }
html.motion-page-hidden .op-icon *,html.motion-page-hidden .sales-float__portrait,html.motion-page-hidden .sales-float__portrait::before,html.motion-page-hidden .sales-float__message { animation-play-state:paused!important; }


/* Pitch de encerramento: valor dos recursos -> oferta completa. */
#investimento.value-pitch { background:radial-gradient(ellipse at 80% 33%,#f2d33d05,transparent 50%),#0d1014; border-top:1px solid #ffffff0e; }
.pitch-header { max-width:920px; margin-bottom:54px; }
.pitch-header .section__title { font-size:clamp(32px,3.5vw,47px); }
.pitch-header .section__subtitle { max-width:650px; }
.invest.pitch-layout { grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr); gap:42px; align-items:start; }
.pitch-reference { gap:0; min-width:0; }
.pitch-list-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; padding:0 0 20px; border-bottom:1px solid #ffffff1f; }
.pitch-list-heading > span:first-child { font-size:17px; font-weight:500; letter-spacing:-.025em; color:#e8ebef; }
.pitch-list-heading > span:last-child { color:#98a3b1; text-align:right; font-size:9px; line-height:1.65; }
.pitch-items { display:grid; }
.pitch-item { display:grid; grid-template-columns:39px minmax(0,1fr) auto; gap:17px; align-items:center; padding:22px 0; border-bottom:1px solid #ffffff0f; }
.pitch-item-icon { display:grid; place-items:center; color:#f2d33d; }
.pitch-item-icon .op-icon { width:34px; height:34px; }
.pitch-item-description h3 { color:#dce1e8; font-size:14px; line-height:1.4; font-weight:500; letter-spacing:-.02em; }
.pitch-item-description p { color:#8f9baa; font-size:10px; line-height:1.75; margin-top:6px; max-width:340px; }
.pitch-item-value { white-space:nowrap; color:#bec6d1; font-size:16px; letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.pitch-item--system { padding:25px 18px; margin:16px -18px 0; border:1px solid #f2d33d3b; border-radius:6px; background:#f2d33d05; }
.pitch-item--system h3,.pitch-item--system .pitch-item-value { color:#f2d33d; }
.pitch-item--system .pitch-item-value { font-size:22px; }
.pitch-system-included { display:block; margin-top:12px; font-size:7px; letter-spacing:.07em; color:#c0b271; }
.pitch-total { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:29px 0 0; }
.pitch-total > span { font-size:14px; line-height:1.5; font-weight:500; color:#c4ccd7; }
.pitch-total small { display:block; margin-top:5px; color:#8a96a5; font-size:9px; font-weight:400; }
.pitch-total > strong { font-size:clamp(30px,3.2vw,42px); font-weight:500; letter-spacing:-.05em; color:#dce1e8; white-space:nowrap; }
.pitch-reference-note { color:#86909e; font-size:9px; line-height:1.8; margin-top:19px; max-width:530px; }
.pitch-offer { position:sticky; top:110px; }
.price-box.pitch-price { padding:36px 29px 28px; border-color:#f2d33d66; background:radial-gradient(ellipse at 50% 0,#f2d33d08,transparent 60%),#15191f; }
.pitch-offer-tag { display:inline-block; padding:7px 10px; margin-bottom:24px; border:1px solid #f2d33d30; border-radius:4px; background:#f2d33d08; font-size:8px; letter-spacing:.06em; color:#d9c465; }
.pitch-price .price-box__name { font-size:27px; line-height:1.25; margin-bottom:25px; }
.pitch-offer-intro { font-size:11px; color:#9da7b5; margin-bottom:6px; }
.pitch-price .price-box__current { font-size:clamp(65px,5.6vw,81px); line-height:1.1; font-weight:500; letter-spacing:-.065em; gap:9px; margin:10px 0 7px; }
.pitch-price .price-box__current small { font-size:20px; color:#f2d33d; }
.pitch-cash-label { font-size:11px; color:#b9c2cf; }
.pitch-installments { font-size:12px; color:#98a3b1; margin-top:20px; }
.pitch-installments strong { color:#e6eaf0; font-weight:500; }
.pitch-price .price-box__fine { font-size:9px; margin-top:6px; }
.pitch-difference { margin:24px 0; border-block:1px solid #f2d33d25; padding:19px 8px; background:#f2d33d03; }
.pitch-difference strong { display:block; color:#f2d33d; font-weight:500; font-size:23px; letter-spacing:-.04em; }
.pitch-difference span { display:block; margin-top:7px; color:#a1acbb; font-size:9px; line-height:1.7; }
.pitch-assurances { display:grid; gap:12px; margin:0 0 26px; text-align:left; }
.pitch-assurances li { display:flex; gap:9px; align-items:center; color:#b8c3d1; font-size:10px; line-height:1.6; }
.pitch-assurances svg { color:#f2d33d; flex-shrink:0; }
.pitch-price .btn--lg { padding:18px 13px; font-size:11px; }
.pitch-price .price-box__secure { font-size:7px; gap:10px; margin-top:16px; }
.pitch-price .price-box__wa { font-size:10px; line-height:1.8; margin-top:22px; }
.pitch-price .price-box__wa a { display:inline-block; }
.pitch-access { margin-top:38px; border-block:1px solid #ffffff15; }
.pitch-access > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; cursor:pointer; list-style:none; padding:23px 0; font-size:12px; color:#b1becd; }
.pitch-access > summary::-webkit-details-marker { display:none; }
.pitch-access > summary .op-icon { color:#f2d33d; }
.pitch-access[open] > summary .op-icon { rotate:45deg; }
.pitch-access > div { padding:4px 0 30px; }
.pitch-access ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.pitch-access li { display:flex; align-items:start; gap:15px; }
.pitch-access li > b { font:400 11px/1.6 var(--font-body); color:#f2d33d; }
.pitch-access li strong { display:block; font-size:12px; font-weight:500; color:#dce3ed; line-height:1.6; margin-bottom:6px; }
.pitch-access li span { font-size:10px; line-height:1.7; color:#9ca8b8; }
.value-pitch .guarantee { margin-top:35px; border-top:0; padding-top:0; }
@media (max-width:1120px) {
  .invest.pitch-layout { gap:30px; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); }
  .pitch-item { grid-template-columns:32px minmax(0,1fr) auto; gap:11px; }
  .pitch-item-icon .op-icon { width:29px; height:29px; }
  .pitch-item-description h3 { font-size:13px; }
  .pitch-item-description p { font-size:9px; }
  .pitch-item--system { margin-inline:-10px; padding-inline:10px; }
  .pitch-item--system .pitch-item-value { font-size:19px; }
  .price-box.pitch-price { padding:30px 23px 25px; }
  .pitch-price .price-box__name { font-size:24px; }
}
@media (max-width:900px) {
  .invest.pitch-layout { grid-template-columns:1fr; gap:35px; max-width:650px; margin-inline:auto; }
  .invest.pitch-layout > .pitch-reference { order:0; }
  .invest.pitch-layout > .pitch-offer { order:1; }
  .pitch-offer { position:static; }
  .pitch-header { margin-bottom:40px; }
  .pitch-item-description h3 { font-size:15px; }
  .pitch-item-description p { font-size:11px; }
  .pitch-item { gap:16px; grid-template-columns:38px minmax(0,1fr) auto; }
  .pitch-item-icon .op-icon { width:33px; height:33px; }
  .pitch-item--system { margin-inline:0; padding:23px 18px; }
  .pitch-item--system .pitch-item-value { font-size:23px; }
  .pitch-price { max-width:480px; margin-inline:auto; }
  .pitch-price .price-box__name { font-size:28px; }
  .pitch-price .price-box__current { font-size:80px; }
  .pitch-assurances { width:max-content; max-width:100%; margin-inline:auto; }
}
@media (max-width:600px) {
  .pitch-header { text-align:left; margin-bottom:35px; }
  .pitch-header .section__title { font-size:31px; line-height:1.2; }
  .pitch-header .section__subtitle { font-size:12px; }
  .pitch-list-heading { padding-bottom:17px; }
  .pitch-list-heading > span:first-child { font-size:15px; }
  .pitch-list-heading > span:last-child { font-size:8px; }
  .pitch-item { gap:11px; grid-template-columns:30px minmax(0,1fr) auto; padding-block:20px; }
  .pitch-item-icon .op-icon { width:29px; height:29px; }
  .pitch-item-description h3 { font-size:12px; line-height:1.5; }
  .pitch-item-description p { font-size:9px; line-height:1.75; }
  .pitch-item-value { font-size:13px; }
  .pitch-item--system { padding:22px 14px; grid-template-columns:29px minmax(0,1fr); }
  .pitch-item--system .pitch-item-value { grid-column:2; font-size:26px; margin-top:2px; }
  .pitch-system-included { font-size:6px; line-height:1.7; }
  .pitch-total { gap:15px; padding-top:25px; }
  .pitch-total > span { font-size:12px; }
  .pitch-total small { font-size:8px; max-width:145px; }
  .pitch-total > strong { font-size:34px; }
  .pitch-reference-note { font-size:8px; line-height:1.8; }
  .price-box.pitch-price { padding:28px 22px 25px; }
  .pitch-offer-tag { font-size:7px; margin-bottom:20px; }
  .pitch-price .price-box__name { font-size:25px; }
  .pitch-price .price-box__current { font-size:76px; }
  .pitch-price .price-box__current small { font-size:18px; }
  .pitch-difference { padding:18px 0; }
  .pitch-difference strong { font-size:25px; }
  .pitch-difference span { font-size:9px; }
  .pitch-assurances { margin-bottom:23px; }
  .pitch-assurances li { font-size:10px; }
  .pitch-price .btn--lg { font-size:10px; padding-inline:10px; }
  .pitch-price .price-box__secure { font-size:6px; gap:7px; }
  .pitch-price .price-box__wa { font-size:9px; }
  .pitch-access > summary { font-size:11px; padding-block:21px; }
  .pitch-access ol { grid-template-columns:1fr; gap:23px; }
}
@media (max-width:360px) {
  .pitch-header .section__title { font-size:28px; }
  .pitch-item { gap:8px; grid-template-columns:25px minmax(0,1fr) auto; }
  .pitch-item-icon .op-icon { width:25px; height:25px; }
  .pitch-item-description h3 { font-size:11px; }
  .pitch-item-description p { font-size:8px; }
  .pitch-item-value { font-size:12px; }
  .pitch-total > strong { font-size:30px; }
}


/* Red strike and green marker loop: two intentional handwritten accents. */
.pitch-total > .pitch-marked-reference { position:relative; display:inline-block; isolation:isolate; }
.pitch-offer-amount { position:relative; display:inline-flex; align-items:baseline; gap:9px; isolation:isolate; }
.price-annotation { position:absolute; display:block; max-width:none; overflow:visible; pointer-events:none; fill:none; z-index:2; }
.price-annotation--cross { left:-9px; top:0; width:calc(100% + 18px); height:100%; color:#f15b63; }
.price-annotation--circle { left:-25px; top:-14px; width:calc(100% + 50px); height:calc(100% + 28px); color:#25d366; transform:rotate(-4deg); }
.price-ink { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; stroke-dasharray:1; stroke-dashoffset:0; }
.price-ink--cross-one { stroke-width:3.2px; }
.price-ink--cross-two { stroke-width:3.6px; }
.price-ink--grain-one,.price-ink--grain-two { stroke-width:1.05px; opacity:.5; }
.price-ink--circle { stroke-width:3.5px; }
.price-ink--circle-grain { stroke-width:1.2px; opacity:.55; }
.price-ink--circle-tail { stroke-width:1.4px; opacity:.7; }
.pitch-price .price-box__current { margin-top:21px; margin-bottom:18px; }
@media (prefers-reduced-motion:no-preference) {
  .price-marks-ready [data-price-annotation] .price-ink { stroke-dashoffset:1; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink { animation:price-hand-draw 1.5s cubic-bezier(.35,.05,.36,1) both; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--cross-two { animation-delay:.9s; animation-duration:1.4s; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--grain-one { animation-delay:.16s; animation-duration:1.45s; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--grain-two { animation-delay:1.06s; animation-duration:1.3s; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--circle { animation-delay:.25s; animation-duration:3s; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--circle-grain { animation-delay:2.2s; animation-duration:1.2s; }
  .price-marks-ready [data-price-annotation].is-marked .price-ink--circle-tail { animation-delay:2.9s; animation-duration:.85s; }
}
@keyframes price-hand-draw { from {stroke-dashoffset:1} to {stroke-dashoffset:0} }
@media (max-width:600px) {
  .price-annotation--cross { left:-6px; width:calc(100% + 12px); }
  .price-annotation--circle { left:-22px; width:calc(100% + 44px); }
  .price-ink--cross-one { stroke-width:2.8px; }
  .price-ink--cross-two { stroke-width:3.1px; }
  .price-ink--circle { stroke-width:3.2px; }
}
@media (prefers-reduced-motion:reduce) { [data-price-annotation] .price-ink { animation:none!important; stroke-dashoffset:0!important; } }


/* Mobile: image starts alongside the headline and fills a shorter hero. */
@media (max-width:600px) {
  .hero--immersive { min-height:660px; }
  .hero--immersive .hero-immersive-inner { padding-top:118px; }
  .hero-scene { inset:0; height:100%; }
  .hero-scene > img {
    top:54px;
    bottom:auto;
    width:100%;
    height:calc(100% - 54px);
    object-fit:cover;
    object-position:81% 35%;
  }
  .hero-scene-shade {
    background:
      linear-gradient(90deg,#0d0f12ef 0%,#0d0f12bd 36%,#0d0f1250 72%,#0d0f122b 100%),
      linear-gradient(180deg,#0d0f12 0%,#0d0f124a 26%,#0d0f1208 54%,#0d0f12 100%);
  }
  .hero--immersive .hero__subtitle { color:#c2c8d1; }
}
@media (max-width:380px) {
  .hero--immersive { min-height:640px; }
  .hero--immersive .hero-immersive-inner { padding-top:111px; }
  .hero-scene > img { object-position:82% 35%; }
}


/* Quiet sci-fi frame: black surfaces, fine gold lines and geometric corners. */
.vsl-section { padding-block:78px 72px; background:radial-gradient(ellipse at 50% 56%,#f2d33d06,transparent 67%),#0b0e12; border-bottom:1px solid #ffffff0c; }
.vsl-heading { text-align:center; margin:0 auto 36px; max-width:760px; }
.vsl-heading .section__eyebrow { font-size:8px; margin-bottom:17px; letter-spacing:.16em; }
.vsl-heading .section__title { font-size:clamp(31px,3.1vw,42px); margin-bottom:17px; }
.vsl-heading p { color:#a0aab7; font-size:13px; line-height:1.8; }
.vsl-frame { position:relative; max-width:1010px; margin:0 auto; padding:0 12px; border:1px solid #f2d33d35; border-radius:9px; background:linear-gradient(135deg,#181c1c,#070a0e 40%,#111613); box-shadow:0 20px 65px #0006,0 0 50px #e4c95b05; }
.vsl-frame::before { content:''; position:absolute; left:calc(50% - 39px); top:-1px; width:78px; height:2px; background:linear-gradient(90deg,transparent,#e8cf60,transparent); pointer-events:none; }
.vsl-frame-bar { display:flex; align-items:center; justify-content:space-between; gap:20px; height:39px; padding-inline:8px; color:#a2a898; font:500 8px/1.4 var(--font-body); letter-spacing:.1em; }
.vsl-frame-bar > span:first-child { display:flex; align-items:center; gap:9px; color:#d9c66e; }
.vsl-frame-bar i { display:block; width:4px; height:4px; border:1px solid #d9c66e; transform:rotate(45deg); }
.vsl-frame-bar > span:last-child { color:#8f978e; font-size:7px; }
.vsl-corner { position:absolute; width:21px; height:21px; pointer-events:none; border-color:#ecd875b3; border-style:solid; z-index:2; }
.vsl-corner--tl { top:-1px; left:-1px; border-width:2px 0 0 2px; border-radius:9px 0 0 0; }
.vsl-corner--tr { top:-1px; right:-1px; border-width:2px 2px 0 0; border-radius:0 9px 0 0; }
.vsl-corner--bl { bottom:-1px; left:-1px; border-width:0 0 2px 2px; border-radius:0 0 0 9px; }
.vsl-corner--br { bottom:-1px; right:-1px; border-width:0 2px 2px 0; border-radius:0 0 9px 0; }
.vsl-player { position:relative; aspect-ratio:16/9; width:100%; overflow:hidden; background:#030507; border:1px solid #ffffff12; border-radius:3px; }
.vsl-start { position:absolute; inset:0; display:block; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.vsl-start > img { display:block; width:100%; height:100%; object-fit:cover; }
.vsl-start-shade { position:absolute; inset:0; background:linear-gradient(180deg,#03050a10,#03050a30 42%,#03050a7a); transition:background .3s ease; }
.vsl-start-action { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:17px; }
.vsl-play { position:relative; display:grid; place-items:center; width:80px; height:80px; border-radius:50%; background:#f2d33d; border:1px solid #fbe684; color:#11170f; box-shadow:0 7px 35px #0008; transition:transform .3s ease,background .3s ease; }
.vsl-play::before { content:''; position:absolute; inset:-8px; border:1px solid #f2d33d70; border-radius:50%; }
.vsl-play .op-icon { width:34px; height:34px; margin-left:3px; }
.vsl-play .oi-play { fill:#11170f; transform-origin:48px 48px; }
.vsl-start-label { padding:8px 13px; border-radius:4px; background:#090d13db; color:#eef1e8; font-size:11px; letter-spacing:.015em; border:1px solid #e3d6a12b; backdrop-filter:blur(7px); }
.vsl-start:hover .vsl-play,.vsl-start:focus-visible .vsl-play { transform:scale(1.06); background:#ffe35c; }
.vsl-start:focus-visible { outline:2px solid #f2d33d; outline-offset:-5px; }
.vsl-player iframe { position:absolute; inset:0; width:100%; height:100%; border:0; display:block; background:#000; }
.vsl-frame-base { display:flex; gap:9px; align-items:center; justify-content:center; height:21px; }
.vsl-frame-base span { width:35px; height:1px; background:#a08f4538; }
.vsl-frame-base i { width:30px; height:2px; background:#d0b74b70; }
.vsl-actions { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:22px; margin-top:28px; }
.vsl-offer-link { gap:23px; }
.vsl-youtube-link { display:inline-flex; align-items:center; gap:9px; font-size:11px; color:#9ea9b6; min-height:42px; }
.vsl-youtube-link:hover { color:#e7d484; }
.vsl-player.is-loading::after { content:''; position:absolute; z-index:2; left:calc(50% - 13px); top:calc(50% - 13px); width:26px; height:26px; border:2px solid #f2d33d35; border-top-color:#f2d33d; border-radius:50%; animation:vsl-loading .8s linear infinite; pointer-events:none; }
@keyframes vsl-loading { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:no-preference) { .vsl-play .oi-play { animation:vsl-play-breathe 5.2s ease-in-out infinite; } }
@keyframes vsl-play-breathe { 0%,100% {transform:scale(.94)} 50% {transform:scale(1.05)} }
@media(max-width:1120px) { .nav__links { gap:17px; } .nav__link { font-size:11px; } }
@media(max-width:600px) {
  .vsl-section { padding-block:51px 49px; }
  .vsl-section > .container { padding-inline:18px; }
  .vsl-heading { margin-bottom:27px; padding-inline:5px; }
  .vsl-heading .section__title { font-size:30px; line-height:1.18; margin-bottom:14px; }
  .vsl-heading .section__eyebrow { font-size:7px; margin-bottom:15px; }
  .vsl-heading p { font-size:11px; }
  .vsl-frame { padding-inline:6px; border-radius:7px; }
  .vsl-frame-bar { height:31px; padding-inline:6px; font-size:6px; gap:12px; }
  .vsl-frame-bar > span:last-child { font-size:6px; }
  .vsl-frame-base { height:16px; }
  .vsl-corner { width:15px; height:15px; }
  .vsl-play { width:54px; height:54px; }
  .vsl-play::before { inset:-5px; }
  .vsl-play .op-icon { width:27px; height:27px; }
  .vsl-start-action { gap:12px; }
  .vsl-start-label { font-size:8px; padding:6px 9px; }
  .vsl-actions { gap:9px 19px; margin-top:23px; }
  .vsl-offer-link { font-size:11px; padding:15px 20px; }
  .vsl-youtube-link { font-size:9px; }
}
@media(prefers-reduced-motion:reduce) { .vsl-player.is-loading::after,.vsl-play .oi-play { animation:none!important; } }


/* The video occupies the right half of the hero; its frame remains unchanged. */
.hero--with-vsl .hero-immersive-inner { display:grid; grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr); gap:46px; align-items:center; }
.hero--with-vsl .hero__content { width:auto; max-width:none; }
.hero--with-vsl .hero__title { font-size:clamp(43px,4.3vw,62px); }
.hero-vsl { min-width:0; width:100%; position:relative; scroll-margin-top:105px; }
.hero-vsl .vsl-frame { width:100%; max-width:none; padding-inline:9px; background:linear-gradient(135deg,#151917fa,#080c11fa 45%,#151910fa); box-shadow:0 26px 75px #0009,0 0 45px #f2d33d08; }
.hero-vsl .vsl-frame-bar { height:35px; padding-inline:7px; font-size:7px; }
.hero-vsl .vsl-frame-bar > span:last-child { font-size:6px; }
.hero-vsl .vsl-frame-base { height:18px; }
.hero-vsl-toolbar { display:flex; align-items:center; justify-content:flex-end; gap:16px; margin-top:14px; }
.hero-vsl-toolbar .vsl-youtube-link { font-size:10px; color:#b8c0c9; }
.hero-vsl .vsl-player { background:#06090d url('../assets/vsl-paulo-prf.jpg') center/cover no-repeat; }
.hero-vsl[data-player-error="true"] .vsl-youtube-link { color:#f2d33d; }
@media(max-width:1120px) {
  .hero--with-vsl .hero-immersive-inner { gap:30px; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); }
  .hero--with-vsl .hero__title { font-size:49px; }
  .hero--with-vsl .hero__subtitle { font-size:14px; }
  .hero-vsl-toolbar .vsl-youtube-link { font-size:9px; }
}
@media(max-width:900px) {
  .hero--immersive.hero--with-vsl { min-height:0; padding:126px 0 44px; display:block; }
  .hero--with-vsl .hero-immersive-inner { grid-template-columns:1fr; gap:34px; padding-top:0; padding-bottom:0; }
  .hero--with-vsl .hero__content { width:100%; max-width:600px; padding:0; }
  .hero--with-vsl .hero__title { font-size:53px; }
  .hero--with-vsl .hero-explore { display:none; }
  .hero-vsl { max-width:680px; margin-inline:auto; }
  .hero--with-vsl .hero-scene { max-height:680px; }
}
@media(max-width:600px) {
  .hero--immersive.hero--with-vsl { padding-top:115px; padding-bottom:34px; }
  .hero--with-vsl .hero-immersive-inner { gap:27px; }
  .hero--with-vsl .hero__title { font-size:46px; }
  .hero--with-vsl .hero__subtitle { font-size:13px; }
  .hero--with-vsl .hero-scene { max-height:560px; }
  .hero-vsl .vsl-frame { padding-inline:6px; }
  .hero-vsl .vsl-frame-bar { height:29px; font-size:6px; }
  .hero-vsl .vsl-frame-base { height:15px; }
  .hero-vsl-toolbar { gap:12px; margin-top:11px; }
  .hero-vsl-toolbar .vsl-youtube-link { font-size:8px; min-height:38px; gap:7px; }
}
@media(max-width:360px) { .hero--with-vsl .hero__title { font-size:41px; } }


/* Reserve the original video space so docking never shifts the page. */
.vsl-drag-handle { display:none; }
.hero-vsl.is-floating .vsl-frame-bar { cursor:grab; touch-action:none; user-select:none; }
.hero-vsl.is-floating .vsl-drag-handle { display:grid; place-items:center; flex:none; width:18px; height:30px; padding:0; border:0; background:none; color:#d8d5c3; cursor:grab; touch-action:none; }
.hero-vsl.is-floating .vsl-drag-handle:focus-visible { outline:2px solid #f2d33d; outline-offset:2px; border-radius:3px; }
.hero-vsl.is-dragging .vsl-frame-bar,.hero-vsl.is-dragging .vsl-drag-handle { cursor:grabbing; }
.hero-vsl.is-dragging iframe { pointer-events:none; }
.vsl-frame-slot { position:relative; width:100%; padding-top:calc((100% - 20px) * .5625 + 55px); }
.hero-vsl .vsl-frame-slot > .vsl-frame { position:absolute; inset:0; width:100%; height:100%; }
.vsl-mini-controls { display:none; align-items:center; gap:3px; margin-left:auto; }
.vsl-mini-controls button { display:grid; place-items:center; width:30px; height:30px; padding:0; border:1px solid #ffffff18; border-radius:4px; background:#141a17; color:#d8d5c3; }
.vsl-mini-controls button:hover,.vsl-mini-controls button:focus-visible { color:#f2d33d; border-color:#f2d33d80; background:#242819; }
.vsl-mini-controls svg { width:15px; height:15px; }
html.vsl-floating #hero { z-index:180; overflow:visible; }
.hero-vsl.is-floating .vsl-frame-slot > .vsl-frame {
  position:fixed;
  inset:auto;
  left:24px;
  bottom:calc(24px + var(--purchase-bar-offset,0px) + env(safe-area-inset-bottom,0px));
  width:clamp(240px,32vw,360px);
  height:auto;
  padding-inline:6px;
  z-index:180;
  border-color:#d4c26b80;
  box-shadow:0 16px 60px #000b,0 0 0 1px #070a0d;
}
.hero-vsl.is-floating .vsl-mini-controls { display:flex; }
.hero-vsl.is-floating .vsl-frame-bar { height:39px; gap:10px; padding-inline:3px; }
.hero-vsl.is-floating .vsl-frame-bar > span:last-of-type { display:none; }
.hero-vsl.is-floating .vsl-frame-base { height:9px; }
.hero-vsl.is-floating .vsl-corner { width:15px; height:15px; }
@media(max-width:900px) {
  .hero-vsl.is-floating .vsl-frame-slot > .vsl-frame { left:18px; bottom:calc(18px + var(--purchase-bar-offset,0px) + env(safe-area-inset-bottom,0px)); }
}
@media(max-width:600px) {
  .vsl-frame-slot { padding-top:calc((100% - 14px) * .5625 + 46px); }
  .hero-vsl.is-floating .vsl-frame-slot > .vsl-frame {
    left:auto;
    right:12px;
    top:calc(var(--nav-h) + 12px + env(safe-area-inset-top,0px));
    bottom:auto;
    width:min(64vw,250px);
  }
  .hero-vsl.is-floating .vsl-frame-bar { height:37px; font-size:6px; }
  .hero-vsl.is-floating .vsl-mini-controls button { width:29px; height:29px; }
}


/* The hero contains only the larger, centered framed player. */
.hero--immersive.hero--with-vsl { display:block; min-height:0; padding:calc(var(--nav-h) + 34px) 0 34px; }
.hero--with-vsl .hero-immersive-inner { display:block; padding-top:0; padding-bottom:0; }
.hero--with-vsl .hero-vsl { width:100%; max-width:min(1100px,calc((100svh - 260px) * 1.77778)); margin-inline:auto; }
.hero--with-vsl .hero-scene { opacity:.32; max-height:none; }
.vsl-player > #hero-vsl-player { position:absolute; inset:0; display:block; width:100%; height:100%; }
.hero-vsl[data-controls-unavailable="true"] .vsl-youtube-link { color:#f2d33d; }
@media(max-width:900px) {
  .hero--immersive.hero--with-vsl { padding-top:calc(var(--nav-h) + 28px); padding-bottom:30px; }
  .hero--with-vsl .hero-vsl { max-width:720px; }
}
@media(max-width:600px) {
  .hero--immersive.hero--with-vsl { padding-top:calc(var(--nav-h) + 22px); padding-bottom:26px; }
  .hero--with-vsl .hero-immersive-inner { padding-inline:12px; }
  .hero--with-vsl .hero-vsl { max-width:none; }
}

/* Mobile contact keeps only the portrait and WhatsApp badge. */
@media (max-width:600px) { .sales-float { gap:0; } .sales-float__message { display:none; } }


/* Approved dark-gold mentor portraits shared with the PMBA + PMPE landing. */
.mentor--paulo-darkgold .mentor__photo,
.mentor--rodrigo-darkgold .mentor__photo {
  background: radial-gradient(ellipse at 50% 36%,#2c2414 0%,#11120e 43%,#080a0b 82%);
}
.mentor--paulo-darkgold .mentor__photo img,
.mentor--rodrigo-darkgold .mentor__photo img {
  object-fit: cover;
  object-position: center 24%;
  filter: none;
  transform: none!important;
  transform-origin: center center;
}
.mentor--paulo-darkgold .mentor__photo::after,
.mentor--rodrigo-darkgold .mentor__photo::after {
  height: 18%;
  background: linear-gradient(0deg,#11151850,transparent);
}
