:root{
      --ink:#0b1739;
      --orange:#ff8500;
      --muted:#5f6573;
      --paper:#ffffff;
      --max:1440px;
      --gutter:clamp(20px,4vw,64px);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:#f5f5f5;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
    img{display:block;max-width:100%}
    a{text-decoration:none;color:inherit}
    button{font:inherit}

    .site-shell{
      width:min(calc(100% - 28px), var(--max));
      margin:22px auto 50px;
      background:#fff;
      box-shadow:0 18px 60px rgba(16,24,40,.08);
      overflow:hidden;
    }

    /* CONTATO DISCRETO ACIMA DO MENU */
    .top-contact{
      display:flex;
      justify-content:flex-end;
      align-items:center;
      gap:7px;
      min-height:22px;
      font-size:12px;
      font-weight:700;
      color:#626875;
      padding-top:6px;
    }
    .top-contact a:hover{color:var(--orange)}

    /* BLOCO 01 */
    .hero{
      min-height:760px;
      position:relative;
      padding:28px var(--gutter) 0;
      background:#fff;
    }
    .nav{
      height:74px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:28px;
      position:relative;
      z-index:2;
    }
    .nav-logo{width:210px}
    .nav-links{display:flex;gap:34px;align-items:center;font-weight:700;font-size:15px;color:#171717}
    .nav-item{position:relative}
    .nav-item>a{display:flex;align-items:center;gap:6px}
    .nav-arrow{font-size:10px;opacity:.65}
    .submenu{
      position:absolute;
      top:calc(100% + 0px);
      left:-18px;
      min-width:245px;
      padding:10px;
      background:#fff;
      border:1px solid #eceef2;
      border-radius:16px;
      box-shadow:0 20px 50px rgba(11,23,57,.13);
      opacity:0;
      visibility:hidden;
      transform:translateY(8px);
      transition:.2s ease;
      z-index:20;
    }
    .submenu a{
      display:block;
      padding:12px 14px;
      border-radius:10px;
      font-size:14px;
      font-weight:700;
      color:#303745;
      white-space:nowrap;
    }
    .submenu a:hover{background:#fff5eb;color:var(--orange)}
    .nav-item:hover .submenu,
    .nav-item:focus-within .submenu{
      opacity:1;
      visibility:visible;
      transform:translateY(0);
    }
    .nav-cta{background:var(--orange);color:#fff;padding:14px 22px;border-radius:999px;font-weight:800}
    .hero-grid{
      display:grid;
      grid-template-columns:1.04fr .96fr;
      align-items:center;
      gap:28px;
      min-height:645px;
      margin-top:70px;
    }
    .eyebrow{display:inline-block;border:1px solid #ffd2a5;background:#fff7ef;color:#e96d00;padding:8px 14px;border-radius:999px;font-weight:800;font-size:13px;letter-spacing:.03em}
    h1{font-size:clamp(34px,3.9vw,66px); font-weight:800;line-height:1.1;margin:24px 0 22px;letter-spacing:-.055em;max-width:760px;text-transform:uppercase}
    h1 span{color:var(--orange)}
    .hero-copy{font-size:clamp(18px,1.5vw,24px);font-weight:800;line-height:1.55;color:#303745;max-width:690px}
    .hero-stats{display:flex;gap:42px;flex-wrap:wrap;margin:36px 0 34px}
    .stat strong{display:block;font-size:24px;color:var(--ink)}
    .stat span{color:var(--muted)}
    .hero-buttons{display:flex;gap:16px;flex-wrap:wrap}
    .btn-main{display:inline-flex;align-items:center;gap:12px;background:var(--orange);color:white;padding:17px 26px;border-radius:999px;font-weight:800}
    .btn-ghost{display:inline-flex;align-items:center;border:1px solid #dfe2e7;padding:17px 26px;border-radius:999px;font-weight:800}
    .hero-photo-wrap{
align-self:start;
margin-top:10px;        
      display:flex;
      align-items:center;
      justify-content:center;
      position:relative;
      width:min(100%,560px);
      aspect-ratio:1;
      border-radius:50%;
      overflow:hidden;
      justify-self:end;
      box-shadow:0 24px 70px rgba(0,0,0,.10);
    }
    .hero-photo{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:58% center;
    }
    .hero-photo-wrap{cursor:pointer}
    .hero-play{
      position:absolute;
      left:50%;
      top:50%;
      transform:translate(-50%,-50%);
      width:96px;
      height:96px;
      border-radius:50%;
      background:rgba(0,0,0,.58);
      border:2px solid rgba(255,255,255,.45);
      display:grid;
      place-items:center;
      z-index:3;
      box-shadow:0 18px 45px rgba(0,0,0,.28);
      transition:.2s ease;
      pointer-events:none;
    }
    .hero-photo-wrap:hover .hero-play{transform:translate(-50%,-50%) scale(1.06);background:rgba(0,0,0,.68)}
    .hero-play:after{
      content:"";
      margin-left:7px;
      border-top:17px solid transparent;
      border-bottom:17px solid transparent;
      border-left:27px solid #fff;
    }

    /* BLOCO 02 */
    .video-section{padding:160px var(--gutter) 90px;background:#fff}
    .video-frame{
      position:relative;
      min-height:640px;
      border-radius:28px;
      overflow:hidden;
      background:#111;
      box-shadow:0 30px 80px rgba(0,0,0,.16);
      cursor:pointer;
    }
    .video-frame>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
    .video-shade{position:absolute;inset:0 55% 0 0;background:rgba(0,0,0,.80)}
    .video-content{position:absolute;left:clamp(34px,5vw,88px);top:50%;transform:translateY(-50%);z-index:3;width:min(38%,550px);color:#fff}
    .video-content h2{font-size:clamp(21px,3.2vw,51px);line-height:1.10;margin:0 0 22px;text-transform:uppercase;letter-spacing:-.04em}
    .video-content h2 span{color:var(--orange)}
    .video-content p{font-size:clamp(17px,1.5vw,22px);line-height:1.55;color:#eee;max-width:480px}
    .play{position:absolute;left:54%;top:50%;transform:translate(-50%,-50%);width:104px;height:104px;border-radius:50%;background:rgba(0,0,0,.64);border:2px solid rgba(255,255,255,.25);display:grid;place-items:center;z-index:4;box-shadow:0 18px 50px rgba(0,0,0,.28)}
    .play:after{content:"";margin-left:8px;border-top:18px solid transparent;border-bottom:18px solid transparent;border-left:28px solid #fff}
    .video-logo{position:absolute;right:38px;top:34px;width:170px;z-index:4;filter:drop-shadow(0 4px 12px rgba(255,255,255,.35))}
    .fake-controls{position:absolute;left:0;right:0;bottom:0;padding:22px 32px 26px;background:linear-gradient(transparent,rgba(0,0,0,.86));z-index:4;color:#fff;display:flex;align-items:center;gap:16px;font-size:14px}
    .progress{height:5px;flex:1;background:rgba(255,255,255,.4);border-radius:999px;overflow:hidden}.progress i{display:block;height:100%;width:32%;background:var(--orange)}


    /* BLOCO 03 - Certificados: estilos renovados ao final do arquivo */

    /* BLOCO 04 - GAMIFICAÇÃO COM SLIDES AUTOMÁTICOS */
    .gamificacao{
      padding:110px var(--gutter);
      background:#fff;
    }
    .gamificacao-layout{
      max-width:1320px;
      margin:0 auto;
      display:grid;
      grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);
      align-items:center;
      gap:clamp(34px,5vw,76px);
    }
    .gamificacao-copy{min-width:0}
    .gamificacao-copy h2{
      font-size:clamp(38px,4vw,66px);
      line-height:1;
      margin:0 0 24px;
      text-transform:uppercase;
      letter-spacing:-.05em;
    }
    .gamificacao-copy h2 span{color:var(--orange)}
    .gamificacao-copy p{
      font-size:clamp(18px,1.5vw,23px);
      line-height:1.55;
      color:#303745;
      margin:0 0 18px;
      max-width:720px;
    }
    .gamificacao-carousel{
      position:relative;
      width:100%;
      max-width:470px;
      justify-self:end;
      aspect-ratio:1 / 1.03;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
      border-radius:24px;
      background:linear-gradient(145deg,#f8faff 0%,#fff 65%,#fff7ef 100%);
      box-shadow:0 20px 55px rgba(11,23,57,.09);
      padding:18px;
    }
    .gamificacao-slides{position:relative;width:100%;height:100%}
    .gamificacao-slide{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:contain;
      opacity:0;
      animation:gamificacao-fade 16s infinite;
      filter:drop-shadow(0 12px 18px rgba(11,23,57,.10));
    }
    .gamificacao-slide.slide-ranking{animation-delay:0s}
    .gamificacao-slide.slide-progresso{animation-delay:8s}
    .gamificacao-indicadores{
      position:absolute;
      left:0;right:0;bottom:13px;
      display:flex;justify-content:center;gap:7px;
      pointer-events:none;
    }
    .gamificacao-indicadores span{
      width:6px;height:6px;border-radius:50%;
      background:#cbd1dc;
      animation:gamificacao-dot 16s infinite;
    }
    .gamificacao-indicadores span:nth-child(2){animation-delay:8s}
    @keyframes gamificacao-fade{
      0%,4%{opacity:0;transform:translateY(8px)}
      10%,42%{opacity:1;transform:translateY(0)}
      50%,100%{opacity:0;transform:translateY(-6px)}
    }
    @keyframes gamificacao-dot{
      0%,49%{background:#cbd1dc;transform:scale(1)}
      10%,42%{background:var(--orange);transform:scale(1.25)}
      50%,100%{background:#cbd1dc;transform:scale(1)}
    }
    @media(prefers-reduced-motion:reduce){
      .gamificacao-slide,.gamificacao-indicadores span{animation:none}
      .gamificacao-slide:first-child{opacity:1}
      .gamificacao-indicadores span:first-child{background:var(--orange)}
    }

    /* BLOCO 05 - PLATAFORMA PERSONALIZADA */
    .plataforma{
      position:relative;
      padding:clamp(76px,8vw,118px) var(--gutter);
      background:
        radial-gradient(ellipse at 4% 8%,rgba(255,133,0,.075),transparent 30%),
        linear-gradient(180deg,#fff 0%,#f8faff 100%);
      overflow:hidden;
    }
    .plataforma-copy{max-width:1260px;margin:0 auto}
    .plataforma-cabecalho{max-width:850px;margin:0 0 48px}
    .plataforma-kicker{
      display:inline-flex;align-items:center;gap:10px;
      margin-bottom:18px;color:var(--orange);
      font-size:13px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;
    }
    .plataforma-kicker:before{content:"";width:28px;height:3px;border-radius:9px;background:var(--orange)}
    .plataforma-cabecalho h2{
      margin:0 0 20px;font-size:clamp(38px,4.5vw,68px);
      line-height:.98;letter-spacing:-.055em;text-transform:uppercase;color:var(--ink);
    }
    .plataforma-cabecalho h2 span{color:var(--orange)}
    .plataforma-resumo{
      max-width:760px;margin:0;color:#4c5361;
      font-size:clamp(18px,1.5vw,22px);line-height:1.6;
    }
    .plataforma-conteudo{
      display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
      align-items:center;gap:clamp(34px,5vw,76px);
    }
    .plataforma-detalhes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
    .plataforma-item{
      min-height:156px;display:flex;align-items:flex-start;gap:14px;
      padding:22px 20px;border:1px solid #e8ebf2;border-radius:18px;
      background:rgba(255,255,255,.88);box-shadow:0 10px 30px rgba(11,23,57,.035);
      transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
    }
    .plataforma-item:hover{transform:translateY(-4px);border-color:#ffd2a5;box-shadow:0 16px 34px rgba(11,23,57,.08)}
    .plataforma-item-numero{
      flex:0 0 35px;width:35px;height:35px;display:grid;place-items:center;
      border-radius:11px;background:#fff1e3;color:#e87500;font-size:12px;font-weight:900;
    }
    .plataforma-item h3{margin:2px 0 8px;color:var(--ink);font-size:16px;line-height:1.25}
    .plataforma-item p{margin:0;color:#626a79;font-size:14px;line-height:1.55}
    .plataforma-item-final{grid-column:1/-1;min-height:unset;align-items:center;background:var(--ink);border-color:var(--ink)}
    .plataforma-item-final h3{color:#fff}
    .plataforma-item-final p{color:#dce2ef}
    .plataforma-item-icone{
      flex:0 0 35px;width:35px;height:35px;display:grid;place-items:center;
      border-radius:50%;background:rgba(255,133,0,.18);color:#ffad4b;font-size:20px;font-weight:900;
    }
    .plataforma-visual{
      position:relative;min-width:0;padding:20px 20px 18px;
      border:1px solid #e8ebf2;border-radius:28px;background:#fff;
      box-shadow:0 28px 70px rgba(11,23,57,.10);
    }
    .plataforma-visual:before{
      content:"";position:absolute;z-index:0;inset:10% -12% -8% 12%;
      border-radius:30px;background:linear-gradient(135deg,rgba(255,133,0,.15),rgba(11,23,57,.035));
      filter:blur(22px);
    }
    .plataforma-visual-legenda,.plataforma-visual-rodape{position:relative;z-index:1}
    .plataforma-visual-legenda{display:flex;align-items:center;gap:9px;margin:2px 2px 17px;color:#626a79;font-size:12px;font-weight:700}
    .plataforma-ponto{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#22a06b;box-shadow:0 0 0 4px #e8f8ef}
    .plataforma-img{
      position:relative;z-index:1;display:block;float:none;width:100%;max-width:none;
      height:auto;margin:0;border-radius:15px;box-shadow:0 14px 34px rgba(11,23,57,.12);
    }
    .plataforma-visual-rodape{display:flex;flex-direction:column;gap:5px;padding:18px 4px 2px}
    .plataforma-visual-rodape strong{font-size:16px;color:var(--ink)}
    .plataforma-visual-rodape span{font-size:13px;line-height:1.5;color:#737b89}
    @media(max-width:980px){
      .plataforma-conteudo{grid-template-columns:1fr}
      .plataforma-visual{max-width:700px;width:100%;margin:0 auto}
    }
    @media(max-width:620px){
      .plataforma{padding:70px 24px}
      .plataforma-cabecalho{margin-bottom:30px}
      .plataforma-detalhes{grid-template-columns:1fr;gap:11px}
      .plataforma-item{min-height:unset;padding:18px 16px}
      .plataforma-item-final{grid-column:auto}
      .plataforma-visual{padding:13px;border-radius:20px}
      .plataforma-img{border-radius:12px}
      .plataforma-visual-rodape{padding:14px 3px 2px}
    }

    /* BLOCO 06 - PRÓXIMOS PASSOS */
    .proximos{
      padding:120px var(--gutter);
      background:#fff;
    }
    .proximos-head{
      max-width:900px;
      margin:0 auto 72px;
      text-align:center;
    }
    .proximos-kicker{
      color:var(--orange);
      font-weight:900;
      letter-spacing:.09em;
      text-transform:uppercase;
      font-size:14px;
    }
    .proximos-head h2{
      font-size:clamp(38px,4.2vw,67px);
      line-height:1;
      margin:14px 0 20px;
      text-transform:uppercase;
      letter-spacing:-.05em;
    }
    .proximos-head p{
      margin:0 auto;
      max-width:720px;
      font-size:clamp(18px,1.45vw,22px);
      line-height:1.55;
      color:#4c5361;
    }
    .passos-lista{
      max-width:1120px;
      margin:0 auto;
      display:grid;
      gap:28px;
    }
    .passo{
      display:grid;
      grid-template-columns:150px 1fr;
      align-items:center;
      min-height:150px;
      border-top:1px solid #e7e9ee;
    }
    .passo-numero{
      font-size:clamp(72px,8vw,124px);
      line-height:.8;
      font-weight:900;
      letter-spacing:-.08em;
      color:var(--orange);
    }
    .passo-texto h3{
      margin:0 0 10px;
      font-size:clamp(24px,2.1vw,34px);
      color:var(--ink);
    }
    .passo-texto p{
      margin:0;
      max-width:760px;
      color:#4c5361;
      font-size:clamp(17px,1.35vw,21px);
      line-height:1.55;
    }
    .proposta-cta{
      max-width:1120px;
      margin:70px auto 0;
      padding:clamp(38px,5vw,70px);
      border-radius:30px;
      background:var(--ink);
      color:#fff;
      text-align:center;
      box-shadow:0 28px 75px rgba(11,23,57,.18);
    }
    .proposta-cta h3{
      margin:0 0 16px;
      font-size:clamp(34px,4vw,62px);
      line-height:1;
      text-transform:uppercase;
      letter-spacing:-.045em;
    }
    .proposta-cta p{
      margin:0 auto 30px;
      max-width:700px;
      color:#dce2ef;
      font-size:clamp(17px,1.4vw,21px);
      line-height:1.55;
    }
    .proposta-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:20px 34px;
      border-radius:999px;
      background:var(--orange);
      color:#fff;
      font-weight:900;
      font-size:clamp(16px,1.25vw,20px);
      box-shadow:0 14px 34px rgba(255,133,0,.24);
      transition:.2s ease;
    }
    .proposta-btn:hover{transform:translateY(-3px)}

    /* BLOCO 07 - DEPOIMENTOS */
    .testimonials{padding:100px var(--gutter) 40px;background:#fff;min-height:760px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end}
    .test-copy{align-self:center;max-width:700px}
    .test-kicker{color:var(--orange);font-weight:900;letter-spacing:.08em;text-transform:uppercase}
    .test-copy h2{font-size:clamp(56px,6vw,96px);line-height:.92;margin:16px 0 28px;text-transform:uppercase;letter-spacing:-.055em}
    .testimonial-card{border:1px solid #e7e7e7;border-radius:26px;padding:34px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.06);cursor:pointer;transition:.25s ease}
    .testimonial-card:hover{transform:translateY(-4px);box-shadow:0 26px 70px rgba(0,0,0,.1)}
    .stars{color:var(--orange);letter-spacing:4px;font-size:24px}.quote{font-size:clamp(22px,2vw,31px);line-height:1.35;margin:18px 0 22px;color:#1b2230}.who{font-weight:900}.role{color:#727885;font-size:14px;margin-top:4px}
    .dots{display:flex;gap:9px;margin-top:24px}.dots span{width:9px;height:9px;border-radius:50%;background:#d5d5d5}.dots span.active{background:var(--orange)}
    .caricature{max-height:690px;justify-self:end;object-fit:contain;filter:drop-shadow(0 24px 30px rgba(0,0,0,.08))}

    /* CLIENTES - CARROSSEL CONTÍNUO */
    .clientes{
      padding:86px 0 78px;
      background:#fff;
      overflow:hidden;
      border-top:1px solid #edf0f4;
    }
    .clientes-head{
      text-align:center;
      padding:0 var(--gutter);
      margin-bottom:42px;
    }
    .clientes-head h2{
      margin:0 0 10px;
      font-size:clamp(32px,3.2vw,50px);
      line-height:1.05;
      text-transform:uppercase;
      letter-spacing:-.04em;
      color:var(--ink);
    }
    .clientes-head h2 span{color:var(--orange)}
    .clientes-head p{
      margin:0;
      color:#69707d;
      font-size:16px;
    }
    .clientes-marquee{
      width:100%;
      overflow:hidden;
      position:relative;
      -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
      mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
    }
    .clientes-track{
      display:flex;
      width:max-content;
      align-items:center;
      animation:clientes-scroll 30s linear infinite;
      will-change:transform;
    }
    .clientes-marquee:hover .clientes-track{animation-play-state:paused}
    .cliente-logo{
      width:250px;
      height:125px;
      margin:0 24px;
      flex:0 0 auto;
      display:flex;
      align-items:center;
      justify-content:center;
      background:#fff;
      border:1px solid #eef0f3;
      border-radius:18px;
      box-shadow:0 10px 28px rgba(11,23,57,.05);
    }
    .cliente-logo img{
      display:block;
      max-width:205px;
      max-height:92px;
      width:auto;
      height:auto;
      object-fit:contain;
    }
    @keyframes clientes-scroll{
      from{transform:translateX(0)}
      to{transform:translateX(-50%)}
    }


    /* NÚMEROS DE IMPACTO - ROTATIVO */
    .impacto{
      position:relative;
      overflow:hidden;
      padding:105px var(--gutter) 115px;
      background:#fff;
      border-top:1px solid #edf0f4;
      text-align:center;
    }
    .impacto-kicker{
      margin:0 0 38px;
      color:var(--orange);
      font-size:13px;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
    }
    .impacto-viewport{
      position:relative;
      max-width:1180px;
      min-height:280px;
      margin:0 auto;
      overflow:hidden;
    }
    .impacto-item{
      position:absolute;
      inset:0;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      opacity:0;
      transform:translateX(-90px);
      animation:impacto-rodizio 12s infinite ease-in-out;
    }
    .impacto-item:nth-child(2){animation-delay:4s}
    .impacto-item:nth-child(3){animation-delay:8s}
    .impacto-numero{
      display:block;
      font-size:clamp(70px,8vw,126px);
      line-height:.9;
      font-weight:900;
      letter-spacing:-.075em;
      color:var(--ink);
      white-space:nowrap;
    }
    .impacto-numero .laranja{color:var(--orange)}
    .impacto-label{
      margin-top:25px;
      font-size:clamp(19px,1.55vw,24px);
      line-height:1.25;
      font-weight:900;
      letter-spacing:.055em;
      text-transform:uppercase;
      color:#4c5361;
    }
    .impacto-detalhe{
      display:block;
      margin-top:8px;
      color:#8a909b;
      font-size:15px;
      font-weight:400;
      letter-spacing:0;
      text-transform:none;
    }
    @keyframes impacto-rodizio{
      0%   {opacity:0;transform:translateX(-90px)}
      8%   {opacity:1;transform:translateX(0)}
      27%  {opacity:1;transform:translateX(0)}
      34%  {opacity:0;transform:translateX(90px)}
      100% {opacity:0;transform:translateX(90px)}
    }

    /* RODAPÉ */
    .site-footer{
      background:var(--ink);
      color:#fff;
      padding:46px var(--gutter);
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:40px;
      align-items:end;
    }
    .footer-company{
      font-size:15px;
      line-height:1.6;
      font-weight:800;
    }
    .footer-info{
      text-align:right;
      font-size:14px;
      line-height:1.8;
      color:#dce2ef;
    }
    .footer-info a{
      color:#fff;
      font-weight:800;
    }
    .footer-info a:hover{color:var(--orange)}

    /* MODAL */
    .modal{position:fixed;inset:0;background:rgba(0,0,0,.86);display:none;align-items:center;justify-content:center;padding:28px;z-index:99}.modal.open{display:flex}.modal-box{width:min(100%,1000px);aspect-ratio:16/9;background:#000;border-radius:22px;position:relative;overflow:hidden}.modal-close{position:absolute;right:14px;top:14px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#111;font-size:26px;z-index:2;cursor:pointer}.modal-placeholder{height:100%;display:grid;place-items:center;color:#fff;text-align:center;padding:36px;font-size:22px;line-height:1.5}

    /* MENU RETRATIL - MOBILE */
    .nav-mobile-toggle{display:none;width:46px;height:42px;padding:9px 8px;border:0;background:transparent;cursor:pointer}
    .nav-mobile-toggle span{display:block;height:3px;margin:5px 0;border-radius:999px;background:var(--ink);transition:.2s ease}

    @media(max-width:980px){
      .top-contact{justify-content:center;font-size:11px;padding-top:2px}
      .nav{height:auto;min-height:74px;flex-wrap:wrap;gap:10px;padding:8px 0}
      .nav>a{display:flex;align-items:center;min-width:0}
      .nav-logo{width:auto;max-width:210px;height:auto;object-fit:contain}
      .nav-mobile-toggle{display:block;margin-left:auto;flex:0 0 46px}
      .nav-links{display:none;width:100%;flex:0 0 100%;padding:10px 0 16px;gap:0;align-items:stretch;border-top:1px solid #eceef2;background:#fff}
      .nav-links.nav-mobile-open{display:flex;flex-direction:column}
      .nav-links>a,.nav-item>a{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 8px;border-bottom:1px solid #f0f1f4}
      .nav-item{width:100%}
      .submenu{position:static;min-width:0;width:100%;padding:0 0 6px 12px;border:0;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none;display:block}
      .submenu a{white-space:normal;padding:10px 12px;font-size:13px}
      .nav-mobile-toggle.is-open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
      .nav-mobile-toggle.is-open span:nth-child(2){opacity:0}
      .nav-mobile-toggle.is-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
      .hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding-top:30px}.hero-photo-wrap{width:min(78vw,520px);min-height:0;justify-self:center}.video-frame{min-height:700px}.video-shade{inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.32))}.video-content{width:70%}.play{left:78%;top:70%}.gamificacao-layout{grid-template-columns:1fr}.gamificacao-carousel{justify-self:center;width:min(100%,470px);margin-top:10px}.testimonials{grid-template-columns:1fr}.caricature{justify-self:center;max-height:560px}
    }
    @media(max-width:620px){
      .site-shell{width:100%;margin:0}.hero{padding:12px 20px 0}.nav-logo{width:auto;max-width:190px;height:auto}.nav-cta{font-size:13px;padding:12px 14px}.hero-grid{min-height:unset}.hero-stats{gap:20px}.hero-photo-wrap{width:min(88vw,420px);min-height:0}.video-section{padding:44px 14px}.video-frame{min-height:650px;border-radius:18px}.video-content{left:28px;width:82%;top:38%}.video-logo{right:20px;top:20px;width:130px}.play{left:50%;top:72%;width:84px;height:84px}.certificados{padding:70px 24px}.certificado-img{float:none;display:block;margin:0 auto 28px}.gamificacao{padding:70px 24px}.gamificacao-layout{grid-template-columns:1fr;gap:24px}.gamificacao-carousel{width:100%;max-width:420px;justify-self:center;aspect-ratio:1 / 1.03;padding:12px;border-radius:18px}.gamificacao-copy p{font-size:18px}.plataforma{padding:70px 24px}.plataforma-copy{margin-bottom:34px}.plataforma-img{border-radius:16px}.proximos{padding:76px 24px}.proximos-head{margin-bottom:46px}.passo{grid-template-columns:86px 1fr;min-height:130px}.passo-numero{font-size:72px}.proposta-cta{margin-top:48px;border-radius:22px;padding:38px 24px}.proposta-btn{width:100%;padding:18px 20px}.testimonials{padding:62px 24px 20px}.test-copy h2{font-size:56px}.caricature{max-height:500px}.clientes{padding:64px 0 58px}.clientes-head{margin-bottom:30px}.cliente-logo{width:210px;height:108px;margin:0 14px}.cliente-logo img{max-width:175px;max-height:78px}.impacto{padding:72px 24px}.impacto-viewport{min-height:250px}.impacto-numero{font-size:clamp(58px,17vw,92px)}.site-footer{grid-template-columns:1fr;gap:18px;padding:38px 24px}.footer-info{text-align:left}
    }


/* Legenda da foto do CEO no bloco principal */
.hero-photo-area{
  text-align:center;
}
.hero-photo-caption{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  z-index:3;
  display:inline-block;
  min-width:245px;
  padding:11px 22px;
  border-radius:999px;
  background:#ff7a00;
  color:#fff;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  white-space:nowrap;
  pointer-events:none;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}
@media(max-width:600px){
  .hero-photo-caption{
    bottom:16px;
    min-width:0;
    padding:9px 16px;
    font-size:13px;
  }
}


/* ==========================================================
   REVENDA CURSO DE INGLÊS - BLOCO DE APRESENTAÇÃO
   ========================================================== */
.ingles-apresentacao{
  width:88%;
  max-width:1180px;
  margin:48px auto;
  padding:54px;
  border:1px solid #e6e8ec;
  border-radius:28px;
  background:#fff;
  overflow:auto;
}
.ingles-apresentacao-img{
  float:right;
  width:400px;
  max-width:42%;
  height:auto;
  margin:0 0 20px 20px;
  border-radius:50%;
  box-shadow:0 18px 45px rgba(8,29,61,.10);
}
.ingles-apresentacao-copy h2{
  margin:0 0 24px;
  font-size:clamp(32px,4vw,50px);
  line-height:1.08;
  color:#0b1d43;
}
.ingles-apresentacao-copy h2 span{color:#ff7a00}
.ingles-apresentacao-copy p{
  margin:0 0 18px;
  font-size:18px;
  line-height:1.7;
  color:#3d4656;
}
@media(max-width:820px){
  .ingles-apresentacao{
    width:92%;
    padding:30px;
    border-radius:22px;
  }
  .ingles-apresentacao-img{
    float:none;
    display:block;
    width:400px;
    max-width:100%;
    margin:0 auto 28px;
  }
}



/* ==========================================================
   BLOCO 03 - CERTIFICADOS: VITRINE INTERATIVA
   ========================================================== */
.certificados{
  padding:clamp(76px,8vw,118px) var(--gutter);
  background:
    radial-gradient(ellipse at 82% 48%, rgba(255,133,0,.075), transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  overflow:hidden;
}
.certificados-layout{
  width:100%;
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.82fr);
  align-items:center;
  gap:clamp(38px,6vw,92px);
}
.certificados-copy{min-width:0}
.certificados-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:18px;
  color:var(--orange);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.certificados-kicker:before{
  content:"";
  display:block;
  width:28px;
  height:3px;
  border-radius:10px;
  background:var(--orange);
}
.certificados-copy h2{
  max-width:760px;
  margin:0 0 22px;
  color:var(--ink);
  font-size:clamp(36px,4vw,62px);
  line-height:.99;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.certificados-copy h2 span{color:var(--orange)}
.certificados-copy .certificados-intro{
  margin:0 0 28px;
  color:#303745;
  font-size:clamp(18px,1.45vw,22px);
  line-height:1.5;
  font-weight:700;
}
.certificados-beneficios{
  display:grid;
  gap:12px;
  margin:0 0 25px;
}
.certificado-beneficio{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:13px;
  align-items:start;
  padding:14px 16px;
  border:1px solid #edf0f5;
  border-radius:15px;
  background:rgba(255,255,255,.82);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.certificado-beneficio:hover{
  transform:translateX(4px);
  border-color:#ffd5ad;
  box-shadow:0 12px 28px rgba(11,23,57,.055);
}
.certificado-beneficio-icone{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  background:#fff1e3;
  color:#ed7900;
  font-size:20px;
  font-weight:900;
}
.certificado-beneficio h3{
  margin:1px 0 4px;
  color:var(--ink);
  font-size:16px;
  line-height:1.25;
}
.certificado-beneficio p{
  margin:0;
  color:#606878;
  font-size:15px;
  line-height:1.45;
}
.certificados-copy .certificados-observacao{
  margin:0;
  max-width:760px;
  color:#626a79;
  font-size:15px;
  line-height:1.6;
}
.certificados-vitrine{
  position:relative;
  display:grid;
  place-items:center;
  min-height:530px;
  isolation:isolate;
}
.certificados-brilho{
  position:absolute;
  z-index:-1;
  width:88%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,133,0,.13),rgba(255,133,0,.035) 48%,transparent 72%);
  filter:blur(8px);
}
.certificado-preview{
  position:relative;
  display:block;
  width:min(100%,420px);
  padding:0;
  border:0;
  border-radius:12px;
  background:#fff;
  cursor:zoom-in;
  transform:perspective(1200px) rotateY(-5deg) rotateZ(-1deg);
  box-shadow:0 28px 55px rgba(11,23,57,.17),0 5px 14px rgba(11,23,57,.07);
  transition:transform .35s ease,box-shadow .35s ease;
}
.certificado-preview:hover,
.certificado-preview:focus-visible{
  transform:perspective(1200px) rotateY(0) rotateZ(0) translateY(-5px) scale(1.015);
  box-shadow:0 34px 70px rgba(11,23,57,.21),0 8px 18px rgba(11,23,57,.08);
  outline:none;
}
.certificado-img{
  display:block;
  width:100%;
  height:auto;
  max-height:450px;
  object-fit:contain;
  border-radius:12px;
}
.certificado-preview-cta{
  position:absolute;
  left:50%;
  bottom:15px;
  transform:translate(-50%,8px);
  display:flex;
  align-items:center;
  gap:7px;
  padding:10px 15px;
  border:1px solid rgba(255,255,255,.6);
  border-radius:999px;
  background:rgba(11,23,57,.88);
  color:#fff;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
  opacity:0;
  transition:opacity .22s ease,transform .22s ease;
}
.certificado-preview-cta span{font-size:18px;line-height:12px;color:#ffad4b}
.certificado-preview:hover .certificado-preview-cta,
.certificado-preview:focus-visible .certificado-preview-cta{
  opacity:1;
  transform:translate(-50%,0);
}
.certificado-selo{
  position:absolute;
  right:-2px;
  bottom:35px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:13px 17px;
  border:1px solid rgba(231,234,240,.9);
  border-radius:16px;
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 34px rgba(11,23,57,.10);
  backdrop-filter:blur(10px);
}
.certificado-selo>span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#e9f8ef;
  color:#16834a;
  font-size:18px;
  font-weight:900;
}
.certificado-selo strong,.certificado-selo small{display:block}
.certificado-selo strong{font-size:13px;color:var(--ink)}
.certificado-selo small{margin-top:3px;font-size:11px;color:#737b89}
.certificado-modal{
  position:fixed;
  inset:0;
  z-index:999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(5,12,30,.84);
  backdrop-filter:blur(8px);
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease,visibility .25s ease;
}
.certificado-modal.aberto{opacity:1;visibility:visible}
.certificado-modal-conteudo{
  position:relative;
  width:min(100%,900px);
  max-height:92vh;
  padding:20px 20px 12px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:20px;
  background:#fff;
  box-shadow:0 30px 90px rgba(0,0,0,.35);
  transform:translateY(12px) scale(.985);
  transition:transform .25s ease;
}
.certificado-modal.aberto .certificado-modal-conteudo{transform:translateY(0) scale(1)}
.certificado-modal-conteudo img{
  display:block;
  width:auto;
  max-width:100%;
  max-height:calc(92vh - 80px);
  margin:0 auto;
  object-fit:contain;
}
.certificado-modal-conteudo p{
  margin:10px 0 0;
  text-align:center;
  color:#737b89;
  font-size:12px;
}
.certificado-modal-fechar{
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  width:40px;
  height:40px;
  border:0;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
body.certificado-modal-aberto{overflow:hidden}
@media(max-width:980px){
  .certificados-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:30px}
  .certificados-vitrine{min-height:430px}
  .certificado-selo{right:-8px;bottom:15px}
}
@media(max-width:760px){
  .certificados{padding:72px 24px}
  .certificados-layout{grid-template-columns:1fr;gap:28px}
  .certificados-copy h2{font-size:clamp(34px,8vw,48px)}
  .certificados-vitrine{min-height:unset;padding:12px 8px 42px}
  .certificado-preview{width:min(100%,390px);transform:none}
  .certificado-preview-cta{opacity:1;transform:translate(-50%,0)}
  .certificado-selo{right:0;bottom:0}
}
@media(prefers-reduced-motion:reduce){
  .certificado-beneficio,.certificado-preview,.certificado-preview-cta,.certificado-modal,.certificado-modal-conteudo{transition:none}
}
