/* ===================================================================
   IGORBRASIL · CYX · DESIGN SYSTEM PREMIUM (.cyx-*)
   Sistema visual novo, isolado e reutilizavel. Carrega DEPOIS do
   premium.css (depende do handle 'igorbrasil-premium'). Enfileirado
   por inc/security.php. NAO sobrescreve .cy-card / .cy-feat /
   .cy-grid-feat nem nenhum componente antigo. So classes .cyx-*,
   tokens proprios (--cyx-*) e keyframes proprios (cyx-*).
   Sera aplicado primeiro na Home (Sprint 1) e depois reaproveitado
   em Mentoria, Comunidade e Blog. Motion 100% CSS. Sem JS.
   z-index usado e LOCAL ao card (pseudo decorativo), nao camada global.
   =================================================================== */
:root{
  --cyx-pad:clamp(20px,2vw,28px);
  --cyx-gap:clamp(16px,1.6vw,24px);
  --cyx-ease:cubic-bezier(.22,1,.36,1);
}

/* ---- MOLDURA HUD reutilizavel (4 cantos em colchete, acendem no hover) ---- */
.cyx-frame{ position:relative; }
.cyx-frame::before{
  content:''; position:absolute; inset:0; pointer-events:none; z-index:3;
  --c:rgba(var(--cy-neon-rgb),.55); --s:13px; --t:1px;
  background:
    linear-gradient(var(--c),var(--c)) 0 0/var(--s) var(--t),
    linear-gradient(var(--c),var(--c)) 0 0/var(--t) var(--s),
    linear-gradient(var(--c),var(--c)) 100% 0/var(--s) var(--t),
    linear-gradient(var(--c),var(--c)) 100% 0/var(--t) var(--s),
    linear-gradient(var(--c),var(--c)) 0 100%/var(--s) var(--t),
    linear-gradient(var(--c),var(--c)) 0 100%/var(--t) var(--s),
    linear-gradient(var(--c),var(--c)) 100% 100%/var(--s) var(--t),
    linear-gradient(var(--c),var(--c)) 100% 100%/var(--t) var(--s);
  background-repeat:no-repeat; opacity:.45; transition:opacity .3s var(--cyx-ease);
}
.cyx-frame:hover::before{ opacity:1; }

/* ---- CARD base ---- */
.cyx-card{
  position:relative; display:flex; flex-direction:column; overflow:hidden;
  background:var(--cy-panel); border:1px solid var(--cy-line);
  text-decoration:none; color:inherit;
  transition:transform .4s var(--cyx-ease), border-color .3s, box-shadow .3s;
}
.cyx-card::after{   /* linha neon que "desenha" no topo no hover */
  content:''; position:absolute; left:0; top:0; height:2px; width:100%; z-index:4;
  background:linear-gradient(90deg,var(--cy-neon),transparent);
  transform:scaleX(0); transform-origin:left; pointer-events:none;
  transition:transform .45s var(--cyx-ease);
}
.cyx-card:hover{ transform:translateY(-4px); border-color:var(--cy-line-neon);
  box-shadow:0 24px 50px rgba(0,0,0,.5), 0 0 26px rgba(var(--cy-neon-rgb),.08); }
.cyx-card:hover::after{ transform:scaleX(1); }

/* ---- CARD de CONTEUDO (post) ---- */
.cyx-card__media{ position:relative; overflow:hidden; aspect-ratio:16/9; background:#050505; }
.cyx-card__media img{ width:100%; height:100%; object-fit:cover; display:block;
  filter:saturate(.92); transition:transform .6s var(--cyx-ease), filter .4s; }
.cyx-card--content:hover .cyx-card__media img{ transform:scale(1.05); filter:saturate(1.05); }
.cyx-card__body{ display:flex; flex-direction:column; gap:10px; padding:var(--cyx-pad); flex:1; }
.cyx-card__cat{ align-self:flex-start; font-family:var(--wp--preset--font-family--mono);
  font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--cy-neon); border:1px solid var(--cy-line-neon); padding:4px 9px; }
.cyx-card__title{ font-family:var(--wp--preset--font-family--display); text-transform:uppercase;
  font-size:clamp(21px,1.9vw,28px); line-height:1.04; letter-spacing:.01em; color:var(--cy-bone); margin:2px 0 0;
  transition:color .25s; }
