/* ==========================================================
   ESTÁGIOS FORMATIVOS — CFP-MNR
   Centro de Formação MNR Investimentos
   Folha de estilos da página inicial (protótipo)
   ----------------------------------------------------------
   1. Base, cabeçalho, menu, hero e indicadores  (bloco aprovado)
   2. Sistema das secções
   3. Da formação à execução    9.  Prática acompanhada
   4. Vídeo de apresentação     10. Galeria de vídeos
   5. Como funciona             11. Credibilidade
   6. Nove áreas                12. Artigos
   7. Duração flexível          13. Perguntas frequentes
   8. Horários                  14. Pré-candidatura
                                15. Chamada final
                                16. Rodapé
                                17. Responsividade
                                18. Movimento reduzido
                                19. Responsividade das secções redesenhadas
                                20. Movimento reduzido das mesmas
   ========================================================== */

/* ==========================================================
   1. BASE, CABEÇALHO, HERO E INDICADORES (bloco aprovado)
   ========================================================== */
:root{
  /* Paleta aprovada */
  --c-primary:#B87333;
  --c-primary-dark:#8B5523;
  --c-primary-light:#D4956B;
  --c-accent:#E04E1C;
  --c-accent-dark:#B83C12;
  --c-dark:#0A0A0A;
  --c-bg-alt:#FAF5EE;
  --c-text:#2A1F18;
  --c-text-muted:#6B5D52;
  --c-line:#EFE6D8;
  --verde-wa:#25D366;
  --font-serif:'Playfair Display',serif;
  --font-display:'Plus Jakarta Sans','Inter',sans-serif;
  --font-sans:'Inter',sans-serif;
  --header-h:84px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-sans);background:#fff;color:var(--c-text);overflow-x:hidden}
img,video{display:block;max-width:100%}

/* ============ CABEÇALHO ============ */
.header{
  position:fixed;inset:0 0 auto 0;z-index:70;
  height:var(--header-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(18px,4vw,56px);
  background:#fff;
  transition:height .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease;
}
.header.is-scrolled{height:72px;box-shadow:0 4px 20px rgba(10,10,10,.10)}

/* Identidade */
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex:0 0 auto}
.brand__mark{
  width:46px;height:46px;border-radius:13px;flex:0 0 auto;
  background:linear-gradient(135deg,var(--c-primary-dark),var(--c-primary));
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:800;color:#fff;font-size:.78rem;letter-spacing:.02em;
  box-shadow:0 4px 12px rgba(184,115,51,.28);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.header.is-scrolled .brand__mark{width:42px;height:42px;border-radius:12px}
.brand:hover .brand__mark{transform:rotate(-4deg) scale(1.04)}
.brand__text{display:flex;flex-direction:column;line-height:1.1}
.brand__name{
  font-family:var(--font-display);font-weight:800;color:var(--c-text);
  font-size:1.04rem;letter-spacing:.01em;white-space:nowrap;
}
.brand__sub{
  font-family:var(--font-sans);font-weight:500;color:var(--c-text-muted);
  font-size:.685rem;letter-spacing:.015em;white-space:nowrap;margin-top:2px;
}

/* Navegação */
.nav{display:flex;gap:17px;align-items:center}
.nav a.nav__link{
  position:relative;color:var(--c-text);text-decoration:none;
  font-size:.875rem;font-weight:500;white-space:nowrap;
  padding:6px 0;transition:color .22s ease;
}
.nav a.nav__link::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--c-accent);border-radius:2px;
  transform:scaleX(0);transform-origin:left;transition:transform .28s cubic-bezier(.2,.7,.2,1);
}
.nav a.nav__link:hover::after,.nav a.nav__link:focus-visible::after{transform:scaleX(1)}
.nav a.nav__link:hover,.nav a.nav__link:focus-visible{color:var(--c-accent)}
.nav a.is-active{color:var(--c-accent);font-weight:600}
.nav a.is-active::after{transform:scaleX(1)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--font-display);font-weight:700;text-decoration:none;
  border-radius:999px;cursor:pointer;border:none;white-space:nowrap;
  transition:transform .22s cubic-bezier(.2,.7,.2,1), box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.btn:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
.btn:active{transform:translateY(1px) scale(.985)}
.btn--outline-nav{border:1.5px solid var(--c-primary);color:var(--c-primary);background:transparent;padding:10px 19px;font-size:.845rem}
.btn--outline-nav:hover{background:var(--c-primary);color:#fff;box-shadow:0 6px 16px rgba(184,115,51,.3)}
.btn--wa{background:var(--verde-wa);color:#fff;padding:11px 19px;font-size:.845rem}
.btn--wa:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,211,102,.38)}

/* Botão hambúrguer */
.nav-toggle{
  display:none;position:relative;z-index:90;
  width:44px;height:44px;border:none;background:none;cursor:pointer;
  align-items:center;justify-content:center;border-radius:10px;
  transition:background .2s ease;
}
.nav-toggle:hover{background:rgba(184,115,51,.09)}
.nav-toggle:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px}
.nav-toggle span{
  position:absolute;left:11px;width:22px;height:2px;border-radius:2px;
  background:var(--c-text);
  transition:transform .32s cubic-bezier(.2,.7,.2,1), opacity .2s ease, width .32s ease;
}
.nav-toggle span:nth-child(1){transform:translateY(-6px)}
.nav-toggle span:nth-child(3){transform:translateY(6px);width:15px}
body.menu-open .nav-toggle span:nth-child(1){transform:rotate(45deg)}
body.menu-open .nav-toggle span:nth-child(2){opacity:0}
body.menu-open .nav-toggle span:nth-child(3){transform:rotate(-45deg);width:22px}

/* ============ MENU MÓVEL ============ */
.nav-backdrop{
  position:fixed;inset:0;z-index:60;background:rgba(10,10,10,.5);
  opacity:0;visibility:hidden;transition:opacity .34s ease, visibility .34s;
  backdrop-filter:blur(2px);
}
body.menu-open .nav-backdrop{opacity:1;visibility:visible}

/* ============ HERO ============ */
.hero{
  position:relative;display:flex;align-items:center;overflow:hidden;
  background:var(--c-dark);
  min-height:100svh;
  padding-top:var(--header-h);
}
.hero__media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero__media video{
  width:100%;height:100%;object-fit:cover;object-position:center 32%;
  animation:kenburns 26s ease-in-out infinite alternate;
  will-change:transform;
}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.07)}}
.hero__overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg, rgba(10,10,10,.80) 0%, rgba(20,13,6,.55) 52%, rgba(10,10,10,.30) 100%),
    linear-gradient(180deg, rgba(10,10,10,.30) 0%, rgba(10,10,10,.18) 38%, rgba(10,10,10,.62) 100%);
}
.hero__content{
  position:relative;z-index:2;width:100%;
  max-width:1240px;margin:0 auto;
  padding:34px clamp(20px,5vw,64px) 150px;
}
.hero__title{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(2.35rem,5.9vw,4.5rem);
  line-height:1.14;letter-spacing:-.012em;
  margin:0 0 18px;color:#fff;
  text-shadow:0 2px 26px rgba(10,10,10,.55);
}
.hero__title .line{display:block}
.hero__title .line > span{display:block}
.hero__title em{
  position:relative;font-style:normal;
  background:linear-gradient(90deg,var(--c-accent) 0%,var(--c-primary-light) 92%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
/* Destaque discreto e animado na palavra "prática" */
.hero__title em::after{
  content:"";position:absolute;left:0;bottom:.06em;height:.075em;width:100%;
  background:linear-gradient(90deg,var(--c-accent),var(--c-primary-light));
  border-radius:99px;opacity:.85;
  transform:scaleX(0);transform-origin:left;
  animation:underline 1.1s cubic-bezier(.2,.7,.2,1) 1.15s forwards;
}
@keyframes underline{to{transform:scaleX(1)}}
.hero__subtitle{
  font-size:clamp(1.02rem,1.55vw,1.2rem);line-height:1.62;
  color:rgba(255,255,255,.92);max-width:46ch;margin:0 0 30px;
  text-shadow:0 1px 12px rgba(10,10,10,.6);
}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap}
.btn--primary{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  color:#fff;padding:16px 34px;font-size:1rem;border-radius:14px;
  box-shadow:0 8px 24px rgba(224,78,28,.32);
}
.btn--primary .arrow{transition:transform .25s cubic-bezier(.2,.7,.2,1);display:inline-block}
.btn--primary:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(224,78,28,.5)}
.btn--primary:hover .arrow{transform:translateX(4px)}
.btn--ghost{
  background:rgba(255,255,255,.04);color:#fff;padding:16px 30px;font-size:1rem;
  border:1.5px solid rgba(255,255,255,.5);border-radius:14px;backdrop-filter:blur(3px);
}
.btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.14);transform:translateY(-3px)}

