/* Fontes servidas da própria pasta (Montserrat variável 400–900 + Great Vibes da assinatura) */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 900;font-display:swap;src:url(fontes/montserrat-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400 900;font-display:swap;src:url(fontes/montserrat-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Great Vibes';font-style:normal;font-weight:400;font-display:swap;src:url(fontes/great-vibes-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ============================================================
   Black CAP Vitalícia — estilo compartilhado das páginas
   Preto + dourado. O verde é SÓ do botão (regra do briefing).
   Piso de texto (público de mais idade): corrido 17px,
   apoio 15px, rótulo em caixa alta 13px.
   ============================================================ */
:root{
  --preto:#000;
  --grafite:#17171a;
  --borda:#5a4520;            /* borda dourada apagada dos campos e cards */
  --ouro:#E5B139;             /* dourado da marca: texto e ícones */
  --ouro-esc:#A8781E;
  --grad-ouro:linear-gradient(180deg,#F8DD86 0%,#E5B139 48%,#B9862A 100%);
  --grad-faixa:linear-gradient(90deg,#B98A2E 0%,#F2CF72 45%,#E2AE3E 75%,#B8892E 100%);
  --verde:#128040;            /* branco sobre ele: 5,0:1 (AA) */
  --verde-hover:#0F6D36;
  --verde-sombra:#0A4F27;
  --texto:#fff;
  --texto-2:rgba(255,255,255,.86);
  --texto-3:rgba(255,255,255,.72);
  --raio:8px;
  --largura:1180px;
  --font:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --assinatura:'Great Vibes',cursive;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--preto);color:var(--texto);font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
[hidden]{display:none!important} /* obrigado: texto de aluna x geral (data-para) */
a{color:inherit}
strong,b{font-weight:800}
.ouro{color:var(--ouro)}
.wrap{width:100%;max-width:var(--largura);margin:0 auto;padding:0 20px}
.ico{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* ---------- barra do topo com contador ---------- */
.barra{position:sticky;top:0;z-index:50;background:#0c0c0c;border-bottom:1px solid var(--borda);padding:10px 16px}
.barra .wrap{display:flex;align-items:center;justify-content:center;gap:24px}
.barra-txt{color:var(--ouro);font-weight:700;font-size:14px;letter-spacing:.2em;text-transform:uppercase}
.contador{display:flex;gap:8px}
.contador > div{min-width:60px;padding:5px 6px 4px;border-radius:6px;background:var(--grad-ouro);color:#1b1200;text-align:center;line-height:1;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18)}
.contador b{display:block;font-size:24px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.contador small{display:block;margin-top:3px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
@media (max-width:640px){
  .barra{padding:8px 10px 10px}
  .barra .wrap{flex-direction:column;gap:6px}
  .barra-txt{font-size:13px;letter-spacing:.14em}
  .contador > div{min-width:58px}
  .contador b{font-size:22px}
}

/* ---------- hero (dobra com formulário) ---------- */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(ellipse 50% 65% at 76% 58%,rgba(150,105,20,.45),transparent 70%),
  radial-gradient(ellipse 40% 40% at 18% 8%,rgba(120,85,15,.2),transparent 70%),
  var(--preto)}
.hero-grid{display:grid;grid-template-columns:minmax(0,610px) minmax(0,1fr);grid-template-areas:"logo foto" "texto foto";grid-template-rows:auto 1fr;column-gap:48px;padding-top:44px}
.hero-logo{grid-area:logo}
.hero-texto{grid-area:texto;padding-bottom:52px}
.hero-foto{grid-area:foto;position:relative;align-self:end;justify-self:center;width:100%;max-width:600px}
/* a foto vem do mockup com fundo escuro: as bordas somem no gradiente do hero */
.hero-foto img,.quem-foto img{width:100%;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 82%,transparent 100%),linear-gradient(to right,transparent 0,#000 14%,#000 86%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 82%,transparent 100%),linear-gradient(to right,transparent 0,#000 14%,#000 86%,transparent 100%);
  mask-composite:intersect}
.quem-foto img{-webkit-mask-image:none;mask-image:none}
.logo{width:300px}
.logo img{width:100%;height:auto}

.antetitulo{color:var(--ouro);font-weight:800;font-size:15px;letter-spacing:.24em;text-transform:uppercase;margin:16px 0 14px}
.titulo-ouro{font-size:clamp(48px,6.4vw,84px);white-space:nowrap;font-weight:900;line-height:1;letter-spacing:-.01em;background:var(--grad-ouro);-webkit-background-clip:text;background-clip:text;color:transparent;text-transform:uppercase;padding-bottom:20px;margin-top:22px}
.linha{height:1px;border:0;background:linear-gradient(90deg,var(--ouro-esc),rgba(229,177,57,.12));margin:0 0 22px}
.subtitulo{font-size:clamp(22px,2.4vw,31px);font-weight:800;line-height:1.25;text-transform:uppercase;margin-bottom:18px}
.chamada{font-size:19px;font-weight:600;line-height:1.45;text-transform:uppercase;margin-bottom:22px}
.faixa-ouro{display:inline-block;background:var(--grad-faixa);color:#140d00;font-weight:800;font-size:19px;letter-spacing:.05em;text-transform:uppercase;padding:14px 24px;border-radius:2px;margin-bottom:22px}
.titulo-misto{font-size:clamp(34px,4.2vw,52px);font-weight:500;line-height:1.18;letter-spacing:-.01em;margin-bottom:24px}
.titulo-misto strong{color:var(--ouro);font-weight:800}
.titulo-caixa{font-size:clamp(28px,3.1vw,38px);font-weight:900;line-height:1.18;text-transform:uppercase;margin-bottom:18px}
.apoio{font-size:20px;font-weight:500;line-height:1.5;border-top:1px solid var(--borda);border-bottom:1px solid var(--borda);padding:18px 0;margin-bottom:22px}
.apoio strong{color:var(--ouro);font-weight:800}
/* Vitalício: logo com as datas ao lado, dois parágrafos de apoio entre linhas, botão dourado */
.topo-linha{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:610px}
.topo-linha .datas{margin:0}
.apoio-duplo{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--borda);border-bottom:1px solid var(--borda);padding:16px 0;margin-bottom:22px;font-size:18px;font-weight:500;line-height:1.45}
.apoio-duplo .forte{font-weight:800}
.infinito{display:inline-block;color:#fff;font-size:1.25em;line-height:0;vertical-align:-.06em}
.form.form-coluna{grid-template-columns:1fr}
.btn.btn-ouro{background:var(--grad-ouro);color:#1b1200;box-shadow:0 4px 0 #8a6418,0 10px 30px rgba(229,177,57,.22)}
.btn.btn-ouro:hover{background:var(--grad-ouro);filter:brightness(1.06)}
.btn.btn-ouro:active{box-shadow:0 2px 0 #8a6418}
.reforco{font-size:17px;font-weight:700;text-transform:uppercase;border-left:3px solid var(--ouro);padding-left:12px;margin-bottom:22px;color:var(--texto-2)}

/* ---------- formulário ---------- */
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:610px;scroll-margin-top:120px}
.form .campo-largo,.form .btn,.form .form-erro{grid-column:1/-1}
.form input{width:100%;height:60px;background:#050505;border:1px solid var(--borda);border-radius:var(--raio);color:#fff;font:500 17px var(--font);padding:0 18px;transition:border-color .15s,box-shadow .15s}
.form input::placeholder{color:rgba(255,255,255,.62)}
.form input:focus{outline:none;border-color:var(--ouro);box-shadow:0 0 0 3px rgba(229,177,57,.25)}
.form input[aria-invalid="true"]{border-color:#ff7a6b}
.form-erro{color:#ff9d90;font-size:15px;font-weight:600}
.form-erro:empty{display:none}

.btn{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:68px;padding:14px 22px;border:0;border-radius:var(--raio);background:var(--verde);box-shadow:0 4px 0 var(--verde-sombra),0 10px 30px rgba(18,128,64,.25);color:#fff;font:800 17px/1.25 var(--font);letter-spacing:.05em;text-transform:uppercase;text-align:center;text-decoration:none;cursor:pointer;transition:background .15s,transform .1s}
.btn:hover{background:var(--verde-hover)}
.btn:active{transform:translateY(2px);box-shadow:0 2px 0 var(--verde-sombra)}
.btn:focus-visible{outline:3px solid var(--ouro);outline-offset:3px}
.btn[disabled]{opacity:.7;cursor:wait}
.btn .ico-wa{width:30px;height:30px;fill:#fff;stroke:none}
.btn-estreito{max-width:610px}

.presente{display:flex;align-items:flex-start;gap:12px;margin-top:20px;color:var(--ouro);font-weight:800;font-size:15px;letter-spacing:.05em;text-transform:uppercase;line-height:1.4}
.presente .ico{width:26px;height:26px;margin-top:-3px}
.micro{margin-top:12px;color:var(--texto-3);font-size:15px;line-height:1.5}
/* data do evento: aulas 9 a 11/11, oferta na última noite */
.data-evento{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;margin:0 0 22px;padding:9px 16px;border:1px solid var(--borda);border-radius:var(--raio);background:rgba(229,177,57,.07);color:var(--texto-2);font-size:15px;font-weight:600;line-height:1.35;text-align:left}
.data-evento .ico{width:26px;height:26px;color:var(--ouro)}
.data-evento strong{color:#fff;font-weight:800}
.obrigado .data-evento,.insta .data-evento{margin-left:auto;margin-right:auto}
/* datas da Black em caixinhas douradas (como o contador): 09 · 10 · 11 NOV, "às 20 horas" embaixo */
.datas{display:flex;flex-direction:column;align-items:center;gap:5px;width:fit-content;margin:0 0 20px}
.datas-dias{display:flex;gap:8px}
.datas-dias > span{min-width:60px;padding:6px 8px 5px;border-radius:6px;background:var(--grad-ouro);color:#1b1200;text-align:center;line-height:1;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18)}
.datas b{display:block;font-size:26px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.datas small{display:block;margin-top:3px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.datas-hora{color:var(--ouro);font-size:17px;font-weight:800;line-height:1.2}
.insta .datas{margin-left:auto;margin-right:auto}
@media (max-width:900px){.hero .data-evento{margin-left:auto;margin-right:auto}}

/* selos sobre a foto */
.selos{position:absolute;left:0;right:0;bottom:22px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:0 10px}
.selo{background:rgba(0,0,0,.85);border:1.5px solid var(--ouro);border-radius:999px;padding:8px 18px;font-weight:800;font-size:15px;white-space:nowrap}

/* ---------- 3 pilares ---------- */
.pilares-faixa{background:#0b0b0b;border-top:1px solid #2a2418;padding:28px 0}
.pilares{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;list-style:none}
.pilar{display:flex;align-items:center;gap:18px;padding:22px 24px;border:1px solid var(--borda);border-radius:10px;background:linear-gradient(180deg,#121110,#080808);font-weight:800;font-size:17px;line-height:1.35;text-transform:uppercase}
.pilar span{color:var(--ouro)}
.pilar .ico{width:40px;height:40px;color:var(--ouro);stroke-width:1.4}

/* ---------- seções da longa ---------- */
.secao{padding:72px 0;border-top:1px solid #2a2418}
.secao-titulo{text-align:center;font-size:clamp(28px,3.4vw,40px);font-weight:900;text-transform:uppercase;line-height:1.15;margin-bottom:36px}
.secao-titulo span{color:var(--ouro)}

.combo{max-width:760px;margin:44px auto 0;border:1px solid var(--borda);border-radius:14px;background:linear-gradient(180deg,#14110b,#070707);padding:40px 44px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.combo-tag{display:inline-block;background:var(--grad-ouro);color:#1b1200;font-weight:800;font-size:15px;padding:6px 14px;border-radius:4px;margin-bottom:18px}
.combo h3{font-size:clamp(24px,3vw,34px);font-weight:900;line-height:1.2;text-transform:uppercase;margin-bottom:14px}
.combo h3 span{color:var(--ouro)}
.combo-intro{color:var(--texto-2);margin-bottom:18px}
.combo-lista{list-style:none;text-align:left;border-top:1px solid #2a2418}
.combo-lista li{display:flex;justify-content:space-between;gap:16px;padding:12px 4px;border-bottom:1px solid #2a2418}
.combo-lista li em{font-style:normal;color:var(--texto-3);white-space:nowrap}
.preco{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;padding:18px 4px;border-bottom:1px solid #2a2418;font-weight:800;font-size:18px}
.preco + .preco{border-bottom:0}
.preco .seta{color:#e5574b;margin-right:10px;font-size:14px}
.preco .seta.ouro{color:var(--ouro)}
.preco-de{color:var(--texto-3);text-decoration:line-through;text-decoration-thickness:2px;white-space:nowrap}
.preco-por{color:var(--ouro);font-size:30px;font-weight:900;white-space:nowrap}
.combo-cta{margin:22px auto 8px;max-width:440px;color:var(--texto-2)}
.combo-cta strong{color:var(--ouro)}
.combo-seta{color:var(--ouro);font-size:28px;line-height:1;margin-bottom:14px;animation:desce 1.4s ease-in-out infinite}
@keyframes desce{50%{transform:translateY(6px)}}
.combo .btn{max-width:460px;margin:0 auto}

.quem{background:var(--grafite);border-top:0}
.quem-grid{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:56px;align-items:center}
.quem-foto{border:1px solid var(--borda);border-radius:14px;overflow:hidden;background:#000}
.quem h2{font-size:clamp(28px,3.4vw,40px);font-weight:900;text-transform:uppercase;line-height:1.15;margin-bottom:22px}
.quem h2 span{color:var(--ouro)}
.quem p{color:var(--texto-2);margin-bottom:16px}
.quem p strong{color:var(--ouro);font-weight:700}
.quem .desafio{color:#fff;font-weight:800;font-size:20px;margin:6px 0 0}
.assinatura{font-family:var(--assinatura);font-weight:400;color:var(--ouro);font-size:56px;line-height:1.2;margin:2px 0 22px}
.numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;margin-bottom:28px}
.numeros li{border:1px solid var(--borda);border-radius:10px;padding:16px 8px;text-align:center;background:#0d0d0d}
.numeros b{display:block;color:var(--ouro);font-size:30px;font-weight:900;line-height:1.1}
.numeros small{display:block;margin-top:6px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2)}
.contador-final{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.contador-final .barra-txt{font-size:13px}
.contador-final .contador > div{min-width:54px}
.contador-final .contador b{font-size:20px}

/* ---------- obrigado ---------- */
.obrigado{min-height:calc(100vh - 160px);display:flex;align-items:center;padding:52px 0}
.obrigado .wrap{max-width:640px;text-align:center}
.obrigado .logo{margin:0 auto 26px;width:210px}
.passo{display:inline-block;color:var(--ouro);border:1px solid var(--ouro);border-radius:999px;padding:6px 16px;font-weight:800;font-size:14px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px}
.obrigado h1{font-size:clamp(30px,5vw,44px);font-weight:900;line-height:1.15;text-transform:uppercase;margin-bottom:16px}
.obrigado h1 span:last-child{color:var(--ouro)}
.obrigado .lede{font-size:19px;color:var(--texto-2);margin-bottom:28px}
.obrigado .btn{font-size:19px;min-height:76px}
.obrigado .presente{justify-content:center}
.progresso{height:10px;border-radius:99px;background:#222;overflow:hidden;margin:0 auto 26px;max-width:420px}
.progresso i{display:block;height:100%;width:90%;background:var(--grad-faixa)}
.redireciona{margin-top:14px;color:var(--ouro);font-size:15px;font-weight:600;min-height:1.5em}

/* ---------- rodapé ---------- */
.rodape{border-top:1px solid #1d1a14;padding:26px 0 30px;text-align:center;color:var(--texto-3);font-size:15px;line-height:1.7}
.rodape a{text-decoration:none}
.rodape a:hover{color:var(--ouro);text-decoration:underline}
.rodape p + p{margin-top:6px}

/* ---------- celular ---------- */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"logo" "texto" "foto";padding-top:24px;text-align:center}
  .logo{width:230px;margin:0 auto}
  .hero-foto{max-width:420px}
  .hero-texto{padding-bottom:40px}
  .titulo-ouro{margin-top:-6px;font-size:min(13vw,72px);padding-bottom:14px}
  .linha{background:linear-gradient(90deg,transparent,var(--ouro-esc),transparent)}
  .faixa-ouro{display:block;font-size:17px;padding:13px 14px}
  .form{grid-template-columns:1fr;margin:0 auto}
  .reforco{border-left:0;padding-left:0;border-top:2px solid var(--ouro);padding-top:12px;display:inline-block}
  .presente{justify-content:center;text-align:left}
  .selos{bottom:14px}
  .pilares{grid-template-columns:1fr;gap:14px}
  .quem-grid{grid-template-columns:1fr;gap:32px}
  .quem-foto{max-width:420px;margin:0 auto;width:100%}
  .combo{padding:30px 18px}
  .preco{font-size:17px}
  .preco-por{font-size:26px}
  .contador-final{justify-content:center;flex-direction:column;gap:8px}
  .secao{padding:56px 0}
}
@media (max-width:420px){
  .selo{font-size:14px;padding:7px 12px}
  .numeros b{font-size:24px}
  .numeros small{letter-spacing:.02em}
  .assinatura{font-size:48px}
}
/* ---------- insta: link enviado por palavra-chave no Instagram ----------
   A pessoa já pediu o link: a página é só logo, uma frase e o formulário.
   Nada de contador, passos ou texto extra. Centrada na tela, no celular
   e no desktop. */
.insta{min-height:calc(100vh - 60px);min-height:calc(100svh - 60px);display:flex;align-items:center;padding:28px 0;background:radial-gradient(ellipse 80% 45% at 50% 0%,rgba(150,105,20,.38),transparent 70%),var(--preto)}
.insta-wrap{width:100%;max-width:420px;margin:0 auto;padding:0 16px}
.insta .logo{width:150px;margin:0 auto 18px}
/* foto da Carine no topo, como faixa: overlay escuro por cima e o logo sobre ela */
.insta-topo{position:relative;margin:0 0 16px;border-radius:16px;overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom,#000 62%,transparent 100%);mask-image:linear-gradient(to bottom,#000 62%,transparent 100%)}
.insta-foto{width:100%;height:clamp(190px,30vh,260px);object-fit:cover;object-position:50% 14%}
.insta-topo::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.2) 0,rgba(0,0,0,.45) 55%,rgba(0,0,0,.8) 100%)}
.insta-topo .logo{position:absolute;z-index:1;left:50%;bottom:6px;transform:translateX(-50%);width:120px;margin:0}
.insta-titulo{font-size:22px;font-weight:800;line-height:1.3;text-align:center;margin-bottom:20px}
.insta-titulo span{color:var(--ouro)}
.insta .form{grid-template-columns:1fr;gap:12px}
.insta .btn{margin-top:4px}
.pg-insta .rodape{padding:16px 0 20px}
/* celular: a faixa da foto e os campos encolhem pra o botão caber até em 360x640 */
@media (max-width:640px){
  .insta{padding:12px 0 20px;align-items:flex-start}
  .insta-foto{height:clamp(150px,27vh,230px)}
  .insta-topo{margin-bottom:10px}
  .insta .logo{width:104px}
  .insta-titulo{font-size:20px;margin-bottom:12px}
  .insta .datas{margin-bottom:12px}
  .insta .form{gap:8px}
  .insta .form input{height:50px}
}

/* ---------- dobra única: Prepare-se e Vitalício ----------
   A página inteira (até o botão) cabe na primeira tela. No desktop o bloco
   ocupa a altura da janela, os tamanhos acompanham a altura (vh) e a foto
   fica centralizada na coluna. No celular: barra numa linha, logo e foto
   menores, a Carine no fundo do topo (atrás do logo e do título), sem os pilares.
   Medido em 1440x900, 1366x768, 390x844 e 375x667. */
.pg-dobra{--barra:69px}
.pg-dobra main{min-height:calc(100vh - var(--barra));min-height:calc(100svh - var(--barra));display:flex;flex-direction:column}
.pg-dobra .hero{flex:1;display:flex;align-items:center}
.pg-dobra .hero-grid{width:100%;grid-template-rows:auto auto;align-content:center;padding-top:clamp(12px,2vh,28px);padding-bottom:clamp(12px,2vh,28px)}
.pg-dobra .hero-texto{padding-bottom:0}
.pg-dobra .hero-foto{align-self:center;display:flex;justify-content:center}
.pg-dobra .hero-foto img{width:auto;max-width:100%;max-height:calc(100vh - var(--barra) - var(--pilares,0px) - 48px)}
.pg-dobra .logo{width:clamp(110px,15vh,200px)}
.pg-dobra .antetitulo{margin:clamp(6px,1.2vh,14px) 0 clamp(6px,1.2vh,12px)}
.pg-dobra .titulo-ouro{font-size:clamp(44px,7.4vh,76px);margin-top:clamp(8px,1.6vh,18px);padding-bottom:clamp(8px,1.6vh,16px)}
.pg-dobra .linha{margin-bottom:clamp(10px,1.8vh,18px)}
.pg-dobra .subtitulo{font-size:clamp(20px,2.8vh,26px);margin-bottom:clamp(8px,1.5vh,14px)}
.pg-dobra .chamada{font-size:17px;margin-bottom:clamp(10px,1.8vh,18px)}
.pg-dobra .faixa-ouro{font-size:17px;padding:clamp(8px,1.3vh,12px) 20px;margin-bottom:clamp(10px,1.8vh,18px)}
.pg-dobra .titulo-misto{font-size:clamp(30px,4.6vh,44px);margin-bottom:clamp(12px,2vh,20px)}
.pg-dobra .titulo-caixa{font-size:clamp(26px,4.4vh,38px);margin-bottom:clamp(10px,1.6vh,18px)}
.pg-dobra .reforco{margin-bottom:clamp(12px,2vh,22px)}
.pg-dobra .apoio{font-size:clamp(17px,2.3vh,20px);padding:clamp(10px,1.6vh,16px) 0;margin-bottom:clamp(12px,2vh,20px)}
.pg-dobra .form{gap:10px}
.pg-dobra .form input{height:clamp(48px,6.2vh,58px)}
.pg-dobra .btn{min-height:clamp(54px,7vh,66px)}
.pg-dobra .presente{margin-top:clamp(10px,1.8vh,16px)}
.pg-dobra .micro{margin-top:6px}
.pg-dobra .datas{margin-bottom:clamp(10px,1.8vh,18px)}
.pg-dobra .topo-linha .datas{margin-bottom:0}
.pg-dobra .apoio-duplo{padding:clamp(10px,1.6vh,16px) 0;margin-bottom:clamp(12px,2vh,20px)}
.pg-dobra .data-evento{margin-bottom:clamp(8px,1.4vh,14px);padding:clamp(6px,1vh,9px) 14px}
/* Carta (pg-curta): página longa, então o topo fica ~140px menor que a janela e a
   próxima seção aparece embaixo — sinal de que tem mais pra rolar. */
.pg-curta main{min-height:0;display:block}
.pg-curta .hero-foto img{max-height:calc(100vh - var(--barra) - 190px)}
.pg-curta .hero + .secao{padding-top:32px}
/* Prepare-se: os 3 pilares viram uma faixa baixa dentro da mesma dobra */
.pg-dobra.com-pilares{--pilares:76px}
.pg-dobra .pilares-faixa{padding:10px 0}
.pg-dobra .pilar{padding:10px 18px;gap:14px}
.pg-dobra .pilar .ico{width:30px;height:30px}
/* Notebook de tela baixa (1366x768 e afins): aperta o que sobra */
@media (min-width:901px) and (max-height:820px){
  .pg-dobra .logo{width:clamp(90px,12vh,120px)}
  .pg-dobra .chamada{margin-bottom:8px}
  .pg-dobra .faixa-ouro{padding:6px 18px;margin-bottom:10px}
  .pg-dobra.com-pilares{--pilares:62px}
  .pg-dobra .pilares-faixa{padding:6px 0}
  .pg-dobra .pilar{padding:7px 16px}
  .pg-curta .titulo-caixa{font-size:28px}
  .pg-curta .hero-grid{padding-top:10px;padding-bottom:10px}
}
@media (max-width:900px){
  /* barra: o texto numa linha só, centralizado, e o contador embaixo */
  .pg-dobra{--barra:68px}
  .pg-dobra .barra{padding:6px 12px 7px}
  .pg-dobra .barra .wrap{flex-direction:column;gap:4px}
  .pg-dobra .barra-txt{font-size:12px;letter-spacing:.14em;line-height:1.2;white-space:nowrap}
  .pg-dobra .contador{gap:5px}
  .pg-dobra .contador > div{min-width:44px;padding:4px 3px 3px}
  .pg-dobra .contador b{font-size:19px}
  .pg-dobra .contador small{font-size:10px}
  .pg-dobra .hero{align-items:flex-start}
  .pg-dobra .hero-grid{padding-top:6px;padding-bottom:14px}
  .pg-dobra .logo{width:96px}
  .pg-dobra .antetitulo{display:none} /* repete o logo; no celular a linha faz falta */
  .pg-dobra .hero-foto{margin-top:20px}
  .pg-dobra .hero-foto img{max-height:340px}
  .pg-dobra .titulo-ouro{font-size:min(11vw,42px);margin-top:6px;padding-bottom:6px}
  .pg-dobra .linha{margin-bottom:8px}
  .pg-dobra .subtitulo{font-size:17px;margin-bottom:6px}
  .pg-dobra .chamada{font-size:15px;line-height:1.35;margin-bottom:8px}
  .pg-dobra .faixa-ouro{font-size:13px;letter-spacing:0;padding:8px 4px;margin-bottom:10px;white-space:nowrap}
  .pg-dobra .titulo-misto{font-size:24px;margin-bottom:8px}
  .pg-dobra .titulo-caixa{font-size:24px;margin-bottom:8px}
  .pg-dobra .reforco{font-size:15px;margin-bottom:10px;padding-top:8px}
  .pg-dobra .apoio{font-size:17px;line-height:1.4;padding:6px 0;margin-bottom:10px}
  .pg-dobra .form{gap:8px}
  .pg-dobra .form input{height:48px}
  .pg-dobra .btn{min-height:54px;font-size:16px;letter-spacing:.02em;gap:10px;padding:10px 14px}
  .pg-dobra .presente{margin-top:10px}
  .pg-dobra .micro{margin-top:4px}
  .pg-dobra .pilares-faixa{display:none}
  .pg-dobra .datas{margin-bottom:10px;gap:3px}
  .pg-dobra .datas-dias > span{min-width:50px;padding:5px 6px 4px}
  .pg-dobra .datas b{font-size:21px}
  .pg-dobra .datas small{font-size:10px}
  .pg-dobra .datas-hora{font-size:15px}
  .pg-dobra .selos{bottom:6px;gap:8px}
  .pg-dobra .selo{font-size:14px;padding:3px 10px}
}
/* Dobra única no celular (Prepare-se e Vitalício, não a Carta): a Carine aparece em cima,
   cada página de um jeito, sem empurrar o formulário pra fora da dobra. Foto no fundo
   sempre com overlay. O topo fica enxuto: saem os selos (a Prepare-se mantém a copy inteira).
     .foto-fundo (Prepare-se): a Carine é o fundo do topo, atrás do logo e do título.
     .foto-topo (Vitalício): texto à esquerda; a Carine ocupa o fundo da parte de cima, à direita,
       na largura toda, com overlay preta esfumaçando. */
@media (max-width:900px){
  .pg-dobra:not(.pg-curta) .hero-grid{position:relative;text-align:left}
  .pg-dobra:not(.pg-curta) .logo{margin:4px 0 0}
  .pg-dobra:not(.pg-curta) .selos{display:none}
  .pg-dobra:not(.pg-curta) .hero .data-evento{margin-left:0;margin-right:0}
  .pg-dobra:not(.pg-curta) .presente{justify-content:flex-start}
  .pg-dobra:not(.pg-curta) .micro{text-align:left}

  .foto-fundo .hero-logo,.foto-fundo .hero-texto{position:relative;z-index:1}
  .foto-fundo .hero-foto{grid-area:auto;position:absolute;z-index:0;top:0;right:0;width:min(64%,300px);max-width:none;margin:0;display:block;pointer-events:none;
    -webkit-mask-image:linear-gradient(to bottom,#000 0,#000 34%,transparent 82%),linear-gradient(to right,transparent 0,#000 46%);
    -webkit-mask-composite:source-in;
    mask-image:linear-gradient(to bottom,#000 0,#000 34%,transparent 82%),linear-gradient(to right,transparent 0,#000 46%);
    mask-composite:intersect}
  .foto-fundo .hero-foto img{width:100%;max-height:none;-webkit-mask-image:none;mask-image:none}
  .foto-fundo .hero-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.18),rgba(0,0,0,.5))}
  .foto-fundo .hero-texto > :not(.form):not(.titulo-ouro):not(.datas){text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 18px rgba(0,0,0,.75)}
  .foto-fundo .faixa-ouro{white-space:normal} /* a copy do celular é a mesma do computador */

  .pg-dobra.foto-topo .hero-grid{text-align:left}
  .pg-dobra.foto-topo .hero .datas{margin-left:0;margin-right:0}
  .foto-topo .hero-logo,.foto-topo .hero-texto{position:relative;z-index:1}
  .foto-topo .logo{margin:4px 0 0;width:100px}
  .foto-topo .topo-linha{flex-direction:column;align-items:flex-start;gap:8px;margin:0 0 10px}
  /* foto puxada pra direita: o rosto da Carine fica ao lado do logo, não atrás dele */
  .foto-topo .hero-foto{grid-area:auto;position:absolute;z-index:0;top:-24px;left:auto;right:-20%;width:80%;max-width:none;height:auto;margin:0;display:block;pointer-events:none;
    -webkit-mask-image:linear-gradient(to bottom,#000 0,#000 50%,transparent 95%),linear-gradient(to right,transparent 0,#000 40%);-webkit-mask-composite:source-in;
    mask-image:linear-gradient(to bottom,#000 0,#000 50%,transparent 95%),linear-gradient(to right,transparent 0,#000 40%);mask-composite:intersect}
  .foto-topo .hero-foto img{width:100%;height:auto;max-height:none;-webkit-mask-image:none;mask-image:none}
  .foto-topo .hero-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.55),rgba(0,0,0,.1) 45%,transparent 70%),linear-gradient(to bottom,rgba(0,0,0,.1) 30%,rgba(0,0,0,.6))}
  .foto-topo .hero-texto > :not(.form){text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 18px rgba(0,0,0,.7)}
  .foto-topo .titulo-caixa{font-size:22px;line-height:1.2;margin-bottom:10px}
  .foto-topo .apoio-duplo{font-size:15px;gap:6px;padding:8px 0;margin-bottom:10px}
  .foto-topo .apoio{display:none}
}
/* Celular de tela baixa (navegador do Instagram no iPhone: ~664px visíveis) */
@media (max-width:900px) and (max-height:720px){
  /* as três frases da copy ficam sempre; quem encolhe é o logo, as datas e os campos */
  .foto-topo .logo{width:74px;margin-top:2px}
  .foto-topo .topo-linha{gap:5px;margin-bottom:6px}
  .foto-topo .datas{gap:2px}
  .foto-topo .datas-dias > span{min-width:44px;padding:4px 5px 3px}
  .foto-topo .datas b{font-size:18px}
  .foto-topo .datas-hora{font-size:14px}
  .foto-topo .titulo-caixa{font-size:19px;margin-bottom:6px}
  .foto-topo .apoio-duplo{gap:4px;padding:6px 0;margin-bottom:8px;line-height:1.35}
  .foto-topo .form input{height:44px}
  .foto-topo .btn{min-height:50px}
  /* Prepare-se: copy inteira com o botão na dobra */
  .foto-fundo .logo{width:74px;margin-top:2px}
  .foto-fundo .titulo-ouro{font-size:34px;margin-top:2px;padding-bottom:2px}
  .foto-fundo .chamada{font-size:14px;line-height:1.3}
  .foto-fundo .faixa-ouro{font-size:12px;padding:6px 4px}
  .foto-fundo .data-evento{font-size:14px;padding:5px 12px;margin-bottom:8px}
  .foto-fundo .data-evento .ico{width:20px;height:20px}
  .foto-fundo .form{gap:6px}
  .foto-fundo .form input{height:44px}
  .foto-fundo .btn{min-height:50px}
}
/* celular estreito e baixo (360x640): o título cabe em 3 linhas */
@media (max-width:380px) and (max-height:720px){
  .foto-topo .titulo-caixa{font-size:17.5px;letter-spacing:-.01em}
  .foto-topo .apoio-duplo{gap:3px;padding:5px 0;margin-bottom:6px}
  .foto-topo .form{gap:5px}
  .pg-dobra .logo{width:80px}
  .pg-dobra .titulo-ouro{font-size:min(10vw,36px);margin-top:4px;padding-bottom:4px}
  .pg-dobra .titulo-misto{font-size:22px;line-height:1.15;margin-bottom:6px}
  .pg-dobra .linha{margin-bottom:6px}
  .pg-dobra .subtitulo{margin-bottom:4px}
  .pg-dobra .chamada{margin-bottom:6px}
  .pg-dobra .faixa-ouro{padding:6px 4px;margin-bottom:8px}
  .pg-dobra .apoio{padding:4px 0;margin-bottom:8px}
  .pg-dobra .form{gap:6px}
  .pg-dobra .form input{height:46px}
  .pg-dobra .btn{min-height:52px}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.combo-seta{animation:none}}

/* ---------- Vitalício: contador vermelho (urgência) e data discreta antes do form ---------- */
.barra-urgente{background:#120202;border-bottom-color:#7d1515}
.barra-urgente .barra-txt{color:#fff}
.barra-urgente .contador > div{background:linear-gradient(180deg,#FF4D4D 0%,#E3191F 50%,#A50D12 100%);color:#fff;box-shadow:inset 0 -2px 0 rgba(0,0,0,.25),0 0 14px rgba(227,25,31,.4)}
.barra-urgente .contador > div:last-child{animation:urgencia 1s ease-in-out infinite}
@keyframes urgencia{50%{box-shadow:inset 0 -2px 0 rgba(0,0,0,.25),0 0 22px rgba(255,60,60,.85)}}
.data-info{display:flex;align-items:center;gap:8px;margin:0 0 clamp(10px,1.8vh,16px);color:var(--texto-2);font-size:15px;font-weight:500;line-height:1.35}
.data-info .ico{width:20px;height:20px;color:var(--ouro)}
.data-info strong{color:#fff;font-weight:700}
.foto-topo .btn .ico-wa{width:40px;height:40px}
@media (max-width:900px){
  .foto-topo .data-info{font-size:14px;margin-bottom:8px}
  .foto-topo .topo-linha{margin-bottom:6px}
}
@media (prefers-reduced-motion:reduce){.barra-urgente .contador > div:last-child{animation:none}}
