/* =========================================================================
     DESIGN SYSTEM, Agência Home Office
     Tinta neutra quente + ameixa contida + areia. Sem halo, sem gradiente,
     sem pílula: geometria de fio de cabelo e hierarquia por tipografia.
     ========================================================================= */
  *{box-sizing:border-box;}
  body{margin:0;background:#0e0d10;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
  ::selection{background:#493063;color:#fff;}
  a{color:var(--accent,#9a7ac0);text-decoration:none;}
  a:hover{color:var(--lav,#c4a9e0);}
  ::placeholder{color:#6b655c;}
  @keyframes hoPulse{0%,100%{opacity:.45;}50%{opacity:1;}}
  img{max-width:100%;}

  /* Grão de papel no lugar dos halos ---------------------------------- */
  body::after{content:'';position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.05;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/></filter><rect width='160' height='160' filter='url(%23n)' opacity='.5'/></svg>");}

  /* --- Camada de correção: neutraliza os tiques do estilo antigo ------ */
  [data-hidden]{display:none !important;}
  /* halos decorativos: só o que junta radial-gradient + blur.
     NÃO usar [style*="filter: blur"] sozinho, casa com backdrop-filter
     e derruba o Painel da Rede e o fundo do modal. */
  div[style*="radial-gradient"][style*="filter:blur"],
  div[style*="radial-gradient"][style*="filter: blur"]{display:none !important;}
  [style*="box-shadow"]{box-shadow:none !important;}                                /* brilho colorido */
  [data-modal-card]{box-shadow:0 30px 80px rgba(0,0,0,.6) !important;}
  [data-card],
  [data-card][style]{background:var(--surface) !important;}
  [data-card]:hover{transform:none !important;border-color:var(--line-2) !important;}

  /* Botões: retangulares, sólidos, inversão no hover ------------------- */
  [data-open-modal],[data-next],[data-submit]{
    background:var(--accent) !important;border:1px solid var(--accent) !important;color:#14111a !important;
    border-radius:2px !important;font-family:'Montserrat',sans-serif !important;font-weight:700 !important;
    letter-spacing:.01em !important;transform:none !important;
    transition:background .18s ease,color .18s ease,border-color .18s ease !important;}
  [data-open-modal]:hover,[data-next]:hover,[data-submit]:hover{
    background:transparent !important;color:var(--lav) !important;border-color:var(--lav) !important;transform:none !important;}
  [data-prev]{border-radius:2px !important;}

  /* Play: círculo sólido, discreto ------------------------------------ */
  [data-video-glow]{background:var(--accent) !important;width:62px !important;height:62px !important;}
  [data-video]:hover [data-video-glow]{background:var(--lav) !important;}
  [data-video]{transform:none !important;}

  /* Chip de sucesso do modal ------------------------------------------ */
  [data-msuccess] > div:first-child{background:var(--lav) !important;color:#14111a !important;}

  /* Rótulos de seção com fio de entrada -------------------------------- */

  /* --- TESTE: imagem de fundo do hero -------------------------------- */
  /* sobe --nav-h (altura real do header, medida no JS) para a imagem
     passar por baixo do logotipo enquanto o header está transparente */
  [data-hero-bg]{position:absolute;top:calc(-1 * var(--nav-h,64px) - 8px);left:0;right:0;bottom:0;
    z-index:0;pointer-events:none;
    background-image:url('../img/desk-aho.png');background-image:image-set(url('../img/desk-aho.avif') type('image/avif'),url('../img/desk-aho.png'));
    background-size:cover;background-position:center;background-repeat:no-repeat;}
  /* a arte já traz o próprio degradê à esquerda: aqui só reforço leve para o
     texto e as emendas de topo/rodapé com a página */
  [data-hero-bg]::after{content:'';position:absolute;inset:0;background:
    linear-gradient(90deg,rgba(14,13,16,.92) 0%,rgba(14,13,16,.74) 30%,rgba(14,13,16,.36) 54%,rgba(14,13,16,.1) 78%,transparent 92%),
    linear-gradient(180deg,rgba(14,13,16,.45) 0%,transparent 20%,transparent 64%,var(--ink) 100%);}
  /* vídeo do hero oculto: o texto assume a coluna inteira */
  [data-hero] [data-video-col]{display:none !important;}
  [data-hero]{grid-template-columns:minmax(0,1fr) !important;}
  [data-hero] > div{max-width:620px;}

  /* --- Depoimentos: 3 x 3 players VTurb ------------------------------ */
  [data-vturb-grid]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px;}
  [data-vturb-card]{margin:0;}
  [data-vturb-frame]{display:block;border:1px solid var(--line);border-radius:2px;overflow:hidden;
    background:#000;line-height:0;transition:border-color .22s;}
  [data-vturb-card]:hover [data-vturb-frame]{border-color:var(--line-2);}
  [data-vturb-card] figcaption{margin-top:13px;}
  [data-vturb-card] figcaption b{display:block;font-family:'Montserrat',sans-serif;font-weight:600;
    font-size:15px;line-height:1.35;color:var(--txt);}
  [data-vturb-card] figcaption span{display:block;margin-top:3px;font-family:'Montserrat',sans-serif;
    font-size:13px;line-height:1.45;color:var(--txt-3);}
  [data-vturb-card] figcaption i{display:inline-block;margin-top:10px;font-family:'Playfair Display',serif;font-style:italic;font-weight:600;font-size:16.5px;line-height:1.35;color:#f3f0ea;background:linear-gradient(180deg,transparent 60%,rgba(154,122,192,.4) 60%);padding:0 3px;}
  @media (max-width:900px){[data-vturb-grid]{grid-template-columns:repeat(2,minmax(0,1fr));}}
  @media (max-width:560px){[data-vturb-grid]{grid-template-columns:minmax(0,1fr);}}

  /* --- Fundador / Grupo Fly ------------------------------------------ */
  [data-founder]{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);
    gap:clamp(28px,4vw,56px);align-items:start;}
  [data-founder-photo]{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;
    border:1px solid var(--line);background:var(--surface);border-radius:2px;}
  [data-founder-img]{position:absolute;inset:0;background-size:cover;background-position:66% center;
    filter:saturate(.92);}
  [data-founder-text] h3{margin:0 0 16px;font-family:'Playfair Display',serif;font-weight:600;
    font-size:clamp(24px,2.6vw,32px);letter-spacing:-.01em;color:#f3f0ea;}
  [data-founder-lead]{margin:0 0 18px;font-family:'Playfair Display',serif;font-style:italic;
    font-weight:500;font-size:clamp(18px,1.9vw,23px);line-height:1.45;color:#d2ccc2;}
  [data-founder-lead] b{font-style:normal;font-weight:700;color:#fff;}
  [data-founder-text] > p:last-child{margin:0;font-family:'Montserrat',sans-serif;font-size:16px;
    line-height:1.65;color:var(--txt-2);}

  /* =========================================================================
     Carrossel de matérias
     ========================================================================= */
  [data-materias]{--mgap:14px;margin-bottom:52px;}
  [data-materias-head]{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
    border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:22px;}
  [data-materias-head] p{margin:0;font-family:'Montserrat',sans-serif;font-weight:700;font-size:11px;
    letter-spacing:.18em;text-transform:uppercase;color:var(--txt-3);}
  [data-materias-nav]{display:flex;gap:8px;}
  [data-materias-nav] button{width:42px;height:32px;border:1px solid var(--line-2);background:transparent;
    color:var(--txt-2);font-size:15px;line-height:1;cursor:pointer;border-radius:2px;
    transition:border-color .18s,color .18s,background .18s;}
  [data-materias-nav] button:hover{border-color:var(--lav);color:#14111a;background:var(--lav);}
  [data-materias-track]{display:grid;grid-auto-flow:column;
    grid-auto-columns:calc((100% - var(--mgap)*3)/4);gap:var(--mgap);
    overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;outline:none;}
  [data-materias-track]::-webkit-scrollbar{display:none;}
  [data-mat-slide]{margin:0;scroll-snap-align:start;}
  [data-mat-frame]{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;
    border:1px solid var(--line);background:var(--surface);border-radius:2px;}
  [data-mat-img]{position:absolute;inset:0;background-size:cover;background-position:top center;
    filter:saturate(.92);transition:transform .5s cubic-bezier(.2,.7,.2,1);}
  [data-mat-slide]:hover [data-mat-img]{transform:scale(1.035);}
  [data-mat-slide]:hover [data-mat-frame]{border-color:var(--line-2);}
  [data-mat-ph]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    font-family:'Montserrat',sans-serif;font-weight:700;font-size:10.5px;letter-spacing:.2em;color:#413c36;}
  [data-mat-slide] figcaption{margin-top:11px;font-family:'Montserrat',sans-serif;font-size:12.5px;
    line-height:1.45;color:var(--txt-3);}
  [data-mat-slide] figcaption b{color:var(--txt-2);font-weight:600;}
  [data-materias-rail]{margin-top:20px;height:2px;background:var(--line);position:relative;}
  [data-materias-bar]{position:absolute;top:0;height:100%;width:25%;left:0;background:var(--lav);
    transition:left .25s ease,width .25s ease;}

  /* ===== Responsivo ===== */
  @media (max-width:1000px){
    [data-materias-track]{grid-auto-columns:calc((100% - var(--mgap)*2)/3);}
  }
  @media (max-width:860px){
    /* arte vertical: a plateia vira faixa no topo e o texto começa abaixo dela */
    [data-hero-bg]{background-image:url('../img/mobile-aho.png');background-image:image-set(url('../img/mobile-aho.avif') type('image/avif'),url('../img/mobile-aho.png'));background-position:top center;}
    [data-hero-bg]::after{background:linear-gradient(180deg,rgba(14,13,16,.42) 0%,rgba(14,13,16,.12) 10%,rgba(14,13,16,.5) 19%,var(--ink) 33%) !important;}
    [data-hero]{padding-top:78px !important;}
    [data-hero]{grid-template-columns:1fr !important;gap:34px !important;}
    [data-hero] [data-video-col]{max-width:520px;margin:0 auto;width:100%;}
    [data-compare]{grid-template-columns:1fr !important;margin-top:34px !important;}
  }
  @media (max-width:720px){
    [data-materias-track]{grid-auto-columns:calc((100% - var(--mgap))/2);}
  }
  @media (max-width:640px){
    [data-spine] > [data-reveal]{gap:16px !important;}
    [data-spine] > [data-reveal] > div:last-child{padding:18px !important;}
    [data-spine] > [data-reveal] > div:first-child{width:52px !important;}
    [data-spine] [data-node]{width:52px !important;height:52px !important;font-size:17px !important;}
    [data-spine-track],[data-spine-fill]{left:25px !important;}
    [data-founder]{grid-template-columns:minmax(0,1fr) !important;gap:22px !important;}
    [data-founder-photo]{max-width:260px;}
    [data-panel-num]{font-size:32px !important;}
    [data-digit]{font-size:28px !important;padding:3px 9px !important;}
  }
  @media (max-width:560px){
    header[data-nav] > div{padding-top:14px !important;padding-bottom:14px !important;gap:12px !important;}
    header[data-nav] [data-brandmark]{font-size:18px !important;}
    [data-hero] [data-open-modal]{width:100%;justify-content:center;}
  }
  @media (max-width:480px){
    [data-materias-track]{grid-auto-columns:76%;}
  }
  @media (max-width:400px){
    [data-digit]{font-size:24px !important;padding:2px 7px !important;}
  }
  @media (prefers-reduced-motion:reduce){
    *{animation:none !important;transition-duration:.01ms !important;}
  }

  /* Spinner (envio do formulário) */
  .dc-spinner{display:inline-block;width:40px;height:40px;border:3px solid rgba(255,255,255,.14);
    border-top-color:var(--accent);border-radius:50%;animation:dc-spin .8s linear infinite;}
  @keyframes dc-spin{to{transform:rotate(360deg);}}

  /* Seletor de país (telefone) */
  [data-tel-toggle]:hover{border-color:var(--line-2);}
  [data-tel-list] .tel-opt{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;
    background:transparent;color:var(--txt);font-family:'Montserrat',sans-serif;font-size:14px;cursor:pointer;text-align:left;}
  [data-tel-list] .tel-opt:hover,[data-tel-list] .tel-opt.on{background:rgba(255,255,255,.06);}
  [data-tel-list] .tel-opt .fl{font-size:17px;line-height:1;flex:none;}
  [data-tel-list] .tel-opt .nm{flex:1;}
  [data-tel-list] .tel-opt .dl{color:var(--txt-2);}
  [data-tel-menu]::-webkit-scrollbar{width:8px;}
  [data-tel-menu]::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:8px;}
