/* ============================================================================
   Salinas (R Dimer + Bloque, Torres/RS) , 02/11/2026.

   Desenho = o da LP do AVA (v2.css, "revelacao"), por pedido do dono: "base do AVA, so' mudamos
   a cor de acordo com o book". Cores do book: azul-marinho #132840 e areia #D9D5C4. Os marrons
   do AVA (inclusive os escritos direto em rgba/#hex) foram trocados um a um; um grep pelos
   valores antigos tem que voltar vazio.
   Este arquivo serve as 4 paginas (home embutido; obrigado, privacidade e 404 por <link>, com
   ?v=AAAAMMDD: subir a data a cada mudanca).
   ============================================================================ */


:root{
  --marinho:#132840;
  --marinho-2:#2C4468;
  --marinho-deep:#0B1A2C;
  --rio:#7E95A8;
  --areia:#D9D5C4;
  --creme:#F1EFE8;
  --branco:#FFFFFF;

  --ink:#101D2E;
  --muted:#55617A;
  --linha:rgba(19,40,64,.16);

  --serif:'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --sans:'Outfit', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;

  --raio:3px;
  --sombra:0 24px 60px rgba(7,16,28,.28);
  --lado:clamp(20px,5vw,72px);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{
  font-family:var(--sans);
  font-weight:300;
  color:var(--ink);
  background:var(--creme);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}

h1,h2{
  font-family:var(--serif);
  font-weight:400;
  line-height:1.04;
  letter-spacing:-.01em;
  margin:0;
}
h1 em,h2 em{font-style:italic}

.sobre{
  margin:0 0 14px;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--areia);
}
.sobre-escuro{color:var(--marinho-2)}

.miolo{max-width:1200px;margin:0 auto;padding:0 var(--lado)}
.miolo-centro{text-align:center}

.botao{
  display:inline-block;
  padding:15px 30px;
  font-size:14px;font-weight:400;letter-spacing:.06em;text-decoration:none;
  color:var(--marinho-deep);
  background:var(--areia);
  border-radius:100px;
  transition:background .2s ease, transform .12s ease;
}
.botao:hover{background:#E8E5DA}
.botao:active{transform:translateY(1px)}
.botao:focus-visible{outline:2px solid var(--branco);outline-offset:3px}
.botao-escuro{background:var(--marinho);color:var(--creme)}
.botao-escuro:hover{background:var(--marinho-2)}
.botao-escuro:focus-visible{outline-color:var(--marinho)}

/* ------------------------------------------------------------- 1. abertura */

.abre{
  position:relative;
  /* nao ocupa a tela inteira: com 100svh sobrava um vao de foto vazia acima do titulo
     (pedido do dono, 18/09/2026) e a galeria ja' aparece espiando no rodape da tela */
  min-height:clamp(540px,78svh,780px);
  display:flex;flex-direction:column;
  color:var(--branco);
  overflow:hidden;
  background:var(--marinho-deep);
}
.abre-foto{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;
  /* zoom lento de abertura: a foto "respira" enquanto a pessoa le o titulo */
  animation:respira 14s ease-out both;
}
@keyframes respira{from{transform:scale(1.08)}to{transform:scale(1)}}
.abre-veu{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg, rgba(7,16,28,.55) 0%, rgba(7,16,28,.18) 26%, rgba(7,16,28,.5) 48%, rgba(7,16,28,.9) 100%),
    linear-gradient(90deg, rgba(7,16,28,.5) 0%, rgba(7,16,28,0) 65%);
}
.abre-topo{
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:space-between;
  padding:clamp(18px,2.4vw,32px) var(--lado);
}
.marcas{display:flex;align-items:center;gap:clamp(10px,1.4vw,16px)}
.marca-rdimer{width:clamp(96px,9vw,132px);height:auto}
.marca-bloque{width:clamp(44px,4.2vw,62px);height:auto}
.marcas-mais{font-size:clamp(14px,1.3vw,18px);font-weight:300;color:rgba(255,255,255,.7)}
.selo{
  font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  padding:6px 12px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:100px;
}
.abre-texto{
  position:relative;z-index:1;
  margin-top:auto;
  max-width:1200px;width:100%;
  margin-left:auto;margin-right:auto;
  padding:clamp(24px,4vh,48px) var(--lado) clamp(32px,5vh,56px);
}
.abre h1{
  font-size:clamp(40px,7vw,92px);
  max-width:17ch;
  margin-bottom:18px;
  text-shadow:0 2px 26px rgba(7,16,28,.45);
}
.abre h1 em{color:var(--areia)}
.abre .sobre{text-shadow:0 1px 12px rgba(7,16,28,.7)}
.abre-sub{
  margin:0 0 28px;
  max-width:52ch;
  font-size:clamp(15px,1.3vw,17px);line-height:1.6;
  color:rgba(255,255,255,.9);
}
.abre-sub strong{font-weight:500;color:var(--branco)}
.fatos{
  list-style:none;margin:0 0 30px;padding:0;
  display:flex;flex-wrap:wrap;gap:8px;
}
.fatos li{
  font-size:12.5px;letter-spacing:.04em;
  padding:7px 13px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:100px;
  background:rgba(7,16,28,.28);
  backdrop-filter:blur(3px);
}
.abre-desce{
  display:inline-block;
  margin-left:18px;
  font-size:13px;
  color:rgba(255,255,255,.75);
  text-underline-offset:4px;
}
.abre-acoes{display:flex;align-items:center;flex-wrap:wrap;row-gap:16px}
/* ------------------------------------------------------------- 2. galeria */

