@font-face{font-family:Heuristica;font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/Heuristica-Bold.woff) format("woff")}
@font-face{font-family:Heuristica;font-weight:400;font-style:italic;font-display:swap;src:url(../fonts/Heuristica-Italic.woff) format("woff")}
@font-face{font-family:Heuristica;font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/Heuristica-Regular.woff) format("woff")}

:root{
  /* cores amostradas do logo de 2020 */
  --navy:#0A1038; --red:#C12B2F; --orange:#F9A22A; --blue:#3088B8; --teal:#28B8A0;
  --bg-a:#FFF7E8;   /* creme */
  --bg-b:#E9F5F4;   /* verde-água bem claro */
  --paper:#FFFFFF; --ink:#16183A; --muted:#565875; --line:#E7DCC6;
  --red-d:#9E2024; --blue-d:#1F6A94; --orange-d:#8A5200; --teal-d:#0F7766;
  --serif:Heuristica,Georgia,"Times New Roman",serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --r:20px; --max:1160px; --gut:clamp(16px,4vw,28px);
  --wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 48' preserveAspectRatio='none'%3E%3Cpath d='M0 26C150 0 300 52 450 28S750 2 900 28s225 14 300-4V48H0Z'/%3E%3C/svg%3E");
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{font:17px/1.65 var(--sans);color:var(--ink);background:var(--bg-a);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:10px 14px;border-radius:8px;z-index:200}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--serif);line-height:1.12;font-weight:700;letter-spacing:-.01em}
h2{font-size:clamp(28px,4.4vw,44px)}
h3{font-size:clamp(19px,2.2vw,23px)}
.eyebrow{font:700 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--red-d);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:28px;height:4px;border-radius:4px;background:var(--orange)}
.lead{font-size:clamp(17px,2vw,20px);color:var(--muted);max-width:62ch}
/* destaque tipo marca-texto nos títulos */
.hl{background:linear-gradient(transparent 62%,rgba(249,162,42,.55) 62%);padding:0 .08em}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 16px/1.1 var(--sans);padding:15px 24px;border-radius:999px;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;min-height:48px;text-align:center}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(10,16,56,.18)}
.btn-wa{background:#1FA855;color:#fff}.btn-wa:hover{background:#178a45}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-d)}
.btn-line{border-color:currentColor;background:transparent}
.btn-orange{background:var(--orange);color:var(--navy)}.btn-orange:hover{background:#ffb44d}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:#1a2260}
.btn-sm{padding:11px 18px;font-size:15px;min-height:44px}

/* faixa estampada (eco do grafismo da mão) */
.pattern{height:14px;background:
  linear-gradient(135deg,var(--orange) 25%,transparent 25%) -14px 0/28px 14px,
  linear-gradient(225deg,var(--orange) 25%,transparent 25%) -14px 0/28px 14px,
  linear-gradient(315deg,var(--teal) 25%,transparent 25%) 0 0/28px 14px,
  linear-gradient(45deg,var(--teal) 25%,transparent 25%) 0 0/28px 14px,var(--navy)}

/* aviso no topo */
.notice{background:var(--red);color:#fff;font-size:14px;text-align:center;padding:9px var(--gut)}
.notice a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.notice b{background:var(--orange);color:var(--navy);padding:2px 9px;border-radius:999px;margin-right:8px;font-size:12px;letter-spacing:.06em}

/* cabeçalho */
header.top{position:sticky;top:0;z-index:100;background:rgba(255,247,232,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:76px}
.brand{flex:none;display:block;line-height:0}
.brand img{height:56px;width:auto;max-width:none;flex:none;object-fit:contain}  /* sem esticar nem cortar */
nav.main{display:flex;gap:clamp(14px,2.2vw,28px);align-items:center}
nav.main a{text-decoration:none;font-weight:600;font-size:15px;padding:8px 2px;position:relative}
nav.main a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:3px;background:var(--orange);border-radius:3px;transition:right .2s}
nav.main a:not(.btn):hover::after{right:0}
.menu-btn{display:none;background:none;border:2px solid var(--navy);border-radius:12px;padding:10px 14px;font:700 14px var(--sans);cursor:pointer;min-height:44px}

/* hero */
.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(600px 400px at 85% 20%,rgba(48,136,184,.35),transparent 70%),
  radial-gradient(500px 360px at 10% 100%,rgba(193,43,47,.28),transparent 70%)}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding-top:clamp(40px,7vw,80px);padding-bottom:clamp(48px,8vw,90px)}
.hero h1{font-size:clamp(36px,6.4vw,70px);color:#fff}
.hero h1 em{font-style:italic;font-weight:400;color:var(--orange)}
.hero p.lead{color:#D3D6EE;margin:22px 0 30px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.hero .btn-line{color:#fff}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.chips span{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 14px;font-size:14px;color:#E8EAFA}
.chips i{width:8px;height:8px;border-radius:50%;background:var(--orange);display:block}
.hero .emblem{margin-left:auto;width:min(100%,440px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 45%,#FFF8EC 0 62%,#F3E4C6 100%);display:grid;place-items:center;box-shadow:0 30px 60px rgba(0,0,0,.4);position:relative}
.hero .emblem::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:2px dashed rgba(249,162,42,.6);animation:spin 40s linear infinite}
.hero img.mao{width:78%;height:auto}
@keyframes spin{to{transform:rotate(360deg)}}

/* blocos alternando duas cores claras, com quebra ondulada */
section.blk{position:relative;padding:clamp(64px,9vw,104px) 0;background:var(--bg)}
section.blk::before{content:"";position:absolute;left:0;right:0;top:-47px;height:48px;background:var(--bg);-webkit-mask:var(--wave) center/100% 100% no-repeat;mask:var(--wave) center/100% 100% no-repeat;pointer-events:none}
section.first::before{display:none}
.s-a{--bg:var(--bg-a)}.s-b{--bg:var(--bg-b)}
.head{margin-bottom:clamp(28px,4vw,48px)}.head .lead{margin-top:14px}
/* mão decorativa ao fundo */
.orn{position:absolute;width:clamp(140px,22vw,260px);opacity:.09;pointer-events:none;z-index:0}
.orn.r{right:-30px;top:40px;transform:rotate(14deg)}.orn.l{left:-40px;bottom:30px;transform:rotate(-16deg) scaleX(-1)}
section.blk>.wrap{position:relative;z-index:1}

/* revelar ao rolar */
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.js .rv.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

/* três áreas */
.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.area{background:var(--paper);border-radius:var(--r);padding:32px 28px 28px;border:1px solid var(--line);position:relative;display:flex;flex-direction:column;gap:12px;transition:transform .2s,box-shadow .2s}
.area:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(10,16,56,.12)}
.area .num{position:absolute;top:14px;right:20px;font:700 56px/1 var(--serif);color:var(--c);opacity:.18}
.area .ico{width:54px;height:54px;border-radius:16px;background:var(--c);display:grid;place-items:center;color:#fff;font-size:26px;margin-bottom:4px}
.area .tag{font:700 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ct)}
.area ul{margin:4px 0 0 18px;color:var(--muted);display:grid;gap:4px}
.area a.go{margin-top:auto;padding-top:14px;font-weight:700;text-decoration:none;color:var(--ct)}
.area a.go:hover{text-decoration:underline}
.a-libras{--c:var(--blue);--ct:var(--blue-d)}.a-edu{--c:var(--red);--ct:var(--red-d)}.a-cult{--c:var(--orange);--ct:var(--orange-d)}
.a-cult .ico{color:var(--navy)}

/* níveis de curso */
.levels{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.lvl{background:var(--paper);border:2px solid transparent;border-radius:var(--r);padding:28px 24px 24px;display:flex;flex-direction:column;gap:10px;position:relative;box-shadow:0 8px 24px rgba(10,16,56,.06);transition:transform .2s,box-shadow .2s}
.lvl:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(10,16,56,.14)}
.lvl .step{display:flex;gap:5px;margin-bottom:6px}
.lvl .step i{width:26px;height:8px;border-radius:8px;background:#E4E0D6}
.lvl .step i.on{background:var(--red)}
.lvl p{color:var(--muted);font-size:15px}
.lvl .btn{margin-top:auto}
.lvl.hot{border-color:var(--red)}
.lvl .badge{position:absolute;top:-14px;left:20px;background:var(--red);color:#fff;font:700 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:8px 13px;border-radius:999px;box-shadow:0 6px 14px rgba(193,43,47,.35)}
.promo{margin-top:6px;font-size:14px;background:#FFF0EE;border-left:4px solid var(--red);padding:9px 12px;border-radius:0 10px 10px 0;color:var(--ink)}
.interp{margin-top:26px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;background:var(--navy);color:#fff;border-radius:var(--r);padding:26px 30px;position:relative;overflow:hidden}
.interp::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(249,162,42,.35),transparent 70%)}
.interp .tagx{background:var(--orange);color:var(--navy);font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:9px 13px;border-radius:999px}
.interp h3{font-size:clamp(20px,2.4vw,26px)}.interp p{color:#CFD2EC;font-size:15px;margin-top:4px}

/* carrossel de avaliações */
.rev{margin-top:clamp(40px,6vw,64px)}
.rev-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.rev-head h3{font-size:clamp(22px,3vw,30px)}
.rev-head small{display:block;color:var(--muted);font:500 14px var(--sans);margin-top:4px}
.rev-ctl{display:flex;gap:8px}
.rev-ctl button{width:46px;height:46px;border-radius:50%;border:2px solid var(--navy);background:transparent;color:var(--navy);font-size:20px;cursor:pointer;transition:background .15s,color .15s}
.rev-ctl button:hover{background:var(--navy);color:#fff}
.track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 6px 18px;margin:0 -6px;scroll-padding-left:6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.track::-webkit-scrollbar{display:none}
.card{flex:0 0 min(360px,84%);scroll-snap-align:start;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:12px;position:relative}
.card::before{content:"“";position:absolute;right:20px;top:2px;font:700 84px/1 var(--serif);color:var(--orange);opacity:.5}
.stars{color:var(--orange);letter-spacing:3px;font-size:18px}
.card p{font:italic 400 19px/1.45 var(--serif);flex:1}
.card cite{font:600 14px var(--sans);color:var(--muted);font-style:normal}
.dots{display:flex;gap:7px;justify-content:center;margin-top:4px}
.dots i{width:9px;height:9px;border-radius:50%;background:#C9C3B3;transition:.2s}
.dots i.on{background:var(--red);width:26px;border-radius:9px}

/* serviços */
.svc{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.svc div{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;border-bottom:5px solid var(--blue);transition:transform .2s}
.svc div:nth-child(2){border-bottom-color:var(--red)}.svc div:nth-child(3){border-bottom-color:var(--orange)}.svc div:nth-child(4){border-bottom-color:var(--teal)}
.svc div:hover{transform:translateY(-5px)}
.svc h3{font-size:20px;margin-bottom:8px}.svc p{font-size:15px;color:var(--muted)}
.callout{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px;background:var(--navy);color:#fff;border-radius:var(--r);padding:28px 32px;position:relative;overflow:hidden}
.callout strong{font:700 clamp(21px,3vw,28px)/1.2 var(--serif)}
.callout .big{color:var(--orange)}

/* cultura */
.cult{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.cult div{border-left:6px solid var(--orange);background:var(--paper);padding:22px 22px;border-radius:0 var(--r) var(--r) 0;transition:transform .2s}
.cult div:hover{transform:translateX(5px)}
.cult h3{font-size:20px;margin-bottom:6px}.cult p{font-size:15px;color:var(--muted)}
.soon-box{margin-top:22px;border:2px dashed #B9AE95;border-radius:var(--r);padding:20px 24px;background:rgba(255,255,255,.6);display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.soon-box b{background:var(--navy);color:#fff;border-radius:999px;font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:8px 12px}

/* loja */
.prods{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px}
.prod{background:var(--paper);border-radius:var(--r);padding:30px 28px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-top:8px solid var(--red);position:relative;transition:transform .2s,box-shadow .2s}
.prod:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(10,16,56,.12)}
.prod .tag{font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--red-d)}
.prod .price{font:700 40px/1 var(--serif);color:var(--navy)}
.prod p{color:var(--muted);font-size:15px}
.prod .acts{margin-top:auto;display:grid;gap:10px;padding-top:12px}
.prod.soon{border-top-color:var(--orange);background:#fffdf6}
.prod.soon .tag{color:var(--orange-d)}
.prod.aff{border-top-color:var(--blue)}.prod.aff .tag{color:var(--blue-d)}
.ribbon{position:absolute;right:-8px;top:18px;background:var(--orange);color:var(--navy);font:700 12px/1 var(--sans);padding:8px 14px 8px 12px;letter-spacing:.06em;border-radius:4px 0 0 4px;box-shadow:0 4px 10px rgba(0,0,0,.15)}

/* espaço publicitário */
.ad{position:relative;background:var(--bg-a);padding:clamp(40px,6vw,64px) 0 clamp(48px,7vw,64px)}
.ad .box{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}

.ad .slot{border:1px dashed #B9AE95;border-radius:14px;min-height:110px;display:grid;place-items:center;text-align:center;color:#8A8268;font-size:13px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.7),rgba(255,255,255,.7) 10px,rgba(251,244,228,.7) 10px,rgba(251,244,228,.7) 20px);padding:10px}
.ad .slot b{display:block;letter-spacing:.12em;text-transform:uppercase;font-size:11px}

/* blog */
.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.post{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:0;display:flex;flex-direction:column;text-decoration:none;overflow:hidden;transition:transform .2s,box-shadow .2s}
.post:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(10,16,56,.12)}
.post .bar{height:10px;background:var(--c)}
.post .in{padding:24px;display:flex;flex-direction:column;gap:10px;flex:1}
.post .cat{font:700 12px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ct)}
.post p{font-size:15px;color:var(--muted)}
.post .more{margin-top:auto;font-weight:700;color:var(--ct)}
.p-edu{--c:var(--red);--ct:var(--red-d)}.p-lib{--c:var(--blue);--ct:var(--blue-d)}.p-cul{--c:var(--orange);--ct:var(--orange-d)}

/* contato */
.contact{background:var(--red)!important;color:#fff}
.contact::before{background:var(--red)}
.contact .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,56px);align-items:center}
.contact h2{color:#fff}.contact .lead{color:#FFE3E0;margin:14px 0 26px}
.contact .eyebrow{color:#FFD9A8}.contact .eyebrow::before{background:#fff}
.contact dl{display:grid;gap:16px;background:rgba(0,0,0,.2);padding:clamp(20px,3vw,32px);border-radius:var(--r)}
.contact dt{font:700 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#FFD0A0;margin-bottom:4px}
.contact dd{font-size:17px;overflow-wrap:anywhere}

footer{background:var(--navy);color:#B7BBDD;font-size:14px;padding:34px 0 104px}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer a{color:#fff}

/* WhatsApp flutuante */
.fab{position:fixed;right:16px;bottom:16px;z-index:90;background:#1FA855;color:#fff;border-radius:999px;padding:14px 20px;font:700 15px var(--sans);text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.28);display:flex;gap:8px;align-items:center;min-height:52px}
.fab::after{content:"";position:absolute;inset:0;border-radius:999px;border:2px solid #1FA855;animation:pulse 2.4s infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.35);opacity:0}}

/* consentimento (LGPD) */
#consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:120;max-width:560px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 14px 40px rgba(0,0,0,.22);display:none;font-size:14px}
#consent .row{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
#consent .btn{padding:10px 16px;font-size:14px;min-height:42px}


/* turmas dentro do cartão */
.turmas-l{list-style:none;display:grid;gap:10px;margin:0;padding:0}
.lvl.hot{grid-column:1/-1;display:grid;grid-template-columns:1.05fr 1.35fr .75fr;gap:clamp(18px,3vw,36px);align-items:center;padding:34px 30px 28px}
.hot-a{display:flex;flex-direction:column;gap:10px}
.hot-b{display:grid;gap:12px}
.hot .turmas-l{grid-template-columns:1fr 1fr}
.hot-c{display:grid;gap:10px}
.hot-c .btn+.btn{margin-top:0}
.turmas-l li{background:#FFF7E8;border-radius:12px;padding:10px 12px;font-size:15px;line-height:1.35}
.turmas-l small{display:block;color:var(--muted);font-size:13px}
.lvl .btn+.btn{margin-top:0}
.fine{font-size:13px;color:var(--muted);margin-top:12px}
/* avaliações com avatar */
.card::before{display:none}
.who{display:flex;gap:12px;align-items:center}
.who strong{display:block;font:700 16px/1.2 var(--sans)}
.who .stars{font-size:15px;margin:2px 0 0}
.av{width:48px;height:48px;border-radius:50%;background:var(--av);color:#fff;display:grid;place-items:center;font:700 20px var(--sans);flex:none;box-shadow:0 0 0 3px #fff,0 0 0 5px var(--orange)}
/* equipe em ação */
.proof{margin-top:clamp(40px,6vw,64px)}
.proof-head{margin-bottom:20px}.proof-head h3{font-size:clamp(22px,3vw,30px)}
.videos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.vid{display:block;position:relative;aspect-ratio:16/9;border:0;border-radius:var(--r);overflow:hidden;cursor:pointer;background:var(--navy) var(--img) center/cover no-repeat;padding:0;color:#fff;text-align:left;box-shadow:0 12px 30px rgba(10,16,56,.2)}
.vid::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(10,16,56,.85))}
.vid .play{position:absolute;z-index:2;left:50%;top:46%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:var(--red);display:grid;place-items:center;font-size:26px;padding-left:5px;box-shadow:0 8px 24px rgba(0,0,0,.4);transition:transform .2s}
.vid:hover .play{transform:translate(-50%,-50%) scale(1.1)}
.vid .vt{position:absolute;z-index:2;left:16px;bottom:14px;font:700 18px var(--serif)}
.vid .vt small{margin-left:10px;font:500 13px var(--sans);opacity:.85}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3}
.photos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}
.ph{aspect-ratio:4/3;border-radius:16px;border:2px dashed #B9AE95;display:grid;place-items:center;color:#8A8268;font-size:13px;background:rgba(255,255,255,.55)}
/* marquee de clientes */
#clientes{padding-bottom:clamp(48px,7vw,80px)}
.marq{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);position:relative;z-index:1}
.marq-track{display:flex;gap:clamp(28px,5vw,56px);align-items:center;width:max-content;list-style:none;padding:8px 0;animation:marq 48s linear infinite}
.marq:hover .marq-track{animation-play-state:paused}
.marq li{flex:none}
.marq li.txt span{display:grid;place-items:center;height:84px;min-width:132px;padding:0 24px;border-radius:12px;background:var(--navy);color:#fff;font:700 26px var(--serif);letter-spacing:.02em}
@media (max-width:700px){.marq li.txt span{height:68px;font-size:22px;min-width:110px}}
.marq img{height:84px;width:auto;border-radius:12px;filter:grayscale(1);opacity:.8;transition:filter .25s,opacity .25s,transform .25s}
.marq img:hover{filter:none;opacity:1;transform:scale(1.06)}
@keyframes marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marq{overflow-x:auto}.marq-track{animation:none}}
@media (max-width:700px){.videos{grid-template-columns:1fr}.photos{grid-template-columns:repeat(2,1fr)}.marq img{height:68px}}

/* ===== responsivo ===== */
@media (max-width:1000px){
  .levels{grid-template-columns:repeat(2,1fr)}
  .lvl.hot{grid-template-columns:1fr 1fr}.hot-c{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .svc{grid-template-columns:repeat(2,1fr)}
  .interp{grid-template-columns:1fr;text-align:left}
}
@media (max-width:860px){
  .hero .wrap,.contact .wrap{grid-template-columns:1fr}
  .hero .emblem{margin:0 auto;width:min(66%,300px);order:-1}
  .areas{grid-template-columns:1fr}
  .top .wrap{height:68px}.brand img{height:48px}
  html{scroll-padding-top:76px}
  .menu-btn{display:block}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-a);flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gut) 20px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(10,16,56,.12)}
  nav.main.open{display:flex}
  nav.main a:not(.btn){padding:15px 4px;border-bottom:1px solid var(--line);font-size:17px}
  nav.main a:not(.btn)::after{display:none}
  nav.main .btn{margin-top:14px}
}
@media (max-width:760px){
  .lvl.hot{grid-template-columns:1fr}.hot .turmas-l{grid-template-columns:1fr}.hot-c{grid-template-columns:1fr}
}
@media (max-width:600px){
  body{font-size:16px}
  .levels,.svc{grid-template-columns:1fr}
  .hero .cta .btn{width:100%}
  .fab span{display:none}.fab{padding:14px}
  .notice{font-size:13px}
  .callout .btn,.interp .btn{width:100%}
  section.blk::before{top:-31px;height:32px}
  .orn{display:none}
  #consent{left:10px;right:10px;bottom:84px}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .rv{opacity:1;transform:none}
}

/* ===== páginas internas: texto, blog, busca, 404 ===== */
.inner{padding:clamp(40px,7vw,80px) 0 clamp(56px,8vw,96px);background:var(--bg-a)}
.inner .wrap{max-width:860px}
.inner h1{font-size:clamp(32px,5vw,52px);margin-bottom:18px}
.crumb{font-size:14px;color:var(--muted);margin-bottom:18px}
.crumb a{color:var(--blue-d)}
.prose{font-size:18px;line-height:1.75}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:clamp(24px,3.2vw,32px);margin-top:1.8em}
.prose h3{font-size:22px;margin-top:1.5em}
.prose a{color:var(--blue-d);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{padding-left:1.3em}
.prose img{border-radius:var(--r)}
.prose blockquote{border-left:6px solid var(--orange);background:var(--paper);padding:16px 20px;border-radius:0 var(--r) var(--r) 0}
.meta{color:var(--muted);font-size:14px;margin-bottom:22px}
.list{display:grid;gap:22px;max-width:var(--max)}
.inner .wrap.wide{max-width:var(--max)}
.list.posts{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.post .th{aspect-ratio:16/9;object-fit:cover;width:100%}
.pager{display:flex;gap:12px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.pager a,.pager span{padding:10px 16px;border-radius:999px;border:2px solid var(--navy);font-weight:700;text-decoration:none}
.pager .current{background:var(--navy);color:#fff}
.searchform{display:flex;gap:10px;margin:18px 0}
.searchform input[type=search]{flex:1;padding:14px 18px;border:2px solid var(--line);border-radius:999px;font:inherit;background:#fff}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.prose .wp-block-image{margin-block:1.4em}
/* galeria de eventos (só aparece quando houver fotos) */
.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}

/* reels de eventos */
.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
.reel{position:relative;display:block;border-radius:var(--r);overflow:hidden;aspect-ratio:3/4;background:var(--navy);text-decoration:none;color:#fff;box-shadow:0 12px 30px rgba(10,16,56,.18);transition:transform .2s}
.reel:hover{transform:translateY(-5px)}
.reel img{width:100%;height:100%;object-fit:cover}
.reel::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(10,16,56,.9))}
.reel .rt{position:absolute;z-index:2;left:16px;right:16px;bottom:14px;display:grid;gap:2px;font:700 18px/1.2 var(--serif)}
.reel .rt b{font:700 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--orange)}
.reel .rt small{font:500 13px var(--sans);opacity:.9;margin-top:6px}
@media (max-width:700px){.reels{grid-template-columns:1fr 1fr}.reel:last-child{grid-column:1/-1;aspect-ratio:16/10}}
