/* ==========================================================================
   LEADERX ENGAGE · VELEIROS · Paraty
   Um arquivo, sem framework, sem CDN. Fontes servidas do disco (/fontes).
   REGRA DE OURO: nenhum texto abaixo de 16px.
   ========================================================================== */

@font-face {
  font-family: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('../fontes/inter-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: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('../fontes/inter-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;
}
/* Ms Madi embutida em base64 de proposito. Sao 45 KB, e em troca a
   manuscrita deixa de depender de tipo MIME, de caminho relativo e de regra
   de servidor: ela chega junto com o CSS. Foi exatamente isso que quebrou
   ao publicar, com a fonte caindo para Segoe Script. */
@font-face {
  font-family: 'Ms Madi'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('data:font/woff2;base64,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') format('woff2');
}

/* Fontes da LeaderX, usadas SÓ na seção institucional deles. */
@font-face {
  font-family: 'DM Sans'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('../fontes/dm-sans-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: 'DM Mono'; font-style: normal; font-weight: 400 500; font-display: swap;
  src: url('../fontes/dm-mono-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;
}

/* --------------------------------------------------------------------------
   1. TOKENS
   -------------------------------------------------------------------------- */
:root {
  --espuma:#F4F9FA; --branco:#FFFFFF; --nevoa:#E7F1F4; --linha:#D5E3E8; --linha-2:#EAF1F3;
  --marinho:#0A2540; --marinho-2:#123354; --breu:#061A2E;
  --tinta:#2C4150; --suave:#5D7A88;
  --agua:#0E7C86; --agua-viva:#2FB8B0; --agua-tenue:#0E7C8614;
  --latao:#B08A46; --latao-luz:#E0C089; --sol:#D9944A;

  --sombra-1: 0 1px 2px rgba(10,37,64,.04), 0 4px 14px rgba(10,37,64,.05);
  --sombra-2: 0 2px 6px rgba(10,37,64,.05), 0 16px 40px rgba(10,37,64,.09);
  --sombra-3: 0 30px 70px rgba(10,37,64,.18);

  --r-xs:12px; --r-sm:18px; --r:26px; --r-lg:36px; --r-xl:52px; --pill:999px;

  /* ----------------------------------------------------------------------
     GRADE
     1400px em vez dos 1240px anteriores. Coluna mais larga é o que permite
     capítulo assimétrico de verdade: com 1240 o texto em 7/12 já ficava
     estreito demais para respirar ao lado de uma foto sangrando.
     ---------------------------------------------------------------------- */
  --largura: 1400px;
  --gutter: clamp(1.25rem, 4vw, 3.25rem);
  --col: calc((var(--largura) - (11 * var(--calha))) / 12);
  --calha: clamp(1rem, 1.6vw, 1.75rem);

  /* ----------------------------------------------------------------------
     RITMO VERTICAL
     Capítulo maior quase dobrou (era no máximo 120px, agora 220px). Espaço
     é o material do quiet luxury: sem ele, escala tipográfica grande vira
     aperto em vez de calma. --secao-y fica como estava para os capítulos
     que devem seguir compactos.
     ---------------------------------------------------------------------- */
  /* Valores por LADO, não vão total. Erro anterior: eu tinha posto aqui os
     140-220px que a referência pedia como espaço ENTRE capítulos, mas como
     isto é padding-block ele conta duas vezes entre seções vizinhas, e a
     onda divisória ainda somava 130px. O vão real chegava a 570px. */
  --cap-y:    clamp(4rem, 6.5vw, 8.25rem);   /*  64 a 132px por lado */
  --cap-y-sm: clamp(3rem, 4.6vw, 5.5rem);    /*  48 a  88px por lado */
  --cap-y-onda: clamp(2.25rem, 3.4vw, 4rem); /*  36 a  64px junto da onda */
  --secao-y: clamp(4.5rem, 9vw, 7.5rem);
  --bloco:   clamp(2.25rem, 4.5vw, 3.5rem);
  --bloco-sm:clamp(1.5rem, 3vw, 2.25rem);

  /* ----------------------------------------------------------------------
     ESCALA TIPOGRÁFICA EDITORIAL
     Três degraus bem separados, de propósito: o salto entre eles é o que
     cria hierarquia sem precisar de caixa, cor ou moldura.

     MICRO fica em 16px e não em 11-14px como pedia a referência: a regra do
     projeto é nada abaixo de 16px. A diferenciação vem de peso, caixa alta
     e entreletra, não de encolher texto até doer.

     A rampa usa calc(base + vw) em vez de vw puro. Motivo prático: com vw
     puro o tamanho quase encostava no teto já em 1440px, que é o laptop mais
     comum, e o título vinha grande demais justamente na tela onde a maioria
     vai abrir. Com um piso fixo somado a uma inclinação suave, o crescimento
     fica reservado para telas realmente largas.
     ---------------------------------------------------------------------- */
  --t-declaracao: clamp(3rem,  calc(2rem   + 4.2vw), 7.5rem);   /* 92px em 1440 */
  --t-hero:       clamp(2.75rem, calc(1.4rem + 5.5vw), 6.875rem); /* 101px em 1440 */
  --t-titulo:     clamp(2.1rem, calc(2.1rem + 2.1vw), 4.6rem);  /* 64px em 1440 */
  --t-sub:        clamp(1.5rem,  2.4vw, 2.125rem); /*  24 a  34px */
  --t-corpo:      clamp(1.0625rem, 1.1vw, 1.1875rem); /* 17 a 19px */
  --t-micro:      1rem;                            /*  16px, piso do projeto */
  --entreletra-micro: .18em;

  --manuscrita: 'Ms Madi', 'Segoe Script', cursive;
  --mola: cubic-bezier(.22,1,.36,1);
  --suavizar: cubic-bezier(.4,0,.2,1);

  --pontos: radial-gradient(circle, rgba(10,37,64,.2) 1.1px, transparent 1.2px);
  --pontos-tam: 22px 22px;
  --ruido: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='r'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23r)'/%3E%3C/svg%3E");
}

/* --------------------------------------------------------------------------
   2. BASE
   -------------------------------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  margin: 0; background: var(--espuma); color: var(--tinta);
  font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: clamp(1.0625rem, 1.03rem + .18vw, 1.1875rem);
  line-height: 1.66; font-feature-settings: "cv11","ss01";
  -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
/* Sem height fixo: a lupa também trava o body no meio da página, e um
   height de 100svh aqui colapsaria a rolagem. */
body[data-travado="sim"] { overflow: hidden; }

h1,h2,h3,h4 { margin:0; color: var(--marinho); font-weight:600; line-height:1.08; letter-spacing:-.03em; text-wrap: balance; }
p { margin:0; }
/* figure vem com `margin: 1em 40px` do navegador: sem este reset, toda
   foto de galeria perde 80px de largura dentro da célula do grid. */
figure, figcaption { margin:0; }
img, svg { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
ul { margin:0; padding:0; list-style:none; }

::selection { background: var(--agua-viva); color: var(--marinho); }

/* barra de rolagem no tema: trilho de névoa, polegar marinho→água */
html { scrollbar-color: var(--marinho) var(--nevoa); scrollbar-width: thin; }
::-webkit-scrollbar { width: 11px; }
::-webkit-scrollbar-track { background: var(--nevoa); }
::-webkit-scrollbar-thumb { background: linear-gradient(var(--marinho), var(--agua)); border-radius: 8px; border: 2px solid var(--nevoa); }
:focus-visible { outline:2px solid var(--agua); outline-offset:3px; border-radius: var(--r-xs); }

/* Largura única para toda seção (fora hero e rodapé, que são full bleed).
   O antigo .env--estreito criava um segundo trilho de 860px que quebrava o
   alinhamento vertical entre seções. */
.env { width: min(100% - (var(--gutter) * 2), var(--largura)); margin-inline:auto; }

.mao { font-family: var(--manuscrita); font-weight:400; color: var(--latao); letter-spacing:0; font-size:1.28em; line-height:.8; padding-inline:.06em; }
.secao--fundo .mao, .fecho .mao, .hero .mao, .mar .mao, .intro .mao { color: var(--latao-luz); }

/* "Escrita à mão": o trecho manuscrito se revela da esquerda para a direita
   quando a seção aparece, como se estivesse sendo caligrafado na hora.
   (Traço de caneta de verdade exigiria o lettering em SVG desenhado à mão;
   fonte não expõe o caminho do traço.) O inset negativo em cima e embaixo
   preserva ascendentes e descendentes da caligrafia. */
[data-revelar] .mao {
  display: inline-block;
  clip-path: inset(-25% 103% -25% -3%);
  transition: clip-path 1.3s var(--suavizar);
  transition-delay: .55s;
}
[data-revelar="visivel"] .mao { clip-path: inset(-25% -3% -25% -3%); }

/* --------------------------------------------------------------------------
   3. INTRO (tela de carregamento)
   -------------------------------------------------------------------------- */
.intro {
  position: fixed; inset: 0; z-index: 200;
  display: grid; place-items: center; text-align: center;
  background: radial-gradient(ellipse 90% 70% at 50% 40%, #0d3357 0%, var(--breu) 70%);
  color: #fff; overflow: hidden;
  transition: opacity .9s var(--suavizar), visibility .9s;
}
.intro[data-fim="sim"] { opacity: 0; visibility: hidden; pointer-events: none; }
.intro__ruido { position:absolute; inset:0; background-image: var(--ruido); opacity:.35; mix-blend-mode: overlay; pointer-events:none; }

.intro__conteudo { position: relative; z-index: 2; width: min(100% - 2.5rem, 720px); padding-bottom: clamp(2rem, 6vh, 4rem); }
.intro__olho {
  display:inline-flex; align-items:center; gap:.7rem;
  font-size:1rem; font-weight:600; letter-spacing:.24em; text-transform:uppercase;
  color: var(--latao-luz); margin-bottom: clamp(1.4rem, 3vh, 2rem);
  opacity:0; animation: entraIntro .9s var(--mola) .25s both;
}
.intro__olho::before, .intro__olho::after { content:""; width:24px; height:1px; background: var(--latao); }

.intro h1 {
  color:#fff; font-size: clamp(2rem, 6.2vw, 4.1rem); line-height:1.05; letter-spacing:-.04em;
  opacity:0; animation: entraIntro 1s var(--mola) .5s both;
}
/* Na intro a manuscrita entra estática, junto do título. O efeito de
   escrita fica reservado para as seções do site. */
.intro .mao { display:inline-block; }
.intro__linha {
  margin-top: clamp(1.2rem, 3vh, 1.8rem); font-size: clamp(1.0625rem, 1.6vw, 1.25rem);
  color: rgba(255,255,255,.78); max-width: 42ch; margin-inline:auto;
  opacity:0; animation: entraIntro 1s var(--mola) .9s both;
}
@keyframes entraIntro { from { opacity:0; transform: translateY(20px); } to { opacity:1; transform:none; } }

.intro__barra {
  width: min(280px, 62vw); height: 2px; margin: clamp(2.4rem, 6vh, 3.6rem) auto 0;
  background: rgba(224,192,137,.2); border-radius: var(--pill); overflow:hidden;
  opacity:0; animation: entraIntro .8s var(--mola) 1.2s both;
}
.intro__barra i { display:block; height:100%; width:0; background: linear-gradient(to right, var(--latao), var(--latao-luz)); border-radius: var(--pill); }
/* enche em 3,5s + 0,35s de espera: termina em 3,85s, logo antes da saída
   aos 4s. A barra nunca chega ao fim e fica parada esperando. */
.intro[data-carregando="sim"] .intro__barra i { animation: encher 3.5s cubic-bezier(.25,.6,.3,1) .35s forwards; }
@keyframes encher { to { width:100%; } }

.intro__pular {
  display:inline-flex; align-items:center; gap:.5rem; margin-top: clamp(1.6rem,4vh,2.4rem);
  padding:.6rem 1.3rem; border-radius: var(--pill);
  border:1px solid rgba(224,192,137,.35); color: rgba(255,255,255,.75);
  font-size:1rem; font-weight:500; cursor:pointer; background:none;
  font-family:inherit;
  opacity:0; animation: entraIntro .8s var(--mola) 1.6s both;
  transition: background .3s, color .3s, border-color .3s;
}
.intro__pular:hover { background: rgba(224,192,137,.14); color:#fff; border-color: var(--latao-luz); }

/* ondas no pé da intro */
.intro__ondas { position:absolute; inset:auto 0 0 0; height: clamp(90px, 16vh, 180px); z-index:1; pointer-events:none; }
.intro__ondas svg { width:100%; height:100%; display:block; }
.intro__ondas path { fill:#0a2540; }
.intro__ondas .o1 { opacity:.35; animation: deriva 22s linear infinite; }
.intro__ondas .o2 { opacity:.6;  animation: deriva 15s linear infinite reverse; }
.intro__ondas .o3 { opacity:.9;  animation: deriva 10s linear infinite; }

/* --------------------------------------------------------------------------
   4. TEXTURAS
   -------------------------------------------------------------------------- */
.tex { position:relative; isolation:isolate; }
.tex > * { position:relative; z-index:1; }
.tex--pontos::before {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image: var(--pontos); background-size: var(--pontos-tam);
  -webkit-mask-image: radial-gradient(ellipse 90% 70% at 50% 45%, #000 30%, transparent 100%);
          mask-image: radial-gradient(ellipse 90% 70% at 50% 45%, #000 30%, transparent 100%);
}
/* As cáusticas (::after) escalam até 1.08: sem este clip, o pseudo-elemento
   vaza além do viewport nas seções full-bleed e cria rolagem lateral que
   aparece e some conforme a animação alterna. */
.tex--ruido { overflow: hidden; }
.tex--ruido::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background-image: var(--ruido); opacity:.5; mix-blend-mode: overlay; }
.tex--ruido::after {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(ellipse 70% 55% at 15% 0%, rgba(47,184,176,.18), transparent 65%),
    radial-gradient(ellipse 60% 50% at 90% 100%, rgba(176,138,70,.16), transparent 60%);
  animation: causticas 28s ease-in-out infinite alternate;
}
@keyframes causticas {
  0%   { transform: translate3d(0,0,0) scale(1); opacity:.85; }
  100% { transform: translate3d(2%,-1.5%,0) scale(1.08); opacity:1; }
}

/* --------------------------------------------------------------------------
   5. CURVA divisória
   Os paths passam de y=130 (limite do viewBox) até 160 de propósito: parar
   exatamente na borda deixava o anti-aliasing revelar uma linha fina da cor
   de trás. O recorte só limita a horizontal, que é o que causava scroll.
   -------------------------------------------------------------------------- */
.curva { line-height:0; background: var(--de); overflow:hidden; contain: paint; }
.curva svg { display:block; width:100%; height: clamp(58px, 8vw, 132px); }
.curva path { fill: var(--para); }
.curva .c1 { opacity:.3;  animation: deriva 26s linear infinite; }
.curva .c2 { opacity:.55; animation: deriva 17s linear infinite reverse; }
.curva .c3 { opacity:1;   animation: deriva 11s linear infinite; }
@keyframes deriva { from { transform: translateX(0); } to { transform: translateX(-1440px); } }

/* --------------------------------------------------------------------------
   6. MARÉ
   -------------------------------------------------------------------------- */
/* --------------------------------------------------------------------------
   RAIA DA REGATA (progresso da página)
   Sem véu nem desfoque atrás: sobre o vídeo escuro do hero aquilo virava uma
   faixa clara atravessando o topo, e o desfoque ainda custava caro no celular.
   A cor é o latão em todas as peças por um motivo prático: a faixa fica fixa
   no topo e passa tanto sobre o vídeo escuro do hero quanto sobre as seções
   claras. Latão sólido é a única cor da paleta que se lê nas duas.
   -------------------------------------------------------------------------- */
/* Nasce oculta e só entra depois do hero. Sobre o vídeo escuro o pontilhado
   dourado ou desaparecia ou atrapalhava, e ali o barco estava parado na
   largada sem informar nada. Opacidade basta: a faixa já é pointer-events:none,
   então invisível ela não intercepta clique nenhum. */
.raia {
  position:fixed; inset:0 0 auto 0; z-index:90; height:44px; pointer-events:none;
  opacity:0; transition: opacity .6s var(--suavizar);
}
.raia[data-visivel="sim"] { opacity:1; }
.raia__mapa { position:relative; display:block; width:100%; height:100%; overflow:visible; }
.raia__percurso {
  fill:none; stroke-linecap:round; stroke-linejoin:round;
  vector-effect: non-scaling-stroke;   /* sem isto o esticamento engrossaria a linha */
}
/* Só o pontilhado. Subiu de 32% para 42% de opacidade porque agora ele
   carrega o percurso sozinho, sem a linha sólida por baixo. */
.raia__percurso { stroke: rgba(176,138,70,.42); stroke-width:2; stroke-dasharray:1 7; }

.raia__marca { position:absolute; transform: translate(-50%,-50%); pointer-events:none; }
.raia__marca--largada, .raia__marca--chegada {
  width:2px; height:16px; background: rgba(176,138,70,.55); border-radius:2px;
}
.raia__marca--chegada { background: var(--latao); }
.raia__marca--boia {
  width:9px; height:9px; border-radius:50%;
  border:2px solid var(--latao); background: var(--espuma);
}

.raia__barco {
  position:absolute; top:0; left:0; width:25px; height:25px;
  color: var(--marinho); will-change: transform;
  transition: transform .12s linear;
}
.raia__barco svg { width:100%; height:100%; display:block; }

@media (max-width:640px) {
  .raia { height:34px; }
  .raia__barco { width:19px; height:19px; }
  .raia__marca--largada, .raia__marca--chegada { height:12px; }
}
@keyframes jogar { 0%,100%{transform:rotate(-5deg) translateY(0)} 50%{transform:rotate(5deg) translateY(-1.5px)} }

/* --------------------------------------------------------------------------
   7. MENU
   -------------------------------------------------------------------------- */
.menu {
  position:fixed; z-index:80; top: clamp(.9rem,2.4vw,1.5rem); left:50%; transform:translateX(-50%);
  display:flex; align-items:center; gap:.15rem; padding:.35rem; border-radius: var(--pill);
  background: rgba(255,255,255,.74); backdrop-filter: blur(20px) saturate(180%); -webkit-backdrop-filter: blur(20px) saturate(180%);
  border:1px solid rgba(255,255,255,.9); box-shadow: var(--sombra-2);
  transition: transform .45s var(--mola), opacity .3s ease;
}
.menu[data-escondido="sim"] { transform: translateX(-50%) translateY(-160%); opacity:0; }
.menu__glide { position:absolute; top:.35rem; left:0; height:calc(100% - .7rem); border-radius: var(--pill); background: var(--marinho); transition: transform .5s var(--mola), width .5s var(--mola), opacity .3s ease; opacity:0; z-index:0; }
.menu[data-tem-ativo="sim"] .menu__glide { opacity:1; }
.menu a { position:relative; z-index:1; display:flex; align-items:center; gap:.5rem; padding:.6rem clamp(.85rem,1.5vw,1.2rem); border-radius: var(--pill); font-size:1rem; font-weight:500; letter-spacing:-.01em; color: var(--tinta); white-space:nowrap; transition: color .3s var(--suavizar); }
.menu a svg { width:18px; height:18px; flex:none; }
.menu a:hover { color: var(--marinho); }
.menu a[data-ativo="sim"] { color:#fff; }
.menu__cta { margin-left:.25rem; background: var(--marinho); color:#fff !important; font-weight:600; }
.menu__cta:hover { background: var(--agua); }
@media (max-width: 900px) {
  .menu { top:auto; bottom:max(.7rem, env(safe-area-inset-bottom)); width:max-content; max-width:calc(100% - 1.5rem); }
  .menu a { padding:.7rem .85rem; }
  .menu a .rotulo { display:none; }
  .menu__cta { padding-inline:1.1rem; }
  .menu__cta .rotulo { display:inline; }
}

/* --------------------------------------------------------------------------
   8. HERO
   -------------------------------------------------------------------------- */
.hero { position:relative; min-height:100svh; display:grid; place-items:center; isolation:isolate; overflow:hidden; background: var(--breu); text-align:center; }

/* Ken Burns lentíssimo: 28s de zoom quase imperceptível. É o que separa um
   vídeo "colado no fundo" de uma cena que respira. */
.hero__video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-3; animation: kenburns 28s ease-in-out infinite alternate; }
@keyframes kenburns { from { transform: scale(1) translate3d(0,0,0); } to { transform: scale(1.09) translate3d(-1%,.5%,0); } }

.hero__veu {
  position:absolute; inset:0; z-index:-2;
  background:
    radial-gradient(ellipse 85% 70% at 50% 55%, rgba(6,26,46,.84) 0%, rgba(6,26,46,.56) 45%, rgba(6,26,46,.38) 100%),
    linear-gradient(to top, rgba(6,26,46,.96) 0%, rgba(6,26,46,.32) 42%, rgba(6,26,46,.5) 100%);
}
.hero__ruido { position:absolute; inset:0; z-index:-1; pointer-events:none; background-image: var(--ruido); opacity:.38; mix-blend-mode: overlay; }

/* marcas de corte em latão: assinatura editorial nos quatro cantos */
.hero__cantos { position:absolute; inset: clamp(1.1rem, 2.6vw, 2.2rem); z-index:1; pointer-events:none; }
.hero__cantos i { position:absolute; width: clamp(24px, 3.4vw, 40px); height: clamp(24px, 3.4vw, 40px); opacity:0; animation: aparece 1.2s var(--mola) 1.5s forwards; }
.hero__cantos i::before, .hero__cantos i::after { content:""; position:absolute; background: var(--latao-luz); opacity:.75; }
.hero__cantos i::before { width:100%; height:1px; }
.hero__cantos i::after { width:1px; height:100%; }
.hero__cantos .ce { top:0; left:0; }
.hero__cantos .cd { top:0; right:0; } .hero__cantos .cd::before { right:0; } .hero__cantos .cd::after { right:0; }
.hero__cantos .be { bottom:0; left:0; } .hero__cantos .be::before { bottom:0; } .hero__cantos .be::after { bottom:0; }
.hero__cantos .bd { bottom:0; right:0; } .hero__cantos .bd::before { bottom:0; right:0; } .hero__cantos .bd::after { bottom:0; right:0; }
@keyframes aparece { to { opacity:1; } }

.hero__conteudo { position:relative; z-index:2; width: min(100% - (var(--gutter) * 2), 1000px); padding-block: clamp(6rem,14vh,9rem); color:#fff; }

.selo { display:inline-flex; align-items:center; gap:.6rem; padding:.5rem 1.15rem .5rem .85rem; border-radius: var(--pill); background: rgba(255,255,255,.1); border:1px solid rgba(224,192,137,.45); backdrop-filter: blur(10px); font-size:1rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color: var(--latao-luz); }
.selo svg { width:17px; height:17px; }

.hero h1 { margin:1.7rem 0 0; color:#fff; font-size: var(--t-hero); font-weight:600; letter-spacing:-.05em; line-height:.9; position:relative; }
.hero h1 em { display:block; font-style:normal; font-weight:500; color: var(--latao-luz); font-size: clamp(1rem,1.9vw,1.35rem); letter-spacing:.34em; text-transform:uppercase; margin-bottom:1.3rem; text-shadow:0 1px 14px rgba(6,26,46,.7); }

/* Clarão que varre o título uma vez, na entrada.

   O efeito vai nos spans de PALAVRA, nunca no contêiner: `background-clip:
   text` não alcança descendentes, mas `-webkit-text-fill-color: transparent`
   HERDA. Posto no pai, os filhos ficariam transparentes sem gradiente atrás
   e o título sumia da tela. Assim o contêiner segue visível se o JS não
   rodar e não houver quebra por palavras. */
.hero h1 .brilho .palavra > span {
  background: linear-gradient(105deg, #fff 40%, var(--latao-luz) 50%, #fff 60%);
  background-size: 300% 100%;
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
  animation: subirPalavra .95s var(--mola) both, varre 2.6s var(--suavizar) 1.5s 1 both;
  animation-delay: calc(.7s + var(--i,0) * 70ms), 1.5s;
}
@keyframes varre { from { background-position: 130% 0; } to { background-position: -30% 0; } }

.fio { width:76px; height:1px; margin:2rem auto; background: linear-gradient(to right, transparent, var(--latao), transparent); }
.hero__linha { max-width:44ch; margin-inline:auto; font-size: clamp(1.0625rem,1.5vw,1.3rem); color: rgba(255,255,255,.88); line-height:1.6; }
.hero__fatos { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:2.5rem; justify-content:center; }
.fato { display:inline-flex; align-items:center; gap:.55rem; padding:.6rem 1.2rem; border-radius: var(--pill); background: rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.22); backdrop-filter: blur(8px); font-size:1rem; font-weight:500; color: rgba(255,255,255,.95); transition: background .3s var(--suavizar), transform .35s var(--mola), border-color .3s; }
.fato:hover { background: rgba(255,255,255,.16); transform: translateY(-3px); border-color: rgba(224,192,137,.5); }
.fato svg { width:17px; height:17px; opacity:.85; }

.hero__rolar { position:absolute; bottom:2rem; left:50%; transform:translateX(-50%); display:grid; place-items:center; gap:.6rem; color: rgba(255,255,255,.6); font-size:1rem; letter-spacing:.18em; text-transform:uppercase; z-index:2; }
.hero__rolar i { display:block; width:1px; height:2.4rem; background:currentColor; animation: puxa 2.2s ease-in-out infinite; transform-origin:top; }
@keyframes puxa { 0%,100%{transform:scaleY(.2);opacity:.3} 50%{transform:scaleY(1);opacity:1} }
@media (max-width: 900px) { .hero__rolar { display:none; } }

/* Selo circular girando no canto do hero: texto em órbita com a âncora no
   centro. Só no desktop; o tamanho mínimo de 150px mantém o texto do SVG
   acima de 16px efetivos. */
.hero__giro { display:none; }
@media (min-width:901px) {
  .hero__giro {
    display:block; position:absolute;
    right: clamp(2.4rem, 5vw, 4rem); bottom: clamp(2.4rem, 5vw, 4rem);
    width: clamp(150px, 12vw, 176px); aspect-ratio:1; z-index:2;
  }
  .hero__giro svg { width:100%; height:100%; overflow:visible; }
  .hero__giro .giro { transform-box: fill-box; transform-origin: center; animation: gira 26s linear infinite; }
  .hero__giro text { fill: rgba(224,192,137,.92); font-size:13px; font-weight:600; letter-spacing:.18em; }
  .hero__giro .ancora { color: var(--latao-luz); }
}

/* --------------------------------------------------------------------------
   9. SEÇÕES
   -------------------------------------------------------------------------- */
/* Ritmo de capítulo. Nem toda seção tem o mesmo peso na travessia: as que
   carregam um momento visual respiram até 220px, as de apoio ficam em 140px.
   Alternar isso é o que cria contraste; padding igual em tudo achata a
   narrativa por mais bonita que cada seção seja isoladamente. */
.secao { padding-block: var(--cap-y-sm); scroll-margin-top:6rem; position:relative; }
.secao--capitulo { padding-block: var(--cap-y); }

/* Onde existe onda, ela já é a separação: a seção recolhe o próprio respiro
   daquele lado para o vão não somar padding + onda + padding.
   :has() cobre o lado de baixo; o irmão adjacente cobre o de cima. */
.curva + .secao { padding-top: var(--cap-y-onda); }
.secao:has(+ .curva) { padding-bottom: var(--cap-y-onda); }
.secao--branco { background: var(--branco); }
.secao--espuma { background: var(--espuma); }
.secao--nevoa  { background: var(--nevoa); }
.secao--fundo  { background: var(--marinho); color: rgba(233,242,245,.84); }
.secao--fundo h2, .secao--fundo h3, .secao--fundo h4 { color:#fff; }

.cabeca { max-width:64ch; }
.cabeca--meio { margin-inline:auto; text-align:center; }

.olho { display:inline-flex; align-items:center; gap:.65rem; font-size:1rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color: var(--agua); margin-bottom:1.2rem; }
.olho::before { content:""; width:26px; height:1px; background: var(--latao); }
.cabeca--meio .olho::after, .mar .olho::after { content:""; width:26px; height:1px; background: var(--latao); }
.secao--fundo .olho, .fecho .olho, .mar .olho { color: var(--latao-luz); }

.titulo { font-size: var(--t-titulo); margin-bottom:1.2rem; }
.entrada { font-size: clamp(1.0625rem,1.35vw,1.2rem); color: var(--tinta); max-width:62ch; line-height:1.72; }
.cabeca--meio .entrada { margin-inline:auto; }
.entrada + .entrada { margin-top:1.1rem; }
.secao--fundo .entrada { color: rgba(233,242,245,.78); }

.palavra { display:inline-block; overflow:hidden; vertical-align:bottom; }
.palavra > span { display:inline-block; transition: transform .9s var(--mola); transition-delay: calc(var(--i,0) * 55ms); }
[data-revelar] .palavra > span { transform: translateY(105%); }
[data-revelar="visivel"] .palavra > span { transform:none; }
.hero__conteudo .palavra > span { animation: subirPalavra .95s var(--mola) both; animation-delay: calc(.7s + var(--i,0) * 70ms); }
@keyframes subirPalavra { from { transform: translateY(105%); } to { transform:none; } }

/* --------------------------------------------------------------------------
   10. MANIFESTO
   -------------------------------------------------------------------------- */
.manifesto { text-align:center; }
.manifesto__titulo { font-size: var(--t-declaracao); line-height:1.02; letter-spacing:-.04em; margin-bottom:2rem; }
.manifesto__corpo { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,24rem),1fr)); gap: var(--bloco-sm) clamp(2rem,4vw,3.5rem); margin-top: var(--bloco); }
.manifesto__corpo p {
  font-size: clamp(1.0625rem,1.3vw,1.15rem); color: var(--tinta); line-height:1.75;
  /* Sem hifenização e sem justificar. As duas decisões andam juntas: coluna
     de ~590px comporta cerca de 58 caracteres, pouco para justificar bem em
     português, que é língua de palavras longas. Medido nesta coluna, o texto
     justificado esticava o espaço entre palavras de 5,2px até 13,3px, e sem
     os hífens para aliviar a quebra ficaria pior ainda. Alinhado à esquerda,
     todo espaço fica em 5,2px, sempre. */
  text-align: left;
}

/* --------------------------------------------------------------------------
   O LEME
   Girar a roda troca o público. A rotação é controlada por --giro, que o JS
   escreve: manter o ângulo numa variável, e não no style do transform, deixa
   a transição do CSS cuidar da suavização sozinha.
   -------------------------------------------------------------------------- */
.leme { margin-top: var(--bloco); display:grid; justify-items:center; gap:1.4rem; }

.leme__roda { width: clamp(9rem, 20vw, 12.5rem); aspect-ratio:1; cursor:grab; touch-action:none; }
.leme__roda:active { cursor:grabbing; }
.leme__roda svg { width:100%; height:100%; display:block; overflow:visible; }
.leme__gira {
  transform: rotate(var(--giro, 0deg));
  transform-origin: 60px 60px;
  transition: transform .75s var(--mola);
}
.leme__roda[data-arrastando="sim"] .leme__gira { transition:none; }  /* o dedo manda direto */

.leme__aro   { fill:none; stroke: var(--agua); stroke-width:2.4; opacity:.55; }
.leme__aro--interno { stroke: var(--latao); opacity:.4; stroke-dasharray:3 6; }
.leme__cubo  { fill: var(--latao); }
.leme__raios path { stroke: var(--marinho); stroke-width:2.6; stroke-linecap:round; opacity:.8; }
.leme__roda:hover .leme__aro { opacity:.8; }

.leme__saida { margin:0; max-width:34rem; text-align:center; min-height:5.2rem; }
.leme__saida strong {
  display:block; font-size:1.0625rem; letter-spacing:.16em; text-transform:uppercase;
  color: var(--agua); margin-bottom:.5rem;
}
.leme__saida span { font-size:1.0625rem; color: var(--tinta); line-height:1.7; }
.leme__saida[data-trocando="sim"] { opacity:0; }
.leme__saida { transition: opacity .28s var(--suavizar); }

.leme__botoes { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; }
.leme__botoes button {
  padding:.55rem 1.1rem; border-radius: var(--pill); cursor:pointer;
  border:1px solid var(--linha); background: var(--branco); color: var(--suave);
  font:inherit; font-size:1rem; font-weight:600;
  transition: background .3s, color .3s, border-color .3s;
}
.leme__botoes button:hover { border-color: var(--agua); color: var(--agua); }
.leme__botoes button[aria-pressed="true"] { background: var(--marinho); border-color: var(--marinho); color:#fff; }

@media (prefers-reduced-motion: reduce) { .leme__gira { transition:none; } }

.placar { display:grid; grid-template-columns: repeat(3,1fr); margin-top: var(--bloco); border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); }
.placar div { padding: clamp(1.5rem,2.8vw,2.2rem) .75rem; text-align:center; position:relative; }
.placar div + div::before { content:""; position:absolute; left:0; top:22%; bottom:22%; width:1px; background: linear-gradient(to bottom, transparent, var(--latao), transparent); }
/* +5px pedidos sobre a escala anterior, números e rótulos */
.placar b { display:block; font-size: clamp(calc(2.4rem + 5px), calc(6vw + 5px), calc(4rem + 5px)); font-weight:600; color: var(--marinho); letter-spacing:-.05em; line-height:1; font-variant-numeric: tabular-nums; }
.placar span { display:block; margin-top:.5rem; font-size: calc(1rem + 5px); color: var(--suave); letter-spacing:.1em; text-transform:uppercase; }

/* --------------------------------------------------------------------------
   10b. FILME DO EVENTO (fachada)
   Mesma mecânica do vídeo da LeaderX, em roupa clara: aqui o fundo é espuma,
   e a moldura preta daquela versão abriria um buraco no meio da seção.
   -------------------------------------------------------------------------- */
.filme {
  position:relative; margin-top: var(--bloco); border-radius: var(--r-lg); overflow:hidden;
  aspect-ratio:16/9; background: var(--marinho); cursor:pointer;
  border:1px solid var(--linha); box-shadow: var(--sombra-2);
}
/* A capa já é 16:9 no arquivo: o QR que vinha na miniatura do YouTube foi
   recortado fora pela esquerda e o enquadramento foi fechado no barco. Sem
   recorte pelo CSS, nenhum byte baixado deixa de aparecer. */
.filme img { width:100%; height:100%; object-fit:cover; transition: transform 1.2s var(--suavizar), opacity .4s; }
.filme:hover img { transform: scale(1.03); opacity:.85; }
.filme iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.filme__play {
  position:absolute; inset:0; z-index:2; display:grid; place-items:center;
  background: radial-gradient(ellipse 65% 65% at 50% 50%, rgba(6,26,46,.18), rgba(6,26,46,.6));
  border:0; cursor:pointer; font-family:inherit; padding:0;
}
.filme__play i {
  width: clamp(4.4rem,8vw,5.6rem); aspect-ratio:1; border-radius:9999px; display:grid; place-items:center;
  background: rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.7);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  transition: transform .5s var(--mola), background .35s;
}
.filme:hover .filme__play i { transform: scale(1.08); background: rgba(255,255,255,.3); }
.filme__play svg { width: clamp(20px,3vw,26px); height:auto; color:#fff; margin-left:.18em; }
.filme__play em {
  position:absolute; left:0; right:0; bottom: clamp(1.1rem,2.6vw,1.8rem);
  font-style:normal; font-size:1rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:#fff;
  text-shadow:0 1px 12px rgba(6,26,46,.6);
}

/* --------------------------------------------------------------------------
   11. CRONOGRAMA
   -------------------------------------------------------------------------- */
.dias { margin-top: var(--bloco); display:grid; gap:1rem; }
.dia { background: var(--branco); border:1px solid var(--linha-2); border-radius: var(--r-lg); overflow:hidden; transition: box-shadow .4s var(--suavizar), border-color .4s; }
.dia:hover { box-shadow: var(--sombra-1); }
.dia[open] { box-shadow: var(--sombra-2); border-color:transparent; }
.dia > summary { display:flex; align-items:center; gap: clamp(.9rem,2vw,1.5rem); padding: clamp(1.3rem,2.6vw,1.9rem) clamp(1.3rem,2.6vw,2.1rem); cursor:pointer; list-style:none; user-select:none; }
.dia > summary::-webkit-details-marker { display:none; }
.dia__placa { position:relative; flex:none; width:4rem; height:4rem; display:grid; place-items:center; border-radius: var(--r-xs); background: var(--nevoa); color: var(--agua); overflow:hidden; transition: background .45s var(--mola), color .45s, box-shadow .45s, transform .55s var(--mola); }
.dia__placa::after { content:""; position:absolute; inset:0; background-image: var(--ruido); opacity:0; mix-blend-mode: overlay; transition: opacity .5s; }
/* A placa passou a carregar sigla e dia do mês, empilhados. O grid do pai
   centraliza uma célula só, então os dois entram na MESMA célula por
   grid-area, senão o segundo criaria uma linha nova e estouraria os 4rem. */
.dia__placa b, .dia__placa i { grid-area:1 / 1; position:relative; z-index:1; }
.dia__placa b { font-size:1rem; font-weight:700; letter-spacing:.06em; transform: translateY(-.62em); }
.dia__placa i { font-style:normal; font-size:1.25rem; font-weight:600; font-variant-numeric: tabular-nums; transform: translateY(.62em); opacity:.72; }
.dia[open] .dia__placa i { opacity:1; }
.dia[open] .dia__placa { background: var(--marinho); color: var(--latao-luz); box-shadow: inset 0 0 0 1px rgba(224,192,137,.45); transform: scale(1.04); }
.dia[open] .dia__placa::after { opacity:.55; }
.dia__titulo { flex:1; min-width:0; }
.dia__titulo h3 { font-size: clamp(1.25rem,2.4vw,1.75rem); }
.dia__titulo span { display:block; margin-top:.2rem; font-size:1rem; color: var(--suave); font-weight:450; }
.dia__conta { flex:none; font-size:1rem; color: var(--suave); padding-right:.4rem; }
@media (max-width:640px) { .dia__conta { display:none; } }
.dia__seta { flex:none; width:2.5rem; height:2.5rem; display:grid; place-items:center; border-radius: var(--pill); border:1px solid var(--linha); color: var(--marinho); transition: transform .5s var(--mola), background .35s, border-color .35s; }
.dia__seta svg { width:19px; height:19px; }
.dia:hover .dia__seta { background: var(--nevoa); border-color:transparent; }
.dia[open] .dia__seta { transform: rotate(180deg); background: var(--nevoa); border-color:transparent; }
.dia__corpo { display:grid; grid-template-rows:0fr; transition: grid-template-rows .55s var(--mola); }
.dia[open] .dia__corpo { grid-template-rows:1fr; }
.dia__corpo > div { overflow:hidden; }
.dia__interno { padding: .25rem clamp(1.3rem,2.6vw,2.1rem) clamp(1.5rem,2.8vw,2.2rem); }
/* desktop: coluna de leitura limitada, mas ancorada à ESQUERDA do cartão,
   acompanhando a régua da linha do tempo */
@media (min-width:901px) { .dia__interno { max-width: 60rem; margin-right: auto; } }

.linha { position:relative; padding-left: clamp(3.1rem,5vw,3.6rem); }
.linha::before { content:""; position:absolute; left: clamp(1.35rem,2.4vw,1.6rem); top:.9rem; bottom:1.4rem; width:2px; background: linear-gradient(to bottom, var(--latao) 0%, rgba(176,138,70,.35) 55%, transparent 100%); border-radius: var(--pill); }
.marco { position:relative; padding:1rem 0 1.35rem; }
.marco__no { position:absolute; left: clamp(-2.5rem,-3.6vw,-2.15rem); top:.95rem; width:2.5rem; height:2.5rem; display:grid; place-items:center; border-radius: var(--pill); background: var(--branco); box-shadow:0 0 0 2px var(--latao), var(--sombra-1); color: var(--marinho); transition: transform .5s var(--mola), box-shadow .4s, background .4s, color .4s; }
.marco__no svg { width:22px; height:22px; }
.marco:hover .marco__no { transform: scale(1.12); background: var(--marinho); color: var(--latao-luz); box-shadow:0 0 0 2px var(--latao-luz), var(--sombra-2); }
.marco__hora { display:inline-flex; align-items:center; padding:.3rem .85rem; margin-bottom:.6rem; border-radius: var(--pill); background: var(--agua-tenue); color: var(--agua); font-size:1rem; font-weight:600; font-variant-numeric: tabular-nums; }
.marco__hora[data-vago="sim"] { background: rgba(93,122,136,.1); color: var(--suave); font-weight:500; }
.marco h4 { font-size: clamp(1.15rem,2vw,1.35rem); margin-bottom:.45rem; }
.marco p { color: var(--tinta); font-size:1rem; max-width:62ch; }
.marco p + p { margin-top:.6rem; }
@media (max-width:560px) {
  .linha { padding-left:2.6rem; } .linha::before { left:.95rem; }
  .marco__no { left:-2.6rem; width:2.1rem; height:2.1rem; } .marco__no svg { width:17px; height:17px; }
}

/* Desktop: linha do tempo à esquerda, com mais respiro entre a régua e o
   conteúdo. Cheguei a testar a versão centrada e ela não funciona: a
   espinha corre atrás do texto e o corta em toda linha. Régua na lateral
   mantém a coluna de leitura limpa. */
@media (min-width:901px) {
  .linha { padding-left: 5.6rem; }
  .linha::before { left: 1.7rem; top: 1.5rem; bottom: 1.8rem; }
  .marco { padding: 1.5rem 0 1.9rem; }
  .marco__no { left: -4.55rem; top: .55rem; width: 3.4rem; height: 3.4rem; }
  .marco__no svg { width: 26px; height: 26px; }
  .marco__hora { margin-bottom: .8rem; }
}

/* --------------------------------------------------------------------------
   12. CARTÕES / LISTAS
   -------------------------------------------------------------------------- */
.grelha { display:grid; gap: clamp(1rem,2vw,1.5rem); margin-top: var(--bloco); }
.grelha--4 { grid-template-columns: repeat(auto-fit, minmax(min(100%,15rem),1fr)); }

.cartao { position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:center; text-align:center; background: var(--branco); border:1px solid var(--linha-2); border-radius: var(--r); padding: clamp(1.8rem,3vw,2.3rem) clamp(1.4rem,2.4vw,1.8rem); transition: transform .5s var(--mola), box-shadow .5s var(--suavizar), border-color .35s; }
.cartao:hover { transform: translateY(-6px); box-shadow: var(--sombra-2); border-color:transparent; }
.cartao::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:0; background: radial-gradient(280px circle at var(--mx,50%) var(--my,0%), rgba(47,184,176,.16), transparent 70%); transition: opacity .45s var(--suavizar); }
.cartao:hover::before { opacity:1; }
.cartao > * { position:relative; z-index:1; }
.cartao h4 { font-size:1.2rem; margin-bottom:.5rem; }
.cartao p { font-size:1rem; color: var(--tinta); max-width:34ch; }
.secao--nevoa .cartao { border-color:transparent; }

.icone { width:4.4rem; height:4.4rem; display:grid; place-items:center; border-radius: var(--r-xs); background: var(--agua-tenue); color: var(--agua); margin-bottom:1.2rem; transition: transform .55s var(--mola), background .4s, color .4s, box-shadow .4s; }
.icone svg { width:34px; height:34px; }
.cartao:hover .icone { transform: translateY(-3px) rotate(-7deg); background: var(--marinho); color: var(--latao-luz); box-shadow:0 0 0 4px rgba(176,138,70,.22); }
.icone svg [data-traco] { stroke-dasharray: var(--dash,100); stroke-dashoffset: var(--dash,100); transition: stroke-dashoffset 1.2s var(--suavizar); }
[data-revelar="visivel"] .icone svg [data-traco] { stroke-dashoffset:0; }

.bordo { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,24rem),1fr)); gap:0 clamp(2rem,5vw,4.5rem); margin-top: var(--bloco); }
.item { display:flex; gap:1.2rem; align-items:flex-start; padding:1.35rem 0; border-bottom:1px solid var(--linha); transition: transform .45s var(--mola); }
.item:hover { transform: translateX(6px); }
.item__no { flex:none; width:3.6rem; height:3.6rem; display:grid; place-items:center; border-radius: var(--pill); border:1px solid rgba(176,138,70,.45); color: var(--latao); background: var(--branco); transition: background .4s, color .4s, border-color .4s, transform .5s var(--mola); }
.item__no svg { width:28px; height:28px; }
.item:hover .item__no { background: var(--marinho); color: var(--latao-luz); border-color: var(--marinho); transform: rotate(-8deg); }
.item h4 { font-size:1.15rem; margin-bottom:.3rem; }
.item p { font-size:1rem; color: var(--tinta); }

/* Selo e nota de item que não está incluído no pacote. Existe porque ler
   "jornada gastronômica" no meio de uma lista de cortesias faz supor que
   está incluso, e a conta chega depois. O aviso precisa vir junto do nome. */
.opcional {
  display:inline-block; vertical-align:middle; margin-left:.55rem;
  padding:.2rem .7rem; border-radius: var(--pill);
  background: rgba(176,138,70,.14); color:#7E6029;   /* latão escurecido: sobre fundo claro o --latão puro não alcança contraste de leitura */
  font-size:1rem; font-weight:600; letter-spacing:.04em; white-space:nowrap;
}
.item p.nota-extra { margin-top:.45rem; color: var(--suave); font-weight:500; }
.item p.nota-extra::before { content:"↳ "; color: var(--latao); }

/* --------------------------------------------------------------------------
   13. CARD DE IATE
   -------------------------------------------------------------------------- */
.iate { margin-top: var(--bloco); border-radius: var(--r-lg); overflow:hidden; background: var(--breu); border:1px solid rgba(224,192,137,.2); }
.iate__capa { position:relative; aspect-ratio:16/8; overflow:hidden; }
.iate__capa img { width:100%; height:100%; object-fit:cover; transition: transform 1.4s var(--mola); }
.iate:hover .iate__capa img { transform: scale(1.04); }
.iate__capa::after { content:""; position:absolute; inset:0; background: linear-gradient(to top, rgba(6,26,46,.9) 0%, rgba(6,26,46,.2) 45%, transparent 70%); }
.iate__nome { position:absolute; left: clamp(1.4rem,3vw,2.5rem); bottom: clamp(1.2rem,3vw,2rem); z-index:2; color:#fff; }
.iate__nome small { display:block; font-size:1rem; letter-spacing:.18em; text-transform:uppercase; color: var(--latao-luz); margin-bottom:.5rem; }
.iate__nome strong { display:block; font-size: clamp(1.6rem,3.6vw,2.6rem); font-weight:600; letter-spacing:-.03em; }
.iate__specs { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(50%,9.5rem),1fr)); gap:1px; background: rgba(224,192,137,.16); }
.spec { background: var(--breu); padding:1.4rem 1.2rem; text-align:center; transition: background .4s; }
.spec:hover { background: var(--marinho-2); }
.spec dt { font-size:1rem; letter-spacing:.1em; text-transform:uppercase; color: rgba(224,192,137,.72); margin-bottom:.45rem; }
.spec dd { margin:0; font-size: clamp(1.5rem,2.4vw,2rem); font-weight:600; color:#fff; letter-spacing:-.03em; font-variant-numeric: tabular-nums; }
.spec dd small { font-size:1rem; font-weight:400; color: rgba(233,242,245,.6); margin-left:.25rem; letter-spacing:0; }

.gaveta { border-top:1px solid rgba(224,192,137,.22); }
.gaveta > summary { display:flex; align-items:center; justify-content:center; gap:.9rem; padding:1.5rem 1rem; cursor:pointer; list-style:none; user-select:none; color: var(--latao-luz); font-size:1.0625rem; font-weight:600; transition: color .3s; }
.gaveta > summary::-webkit-details-marker { display:none; }
.gaveta > summary:hover { color:#fff; }
.gaveta__mais { width:2.4rem; height:2.4rem; display:grid; place-items:center; border-radius: var(--pill); border:1px solid rgba(224,192,137,.45); transition: transform .55s var(--mola), background .35s, border-color .35s; }
.gaveta__mais svg { width:19px; height:19px; }
.gaveta > summary:hover .gaveta__mais { background: rgba(224,192,137,.16); border-color: var(--latao-luz); }
.gaveta[open] .gaveta__mais { transform: rotate(180deg); background: rgba(224,192,137,.2); }
.gaveta[open] .gaveta__abrir { display:none; }
.gaveta__fechar { display:none; }
.gaveta[open] .gaveta__fechar { display:inline; }
.gaveta__corpo { display:grid; grid-template-rows:0fr; transition: grid-template-rows .6s var(--mola); }
.gaveta[open] .gaveta__corpo { grid-template-rows:1fr; }
.gaveta__corpo > div { overflow:hidden; }
.gaveta__interno { padding:0 clamp(1.4rem,3vw,2.5rem) clamp(2rem,4vw,2.8rem); }

.equipa { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,15rem),1fr)); gap: clamp(1.5rem,3vw,2.5rem); padding-top:.5rem; }
.equipa h4 { font-size:1rem; letter-spacing:.14em; text-transform:uppercase; color: var(--latao-luz); margin-bottom:1rem; }
.equipa li { padding:.45rem 0; font-size:1rem; color: rgba(233,242,245,.82); display:flex; align-items:center; gap:.7rem; }
.equipa li::before { content:""; flex:none; width:5px; height:5px; border-radius: var(--pill); background: var(--latao); }

.planta { margin-top: var(--bloco-sm); background:#fff; border-radius: var(--r); padding: clamp(1.4rem,3vw,2.5rem); }
.planta img { margin-inline:auto; }
.planta figcaption { margin-top:1.1rem; text-align:center; font-size:1rem; color: var(--suave); }

/* --------------------------------------------------------------------------
   14. GALERIAS
   -------------------------------------------------------------------------- */
.foto { position:relative; border-radius: var(--r); overflow:hidden; background: var(--nevoa); }
.foto img { width:100%; height:100%; object-fit:cover; transition: transform 1.1s var(--mola); }
.foto:hover img { transform: scale(1.06); }
.foto figcaption { position:absolute; left:1rem; right:1rem; bottom:1rem; z-index:2; padding:.55rem 1rem; border-radius: var(--pill); background: rgba(255,255,255,.9); backdrop-filter: blur(12px); font-size:1rem; font-weight:500; color: var(--marinho); text-align:center; transform: translateY(calc(100% + 1.2rem)); opacity:0; transition: transform .55s var(--mola), opacity .4s var(--suavizar); }
.foto:hover figcaption { transform:none; opacity:1; }

/* QUADRO: 4 fotos alinhadas no desktop, 2 em cima e 2 embaixo no mobile.
   Substitui o bento assimétrico e a grelha escalonada, que deixavam as
   imagens com alturas diferentes e sem eixo comum. */
.quadro { display:grid; grid-template-columns: repeat(4,1fr); gap: clamp(.8rem,1.6vw,1.2rem); margin-top: var(--bloco); }
.quadro .foto { aspect-ratio: 3/4; transition: transform .5s var(--mola), box-shadow .5s var(--suavizar); }
.quadro .foto:hover { transform: translateY(-6px); box-shadow: var(--sombra-2); }
/* Desktop: +10% de altura sobre o 4/7 e gap um pouco menor, que devolve
   largura às quatro fotos sem quebrar a proporção do conjunto. */
@media (min-width:901px) {
  .quadro { gap: clamp(.65rem, 1.1vw, .95rem); }
  .quadro .foto { aspect-ratio: 13/25; }
}
/* mobile: +35% de altura sobre o 3/4 (h = 1,333w → 1,8w) */
@media (max-width:900px) { .quadro .foto { aspect-ratio: 5/9; } }
@media (max-width:900px) { .quadro { grid-template-columns: repeat(2,1fr); } }

.vigias { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,16rem),1fr)); gap: clamp(1.5rem,3.5vw,3rem); margin-top: var(--bloco); }
.vigia { text-align:center; }
.vigia__aro { position:relative; aspect-ratio:1; border-radius:50%; overflow:hidden; box-shadow:0 0 0 2px var(--latao), 0 0 0 10px rgba(176,138,70,.16), var(--sombra-2); transition: transform .6s var(--mola), box-shadow .5s; }
.vigia:hover .vigia__aro { transform: translateY(-7px) scale(1.02); box-shadow:0 0 0 2px var(--latao-luz), 0 0 0 14px rgba(176,138,70,.24), var(--sombra-3); }
.vigia__aro img { width:100%; height:100%; object-fit:cover; transition: transform 1.2s var(--mola); }
.vigia:hover .vigia__aro img { transform: scale(1.08); }
.vigia__aro::after { content:""; position:absolute; inset:0; pointer-events:none; z-index:2; background: linear-gradient(125deg, rgba(255,255,255,.32) 0%, rgba(255,255,255,.06) 28%, transparent 52%); }
.vigia p { margin-top:1rem; font-size:1rem; font-weight:500; color: var(--marinho); }
.secao--fundo .vigia p { color: rgba(233,242,245,.8); }