.galeria{padding:clamp(64px,10vw,130px) 0 clamp(40px,6vw,80px)}
.galeria h2,.trancado h2{
  max-width:18ch;
  font-size:clamp(34px,5vw,64px);
  color:var(--marinho);
  margin-bottom:clamp(28px,4vw,48px);
}
.galeria h2 em,.trancado h2 em{color:var(--marinho-2)}

.mosaico{
  max-width:1400px;margin:0 auto;
  padding:0 clamp(0px,3vw,40px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(6px,1vw,14px);
  /* altura fixa por linha: foto larga e foto estreita lado a lado ficam da mesma altura */
  grid-auto-rows:clamp(200px,25vw,370px);
}
.q{
  position:relative;margin:0;overflow:hidden;
  background:var(--marinho-deep);
}
.q-larga{grid-column:span 2}
.q-inteira{grid-column:1/-1;grid-row:span 2}
.q img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 1.2s cubic-bezier(.2,.7,.2,1);
}
.q:hover img{transform:scale(1.04)}
.q figcaption{
  position:absolute;left:0;right:0;bottom:0;
  padding:40px 18px 14px;
  font-family:var(--serif);font-style:italic;
  font-size:clamp(19px,1.8vw,26px);
  color:var(--branco);
  background:linear-gradient(180deg, transparent, rgba(7,16,28,.72));
}

/* aparecer ao rolar: so' com JS (a classe .anima vem do v2.js); sem JS tudo fica visivel */
.anima .revela{opacity:0;transform:translateY(22px);transition:opacity .9s ease, transform .9s ease}
.anima .revela.visto{opacity:1;transform:none}
/* a foto so' aparece quando termina de baixar (v2.js poe .carregou): em rede lenta a pessoa ve o
   quadro escuro e a foto surge inteira, em vez de ir se desenhando em faixas */
.anima .q img{opacity:0;transition:opacity .7s ease, transform 1.2s cubic-bezier(.2,.7,.2,1)}
.anima .q img.carregou{opacity:1}

/* ------------------------------------------------------------- 3. trancado */