.cyx-card--content:hover .cyx-card__title{ color:#fff; text-shadow:0 0 10px rgba(255,255,255,.32),0 0 22px rgba(255,255,255,.24); }
.cyx-card__desc{ font-family:var(--wp--preset--font-family--mono); font-size:13px; line-height:1.6;
  color:var(--cy-smoke); margin:0;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.cyx-card__foot{ display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin-top:auto; padding-top:14px; border-top:1px solid var(--cy-line);
  font-family:var(--wp--preset--font-family--mono); font-size:11px; letter-spacing:.08em; }
.cyx-card__date{ color:var(--cy-smoke); text-transform:uppercase; }
.cyx-readmore{ display:inline-flex; align-items:center; gap:7px; color:var(--cy-neon);
  font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.cyx-ar{ transition:transform .3s var(--cyx-ease); }
.cyx-card:hover .cyx-ar{ transform:translateX(4px); }

/* ---- CARD de ARGUMENTO ---- */
.cyx-card--arg{ gap:14px; padding:var(--cyx-pad); }
.cyx-card__icon{ width:48px; height:48px; display:grid; place-items:center;
  border:1px solid var(--cy-line); background:rgba(255,255,255,.02); color:var(--cy-smoke);
  transition:color .3s, border-color .3s, background .3s; }
.cyx-card--arg:hover .cyx-card__icon{ color:var(--cy-neon); border-color:var(--cy-line-neon);
  background:rgba(var(--cy-neon-rgb),.05); }
.cyx-card--arg .cyx-card__title{ font-size:clamp(20px,1.7vw,26px); }
.cyx-card--arg .cyx-card__desc{ -webkit-line-clamp:unset; }

/* ---- ICONE SVG inline (Lucide): stroke herda a cor do contexto ---- */
.cyx-ico{ width:26px; height:26px; stroke:currentColor; fill:none;
  stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; display:block; }

/* ---- GRID de cards ---- */
.cyx-grid{ display:grid; gap:var(--cyx-gap); }
.cyx-grid--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.cyx-grid--4{ grid-template-columns:repeat(4,minmax(0,1fr)); }

/* ---- HERO em 2 colunas (so via .cyx-hero-grid, nao toca .cy-hero) ---- */
.cyx-hero-grid{ display:grid; grid-template-columns:minmax(0,1.26fr) minmax(0,.74fr);
  gap:clamp(20px,2.6vw,46px); align-items:start; }

/* ---- PAINEL HUD do hero (contrapeso a direita) ---- */
.cyx-hudpanel{ background:var(--cy-panel); border:1px solid var(--cy-line-neon);
  padding:clamp(18px,1.8vw,26px); display:flex; flex-direction:column; gap:16px; }
.cyx-hudpanel__head{ display:flex; align-items:center; gap:9px;
  font-family:var(--wp--preset--font-family--mono); font-size:12px; font-weight:700;
  letter-spacing:.16em; text-transform:uppercase; color:var(--cy-neon);
  padding-bottom:14px; border-bottom:1px solid var(--cy-line); }
.cyx-dot{ width:8px; height:8px; border-radius:50%; background:var(--cy-neon);
  box-shadow:0 0 10px var(--cy-neon); animation:cyx-pulse 2s ease-in-out infinite; }
.cyx-hudpanel__rows{ display:flex; flex-direction:column; gap:11px; }
.cyx-hudpanel__row{ display:flex; align-items:baseline; justify-content:space-between; gap:14px;
  font-family:var(--wp--preset--font-family--mono); font-size:12px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--cy-smoke);
  border-bottom:1px dashed var(--cy-line); padding-bottom:10px; }
.cyx-hudpanel__row b{ color:var(--cy-bone); font-weight:700; }
@keyframes cyx-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.35; } }

/* PADRAO GLOBAL · subtitulo de hero (size fluido + largura + ritmo).
   A Home mantem o seu (override inline), aqui padroniza Mentoria/demais. */
.cy-sub{ font-size:clamp(16px,1.4vw,20px); line-height:1.6; max-width:64ch; }

/* ===================================================================
   HERO da MENTORIA · MESMA ARQUITETURA DA HOME, SEM HUD.
   Como na Home: eyebrow + pill + H1 + sub + CTA + stats sao filhos
   DIRETOS de .cy-inner (largura TOTAL do container 1400), espacamento
   pelo .cy-inner > * do cyber. H1 dominante espelhando .cy-home .cy-title:
   .w (linha 1, 28 car) > .n (linha 2, 33 car) pra PREENCHER a largura.
   Sem coluna estreita, sem espaco morto lateral, sem HUD. As linhas da
   Mentoria sao mais longas que a Home -> escala um pouco menor + vw
   calibrado pra a 2a linha caber sem nowrap (nunca overflow horizontal).
   =================================================================== */
.mentoria-main .cy-hero .cy-inner{ display:flex; flex-direction:column; align-items:center; text-align:center; }
.mentoria-main .cy-actions{ justify-content:center; }
.mentoria-main .cy-title{ max-width:none; line-height:.9; letter-spacing:-.02em; margin:0 0 26px; text-align:center; }
.mentoria-main .cy-title .w,
.mentoria-main .cy-title .n{ display:block; white-space:normal; }
.mentoria-main .cy-title .w{ font-size:clamp(50px,9.4vw,130px); }
.mentoria-main .cy-title .n{ font-size:clamp(44px,8vw,110px); }
.mentoria-main .cy-sub{ max-width:780px; }
/* Blog: titulo "SEGREDOS DA IA // NEWS" em UMA LINHA (NEWS era display:block -> caia pra 2a linha) */
.cy-title--news em{ display:inline !important; margin-top:0 !important; }
@media(min-width:901px){ .cy-title--news{ white-space:nowrap; } }
@media(max-width:1024px){
  .mentoria-main .cy-title .w{ font-size:clamp(52px,8.5vw,97px); }
  .mentoria-main .cy-title .n{ font-size:clamp(46px,7.3vw,84px); }
}
@media(max-width:768px){
  .mentoria-main .cy-title{ line-height:.95; letter-spacing:-.01em; }
  .mentoria-main .cy-title .w{ font-size:clamp(34px,8.8vw,67px); }
  .mentoria-main .cy-title .n{ font-size:clamp(30px,7.6vw,59px); }
}