/* Esteira: um rolo de verdade. Deriva sozinha via JS, aceita arrasto com o
   mouse, rolagem nativa no toque, e clique amplia a foto na lupa. */
.esteira {
  margin-top: var(--bloco); overflow-x:auto; overflow-y:hidden; contain: paint;
  -webkit-mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
          mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
  scrollbar-width: none; cursor: grab;
}
.esteira::-webkit-scrollbar { display:none; }
.esteira[data-pegando="sim"] { cursor: grabbing; }
.esteira__trilho { display:flex; gap: clamp(.8rem,1.6vw,1.2rem); width:max-content; }
.esteira .foto { width: clamp(18rem,30vw,28rem); aspect-ratio:4/3; flex:none; }

/* Lupa: foto ampliada em sobreposição */
.lupa {
  position: fixed; inset: 0; z-index: 150;
  display: grid; place-items: center; padding: clamp(1rem, 4vw, 3rem);
  background: rgba(6,26,46,.9); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  opacity: 0; visibility: hidden;
  transition: opacity .35s var(--suavizar), visibility .35s;
}
.lupa[data-aberta="sim"] { opacity: 1; visibility: visible; }
.lupa figure { margin: 0; max-width: min(100%, 1000px); }
.lupa img {
  max-height: 76vh; width: auto; max-width: 100%; margin-inline: auto;
  border-radius: var(--r); box-shadow: var(--sombra-3);
  transform: scale(.94); transition: transform .35s var(--mola);
}
.lupa[data-aberta="sim"] img { transform: none; }
.lupa figcaption { margin-top: 1rem; text-align: center; color: rgba(255,255,255,.85); font-size: 1rem; }
.lupa__fechar {
  position: absolute; top: clamp(.9rem, 2.5vw, 1.6rem); right: clamp(.9rem, 2.5vw, 1.6rem);
  width: 3rem; height: 3rem; display: grid; place-items: center;
  border-radius: var(--pill); border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.08); color: #fff; cursor: pointer; font-family: inherit; font-size: 1rem;
  transition: background .3s, transform .45s var(--mola);
}
.lupa__fechar:hover { background: rgba(224,192,137,.25); transform: rotate(90deg); }
.lupa__fechar svg { width: 18px; height: 18px; }

