/* Educação Física em Sala: estilo das páginas (sem framework, sem fonte externa) */
:root{
  --verde:#1E6B52; --verde-esc:#16503D; --tinta:#221E1A; --cinza:#5A544D; --linha:#DDD7CE;
  --papel:#F6F3EE; --mesa:#EEEAE3; --alerta:#8E2B2B;
  --brinc:#B04A22; --esp:#1E6B52; --dan:#86356A; --lut:#8E2B2B; --av:#6A5A16; --gin:#2C5A8A;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--tinta);font:17px/1.55 Arial,Helvetica,sans-serif;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:700;line-height:1.18;margin:0 0 .5em}
h1{font-size:27px;letter-spacing:-.2px}
h2{font-size:24px}
h3{font-size:19px}
h2::after{content:"";display:block;width:56px;height:3px;background:var(--verde);margin-top:12px}
p{margin:0 0 1em}
a{color:var(--verde)}
.wrap{max-width:720px;margin:0 auto;padding:0 18px}
.largo{max-width:1060px}
section{padding:40px 0;border-top:1px solid var(--linha)}
.sec-papel{background:var(--papel)}
.olho{font-size:12.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--verde);margin:0 0 10px}
.cinza{color:var(--cinza)}
.peq{font-size:14px}

/* faixa da data (real, fixa) */
.faixa{background:var(--verde-esc);color:#fff;font-size:14px;text-align:center;padding:8px 12px;line-height:1.35}
.faixa b{font-weight:700}
.faixa .desk{display:none}
@media(min-width:700px){.faixa .desk{display:inline}.faixa .mob{display:none}}
.nw{white-space:nowrap}

/* botões */
.btn{display:block;width:100%;min-height:56px;padding:15px 18px;border:0;border-radius:6px;background:var(--verde);
  color:#fff;font:700 18px/1.25 Arial,Helvetica,sans-serif;text-align:center;text-decoration:none;cursor:pointer}
.btn:hover,.btn:focus-visible{background:var(--verde-esc)}
.btn:focus-visible{outline:3px solid #F2B84B;outline-offset:2px}
.btn-sec{background:#fff;color:var(--verde);border:2px solid var(--verde);font-size:16px;min-height:48px;padding:12px 16px}
.btn-sec:hover{background:#EEF5F2}
.cta{margin:22px 0 8px}
.cta-link{display:inline-block;min-height:44px;padding:11px 0;font-size:16px}
.selos{font-size:14px;color:var(--cinza);margin:6px 0 0}

/* dobra 1 */
.hero{padding:14px 0 28px;border:0}
.hero h1{margin-bottom:14px}
.hero .sub{font-size:16px;line-height:1.5;margin:12px 0 0}
.hero .cta{margin:16px 0 4px}
.hero figure{margin:0 -18px}
.hero figcaption{font-size:12.5px;color:var(--cinza);padding:6px 18px 0;font-style:italic}
@media(min-width:900px){
  h1{font-size:40px} h2{font-size:30px}
  .hero{padding:44px 0 52px}
  .hero .grade{display:grid;grid-template-columns:1fr 1.05fr;column-gap:44px;
    grid-template-areas:"a f" "b f";grid-template-rows:auto 1fr;align-items:start}
  .hero .grade>.texto:first-child{grid-area:a;align-self:end}
  .hero .grade>figure{grid-area:f;margin:0;align-self:center}
  .hero .grade>div.texto:nth-of-type(2){grid-area:b}
  .hero figcaption{padding:6px 0 0}
  .btn{font-size:19px}
}

/* listas */
.lista{padding:0;margin:0 0 1em;list-style:none}
.lista li{position:relative;padding-left:26px;margin-bottom:10px}
.lista li::before{content:"";position:absolute;left:4px;top:.55em;width:10px;height:10px;background:var(--verde)}
.num{counter-reset:n;padding:0;list-style:none}
.num li{counter-increment:n;position:relative;padding-left:40px;margin-bottom:16px}
.num li::before{content:counter(n);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;
  background:var(--verde);color:#fff;font:700 15px/28px Arial,sans-serif;text-align:center}

/* páginas (miniaturas com zoom) */
.paginas{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}
@media(min-width:700px){.paginas{grid-template-columns:repeat(4,1fr)}}
.pagina{margin:0}
.pagina a{display:block;border:1px solid var(--linha);background:#fff;position:relative}
.pagina a::after{content:"ampliar";position:absolute;right:6px;bottom:6px;background:rgba(34,30,26,.78);color:#fff;
  font-size:12px;padding:3px 7px;border-radius:3px}
.pagina figcaption{font-size:14px;margin-top:6px;line-height:1.35}
.pagina figcaption b{display:block;color:var(--verde);text-transform:uppercase;font-size:12.5px;letter-spacing:.5px}

.recorte{margin:18px 0;border:1px solid var(--linha);background:#fff;padding:8px}
.recorte a{display:flex;align-items:center;min-height:44px}
.recorte figcaption{font-size:13px;color:var(--cinza);font-style:italic;margin-top:6px}

/* comparação */
.tabela-wrap{margin:20px 0}
table.comp{width:100%;border-collapse:collapse;font-size:15px;line-height:1.4;table-layout:fixed}
table.comp th,table.comp td{border-bottom:1px solid var(--linha);padding:10px 8px;text-align:left;vertical-align:top;word-wrap:break-word}
table.comp thead th{font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--cinza)}
table.comp thead th.nosso{color:var(--verde)}
table.comp td.nosso{background:#EEF5F2;font-weight:700}
table.comp th[scope=row]{font-weight:700;width:24%}
@media(max-width:560px){
  table.comp,table.comp tbody,table.comp tr,table.comp td,table.comp th{display:block;width:auto}
  table.comp thead{display:none}
  table.comp tr{border:1px solid var(--linha);margin-bottom:12px;background:#fff}
  table.comp th[scope=row]{border:0;padding:10px 12px 2px;width:auto}
  table.comp td{border:0;padding:6px 12px}
  table.comp td::before{content:attr(data-r);display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--cinza)}
  table.comp td.nosso::before{color:var(--verde)}
  table.comp td.nosso{padding-bottom:10px}
}

/* aulas */
.aulas{display:grid;gap:12px;margin:20px 0;padding:0;list-style:none}
@media(min-width:760px){.aulas{grid-template-columns:1fr 1fr}}
.aula{display:grid;grid-template-columns:104px 1fr;gap:14px;align-items:start;border:1px solid var(--linha);padding:10px;background:#fff}
.aula a{display:block;border:1px solid var(--linha)}
.aula .ano{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
.aula h3{font-size:17px;margin:2px 0 4px}
.aula .un{font-size:14px;color:var(--cinza);margin:0}
.c-brinc{color:var(--brinc)}.c-esp{color:var(--esp)}.c-dan{color:var(--dan)}.c-lut{color:var(--lut)}.c-av{color:var(--av)}
.aula.brinc{border-left:5px solid var(--brinc)}.aula.esp{border-left:5px solid var(--esp)}.aula.dan{border-left:5px solid var(--dan)}
.aula.lut{border-left:5px solid var(--lut)}.aula.av{border-left:5px solid var(--av)}

.destaque{border-left:4px solid var(--verde);background:#EEF5F2;padding:14px 16px;margin:20px 0}

/* bônus */
.bonus{display:grid;gap:18px;margin:20px 0}
@media(min-width:760px){.bonus{grid-template-columns:1fr 1fr}}
.bonus article{border:1px solid var(--linha);background:#fff;padding:16px}
.bonus .dor{font-family:Georgia,serif;font-style:italic;font-size:18px;margin:0 0 8px}
.bonus h3{font-size:16px;font-family:Arial,sans-serif;color:var(--verde);margin:0 0 8px}
.bonus p{font-size:15.5px}
.bonus img{border:1px solid var(--linha);margin-top:10px;width:100%;height:210px;object-fit:cover;object-position:top}
@media(min-width:760px){.bonus img{height:260px}}

/* planos */
.planos{display:grid;gap:18px;margin:22px 0}
@media(min-width:800px){.planos{grid-template-columns:1.15fr 1fr;align-items:start}}
.plano{border:1px solid var(--linha);padding:22px 18px;background:#fff}
.plano.top{border:3px solid var(--verde);position:relative;padding-top:30px}
.plano .tag{position:absolute;top:-14px;left:16px;background:var(--verde);color:#fff;font-size:13px;font-weight:700;
  text-transform:uppercase;letter-spacing:.5px;padding:4px 10px}
.plano h3{font-family:Arial,sans-serif;font-size:15px;text-transform:uppercase;letter-spacing:.6px;margin:0 0 4px}
.preco{font-family:Georgia,serif;font-size:42px;font-weight:700;line-height:1;margin:6px 0 14px}
.preco small{font-size:20px}
.plano .lista li{font-size:16px}
.plano .nao li::before{background:#BDB6AC}
.prazo{font-size:14.5px;background:var(--papel);padding:10px 12px;margin:12px 0 0}

/* garantia */
.garantia{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:start}
.selo{width:76px;height:76px;border:3px solid var(--verde);border-radius:50%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;font-family:Georgia,serif;color:var(--verde);line-height:1}
.selo b{font-size:28px}.selo span{font-size:12px;font-family:Arial,sans-serif;font-weight:700;text-transform:uppercase}

/* FAQ */
details{border-bottom:1px solid var(--linha)}
summary{cursor:pointer;min-height:48px;padding:13px 32px 13px 0;font-weight:700;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:10px;font-size:24px;color:var(--verde);font-weight:400}
details[open] summary::after{content:"–"}
details p{margin:0 0 14px;color:#3A3530}

.ps{font-size:16px;border-top:1px dashed var(--linha);padding-top:14px;margin-top:22px}

footer{background:var(--papel);font-size:13.5px;color:var(--cinza);padding:26px 0 110px;border-top:1px solid var(--linha)}
footer a{color:var(--cinza);display:inline-block;min-height:44px;padding:12px 0}

/* barra fixa no celular */
.barra{position:fixed;left:0;right:0;bottom:0;z-index:20;background:#fff;border-top:1px solid var(--linha);
  box-shadow:0 -2px 10px rgba(0,0,0,.08);padding:8px 12px calc(8px + env(safe-area-inset-bottom));
  display:flex;gap:10px;align-items:center;transform:translateY(110%);transition:transform .2s}
.barra.on{transform:none}
.barra .info{font-size:13px;line-height:1.25;flex:1;min-width:0}
.barra .info b{font-family:Georgia,serif;font-size:19px;display:block}
.barra .btn{width:auto;flex:0 0 auto;min-height:48px;padding:12px 16px;font-size:16px}
@media(min-width:900px){.barra{display:none}footer{padding-bottom:30px}}

/* zoom e pop-up */
dialog{border:0;padding:0;max-width:96vw;max-height:94vh;background:#fff}
dialog::backdrop{background:rgba(20,18,16,.78)}
dialog img{max-height:86vh;width:auto;margin:0 auto}
dialog.largo-d{overflow:auto}
dialog.largo-d img{max-height:none;max-width:none;height:auto;width:200vw}
.fechar{position:sticky;top:0;float:right;min-width:44px;min-height:44px;border:0;background:var(--tinta);color:#fff;font-size:22px;cursor:pointer}
.popup{max-width:440px;padding:26px 22px}
.popup h2{font-size:22px}

/* formulário */
form .campo{margin-bottom:14px}
label{display:block;font-weight:700;font-size:15px;margin-bottom:5px}
input[type=text],input[type=email],input[type=tel]{width:100%;min-height:50px;padding:12px;border:1px solid #9C958C;
  border-radius:5px;font:17px Arial,sans-serif;color:var(--tinta);background:#fff}
input:focus{outline:3px solid #F2B84B;border-color:var(--verde)}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px;line-height:1.4;min-height:44px;cursor:pointer}
.check input{width:22px;height:22px;flex:0 0 22px;margin:1px 0 0}
.oculto{position:absolute;left:-9999px}
.caixa-form{border:2px solid var(--verde);padding:20px 16px;background:#fff;margin:18px 0}
.download{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}

/* ===== v2: parte visível curta + detalhes em <details data-bloco> (não afeta a v1) ===== */
.parte,.item,.bloco{border:1px solid var(--linha);background:#fff;margin:0 0 10px;scroll-margin-top:12px}
.parte>summary,.item>summary,.bloco>summary{padding:10px 40px 10px 12px;font-weight:400}
.parte>summary::after,.item>summary::after,.bloco>summary::after{right:12px;top:50%;margin-top:-17px;
  width:26px;height:26px;line-height:24px;text-align:center;border:1.5px solid var(--verde);border-radius:50%;font-size:20px}
.parte>summary{display:grid;grid-template-columns:62px 1fr;gap:12px;align-items:center}
.parte>summary img{width:62px;height:auto;border:1px solid var(--linha)}
.txt{display:block;font-size:15.5px;line-height:1.35}
.txt b{display:block;font-family:Georgia,serif;font-size:17.5px;margin-bottom:2px}
.perg{display:block;color:var(--verde);font-weight:700;font-size:15px;margin-top:4px;text-decoration:underline;text-underline-offset:3px}
.bloco>summary{font-weight:700;color:var(--tinta);display:flex;align-items:center;min-height:52px}
.parte[open],.item[open],.bloco[open]{border-color:var(--verde)}
.parte[open]>summary .perg,.item[open]>summary .perg{text-decoration:none}
.abre{padding:4px 12px 14px;border-top:1px solid var(--linha)}
.abre>*:first-child{margin-top:12px}
.abre img{border:1px solid var(--linha);margin:10px 0 4px;width:100%}
.abre h3{font-family:Arial,sans-serif;font-size:16px;margin:14px 0 4px}
.abre p{font-size:15.5px}
.abre .tabela-wrap{margin:10px 0}
.legenda{font-size:13px!important;color:var(--cinza)!important;font-style:italic;margin:0 0 12px!important}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.duas img{margin:10px 0 4px}
.recorte-img{background:#fff}
.linhas{list-style:none;padding:0;margin:4px 0 22px}
.linhas li{position:relative;padding:4px 0 4px 26px;font-size:15.5px}
.linhas li::before{content:"";position:absolute;left:4px;top:.75em;width:10px;height:10px;background:var(--verde)}
.aulas-lista{list-style:none;padding:0;margin:10px 0 12px}
.aulas-lista li{padding:8px 0;border-bottom:1px solid var(--linha);font-weight:700;font-family:Georgia,serif;font-size:16px;line-height:1.3}
.aulas-lista .ano{display:block;font:700 12.5px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.4px}
.aulas-lista .un{display:block;font:400 14px/1.35 Arial,sans-serif;color:var(--cinza)}
.duvidas{padding:28px 0}
.duvidas .bloco:last-child{margin-bottom:0}
@media(min-width:760px){
  .parte .abre>img,.item .abre>img{max-width:520px}
}