/* ===================================================================
   HERO da COMUNIDADE · headline GRANDE + CENTRALIZADO (sem espaco morto).
   Mesma escala editorial das paginas principais, mas CENTRALIZADO a pedido.
   Linhas curtas ("SEM RUIDO." / "SO QUEM CONSTROI.") cabem grandes centradas.
   =================================================================== */
.comunidades-main .cy-hero .cy-inner{ display:flex; flex-direction:column; align-items:center; text-align:center; }
.comunidades-main .cy-actions{ justify-content:center; }
.comunidades-main .cy-sub{ max-width:760px; }
.comunidades-main .cy-title{ max-width:none; line-height:.9; letter-spacing:-.02em; text-align:center; }
/* linha 1 (.w, 24 car) MAIOR que linha 2 (.n, 31 car) pra alinhar a largura das duas */
.comunidades-main .cy-title .w{ font-size:clamp(52px,10.8vw,139px); }
.comunidades-main .cy-title .n{ font-size:clamp(40px,8.4vw,108px); }
/* titulos de secao da Comunidade tambem centralizados (O QUE ROLA / ESCOLHA COMO ENTRAR) */
.comunidades-main .cy-sec-head{ justify-content:center; position:relative; }
.comunidades-main .cy-sec-head__t{ flex:none; text-align:center; }
/* nudge p/ esquerda so nos titulos com numero (compensa o "0X /" e centra o titulo na caixa) */
.comunidades-main .cy-sec-head:has(.cy-sec-head__i){ left:clamp(-46px,-2.2vw,-26px); }
@media(max-width:768px){
  .comunidades-main .cy-title{ line-height:.95; letter-spacing:-.01em; }
  .comunidades-main .cy-title .w{ font-size:clamp(28px,7.6vw,56px); }
  .comunidades-main .cy-title .n{ font-size:clamp(22px,5.9vw,44px); }
}

/* ---- MANIFESTO (5 frases, escala editorial) ---- */
.cyx-manifesto{ list-style:none; margin:0; padding:0; }
.cyx-manifesto__line{ display:flex; gap:clamp(16px,2vw,26px); align-items:flex-start;
  padding:clamp(7px,1vh,12px) 0; border-top:1px solid var(--cy-line);
  font-family:var(--wp--preset--font-family--mono); text-transform:none;
  font-size:clamp(15px,1.25vw,18px); line-height:1.6; letter-spacing:.01em; color:var(--cy-bone); }
.cyx-manifesto__line:last-child{ border-bottom:1px solid var(--cy-line); }
.cyx-manifesto__i{ flex:none; font-family:var(--wp--preset--font-family--mono);
  font-size:13px; font-weight:700; letter-spacing:.1em; color:var(--cy-neon); padding-top:.18em; }