/* ============ CARTÃO DE INDICADORES ============ */
.stats-card{
  position:relative;z-index:5;
  width:min(1100px, calc(100% - 48px));margin:-92px auto 0;
  background:#fff;border-radius:20px;
  box-shadow:0 24px 60px rgba(10,10,10,.16);
  display:grid;grid-template-columns:repeat(3,1fr);
  padding:32px 10px;
}
.stats-card .stat{text-align:center;padding:6px 18px;border-right:1px solid var(--c-line)}
.stats-card .stat:last-child{border-right:none}
.stats-card strong{
  display:block;font-family:var(--font-serif);font-weight:700;
  font-size:clamp(1.85rem,3.2vw,2.6rem);line-height:1.15;
  background:linear-gradient(90deg,var(--c-accent),var(--c-primary));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-variant-numeric:tabular-nums;
}
.stats-card span{display:block;margin-top:4px;font-size:.93rem;color:var(--c-text-muted);font-weight:500}

/* ============ BOTÃO FLUTUANTE WHATSAPP ============ */
.wa-float{
  --wa-lift:0px;
  position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:65;
  width:56px;height:56px;border-radius:50%;
  background:var(--verde-wa);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px rgba(37,211,102,.42);
  text-decoration:none;
  opacity:0;visibility:hidden;
  transform:translateY(calc(14px - var(--wa-lift))) scale(.9);
  transition:opacity .5s ease, transform .5s cubic-bezier(.2,.7,.2,1), visibility .5s, box-shadow .25s ease;
}
.wa-float.is-visible{opacity:1;visibility:visible;transform:translateY(calc(-1 * var(--wa-lift))) scale(1)}
html:not(.js) .wa-float{opacity:1;visibility:visible;transform:none}
.wa-float.is-visible:hover{
  transform:translateY(calc(-1 * var(--wa-lift))) scale(1.08);
  box-shadow:0 14px 32px rgba(37,211,102,.52);
}
.wa-float:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
.wa-float svg{width:29px;height:29px;fill:#fff;position:relative;z-index:1}
/* Pulso discreto, uma única vez, logo a seguir à entrada */
.wa-float::before{
  content:"";position:absolute;inset:0;border-radius:50%;
  border:2px solid var(--verde-wa);opacity:0;pointer-events:none;
}
.wa-float.wa-pulse::before{animation:waPulso 1.5s cubic-bezier(.2,.7,.2,1) 1}
@keyframes waPulso{
  from{transform:scale(1);opacity:.6}
  to{transform:scale(1.62);opacity:0}
}

/* ============ ANIMAÇÕES DE ENTRADA ============ */
.enter{opacity:0;transform:translateY(24px);animation:enter .85s cubic-bezier(.2,.7,.2,1) forwards}
.enter-line{opacity:0;transform:translateY(30px);animation:enterLine .9s cubic-bezier(.2,.7,.2,1) forwards}
.d1{animation-delay:.12s}.d2{animation-delay:.27s}.d3{animation-delay:.46s}
.d4{animation-delay:.62s}.d5{animation-delay:.8s}
@keyframes enter{to{opacity:1;transform:none}}
@keyframes enterLine{to{opacity:1;transform:none}}

/* Revelação ao scroll */
.reveal{transition:opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1)}
.js .reveal{opacity:0;transform:translateY(30px)}
.js .reveal.is-in{opacity:1;transform:none}

/* ============ SECÇÃO SEGUINTE ============ */

/* ============ RESPONSIVIDADE ============ */

/* Ecrãs baixos (ex.: 1366x768) — garante o CTA no primeiro ecrã */
@media (min-width:1025px) and (max-height:820px){
  .hero__content{padding-top:18px;padding-bottom:128px}
  .hero__title{font-size:clamp(2.2rem,4.4vw,3.5rem);margin-bottom:15px}
  .hero__subtitle{margin-bottom:24px;font-size:1.05rem}
  .btn--primary,.btn--ghost{padding-top:14px;padding-bottom:14px}
  .stats-card{margin-top:-78px;padding:26px 10px}
}

/* Navegação móvel activa antes de os elementos colidirem */
@media (max-width:1199px){
  .nav-toggle{display:flex}
  .nav{
    position:fixed;top:0;right:0;z-index:80;
    height:100svh;width:min(340px,86vw);
    flex-direction:column;align-items:stretch;justify-content:flex-start;
    gap:0;padding:calc(var(--header-h) + 14px) 26px 32px;
    background:#fff;box-shadow:-18px 0 50px rgba(10,10,10,.18);
    transform:translateX(100%);
    transition:transform .38s cubic-bezier(.3,.8,.25,1);
    overflow-y:auto;
  }
  body.menu-open .nav{transform:none}
  .nav a.nav__link{
    font-size:1.03rem;padding:15px 2px;
    border-bottom:1px solid var(--c-line);
    opacity:0;transform:translateX(18px);
    transition:opacity .4s ease, transform .4s cubic-bezier(.2,.7,.2,1), color .22s ease;
  }
  .nav a.nav__link::after{display:none}
  body.menu-open .nav a.nav__link{opacity:1;transform:none}
  body.menu-open .nav a:nth-child(1){transition-delay:.08s}
  body.menu-open .nav a:nth-child(2){transition-delay:.12s}
  body.menu-open .nav a:nth-child(3){transition-delay:.16s}
  body.menu-open .nav a:nth-child(4){transition-delay:.20s}
  body.menu-open .nav a:nth-child(5){transition-delay:.24s}
  body.menu-open .nav a:nth-child(6){transition-delay:.28s}
  body.menu-open .nav a:nth-child(7){transition-delay:.32s}
  .nav .btn{
    width:100%;margin-top:14px;padding-top:15px;padding-bottom:15px;font-size:.98rem;
    opacity:0;transform:translateX(18px);
    transition:opacity .4s ease, transform .4s cubic-bezier(.2,.7,.2,1), background .22s ease, color .22s ease;
  }
  body.menu-open .nav .btn{opacity:1;transform:none}
  body.menu-open .nav .btn--outline-nav{transition-delay:.36s}
  body.menu-open .nav .btn--wa{transition-delay:.4s;margin-top:10px}
  body.menu-open{overflow:hidden}
}

/* Tablet */
@media (max-width:900px){
  :root{--header-h:78px}
  .hero__content{padding:26px 24px 138px}
  .stats-card{width:min(1100px,calc(100% - 36px));padding:26px 6px}
  .stats-card .stat{padding:6px 10px}
  .stats-card span{font-size:.86rem}
}

/* Telemóvel (~390px) */
@media (max-width:680px){
  :root{--header-h:72px}
  .header.is-scrolled{height:64px}
  .brand__mark{width:42px;height:42px;font-size:.72rem}
  .brand__name{font-size:.95rem}
  .brand__sub{font-size:.625rem}
  .hero{min-height:88svh}
  .hero__content{padding:44px 22px 120px}
  .hero__title{font-size:clamp(2.05rem,8.4vw,2.6rem);margin-bottom:16px}
  .hero__subtitle{font-size:1rem;margin-bottom:26px;max-width:38ch}
  .hero__actions{gap:11px}
  .hero__actions .btn{width:100%;padding-top:16px;padding-bottom:16px;min-height:54px}
  .stats-card{
    grid-template-columns:1fr;width:calc(100% - 32px);margin:-72px auto 0;
    padding:8px 14px;border-radius:18px;
  }
  .stats-card .stat{
    display:flex;align-items:center;justify-content:flex-start;gap:14px;
    text-align:left;border-right:none;border-bottom:1px solid var(--c-line);padding:15px 6px;
  }
  .stats-card .stat:last-child{border-bottom:none}
  .stats-card strong{font-size:1.75rem;min-width:74px}
  .stats-card span{margin-top:0;font-size:.9rem}
  .wa-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:54px;height:54px}
  .wa-float svg{width:27px;height:27px}
}

/* Acessibilidade — movimento reduzido */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .enter,.enter-line{opacity:1;transform:none;animation:none}
  .hero__media video{animation:none}
  .hero__title em::after{transform:scaleX(1);animation:none}
  .reveal{opacity:1;transform:none;transition:none}
  .btn,.brand__mark,.nav a.nav__link::after{transition:none}
  .wa-float.wa-pulse::before{animation:none}
}
/* ==========================================================
   2. SISTEMA DAS SECÇÕES
   ========================================================== */
