/* =====================================================
   ANELTA — SISTEMA DE DESIGN "CADERNO DO PROFESSOR"
   Ideia: papel, bilhete, ficha e cartão de sócio.
   Eventos = bilhetes · Formações = fichas · Planos = cartões de sócio
   Substitui assets/css/global.css. Mantém os nomes de variáveis antigos
   (--navy, --amber, --ivory…) como alias, para as páginas ainda não migradas.
===================================================== */
:root{
  /* Paleta */
  --papel:#F5F7F6; --papel-2:#ECF0EE; --branco:#FFFFFF;
  --tinta:#34445A; --tinta-2:#5B6B80; --tinta-3:#8B98A8;
  --risco:#DCE3E0;
  --menta:#BFDCD1; --menta-esc:#7C0A24; --menta-bg:#E6F2ED;
  --pessego:#F6D5C2; --pessego-bg:#FBEDE4;
  --manteiga:#F4E8B9; --manteiga-bg:#FAF4DA;
  --nevoa:#D9D4EE; --nevoa-bg:#EEECF8;
  --rosa:#F0CFD5; --rosa-bg:#F9ECEF;
  /* Tipografia */
  --f-tit:'Young Serif',Georgia,serif;
  --f-txt:'Figtree',system-ui,sans-serif;
  /* Forma */
  --r-s:10px; --r-m:18px; --r-l:28px;
  --sombra:0 1px 0 rgba(52,68,90,.04),0 8px 28px rgba(52,68,90,.07);
  --sombra-2:0 2px 0 rgba(52,68,90,.04),0 18px 44px rgba(52,68,90,.12);
  --nav-h:68px;

  /* Alias para páginas antigas */
  --navy:var(--tinta); --navy-2:var(--tinta-2); --navy-3:var(--menta);
  --dark:var(--tinta); --mid:var(--tinta-2); --muted:var(--tinta-3);
  --amber:var(--menta-esc); --amber-2:#5F9285; --amber-bg:var(--menta-bg); --amber-b:var(--menta);
  --red:var(--rosa); --red-deep:var(--rosa-bg); --rose:#B7727D; --rose-bg:var(--rosa-bg);
  --ivory:var(--papel); --ivory-2:var(--papel-2); --white:var(--branco); --border:var(--risco);
  --gold:#B9926A; --fd:var(--f-tit); --fb:var(--f-txt);
  --r:var(--r-s); --rl:var(--r-m); --sh:var(--sombra); --sh2:var(--sombra-2);
  --ease:cubic-bezier(.25,.46,.45,.94); --spring:cubic-bezier(.34,1.56,.64,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--f-txt);background:var(--papel);color:var(--tinta);font-size:16px;line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
ul,ol{list-style:none;}
button{font-family:inherit;cursor:pointer;}
:focus-visible{outline:3px solid var(--menta-esc);outline-offset:2px;border-radius:6px;}
.container{max-width:1180px;margin:0 auto;padding:0 28px;}

/* ---------- Tipografia ---------- */
h1,h2,h3,.titulo{font-family:var(--f-tit);font-weight:400;line-height:1.15;color:var(--tinta);}
.section-title{font-family:var(--f-tit);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.15;color:var(--tinta);}
.section-title em{font-style:normal;color:var(--menta-esc);}
.section-lead{color:var(--tinta-2);max-width:56ch;margin-top:.9rem;}
.eyebrow,.section-eyebrow{display:inline-block;font-size:.82rem;font-weight:600;color:var(--menta-esc);background:var(--menta-bg);padding:.25rem .8rem;border-radius:999px;}
.eyebrow::before{display:none;}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.92rem;padding:.8rem 1.4rem;border-radius:999px;border:1.5px solid transparent;transition:background .2s,border-color .2s,transform .15s;line-height:1.2;}
.btn:active{transform:scale(.98);}
.btn-primary,.btn-navy,.btn-navy-solid{background:var(--menta-esc);color:#fff;}
.btn-primary:hover,.btn-navy:hover,.btn-navy-solid:hover{background:#3F6A5F;}
.btn-outline{background:transparent;border-color:var(--tinta-3);color:var(--tinta);}
.btn-outline:hover{background:var(--branco);border-color:var(--tinta);}
.btn-ghost{background:var(--branco);color:var(--tinta);border-color:var(--risco);}
.btn-sm{padding:.5rem 1rem;font-size:.82rem;}
.btn-text{color:var(--menta-esc);font-weight:600;}

/* ---------- Navegação flutuante ---------- */
.nav-wrap{position:sticky;top:0;z-index:100;padding:14px 0 0;pointer-events:none;}
.nav{position:relative;z-index:100;pointer-events:auto;max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:1rem;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border:1px solid var(--risco);border-radius:999px;padding:.55rem .6rem .55rem 1.1rem;box-shadow:var(--sombra);margin-inline:max(16px,calc((100% - 1180px)/2 + 28px));}
.brand{display:flex;align-items:center;gap:.65rem;}
.brand-selo{width:38px;height:38px;border-radius:50%;background:var(--menta);display:grid;place-items:center;font-family:var(--f-tit);color:var(--tinta);font-size:1.05rem;border:2px dashed var(--menta-esc);}
.brand-nome{font-family:var(--f-tit);font-size:1.15rem;line-height:1;}
.brand-sub{display:block;font-family:var(--f-txt);font-size:.66rem;color:var(--tinta-3);margin-top:.15rem;}
.nav-links{display:flex;gap:.15rem;margin-left:auto;}
.nav-links a{font-size:.88rem;font-weight:500;color:var(--tinta-2);padding:.5rem .85rem;border-radius:999px;transition:background .15s,color .15s;}
.nav-links a:hover{background:var(--papel-2);color:var(--tinta);}
.nav-links a.on{background:var(--menta-esc);color:#fff;}
.nav-cta{display:flex;gap:.4rem;}
.nav-toggle{display:none;width:42px;height:42px;border-radius:50%;border:1px solid var(--risco);background:var(--branco);color:var(--tinta);}
.nav-sheet{display:none;pointer-events:auto;}
.nav-fundo{display:none;}
@media(max-width:960px){
  .nav-links,.nav-cta .btn-outline{display:none;}
  .nav-toggle{display:grid;place-items:center;margin-left:auto;}
  .nav-cta{margin-left:0;}
  .nav-sheet{position:fixed;inset:78px 16px auto 16px;background:var(--branco);border:1px solid var(--risco);border-radius:var(--r-l);box-shadow:var(--sombra-2);padding:.8rem;z-index:99;flex-direction:column;gap:.1rem;pointer-events:auto;max-height:calc(100vh - 96px);overflow-y:auto;overscroll-behavior:contain;}
  .nav-fundo{position:fixed;inset:0;background:rgba(52,68,90,.25);z-index:98;display:none;pointer-events:auto;}
  .nav-fundo.open{display:block;}
  .nav-sheet.open{display:flex;}
  .nav-sheet a{padding:.8rem 1rem;border-radius:14px;font-weight:500;}
  .nav-sheet a.on{background:var(--menta-bg);color:var(--menta-esc);}
}

/* ---------- Cabeçalho de página interna ---------- */
.page-hero{padding:3.2rem 0 2.4rem;}
.page-hero-bar,.page-hero-amber{display:none;}
.ph-bread{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--tinta-3);margin-bottom:1rem;}
.ph-bread a:hover{color:var(--menta-esc);}
.ph-bread i{font-size:.6rem;}
.ph-bread span{color:var(--tinta-2) !important;}
.ph-title{font-family:var(--f-tit);font-weight:400;font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.1;color:var(--tinta);max-width:18ch;}
.ph-title em{font-style:normal;color:var(--menta-esc);}
.ph-lead{max-width:58ch;color:var(--tinta-2);margin-top:1rem;font-size:1.04rem;}
.ph-badge{display:inline-block;background:var(--manteiga);padding:.2rem .8rem;border-radius:999px;font-size:.8rem;font-weight:600;}
.page-subnav{background:var(--branco);border-block:1px solid var(--risco);}
.psn-inner{display:flex;gap:.3rem;overflow-x:auto;padding:.6rem 0;}
.psn-link{padding:.45rem 1rem;border-radius:999px;font-size:.86rem;font-weight:500;color:var(--tinta-2);white-space:nowrap;}
.psn-link.active,.psn-link:hover{background:var(--menta-bg);color:var(--menta-esc);}
.awsig-in{margin:20px;}
/* ---------- Componentes comuns ---------- */
.chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:500;padding:.4rem .95rem;border-radius:999px;border:1.5px solid var(--risco);background:var(--branco);color:var(--tinta-2);transition:all .15s;}
.chip:hover{border-color:var(--tinta-3);color:var(--tinta);}
.chip.on{background:var(--tinta);border-color:var(--tinta);color:#fff;}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;}
.busca{display:flex;background:var(--branco);border:1.5px solid var(--risco);border-radius:999px;padding:.25rem;min-width:260px;}
.busca input{flex:1;border:none;background:none;padding:.5rem 1rem;font:inherit;font-size:.9rem;color:var(--tinta);outline:none;}
.busca button{border:none;background:var(--tinta);color:#fff;width:38px;height:38px;border-radius:50%;}
.empty-state{text-align:center;padding:4rem 1rem;color:var(--tinta-3);}
.empty-state i{font-size:2.2rem;margin-bottom:.8rem;display:block;opacity:.5;}
.pagination{display:flex;gap:.4rem;justify-content:center;padding:2.4rem 0 0;}
.page-btn{min-width:40px;height:40px;padding:0 .6rem;border-radius:50%;display:grid;place-items:center;background:var(--branco);border:1px solid var(--risco);font-size:.86rem;}
.page-btn.active{background:var(--tinta);color:#fff;border-color:var(--tinta);}
.fg{margin-bottom:1.1rem;}
.fg label{display:block;font-size:.84rem;font-weight:600;margin-bottom:.35rem;color:var(--tinta);}
.fg input,.fg select,.fg textarea,input[type=text],input[type=email],input[type=password],input[type=tel],select,textarea{width:100%;font:inherit;font-size:.94rem;color:var(--tinta);background:var(--branco);border:1.5px solid var(--risco);border-radius:14px;padding:.75rem 1rem;transition:border-color .15s,box-shadow .15s;}
.fg input:focus,.fg select:focus,.fg textarea:focus{outline:none;border-color:var(--menta-esc);box-shadow:0 0 0 4px rgba(76,122,111,.14);}
.flash{padding:1rem 1.2rem;border-radius:16px;margin-bottom:1.4rem;font-size:.92rem;display:flex;gap:.7rem;align-items:flex-start;}
.flash.ok{background:var(--menta-bg);color:#2F5A4F;}
.flash.err{background:var(--rosa-bg);color:#8A4650;}

/* ---------- Bilhete (eventos) ---------- */
.bilhete{--cor:var(--menta);display:grid;grid-template-columns:1fr 150px;background:var(--branco);border-radius:var(--r-m);box-shadow:var(--sombra);position:relative;transition:transform .2s,box-shadow .2s;
  -webkit-mask:radial-gradient(circle 12px at calc(100% - 150px) 0,transparent 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 12px at calc(100% - 150px) 100%,transparent 98%,#000) bottom/100% 51% no-repeat;
  mask:radial-gradient(circle 12px at calc(100% - 150px) 0,transparent 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 12px at calc(100% - 150px) 100%,transparent 98%,#000) bottom/100% 51% no-repeat;}
.bilhete:hover{transform:translateY(-3px);}
.bilhete-corpo{padding:1.3rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;min-width:0;}
.bilhete-tipo{align-self:flex-start;font-size:.76rem;font-weight:600;background:var(--cor);padding:.18rem .7rem;border-radius:999px;}
.bilhete-tit{font-family:var(--f-tit);font-size:1.2rem;line-height:1.25;}
.bilhete-meta{display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.82rem;color:var(--tinta-2);}
.bilhete-meta i{color:var(--menta-esc);margin-right:.3rem;}
.bilhete-pontos{border-left:2px dashed var(--risco);background:var(--cor);padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.bilhete-dia{font-family:var(--f-tit);font-size:2.6rem;line-height:1;}
.bilhete-mes{font-weight:600;font-size:.86rem;margin-top:.15rem;}
.bilhete-preco{margin-top:.6rem;font-size:.76rem;font-weight:600;}
@media(max-width:560px){.bilhete{grid-template-columns:1fr 110px;-webkit-mask:none;mask:none;}.bilhete-dia{font-size:2rem;}}

/* ---------- Ficha (formações) ---------- */
.ficha{background:var(--branco);border-radius:var(--r-m);box-shadow:var(--sombra);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s;}
.ficha:hover{transform:translateY(-3px);}
.ficha-aba{display:flex;justify-content:space-between;align-items:center;padding:.55rem 1.1rem;font-size:.78rem;font-weight:600;background:var(--cor,var(--menta));}
.ficha-img{aspect-ratio:16/9;background:var(--papel-2);overflow:hidden;}
.ficha-img img{width:100%;height:100%;object-fit:cover;}
.ficha-corpo{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.55rem;flex:1;}
.ficha-tit{font-family:var(--f-tit);font-size:1.08rem;line-height:1.3;}
.ficha-meta{font-size:.82rem;color:var(--tinta-2);display:grid;gap:.25rem;}
.ficha-meta i{width:1.1rem;color:var(--menta-esc);}
.ficha-precos{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;border-top:1.5px dashed var(--risco);padding-top:.8rem;font-size:.76rem;color:var(--tinta-3);}
.ficha-precos b{display:block;color:var(--tinta);font-size:.95rem;}

/* ---------- Cartão de sócio ---------- */
.socio{--cor:var(--menta);position:relative;background:linear-gradient(150deg,var(--cor),#fff 130%);border-radius:var(--r-m);padding:1.3rem 1.4rem;box-shadow:var(--sombra);aspect-ratio:1.62/1;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border:1px solid rgba(52,68,90,.08);}
.socio::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;border:2px dashed rgba(52,68,90,.18);right:-40px;top:-40px;}
.socio-topo{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;}
.socio-nome{font-family:var(--f-tit);font-size:1.35rem;}
.socio-preco{font-size:.9rem;font-weight:600;}
.socio-preco small{font-weight:400;opacity:.75;}

/* ---------- Rodapé ---------- */
.rodape{margin-top:6rem;background:var(--tinta);color:#DDE4EC;border-radius:var(--r-l) var(--r-l) 0 0;padding:4rem 0 1.6rem;}
.rodape a:hover{color:#fff;}
.rodape-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem;}
.rodape h4{font-family:var(--f-tit);font-weight:400;font-size:1.05rem;color:#fff;margin-bottom:1rem;}
.rodape li{margin-bottom:.5rem;font-size:.9rem;}
.rodape p{font-size:.9rem;color:#B9C4D0;max-width:34ch;}
.rodape-contacto li{display:flex;gap:.7rem;}
.rodape-contacto i{color:var(--menta);margin-top:.35rem;width:1rem;}
.redes{display:flex;gap:.5rem;margin-top:1.2rem;}
.redes a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;transition:background .2s;}
.redes a:hover{background:var(--menta-esc);}
.rodape-fim{border-top:1px solid rgba(255,255,255,.12);margin-top:2.6rem;padding-top:1.3rem;font-size:.82rem;color:#9AA8B8;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;}
@media(max-width:860px){.rodape-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:540px){.rodape-grid{grid-template-columns:1fr;}}

/* Entrada: apenas na abertura da página (um único momento) */
@keyframes pousar{from{opacity:0;transform:translateY(14px) rotate(var(--rot,0deg));}to{opacity:1;transform:translateY(0) rotate(var(--rot,0deg));}}
.pousar{animation:pousar .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d,0s);}
.reveal{opacity:1;transform:none;} /* compatibilidade: sem animação por secção */
@media(prefers-reduced-motion:reduce){.pousar{animation:none;}*{scroll-behavior:auto !important;transition:none !important;}}

/* ---------- Páginas de detalhe (evento, formação, notícia) ---------- */
.det-topo{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;margin-bottom:2rem;}
.det-topo h1{font-size:clamp(2rem,4.2vw,3.2rem);max-width:22ch;}
.det-sub{color:var(--tinta-2);font-size:1.08rem;margin-top:.8rem;max-width:60ch;}
.det-capa{border-radius:var(--r-l);overflow:hidden;aspect-ratio:21/9;background:var(--papel-2);box-shadow:var(--sombra);margin-bottom:2.2rem;}
.det-capa img{width:100%;height:100%;object-fit:cover;}
.det-grid{display:grid;grid-template-columns:1fr 360px;gap:3rem;align-items:start;}
.det-lado{position:sticky;top:96px;display:grid;gap:1.2rem;}
.cartao{background:var(--branco);border-radius:var(--r-m);box-shadow:var(--sombra);padding:1.5rem;}
.cartao h2,.cartao h3{font-size:1.2rem;margin-bottom:.9rem;}
.fatos{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem;margin-bottom:2rem;}
.fato{background:var(--branco);border:1px solid var(--risco);border-radius:var(--r-m);padding:.9rem 1.1rem;}
.fato small{display:block;font-size:.76rem;color:var(--tinta-3);}
.fato b{font-weight:600;line-height:1.35;display:block;margin-top:.1rem;}
.fato i{color:var(--menta-esc);margin-right:.35rem;}
.prose{max-width:68ch;}
.prose p{margin-bottom:1rem;color:var(--tinta);}
.prose h2,.prose h3{margin:1.6rem 0 .6rem;}
.prose ul{list-style:disc;padding-left:1.3rem;margin-bottom:1rem;}
.prose ol{list-style:decimal;padding-left:1.3rem;margin-bottom:1rem;}
.prose li{margin-bottom:.3rem;}
.prose a{color:var(--menta-esc);text-decoration:underline;}
.prose img{border-radius:var(--r-m);margin:1rem 0;}
.prose blockquote{border-left:4px solid var(--menta);padding:.2rem 0 .2rem 1rem;color:var(--tinta-2);font-family:var(--f-tit);margin:1.2rem 0;}
.sec-h{font-size:1.4rem;margin:2.2rem 0 1rem;}
.tick li{display:flex;gap:.7rem;margin-bottom:.6rem;}
.tick i{color:var(--menta-esc);margin-top:.35rem;}
.preco-duplo{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem;}
.preco-duplo div{border:1.5px solid var(--risco);border-radius:14px;padding:.7rem .9rem;font-size:.78rem;color:var(--tinta-3);}
.preco-duplo div.vale{background:var(--menta-bg);border-color:var(--menta);color:var(--menta-esc);}
.preco-duplo b{display:block;font-family:var(--f-tit);font-weight:400;font-size:1.25rem;color:var(--tinta);}
.partilha{display:flex;gap:.5rem;flex-wrap:wrap;}
.partilha a,.partilha button{width:40px;height:40px;border-radius:50%;border:1px solid var(--risco);background:var(--branco);display:grid;place-items:center;color:var(--tinta-2);}
.partilha a:hover,.partilha button:hover{background:var(--menta-bg);color:var(--menta-esc);}
.dois{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.hp{position:absolute;left:-9999px;}
.mais{margin-top:4rem;}
.mais h2{margin-bottom:1.4rem;}
.mais-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;}
@media(max-width:960px){.det-grid{grid-template-columns:1fr;}.det-lado{position:static;}.det-topo{grid-template-columns:1fr;}.det-capa{aspect-ratio:16/9;}}
@media(max-width:520px){.dois{grid-template-columns:1fr;}}
