  /* ===== TOKENS ===== */
  :root{
    /* Paleta extraída do flyer */
    --void:#040303;
    --midnight:#0A0706;
    --char:#15100C;
    --ash:#1F1812;
    --slate:#2A2218;

    --ember:#FF6B1A;
    --ember-hot:#FF8533;
    --ember-deep:#C8480F;
    --ember-burnt:#8B2F00;
    --gold:#FFB347;
    --gold-pale:#FFD89B;
    --amber:#F5A742;
    --plasma:#FFE0BB;
    --bone:#EDE3D3;
    --pearl:#F5EFE6;
    --smoke:#857A6E;
    --line:rgba(255,107,26,.22);
    --line-soft:rgba(255,224,187,.08);
    --line-hot:rgba(255,107,26,.45);

    /* Tipografia */
    --display:'Roboto', 'Arial Narrow', sans-serif;
    --display-alt:'Oswald', 'Arial Narrow', sans-serif;
    --body:'Manrope', system-ui, sans-serif;
    --mono:'JetBrains Mono', 'Courier New', monospace;

    --max:1340px;
    --gutter:clamp(20px, 4.5vw, 64px);
  }

  *,*::before,*::after{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    background:var(--void);
    color:var(--bone);
    font-family:var(--body);
    font-weight:400;
    line-height:1.6;
    letter-spacing:-0.005em;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    overflow-x:hidden;
    position:relative;
  }

  /* Ambient glow + light rays (matching flyer) */
  body::before{
    content:"";
    position:fixed; inset:0;
    background:
      radial-gradient(900px 700px at 88% -5%, rgba(255,107,26,.22), transparent 55%),
      radial-gradient(700px 500px at 105% 35%, rgba(255,107,26,.10), transparent 60%),
      radial-gradient(800px 500px at -15% 20%, rgba(255,107,26,.07), transparent 55%);
    pointer-events:none;
    z-index:0;
  }
  /* Grain texture */
  body::after{
    content:"";
    position:fixed; inset:0;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.85  0 0 0 0 0.6  0 0 0 0.05 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
    pointer-events:none;
    z-index:1;
    opacity:.55;
    mix-blend-mode:overlay;
  }

  ::selection{background:var(--ember); color:var(--void)}

  /* ===== LIGHT RAYS BACKGROUND (subtle diagonal beams) ===== */
  .light-rays{
    position:fixed;
    top:0; right:0;
    width:60vw; height:100vh;
    pointer-events:none;
    z-index:0;
    overflow:hidden;
  }
  .light-rays::before,
  .light-rays::after{
    content:"";
    position:absolute;
    top:-20%;
    width:2px;
    height:140%;
    background:linear-gradient(180deg, transparent 0%, rgba(255,107,26,.25) 30%, rgba(255,180,71,.15) 50%, transparent 100%);
    transform:rotate(15deg);
    transform-origin:top;
  }
  .light-rays::before{right:18%; opacity:.6}
  .light-rays::after{right:35%; opacity:.35; width:1px}

  /* ===== NAV ===== */
  .nav{
    position:fixed; top:0; left:0; right:0;
    z-index:50;
    padding:18px var(--gutter);
    display:flex; align-items:center; justify-content:space-between;
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    background:linear-gradient(180deg, rgba(4,3,3,.85) 0%, rgba(4,3,3,.5) 100%);
    border-bottom:1px solid var(--line-soft);
    transition:padding .25s ease;
  }
  .nav.scrolled{padding:12px var(--gutter)}

  /* Logo — two stacked cards (matching flyer) */
  .brand{display:flex; align-items:center; gap:14px; text-decoration:none}
  .logo{
    position:relative;
    width:42px; height:36px;
    flex-shrink:0;
  }
  .logo-card{
    position:absolute;
    width:34px; height:30px;
    border-radius:5px;
    background:linear-gradient(135deg, var(--ember-deep) 0%, var(--ember-burnt) 100%);
  }
  .logo-card.back{
    top:0; left:0;
    background:linear-gradient(135deg, var(--ember-deep) 0%, #6B2300 100%);
    box-shadow:0 2px 12px rgba(0,0,0,.4);
  }
  .logo-card.front{
    bottom:0; right:0;
    background:linear-gradient(135deg, var(--ember-hot) 0%, var(--ember) 100%);
    box-shadow:0 0 20px rgba(255,107,26,.5), 0 4px 14px rgba(0,0,0,.4);
  }
  .brand-text{display:flex; flex-direction:column; line-height:1.05}
  .brand-text strong{
    font-family:var(--display);
    letter-spacing:.06em;
    font-size:19px;
    font-weight:700;
    color:var(--ember);
    text-transform:uppercase;
  }
  .brand-text span{
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.14em;
    text-transform:uppercase;
    font-weight:500;
  }

  .nav-links{
    display:flex; gap:36px;
    list-style:none; margin:0; padding:0;
  }
  .nav-links a{
    color:var(--bone);
    text-decoration:none;
    font-size:13px;
    font-weight:500;
    letter-spacing:.02em;
    opacity:.7;
    transition:opacity .2s, color .2s;
    position:relative;
  }
  .nav-links a:hover{opacity:1; color:var(--ember)}
  .nav-links a::after{
    content:"";
    position:absolute;
    left:0; bottom:-6px;
    width:0; height:1px;
    background:var(--ember);
    transition:width .25s ease;
  }
  .nav-links a:hover::after{width:100%}

  .nav-cta{
    display:inline-flex; align-items:center; gap:8px;
    background:transparent;
    border:1px solid var(--ember);
    color:var(--ember);
    padding:11px 22px;
    font-family:var(--body);
    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    cursor:pointer;
    text-decoration:none;
    transition:all .2s ease;
    border-radius:3px;
  }
  .nav-cta::after{content:"→"; transition:transform .2s}
  .nav-cta:hover{
    background:var(--ember);
    color:var(--void);
    box-shadow:0 0 30px rgba(255,107,26,.5);
  }
  .nav-cta:hover::after{transform:translateX(3px)}

  @media (max-width: 860px){
    .nav-links{display:none}
  }

  /* ===== HERO ===== */
  .hero{
    position:relative;
    min-height:100vh;
    padding:140px var(--gutter) 60px;
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:40px;
    max-width:var(--max);
    margin:0 auto;
    z-index:3;
  }
  @media (max-width: 980px){
    .hero{grid-template-columns:1fr; padding-top:110px; gap:60px}
  }

  /* Skyline silhouette */
  .skyline{
    position:absolute;
    bottom:0; left:0; right:0;
    height:140px;
    opacity:.35;
    pointer-events:none;
    z-index:1;
  }
  .skyline svg{width:100%; height:100%; display:block}

  .hero-content{position:relative; z-index:2}

  .hero-eyebrow{
    display:inline-flex; align-items:center; gap:14px;
    font-family:var(--mono);
    font-size:11px;
    color:var(--ember);
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:36px;
    font-weight:500;
    padding:8px 14px 8px 12px;
    border:1px solid var(--line);
    border-radius:999px;
    background:rgba(255,107,26,.05);
  }
  .hero-eyebrow .pulse{
    width:7px; height:7px;
    background:var(--ember);
    border-radius:50%;
    box-shadow:0 0 12px var(--ember);
    animation:pulse 1.6s ease-in-out infinite;
  }
  @keyframes pulse{
    0%,100%{opacity:1; transform:scale(1)}
    50%{opacity:.3; transform:scale(.6)}
  }

  .hero-title{
    font-family:var(--display);
    font-size:clamp(64px, 11.5vw, 150px);
    line-height:1.1;
    letter-spacing:-.025em;
    margin:0 0 32px;
    color:var(--pearl);
    text-transform:uppercase;
    font-weight:700;
  }
  .hero-title .venda{
    display:block;
    background:linear-gradient(180deg, #FFFFFF 0%, #D6CFC1 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    filter:drop-shadow(0 4px 18px rgba(255,255,255,.08));
  }
  .hero-title .quantica{
    display:block;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember-hot) 35%, var(--ember) 65%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    filter:drop-shadow(0 8px 36px rgba(255,107,26,.45));
    position:relative;
  }

  .hero-treinamento{
    display:flex; align-items:center; gap:16px;
    margin-bottom:18px;
  }
  .hero-treinamento::before{
    content:"";
    width:48px; height:1px;
    background:var(--ember);
  }
  .hero-treinamento span{
    font-family:var(--display-alt);
    font-size:14px;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:var(--bone);
    font-weight:500;
  }

  .hero-sub{
    font-size:clamp(15px, 1.3vw, 18px);
    color:#A89E91;
    max-width:540px;
    margin-bottom:18px;
    line-height:1.65;
    font-weight:400;
  }
  .hero-sub strong{color:var(--bone); font-weight:600}

  .hero-tags{
    display:flex; gap:8px; flex-wrap:wrap;
    margin:28px 0 44px;
  }
  .tag{
    font-family:var(--mono);
    font-size:11px;
    padding:8px 16px;
    border:1px solid var(--line);
    color:var(--ember);
    border-radius:999px;
    letter-spacing:.08em;
    text-transform:uppercase;
    background:rgba(255,107,26,.04);
    font-weight:500;
    transition:all .2s ease;
  }
  .tag:hover{
    background:rgba(255,107,26,.12);
    border-color:var(--ember);
  }

  .hero-ctas{
    display:flex; gap:14px; flex-wrap:wrap;
    align-items:center;
  }
  .btn-primary{
    display:inline-flex; align-items:center; gap:14px;
    background:linear-gradient(180deg, var(--ember-hot) 0%, var(--ember) 50%, var(--ember-deep) 100%);
    color:var(--void);
    padding:18px 32px;
    font-family:var(--body);
    font-size:13px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
    text-decoration:none;
    border:none;
    cursor:pointer;
    border-radius:3px;
    transition:all .25s ease;
    box-shadow:
      0 0 0 1px rgba(255,180,71,.3) inset,
      0 12px 40px rgba(255,107,26,.35),
      0 2px 0 rgba(0,0,0,.2);
    position:relative;
    overflow:hidden;
  }
  .btn-primary::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.4), transparent);
    transform:translateX(-100%);
    transition:transform .7s ease;
  }
  .btn-primary:hover::before{transform:translateX(100%)}
  .btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:
      0 0 0 1px rgba(255,180,71,.5) inset,
      0 0 60px rgba(255,107,26,.6),
      0 16px 40px rgba(255,107,26,.4);
  }
  .btn-primary .arrow{transition:transform .25s ease; font-size:16px}
  .btn-primary:hover .arrow{transform:translateX(5px)}

  .btn-ghost{
    color:var(--bone);
    text-decoration:none;
    font-size:13px;
    font-weight:600;
    letter-spacing:.06em;
    padding:18px 4px;
    border-bottom:1px solid var(--line);
    transition:all .2s ease;
    display:inline-flex; align-items:center; gap:8px;
  }
  .btn-ghost:hover{color:var(--ember); border-color:var(--ember)}

  /* Hero meta strip */
  .hero-meta{
    display:flex; gap:42px;
    margin-top:40px;
    padding-top:30px;
    border-top:1px solid var(--line-soft);
    flex-wrap:wrap;
  }
  .meta-block .label{
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:8px;
    font-weight:500;
  }
  .meta-block .value{
    font-family:var(--display);
    font-size:24px;
    color:var(--bone);
    letter-spacing:.02em;
    font-weight:700;
    line-height:1;
  }
  .meta-block .value .accent{color:var(--ember)}

  /* ===== SPHERE SCENE ===== */
  .sphere-scene{
    position:relative;
    aspect-ratio:1/1.05;
    max-width:600px;
    margin:0 auto;
    width:100%;
  }
  .sphere-canvas{
    position:absolute; inset:0;
    width:100%; height:100%;
    display:block;
  }

  /* Icons inside sphere */
  .sphere-icons{
    position:absolute;
    inset:14%;
    pointer-events:none;
  }
  .orbit-icon{
    position:absolute;
    color:var(--gold);
    filter: drop-shadow(0 0 8px rgba(255,180,71,.7)) drop-shadow(0 0 18px rgba(255,107,26,.4));
    animation: floatIcon 6s ease-in-out infinite;
  }
  .orbit-icon svg{display:block}
  @keyframes floatIcon{
    0%,100%{transform:translate(0,0)}
    50%{transform:translate(0,-6px)}
  }
  .orbit-icon.i1{top:18%; left:50%; transform:translateX(-50%); animation-delay:0s}
  .orbit-icon.i2{top:32%; left:22%; animation-delay:.6s}
  .orbit-icon.i3{top:38%; right:18%; animation-delay:1.2s}
  .orbit-icon.i4{bottom:18%; left:32%; animation-delay:1.8s}
  .orbit-icon.i5{bottom:14%; right:34%; animation-delay:2.4s}
  .orbit-icon.i6{top:54%; left:10%; animation-delay:3s}
  .orbit-icon.i7{top:56%; right:10%; animation-delay:3.6s}
  .orbit-icon.i8{bottom:34%; left:50%; transform:translateX(-50%); animation-delay:4.2s}

  /* Floating badge "100% GRATUITO" */
  .free-badge{
    position:absolute;
    top:6%;
    right:-2%;
    z-index:10;
    width:130px; height:130px;
    border-radius:50%;
    background:
      radial-gradient(circle at 30% 30%, var(--char) 0%, var(--void) 100%);
    border:2px solid var(--gold);
    display:flex; flex-direction:column;
    align-items:center; justify-content:center;
    box-shadow:
      0 0 40px rgba(255,180,71,.45),
      inset 0 0 25px rgba(255,107,26,.18),
      0 8px 24px rgba(0,0,0,.5);
    animation:float 5s ease-in-out infinite;
  }
  .free-badge::before{
    content:"";
    position:absolute;
    inset:6px;
    border:1px solid rgba(255,180,71,.4);
    border-radius:50%;
  }
  @keyframes float{
    0%,100%{transform:translateY(0) rotate(-6deg)}
    50%{transform:translateY(-14px) rotate(3deg)}
  }
  .stars{display:flex; gap:3px; color:var(--gold); margin:2px 0}
  .stars svg{width:11px; height:11px; filter: drop-shadow(0 0 4px var(--gold))}
  .free-badge .num{
    font-family:var(--display);
    font-size:32px;
    font-weight:700;
    color:var(--ember);
    line-height:1;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    margin:3px 0;
    letter-spacing:.02em;
  }
  .free-badge .text{
    font-family:var(--display);
    font-size:13px;
    letter-spacing:.16em;
    color:var(--bone);
    font-weight:600;
  }

  @media (max-width: 980px){
    .free-badge{width:100px; height:100px; top:-12px; right:8px}
    .free-badge .num{font-size:24px}
    .free-badge .text{font-size:11px}
    .stars svg{width:9px; height:9px}
  }

  /* ===== TICKER ===== */
  .ticker{
    position:relative;
    z-index:3;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:linear-gradient(90deg, var(--midnight) 0%, var(--char) 50%, var(--midnight) 100%);
    overflow:hidden;
    padding:22px 0;
  }
  .ticker-track{
    display:flex;
    gap:64px;
    animation:scroll 32s linear infinite;
    width:max-content;
  }
  .ticker-item{
    font-family:var(--display);
    font-size:24px;
    letter-spacing:.08em;
    color:var(--bone);
    text-transform:uppercase;
    white-space:nowrap;
    display:flex; align-items:center; gap:64px;
    font-weight:600;
  }
  .ticker-item::after{
    content:"◆";
    color:var(--ember);
    font-size:12px;
  }
  .ticker-item.accent{color:var(--ember)}
  @keyframes scroll{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }

  /* ===== SECTIONS ===== */
  .section{
    position:relative;
    z-index:3;
    padding:140px var(--gutter);
    max-width:var(--max);
    margin:0 auto;
  }
  @media (max-width: 768px){
    .section{padding:90px var(--gutter)}
  }

  .section-eyebrow{
    display:flex; align-items:center; gap:14px;
    font-family:var(--mono);
    font-size:11px;
    color:var(--ember);
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:28px;
    font-weight:500;
  }
  .section-eyebrow .freq{
    background:var(--ember);
    color:var(--void);
    padding:4px 10px;
    font-weight:700;
    border-radius:3px;
    font-family:var(--mono);
  }
  .section-eyebrow::after{
    content:"";
    flex:1; height:1px;
    background:linear-gradient(90deg, var(--line) 0%, transparent 100%);
  }

  .section-title{
    font-family:var(--display);
    font-size:clamp(42px, 6.4vw, 96px);
    line-height:.92;
    letter-spacing:-.018em;
    color:var(--bone);
    text-transform:uppercase;
    margin:0 0 32px;
    max-width:960px;
    font-weight:700;
  }
  .section-title em{
    font-style:normal;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 50%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    filter:drop-shadow(0 4px 24px rgba(255,107,26,.3));
  }

  .section-lead{
    font-size:clamp(16px, 1.3vw, 19px);
    color:#A89E91;
    max-width:700px;
    line-height:1.7;
    margin:0 0 68px;
    font-weight:400;
  }
  .section-lead strong{color:var(--bone); font-weight:600}

  /* ===== MANIFESTO ===== */
  .manifesto{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:88px;
    align-items:start;
  }
  @media (max-width:880px){
    .manifesto{grid-template-columns:1fr; gap:40px}
  }
  .manifesto-statement{
    font-family:var(--display);
    font-size:clamp(30px, 3.6vw, 50px);
    line-height:1.08;
    letter-spacing:-.005em;
    color:var(--bone);
    text-transform:none;
    font-weight:600;
    margin:0;
  }
  .manifesto-statement em{
    font-family:var(--body);
    font-style:italic;
    font-weight:300;
    color:var(--ember);
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
  }
  .manifesto-body p{
    color:#A89E91;
    font-size:16px;
    line-height:1.75;
    margin-bottom:24px;
  }
  .manifesto-body p strong{color:var(--bone); font-weight:600}

  /* ===== STATS BAR ===== */
  .stats-bar{
    margin:88px auto 0;
    max-width:var(--max);
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }
  @media (max-width:880px){.stats-bar{grid-template-columns:1fr 1fr}}
  @media (max-width:480px){.stats-bar{grid-template-columns:1fr}}
  .stat-block{
    padding:36px 32px;
    border-right:1px solid var(--line);
    text-align:left;
  }
  .stat-block:last-child{border-right:none}
  @media (max-width:880px){
    .stat-block:nth-child(2){border-right:none}
    .stat-block:nth-child(1),.stat-block:nth-child(2){border-bottom:1px solid var(--line)}
  }
  .stat-block .stat-num{
    font-family:var(--display);
    font-size:64px;
    font-weight:700;
    line-height:1;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 60%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    letter-spacing:-.01em;
  }
  .stat-block .stat-num .unit{font-size:32px; vertical-align:top; margin-left:2px}
  .stat-block .stat-lbl{
    font-family:var(--mono);
    font-size:11px;
    color:var(--smoke);
    letter-spacing:.15em;
    text-transform:uppercase;
    margin-top:14px;
    line-height:1.4;
  }
  .stat-block .stat-lbl strong{color:var(--bone); font-weight:500}

  /* ===== PRINCÍPIOS ===== */
  .principios-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:0;
    border-top:1px solid var(--line);
  }
  @media (max-width:880px){
    .principios-grid{grid-template-columns:1fr}
  }
  .principio{
    padding:56px 40px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    position:relative;
    transition:background .35s ease;
  }
  .principio:last-child{border-right:none}
  @media (max-width:880px){
    .principio{border-right:none}
  }
  .principio:hover{
    background:linear-gradient(180deg, rgba(255,107,26,.06) 0%, transparent 100%);
  }
  .principio:hover .principio-num{
    transform:translateY(-8px);
    filter:drop-shadow(0 0 32px rgba(255,107,26,.6));
  }
  .principio:hover .principio-icon{
    border-color:var(--ember);
    background:rgba(255,107,26,.1);
  }

  .principio-num{
    font-family:var(--display);
    font-size:128px;
    line-height:1;
    margin-bottom:28px;
    transition:all .4s ease;
    background:linear-gradient(180deg, var(--ember-hot) 0%, var(--ember) 50%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    font-weight:700;
    letter-spacing:-.02em;
  }
  .principio-icon{
    width:64px; height:64px;
    display:flex; align-items:center; justify-content:center;
    border:1.5px solid var(--line);
    border-radius:50%;
    margin-bottom:24px;
    color:var(--ember);
    transition:all .3s ease;
    background:rgba(255,107,26,.03);
  }
  .principio h3{
    font-family:var(--display);
    font-size:28px;
    color:var(--bone);
    text-transform:uppercase;
    letter-spacing:.02em;
    margin:0 0 16px;
    line-height:1.1;
    font-weight:700;
  }
  .principio p{
    color:#A89E91;
    font-size:15px;
    line-height:1.7;
    margin:0;
  }
  .principio-tag{
    font-family:var(--mono);
    font-size:10px;
    color:var(--ember);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-top:28px;
    display:flex; align-items:center; gap:8px;
    font-weight:500;
  }
  .principio-tag::before{
    content:"";
    width:14px; height:1px;
    background:var(--ember);
  }

  /* ===== PROGRAMA ===== */
  .programa{
    background:
      radial-gradient(800px 500px at 50% 100%, rgba(255,107,26,.08), transparent 60%),
      linear-gradient(180deg, transparent 0%, var(--midnight) 60%, var(--midnight) 100%);
  }
  .modulos{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-top:56px;
  }
  @media (max-width:768px){.modulos{grid-template-columns:1fr}}
  .modulo{
    padding:36px 32px;
    background:linear-gradient(180deg, var(--char) 0%, var(--midnight) 100%);
    border:1px solid var(--line-soft);
    border-radius:6px;
    transition:all .35s ease;
    cursor:default;
    position:relative;
    overflow:hidden;
  }
  .modulo::before{
    content:"";
    position:absolute;
    top:0; left:0;
    width:0; height:2px;
    background:linear-gradient(90deg, var(--ember-hot), var(--ember-deep));
    transition:width .4s ease;
  }
  .modulo:hover{
    border-color:var(--line-hot);
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(0,0,0,.4), 0 0 30px rgba(255,107,26,.08);
  }
  .modulo:hover::before{width:100%}
  .modulo-head{
    display:flex; align-items:center; justify-content:space-between;
    margin-bottom:18px;
    padding-bottom:18px;
    border-bottom:1px solid var(--line-soft);
  }
  .modulo-num{
    font-family:var(--mono);
    font-size:11px;
    color:var(--ember);
    letter-spacing:.18em;
    font-weight:700;
  }
  .modulo-duration{
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.12em;
    display:flex; align-items:center; gap:6px;
  }
  .modulo-duration::before{
    content:"";
    width:6px; height:6px;
    background:var(--ember);
    border-radius:50%;
  }
  .modulo h4{
    font-family:var(--display);
    font-size:24px;
    color:var(--bone);
    margin:0 0 12px;
    text-transform:uppercase;
    letter-spacing:.01em;
    line-height:1.15;
    font-weight:700;
  }
  .modulo p{
    color:#A89E91;
    font-size:14.5px;
    line-height:1.65;
    margin:0;
  }

  /* ===== DETALHES ===== */
  .detalhes{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:0;
    border:1px solid var(--line);
    border-radius:6px;
    overflow:hidden;
    margin-top:72px;
    background:var(--midnight);
  }
  @media (max-width:880px){.detalhes{grid-template-columns:1fr 1fr}}
  @media (max-width:480px){.detalhes{grid-template-columns:1fr}}
  .detalhe{
    padding:36px 28px;
    border-right:1px solid var(--line);
    background:linear-gradient(180deg, var(--midnight) 0%, var(--char) 100%);
    position:relative;
  }
  .detalhe:last-child{border-right:none}
  @media (max-width:880px){
    .detalhe:nth-child(2){border-right:none}
    .detalhe:nth-child(1),.detalhe:nth-child(2){border-bottom:1px solid var(--line)}
  }
  .detalhe-icon{
    width:32px; height:32px;
    color:var(--ember);
    margin-bottom:18px;
    opacity:.8;
  }
  .detalhe-lbl{
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:10px;
    display:block;
    font-weight:500;
  }
  .detalhe-val{
    font-family:var(--display);
    font-size:24px;
    color:var(--bone);
    letter-spacing:.02em;
    line-height:1.15;
    font-weight:700;
  }
  .detalhe-sub{
    font-size:13px;
    color:var(--smoke);
    margin-top:8px;
  }

  /* ===== PRÊMIO TOP 10 ===== */
  .premio-wrap{
    padding:0 var(--gutter);
    max-width:var(--max);
    margin:140px auto 0;
    position:relative;
    z-index:3;
  }
  @media (max-width:768px){.premio-wrap{margin-top:80px}}

  .premio{
    position:relative;
    padding:88px clamp(28px, 5vw, 88px);
    background:
      radial-gradient(600px 400px at 22% 50%, rgba(255,107,26,.22), transparent 60%),
      radial-gradient(500px 300px at 85% 80%, rgba(255,180,71,.15), transparent 60%),
      linear-gradient(135deg, var(--char) 0%, var(--midnight) 100%);
    border:1px solid var(--line);
    border-radius:8px;
    overflow:hidden;
  }
  .premio::before{
    content:"";
    position:absolute;
    top:0; right:0;
    width:60%; height:100%;
    background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><defs><pattern id='dots' x='0' y='0' width='8' height='8' patternUnits='userSpaceOnUse'><circle cx='2' cy='2' r='1' fill='%23FF6B1A' opacity='0.08'/></pattern></defs><rect width='100' height='100' fill='url(%23dots)'/></svg>");
    pointer-events:none;
  }
  .premio-grid{
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:72px;
    align-items:center;
    position:relative;
    z-index:2;
  }
  @media (max-width:880px){
    .premio-grid{grid-template-columns:1fr; gap:40px}
    .premio{padding:60px 32px}
  }
  .trophy-wrap{
    position:relative;
    width:100%;
    max-width:320px;
    aspect-ratio:1;
    margin:0 auto;
  }
  .trophy-glow{
    position:absolute;
    inset:-20%;
    background:radial-gradient(circle, rgba(255,180,71,.4) 0%, transparent 60%);
    filter:blur(20px);
    z-index:0;
  }
  .trophy-wrap svg{
    position:relative;
    z-index:1;
    width:100%; height:100%;
    filter:drop-shadow(0 20px 30px rgba(0,0,0,.5));
  }

  .premio-tag-row{
    display:flex; gap:8px; flex-wrap:wrap;
    margin-bottom:24px;
  }
  .premio-tag{
    font-family:var(--mono);
    font-size:10px;
    padding:7px 14px;
    border-radius:999px;
    background:rgba(255,107,26,.12);
    color:var(--ember);
    letter-spacing:.14em;
    text-transform:uppercase;
    border:1px solid var(--line);
    font-weight:600;
    display:flex; align-items:center; gap:6px;
  }
  .premio h2{
    font-family:var(--display);
    font-size:clamp(40px, 5.4vw, 72px);
    line-height:.94;
    color:var(--bone);
    text-transform:uppercase;
    letter-spacing:-.008em;
    margin:0 0 20px;
    font-weight:700;
  }
  .premio h2 em{
    font-style:normal;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 50%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    filter:drop-shadow(0 4px 18px rgba(255,107,26,.4));
  }
  .premio p{
    color:var(--plasma);
    font-size:17px;
    line-height:1.7;
    margin:0 0 28px;
    max-width:580px;
  }
  .premio p strong{color:var(--ember); font-weight:600}

  .premio-quote{
    margin-top:32px;
    padding-top:28px;
    border-top:1px dashed var(--line);
    font-family:var(--display-alt);
    font-size:13px;
    color:var(--gold);
    letter-spacing:.2em;
    text-transform:uppercase;
    font-weight:500;
    line-height:1.7;
  }

  .premio-stats{
    display:flex; gap:40px;
    padding-top:32px;
    border-top:1px solid var(--line);
    flex-wrap:wrap;
  }
  .premio-stats .num{
    font-family:var(--display);
    font-size:48px;
    line-height:1;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    font-weight:700;
  }
  .premio-stats .lbl{
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-top:6px;
  }

  /* ===== PARA QUEM É ===== */
  .target{
    margin-top:120px;
  }
  .personas{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-top:48px;
  }
  @media (max-width:880px){.personas{grid-template-columns:1fr}}
  .persona{
    padding:36px 30px;
    border:1px solid var(--line-soft);
    border-radius:6px;
    background:rgba(21,16,12,.6);
    transition:all .3s ease;
  }
  .persona:hover{
    border-color:var(--line-hot);
    background:rgba(21,16,12,.9);
  }
  .persona-icon{
    width:52px; height:52px;
    display:flex; align-items:center; justify-content:center;
    background:rgba(255,107,26,.1);
    border:1px solid var(--line);
    border-radius:12px;
    color:var(--ember);
    margin-bottom:24px;
  }
  .persona h4{
    font-family:var(--display);
    font-size:24px;
    color:var(--bone);
    text-transform:uppercase;
    margin:0 0 12px;
    font-weight:700;
    letter-spacing:.01em;
  }
  .persona p{
    color:#A89E91;
    font-size:14.5px;
    line-height:1.65;
    margin:0;
  }

  /* ===== INSCRIÇÃO ===== */
  .inscricao{
    position:relative;
    margin-top:140px;
    padding:120px var(--gutter);
    background:
      radial-gradient(1000px 500px at 50% 0%, rgba(255,107,26,.2), transparent 70%),
      radial-gradient(800px 400px at 50% 100%, rgba(255,180,71,.08), transparent 60%),
      var(--midnight);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    z-index:3;
    overflow:hidden;
  }
  .inscricao::before{
    content:"";
    position:absolute;
    inset:0;
    background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><defs><pattern id='grid' x='0' y='0' width='40' height='40' patternUnits='userSpaceOnUse'><path d='M 40 0 L 0 0 0 40' fill='none' stroke='%23FF6B1A' stroke-width='0.5' opacity='0.04'/></pattern></defs><rect width='100' height='100' fill='url(%23grid)'/></svg>");
    pointer-events:none;
  }
  .inscricao-inner{
    max-width:780px;
    margin:0 auto;
    text-align:center;
    position:relative;
    z-index:2;
  }
  .inscricao h2{
    font-family:var(--display);
    font-size:clamp(44px, 7.2vw, 112px);
    line-height:1.2;
    text-transform:uppercase;
    color:var(--bone);
    margin:24px 0 20px;
    letter-spacing:-.015em;
    font-weight:700;
  }
  .inscricao h2 em{
    font-style:normal;
    background:linear-gradient(180deg, var(--gold) 0%, var(--ember) 50%, var(--ember-deep) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    filter:drop-shadow(0 4px 24px rgba(255,107,26,.35));
  }
  .inscricao p.lead{
    color:#B5A99C;
    font-size:18px;
    max-width:600px;
    margin:0 auto 48px;
    line-height:1.6;
  }

  .form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:14px;
    text-align:left;
  }
  @media (max-width:600px){.form-grid{grid-template-columns:1fr}}
  .field{position: relative;
    width: auto;
    margin: auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;}
  .field label{
    display:block;
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:10px;
    font-weight:500;
  }
  .field input, .field select, .field textarea{
    width:100%;
    padding:17px 20px;
    background:rgba(21,16,12,.7);
    border:1px solid var(--line);
    color:var(--bone);
    font-family:var(--body);
    font-size:15px;
    font-weight:500;
    border-radius:4px;
    outline:none;
    transition:all .25s ease;
  }
  .field input::placeholder{color:#5A5147}
  .field input:focus, .field select:focus, .field textarea:focus{
    border-color:var(--ember);
    background:rgba(31,24,18,.8);
    box-shadow:0 0 0 3px rgba(255,107,26,.15);
  }
  .field-full{grid-column:1 / -1}
  .field textarea{resize:vertical; min-height:96px; font-family:var(--body)}

  .form-cta{
    margin-top:28px;
    display:flex; justify-content:center;
  }
  .form-note{
    margin-top:22px;
    font-family:var(--mono);
    font-size:11px;
    color:var(--smoke);
    letter-spacing:.08em;
  }
  .form-note strong{color:var(--ember); font-weight:700}

  /* QR + CTA bloco lateral */
  .qr-cta-row{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:24px;
    align-items:center;
    max-width:480px;
    margin:64px auto 0;
    padding:20px;
    background:rgba(21,16,12,.6);
    border:1px solid var(--line);
    border-radius:8px;
  }
  @media (max-width:560px){
    .qr-cta-row{grid-template-columns:1fr; text-align:center}
  }
  .qr-code{
    width:96px; height:96px;
    background:white;
    border-radius:4px;
    padding:8px;
    flex-shrink:0;
  }
  .qr-code svg{width:100%; height:100%; display:block}
  .qr-info{text-align:left}
  @media (max-width:560px){.qr-info{text-align:center}}
  .qr-info .lbl{
    font-family:var(--mono);
    font-size:10px;
    color:var(--smoke);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:6px;
  }
  .qr-info .title{
    font-family:var(--display);
    font-size:22px;
    color:var(--bone);
    text-transform:uppercase;
    font-weight:700;
    letter-spacing:.02em;
    margin-bottom:6px;
  }
  .qr-info .sub{
    font-size:13px;
    color:#A89E91;
  }

  /* ===== FAQ ===== */
  .faq-list{
    margin-top:56px;
    max-width:920px;
  }
  .faq-item{
    border-bottom:1px solid var(--line-soft);
    padding:28px 0;
    cursor:pointer;
    transition:padding .2s ease;
  }
  .faq-item:hover{padding-left:8px}
  .faq-q{
    display:flex; justify-content:space-between; align-items:flex-start;
    gap:24px;
    font-family:var(--display);
    font-size:24px;
    color:var(--bone);
    text-transform:uppercase;
    letter-spacing:.01em;
    line-height:1.2;
    font-weight:700;
  }
  .faq-toggle{
    flex-shrink:0;
    width:36px; height:36px;
    border:1px solid var(--line);
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    color:var(--ember);
    transition:transform .35s, background .25s, border-color .25s;
    font-family:var(--mono);
    font-size:18px;
    font-weight:300;
  }
  .faq-item.open .faq-toggle{
    transform:rotate(45deg);
    background:var(--ember);
    color:var(--void);
    border-color:var(--ember);
  }
  .faq-a{
    max-height:0; overflow:hidden;
    transition:max-height .4s ease, margin .4s ease;
    color:#A89E91;
    font-size:15.5px;
    line-height:1.75;
  }
  .faq-item.open .faq-a{
    max-height:400px;
    margin-top:18px;
  }

  /* ===== FOOTER ===== */
  .footer{
    position:relative;
    z-index:3;
    background:var(--void);
    border-top:1px solid var(--line);
    padding:88px var(--gutter) 36px;
    overflow:hidden;
  }
  .footer::before{
    content:"";
    position:absolute;
    top:0; left:50%;
    transform:translateX(-50%);
    width:200px; height:1px;
    background:linear-gradient(90deg, transparent, var(--ember), transparent);
    box-shadow:0 0 20px var(--ember);
  }
  .footer-inner{
    max-width:var(--max);
    margin:0 auto;
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1fr;
    gap:48px;
    padding-bottom:56px;
    border-bottom:1px solid var(--line-soft);
  }
  @media (max-width:880px){.footer-inner{grid-template-columns:1fr 1fr; gap:36px}}
  @media (max-width:520px){.footer-inner{grid-template-columns:1fr}}

  .footer-brand p{
    color:#857A6E;
    font-size:14px;
    line-height:1.7;
    max-width:340px;
    margin:20px 0 0;
  }
  .footer-col h5{
    font-family:var(--mono);
    font-size:11px;
    color:var(--ember);
    letter-spacing:.18em;
    text-transform:uppercase;
    margin:0 0 22px;
    font-weight:600;
  }
  .footer-col ul{
    list-style:none; padding:0; margin:0;
    display:flex; flex-direction:column; gap:12px;
  }
  .footer-col a, .footer-col li{
    color:var(--bone);
    text-decoration:none;
    font-size:14px;
    transition:color .2s;
    opacity:.75;
    display:flex; align-items:center; gap:10px;
  }
  .footer-col a svg{flex-shrink:0; color:var(--ember); opacity:.7}
  .footer-col a:hover{color:var(--ember); opacity:1}

  .footer-bottom{
    max-width:var(--max);
    margin:0 auto;
    padding-top:36px;
    display:flex; justify-content:space-between; align-items:center;
    flex-wrap:wrap; gap:16px;
  }
  .footer-bottom p{
    font-family:var(--mono);
    font-size:11px;
    color:var(--smoke);
    letter-spacing:.1em;
    margin:0;
  }
  .footer-bottom .heart{color:var(--ember); margin:0 4px}

  /* ===== ACCESSIBILITY ===== */
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{
      animation-duration:.01ms !important;
      animation-iteration-count:1 !important;
      transition-duration:.01ms !important;
    }
    .ticker-track{animation:none}
  }

  /* Focus visible */
  a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
    outline:2px solid var(--ember);
    outline-offset:3px;
  }

  /* Reveal */
  .reveal{
    opacity:0;
    transform:translateY(28px);
    transition:opacity .9s ease, transform .9s ease;
  }
  .reveal.in{opacity:1; transform:translateY(0)}