.wrap{width:min(1240px,calc(100% - 48px));margin-inline:auto}
.sec{position:relative;padding:clamp(62px,7vw,108px) 0;scroll-margin-top:calc(var(--header-h) + 8px)}
.sec--alt{background:var(--c-bg-alt)}
.sec--dark{background:var(--c-dark);color:#fff}

.eyebrow{
  display:inline-flex;align-items:center;gap:0;
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(.85rem, .8rem + .15vw, .98rem);
  letter-spacing:.09em;text-transform:uppercase;color:var(--c-accent);
}
.sec--dark .eyebrow{color:var(--c-primary-light)}

.sec__title{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.18;letter-spacing:-.015em;
  color:var(--c-dark);margin:16px 0 0;
}
.sec--dark .sec__title{color:#fff}
.sec__lead{margin-top:15px;font-size:1.04rem;line-height:1.75;color:var(--c-text-muted);max-width:60ch}
.sec--dark .sec__lead{color:rgba(255,255,255,.74)}
.sec__head{max-width:780px}
.sec__head--center{margin-inline:auto;text-align:center}
.sec__head--center .sec__lead{margin-inline:auto}
.mark{color:var(--c-accent);font-weight:600}
.sec--dark .mark{color:var(--c-primary-light)}

/* Botões adicionais */
.btn--lg{padding:16px 32px;font-size:1rem;border-radius:14px}
.btn--laranja{background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));color:#fff;box-shadow:0 8px 24px rgba(224,78,28,.3)}
.btn--laranja:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(224,78,28,.48)}
.btn--linha{background:transparent;color:var(--c-text);border:1.5px solid var(--c-line)}
.btn--linha:hover{border-color:var(--c-primary);color:var(--c-primary);transform:translateY(-2px)}
.sec--dark .btn--linha{color:#fff;border-color:rgba(255,255,255,.4)}
.sec--dark .btn--linha:hover{border-color:#fff;background:rgba(255,255,255,.1);color:#fff}
.btn--whats{background:var(--verde-wa);color:#fff}
.btn--whats:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(37,211,102,.4)}
.acoes{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

/* ==========================================================
   3. SECÇÃO 1 — DA FORMAÇÃO À CAPACIDADE DE EXECUTAR
   ========================================================== */
.executar{background:#fff;overflow:hidden}
.executar__grid{
  display:grid;grid-template-columns:1.1fr .9fr;align-items:center;
}
.executar__foto{
  position:relative;border-radius:26px;overflow:hidden;
  aspect-ratio:4/3;background:#17110B;
  box-shadow:0 34px 80px rgba(10,10,10,.26);
}
.executar__foto picture{position:absolute;inset:0;display:block}
.executar__foto img{
  width:100%;height:100%;object-fit:cover;object-position:center 34%;
  transform:scale(1.08) translate3d(0,var(--desl,0px),0);
  will-change:transform;
}
.executar__foto::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,rgba(10,10,10,.34),transparent 52%);
}
.executar__selo{
  position:absolute;left:22px;top:22px;z-index:2;
  display:inline-flex;align-items:center;gap:9px;
  padding:9px 16px;border-radius:999px;
  background:rgba(10,10,10,.5);backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.2);
  font-family:var(--font-display);font-weight:700;font-size:.72rem;
  letter-spacing:.13em;text-transform:uppercase;color:#fff;
}
.executar__selo::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c-accent)}