.trancado{
  padding:clamp(64px,9vw,120px) 0;
  background:#D9D5C4;
}
.trancado-sub{
  margin:-18px 0 clamp(28px,4vw,44px);
  max-width:56ch;
  font-size:16px;line-height:1.6;
  color:var(--muted);
}
.cofre{
  list-style:none;margin:0 auto;
  max-width:1200px;
  padding:0 var(--lado);
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,1.6vw,22px);
}
.cartao{
  position:relative;
  background:var(--creme);
  transition:transform .25s ease, box-shadow .25s ease;
  border:1px solid var(--linha);
  border-radius:var(--raio);
  overflow:hidden;
}
.cartao h3{
  margin:18px 18px 6px;
  font-family:var(--serif);font-weight:400;
  font-size:23px;line-height:1.15;
  color:var(--marinho);
}
.cartao p{
  margin:0 18px 20px;
  font-size:14px;line-height:1.5;
  color:var(--muted);
}
/* o link "Liberar" cobre o cartao inteiro (::after esticado): o toque em qualquer parte leva
   ao formulario e conta como cta_click com o id do cartao */
.cartao-link{
  display:inline-block;
  margin:0 18px 18px;
  font-size:12px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;
  color:var(--marinho);
  border-bottom:1px solid var(--areia);
  padding-bottom:2px;
}
.cartao-link::after{content:"";position:absolute;inset:0;z-index:2}
.cartao:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(11,26,44,.14)}
.cartao-link:focus-visible{outline:none}
.cartao:focus-within{outline:2px solid var(--marinho);outline-offset:2px}
.cartao-img{
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#C6C1AC;
}
/* a imagem ja' vem borrada no arquivo (tools: gerada a 720 px com desfoque forte). O blur
   aqui so' suaviza a borda , tirar o CSS nao revela nada. */
.cartao-img img{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.15);
  filter:blur(3px) saturate(.9);
}
.cartao-img::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(11,26,44,.08), rgba(11,26,44,.38));
}
.cadeado{
  position:absolute;z-index:1;
  left:50%;top:50%;transform:translate(-50%,-50%);
  width:52px;height:52px;
  display:grid;place-items:center;
  border-radius:50%;
  color:var(--marinho-deep);
  background:rgba(241,239,232,.92);
  box-shadow:0 8px 24px rgba(7,16,28,.25);
}