/* --------------------------------------------------------------------------
   15. FAIXA DE MAR
   -------------------------------------------------------------------------- */
.mar { position:relative; overflow:hidden; isolation:isolate; min-height: clamp(24rem,48vw,40rem); display:grid; place-items:center; text-align:center; color:#fff; }
.mar__foto { position:absolute; left:0; top:-18%; width:100%; height:136%; object-fit:cover; object-position:88% center; z-index:-2; will-change:transform; }
/* Véu reforçado: a água turquesa é clara demais para texto branco leve. */
.mar__veu {
  position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(ellipse 78% 66% at 50% 50%, rgba(6,26,46,.86) 0%, rgba(6,26,46,.7) 55%, rgba(6,26,46,.62) 100%),
    linear-gradient(to bottom, rgba(6,26,46,.72), rgba(6,26,46,.56) 45%, rgba(6,26,46,.8));
}
.mar__conteudo { padding: clamp(3rem,7vw,4.5rem) var(--gutter); width: min(100% - (var(--gutter) * 2), var(--largura)); }
.mar__conteudo h2 { color:#fff; font-size: clamp(1.9rem,4.4vw,3.4rem); }
.mar__conteudo p { margin-top:1.3rem; color: rgba(255,255,255,.9); font-size: clamp(1.0625rem,1.4vw,1.25rem); max-width:70ch; margin-inline:auto; }

/* --------------------------------------------------------------------------
   16. MESA
   -------------------------------------------------------------------------- */
/* cabeçalho da mesa: título à esquerda, louça animada à direita */
.mesa__topo { display:grid; grid-template-columns: 1.35fr .65fr; gap: clamp(1.5rem,4vw,3.5rem); align-items:center; }
@media (max-width:900px) { .mesa__topo { grid-template-columns:1fr; } }

/* Louça: cloche de serviço. A cada ciclo de 7s a tampa levanta, o vapor
   escapa do prato e os talheres se inclinam, como numa apresentação de
   mesa. Os traços se desenham na primeira revelação. */
.louca { width: min(100%, 21rem); margin-inline:auto; color: var(--agua); }
.louca [data-traco] { stroke-dasharray: var(--dash,300); stroke-dashoffset: var(--dash,300); transition: stroke-dashoffset 1.6s var(--suavizar); transition-delay: var(--d,0ms); }
[data-revelar="visivel"] .louca [data-traco] { stroke-dashoffset:0; }
.louca .anel { transform-box: fill-box; transform-origin: center; animation: gira 30s linear infinite; }
@keyframes gira { to { transform: rotate(360deg); } }

.louca__tampa { transform-box: fill-box; transform-origin: 12% 100%; animation: tampa 7s var(--mola) infinite; }
@keyframes tampa {
  0%,14%   { transform: translate(0,0) rotate(0); }
  27%,52%  { transform: translate(16px,-46px) rotate(8deg); }
  66%,100% { transform: translate(0,0) rotate(0); }
}
.louca .vapor { transform-box: fill-box; transform-origin: 50% 100%; opacity:0; animation: vapor 7s ease-in-out infinite; }
.louca .v2 { animation-delay:.4s; }
.louca .v3 { animation-delay:.8s; }
@keyframes vapor {
  0%,24%   { opacity:0; transform: translateY(8px) scaleY(.6); }
  32%      { opacity:.6; }
  48%      { opacity:.35; transform: translateY(-8px) scaleY(1.1); }
  60%,100% { opacity:0; transform: translateY(-16px) scaleY(1.2); }
}
.louca__garfo, .louca__faca { transform-box: fill-box; transform-origin: 50% 90%; }
.louca__garfo { animation: brindeE 7s ease-in-out infinite; }
.louca__faca  { animation: brindeD 7s ease-in-out infinite; }
@keyframes brindeE { 0%,16%,68%,100% { transform: rotate(0); } 30%,52% { transform: rotate(-9deg); } }
@keyframes brindeD { 0%,16%,68%,100% { transform: rotate(0); } 30%,52% { transform: rotate(9deg); } }
@media (max-width:900px) { .louca { width:min(100%,15rem); margin-top: var(--bloco-sm); } }

.prato { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,20rem),1fr)); gap: clamp(1.5rem,4vw,4rem); align-items:center; margin-top: var(--bloco); }
/* margin-inline:0 e não auto. Com auto, o max-width de 560px fazia a foto
   flutuar no meio da própria coluna, que é mais larga que isso no desktop, e
   ela deixava de bater com a margem esquerda do texto da seção. Numa
   composição de duas colunas a foto tem de encostar na mesma linha vertical
   do resto. No celular, com uma coluna só, centralizar volta a fazer sentido. */