.executar__painel{
  position:relative;z-index:2;margin-left:-76px;
  background:#fff;border:1px solid var(--c-line);border-radius:24px;
  padding:clamp(28px,3.2vw,46px);
  box-shadow:0 30px 70px rgba(10,10,10,.16);
}
.executar__title{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(1.85rem,3.3vw,2.65rem);line-height:1.16;letter-spacing:-.015em;
  color:var(--c-dark);margin:16px 0 16px;
}
.executar__title em{
  font-style:normal;
  background:linear-gradient(90deg,var(--c-accent),var(--c-primary));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.executar__texto{font-size:1.04rem;line-height:1.78;color:var(--c-text-muted)}

/* Três transformações */
.transforma{margin-top:30px;border-top:1px solid var(--c-line)}
.transforma__item{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;
  padding:16px 2px;border-bottom:1px solid var(--c-line);
  opacity:0;transform:translateY(16px);
  transition:opacity .6s ease, transform .6s cubic-bezier(.2,.7,.2,1);
}
.executar__grid.is-in .transforma__item{opacity:1;transform:none}
.executar__grid.is-in .transforma__item:nth-child(1){transition-delay:.25s}
.executar__grid.is-in .transforma__item:nth-child(2){transition-delay:.42s}
.executar__grid.is-in .transforma__item:nth-child(3){transition-delay:.59s}
.transforma__de{font-size:.98rem;color:#9A897A}
.transforma__seta{
  position:relative;width:30px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#E6DACA,var(--c-accent));
}
.transforma__seta::after{
  content:"";position:absolute;right:0;top:50%;width:8px;height:8px;
  border-top:2px solid var(--c-accent);border-right:2px solid var(--c-accent);
  transform:translateY(-50%) rotate(45deg);
}
.transforma__para{
  font-family:var(--font-display);font-weight:700;font-size:1.02rem;
  color:var(--c-dark);text-align:right;
}

/* ==========================================================
   4. SECÇÃO 2 — VÍDEO DE APRESENTAÇÃO
   ========================================================== */
.video-intro{background:var(--c-dark);position:relative;overflow:hidden}
.video-intro .sec__title{color:#fff}
.video-intro .sec__lead{color:rgba(255,255,255,.78)}
.video-intro::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(760px 400px at 15% 0%, rgba(224,78,28,.16), transparent 62%),
    radial-gradient(640px 360px at 88% 100%, rgba(184,115,51,.15), transparent 62%);
}
.video-intro .wrap{position:relative;z-index:1}
.player{
  position:relative;margin-top:44px;aspect-ratio:16/9;width:100%;
  border-radius:clamp(16px,2vw,24px);overflow:hidden;background:#131313;
  box-shadow:0 34px 80px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.1);
}
.player img{width:100%;height:100%;object-fit:cover}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.player__veu{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,10,10,.28),rgba(10,10,10,.62));
  transition:background .3s ease;
}
.player:hover .player__veu{background:linear-gradient(180deg,rgba(10,10,10,.2),rgba(10,10,10,.54))}
.player__botao{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:none;border:none;cursor:pointer;color:#fff;
}
.player__botao:focus-visible{outline:3px solid var(--c-accent);outline-offset:-6px}
.player__circulo{
  width:clamp(66px,7vw,88px);aspect-ratio:1;border-radius:50%;
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  display:grid;place-items:center;
  box-shadow:0 14px 40px rgba(224,78,28,.5);
  transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.player__botao:hover .player__circulo{transform:scale(1.09)}
.player__circulo svg{width:34%;height:34%;fill:#fff;margin-left:9%}
/* Estado sem URL definido: visualmente neutro */
.player--vazio{background:linear-gradient(150deg,#161616,#241708 70%,#2E1E0D)}
.player--vazio .player__circulo{background:rgba(255,255,255,.12);box-shadow:none}
.player--vazio .player__botao{cursor:default}
.player__aviso{
  position:absolute;left:50%;bottom:26px;transform:translateX(-50%);
  font-family:var(--font-sans);font-size:.83rem;color:rgba(255,255,255,.62);
  border:1px dashed rgba(255,255,255,.28);border-radius:999px;padding:8px 18px;white-space:nowrap;
}

/* ==========================================================
   5. SECÇÃO 3 — COMO FUNCIONA (LINHA DO TEMPO)
   ========================================================== */
.percurso{background:var(--c-bg-alt)}
.linha__passos{list-style:none}
.linha{position:relative;margin-top:clamp(40px,4.5vw,60px);padding-left:78px;max-width:860px}
.linha__calha{
  position:absolute;left:25px;top:10px;bottom:10px;width:3px;
  background:#E6DACA;border-radius:3px;overflow:hidden;
}
.linha__progresso{
  position:absolute;left:0;top:0;width:100%;height:0;border-radius:3px;
  background:linear-gradient(180deg,var(--c-accent),var(--c-primary));
}
.etapa{position:relative;padding-bottom:clamp(30px,3.6vw,46px);opacity:.42;transition:opacity .55s ease}
.etapa:last-child{padding-bottom:0}
.etapa.is-on{opacity:1}
.etapa__num{
  position:absolute;left:-78px;top:-6px;width:52px;height:52px;border-radius:50%;
  background:#fff;border:2px solid #E6DACA;display:grid;place-items:center;
  font-family:var(--font-display);font-weight:800;font-size:1.02rem;color:#B6A695;
  transition:transform .45s cubic-bezier(.2,.7,.2,1), background .45s ease, color .45s ease, border-color .45s ease, box-shadow .45s ease;
}
.etapa.is-on .etapa__num{
  background:linear-gradient(135deg,var(--c-accent),var(--c-primary));
  border-color:transparent;color:#fff;transform:scale(1.07);
  box-shadow:0 10px 26px rgba(224,78,28,.34);
}
.etapa h3{
  font-family:var(--font-display);font-weight:800;font-size:clamp(1.12rem,1.9vw,1.4rem);
  color:var(--c-dark);margin-bottom:8px;
}
.etapa p{color:var(--c-text-muted);font-size:1.01rem;line-height:1.7;max-width:52ch}

/* ==========================================================
   6. SECÇÃO 4 — NOVE ÁREAS (CARTÕES COM FOTOGRAFIA)
   ========================================================== */
.areas{background:#fff}
.areas__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(38px,4vw,54px)}
.area{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:432px;border-radius:20px;background:#141414;
  display:flex;flex-direction:column;justify-content:flex-end;
  transition:transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease;
}
.area:hover{transform:translateY(-7px);box-shadow:0 28px 58px rgba(10,10,10,.28)}
.area:focus-within{transform:translateY(-7px);box-shadow:0 28px 58px rgba(10,10,10,.28)}
.area:focus-within{outline:3px solid var(--c-accent);outline-offset:3px}
.area picture{position:absolute;inset:0;display:block;z-index:-2}
.area img{
  width:100%;height:100%;object-fit:cover;object-position:center 26%;
  transform:scale(1.02);
  transition:transform .85s cubic-bezier(.2,.7,.2,1);
}
.area:hover img,.area:focus-within img{transform:scale(1.09)}
.area__veu{
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(10,10,10,.18) 0%,rgba(14,9,4,.58) 44%,rgba(8,6,4,.93) 100%);
  transition:background .5s ease;
}
.area:hover .area__veu,.area:focus-within .area__veu{
  background:linear-gradient(180deg,rgba(10,10,10,.3) 0%,rgba(38,20,8,.7) 44%,rgba(8,6,4,.96) 100%);
}
.area__corpo{padding:24px 22px 22px;color:#fff}
.area__icone{
  width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(6px);color:#fff;margin-bottom:14px;
  transition:background .4s ease, transform .4s cubic-bezier(.2,.7,.2,1);
}
.area:hover .area__icone,.area:focus-within .area__icone{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  border-color:transparent;transform:translateY(-2px);
}
.area__icone svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.area h3{
  font-family:var(--font-display);font-weight:800;font-size:1.16rem;color:#fff;
  margin-bottom:7px;text-shadow:0 2px 14px rgba(0,0,0,.5);
}
.area p{font-size:.93rem;line-height:1.6;color:rgba(255,255,255,.84);text-shadow:0 1px 10px rgba(0,0,0,.5)}
.area__comp{
  display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 18px;list-style:none;
  opacity:.82;transform:translateY(4px);
  transition:opacity .45s ease, transform .45s cubic-bezier(.2,.7,.2,1);
}
.area:hover .area__comp,.area:focus-within .area__comp{opacity:1;transform:none}
.area__comp li{
  font-size:.73rem;font-weight:600;padding:5px 10px;border-radius:999px;
  background:rgba(255,255,255,.13);color:#fff;border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(4px);
}
.area__btn{
  position:static;width:100%;padding:12px 18px;font-size:.88rem;border-radius:12px;
  background:rgba(255,255,255,.12);color:#fff;border:1.5px solid rgba(255,255,255,.35);
  backdrop-filter:blur(6px);
  font-family:var(--font-display);font-weight:700;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  transition:background .3s ease, border-color .3s ease, transform .3s ease;
}
/* O cartão inteiro é clicável através do botão */
.area__btn::after{content:"";position:absolute;inset:0;z-index:1}
.area:hover .area__btn,.area__btn:hover{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  border-color:transparent;
}
.area__btn:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
.area__btn .seta{transition:transform .25s ease}
.area:hover .area__btn .seta{transform:translateX(3px)}
.areas__nota{
  margin-top:26px;text-align:center;font-size:.83rem;color:#9A897A;
}

/* ==========================================================
   7. SECÇÃO 5 — DURAÇÃO FLEXÍVEL
   ========================================================== */
.duracao{background:var(--c-bg-alt)}
.dur__seletor{
  position:relative;display:inline-flex;gap:4px;padding:6px;margin-top:34px;
  background:#fff;border:1px solid var(--c-line);border-radius:999px;
  box-shadow:0 8px 24px rgba(10,10,10,.06);max-width:100%;
}
.dur__indicador{
  position:absolute;top:6px;bottom:6px;left:0;width:0;border-radius:999px;z-index:0;
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  box-shadow:0 8px 20px rgba(224,78,28,.32);
  transition:transform .45s cubic-bezier(.4,.9,.3,1), width .45s cubic-bezier(.4,.9,.3,1);
}
.dur__tab{
  position:relative;z-index:1;border:none;background:none;cursor:pointer;
  padding:12px clamp(18px,2.6vw,30px);border-radius:999px;white-space:nowrap;
  font-family:var(--font-display);font-weight:700;font-size:.95rem;color:#8A7869;
  transition:color .3s ease;
}
.dur__tab[aria-selected="true"]{color:#fff}
.dur__tab:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}

.dur__painel{margin-top:34px}
.dur__painel[hidden]{display:none}
.dur__painel.a-entrar{animation:painelEntra .5s cubic-bezier(.2,.7,.2,1)}
@keyframes painelEntra{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.dur__corpo{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(22px,3vw,40px);align-items:stretch;
}
.dur__horas{
  background:#fff;border:1px solid var(--c-line);border-radius:20px;padding:30px 28px;
  display:flex;flex-direction:column;justify-content:center;gap:22px;
}
.dur__hora{display:flex;align-items:baseline;gap:14px}
.dur__hora strong{
  font-family:var(--font-serif);font-weight:700;font-size:clamp(2rem,3.4vw,2.7rem);line-height:1;
  background:linear-gradient(90deg,var(--c-accent),var(--c-primary));
  -webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums;
}
.dur__hora span{font-size:.95rem;color:var(--c-text-muted);line-height:1.5}
.dur__hora + .dur__hora{padding-top:22px;border-top:1px solid var(--c-line)}
.dur__nota{margin-top:6px;font-size:.85rem;color:#9A897A}
.dur__conteudo{
  background:linear-gradient(160deg,#141414,#221607 70%,#2C1C0C);
  border-radius:20px;padding:30px 28px;color:#fff;
}
.dur__conteudo h3{
  font-family:var(--font-display);font-weight:800;font-size:1.06rem;
  color:var(--c-primary-light);letter-spacing:.01em;margin-bottom:16px;
}
.dur__conteudo ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.dur__conteudo li{
  position:relative;padding-left:28px;font-size:1rem;line-height:1.6;color:rgba(255,255,255,.88);
}
.dur__conteudo li::before{
  content:"";position:absolute;left:0;top:.48em;width:13px;height:8px;
  border-left:2px solid var(--c-accent);border-bottom:2px solid var(--c-accent);
  transform:rotate(-45deg);
}

/* ==========================================================
   8. SECÇÃO 6 — HORÁRIOS
   ========================================================== */
.horarios{background:#fff}
.horarios__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(38px,4vw,54px)}
.hor{
  position:relative;border-radius:22px;padding:clamp(26px,3vw,38px);overflow:hidden;
  border:1px solid var(--c-line);background:#fff;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease;
}
.hor:hover{transform:translateY(-5px);box-shadow:0 24px 52px rgba(10,10,10,.12)}
.hor--noite{
  background:linear-gradient(160deg,#141414,#231708 68%,#2E1D0C);
  border-color:transparent;color:#fff;
}
.hor--noite::after{
  content:"";position:absolute;width:280px;height:280px;right:-100px;bottom:-120px;border-radius:50%;
  background:radial-gradient(circle,rgba(224,78,28,.3),transparent 68%);pointer-events:none;
}
.hor--remoto{background:linear-gradient(160deg,#FFFDFA,#FBF3E8);border-color:#EFE0CC}
.hor--remoto::after{content:"";position:absolute;width:240px;height:240px;right:-90px;bottom:-110px;border-radius:50%;background:radial-gradient(circle,rgba(184,115,51,.18),transparent 68%);pointer-events:none}
.hor__tag{
  display:inline-block;font-family:var(--font-display);font-weight:700;font-size:.72rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent);
  padding:7px 14px;border-radius:999px;background:rgba(224,78,28,.1);
}
.hor--noite .hor__tag{color:var(--c-primary-light);background:rgba(212,149,107,.16)}
.hor h3{
  font-family:var(--font-serif);font-weight:700;font-size:clamp(1.35rem,2.3vw,1.8rem);
  margin:16px 0 6px;color:var(--c-dark);
}
.hor--noite h3{color:#fff}
.hor__relogio{
  display:flex;align-items:center;gap:12px;margin:18px 0 22px;
  font-family:var(--font-display);font-weight:800;font-size:clamp(1.5rem,2.7vw,2.1rem);
  color:var(--c-dark);position:relative;z-index:1;
}
.hor--noite .hor__relogio{color:#fff}
.hor__relogio svg{width:30px;height:30px;fill:none;stroke:var(--c-accent);stroke-width:1.7;stroke-linecap:round}
.hor__relogio small{font-family:var(--font-sans);font-weight:500;font-size:.9rem;color:var(--c-text-muted)}
.hor--noite .hor__relogio small{color:rgba(255,255,255,.62)}
.hor ul{list-style:none;display:flex;flex-direction:column;gap:10px;position:relative;z-index:1}
.hor li{position:relative;padding-left:24px;font-size:.99rem;line-height:1.62;color:var(--c-text-muted)}
.hor--noite li{color:rgba(255,255,255,.82)}
.hor li::before{
  content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;border-radius:50%;
  background:var(--c-accent);
}
/* Faixa dos dias da semana */
.semana{display:flex;gap:8px;margin:22px 0 4px;position:relative;z-index:1}
.dia{
  flex:1;min-width:0;aspect-ratio:1/1;max-width:52px;border-radius:12px;
  display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:.85rem;
  background:var(--c-bg-alt);color:#B4A393;border:1px solid var(--c-line);
  transition:transform .45s cubic-bezier(.2,.7,.2,1), background .45s ease, color .45s ease, border-color .45s ease;
}
.hor--noite .dia{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.4)}
.horarios__grid.is-in .dia--on{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  color:#fff;border-color:transparent;transform:translateY(-4px);
  box-shadow:0 8px 20px rgba(224,78,28,.34);
}
.dia--on{transition-delay:calc(var(--i,0) * 90ms)}

/* ==========================================================
   9. SECÇÃO 7 — PRÁTICA ACOMPANHADA (CINEMATOGRÁFICA)
   ========================================================== */
.pratica{position:relative;padding:0;background:var(--c-dark)}
.pratica__palco{
  position:relative;min-height:600px;display:flex;align-items:center;
  overflow:hidden;
}
.pratica__foto{position:absolute;inset:0;z-index:0}
.pratica__foto picture{position:absolute;inset:0;display:block}
.pratica__foto img{
  width:100%;height:100%;object-fit:cover;object-position:center 32%;
  transform:scale(1.06) translate3d(0,var(--desl,0px),0);
  will-change:transform;
}
.pratica__veu{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(8,6,4,.92) 0%,rgba(12,8,4,.72) 46%,rgba(10,10,10,.42) 100%),
    linear-gradient(180deg,rgba(10,10,10,.42) 0%,rgba(10,10,10,.2) 40%,rgba(8,6,4,.78) 100%);
}
.pratica__interior{
  position:relative;z-index:2;width:100%;
  display:grid;grid-template-columns:1fr .92fr;gap:clamp(30px,4vw,64px);
  align-items:center;padding:clamp(70px,7vw,104px) 0;
}
.pratica__titulo{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(1.85rem,3.5vw,2.85rem);line-height:1.18;letter-spacing:-.015em;
  color:#fff;margin:16px 0 18px;max-width:17ch;
  text-shadow:0 2px 24px rgba(0,0,0,.55);
}
.pratica__lead{
  font-size:1.05rem;line-height:1.75;color:rgba(255,255,255,.86);max-width:46ch;
  text-shadow:0 1px 14px rgba(0,0,0,.55);
}
.pratica__painel{
  background:rgba(14,10,6,.58);backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.16);border-radius:22px;
  padding:clamp(24px,2.6vw,34px);
  box-shadow:0 30px 70px rgba(0,0,0,.4);
}
.pratica__painel h3{
  font-family:var(--font-display);font-weight:700;font-size:.74rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--c-primary-light);
  margin-bottom:18px;
}
.elementos{list-style:none;display:flex;flex-direction:column}
.elementos li{
  display:flex;align-items:flex-start;gap:14px;
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12);
  opacity:0;transform:translateY(14px);
  transition:opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1);
}
.elementos li:last-child{border-bottom:none;padding-bottom:0}
.pratica__painel.is-in .elementos li{opacity:1;transform:none}
.pratica__painel.is-in .elementos li:nth-child(1){transition-delay:.1s}
.pratica__painel.is-in .elementos li:nth-child(2){transition-delay:.19s}
.pratica__painel.is-in .elementos li:nth-child(3){transition-delay:.28s}
.pratica__painel.is-in .elementos li:nth-child(4){transition-delay:.37s}
.pratica__painel.is-in .elementos li:nth-child(5){transition-delay:.46s}
.pratica__painel.is-in .elementos li:nth-child(6){transition-delay:.55s}
.elementos__num{
  flex:0 0 auto;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;
  background:linear-gradient(135deg,rgba(224,78,28,.9),rgba(184,115,51,.85));
  font-family:var(--font-display);font-weight:800;font-size:.8rem;color:#fff;
}
.elementos p{font-size:.98rem;line-height:1.55;color:rgba(255,255,255,.92);padding-top:4px}

/* ==========================================================
   10. SECÇÃO 8 — GALERIA DE VÍDEOS
   ========================================================== */
.galeria{background:#fff}
.galeria__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(38px,4vw,54px)}
.vcard{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);
  border-radius:18px;overflow:hidden;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease, border-color .4s ease;
}
.vcard:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(10,10,10,.13);border-color:transparent}
.vcard__media{position:relative;aspect-ratio:16/9;background:linear-gradient(150deg,#1A1A1A,#291A0B 70%,#33210E);overflow:hidden}
.vcard__media img{width:100%;height:100%;object-fit:cover}
.vcard__media iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vcard__play{
  position:absolute;inset:0;display:grid;place-items:center;background:none;border:none;cursor:pointer;
}
.vcard__play:focus-visible{outline:3px solid var(--c-accent);outline-offset:-5px}
.vcard__play span{
  width:54px;height:54px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(3px);
  transition:transform .3s cubic-bezier(.2,.7,.2,1), background .3s ease;
}
.vcard:hover .vcard__play span{transform:scale(1.08);background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));border-color:transparent}
.vcard__play svg{width:18px;height:18px;fill:#fff;margin-left:3px}
.vcard__marca{
  position:absolute;left:14px;top:14px;font-size:.72rem;font-weight:600;
  padding:6px 12px;border-radius:999px;background:rgba(10,10,10,.6);color:rgba(255,255,255,.82);
  border:1px dashed rgba(255,255,255,.28);
}
.vcard__corpo{padding:20px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.vcard__cat{
  font-family:var(--font-display);font-weight:700;font-size:.71rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--c-accent);
}
.vcard h3{font-family:var(--font-display);font-weight:700;font-size:1.03rem;color:var(--c-dark);line-height:1.4}
.vcard__dur{margin-top:auto;font-size:.85rem;color:#9A897A}

/* ==========================================================
   11. SECÇÃO 9 — CREDIBILIDADE
   ========================================================== */
.credibilidade{background:var(--c-bg-alt)}
.cred__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,64px);align-items:center}
.cred__foto{
  position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;
  box-shadow:0 30px 70px rgba(10,10,10,.2);
}
.cred__foto img{width:100%;height:100%;object-fit:cover}
.cred__lista{list-style:none;margin-top:30px;display:flex;flex-direction:column;gap:18px}
.cred__lista li{display:flex;gap:16px;align-items:flex-start}
.cred__ico{
  flex:0 0 auto;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;
  background:#fff;border:1px solid var(--c-line);color:var(--c-accent);
}
.cred__ico svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cred__lista h3{font-family:var(--font-display);font-weight:800;font-size:1.02rem;color:var(--c-dark);margin-bottom:4px}
.cred__lista p{font-size:.95rem;line-height:1.65;color:var(--c-text-muted)}
.parceiros{margin-top:clamp(42px,4.5vw,64px)}
.parceiros__titulo{
  font-family:var(--font-display);font-weight:700;font-size:.74rem;letter-spacing:.16em;
  text-transform:uppercase;color:#9A897A;text-align:center;
}
.parceiros__slots{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px;
}
.parceiro-slot{
  height:84px;border-radius:14px;border:1px dashed #DCCDB9;background:rgba(255,255,255,.55);
  display:grid;place-items:center;font-size:.82rem;color:#A99686;text-align:center;padding:10px;
}
.parceiros__nota{margin-top:16px;text-align:center;font-size:.87rem;color:#9A897A}

/* ==========================================================
   12. SECÇÃO 10 — ARTIGOS
   ========================================================== */
.blogue{background:#fff}
.blogue__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(38px,4vw,54px)}
.artigo{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);
  border-radius:18px;overflow:hidden;text-decoration:none;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s ease, border-color .4s ease;
}
.artigo:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(10,10,10,.13);border-color:transparent}
.artigo:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}
.artigo__capa{
  aspect-ratio:16/10;position:relative;overflow:hidden;
  display:grid;place-items:center;
}
.artigo__capa img{width:100%;height:100%;object-fit:cover}
.artigo--a .artigo__capa{background:linear-gradient(150deg,#1C1208,#3A2410 55%,#5A3717)}
.artigo--b .artigo__capa{background:linear-gradient(150deg,#141414,#2A1B0C 60%,#46290F)}
.artigo--c .artigo__capa{background:linear-gradient(150deg,#22160A,#4A2C11 60%,#7A4416)}
.artigo__glifo{
  font-family:var(--font-serif);font-weight:700;font-size:3.4rem;color:rgba(255,255,255,.18);
  transition:transform .5s cubic-bezier(.2,.7,.2,1), color .4s ease;
}
.artigo:hover .artigo__glifo{transform:scale(1.1);color:rgba(224,78,28,.5)}
.artigo__corpo{padding:22px 22px 24px;display:flex;flex-direction:column;gap:9px;flex:1}
.artigo__cat{
  font-family:var(--font-display);font-weight:700;font-size:.71rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--c-accent);
}
.artigo h3{font-family:var(--font-display);font-weight:800;font-size:1.06rem;line-height:1.42;color:var(--c-dark)}
.artigo p{font-size:.94rem;line-height:1.65;color:var(--c-text-muted)}
.artigo__ler{
  margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-display);font-weight:700;font-size:.9rem;color:var(--c-primary);
}
.artigo__ler .seta{transition:transform .25s ease}
.artigo:hover .artigo__ler .seta{transform:translateX(4px)}

/* ==========================================================
   13. SECÇÃO 11 — PERGUNTAS FREQUENTES
   ========================================================== */
.faq{background:var(--c-bg-alt)}
.faq__lista{max-width:880px;margin:clamp(34px,4vw,50px) auto 0;display:flex;flex-direction:column;gap:12px}
.faq__item{background:#fff;border:1px solid var(--c-line);border-radius:16px;overflow:hidden;transition:border-color .3s ease, box-shadow .3s ease}
.faq__item.is-open{border-color:rgba(224,78,28,.34);box-shadow:0 14px 34px rgba(10,10,10,.08)}
.faq__botao{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:20px 22px;background:none;border:none;cursor:pointer;text-align:left;
  font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--c-dark);
  transition:color .25s ease;
}
.faq__botao:hover{color:var(--c-accent)}
.faq__botao:focus-visible{outline:3px solid var(--c-accent);outline-offset:-3px;border-radius:16px}
.faq__mais{
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  background:var(--c-bg-alt);position:relative;transition:background .3s ease, transform .35s cubic-bezier(.2,.7,.2,1);
}
.faq__item.is-open .faq__mais{background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));transform:rotate(135deg)}
.faq__mais::before,.faq__mais::after{
  content:"";position:absolute;background:var(--c-text);border-radius:2px;transition:background .3s ease;
}
.faq__mais::before{width:12px;height:2px}
.faq__mais::after{width:2px;height:12px}
.faq__item.is-open .faq__mais::before,.faq__item.is-open .faq__mais::after{background:#fff}
.faq__resposta{overflow:hidden;height:0;transition:height .38s cubic-bezier(.2,.7,.2,1)}
.faq__resposta p{padding:0 22px 22px;font-size:1rem;line-height:1.72;color:var(--c-text-muted);max-width:70ch}

/* ==========================================================
   14. SECÇÃO 12 — PRÉ-CANDIDATURA
   ========================================================== */
.candidatura{background:#fff}
.form-bloco{
  display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,4vw,56px);
  align-items:start;margin-top:clamp(34px,4vw,48px);
}
.form-info{
  background:linear-gradient(158deg,#141414,#231708 66%,#301F0D);color:#fff;
  border-radius:22px;padding:clamp(28px,3vw,38px);position:relative;overflow:hidden;
}
.form-info::after{
  content:"";position:absolute;width:280px;height:280px;left:-110px;bottom:-120px;border-radius:50%;
  background:radial-gradient(circle,rgba(224,78,28,.28),transparent 68%);pointer-events:none;
}
.form-info h3{font-family:var(--font-serif);font-weight:700;font-size:1.5rem;line-height:1.3;margin-bottom:14px;position:relative;z-index:1}
.form-info p{color:rgba(255,255,255,.72);font-size:.98rem;line-height:1.7;position:relative;z-index:1}
.form-info ul{list-style:none;margin-top:22px;display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}
.form-info li{position:relative;padding-left:28px;font-size:.96rem;color:rgba(255,255,255,.84);line-height:1.55}
.form-info li::before{
  content:"";position:absolute;left:0;top:.42em;width:13px;height:8px;
  border-left:2px solid var(--c-accent);border-bottom:2px solid var(--c-accent);transform:rotate(-45deg);
}
.form-card{background:#fff;border:1px solid var(--c-line);border-radius:22px;padding:clamp(24px,3vw,36px);box-shadow:0 18px 44px rgba(10,10,10,.07)}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.campo{display:flex;flex-direction:column;gap:7px}
.campo--largo{grid-column:1 / -1}
.campo label{font-family:var(--font-display);font-weight:700;font-size:.85rem;color:var(--c-text)}
.campo label .opc{font-weight:500;color:#A99686}
.campo input,.campo select,.campo textarea{
  font-family:var(--font-sans);font-size:.98rem;color:var(--c-text);
  padding:13px 15px;border:1.5px solid var(--c-line);border-radius:12px;background:#fff;
  transition:border-color .25s ease, box-shadow .25s ease, background .25s ease;width:100%;
}
.campo select{cursor:pointer;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8A7869 50%),linear-gradient(135deg,#8A7869 50%,transparent 50%);background-position:calc(100% - 20px) calc(50% + 2px),calc(100% - 14px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:42px}
.campo input:hover,.campo select:hover{border-color:#DCCDB9}
.campo input:focus,.campo select:focus,.campo textarea:focus{
  outline:none;border-color:var(--c-accent);box-shadow:0 0 0 4px rgba(224,78,28,.12);
}
.campo input::placeholder{color:#B4A393}
.consentimento{
  grid-column:1 / -1;display:flex;gap:12px;align-items:flex-start;
  background:var(--c-bg-alt);border:1px solid var(--c-line);border-radius:14px;padding:16px;
}
.consentimento input{width:20px;height:20px;flex:0 0 auto;margin-top:2px;accent-color:var(--c-accent);cursor:pointer}
.consentimento label{font-size:.9rem;line-height:1.6;color:var(--c-text-muted);font-weight:500;font-family:var(--font-sans)}
.consentimento a{color:var(--c-primary);font-weight:600;text-decoration:underline}
.form-card__acoes{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px}
.form-aviso{
  margin-top:18px;border-radius:14px;padding:16px 18px;font-size:.93rem;line-height:1.6;
  background:rgba(224,78,28,.07);border:1px solid rgba(224,78,28,.25);color:#8A4020;
  opacity:0;transform:translateY(10px);transition:opacity .4s ease, transform .4s ease;
}
.form-aviso[hidden]{display:none}
.form-aviso.is-on{opacity:1;transform:none}
.form-aviso a{color:var(--c-accent);font-weight:700}

/* ==========================================================
   15. SECÇÃO 13 — CHAMADA FINAL
   ========================================================== */
.final{
  position:relative;overflow:hidden;text-align:center;
  background:linear-gradient(158deg,#0A0A0A 0%,#1F1408 58%,#301E0C 100%);color:#fff;
  padding:clamp(72px,8vw,120px) 0;
}
.final::before,.final::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.final::before{
  width:560px;height:560px;left:-180px;top:-220px;
  background:radial-gradient(circle,rgba(224,78,28,.24),transparent 66%);
  animation:flutuar 16s ease-in-out infinite alternate;
}
.final::after{
  width:520px;height:520px;right:-170px;bottom:-200px;
  background:radial-gradient(circle,rgba(184,115,51,.22),transparent 66%);
  animation:flutuar 19s ease-in-out infinite alternate-reverse;
}
@keyframes flutuar{from{transform:translate3d(0,0,0)}to{transform:translate3d(26px,-22px,0)}}
.final .wrap{position:relative;z-index:1}
.final__title{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.16;letter-spacing:-.015em;
  max-width:19ch;margin:18px auto 0;
}
.final__lead{margin:18px auto 0;max-width:54ch;font-size:1.05rem;line-height:1.7;color:rgba(255,255,255,.76)}
.final .acoes{justify-content:center}

/* ==========================================================
   16. SECÇÃO 14 — RODAPÉ
   ========================================================== */
.rodape{background:#070707;color:rgba(255,255,255,.66);padding:clamp(52px,6vw,80px) 0 0;scroll-margin-top:calc(var(--header-h) + 8px)}
.rodape__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:clamp(26px,3.4vw,48px)}
.rodape__marca{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.rodape__marca .brand__mark{box-shadow:none}
.rodape__nome{font-family:var(--font-display);font-weight:800;color:#fff;font-size:1.04rem;line-height:1.2}
.rodape__nome small{display:block;font-weight:500;font-size:.7rem;color:rgba(255,255,255,.5);margin-top:3px}
.rodape__resumo{font-size:.94rem;line-height:1.75;max-width:40ch}
.rodape h3{
  font-family:var(--font-display);font-weight:700;font-size:.76rem;letter-spacing:.15em;
  text-transform:uppercase;color:#fff;margin-bottom:16px;
}
.rodape ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.rodape a{color:rgba(255,255,255,.66);text-decoration:none;font-size:.94rem;transition:color .22s ease}
.rodape a:hover,.rodape a:focus-visible{color:var(--c-primary-light)}
.rodape__contacto{display:flex;gap:11px;align-items:flex-start;font-size:.94rem;line-height:1.6;overflow-wrap:anywhere}
.rodape__contacto svg{flex:0 0 auto;width:17px;height:17px;margin-top:3px;fill:none;stroke:var(--c-primary-light);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rodape__wa{
  display:inline-flex;align-items:center;gap:9px;margin-top:18px;
  background:var(--verde-wa);color:#fff;padding:12px 20px;border-radius:999px;
  font-family:var(--font-display);font-weight:700;font-size:.89rem;text-decoration:none;
  transition:transform .22s ease, box-shadow .22s ease;
}
.rodape__wa:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,211,102,.35);color:#fff}
.rodape__wa svg{width:17px;height:17px;fill:#fff;stroke:none}
.rodape__base{
  margin-top:clamp(38px,4.5vw,58px);border-top:1px solid rgba(255,255,255,.1);
  padding:22px 0 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-size:.86rem;color:rgba(255,255,255,.44);
}
.rodape__legais{display:flex;gap:20px;flex-wrap:wrap}

/* ==========================================================
   17. RESPONSIVIDADE DAS NOVAS SECÇÕES
   ========================================================== */
@media (max-width:1100px){
  .problema__grid{grid-template-columns:1fr;gap:38px}
  .cred__grid{grid-template-columns:1fr;gap:34px}
  .form-bloco{grid-template-columns:1fr}
  .rodape__grid{grid-template-columns:1.4fr 1fr 1.2fr;row-gap:36px}
  .areas__grid,.galeria__grid,.blogue__grid{grid-template-columns:repeat(2,1fr)}
  .bento{grid-template-columns:repeat(2,1fr)}
  .bento__item--destaque{grid-column:span 2;grid-row:auto}
  .bento__item--alto{grid-row:auto}
}
@media (max-width:820px){
  .wrap{width:calc(100% - 40px)}
  .dur__corpo{grid-template-columns:1fr}
  .horarios__grid{grid-template-columns:1fr}
  .parceiros__slots{grid-template-columns:repeat(2,1fr)}
  .campos{grid-template-columns:1fr}
  .linha{padding-left:62px}
  .linha__calha{left:20px}
  .etapa__num{left:-62px;width:42px;height:42px;font-size:.92rem}
}
@media (max-width:680px){
  .wrap{width:calc(100% - 36px)}
  .sec{padding:56px 0}
  .areas__grid,.galeria__grid,.blogue__grid,.bento{grid-template-columns:1fr}
  .bento__item--largo,.bento__item--destaque{grid-column:auto}
  .rodape__grid{grid-template-columns:1fr;row-gap:32px}
  .rodape__base{flex-direction:column;align-items:flex-start;text-align:left}
  .transicao{gap:12px}
  .transicao__linha{min-width:34px}
  .dur__seletor{width:100%;justify-content:space-between}
  .dur__tab{flex:1;padding:12px 8px;font-size:.88rem}
  .form-card__acoes .btn,.acoes .btn{width:100%}
  .final .acoes .btn{width:100%}
  .troca-linha{grid-template-columns:1fr auto;row-gap:2px}
  .troca-linha__para{grid-column:1 / -1;text-align:left}
  .semana{gap:6px}
  .dia{max-width:none;border-radius:10px;font-size:.78rem}
  .cred__foto{aspect-ratio:3/2}
}
@media (max-width:360px){
  .wrap{width:calc(100% - 28px)}
  .sec__title,.problema__title{font-size:1.6rem}
  .dur__tab{font-size:.8rem;padding:11px 4px}
}

/* ==========================================================
   18. MOVIMENTO REDUZIDO (NOVAS SECÇÕES)
   ========================================================== */
@media (prefers-reduced-motion: reduce){
  .final::before,.final::after{animation:none}
  .dur__painel.a-entrar{animation:none}
  .problema__title .risco::after,.transicao__linha{transform:scaleX(1);transition:none}
  .chip--depois,.troca-linha{opacity:1;transform:none;transition:none}
  .etapa{opacity:1}
  .faq__resposta{transition:none}
  .area,.vcard,.artigo,.hor{transition:none}
}

/* Estados dos campos do formulário */
.campo input.is-erro,.campo select.is-erro{border-color:#D9453A;box-shadow:0 0 0 4px rgba(217,69,58,.12)}
.campo select.is-escolhido{border-color:var(--c-accent);box-shadow:0 0 0 4px rgba(224,78,28,.18)}

/* Botão inativo enquanto o conteúdo não estiver definido */
.btn[aria-disabled="true"]{opacity:.45;cursor:default;pointer-events:auto}
.btn[aria-disabled="true"]:hover{transform:none;box-shadow:none;border-color:var(--c-line);color:var(--c-text)}

/* Ecrãs muito estreitos: a designação secundária sai para o cabeçalho não comprimir */
@media (max-width:400px){
  .brand__sub{display:none}
  .brand__name{font-size:1rem}
}


/* ==========================================================
   19. RESPONSIVIDADE DAS SECÇÕES REDESENHADAS
   ========================================================== */
@media (max-width:1100px){
  .executar__grid{grid-template-columns:1fr}
  .executar__painel{margin-left:0;margin-top:-56px;width:calc(100% - 32px);margin-inline:auto}
  .executar__foto{aspect-ratio:16/10}
  .pratica__interior{grid-template-columns:1fr;gap:34px}
  .pratica__palco{min-height:0}
  .pratica__painel{max-width:620px}
}
@media (max-width:900px){
  .area{min-height:400px}
}
@media (max-width:680px){
  /* Telemóvel: fotografia primeiro, conteúdo depois */
  .executar__foto{aspect-ratio:4/3;border-radius:18px}
  .executar__painel{
    margin-top:-40px;width:calc(100% - 24px);border-radius:18px;padding:26px 22px;
  }
  .transforma__item{grid-template-columns:auto 1fr;row-gap:2px;padding:14px 2px}
  .transforma__de{grid-column:2}
  .transforma__seta{transform:rotate(90deg);width:20px}
  .transforma__para{grid-column:2;text-align:left}

  .area{min-height:370px}
  .area__corpo{padding:22px 20px 20px}
  .area__comp{opacity:1;transform:none}
  .area__btn{padding:14px 18px;min-height:50px}

  /* A secção da prática deixa de ter texto sobre a fotografia */
  .pratica__palco{display:block;min-height:0}
  .pratica__foto{position:relative;inset:auto;height:auto}
  .pratica__foto picture{position:relative;inset:auto}
  .pratica__foto img{
    position:relative;height:auto;aspect-ratio:4/3;transform:none;
  }
  .pratica__veu{display:none}
  .pratica__interior{padding:30px 0 56px;gap:26px}
  .pratica__titulo{max-width:none;font-size:1.65rem}
  .pratica__lead{font-size:1rem}
  .pratica__painel{
    background:rgba(255,255,255,.06);backdrop-filter:none;
    padding:22px 20px;border-radius:18px;max-width:none;
  }
  .elementos li{padding:12px 0}
  .elementos p{font-size:.95rem}
}
@media (max-width:360px){
  .area{min-height:340px}
  .executar__title{font-size:1.55rem}
  .pratica__titulo{font-size:1.45rem}
}

/* ==========================================================
   20. MOVIMENTO REDUZIDO (SECÇÕES REDESENHADAS)
   ========================================================== */
@media (prefers-reduced-motion: reduce){
  .executar__foto img,.pratica__foto img{transform:none !important;transition:none}
  .area img{transition:none}
  .area:hover img,.area:focus-within img{transform:scale(1.02)}
  .transforma__item,.elementos li{opacity:1;transform:none;transition:none}
  .area,.area__veu,.area__comp,.area__icone,.area__btn{transition:none}
  .area:hover,.area:focus-within{transform:none}
}

/* ==========================================================
   21. WORDPRESS: BLOGUE, PÁGINAS E AJUSTES DO TEMA
   ========================================================== */
.screen-reader-text{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--c-accent);color:#fff;padding:12px 20px;border-radius:0 0 10px 0;
  font-family:var(--font-display);font-weight:700;text-decoration:none;
}
.skip-link:focus{left:0}

.brand__logo{max-height:48px;width:auto;height:auto;display:block}
.header.is-scrolled .brand__logo{max-height:42px}

.wrap--estreito{width:min(760px,calc(100% - 48px))}

/* Cartões de horário: variante remota e estado */
.hor__indisponivel{
  margin-top:16px;font-size:.88rem;font-weight:600;color:var(--c-accent);
  position:relative;z-index:1;
}
.dur__frequencia{
  margin-top:26px;font-size:.96rem;color:var(--c-text-muted);max-width:62ch;
}
.form-nota{
  margin-top:16px;font-size:.88rem;line-height:1.6;color:#9A897A;
  border-left:3px solid var(--c-line);padding-left:14px;
}

/* Cartão de indicadores com número variável de colunas */
.stats-card[data-colunas="1"]{grid-template-columns:1fr}
.stats-card[data-colunas="2"]{grid-template-columns:repeat(2,1fr)}
.horarios__grid[data-colunas="1"]{grid-template-columns:1fr}
.horarios__grid[data-colunas="2"]{grid-template-columns:repeat(2,1fr)}
.horarios__grid[data-colunas="4"]{grid-template-columns:repeat(2,1fr)}

/* ---------- Topo do blogue ---------- */
.blogue-topo{background:var(--c-bg-alt);padding-top:calc(var(--header-h) + 56px)}
.blogue-lista{background:#fff}
.blogue__filtros{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  flex-wrap:wrap;margin-top:32px;
}
.blogue__cats{display:flex;gap:9px;flex-wrap:wrap}
.blogue__cat{
  font-family:var(--font-display);font-weight:600;font-size:.86rem;
  padding:9px 16px;border-radius:999px;text-decoration:none;
  background:#fff;border:1px solid var(--c-line);color:var(--c-text-muted);
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.blogue__cat:hover,.blogue__cat:focus-visible{border-color:var(--c-primary);color:var(--c-primary)}
.blogue__cat.is-active{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  color:#fff;border-color:transparent;
}
.pesquisa{display:flex;gap:8px}
.pesquisa input[type="search"]{
  font-family:var(--font-sans);font-size:.94rem;padding:11px 15px;
  border:1.5px solid var(--c-line);border-radius:12px;background:#fff;min-width:220px;
  transition:border-color .25s ease,box-shadow .25s ease;
}
.pesquisa input[type="search"]:focus{
  outline:none;border-color:var(--c-accent);box-shadow:0 0 0 4px rgba(224,78,28,.12);
}
.pesquisa__btn{
  font-family:var(--font-display);font-weight:700;font-size:.88rem;cursor:pointer;
  padding:11px 20px;border-radius:12px;border:none;color:#fff;
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  transition:transform .22s ease,box-shadow .22s ease;
}
.pesquisa__btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(224,78,28,.35)}
.pesquisa__btn:focus-visible{outline:3px solid var(--c-accent);outline-offset:3px}

.artigo__titulo{font-family:var(--font-display);font-weight:800;font-size:1.06rem;line-height:1.42;color:var(--c-dark)}
.artigo__meta{font-size:.82rem;color:#9A897A}

/* ---------- Estado sem artigos ---------- */
.sem-artigos{text-align:center;max-width:56ch;margin:0 auto;padding:40px 0}
.sem-artigos h2{font-family:var(--font-serif);font-weight:700;font-size:clamp(1.5rem,2.6vw,2rem);color:var(--c-dark);margin-bottom:12px}
.sem-artigos p{color:var(--c-text-muted);line-height:1.75;margin-bottom:20px}
.sem-artigos .pesquisa{justify-content:center;margin:22px 0}

/* ---------- Artigo individual ---------- */
.artigo-unico__topo{background:var(--c-bg-alt);padding:calc(var(--header-h) + 50px) 0 40px;text-align:center}
.artigo-unico__topo .eyebrow{text-decoration:none}
.artigo-unico__titulo{
  font-family:var(--font-serif);font-weight:700;
  font-size:clamp(1.9rem,4vw,3rem);line-height:1.18;letter-spacing:-.015em;
  color:var(--c-dark);margin:16px 0 14px;
}
.artigo-unico__meta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:.9rem;color:#9A897A}
.artigo-unico__capa{background:var(--c-bg-alt);padding-bottom:10px}
.artigo-unico__capa img{width:100%;height:auto;border-radius:20px;box-shadow:0 24px 60px rgba(10,10,10,.18)}
.artigo-unico__corpo{padding:48px 0 10px;font-size:1.06rem;line-height:1.82;color:var(--c-text)}
.artigo-unico__corpo > * + *{margin-top:20px}
.artigo-unico__corpo h2{font-family:var(--font-serif);font-weight:700;font-size:1.7rem;color:var(--c-dark);margin-top:36px}
.artigo-unico__corpo h3{font-family:var(--font-display);font-weight:800;font-size:1.22rem;color:var(--c-dark);margin-top:30px}
.artigo-unico__corpo a{color:var(--c-accent);text-decoration:underline}
.artigo-unico__corpo img{max-width:100%;height:auto;border-radius:14px}
.artigo-unico__corpo ul,.artigo-unico__corpo ol{padding-left:22px}
.artigo-unico__corpo li{margin-bottom:8px}
.artigo-unico__corpo blockquote{
  border-left:3px solid var(--c-accent);padding:6px 0 6px 22px;
  font-family:var(--font-serif);font-size:1.18rem;color:var(--c-dark);
}
.artigo-unico__corpo figcaption{font-size:.85rem;color:#9A897A;margin-top:8px}

.partilha{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:36px 0 56px;padding-top:24px;border-top:1px solid var(--c-line)}
.partilha__titulo{font-family:var(--font-display);font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#9A897A}
.partilha__link{
  font-family:var(--font-display);font-weight:700;font-size:.86rem;text-decoration:none;
  padding:9px 18px;border-radius:999px;border:1px solid var(--c-line);color:var(--c-text-muted);
  transition:border-color .25s ease,color .25s ease,transform .22s ease;
}
.partilha__link:hover{border-color:var(--c-primary);color:var(--c-primary);transform:translateY(-2px)}
.partilha__link:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px}

.relacionados{background:var(--c-bg-alt)}
.pagina{padding-bottom:40px}
.erro404{padding-top:calc(var(--header-h) + 40px)}
.erro404__acoes{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* ---------- Paginação ---------- */
.navigation.pagination{margin-top:48px}
.nav-links{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.page-numbers{
  font-family:var(--font-display);font-weight:700;font-size:.92rem;text-decoration:none;
  min-width:44px;height:44px;padding:0 14px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--c-line);color:var(--c-text-muted);background:#fff;
  transition:border-color .25s ease,color .25s ease,background .25s ease;
}
.page-numbers:hover{border-color:var(--c-primary);color:var(--c-primary)}
.page-numbers:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px}
.page-numbers.current{
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent-dark));
  color:#fff;border-color:transparent;
}
.screen-reader-text + .nav-links{margin-top:0}

/* ---------- Barra de administração ---------- */
body.admin-bar .header{top:32px}
@media (max-width:782px){
  body.admin-bar .header{top:46px}
}

@media (max-width:900px){
  .horarios__grid[data-colunas="3"],.horarios__grid[data-colunas="4"]{grid-template-columns:1fr}
}
@media (max-width:680px){
  .blogue-topo{padding-top:calc(var(--header-h) + 34px)}
  .artigo-unico__topo{padding-top:calc(var(--header-h) + 30px)}
  .blogue__filtros{flex-direction:column;align-items:stretch}
  .pesquisa input[type="search"]{min-width:0;flex:1}
  .stats-card[data-colunas="1"],.stats-card[data-colunas="2"]{grid-template-columns:1fr}
}

/* Descrição opcional nos cartões de vídeo */
.vcard__texto{font-size:.92rem;line-height:1.6;color:var(--c-text-muted)}