/* ---- RESPONSIVO ---- */
@media(max-width:1024px){ .cyx-grid--4{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:900px){
  .cyx-hero-grid{ grid-template-columns:1fr; gap:32px; }
  .cyx-hudpanel{ max-width:520px; }
}
@media(max-width:680px){
  .cyx-grid--3, .cyx-grid--4{ grid-template-columns:1fr; }
}

/* ---- ACESSIBILIDADE: respeita prefers-reduced-motion ---- */
@media(prefers-reduced-motion:reduce){
  .cyx-card, .cyx-card *, .cyx-card::after, .cyx-frame::before,
  .cyx-card__media img, .cyx-ar{ transition:none !important; }
  .cyx-card:hover{ transform:none !important; }
  .cyx-card--content:hover .cyx-card__media img{ transform:none !important; }
  .cyx-card:hover::after{ transform:scaleX(1) !important; }
  .cyx-dot, .cyx-card--content:hover .cyx-card__title{ animation:none !important; }
}

/* ===================================================================
   SPRINT 1E · refino dos posts da Home
   =================================================================== */

/* titulo do post como LINK: OFF-WHITE por padrao (vence o link-neon do theme.json),
   neon SO no hover, sem sublinhado. !important pra ser bulletproof. */
.cyx-card__title a{ color:var(--cy-bone) !important; text-decoration:none !important; transition:color .25s; }
.cyx-card--content:hover .cyx-card__title a{ color:#fff !important; text-shadow:0 0 10px rgba(255,255,255,.32),0 0 22px rgba(255,255,255,.24); }

/* POSTS EM ALTA: 1o post vira MATERIA DE DESTAQUE horizontal (resolve o "1 post
   sozinho numa grade vazia"). O WP envolve cada post num <li>; o 1o ocupa a
   largura toda e o card vira 2 colunas (imagem | conteudo). Demais posts (se
   houver) caem na grade normal abaixo. */
.cyx-grid-feat > li:first-child{ grid-column:1 / -1; }
.cyx-grid-feat > li:first-child .cyx-card--content{
  display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); align-items:center; }
.cyx-grid-feat > li:first-child .cyx-card__media{ grid-column:1; aspect-ratio:16/10; }
.cyx-grid-feat > li:first-child .cyx-card__body{ grid-column:2; padding:clamp(28px,3vw,52px); gap:13px; }
.cyx-grid-feat > li:first-child .cyx-card__title{ font-size:clamp(26px,3vw,42px); }
.cyx-grid-feat > li:first-child .cyx-card__desc{ -webkit-line-clamp:3; font-size:14.5px; line-height:1.65; }
@media(max-width:820px){
  .cyx-grid-feat > li:first-child .cyx-card--content{ display:flex; }
  .cyx-grid-feat > li:first-child .cyx-card__media{ aspect-ratio:16/9; }
  .cyx-grid-feat > li:first-child .cyx-card__body{ padding:var(--cyx-pad); }
}

/* micro-glitch de terminal no hover do card de conteudo (so CSS, curto, sutil) */
@keyframes cyx-title-glitch{
  0%{ transform:translateX(0); }
  25%{ transform:translateX(-1px); text-shadow:1.5px 0 rgba(255,255,255,.5); }
  50%{ transform:translateX(1px); text-shadow:-1.5px 0 rgba(255,255,255,.38); }
  75%{ transform:translateX(-1px); text-shadow:1px 0 rgba(255,255,255,.3); }
  100%{ transform:translateX(0); text-shadow:0 0 10px rgba(255,255,255,.32),0 0 22px rgba(255,255,255,.24); }
}
.cyx-card--content:hover .cyx-card__title{ animation:cyx-title-glitch .3s steps(2,end) 1; }

/* ===================================================================
   FECHAMENTO MOBILE (<=768px) · Home + Mentoria + Footer.
   So mobile, desktop intocado. Resolve: stats, titulo da dor, lista,
   cards e footer grandes/empilhados demais no celular.
   =================================================================== */
@media(max-width:768px){
  /* item 4: stats da Home/Mentoria centralizados + label cinza claro */
  .cy-home .cy-stats, .mentoria-main .cy-stats{ justify-content:center; text-align:center; gap:18px 22px; }
  .cy-home .cy-stats > div, .mentoria-main .cy-stats > div{ align-items:center; }
  .cy-home .cy-stat__l, .mentoria-main .cy-stat__l{ color:var(--cy-smoke); }
  /* item 6: titulo da dor da Home no maximo ~2 linhas + lista MENOR (nao parece H1) */
  .cy-home .cy-prob__big{ font-size:clamp(24px,6.2vw,34px) !important; line-height:1.12 !important; }
  /* lista NAO pode parecer titulo: vira texto de leitura (mono, caixa normal, menor) */
  .cyx-manifesto__line{ font-family:var(--wp--preset--font-family--mono) !important; text-transform:none !important;
    font-size:14px !important; line-height:1.5 !important; letter-spacing:0 !important;
    padding:13px 0; gap:12px; align-items:flex-start; }
  .cyx-manifesto__i{ font-size:12px; padding-top:.1em; }
  /* item 7: cards de argumento mais compactos (titulo/desc legiveis, nao gigantes) */
  .cyx-card--arg{ padding:clamp(20px,5.5vw,26px); }
  .cyx-card--arg .cyx-card__title{ font-size:clamp(18px,5vw,22px); line-height:1.12; }
  .cyx-card--arg .cyx-card__desc{ font-size:13.5px; line-height:1.5; }
  /* item 8: secao "O QUE PODEMOS CONSTRUIR?" no maximo 2 linhas */
  .cy-sec-head__t{ font-size:clamp(32px,9vw,52px); line-height:1.02; }
  /* foto do mentor: menor e CENTRALIZADA no mobile */
  .cy-mentor__photo{ max-width:240px !important; margin-left:auto !important; margin-right:auto !important; }
  /* item 10: FOOTER 3 colunas iguais, TUDO centralizado.
     Vence o style.css (2 col) e o cyber.css (.footer-col:last-child text-align:left). */
  .site-footer .footer-cols{ display:flex !important; flex-direction:column !important; align-items:center !important;
    gap:30px !important; text-align:center !important; justify-items:center !important; }
  /* uma coluna so, ordem: NAVEGAR -> TOPICOS -> REDES (HTML e NAVEGAR, REDES, TOPICOS) */
  .site-footer .footer-cols .footer-col:nth-child(1){ order:1 !important; }
  .site-footer .footer-cols .footer-col:nth-child(3){ order:2 !important; }
  .site-footer .footer-cols .footer-col:nth-child(2){ order:3 !important; }
  .site-footer .footer-cols .footer-col,
  .site-footer .footer-cols .footer-col:last-child{ width:auto !important; min-width:0 !important; flex:none !important;
    margin:0 !important; text-align:center !important; }
  .site-footer .footer-cols .footer-col h4,
  .site-footer .footer-cols .footer-col:last-child h4{ justify-content:center !important; text-align:center !important;
    font-size:10.5px; margin-bottom:10px; letter-spacing:.04em; }
  .site-footer .footer-cols .footer-col p{ font-size:12.5px; margin:7px 0; text-align:center !important; }
  /* bloco "VAMOS CONSTRUIR JUNTOS" + CTA centralizados */
  .footer-lead{ text-align:center !important; justify-content:center !important; }
  .footer-lead__text{ align-items:center !important; }
  .footer-lead__cta{ margin-left:auto !important; margin-right:auto !important; }
}
@media(max-width:380px){
  .site-footer .footer-cols{ gap:24px !important; }
}

/* ===================================================================
   PAGINA DE POST · fundo moderno e DISCRETO (era um glow neon .10 = "verde
   musgo") + remove a banda/borda preta solta no topo (full-bleed preto + border).
   Fundo transparente deixa a atmosfera tecnica (malha fina) do site aparecer,
   com um toque minimo de neon no topo. So nas paginas de post (.cy-post-hero).
   =================================================================== */
.cy-post-hero{ background:transparent !important; border-bottom:none !important;
  padding-top:clamp(16px,3vh,36px) !important; }
.cy-post-hero::before{ background:
   radial-gradient(ellipse 44% 34% at 50% -12%, rgba(var(--cy-neon-rgb),.05), transparent 60%),
   linear-gradient(180deg, rgba(255,255,255,.02), transparent 180px) !important; }

/* ===================================================================
   MENTORIA · CENTRALIZAR todos os titulos de secao + reduzir AREA MORTA
   (padding gigante entre secoes) + steps centralizados. FAQ legivel.
   =================================================================== */
.mentoria-main .cy-sec{ padding-top:clamp(36px,5vh,68px) !important; padding-bottom:clamp(36px,5vh,68px) !important; }
.mentoria-main .cy-sec-head{ justify-content:center; margin-bottom:clamp(24px,3.5vh,42px); position:relative; }
/* nudge p/ esquerda SO nos titulos com numero (compensa o "0X /" e centra o titulo). Sem numero = fica no centro. */
.mentoria-main .cy-sec-head:has(.cy-sec-head__i){ left:clamp(-46px,-2.2vw,-26px); }
.mentoria-main .cy-sec-head__t{ flex:none; text-align:center; }
/* steps (TUDO QUE VOCE PRECISA) num bloco centralizado, nao jogado pra esquerda */
.mentoria-main .cy-steps{ max-width:780px; margin-left:auto; margin-right:auto; position:relative; left:clamp(20px,4.5vw,90px); }
/* secao do mentor: menos espaco entre titulo e foto */
.mentoria-main .cy-mentor{ margin-top:0; }

/* FAQ · bloco CENTRALIZADO (tinha max-width 900px mas sem margin:auto -> colava na esquerda) */
.mentoria-main .cy-faq{ margin-left:auto; margin-right:auto; }
/* FAQ · resposta MAIOR + cinza MAIS CLARO (era #9a9a96 / 15px) + cabe o texto todo */
.cy-faq__a p{ color:#cdcbc5 !important; font-size:16.5px !important; line-height:1.75 !important; }
.cy-faq__item.is-open .cy-faq__a{ max-height:1600px !important; }

/* ===================================================================
   DEPOIMENTOS (coverflow) · botoes avancar/voltar + menos area morta.
   =================================================================== */
.cy-cf{ position:relative; }
.cy-cf__nav{ position:absolute; top:50%; transform:translateY(-50%); z-index:200;
  width:56px; height:56px; display:grid; place-items:center; cursor:pointer;
  background:rgba(8,8,8,.94); border:2px solid var(--cy-neon); color:var(--cy-neon);
  font-family:var(--wp--preset--font-family--display); font-size:38px; line-height:1;
  box-shadow:0 0 22px rgba(var(--cy-neon-rgb),.3), inset 0 0 12px rgba(var(--cy-neon-rgb),.08);
  -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
  transition:background .2s, color .2s, transform .2s, box-shadow .2s; }
.cy-cf__nav:hover{ background:var(--cy-neon); color:#000;
  box-shadow:0 0 32px rgba(var(--cy-neon-rgb),.5); transform:translateY(-50%) scale(1.08); }
.cy-cf__nav--prev{ left:clamp(6px,2vw,26px); }
.cy-cf__nav--next{ right:clamp(6px,2vw,26px); }
/* DEPOIMENTOS · altura UNIFORME dos cards (o container nao fica mais refem do card
   mais alto -> acaba o espaco morto gigante embaixo). Imagem inteira via contain
   (nao corta texto). Carrossel fica compacto, logo abaixo do titulo. */
.mentoria-main .cy-cf__card{ height:clamp(360px,48vh,460px); }
.mentoria-main .cy-cf .cy-testi__item{ height:100%; width:100%; }
.mentoria-main .cy-cf .cy-testi__img{ height:100%; width:100%; object-fit:contain; object-position:center; background:#0a0a0a; }
.mentoria-main .cy-cf__track{ align-items:center !important; }
.mentoria-main .cy-cf{ margin-top:clamp(6px,1.4vh,22px) !important; }

/* ===================================================================
   FOOTER DESKTOP · colunas AGRUPADAS e alinhadas a DIREITA com espaco
   proporcional (estava espalhado/perdido na largura toda).
   =================================================================== */
@media(min-width:769px){
  .site-footer .footer-cols{ display:grid !important; grid-template-columns:repeat(3,auto) !important;
    justify-content:center !important; gap:clamp(56px,7vw,128px) !important;
    max-width:none !important; margin-left:auto !important; margin-right:auto !important; text-align:center; }
  .site-footer .footer-cols .footer-col,
  .site-footer .footer-cols .footer-col:last-child{ text-align:center !important; }
  .site-footer .footer-col h4{ justify-content:center !important; }
}
/* #11 menos AREA MORTA em cima e embaixo das listas do footer (desktop + mobile) */
.site-footer__inner{ padding-top:clamp(24px,3.5vh,44px) !important; padding-bottom:clamp(16px,2.5vh,30px) !important; }
.site-footer .footer-cols{ margin-top:0 !important; margin-bottom:clamp(18px,2.5vh,30px) !important; }

/* ===================================================================
   COMUNIDADE · tab PREMIUM (inativa) PULSA em BRANCO-NEON pra chamar o
   clique. Para quando vira ativa (:not(.is-active)). Respeita reduced-motion.
   =================================================================== */
@keyframes cyx-premium-pulse{
  0%,100%{ border-color:rgba(255,255,255,.28); color:#d7d7d2;
    box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 0 14px rgba(255,255,255,.08); }
  50%{ border-color:rgba(255,255,255,.92); color:#fff;
    box-shadow:0 0 0 1px rgba(255,255,255,.5), 0 0 30px rgba(255,255,255,.34); }
}
.cy-plans__tab[data-plan="paid"]:not(.is-active){ animation:cyx-premium-pulse 1.7s ease-in-out infinite; }
.cy-plans__tab[data-plan="paid"]:not(.is-active) small{ color:inherit !important; }
@media(prefers-reduced-motion:reduce){
  .cy-plans__tab[data-plan="paid"]:not(.is-active){ animation:none; border-color:rgba(255,255,255,.55); color:#fff; }
}

/* ===================================================================
   LOTE DE AJUSTES (Home secao, Blog, creds) · pedidos do Igor.
   =================================================================== */
/* #4 Home: titulo de secao (O QUE PODEMOS CONSTRUIR?) maior e centralizado */
.home-main .cy-sec-head{ justify-content:center; }
.home-main .cy-sec-head__t{ flex:none; text-align:center; font-size:clamp(40px,5.6vw,84px); }

/* #7 Blog: titulo MAIOR + hero/categorias CENTRALIZADOS */
.cy-title--news{ font-size:clamp(34px,9.2vw,132px) !important; }
.cy-blog-main .cy-inner{ display:flex; flex-direction:column; align-items:center; text-align:center; }
.cy-blog-main .cy-filters{ justify-content:center; }
.cy-blog-main .cy-sub{ margin-left:auto; margin-right:auto; }

/* #9a Mentoria QUEM SOU: menos espacamento entre os creds */
.cy-creds li{ padding:5px 0 !important; }

/* #7 Blog: cards uniformes com TUDO centralizado (headline, categoria, excerpt, data) */
.cy-blog-main .cy-card{ text-align:center; align-items:center; }
.cy-blog-main .cy-card__n,
.cy-blog-main .cy-card__t,
.cy-blog-main .cy-card__d,
.cy-blog-main .cy-card .wp-block-post-date{ text-align:center !important; width:100%; }
.cy-blog-main .cy-card__n{ display:block; }
.cy-blog-main .cy-card__n a{ display:inline-block; }

/* Titulo da secao de PRECO: 2 linhas que preenchem a largura da caixa (cy-price = 620px),
   laterais alinhadas com a caixa. "VOCE" neon (em), resto branco. Linha 1 (21 car) maior
   que linha 2 (27 car) pra ambas baterem a mesma largura. */
.cy-price-title{ max-width:620px; margin-left:auto; margin-right:auto; line-height:1.0; }
.cy-price-title .ln1{ display:block; font-size:clamp(34px,11.3vw,77px); }
.cy-price-title .ln2{ display:block; font-size:clamp(27px,8.8vw,60px); }

/* ===================================================================
   LOTE BLOG (cards iguais + hover branco) e HOME (lista 01-05 centro).
   =================================================================== */
/* Cards do blog TODOS do mesmo tamanho (esticam ate a altura do maior, o que tem resumo) */
.cy-blog-main .cy-grid3 > li{ display:flex; }
.cy-blog-main .cy-card{ height:100%; }

/* Hover dos cards do blog = BRANCO, nao verde (borda, brilho e titulo) */
.cy-blog-main .cy-card:hover{ border-color:rgba(255,255,255,.55) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 30px rgba(255,255,255,.12) !important; }
.cy-blog-main .cy-card:hover .cy-card__t a{ color:#fff !important; }
/* reflexo de luz que SEGUE O CURSOR (radial em --mx/--my via JS), so trocando verde -> branco */
.cy-blog-main .cy-card::after{ background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.16),transparent 60%) !important; }

/* HOME · lista 01-05 (manifesto) centralizada no meio */
.home-main .cyx-manifesto{ max-width:860px; margin-left:auto; margin-right:auto; }

/* Mentoria · lista "NAO E UM CURSO" (cy-checks) centralizada no meio */
.mentoria-main .cy-checks{ max-width:820px !important; margin-left:auto !important; margin-right:auto !important; }

/* ===================================================================
   MENTORIA · CTA final maior, botao pulsando, FAQ mais p/ direita.
   =================================================================== */
/* CTA "PARE DE TESTAR NO ESCURO. / EVOLUA COM DIRECAO." MAIOR (container alargado) */
.mentoria-main .cy-cta__in{ max-width:1200px !important; }
.mentoria-main .cy-cta__t.cy-cta-fit{ font-size:clamp(40px,8.8vw,112px) !important; }

/* Botao AGENDAR pulsando (CTA final + caixa de preco) pra puxar a acao */
@keyframes cyx-cta-pulse{
  0%,100%{ transform:scale(1); }
  50%{ transform:scale(1.04); }
}
.mentoria-main .cy-cta .cy-btn--solid,
.mentoria-main .cy-price .cy-btn--solid{ animation:cyx-cta-pulse 1.8s ease-in-out infinite; }
.mentoria-main .cy-cta .cy-btn--solid:hover,
.mentoria-main .cy-price .cy-btn--solid:hover{ animation-play-state:paused; }
@media(prefers-reduced-motion:reduce){
  .mentoria-main .cy-cta .cy-btn--solid,
  .mentoria-main .cy-price .cy-btn--solid{ animation:none; }
}

/* FAQ mais para a DIREITA (acompanhar melhor o titulo) */
.mentoria-main .cy-faq{ position:relative; left:clamp(24px,4.5vw,90px); }

/* Mentoria hero · subtitulo em 2 LINHAS exatas (nao "blocao"). Largura e fonte
   calibradas pra cada frase caber numa linha. No mobile o <br> some e flui natural. */
.mentoria-main .cy-sub--2l{ max-width:880px; margin-left:auto; margin-right:auto; font-size:clamp(14px,1.18vw,16.5px); line-height:1.6; }
@media(max-width:900px){ .mentoria-main .cy-sub--2l br{ display:none; } }

/* FAQ · puxa os "+" um pouco pra dentro (esquerda), sem mexer na pergunta */
.mentoria-main .cy-faq__q{ padding-right:clamp(20px,3.5vw,64px); }

/* ===================================================================
   POST (single) · area de texto MAIS LARGA so no DESKTOP (>=1025px),
   centralizada. Tablet (<=1024) e mobile ficam intactos (800px/full).
   O conteudo do bloco e constrained em 800px; aqui so alargo no desktop.
   =================================================================== */
@media(min-width:1025px){
  .single-post-main .post-body > *,
  .single-post-main .post-tags-section > *,
  .single-post-main .author-bio-section > *{ max-width:min(1240px,90vw) !important; margin-left:auto !important; margin-right:auto !important; }
}

/* POST hero · deck (subtitulo abaixo do titulo) alinhado a ESQUERDA, acompanhando
   as laterais do titulo. O WP limitava a ~720px e centralizava via contentSize global. */
.single-post-main .cy-post-deck,
.single-post-main .cy-post-deck > *,
.single-post-main .cy-post-deck .wp-block-post-excerpt__excerpt{
  max-width:none !important; margin-left:0 !important; margin-right:0 !important; }
/* equilibra as linhas do subtitulo pra nao sobrar palavra solta ("e" perdido no fim da linha) */
.single-post-main .cy-post-deck, .single-post-main .cy-post-deck .wp-block-post-excerpt__excerpt{ text-wrap:balance; }
/* tambem no titulo, pra nao deixar palavra orfa */
.single-post-main .cy-post-title{ text-wrap:balance; }

/* POST · caixa de bio do autor SEMPRE escondida (a pedido: nao tem necessidade).
   Era ela que aparecia vazia, com borda neon, no fim do post. */
.single-post-main .author-bio-section{ display:none !important; }

/* ===================================================================
   MOBILE (<=768px) · ajustes que NAO afetam desktop/tablet.
   =================================================================== */
@media(max-width:768px){
  /* HOME hero · botoes full-width com texto CENTRALIZADO (estava a esquerda no ghost) */
  .cy-home .cy-actions{ flex-direction:column; align-items:stretch; width:100%; }
  .cy-home .cy-actions .cy-btn{ width:100%; justify-content:center; text-align:center; }
  /* titulo de secao DEAD CENTER em TODAS as paginas: empilha o numero ("0X /") em cima
     e centraliza o titulo (o numero inline puxava p/ direita). Reseta o nudge do desktop. */
  .cy-sec-head{ flex-direction:column !important; align-items:center !important; text-align:center !important; gap:6px; left:0 !important; }
  /* Mentoria: titulos com frase longa (ex "NAO E UM CURSO...") menores pra caber em 3 linhas sem cortar */
  .mentoria-main .cy-sec-head__t{ font-size:clamp(22px,6vw,32px) !important; line-height:1.08 !important; }
  /* "QUEM SOU" numa linha so (em inline, nao quebra o verde pra baixo) */
  .cy-sec-head--inline .cy-sec-head__t em{ display:inline !important; }
  /* stats "4+/15+/100+" CENTRALIZADOS no mobile (tira a barra verde da esquerda) */
  .mentoria-main .cy-mentor__stats{ justify-content:center !important; border-left:0 !important; padding-left:0 !important; }
  .mentoria-main .cy-mentor__stats > div{ text-align:center; align-items:center; }
  /* FAQ · "+" mais pra dentro no mobile (margem de seguranca, longe da borda) */
  .mentoria-main .cy-faq__q{ padding-right:clamp(30px,8vw,52px) !important; }
  /* MODAL captacao · mais compacto e alinhado ao TOPO (campo focado nao some atras do teclado) */
  .cy-modal{ align-items:flex-start !important; padding:10px !important; }
  .cy-modal__box{ max-height:96vh !important; padding:20px 18px !important; }
  .cy-modal__sub{ font-size:14px !important; line-height:1.5 !important; margin-bottom:14px !important; }
  .cy-modal__form{ gap:10px !important; }
  .cy-modal__textarea{ min-height:58px !important; }
  /* campos com BORDA VISIVEL (pra ver onde clicar/escrever) */
  .cy-modal__input, .cy-modal__textarea{ border:1.5px solid rgba(255,255,255,.30) !important; }
  .cy-modal__check{ border:1.5px solid rgba(255,255,255,.22) !important; }
  /* opcoes em 2 COLUNAS no mobile tambem (2x2, igual desktop) */
  .cy-modal__checks{ grid-template-columns:1fr 1fr !important; gap:8px !important; }
  .cy-modal__check{ padding:11px 10px !important; font-size:12.5px !important; }
  /* DEPOIMENTOS · botoes voltar/avancar EMBAIXO (nao nas laterais, que tapavam o card) */
  .mentoria-main .cy-cf{ margin-bottom:64px; }
  .cy-cf__nav{ top:auto !important; bottom:-58px !important; transform:none !important; }
  .cy-cf__nav:hover{ transform:scale(1.06) !important; }
  .cy-cf__nav--prev{ left:calc(50% - 60px) !important; right:auto !important; }
  .cy-cf__nav--next{ left:calc(50% + 4px) !important; right:auto !important; }

  /* ---- MARGEM DE SEGURANCA LATERAL (todas as paginas) ----
     nada encosta nem corta nas bordas; titulos grandes SEMPRE quebram. */
  html, body{ overflow-x:hidden; }
  .cy-inner, .cy-sec, .cy-post-hero__in, .cy-cta__in{
    padding-left:max(18px,5vw) !important; padding-right:max(18px,5vw) !important; box-sizing:border-box; }
  .cy-title .w, .cy-title .n, .cy-prob__big, .cy-prob__big em,
  .cy-cta__t, .cy-cta__t em, .cy-sec-head__t, .cy-sec-head__t em,
  .cy-archive__title, .cy-title--news, .cy-price-title .ln1, .cy-price-title .ln2{
    white-space:normal !important; overflow-wrap:break-word; }
  /* tamanhos display reduzidos no mobile pra caberem com folga */
  .cy-home .cy-prob__big{ font-size:clamp(27px,7vw,42px) !important; }
  .cy-home .cy-cta__t{ font-size:clamp(30px,8.4vw,56px) !important; line-height:1.0 !important; }
}

/* MODAL captacao · borda VERDE clara no popup (pedido), desktop e mobile */
.cy-modal__box{ border:1.5px solid var(--cy-neon) !important; box-shadow:0 0 54px rgba(var(--cy-neon-rgb),.28) !important; }