.prato__foto { border-radius: var(--r-lg); overflow:hidden; aspect-ratio:638/737; max-width:560px; margin-inline:0; width:100%; }
@media (max-width:820px) { .prato__foto { margin-inline:auto; } }
.prato__foto img { width:100%; height:100%; object-fit:cover; transition: transform 1.4s var(--mola); }
.prato:hover .prato__foto img { transform: scale(1.04); }
.prato h3 { font-size: clamp(1.6rem,3.2vw,2.4rem); margin-bottom:1rem; }
.prato p { font-size:1.0625rem; color: var(--tinta); }
.prato p + p { margin-top:.85rem; }

.fichas { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.5rem; }
.ficha { display:inline-flex; align-items:center; gap:.45rem; padding:.45rem 1rem; border-radius: var(--pill); background: var(--nevoa); color: var(--marinho); font-size:1rem; font-weight:500; transition: background .35s, color .35s, transform .4s var(--mola); }
.ficha::before { content:""; width:5px; height:5px; border-radius: var(--pill); background: var(--latao); }
.ficha:hover { background: var(--marinho); color:#fff; transform: translateY(-2px); }
@media (max-width:700px) { .fichas { justify-content:center; } }

/* --------------------------------------------------------------------------
   17. AVISO / BOTÕES
   -------------------------------------------------------------------------- */
/* NOTA DE BORDO: o único cartão escuro dentro de uma seção clara, e chove
   dentro dele. O contraste invertido é o diferencial: numa página de fundos
   claros, este bloco para o olho sozinho, sem precisar de modal. */
/* Deitado e na largura cheia da seção. Antes era uma caixa estreita e
   centralizada de 46rem, que flutuava no meio de um container de 1400px e
   não conversava com a margem de nada ao redor.

   O layout é feito só por grid, sem mexer no HTML: o ícone ocupa a coluna 1
   atravessando as duas linhas, o selo e o texto empilham na coluna 2. */
.aviso {
  position:relative; isolation:isolate; overflow:hidden;
  display:grid; grid-template-columns:auto 1fr; align-items:center;
  column-gap: clamp(1.5rem,3.5vw,3.25rem); row-gap:.9rem;
  text-align:left;
  margin: var(--bloco-sm) 0 0;
  padding: clamp(2rem,3.4vw,3.1rem) clamp(1.6rem,3.2vw,3.1rem);
  border-radius: var(--r);
  background: linear-gradient(150deg, var(--marinho) 0%, var(--breu) 62%, #0d3a4a 130%);
  border:1px solid rgba(224,192,137,.28);
  box-shadow: var(--sombra-2);
}
/* chuva: riscos diagonais atravessando o cartão sem parar */
.aviso::before {
  content:""; position:absolute; inset:-20%; z-index:0; pointer-events:none;
  background-image: repeating-linear-gradient(101deg,
    transparent 0 8px, rgba(206,228,236,.16) 8px 9px, transparent 9px 17px);
  animation: chuvisco 1.15s linear infinite;
}
@keyframes chuvisco { to { transform: translate3d(-34px, 170px, 0); } }
/* névoa por cima, para a chuva não competir com a leitura */
.aviso::after {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background: radial-gradient(ellipse 74% 66% at 50% 52%, rgba(6,26,46,.72), transparent 78%);
}
.aviso > * { position:relative; z-index:1; }

.aviso__icone {
  grid-row:1 / 3; grid-column:1; align-self:center;
  width: clamp(5.5rem, 9vw, 8.5rem); aspect-ratio:1; display:grid; place-items:center;
  border-radius: var(--pill); color: var(--latao-luz);
  background: rgba(224,192,137,.12);
  box-shadow: inset 0 0 0 1px rgba(224,192,137,.4);
}
.aviso__icone svg { width:56%; height:56%; overflow:visible; }
/* Nuvem montada com círculos e uma base arredondada, preenchida: a versão
   anterior era um contorno fino de path único e ficava esquálida. */
.aviso__icone .gota { animation: chove 1.5s ease-in infinite; }
.aviso__icone .gota:nth-of-type(2) { animation-delay:.32s; }
.aviso__icone .gota:nth-of-type(3) { animation-delay:.64s; }
@keyframes chove {
  0%   { transform: translateY(-4px); opacity:0; }
  25%  { opacity:1; }
  70%  { opacity:1; }
  100% { transform: translateY(7px); opacity:0; }
}

.aviso__selo {
  font-size:1rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
  color: var(--latao-luz);
  display:inline-flex; align-items:center; gap:.7rem;
}
.aviso__selo { grid-column:2; }
.aviso__selo::after { content:""; width:22px; height:1px; background: var(--latao); }

.aviso strong { color:#fff; font-weight:600; }
.aviso p { grid-column:2; font-size: var(--t-corpo); max-width:64ch; color: rgba(233,242,245,.82); line-height:1.65; }

/* No celular volta a empilhar e a centralizar: deitado, a coluna de texto
   ficaria estreita demais ao lado do ícone. */
@media (max-width:760px) {
  .aviso { grid-template-columns:1fr; justify-items:center; text-align:center; row-gap:1.15rem; }
  .aviso__icone { grid-row:auto; grid-column:1; }
  .aviso__selo, .aviso p { grid-column:1; }
  .aviso__selo::before { content:""; width:22px; height:1px; background: var(--latao); }
}

.botao { display:inline-flex; align-items:center; gap:.8rem; padding:1.05rem 1.5rem 1.05rem 2rem; border-radius: var(--pill); background: var(--marinho); color:#fff; font-size:1.0625rem; font-weight:600; box-shadow: var(--sombra-1); transition: transform .45s var(--mola), box-shadow .45s var(--suavizar), background .35s; }
.botao:hover { transform: translateY(-4px); box-shadow: var(--sombra-3); background: var(--agua); }
.botao__seta { width:2.1rem; height:2.1rem; display:grid; place-items:center; border-radius: var(--pill); background: rgba(255,255,255,.18); transition: transform .5s var(--mola), background .35s; }
.botao__seta svg { width:16px; height:16px; }
.botao:hover .botao__seta { transform: translateX(4px); background: rgba(224,192,137,.4); }
.botao--claro { background:#fff; color: var(--marinho); }
.botao--claro .botao__seta { background: var(--agua-tenue); color: var(--agua); }
.botao--claro:hover { background: var(--latao-luz); color: var(--breu); }

/* --------------------------------------------------------------------------
   17b. SEÇÃO LEADERX
   Tokens extraídos do site real deles (components/global.css): ouro #BFA15F,
   preto #080808, superfícies #111/#181818, branco quente #F5F3EF, DM Sans e
   DM Mono, raios de 12 a 24px e as sombras --sh-gold/--sh-card.

   Um desvio consciente: lá os rótulos em DM Mono são 12px. Aqui subiriam a
   16px por causa da regra de piso deste site. Mantive peso, caixa alta e
   tracking, que é o que cria a identidade, e só ajustei o tamanho.

   A seção NASCE FECHADA: só o logo e o convite aparecem. Ao abrir, o
   conteúdo cresce via grid-template-rows, sem medir altura em JS.
   -------------------------------------------------------------------------- */
:root {
  --lx-ouro:       #BFA15F;
  --lx-ouro-claro: #D4AF7A;
  --lx-ouro-fraco: rgba(191,161,95,.10);
  --lx-ouro-borda: rgba(191,161,95,.32);
  --lx-preto:      #080808;
  --lx-preto-2:    #0D0D0D;
  --lx-sup:        #111111;
  --lx-sup-2:      #181818;
  --lx-borda:      rgba(255,255,255,.07);
  --lx-borda-2:    rgba(255,255,255,.12);
  --lx-texto:      #F5F3EF;
  --lx-texto-dim:  rgba(245,243,239,.55);
  --lx-texto-soft: #A8A39A;
  --lx-sombra-ouro: 0 8px 28px -4px rgba(191,161,95,.35);
  --lx-sombra-card: 0 4px 24px -2px rgba(0,0,0,.55);
  --lx-sans: 'DM Sans', 'Inter', ui-sans-serif, system-ui, sans-serif;
  --lx-mono: 'DM Mono', ui-monospace, 'Cascadia Mono', Consolas, monospace;
}

.leaderx {
  background: var(--lx-preto);
  color: var(--lx-texto-dim);
  font-family: var(--lx-sans);
}
.leaderx h2, .leaderx h3, .leaderx h4, .leaderx strong { color: var(--lx-texto); font-family: var(--lx-sans); }
.leaderx .titulo { letter-spacing:-.02em; }

/* rótulo no padrão .section-label deles */
.lx__rotulo {
  display:inline-block; font-family: var(--lx-mono);
  font-size:1rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase;
  color: var(--lx-ouro); margin-bottom:1.25rem;
}

/* botão no padrão .btn-primary deles: preto sobre ouro, mono, pílula */
.lx__botao {
  display:inline-flex; align-items:center; justify-content:center; gap:.65rem;
  font-family: var(--lx-mono); font-size:1rem; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase;
  color: var(--lx-preto); background: var(--lx-ouro);
  padding:1.05rem 2.25rem; border-radius:9999px; border:0; cursor:pointer;
  box-shadow: var(--lx-sombra-ouro);
  transition: transform .25s cubic-bezier(.4,0,.2,1), background .25s, box-shadow .25s;
}
.lx__botao:hover { background: var(--lx-ouro-claro); transform: translateY(-2px); box-shadow:0 12px 36px -4px rgba(191,161,95,.5); }
.lx__botao svg { width:17px; height:17px; }

/* ---------- PORTAL: o estado fechado ----------
   O anterior era só uma caixa com logo e um link. Aqui ele ganha os gatilhos
   que fazem alguém querer clicar: um facho de ouro girando na borda, malha
   de pontos ao fundo, cantoneiras, três números de prévia (dá motivo para
   entrar), botão de verdade e a lista do que tem dentro. */
.lx__portal {
  position:relative; overflow:hidden; isolation:isolate;
  display:block; width:100%; border:0; padding:1px;      /* 1px = a borda viva */
  border-radius:24px; cursor:pointer; font-family: var(--lx-sans);
  background: var(--lx-ouro-borda);
  transition: transform .5s cubic-bezier(.22,1,.36,1), box-shadow .5s;
}
.lx__portal:hover { transform: translateY(-4px); box-shadow: 0 22px 60px -18px rgba(191,161,95,.4); }

/* facho de ouro que dá a volta na moldura */
.lx__portal::before {
  content:""; position:absolute; left:50%; top:50%; z-index:0;
  width:190%; aspect-ratio:1; translate:-50% -50%;
  background: conic-gradient(from 0deg, transparent 0deg, var(--lx-ouro) 26deg, transparent 62deg, transparent 360deg);
  animation: lxGirar 7s linear infinite;
  opacity:.85;
}
@keyframes lxGirar { to { rotate: 360deg; } }

.lx__portal__miolo {
  position:relative; z-index:1; display:block; border-radius:23px;
  padding: clamp(3.2rem,8vw,5.5rem) clamp(1.4rem,4vw,3rem);
  text-align:center;
  background:
    radial-gradient(ellipse 70% 90% at 50% 35%, rgba(191,161,95,.12), transparent 68%),
    linear-gradient(160deg, var(--lx-sup) 0%, var(--lx-preto) 72%);
}
/* malha de pontos discreta, ecoando a textura do resto do site */
.lx__portal__miolo::before {
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background-image: radial-gradient(circle, rgba(191,161,95,.16) 1px, transparent 1.2px);
  background-size: 26px 26px;
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 45%, #000 20%, transparent 100%);
          mask-image: radial-gradient(ellipse 80% 70% at 50% 45%, #000 20%, transparent 100%);
}
/* varredura ao passar o mouse */
.lx__portal__miolo::after {
  content:""; position:absolute; top:0; bottom:0; left:-60%; width:45%; border-radius:inherit;
  background: linear-gradient(105deg, transparent, rgba(191,161,95,.2), transparent);
  transform: skewX(-14deg); transition: left .95s cubic-bezier(.22,1,.36,1); pointer-events:none;
}
.lx__portal:hover .lx__portal__miolo::after { left:130%; }

/* cantoneiras em ouro, mesma assinatura das marcas de corte do hero */
.lx__cantos { position:absolute; inset: clamp(.9rem,2vw,1.5rem); pointer-events:none; z-index:2; }
.lx__cantos i { position:absolute; width: clamp(18px,2.6vw,28px); height: clamp(18px,2.6vw,28px); opacity:.7; }
.lx__cantos i::before, .lx__cantos i::after { content:""; position:absolute; background: var(--lx-ouro); }
.lx__cantos i::before { width:100%; height:1px; }
.lx__cantos i::after { width:1px; height:100%; }
.lx__cantos .ce { top:0; left:0; }
.lx__cantos .cd { top:0; right:0; } .lx__cantos .cd::before{right:0} .lx__cantos .cd::after{right:0}
.lx__cantos .be { bottom:0; left:0; } .lx__cantos .be::before{bottom:0} .lx__cantos .be::after{bottom:0}
.lx__cantos .bd { bottom:0; right:0; } .lx__cantos .bd::before{bottom:0;right:0} .lx__cantos .bd::after{bottom:0;right:0}

/* +50% sobre o clamp(3.4rem,8vw,5.4rem) anterior */
.lx__portal img { height: clamp(5.1rem,12vw,8.1rem); width:auto; margin:0 auto; position:relative; z-index:2; }

.lx__portal__olho {
  display:block; margin-top: clamp(1.4rem,3vw,2rem);
  font-family: var(--lx-mono); font-size:1rem; font-weight:500;
  letter-spacing:.24em; text-transform:uppercase; color: var(--lx-texto-soft);
  position:relative; z-index:2;
}

/* prévia: três números que dão motivo para clicar */
.lx__previa {
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap: clamp(.8rem,2.5vw,2rem); margin-top: clamp(1.4rem,3vw,2rem);
  position:relative; z-index:2;
}
.lx__previa span { display:inline-flex; align-items:baseline; gap:.4rem; color: var(--lx-texto); font-size:1rem; }
.lx__previa b { font-size: clamp(1.3rem,2.4vw,1.8rem); font-weight:700; color: var(--lx-ouro); letter-spacing:-.02em; }
.lx__previa i { width:1px; height:1.4rem; background: var(--lx-ouro-borda); display:inline-block; }
@media (max-width:520px) { .lx__previa i { display:none; } }

.lx__portal__cta {
  display:inline-flex; align-items:center; gap:.7rem;
  margin-top: clamp(1.8rem,3.5vw,2.6rem); position:relative; z-index:2;
  font-family: var(--lx-mono); font-size:1rem; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase;
  color: var(--lx-preto); background: var(--lx-ouro);
  padding:1.05rem 2.2rem; border-radius:9999px;
  box-shadow: var(--lx-sombra-ouro);
  transition: background .3s, gap .35s cubic-bezier(.22,1,.36,1);
}
.lx__portal:hover .lx__portal__cta { background: var(--lx-ouro-claro); gap:1.1rem; }
.lx__portal__cta svg { width:16px; height:16px; animation: lxAcena 2.2s ease-in-out infinite; }
@keyframes lxAcena { 0%,100%{transform:translateY(0)} 50%{transform:translateY(3px)} }

.lx__portal__dentro {
  display:block; margin-top: clamp(1.2rem,2.5vw,1.6rem); position:relative; z-index:2;
  font-size:1rem; color: var(--lx-texto-soft); font-family: var(--lx-sans);
}
.lx[data-aberto="sim"] .lx__portal { display:none; }

/* ---------- conteúdo revelado ---------- */
.lx__miolo { display:grid; grid-template-rows:0fr; transition: grid-template-rows .9s cubic-bezier(.22,1,.36,1); }
.lx[data-aberto="sim"] .lx__miolo { grid-template-rows:1fr; }
.lx__miolo > div { overflow:hidden; }
/* cada bloco sobe em cascata quando o portal abre */
.lx__miolo .sobe { opacity:0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.22,1,.36,1); }
.lx[data-aberto="sim"] .lx__miolo .sobe { opacity:1; transform:none; }
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(1){transition-delay:.18s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(2){transition-delay:.28s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(3){transition-delay:.38s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(4){transition-delay:.48s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(5){transition-delay:.58s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(6){transition-delay:.68s}
.lx[data-aberto="sim"] .lx__miolo .sobe:nth-child(7){transition-delay:.78s}

.lx__marca { height: clamp(2.6rem,5vw,3.4rem); width:auto; margin:0 auto 1.6rem; }
.lx__entrada { font-size: clamp(1.0625rem,1.35vw,1.15rem); color: var(--lx-texto-dim); max-width:62ch; margin-inline:auto; line-height:1.7; }

/* números */
/* --------------------------------------------------------------------------
   PROVA DE MARCA (composição editorial)
   Três números altos carregam a prova; os outros nove descem para uma lista
   de fios finos. Nenhuma caixa: a hierarquia vem de escala, peso e espaço.

   O peso 300 nos números grandes é a decisão que mais importa aqui. O mesmo
   número em 700 vira dashboard imediatamente; em 300, com corpo alto e
   entreletra negativa, lê como capa de revista.
   -------------------------------------------------------------------------- */
.lx__prova { margin-top: var(--bloco); }

.lx__prova__alto {
  display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,14rem),1fr));
  gap: clamp(2rem,5vw,4rem);
  padding-bottom: clamp(2.5rem,5vw,4rem);
  border-bottom:1px solid var(--lx-borda);
}
.lx__prova__alto b {
  display:block; font-size: clamp(3.25rem, 7vw, 6rem); font-weight:300;
  color: var(--lx-texto); letter-spacing:-.045em; line-height:.88;
  font-variant-numeric: tabular-nums;
}
.lx__prova__alto b small {
  font-size: max(1rem, .3em); font-weight:400; color: var(--lx-ouro);
  letter-spacing:0; margin-left:.1em;
}
.lx__prova__alto > div > span {
  display:block; margin-top:1.1rem;
  font-family: var(--lx-mono); font-size: var(--t-micro);
  letter-spacing: var(--entreletra-micro); text-transform:uppercase;
  color: var(--lx-texto-soft);
}

/* 24rem de mínimo, não 17rem. Com 17 cabiam quatro colunas no desktop e a
   legenda quebrava em duas linhas: "ENCONTROS DESDE / 2015". Aí o número,
   que se alinha pela primeira linha, parecia flutuar acima do texto. Com
   três colunas cada legenda cabe numa linha e a base bate com o número. */
.lx__prova__baixo {
  display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,24rem),1fr));
  column-gap: clamp(2rem,4vw,4rem);
}
.lx__prova__item {
  display:flex; align-items:baseline; gap:1.1rem;
  padding: clamp(.95rem,1.9vw,1.3rem) 0;
  border-bottom:1px solid var(--lx-borda);
}
.lx__prova__item b {
  flex:none; min-width:4.5ch; text-align:right;   /* alinha a coluna de números */
  font-size: var(--t-sub); font-weight:400; color: var(--lx-texto);
  letter-spacing:-.02em; line-height:1; font-variant-numeric: tabular-nums;
}
.lx__prova__item b small { font-size: max(1rem,.5em); color: var(--lx-ouro); margin-left:.08em; }
.lx__prova__item > span {
  font-family: var(--lx-mono); font-size: var(--t-micro); line-height:1.35;
  letter-spacing:.08em; text-transform:uppercase; color: var(--lx-texto-soft);
}

@media (max-width:640px) {
  .lx__prova__alto { gap:2.25rem; text-align:center; }
  /* No celular a linha inteira vem para o centro, para o bloco concordar com
     o resto da seção, que é toda centralizada ali.

     A coluna fixa do número sai junto: mantida, ela reservaria uma faixa
     vazia à esquerda de cada par e o "centro" ficaria torto. O preço da
     escolha é que os números deixam de formar uma coluna reta entre si,
     porque cada par se centra conforme o tamanho da própria legenda. */
  .lx__prova__item { justify-content:center; gap:.75rem; }
  .lx__prova__item b { min-width:0; text-align:center; }
  .lx__prova__item > span { text-align:left; }
}

/* texto em bloco único, coluna de leitura confortável e centrada */
.lx__texto { max-width:86ch; margin: var(--bloco) auto 0; }
/* Mesma decisão do manifesto: sem hífen e sem justificar. Aqui pesa ainda
   mais, porque este bloco é texto claro sobre preto, e espaço esticado abre
   rios brancos que o contraste alto evidencia. */
/* Centralizado e mais largo no desktop. Coluna de 74ch alinhada à esquerda
   dentro de um bloco centralizado deixava um vazio assimétrico à direita.
   No celular volta à esquerda: texto corrido centralizado em coluna estreita
   quebra o ritmo de leitura linha a linha. */
.lx__texto p { font-size: var(--t-corpo); line-height:1.8; color: var(--lx-texto-dim); text-align:center; }
@media (max-width:760px) { .lx__texto p { text-align:left; } }
.lx__texto p + p { margin-top:1.3rem; }

/* vídeo com fachada */
.lx__video {
  position:relative; margin-top: var(--bloco); border-radius:20px; overflow:hidden;
  aspect-ratio:16/9; background:#000; cursor:pointer;
  border:1px solid var(--lx-ouro-borda); box-shadow: var(--lx-sombra-card);
}
.lx__video img { width:100%; height:100%; object-fit:cover; transition: transform 1.2s cubic-bezier(.22,1,.36,1), opacity .4s; }
.lx__video:hover img { transform: scale(1.03); opacity:.8; }
.lx__video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.lx__play {
  position:absolute; inset:0; z-index:2; display:grid; place-items:center;
  background: radial-gradient(ellipse 60% 60% at 50% 50%, rgba(8,8,8,.25), rgba(8,8,8,.65));
  border:0; cursor:pointer; font-family:inherit; padding:0;
}
.lx__play i {
  width: clamp(4.4rem,8vw,5.6rem); aspect-ratio:1; border-radius:9999px; display:grid; place-items:center;
  background: rgba(191,161,95,.18); border:1px solid var(--lx-ouro);
  backdrop-filter: blur(8px);
  transition: transform .5s cubic-bezier(.22,1,.36,1), background .35s;
}
.lx__video:hover .lx__play i { transform: scale(1.08); background: rgba(191,161,95,.34); }
.lx__play svg { width:clamp(20px,3vw,26px); height:auto; color: var(--lx-texto); margin-left:.18em; }
.lx__play em {
  position:absolute; left:0; right:0; bottom: clamp(1.1rem,2.6vw,1.8rem);
  font-style:normal; font-family: var(--lx-mono); font-size:1rem; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase; color: var(--lx-texto);
}

/* equipe */
.lx__equipe { display:grid; margin-top: var(--bloco); }

/* Fileira de capa: os dois idealizadores, lado a lado e emoldurados.
   Retrato em 13rem contra os 7rem da fileira de baixo, quase o dobro. */
.lx__equipe--capa {
  grid-template-columns: repeat(auto-fit, minmax(min(100%,22rem),1fr));
  gap: clamp(1.25rem,2.5vw,2rem);
  max-width: 60rem; margin-inline:auto;
}
/* Fileira de apoio: sem moldura e sem fundo. É o que faz a moldura dos dois
   de cima significar alguma coisa; com caixa em todos, ninguém se destaca. */
.lx__equipe--resto {
  grid-template-columns: repeat(auto-fit, minmax(min(100%,13rem),1fr));
  gap: clamp(1.25rem,3vw,2.5rem);
  margin-top: clamp(2.25rem,4.5vw,3.5rem);
  max-width: 58rem; margin-inline:auto;
}
.pessoa {
  display:flex; flex-direction:column; align-items:center; text-align:center;
  transition: transform .4s cubic-bezier(.22,1,.36,1), border-color .35s, background .35s;
}
.pessoa--capa {
  padding: clamp(2.2rem,3.6vw,3rem) clamp(1.2rem,2.4vw,2rem);
  border-radius:20px; background: var(--lx-sup); border:1px solid var(--lx-borda);
}
.pessoa--resto { padding: 0 .5rem; }
.pessoa:hover { transform: translateY(-5px); border-color: var(--lx-ouro-borda); background: var(--lx-sup-2); }
/* Idealizador e co-idealizador. O destaque não é só a moldura dourada: a
   foto deles é ~40% maior que a dos demais, o que cria a hierarquia antes
   mesmo de alguém ler o selo. */
.pessoa[data-ancora="sim"] { border-color: var(--lx-ouro-borda); background: linear-gradient(160deg,var(--lx-sup-2),var(--lx-sup)); }
.pessoa--capa .pessoa__foto,
.pessoa--capa .pessoa__sigla { width: clamp(9rem, 13vw, 13rem); height: clamp(9rem, 13vw, 13rem); }
/* Monograma: mesmo diâmetro da foto, para a fileira não desalinhar caso
   alguém entre na equipe sem retrato. */
.pessoa__sigla {
  width:7rem; height:7rem; display:grid; place-items:center; border-radius:9999px;
  border:1px solid var(--lx-ouro); color: var(--lx-ouro);
  font-family: var(--lx-mono); font-size:1.4rem; font-weight:500; letter-spacing:.04em;
  margin-bottom:1.15rem; transition: background .35s, color .35s;
}
.pessoa:hover .pessoa__sigla { background: var(--lx-ouro); color: var(--lx-preto); }
.pessoa strong { display:block; font-size:1.0625rem; font-weight:700; }
.pessoa--capa strong { font-size: clamp(1.25rem,1.9vw,1.6rem); letter-spacing:-.01em; }
.pessoa > span { display:block; margin-top:.4rem; font-size:1rem; color: var(--lx-texto-soft); }

/* Organização de cada pessoa.
   Sem ela, "Presidente Global" fica solto: presidente de quê? O logo responde
   sem gastar mais uma linha de texto.

   As duas marcas têm proporções muito diferentes, 3,8:1 a da LeaderX contra
   7,2:1 a do Instituto Ferrarezi. Igualar a ALTURA das duas faria a segunda
   ficar quase o dobro de larga e roubar o cartão, então cada uma é limitada
   pela dimensão que a segura: a LeaderX pela altura, a Ferrarezi pela largura.
   Assim as duas ocupam área parecida. */
/* Organização como texto, não mais como logo. Dois logos de proporções
   muito diferentes no mesmo lugar obrigavam a regras separadas para cada um
   e nunca ficavam com o mesmo peso visual. Palavra resolve isso sozinha.

   Fica mais apagada que o selo de propósito: o selo (Idealizador) tem
   moldura e é a informação principal do cartão; a organização é contexto. */
.pessoa__org {
  margin-top:.85rem;
  font-family: var(--lx-mono); font-size: var(--t-micro); font-weight:500;
  letter-spacing:.24em; text-transform:uppercase;
  color: var(--lx-texto-soft); opacity:.75;
  transition: opacity .35s, color .35s;
}
.pessoa:hover .pessoa__org { opacity:1; color: var(--lx-ouro); }
.pessoa .marcador {
  display:inline-block; margin-top:.8rem; padding:.3rem .8rem; border-radius:9999px;
  font-family: var(--lx-mono); font-size:1rem; letter-spacing:.1em; text-transform:uppercase;
  background: var(--lx-ouro-fraco); color: var(--lx-ouro); border:1px solid var(--lx-ouro-borda);
}

/* patrocinadores e apoiadores */
.lx__quem { margin-top: var(--bloco); }
.lx__quem h4 { font-family: var(--lx-mono); font-size:1rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color: var(--lx-ouro); margin-bottom:1.2rem; text-align:center; }
.lx__quem + .lx__quem { margin-top: var(--bloco-sm); }
.logos { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,13rem),1fr)); gap: clamp(.9rem,1.8vw,1.3rem); }
.logo-vaga {
  aspect-ratio:16/7; border-radius:12px; display:grid; place-items:center; gap:.4rem;
  border:1px dashed var(--lx-ouro-borda);
  background: repeating-linear-gradient(45deg, transparent, transparent 6px, rgba(191,161,95,.05) 6px, rgba(191,161,95,.05) 12px);
  color: var(--lx-texto-soft); font-size:1rem; text-align:center; padding:1rem;
}
.logo-vaga b { display:block; font-family: var(--lx-mono); color: var(--lx-ouro); font-weight:500; letter-spacing:.14em; text-transform:uppercase; }

/* ---- vindos do painel ----
   Foto de pessoa: mesmo diâmetro do monograma, para a fileira não desalinhar
   quando parte da equipe tem foto e parte não. */
.pessoa__foto {
  width:7rem; height:7rem; border-radius:9999px; overflow:hidden; margin-bottom:1.15rem;
  box-shadow:0 0 0 1px var(--lx-ouro); background: var(--lx-sup-2);
  transition: box-shadow .35s;
}
.pessoa__foto img { width:100%; height:100%; object-fit:cover; display:block; }
.pessoa:hover .pessoa__foto { box-shadow:0 0 0 2px var(--lx-ouro-claro); }

/* Logo de patrocinador: os arquivos chegam em formatos e proporções
   imprevisíveis, então a caixa é fixa e a imagem se ajusta por contain,
   sem nunca cortar nem esticar a marca de ninguém. */
.logo-marca {
  aspect-ratio:16/7; border-radius:12px; display:grid; place-items:center; padding:1.1rem;
  background: var(--lx-sup); border:1px solid var(--lx-borda);
  transition: border-color .35s, background .35s, transform .4s cubic-bezier(.22,1,.36,1);
  text-decoration:none;
}
a.logo-marca:hover { border-color: var(--lx-ouro-borda); background: var(--lx-sup-2); transform: translateY(-3px); }
.logo-marca img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.logo-marca--texto {
  font-family: var(--lx-mono); font-size:1rem; letter-spacing:.1em; text-transform:uppercase;
  color: var(--lx-texto-dim); text-align:center;
}

@media (max-width:640px) {
  .pessoa__foto { width:4.2rem; height:4.2rem; }
  .pessoa[data-ancora="sim"] .pessoa__foto,
  .pessoa[data-ancora="sim"] .pessoa__sigla { width:5.6rem; height:5.6rem; }
}

.lx__fio { width:76px; height:1px; margin:0 auto; background: linear-gradient(to right, transparent, var(--lx-ouro), transparent); }

@media (max-width:640px) {
  .lx__equipe  { grid-template-columns: repeat(2, 1fr); }
  .pessoa { padding-inline:.85rem; }
  .pessoa strong { font-size:1rem; }
  .pessoa__sigla { width:4.2rem; height:4.2rem; font-size:1.2rem; }
  /* O marcador tem de ficar em 16px pela regra do site, mas caixa alta com
     tracking de .1em ainda estoura o cartão de ~160px do celular: o maior
     selo hoje é "CO-IDEALIZADOR". Aqui ele vira linha de texto simples,
     mesmo tamanho e bem menos largura, com line-height folgado para poder
     quebrar em duas linhas se algum selo futuro for mais longo. */
  .pessoa .marcador {
    text-transform:none; letter-spacing:0; padding:.25rem .6rem;
    line-height:1.35; margin-top:.6rem;
  }
  /* "CLIQUE PARA ABRIR" em mono 16px com tracking .18em pede ~282px, e o
     miolo do portal só tem ~291px no celular. Afrouxa o tracking e o
     padding para o botão não encostar nas bordas. */
  .lx__portal__cta { letter-spacing:.1em; padding-inline:1.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .lx__miolo { transition:none; }
  .lx__miolo .sobe { opacity:1; transform:none; transition:none; }
  .lx__portal::before, .lx__portal__miolo::after, .lx__portal__cta svg { animation:none; }
  /* sem o facho girando, a moldura precisa de cor própria */
  .lx__portal { background: var(--lx-ouro-borda); }
}

/* --------------------------------------------------------------------------
   18. FECHO / RODAPÉ
   -------------------------------------------------------------------------- */
.fecho { position:relative; isolation:isolate; overflow:hidden; padding-block: clamp(5rem,11vw,8.5rem); text-align:center; color:#fff; background: linear-gradient(160deg, var(--breu) 0%, var(--marinho) 45%, #0f4a55 130%); }
.fecho h2 { color:#fff; font-size: var(--t-declaracao); }

/* Chamado final. Tem peso e moldura de botão de propósito, para o olho parar
   nele, mas não é link: enquanto não houver destino, um botão que não leva a
   lugar nenhum frustra mais do que convida. */
.chamado {
  display:inline-block; padding:1rem 2.2rem; border-radius: var(--pill);
  border:1px solid rgba(224,192,137,.55); color: var(--latao-luz);
  font-size:1.0625rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
}
.fecho .entrada { color: rgba(233,242,245,.8); margin-inline:auto; max-width:78ch; text-align:center; }
@media (max-width:760px) { .fecho .entrada { text-align:left; } }
.fecho > .env { position:relative; z-index:2; }

/* Letreiro: faixa de texto gigante em contorno deslizando sem parar, com o
   trecho manuscrito preenchido em latão. Duas cópias idênticas e -50% no
   trilho fazem o laço sem emenda. */
.letreiro { background: var(--branco); overflow:hidden; contain: paint; padding-block: clamp(1.2rem, 2.6vw, 2.2rem); }
.letreiro__trilho { display:flex; width:max-content; animation: letreiroCorre 34s linear infinite; }
/* Preenchido em tom claro, não em contorno: o `-webkit-text-stroke` desenha
   o traçado de cada glifo separadamente e as junções das letras ficam
   visíveis, com aparência de fonte remendada. */
.letreiro__bloco {
  white-space:nowrap; padding-right:.6em;
  font-size: clamp(2.6rem, 6.5vw, 5.5rem); font-weight:700; letter-spacing:-.02em;
  color: #DDE8EC;
}
.letreiro .mao { color: #EFE0C4; font-style: normal; }
@keyframes letreiroCorre { to { transform: translateX(-50%); } }

.rodape { background: var(--breu); color: rgba(233,242,245,.6); padding-block: clamp(2.25rem,4vw,3rem); font-size:1rem; }
.rodape .env { display:flex; flex-wrap:wrap; gap:1.2rem 2rem; justify-content:space-between; align-items:center; }
/* Logo LeaderX: PNG na versão para fundo escuro. Altura fixa e largura
   automática preservam a proporção 842x292 em qualquer tela. */
.rodape__marca { display:inline-block; line-height:0; transition: opacity .3s var(--suavizar); }
.rodape__marca:hover { opacity:.75; }
.rodape__marca img { height: clamp(2.4rem, 4.4vw, 3.1rem); width:auto; }
.rodape__direitos { font-size:1rem; color: rgba(233,242,245,.42); max-width:40ch; }
.rodape__credito a { color: var(--latao-luz); font-weight:600; border-bottom:1px solid rgba(224,192,137,.4); padding-bottom:1px; transition: color .3s, border-color .3s; }
.rodape__credito a:hover { color:#fff; border-color:#fff; }

/* --------------------------------------------------------------------------
   ASSINATURA DO AUTOR
   Crédito direto, sempre visível. A manuscrita se caligrafa quando o rodapé
   entra na tela, pelo mesmo [data-revelar] .mao que o site inteiro usa nos
   títulos, então não há mecanismo próprio aqui para dar manutenção nem para
   quebrar. O risco por baixo desenha junto.
   -------------------------------------------------------------------------- */
.assina { margin:0; text-align:center; }
.assina__antes { color: rgba(233,242,245,.55); }
.assina .mao { font-size:1.6em; color: var(--latao-luz); }
.assina a { border-bottom:0; }        /* a caligrafia não pede sublinhado */
.assina a:hover .mao { color:#fff; }

.assina__risco {
  display:block; height:1px; margin:.3rem auto 0;
  width:0; background: linear-gradient(90deg, transparent, var(--latao-luz), transparent);
  transition: width 1.2s var(--suavizar) .45s;
}
[data-revelar="visivel"].assina .assina__risco { width: min(100%, 15rem); }
@media (max-width:700px) { .rodape .env { justify-content:center; text-align:center; } }

/* --------------------------------------------------------------------------
   19. REVELAÇÃO
   -------------------------------------------------------------------------- */
[data-revelar] { opacity:0; transform: translateY(28px); transition: opacity .9s var(--suavizar), transform .9s var(--mola); transition-delay: var(--atraso,0ms); }
[data-revelar="visivel"] { opacity:1; transform:none; }

/* --------------------------------------------------------------------------
   20. TABLET E MOBILE
   -------------------------------------------------------------------------- */
@media (max-width:1024px) {
  .iate__specs { grid-template-columns: repeat(4, 1fr); }
  .equipa { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:900px) {
  /* A folga para o menu flutuante vem de DENTRO do rodapé. No body, ela
     virava uma faixa clara de 80px depois do rodapé escuro. */
  .rodape { padding-bottom: calc(clamp(2.25rem,4vw,3rem) + 5rem); }
  .cabeca, .entrada { text-align:center; margin-inline:auto; }
  .olho { justify-content:center; }
  .prato { text-align:center; }
  .dia > summary, .linha, .marco, .bordo { text-align:left; }
  .equipa { text-align:center; }
  .equipa li { justify-content:center; }
  .iate__nome { left:0; right:0; text-align:center; }
  .mesa__topo { text-align:center; }
}
@media (max-width:600px) {
  .iate__specs { grid-template-columns: repeat(2, 1fr); }
  .equipa { grid-template-columns: 1fr; }
  .placar b { font-size: clamp(calc(2rem + 5px), calc(10vw + 5px), calc(2.6rem + 5px)); }
}

/* --------------------------------------------------------------------------
   21. MOVIMENTO REDUZIDO
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  [data-revelar] { opacity:1; transform:none; }
  .palavra > span { transform:none; }
  .curva path, .tex--ruido::after, .hero__video, .louca .anel, .louca__tampa,
  .louca .vapor, .louca__garfo, .louca__faca, .aviso__icone .gota,
  .letreiro__trilho, .hero__giro .giro, .aviso::before { animation:none; }
  [data-revelar] .mao { clip-path:none; transition:none; }
  .mar__foto { transform:none !important; }
  .hero h1 .brilho .palavra > span { -webkit-text-fill-color:#fff; color:#fff; background:none; animation:none; }
}