/* tabela e parcelas: desenho abstrato, SEM nenhum numero , nada ali e' dado real */
.cartao-tabela,.cartao-parcelas{background:#E6E3D7}
.linhas{
  position:absolute;inset:16% 12%;
  display:flex;flex-direction:column;justify-content:space-between;
  filter:blur(2.5px);
}
.linhas i{
  display:block;height:9px;border-radius:4px;
  background:linear-gradient(90deg, var(--marinho) 0 22%, transparent 22% 30%, var(--areia) 30% 62%, transparent 62% 70%, var(--marinho-2) 70% 100%);
  opacity:.55;
}
.linhas i:first-child{background:var(--marinho);opacity:.8}
.barras{
  position:absolute;inset:18% 12% 16%;
  display:flex;align-items:flex-end;gap:6%;
  filter:blur(2.5px);
}
.barras i{flex:1;background:var(--marinho-2);opacity:.5;border-radius:3px 3px 0 0}
.barras i:nth-child(1){height:70%;background:var(--marinho);opacity:.75}
.barras i:nth-child(2){height:24%}
.barras i:nth-child(3){height:24%}
.barras i:nth-child(4){height:40%;background:var(--areia);opacity:.9}
.barras i:nth-child(5){height:24%}
.barras i:nth-child(6){height:24%}
.barras i:nth-child(7){height:40%;background:var(--areia);opacity:.9}
.barras i:nth-child(8){height:24%}
.barras i:nth-child(9){height:24%}

.trancado .miolo-centro{margin-top:clamp(32px,4vw,48px)}

/* ------------------------------------------------------------- 5. cadastro */

.chave{
  position:relative;
  overflow:hidden;
  color:var(--branco);
  background:var(--marinho-deep);
  padding:clamp(64px,9vw,120px) 0;
}
.chave-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.chave-veu{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(7,16,28,.82) 0%, rgba(7,16,28,.55) 50%, rgba(7,16,28,.7) 100%);
}
.chave-miolo{
  position:relative;z-index:1;
  max-width:1200px;margin:0 auto;
  padding:0 var(--lado);
  display:grid;
  grid-template-columns:minmax(0,1fr) clamp(340px,34vw,440px);
  gap:clamp(28px,5vw,80px);
  align-items:center;
}
.chave h2{font-size:clamp(38px,5.6vw,72px);margin-bottom:26px}
.chave h2 em{color:var(--areia)}
.recebe{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.recebe li{
  position:relative;padding-left:30px;
  font-size:17px;
  color:rgba(255,255,255,.92);
}
.recebe li::before{
  content:"";position:absolute;left:0;top:50%;
  width:18px;height:1px;background:var(--areia);
}

/* ============================== formulario (copia fiel do style.css principal) */

.cadastro{
  min-width:0;
  background:rgba(246,244,238,.97);
  color:var(--ink);
  border-radius:var(--raio);
  box-shadow:var(--sombra);
  padding:clamp(20px,2vw,28px);
  align-self:center;
}
.cadastro h3{
  margin:0 0 6px;
  font-family:var(--serif);
  font-weight:400;
  font-size:clamp(21px,2.1vw,26px);
  line-height:1.15;
  color:var(--marinho);
}
.cadastro-sub{
  margin:0 0 18px;
  font-size:12.5px;line-height:1.5;
  color:var(--muted);
}
.lead-form label{
  display:block;
  margin-bottom:11px;
  font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--muted);
}
.lead-form input[type=text],
.lead-form input[type=tel],
.lead-form input[type=email]{
  display:block;width:100%;
  margin-top:5px;
  padding:10px 12px;
  font-family:var(--sans);font-size:14.5px;font-weight:300;
  color:var(--ink);
  background:var(--branco);
  border:1px solid var(--linha);
  border-radius:var(--raio);
  text-transform:none;letter-spacing:normal;
  transition:border-color .18s ease, box-shadow .18s ease;
}
.lead-form input::placeholder{color:#9AA3B2}
.lead-form input:focus{
  outline:none;
  border-color:var(--marinho);
  box-shadow:0 0 0 3px rgba(19,40,64,.12);
}
.lead-form input:user-invalid{border-color:#B4472A}
.lf-2col{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lf-perfil{margin-bottom:12px}
.lf-perfil-label{
  display:block;margin-bottom:6px;
  font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--muted);
}
.lf-pills{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lf-pill{
  margin:0;
  position:relative;
  border:1px solid var(--linha);
  border-radius:var(--raio);
  padding:9px 10px;
  cursor:pointer;
  background:var(--branco);
  transition:border-color .18s ease, background .18s ease;
}
.lf-pill input{position:absolute;opacity:0;width:0;height:0}
.lf-pill-t{
  font-size:12.5px;font-weight:400;letter-spacing:normal;text-transform:none;
  color:var(--ink);
}
.lf-pill-d{
  display:block;margin-top:2px;
  font-size:11px;line-height:1.3;letter-spacing:normal;text-transform:none;
  color:var(--muted);
}
.lf-pill:hover{border-color:var(--areia)}
.lf-pills.lf-falta .lf-pill{border-color:#B4472A;background:#FBF1EE}
.lead-form label.lf-consent.lf-falta{color:#9C3B1E}
.lead-form label.lf-consent.lf-falta input{outline:2px solid #B4472A;outline-offset:1px}
.lf-pill.is-checked{border-color:var(--marinho);background:#E8ECF1}
.lf-pill:focus-within{box-shadow:0 0 0 3px rgba(19,40,64,.12)}
.lead-form label.lf-consent{
  display:flex;gap:8px;align-items:flex-start;
  margin-bottom:14px;
  font-size:11px;line-height:1.45;letter-spacing:normal;text-transform:none;
  color:var(--muted);
}
.lf-consent input{margin:1px 0 0;accent-color:var(--marinho);flex:0 0 auto}
.lf-consent a{color:var(--marinho);text-underline-offset:2px}
.lf-submit{
  width:100%;
  padding:13px 18px;
  font-family:var(--sans);font-size:14px;font-weight:400;letter-spacing:.04em;
  color:var(--creme);
  background:var(--marinho);
  border:1px solid var(--marinho);
  border-radius:var(--raio);
  cursor:pointer;
  transition:background .2s ease, transform .12s ease;
}
.lf-submit:hover{background:var(--marinho-2)}
.lf-submit:active{transform:translateY(1px)}
.lf-submit:disabled{opacity:.6;cursor:progress}
.lf-submit:focus-visible{outline:2px solid var(--marinho);outline-offset:2px}
.lf-msg{
  margin:9px 0 0;
  min-height:1em;
  font-size:12px;line-height:1.4;
  color:#9C3B1E;
}
@media (hover:none) and (pointer:coarse){
  .lead-form input[type=text],
  .lead-form input[type=tel],
  .lead-form input[type=email]{font-size:16px}
}
@media (max-width:400px){
  .lf-2col{grid-template-columns:1fr}
}

/* ------------------------------------------------------------- 6. duvidas */

.duvidas{padding:clamp(56px,8vw,110px) 0 clamp(64px,9vw,120px)}
.duvidas h2{
  font-size:clamp(30px,4.4vw,52px);
  margin-bottom:clamp(26px,3.2vw,44px);
  color:var(--marinho-deep);
}
.duvidas h2 em{color:var(--marinho-2)}
.perguntas{max-width:860px;border-top:1px solid var(--linha)}
.pergunta{border-bottom:1px solid var(--linha)}
.pergunta summary{
  display:flex;align-items:flex-start;gap:clamp(16px,3vw,32px);
  padding:19px 0;
  list-style:none;
  cursor:pointer;
  font-family:var(--serif);
  font-size:clamp(19px,2vw,24px);
  line-height:1.3;
  color:var(--marinho-deep);
  transition:color .2s ease;
}
/* sem isto o Safari desenha o triangulo dele em cima da seta */
.pergunta summary::-webkit-details-marker{display:none}
.pergunta summary:hover{color:var(--marinho-2)}
.pergunta summary:focus-visible{outline:2px solid var(--marinho);outline-offset:3px}
/* seta: meio quadrado girado, vira para cima quando a resposta abre */
.pergunta summary::after{
  content:"";
  flex:0 0 auto;margin:.45em 2px 0 auto;
  width:9px;height:9px;
  border-right:1px solid var(--marinho);
  border-bottom:1px solid var(--marinho);
  transform:rotate(45deg);
  transition:transform .25s ease;
}
.pergunta[open] summary{color:var(--marinho-2)}
.pergunta[open] summary::after{transform:rotate(-135deg)}
.pergunta p{
  margin:0 0 20px;
  max-width:60ch;
  font-size:15.5px;line-height:1.65;
  color:var(--muted);
}
.duvidas-mais{
  margin:clamp(24px,3vw,36px) 0 0;
  font-size:14.5px;
  color:var(--muted);
}
.duvidas-mais a{color:var(--marinho);text-underline-offset:3px}

/* --------------------------------------------------------------- rodape */

.rodape{
  display:flex;align-items:center;gap:clamp(16px,3vw,36px);
  padding:28px var(--lado) 100px;
  background:var(--marinho-deep);
  border-top:1px solid rgba(255,255,255,.12);
}
.marcas-rodape{flex:0 0 auto;opacity:.8}
.marcas-rodape .marca-rdimer{width:96px}
.marcas-rodape .marca-bloque{width:44px}
.legal{font-size:10px;line-height:1.55;color:rgba(255,255,255,.5)}
.legal p{margin:0}
.legal a{color:rgba(255,255,255,.72);text-underline-offset:2px}

/* ===================================================== secoes proprias do Salinas
   (o AVA nao tinha: duas forcas, bairro, numeros, clubes, quem assina). Mesmo vocabulario
   visual: titulo serifado com italico, "sobre" em caixa alta espacada, filetes finos. */

.forcas,.bairro,.assinam{padding:clamp(64px,9vw,120px) 0}
.forcas{background:var(--areia)}
.forcas h2,.bairro h2,.clubes h2,.assinam h2{
  max-width:18ch;font-size:clamp(34px,5vw,64px);color:var(--marinho);
  margin-bottom:clamp(28px,4vw,48px);
}
.forcas h2 em,.bairro h2 em,.clubes h2 em,.assinam h2 em,.alem h2 em{color:var(--marinho-2)}
.forcas-par{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(28px,5vw,80px);
  border-top:1px solid var(--linha);padding-top:clamp(28px,3.4vw,44px);
}
/* os dois logos tem proporcoes muito diferentes: caixa de altura fixa, alinhados pela base,
   para o texto das duas colunas comecar na mesma linha */
.forca-logo{height:clamp(56px,5.4vw,70px);display:flex;align-items:flex-end;margin-bottom:22px}
.forca-logo img{height:auto}
.forca-rdimer{width:clamp(150px,16vw,210px)}
.forca-bloque{width:clamp(70px,7vw,92px)}
.forca p{margin:0;max-width:44ch;font-size:clamp(16px,1.4vw,19px);line-height:1.6;color:var(--ink)}

.bairro-sub,.alem-sub{
  margin:-18px 0 clamp(28px,4vw,44px);max-width:60ch;
  font-size:16px;line-height:1.65;color:var(--muted);
}
.mapa{margin:0}
.mapa img{width:100%;height:auto;border-radius:var(--raio);box-shadow:0 18px 50px rgba(11,26,44,.16)}
.mapa figcaption{margin-top:12px;font-size:12.5px;color:var(--muted)}

.numeros{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);
  background:var(--marinho);color:var(--branco);
}
.numeros-foto{position:relative;min-height:360px;overflow:hidden;background:var(--marinho-deep)}
.numeros-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.numeros-texto{padding:clamp(48px,6vw,96px) var(--lado)}
.numeros h2{font-size:clamp(34px,4.4vw,58px);margin-bottom:clamp(24px,3vw,36px)}
.numeros h2 em{color:var(--areia)}
.ficha{margin:0;display:grid;gap:0}
.ficha div{
  display:flex;justify-content:space-between;align-items:baseline;gap:18px;
  padding:12px 0;border-bottom:1px solid rgba(255,255,255,.14);
}
.ficha dt{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.ficha dd{margin:0;text-align:right;white-space:nowrap;font-family:var(--serif);font-size:clamp(20px,1.9vw,26px);line-height:1.2}
.ficha dd small{display:block;white-space:normal;font-family:var(--sans);font-size:12px;color:rgba(255,255,255,.62)}

.clubes{padding:clamp(64px,9vw,120px) 0 clamp(40px,6vw,80px)}
.clubes-lista{
  list-style:none;margin:0 auto;max-width:1200px;padding:0 var(--lado);
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(14px,1.6vw,22px);
}
.clube{
  position:relative;padding:clamp(22px,2.4vw,32px) clamp(20px,2.4vw,32px) clamp(22px,2.4vw,30px) clamp(64px,6vw,84px);
  background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio);
}
.clube:first-child{grid-column:1/-1}
.clube-n{
  position:absolute;left:clamp(20px,2.4vw,30px);top:clamp(20px,2.3vw,30px);
  width:32px;height:32px;display:grid;place-items:center;border-radius:50%;
  font-size:13px;font-weight:400;color:var(--areia);background:var(--marinho);
}
.clube h3{
  margin:0 0 10px;font-family:var(--serif);font-weight:400;
  font-size:clamp(22px,2.2vw,28px);line-height:1.15;color:var(--marinho);
}
.clube h3 small{
  display:block;margin-top:4px;font-family:var(--sans);font-size:12px;font-weight:400;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
}
.clube p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}

.alem{padding-top:clamp(40px,6vw,80px)}

.assinam{background:var(--creme);border-top:1px solid var(--linha)}
.assinaturas{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.4vw,36px);
}
.assinaturas li{border-top:1px solid var(--marinho);padding-top:16px}
.assinaturas strong{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(21px,2vw,26px);color:var(--marinho)}
.assinaturas span{display:block;margin-top:4px;font-size:14px;color:var(--ink)}
.assinaturas em{display:block;margin-top:8px;font-style:normal;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

@media (max-width:980px){
  .assinaturas{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .numeros{grid-template-columns:minmax(0,1fr)}
  .numeros-foto{min-height:0;aspect-ratio:16/10}
}
@media (max-width:760px){
  .marca-rdimer{width:92px}
  .marca-bloque{width:42px}
  .forcas-par,.clubes-lista{grid-template-columns:minmax(0,1fr)}
  .clube:first-child{grid-column:auto}
  .rodape .marcas{margin-bottom:6px}
}

/* ----------------------------------------------------- botao fixo (celular) */

.fixo{display:none}

/* =========================================================== responsivo */

@media (max-width:980px){
  .cofre{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chave-miolo{grid-template-columns:minmax(0,1fr)}
}

@media (max-width:760px){
  .abre h1 br{display:none}
  .abre .sobre{font-size:10px;letter-spacing:.14em}
  .fatos{
  list-style:none;margin:0 0 30px;padding:0;
  display:flex;flex-wrap:wrap;gap:8px;
}
.fatos li{
  font-size:12.5px;letter-spacing:.04em;
  padding:7px 13px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:100px;
  background:rgba(7,16,28,.28);
  backdrop-filter:blur(3px);
}
.abre-desce{display:block;margin:16px 0 0}
  /* botao numa linha; embaixo, o "ou role" a esquerda e o selo a direita */
  .abre-acoes{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px}
  .abre-acoes .botao{grid-column:1/-1;justify-self:start}
  .abre-acoes .abre-desce{margin:0;justify-self:start}
  .mosaico{grid-template-columns:minmax(0,1fr);padding:0;grid-auto-rows:auto}
  .q,.q-larga,.q-inteira{grid-column:auto;grid-row:auto;aspect-ratio:4/3}
  .cofre{grid-template-columns:minmax(0,1fr)}
  .cartao{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center}
  /* o link "Liberar" cobre o cartao inteiro (::after esticado): o toque em qualquer parte leva
   ao formulario e conta como cta_click com o id do cartao */
.cartao-link{
  display:inline-block;
  margin:0 18px 18px;
  font-size:12px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;
  color:var(--marinho);
  border-bottom:1px solid var(--areia);
  padding-bottom:2px;
}
.cartao-link::after{content:"";position:absolute;inset:0;z-index:2}
.cartao:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(11,26,44,.14)}
.cartao-link:focus-visible{outline:none}
.cartao:focus-within{outline:2px solid var(--marinho);outline-offset:2px}
.cartao-img{grid-row:span 2;height:100%;aspect-ratio:auto;min-height:120px}
  .cartao h3{margin:14px 14px 4px;font-size:20px}
  .cartao p{margin:0 14px 6px;font-size:13px}
  .cartao-link{margin:0 14px 14px;justify-self:start}
  .cartao-img{grid-row:span 3}
  .cadeado{width:40px;height:40px}
  .rodape{flex-direction:column;align-items:flex-start}

  .fixo{
    display:block;
    position:fixed;z-index:10;
    left:16px;right:16px;bottom:max(14px, env(safe-area-inset-bottom));
    padding:15px;
    text-align:center;text-decoration:none;
    font-size:15px;font-weight:400;letter-spacing:.05em;
    color:var(--marinho-deep);
    background:var(--areia);
    border-radius:100px;
    box-shadow:0 10px 30px rgba(7,16,28,.35);
    transition:transform .3s ease, opacity .3s ease;
  }
  .fixo.escondido{transform:translateY(140%);opacity:0;pointer-events:none}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}
