/* ===== ../assets/font-inter.css ===== */
/* Inter, embutida para os protótipos abrirem com duplo clique (file://). No site real: servida por nós. */
@font-face{font-family:'Inter SB';src:url(data:font/woff2;base64,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) format('woff2');font-weight:400 900;font-display:swap}
/* ===== ../assets/base.css ===== */
/* SurfBooking · protótipos 14/10 · base partilhada pelas três direcções.
   Só o que é comum: letra, reset, o herói com o vídeo (igual à produção), as revelações e o
   modo parado. Cada direcção tem o seu ficheiro por cima deste. */

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; color-scheme: dark; }
body { margin: 0; background: #060E1A; color: #F1F5F9; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img, video, svg { display: block; max-width: 100%; }
a { color: inherit; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid #22D3EE; outline-offset: 3px; border-radius: 8px; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; background: #22D3EE; color: #04222B; padding: 10px 14px; border-radius: 10px; font-weight: 700; text-decoration: none; }
.skip:focus { top: 12px; }

/* ---------- O HERÓI: vídeo, enquadramento e véu iguais aos da produção ---------- */
.hero {
  position: relative; overflow: hidden; min-height: 100vh; min-height: 100dvh;
  background:
    radial-gradient(ellipse 90% 55% at 50% 0%, rgba(8,145,178,0.17) 0%, transparent 62%),
    radial-gradient(ellipse 60% 40% at 80% 80%, rgba(6,182,212,0.07) 0%, transparent 58%),
    radial-gradient(ellipse 74% 42% at 50% 46%, rgba(4,10,20,0.42) 0%, transparent 72%),
    linear-gradient(180deg, #060E1A 0%, rgba(6,14,26,0.55) 42%, #0B1929 100%);
}
.hero-video::-webkit-media-controls, .hero-video::-webkit-media-controls-panel,
.hero-video::-webkit-media-controls-play-button,
.hero-video::-webkit-media-controls-start-playback-button,
.hero-video::-webkit-media-controls-overlay-play-button { display: none !important; opacity: 0 !important; -webkit-appearance: none !important; pointer-events: none !important; }
.hero-inner { position: relative; z-index: 2; }

/* ---------- Revelações (só quando o JS correu e há movimento) ---------- */
.mo [data-split] .w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .08em; margin-bottom: -.08em; }
.mo [data-split] .w > span { display: inline-block; transform: translate3d(0,105%,0); transition: transform .9s cubic-bezier(.16,1,.3,1); transition-delay: calc(var(--i) * 45ms + var(--d, 0ms)); }
.mo [data-split].in .w > span { transform: none; }
.mo [data-reveal] { opacity: 0; transform: translate3d(0,28px,0); transition: opacity .8s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1); transition-delay: var(--d, 0ms); }
.mo [data-reveal].in { opacity: 1; transform: none; }
.mo [data-reveal="clip"] { opacity: 1; transform: none; clip-path: inset(0 0 100% 0); transition: clip-path 1.1s cubic-bezier(.77,0,.18,1); transition-delay: var(--d, 0ms); }
.mo [data-reveal="clip"].in { clip-path: inset(0 0 0 0); }
.mo [data-reveal="fade"] { transform: none; }
.num { font-variant-numeric: tabular-nums; }

/* ---------- Modo parado: tudo visível, nada se mexe ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  [data-fx] { transform: none !important; opacity: 1 !important; clip-path: none !important; }
  .pin-tall { height: auto !important; }
  .pin-tall > .stage { position: relative !important; }
}
/* ===== d2.css ===== */
/* Proposta D2 (14/10/2026). Composta das secções VERDADEIRAS da A (topo, descida, modelo, escolas,
   fecho), da B (a app e o OS a montar-se) e da C (os planos com corte e a letra que atravessa).
   O CSS de cada secção vem do protótipo de origem; o que mudou foi só a letra, presa a DEZ degraus:
   320/150 · 96/42 · 64/34 · 40/28 · 24/20 · 20/18 · 18 · 16 · 14 · 12  (computador / telemóvel).
   Inter para ler; Archivo estreita (a da C) só para os números grandes. */
@font-face { font-family: 'Archivo SB'; src: url('/assets/site-d/d2/_a/fonts/archivo.woff2') format('woff2'); font-weight: 300 900; font-stretch: 62% 125%; font-display: swap; }

:root {
  --abismo: #03070F; --noite: #060E1A; --sup: #0B1120; --elev: #0B1929; --agua: #0B3A52;
  --espuma: #F1F5F9; --fraco: #94A3B8; --claro: #CBD5E1; --linha: rgba(255,255,255,.1);
  --ciano: #22D3EE; --ciano-f: #06B6D4; --ciano-e: #0891B2;
  --vazia: #34D399; --cheia: #60A5FA;
  --ease: cubic-bezier(.16,1,.3,1); --ease-io: cubic-bezier(.77,0,.18,1);
  --gut: clamp(16px, 4vw, 48px); --max: 1200px;
  --t0: clamp(150px, 22.23vw, 320px);
  --t1: clamp(42px, 6.667vw, 96px);
  --t2: clamp(34px, 4.445vw, 64px);
  --t3: clamp(28px, 2.778vw, 40px);
  --t4: clamp(20px, 1.667vw, 24px);
  --t5: clamp(18px, 1.389vw, 20px);
}
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
body { font-family: 'Inter SB', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; font-size: 16px; line-height: 1.6; background: var(--noite); }
.wrap { width: min(var(--max), 100% - 2 * var(--gut)); margin-inline: auto; }
.cond, .gig, .gig-m { font-family: 'Archivo SB', 'Inter SB', sans-serif; font-stretch: 62%; font-weight: 800; letter-spacing: -.005em; line-height: .88; font-variant-numeric: tabular-nums; }
[tabindex="-1"]:focus { outline: none; }
.etq { display: block; margin-bottom: 16px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); }

/* ---------- títulos palavra a palavra: corte + desfoque que se resolve (sobre o base.css) ---------- */
.mo [data-split] .w { clip-path: inset(0 0 100% 0); transition: clip-path 1.1s var(--ease-io); transition-delay: calc(var(--i) * 60ms + var(--d, 0ms)); }
.mo [data-split].in .w { clip-path: inset(-25% -8% -25% -8%); }
.mo [data-split] .w > span { opacity: 0; filter: blur(10px); transition: transform 1.1s var(--ease), opacity .8s var(--ease), filter 1s var(--ease); transition-delay: calc(var(--i) * 60ms + var(--d, 0ms)); }
.mo [data-split].in .w > span { opacity: 1; filter: none; }

/* ---------- A BARRA (A) ---------- */
.nav { position: fixed; z-index: 40; top: 12px; left: 0; right: 0; margin-inline: auto; width: min(1120px, calc(100% - 24px));
  display: flex; align-items: center; gap: 8px; padding: 8px 8px 8px 18px; border-radius: 9999px; overflow: hidden;
  background: rgba(11,17,32,.84); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 30px -12px rgba(0,0,0,.6); }
.mo .nav { animation: barra-desce 1.2s var(--ease) .15s both; }
@keyframes barra-desce { from { transform: translateY(-140%); opacity: 0; } to { transform: none; opacity: 1; } }
.nav-brilho { position: absolute; top: 0; bottom: 0; left: 0; width: 22%; pointer-events: none; background: linear-gradient(100deg, transparent, rgba(255,255,255,.10) 45%, rgba(34,211,238,.14) 55%, transparent); transform: translateX(-120%); }
.mo .nav-brilho { animation: brilho 1.8s var(--ease-io) .9s both; }
@keyframes brilho { to { transform: translateX(520%); } }
.nav .marca { color: #fff; }
.marca { position: relative; font-weight: 800; letter-spacing: -.02em; font-size: 18px; text-decoration: none; white-space: nowrap; }
.marca b { color: var(--ciano); }
.nav-links { display: flex; gap: 4px; margin-left: auto; }
.nav-links a { text-decoration: none; font-size: 14px; color: #DCE3EC; padding: 10px 12px; border-radius: 9999px; transition: color .2s, background-color .2s; }
.nav-links a:hover { color: #fff; background: rgba(255,255,255,.06); }
.nav > .bt { padding: 10px 10px 10px 16px; font-size: 14px; }
.mo .nav > *:not(.nav-brilho) { animation: sobe-um .9s var(--ease) both; }
.mo .nav > .marca { animation-delay: .45s; } .mo .nav > .troca { animation-delay: .55s; } .mo .nav > .nav-links { animation-delay: .65s; } .mo .nav > .bt { animation-delay: .75s; }
@keyframes sobe-um { from { transform: translateY(-12px); opacity: 0; } to { transform: none; opacity: 1; } }

/* ---------- O INTERRUPTOR ---------- */
.troca { position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: center; margin-left: 20px; padding: 4px; height: 44px; min-width: 214px;
  border: 0; border-radius: 9999px; background: transparent; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); cursor: pointer; -webkit-tap-highlight-color: transparent; }
.troca-op { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 14px; font-size: 14px; font-weight: 600; color: #DCE3EC; white-space: nowrap; transition: color .35s var(--ease); }
.troca .op-inicio, .troca.em-st .op-st { color: #fff; }
.troca.em-st .op-inicio { color: #DCE3EC; }
.troca-polegar { position: absolute; z-index: 0; top: 4px; bottom: 4px; left: 4px; width: calc(50% - 4px); border-radius: 9999px;
  background: linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,.05));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42), inset 0 -1px 0 rgba(255,255,255,.06), 0 4px 12px -4px rgba(0,0,0,.6);
  transition: transform .6s var(--ease); }
.troca.em-st .troca-polegar { transform: translateX(100%); }
.troca:focus-visible { outline: 2px solid var(--ciano); outline-offset: 3px; border-radius: 9999px; }
.mare-ponto { width: 7px; height: 7px; flex: none; border-radius: 9999px; background: var(--cor-mare, var(--vazia)); }
.mo .mare-ponto { animation: mare-pulso 2.8s var(--ease) infinite; }
@keyframes mare-pulso { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,.35); } 70%,100% { box-shadow: 0 0 0 7px rgba(255,255,255,0); } }
.pilula { display: none; }
@media (max-width: 860px) {
  .nav-links, .nav > .troca { display: none; }
  .nav > .bt { margin-left: auto; }
  .pilula { display: block; position: fixed; z-index: 40; left: 0; right: 0; margin-inline: auto; width: max-content; bottom: calc(14px + env(safe-area-inset-bottom)); padding: 6px; border-radius: 9999px;
    background: rgba(11,17,32,.84); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 14px 34px -10px rgba(0,0,0,.7); }
  .mo .pilula { animation: pilula-sobe 1.1s var(--ease) 1.1s both; }
  .pilula .troca { margin: 0; height: 48px; min-width: 248px; }
}
@keyframes pilula-sobe { from { transform: translateY(160%); opacity: 0; } to { transform: none; opacity: 1; } }

/* ---------- botões (A) ---------- */
.bt { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 8px 8px 8px 22px; border-radius: 9999px; font-weight: 700; font-size: 16px; text-decoration: none; transition: transform .16s var(--ease), box-shadow .3s var(--ease), background-color .2s; }
.bt:active { transform: scale(.97); }
.bt-1 { background: linear-gradient(135deg, var(--ciano-e), var(--ciano-f)); color: #fff; box-shadow: 0 4px 20px rgba(6,182,212,.22); }
.bt-1:hover { box-shadow: 0 8px 28px rgba(6,182,212,.34); }
.bt-2 { color: var(--espuma); box-shadow: inset 0 0 0 1px rgba(255,255,255,.28); padding-right: 22px; background: rgba(6,14,26,.18); }
.bt-2:hover { background: rgba(255,255,255,.08); }
.bt .ic { width: 34px; height: 34px; border-radius: 9999px; display: grid; place-items: center; background: rgba(255,255,255,.18); transition: transform .3s var(--ease); }
.bt:hover .ic { transform: translate(2px,-1px) scale(1.05); }
.bt svg { width: 16px; height: 16px; }
.ctas, .hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; }

/* ---------- 1 · O TOPO (A) ---------- */
.topo-palco { position: relative; height: 200vh; height: 200svh; }
.topo-palco > .hero { position: sticky; top: 0; height: 100vh; height: 100svh; min-height: 0; }
.hero-midia, .hero-assenta { position: absolute; inset: 0; z-index: 0; }
.hero-midia { will-change: transform; transform-origin: 50% 30%; }
.mo .hero-assenta { animation: assenta 2.8s cubic-bezier(.22,1,.36,1) both; }
@keyframes assenta { from { transform: scale(1.16); opacity: .2; } to { transform: none; opacity: 1; } }
.escurece { position: absolute; inset: 0; z-index: 1; background: var(--abismo); opacity: 0; pointer-events: none; }
.hero-inner { position: relative; z-index: 2; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; padding: 120px var(--gut) clamp(40px, 8vh, 88px); max-width: 1320px; margin: 0 auto; }
.h1 { font-size: var(--t1); line-height: 1.0; letter-spacing: -.04em; font-weight: 800; margin: 0; max-width: 13ch; text-wrap: balance; }
.hero-sub { font-size: var(--t5); color: #E2E8F0; max-width: 46ch; margin: 22px 0 30px; }
.hero-vivo { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 26px 0 0; font-size: 14px; color: var(--claro); }
.hero-vivo .pulso { width: 8px; height: 8px; border-radius: 9999px; background: var(--vazia); }
.mo .hero-vivo .pulso { animation: pulso 2.4s var(--ease) infinite; }
@keyframes pulso { 0% { box-shadow: 0 0 0 0 rgba(52,211,153,.55); } 70%,100% { box-shadow: 0 0 0 10px rgba(52,211,153,0); } }
.vivo-sep { width: 1px; height: 14px; background: rgba(255,255,255,.24); margin: 0 4px; }
.ao-vivo { font-variant-numeric: tabular-nums; }
.ao-vivo i { display: inline-block; width: 8px; height: 8px; margin: 0 8px 0 10px; border-radius: 9999px; background: var(--cor-mare, var(--vazia)); vertical-align: 0; }
.ws { position: absolute; z-index: 3; right: calc(var(--gut) + 64px); bottom: clamp(40px, 8vh, 88px); display: flex; align-items: center; gap: 12px; padding: 10px 16px; border-radius: 9999px; background: rgba(241,245,249,.92); color: #0B1120; text-decoration: none; font-size: 12px; font-weight: 600; }
.ws img { height: 18px; width: auto; }
.pausa { position: absolute; z-index: 3; right: var(--gut); bottom: clamp(40px, 8vh, 88px); width: 48px; height: 48px; display: grid; place-items: center; border: 0; border-radius: 9999px; cursor: pointer; color: #fff;
  background: rgba(11,17,32,.6); -webkit-backdrop-filter: blur(12px) saturate(160%); backdrop-filter: blur(12px) saturate(160%); box-shadow: inset 0 1px 0 rgba(255,255,255,.14), inset 0 0 0 1px rgba(255,255,255,.08); }
.pausa svg { width: 18px; height: 18px; fill: currentColor; }
.pausa .i-tocar, .pausa[aria-pressed="true"] .i-pausa { display: none; }
.pausa[aria-pressed="true"] .i-tocar { display: block; }
.rm .pausa { display: none; }
@media (max-width: 860px) {
  .hero-inner { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
  .ws { top: 94px; left: var(--gut); right: auto; bottom: auto; padding: 8px 12px; font-size: 12px; } .ws img { height: 15px; }
  .pausa { top: 90px; bottom: auto; width: 44px; height: 44px; }
  .hero-sub { margin: 18px 0 24px; }
  .vivo-sep { display: none; } .ao-vivo { flex-basis: 100%; }
  .ao-vivo i { margin-left: 10px; }
  /* 19/10 · o dono, no telemóvel: «fica mal posicionado em cima». Visto no Safari do iPhone (375): com as barras do
     Safari a altura visível baixa, o texto (alinhado ao fundo) não cabe e sobe para baixo do selo do Web Summit, por
     cima de «Escolhe a». O texto nunca começa acima do selo (94px + o selo), e o excesso vai para baixo (`safe`). */
  .hero-inner { padding-top: 146px; justify-content: safe flex-end; }
}
/* e em ecrãs baixos (Safari com as barras, iPhone SE/mini) encolhe-se o topo para caber tudo sem ir para baixo da barra */
@media (max-width: 860px) and (max-height: 760px) {
  .h1 { font-size: clamp(34px, 10.5vw, 42px); }
  .hero-sub { font-size: 16px; line-height: 1.45; margin: 14px 0 18px; }
  .hero-vivo { margin-top: 16px; }
  .hero-inner { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
}

/* ---------- A FOLHA: sobe por cima do vídeo ---------- */
.folha { position: relative; z-index: 2; margin-top: -100vh; margin-top: -100svh; border-radius: 24px 24px 0 0; overflow: clip; background: var(--sup); transform-origin: 50% 0; box-shadow: 0 -24px 60px -24px rgba(0,0,0,.7); }

/* ---------- 2 · A DESCIDA (A) ---------- */
.pin-tall { position: relative; }
.pin-tall > .stage { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; }
.descida { height: 210vh; background: var(--sup); }
.d-foto { position: absolute; inset: -6% 0 0 0; width: 100%; height: 112%; object-fit: cover; object-position: 50% 40%; transform-origin: 50% 60%; }
.d-ondas { position: absolute; left: 0; width: 200%; height: 46vh; bottom: 0; }
.d-ondas path { fill: none; stroke: #F1F5F9; vector-effect: non-scaling-stroke; }
.d-fundo { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,14,26,0) 0%, rgba(6,14,26,.72) 30%, var(--sup) 62%); }
.d-textos { position: absolute; inset: 0; display: grid; align-content: center; padding: 0 var(--gut); }
.d-t { margin: 0 auto; max-width: 20ch; font-size: var(--t2); line-height: 1.04; letter-spacing: -.035em; font-weight: 800; text-align: center; text-wrap: balance; }
.d-t small { display: block; font-size: var(--t5); letter-spacing: 0; font-weight: 400; color: var(--claro); max-width: 44ch; margin: 18px auto 0; line-height: 1.55; }
.mo .d-t { position: absolute; inset: 0; display: grid; place-content: center; padding: 0 var(--gut); max-width: none; opacity: 0; transform: translate3d(0,40px,0) scale(.98); filter: blur(6px); transition: opacity .7s var(--ease), transform .9s var(--ease), filter .7s var(--ease); }
.mo .d-t.on { opacity: 1; transform: none; filter: none; }
.d-nums { display: flex; justify-content: center; gap: clamp(28px, 8vw, 120px); }
.d-nums div { text-align: center; }
.d-nums strong { display: block; font-size: var(--t0); }
.d-nums span { font-size: 14px; color: var(--claro); letter-spacing: 0; font-weight: 500; }
.rm .descida, html:not(.mo) .descida { height: auto; }
.rm .descida > .stage, html:not(.mo) .descida > .stage { position: relative; height: auto; }
.rm .d-textos, html:not(.mo) .d-textos { position: relative; padding: 120px var(--gut); gap: 72px; }

/* ---------- 3 · A LETRA (C) ---------- */
.letra { padding: clamp(96px, 16vh, 180px) 0; overflow: hidden; background: linear-gradient(180deg, var(--sup), var(--elev)); }
.letra .linha { white-space: nowrap; font-size: var(--t0); line-height: .86; }
.letra .linha + .linha { color: var(--ciano); }
.letra .lead { margin: 40px 0 0; color: var(--claro); max-width: 52ch; font-size: var(--t5); }
.rm .letra .linha, html:not(.mo) .letra .linha { white-space: normal; padding: 0 var(--gut); font-size: var(--t1); }

/* ---------- PLANOS (C): a imagem entra por corte, o número atravessa, a frase fica ---------- */
.plano { height: 125vh; background: var(--elev); }
.plano .foto { position: absolute; inset: 0; overflow: hidden; }
.plano .foto img { width: 100%; height: 100%; object-fit: cover; }
.plano .foto::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,14,26,.35) 0%, rgba(6,14,26,.12) 36%, rgba(6,14,26,.9) 100%); }
.hora { position: absolute; left: 0; top: clamp(76px, 12vh, 120px); white-space: nowrap; font-weight: 300; font-size: var(--t0); line-height: .8; color: var(--espuma); opacity: .9; letter-spacing: -.02em; }
.legenda { position: absolute; left: var(--gut); right: var(--gut); bottom: clamp(32px, 7vh, 72px); max-width: 640px; }
.legenda.dir { left: auto; }
.legenda .h2 { max-width: 14ch; }
.legenda p { margin: 16px 0 24px; color: #E2E8F0; max-width: 44ch; font-size: var(--t5); }
.rm .plano, html:not(.mo) .plano { height: auto; }
.rm .plano > .stage, html:not(.mo) .plano > .stage { position: relative; height: 100vh; height: 100svh; min-height: 560px; }
@media (max-width: 760px) { .hora { top: 84px; } .legenda { bottom: calc(96px + env(safe-area-inset-bottom)); } }

/* ---------- secções ---------- */
.sec { position: relative; padding: clamp(96px, 14vw, 180px) 0; }
.h2 { font-size: var(--t2); line-height: 1.02; letter-spacing: -.035em; font-weight: 800; margin: 0; max-width: 16ch; text-wrap: balance; }
.lead { font-size: var(--t5); color: var(--claro); max-width: 52ch; margin: 22px 0 0; }

/* ---------- A APP (B): o telemóvel fica, os ecrãs reais passam ---------- */
.app { height: 240vh; background: linear-gradient(180deg, var(--elev), var(--agua)); }
.app .stage { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 40px; padding: 96px var(--gut) 24px; max-width: 1240px; margin: 0 auto; }
.app-txt { position: relative; min-height: 300px; }
.app-step { position: absolute; inset: 40px 0 auto 0; }
.app-step h3 { margin: 0 0 12px; font-size: var(--t3); letter-spacing: -.035em; line-height: 1.08; font-weight: 700; }
.app-step p { margin: 0; color: var(--claro); max-width: 40ch; font-size: var(--t5); }
.mo .app-step { opacity: 0; transform: translateY(24px); filter: blur(6px); transition: opacity .55s var(--ease), transform .8s var(--ease), filter .55s; }
.mo .app-step.on { opacity: 1; transform: none; filter: none; }
.tel { position: relative; width: min(340px, 72vw); aspect-ratio: 400/869; margin: 0 auto; }
.tel .ecra { position: absolute; left: 4.5%; top: 2.07%; width: 91%; height: 95.86%; border-radius: 13.7% / 6.2%; overflow: hidden; background: #0B1120; }
.tel .ecra img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.mo .tel .ecra img { opacity: 0; transform: scale(1.06) translateY(3%); clip-path: inset(100% 0 0 0); transition: opacity .55s var(--ease), transform .9s var(--ease), clip-path .9s var(--ease-io); }
.mo .app[data-cur="0"] .ecra img:nth-child(1), .mo .app[data-cur="1"] .ecra img:nth-child(2),
.mo .app[data-cur="2"] .ecra img:nth-child(3), .mo .app[data-cur="3"] .ecra img:nth-child(4),
.mo .app:not([data-cur]) .ecra img:nth-child(1) { opacity: 1; transform: none; clip-path: inset(0 0 0 0); }
.tel .moldura { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.prog { position: absolute; left: 0; bottom: -10px; display: flex; gap: 6px; width: 220px; }
.prog i { height: 3px; flex: 1; border-radius: 2px; background: rgba(255,255,255,.14); transition: background-color .3s; }
.app[data-cur="0"] .prog i:nth-child(1), .app[data-cur="1"] .prog i:nth-child(-n+2), .app[data-cur="2"] .prog i:nth-child(-n+3), .app[data-cur="3"] .prog i { background: var(--ciano); }
@media (max-width: 860px) {
  .app .stage { grid-template-columns: 1fr; grid-template-rows: auto 1fr; gap: 12px; padding-top: 88px; align-items: start; }
  .app-txt { min-height: 170px; }
  .app-step { inset: 28px 0 auto 0; }
  .tel { width: min(230px, 56vw); }
  .prog { bottom: 0; }
}
.rm .app, html:not(.mo) .app { height: auto; }
.rm .app .stage, html:not(.mo) .app .stage { position: relative; height: auto; }
.rm .app-step, html:not(.mo) .app-step { position: relative; inset: auto; margin-bottom: 28px; }

/* ---------- O OS (B): as peças chegam ao seu lugar ---------- */
.os-sec { background: linear-gradient(180deg, var(--agua), var(--elev)); padding-bottom: clamp(72px, 9vw, 120px); }
.os-vista { position: relative; margin-top: 48px; border-radius: 16px; overflow: hidden; aspect-ratio: 1440/900; background: #0B1120; box-shadow: 0 50px 100px -40px rgba(0,0,0,.9), inset 0 0 0 1px rgba(255,255,255,.12); transform-origin: 50% 0; }
.os-tela { position: absolute; inset: 0; }
.os-tela > img.base { position: absolute; inset: 0; width: 100%; height: 100%; }
.wdg { position: absolute; display: block; border-radius: clamp(8px, 1.1vw, 16px); overflow: hidden; box-shadow: 0 20px 40px -18px rgba(0,0,0,.9); }
.wdg img { width: 100%; height: 100%; }
.w-forecast { left: .97%; top: 3.78%; width: 19.79%; height: 60.44%; }
.w-risco { left: 21.53%; top: 5.22%; width: 19.86%; height: 36.89%; }
.w-kai { left: 21.53%; top: 43.11%; width: 15.69%; height: 41.56%; }
.w-checkin { left: .97%; top: 66.44%; width: 19.79%; height: 23%; }
.w-dock { left: 24.17%; top: 90.56%; width: 51.74%; height: 8.11%; border-radius: clamp(8px, 1vw, 12px); }
.w-barra { left: 0; top: 0; width: 100%; height: 2.9%; border-radius: 0; box-shadow: none; }
.os-nums { display: flex; flex-wrap: wrap; gap: 16px 64px; margin-top: 40px; }
.os-nums p { margin: 0; display: flex; align-items: baseline; gap: 14px; }
.gig-m { font-size: var(--t2); }
.os-nums span { font-size: 14px; color: var(--claro); max-width: 18ch; }

/* ---------- 7 · O MODELO (A) ---------- */
.modelo { background: linear-gradient(180deg, var(--elev), var(--noite)); }
.mod-grid { display: grid; grid-template-columns: 1fr 1fr; margin-top: 72px; border-radius: 24px; overflow: hidden; box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); }
.mod { padding: clamp(28px, 4vw, 56px); }
.mod + .mod { box-shadow: inset 1px 0 0 rgba(255,255,255,.1); }
.mod strong { display: block; font-size: var(--t0); line-height: .8; }
.mod.m0 strong { color: var(--espuma); }
.mod.m20 strong { color: var(--ciano); }
.mod h3 { margin: 22px 0 8px; font-size: var(--t4); letter-spacing: -.02em; }
.mod p { margin: 0; color: var(--claro); max-width: 36ch; }
.mod-nota { margin-top: 24px; color: var(--fraco); font-size: 14px; max-width: 70ch; }
@media (max-width: 700px) { .mod-grid { grid-template-columns: 1fr; } .mod + .mod { box-shadow: inset 0 1px 0 rgba(255,255,255,.1); } }

/* ---------- 8 · AS ESCOLAS (A) ---------- */
.escolas { background: var(--noite); overflow: hidden; padding-bottom: clamp(80px, 10vw, 140px); }
.fita { display: flex; gap: 48px; white-space: nowrap; font-size: var(--t2); font-weight: 800; letter-spacing: -.03em; line-height: 1.25; }
.fita span { color: rgba(241,245,249,.18); }
.fita span em { font-style: normal; font-weight: 500; font-size: 14px; letter-spacing: .02em; color: var(--fraco); margin-left: 12px; vertical-align: .9em; }
.fita span:nth-child(3n+1) { color: var(--espuma); }
.fitas { margin-top: 56px; display: grid; gap: 8px; }

/* ---------- 9 · O FECHO (A) ---------- */
.final { position: relative; min-height: 100vh; min-height: 100svh; display: grid; align-items: end; overflow: hidden; background: var(--abismo); }
.final-foto { position: absolute; inset: -10% 0 0 0; width: 100%; height: 120%; object-fit: cover; object-position: 50% 60%; }
.final::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,7,15,.2) 0%, rgba(3,7,15,.55) 50%, rgba(3,7,15,.92) 100%); }
.final-in { position: relative; z-index: 2; padding: 0 0 clamp(64px, 10vh, 120px); }
.final .h2 { max-width: 15ch; font-size: var(--t1); line-height: 1; }
.cred { display: inline-flex; align-items: center; gap: 12px; margin: 28px 0 32px; padding: 10px 16px; border-radius: 9999px; background: rgba(241,245,249,.92); color: #0B1120; font-size: 14px; font-weight: 600; text-decoration: none; }
.cred img { height: 18px; width: auto; }
@media (max-width: 860px) { .final-in { padding-bottom: calc(110px + env(safe-area-inset-bottom)); } }

.rodape { background: var(--abismo); padding: 56px 0 40px; color: var(--fraco); font-size: 14px; }
.rodape .wrap { display: flex; flex-wrap: wrap; gap: 24px 48px; justify-content: space-between; align-items: center; }
.rodape nav { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.rodape a { text-decoration: none; color: var(--claro); }
.rodape .marca { color: var(--espuma); }
@media (max-width: 860px) { .rodape { padding-bottom: calc(110px + env(safe-area-inset-bottom)); } }

/* ---------- A LINHA DE ÁGUA (a troca) ---------- */
.agua-troca { position: fixed; inset: 0; z-index: 38; pointer-events: none; visibility: hidden; }
.agua-troca.ativa { visibility: visible; pointer-events: auto; }
.agua-vidro { position: absolute; inset: 0; -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); background: rgba(8,62,92,.18); clip-path: inset(100% 0 0 0); }
.agua-canvas { position: absolute; inset: 0; width: 100%; height: 100%; }

/* ---------- O SURF TODAY ---------- */
#v-st { background: linear-gradient(180deg, var(--elev) 0, var(--sup) 70vh, var(--noite) 100%); min-height: 100vh; transform-origin: 50% 30%; }
.st-topo { position: relative; min-height: 82vh; min-height: 82svh; display: grid; align-items: end; overflow: hidden; }
.st-foto { position: absolute; inset: -4% 0 0 0; width: 100%; height: 108%; object-fit: cover; object-position: 50% 45%; }
.st-veu { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,25,41,0) 0%, rgba(11,25,41,.1) 30%, rgba(11,25,41,.8) 66%, var(--elev) 100%); }
.st-topo-in { position: relative; z-index: 2; padding: 140px 0 clamp(36px, 6vh, 64px); }
.st-h1 { max-width: 15ch; }
.st-topo .lead { color: #E2E8F0; }
.st-conta { margin: 18px 0 0; font-size: 14px; color: var(--claro); }
.st-corpo { padding: 8px 0 120px; }
.st-trilho { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 48px; margin-bottom: 16px; font-size: 14px; color: var(--fraco); }
.st-trilho button { border: 0; background: none; padding: 12px 6px; margin: 0 -6px; cursor: pointer; color: var(--ciano); font-size: 14px; font-weight: 600; border-radius: 8px; }
.st-trilho .sep { color: rgba(148,163,184,.5); }
.st-trilho [aria-current] { color: var(--espuma); font-weight: 600; }
.st-nota { margin: 48px 0 0; font-size: 12px; color: var(--fraco); }
@media (max-width: 860px) { .st-corpo { padding-bottom: calc(140px + env(safe-area-inset-bottom)); } .st-topo { min-height: 74svh; } }
.st-reg { margin: 40px 0 6px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); }
.st-reg:first-child { margin-top: 8px; }
.lista { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--linha); }
.lista li { border-bottom: 1px solid var(--linha); }
.linha { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto 18px; gap: 24px; align-items: center; padding: 20px 4px; border: 0; background: none; color: inherit; text-align: left; cursor: pointer; border-radius: 12px; transition: background-color .2s, transform .3s var(--ease); }
.linha:hover { background: rgba(255,255,255,.04); transform: translateX(4px); }
.linha-nome { display: block; font-size: var(--t4); font-weight: 700; letter-spacing: -.02em; line-height: 1.2; color: var(--espuma); }
.linha-meta { display: block; margin-top: 4px; font-size: 14px; color: var(--fraco); }
.linha-mar { display: flex; align-items: center; gap: 14px; }
.linha-mar strong { font-size: var(--t4); font-weight: 700; color: #fff; min-width: 4.4ch; text-align: right; }
.linha-mar em { font-style: normal; font-size: 14px; color: var(--claro); min-width: 11ch; }
.barra-mar { position: relative; width: 72px; height: 6px; border-radius: 3px; background: rgba(255,255,255,.1); overflow: hidden; }
.barra-mar i { position: absolute; inset: 0; border-radius: 3px; background: var(--ciano); transform-origin: 0 50%; transform: scaleX(var(--k, .5)); transition: transform 1.1s var(--ease-io) .2s; }
.mo .lista:not(.in) .barra-mar i { transform: scaleX(0); }
.seta { width: 18px; height: 18px; color: var(--fraco); }
.c-top strong { color: var(--ciano); }
.c-baixo em, .c-baixo strong { color: var(--fraco); }
.rank { font-size: 14px; color: var(--fraco); margin-right: 14px; }
@media (max-width: 860px) { .linha { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 16px 2px; } .linha .seta, .barra-mar, .linha-mar em { display: none; } }
.painel-cab { margin: 8px 0 28px; }
.painel-cab .h2 { color: var(--espuma); }
.painel-cab .lead { margin-top: 14px; }
.praia-cab { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 24px; }
.praia-mar { display: flex; flex-wrap: wrap; gap: 8px 32px; margin: 0; }
.praia-mar dt { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--fraco); }
.praia-mar dd { margin: 2px 0 0; font-size: 14px; color: var(--claro); }
.praia-mar dd.num { font-size: var(--t4); font-weight: 700; color: #fff; }
.vazio { padding: 28px; border-radius: 24px; background: rgba(255,255,255,.04); color: var(--claro); font-size: 16px; }
.vazio a { color: var(--ciano); }
/* as aulas em cartões, para comparar */
.cartoes { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.cartao { display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; background: var(--sup); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 24px 48px -32px rgba(0,0,0,.9); transition: transform .4s var(--ease), box-shadow .4s var(--ease); }
.cartao:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px rgba(34,211,238,.3), 0 30px 60px -30px rgba(0,0,0,.9); }
.cartao-foto { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--elev); }
.cartao-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.cartao:hover .cartao-foto img { transform: scale(1.05); }
.cartao-hora { position: absolute; left: 12px; top: 12px; padding: 6px 10px; border-radius: 9999px; background: rgba(11,17,32,.8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font-size: 12px; font-weight: 700; color: #fff; }
.cartao-txt { display: flex; flex-direction: column; flex: 1; padding: 18px 20px 20px; }
.cartao-esc { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--fraco); }
.cartao h3 { margin: 6px 0 4px; font-size: 16px; line-height: 1.35; color: var(--espuma); }
.cartao-meta { margin: 0; font-size: 14px; color: var(--fraco); }
.cartao-aval { display: flex; align-items: center; gap: 6px; margin: 8px 0 0; font-size: 14px; color: var(--claro); }
.cartao-aval svg { width: 16px; height: 16px; fill: #FBBF24; }
.cartao-mar { display: flex; align-items: center; gap: 8px; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--linha); font-size: 14px; color: var(--claro); }
.cartao-mar i { width: 8px; height: 8px; flex: none; border-radius: 9999px; background: var(--ciano); }
.cartao-mar.vazia i { background: var(--vazia); } .cartao-mar.cheia i { background: var(--cheia); }
.cartao-pe { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 18px; }
.cartao-preco { margin: 0; font-size: 14px; color: var(--fraco); }
.cartao-preco b { font-size: var(--t4); color: #fff; }
.cartao .bt { min-height: 44px; font-size: 14px; padding: 6px 6px 6px 16px; }
.cartao .bt .ic { width: 32px; height: 32px; }
.mo .entra { clip-path: inset(0 0 100% 0); transform: translate3d(0, 28px, 0); transition: clip-path 1.1s var(--ease-io), transform 1.1s var(--ease); transition-delay: calc(var(--n, 0) * 70ms); }
.mo .entra.in { clip-path: inset(-4% -2% -4% -2%); transform: none; }
.cartao-aviso { margin: 8px 0 0; font-size: 12px; color: #FBBF24; }
.cartao-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; font-size: 12px; color: var(--fraco); align-items: center; }
.chip-h { padding: 6px 10px; border-radius: 9999px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); color: var(--claro); text-decoration: none; }
.chip-h:hover { box-shadow: inset 0 0 0 1px var(--ciano); color: #fff; }
.cartao .bt-2 { min-height: 44px; font-size: 14px; padding: 6px 16px; }
.cartao-foto.logo { background: #000; } .cartao-foto.logo img { object-fit: contain; padding: 8% 18%; }

/* o menu Entrar (os três perfis de hoje) */
.nav-links .entrar { border: 0; background: none; cursor: pointer; font-size: 14px; color: #DCE3EC; padding: 10px 12px; border-radius: 9999px; }
.nav-links .entrar:hover, .nav-links .entrar[aria-expanded="true"] { color: #fff; background: rgba(255,255,255,.06); }
.menu-entrar { position: fixed; z-index: 41; top: 92px; right: max(12px, calc(50% - 560px + 150px)); width: 300px; padding: 8px; border-radius: 24px; background: rgba(11,17,32,.9); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 24px 50px -20px rgba(0,0,0,.8); }
.menu-entrar:not([hidden]) { animation: menu-abre .45s var(--ease) both; }
@keyframes menu-abre { from { opacity: 0; transform: translateY(-8px) scale(.98); } to { opacity: 1; transform: none; } }
.menu-entrar a { display: block; padding: 12px 14px; border-radius: 16px; text-decoration: none; }
.menu-entrar a:hover { background: rgba(255,255,255,.06); }
.menu-entrar b { display: block; font-size: 16px; color: var(--espuma); }
.menu-entrar span { font-size: 14px; color: var(--fraco); }
.app-baixar { position: absolute; left: 0; bottom: -88px; }
@media (max-width: 860px) { .app-baixar { display: none; } }

/* as escolas ligam à sua página */
.fita a { text-decoration: none; color: inherit; }
.fita a span { color: rgba(241,245,249,.18); transition: color .3s; }
.fita a:nth-child(3n+1) span { color: var(--espuma); }
.fita a:hover span { color: var(--ciano); }

/* perguntas frequentes (dobradas) */
.perguntas { background: var(--noite); padding-top: clamp(72px, 9vw, 120px); }
.pf-grelha { display: grid; grid-template-columns: 5fr 7fr; gap: 48px; align-items: start; }
.pf { border-bottom: 1px solid var(--linha); }
.pf:first-child { border-top: 1px solid var(--linha); }
.pf summary { cursor: pointer; list-style: none; padding: 22px 40px 22px 0; position: relative; font-size: var(--t4); font-weight: 700; letter-spacing: -.02em; color: var(--espuma); }
.pf summary::-webkit-details-marker { display: none; }
.pf summary::after { content: ''; position: absolute; right: 8px; top: 50%; width: 12px; height: 12px; margin-top: -8px; border-right: 2px solid var(--ciano); border-bottom: 2px solid var(--ciano); transform: rotate(45deg); transition: transform .4s var(--ease); }
.pf[open] summary::after { transform: rotate(225deg); margin-top: -2px; }
.pf p { margin: 0 0 22px; color: var(--claro); max-width: 60ch; }
@media (max-width: 860px) { .pf-grelha { grid-template-columns: 1fr; gap: 24px; } }

/* o rodapé completo */
.rodape { padding: 72px 0 40px; }
.rodape .wrap { display: block; }
.rp-topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px; padding-bottom: 32px; border-bottom: 1px solid var(--linha); }
.rp-lojas { display: flex; flex-wrap: wrap; gap: 10px; }
.rp-lojas .bt { min-height: 44px; font-size: 14px; padding: 6px 18px; }
.rp-cols { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; padding: 32px 0; }
.rp-col summary { list-style: none; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); margin-bottom: 14px; }
.rp-col summary::-webkit-details-marker { display: none; }
.rp-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.rp-col a { font-size: 14px; color: var(--claro); text-decoration: none; }
.rp-col a:hover { color: #fff; }
.rp-linha { display: flex; flex-wrap: wrap; gap: 16px 40px; align-items: center; justify-content: space-between; padding: 24px 0; border-top: 1px solid var(--linha); }
.rp-linguas { display: flex; gap: 4px; }
.rp-linguas a { padding: 8px 10px; border-radius: 9999px; font-size: 14px; color: var(--claro); text-decoration: none; }
.rp-linguas a[aria-current] { background: rgba(255,255,255,.08); color: #fff; }
.rp-redes, .rp-parc { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0; font-size: 14px; }
.rp-redes a, .rp-parc a { color: var(--claro); text-decoration: none; }
.rp-parc span { color: var(--fraco); }
.rp-legal { margin: 8px 0 0; font-size: 12px; color: var(--fraco); line-height: 1.7; }
@media (max-width: 860px) {
  .rp-cols { grid-template-columns: 1fr; gap: 0; padding: 16px 0; }
  .rp-col { border-bottom: 1px solid var(--linha); }
  .rp-col summary { margin: 0; padding: 16px 0; cursor: pointer; }
  .rp-col ul { padding-bottom: 16px; }
}

/* as próximas aulas (o painel de hoje) e a ficha da aula */
.prox { margin: 24px 0 64px; }
.prox-cab .lead { margin-top: 12px; }
.prox-fila { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(220px, 240px); gap: 14px; overflow-x: auto; padding: 24px 2px 16px; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
.prox-dia { grid-row: 1; align-self: end; writing-mode: vertical-rl; transform: rotate(180deg); margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); }
.prox-c { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 230px; padding: 16px; border-radius: 24px; overflow: hidden; text-decoration: none; scroll-snap-align: start; background: var(--sup); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); transition: transform .4s var(--ease); }
.prox-c:hover { transform: translateY(-4px); }
.prox-c img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.prox-c::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,14,26,0) 20%, rgba(6,14,26,.92) 100%); }
.prox-c > span { position: relative; z-index: 1; }
.prox-t { display: flex; justify-content: space-between; font-size: var(--t4); color: #fff; }
.prox-n { margin-top: 6px; font-size: 16px; font-weight: 700; color: var(--espuma); }
.prox-m { font-size: 12px; color: var(--claro); }
.prox-pe { margin: 8px 0 0; font-size: 14px; color: var(--fraco); }
.prox-pe a { color: var(--ciano); }
.ficha { width: min(560px, calc(100% - 24px)); max-height: calc(100dvh - 48px); padding: 0; border: 0; border-radius: 24px; background: var(--sup); color: var(--espuma); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1), 0 40px 80px -30px rgba(0,0,0,.9); }
.ficha::backdrop { background: rgba(3,7,15,.7); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.mo .ficha[open] { animation: ficha-abre .7s var(--ease-io) both; }
@keyframes ficha-abre { from { clip-path: inset(40% 10% 40% 10% round 24px); opacity: 0; } to { clip-path: inset(0 round 24px); opacity: 1; } }
.ficha-in { position: relative; padding: 28px; }
.ficha-x { position: absolute; right: 14px; top: 14px; width: 44px; height: 44px; border: 0; border-radius: 9999px; background: rgba(255,255,255,.08); color: #fff; font-size: 24px; cursor: pointer; }
.ficha-tags { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ciano); }
.ficha-esc { display: inline-block; margin: 8px 0 4px; font-size: 14px; color: var(--claro); }
.ficha .h2 { font-size: var(--t3); }
.ficha-quando { margin: 10px 0 0; font-size: 16px; color: var(--claro); }
.ficha-quadro { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 20px 0; }
.ficha-quadro div { padding: 12px; border-radius: 16px; background: rgba(255,255,255,.05); }
.ficha-quadro dd { margin: 0; font-size: 16px; font-weight: 700; } .ficha-quadro dt { font-size: 12px; color: var(--fraco); text-transform: uppercase; letter-spacing: .06em; }
.ficha h3 { margin: 18px 0 4px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--fraco); }
.ficha p { margin: 0; font-size: 14px; color: var(--claro); }
.ficha-acoes { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 6px; }
.ficha-acoes .bt-2 { border: 0; cursor: pointer; }
.ficha-lang button { margin-left: 6px; padding: 6px 10px; border: 0; border-radius: 9999px; background: rgba(255,255,255,.06); color: var(--claro); cursor: pointer; font-size: 12px; }
.ficha-lang button[aria-pressed="true"] { background: var(--ciano-e); color: #fff; }
.ficha-posters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px !important; }
.ficha-posters a { padding: 8px 12px; border-radius: 9999px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); color: var(--claro); text-decoration: none; font-size: 12px; }
.ficha-volta { margin-top: 20px; border: 0; background: none; color: var(--ciano); font-size: 14px; cursor: pointer; padding: 10px 0; }
@media (max-width: 860px) { .ficha-quadro { grid-template-columns: 1fr 1fr; } }

/* sem clarão: um título a partir fica escondido até o motor o partir (o motor põe-lhe o aria-label) */
.mo [data-split]:not([aria-label]) { visibility: hidden; }

/* «Ver tudo» e os painéis por porta */
.bt-3 { border: 0; background: none; cursor: pointer; color: var(--espuma); padding: 8px 14px; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(241,245,249,.4); }
.bt-3:hover { text-decoration-color: var(--ciano); }
.rp-lojas .bt-2 { border: 0; cursor: pointer; }
.painel { margin: 0 0 0 auto; width: min(720px, 100%); height: 100dvh; max-height: none; padding: 0; border: 0; border-radius: 24px 0 0 24px; background: var(--sup); color: var(--espuma); box-shadow: -40px 0 80px -30px rgba(0,0,0,.9); }
.painel::backdrop { background: rgba(3,7,15,.6); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.mo .painel[open] { animation: painel-abre .8s var(--ease-io) both; }
@keyframes painel-abre { from { clip-path: inset(0 0 0 100% round 24px); } to { clip-path: inset(0 0 0 0 round 24px 0 0 24px); } }
.pn-in { position: relative; padding: 32px clamp(20px, 4vw, 40px) 48px; }
.pn-in .h2 { font-size: var(--t3); margin-bottom: 18px; }
.pn-z { border-top: 1px solid var(--linha); }
.pn-z summary { cursor: pointer; padding: 16px 0; font-size: 16px; font-weight: 700; color: var(--espuma); }
.pn-z ul { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 10px; }
.pn-z li { font-size: 14px; color: var(--claro); line-height: 1.55; }
.pn-tipo { display: inline-block; margin-right: 8px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--fraco); }
.pn-lig a { color: var(--ciano); font-weight: 600; } .pn-lig span, .pn-bt span { color: var(--fraco); margin-left: 8px; }
.pn-img img { max-width: 220px; border-radius: 16px; margin-bottom: 6px; }
.pn-img span { display: block; font-size: 12px; color: var(--fraco); }
@media (max-width: 860px) { .painel { border-radius: 0; } }
/* a regra do rodapé da A (.rodape nav { display: flex }) não pode ganhar às colunas */
.rodape nav.rp-cols { display: grid; gap: 24px; }
@media (max-width: 860px) { .rodape nav.rp-cols { gap: 0; } }
@media (max-width: 860px) { .rodape { padding-bottom: calc(120px + env(safe-area-inset-bottom)); } }

/* ===================== VOLTA 2 (14/10, 22h50): cenas juntas, página mais curta ===================== */
/* a descida: véu por trás das frases (o branco tem de ler-se sobre o mar claro), os números no mar */
.descida { height: 175vh; }
.d-veu { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse 62% 34% at 50% 50%, rgba(6,14,26,.74) 0%, rgba(6,14,26,.6) 55%, rgba(6,14,26,.22) 82%, rgba(6,14,26,0) 100%); }
.d-cont { position: absolute; left: var(--gut); right: var(--gut); bottom: clamp(24px, 6vh, 56px); display: flex; flex-wrap: wrap; gap: 8px 48px; z-index: 2; }
.d-cont p { margin: 0; display: flex; align-items: baseline; gap: 12px; padding: 10px 18px 12px; border-radius: 9999px; background: rgba(6,14,26,.62); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); }
.d-cont strong { font-size: var(--t3); line-height: 1; color: #fff; }
.d-cont span { font-size: 14px; color: var(--claro); }
.d-letra .linha { white-space: nowrap; font-size: var(--t0); line-height: .86; letter-spacing: -.005em; text-align: left; }
.d-letra .linha + .linha { color: var(--ciano); }
.mo .d-letra { place-content: center start; padding: 0; overflow: hidden; }
.d-letra small { max-width: 52ch; margin: 28px var(--gut) 0; text-align: left; }
.rm .d-letra .linha, html:not(.mo) .d-letra .linha { white-space: normal; font-size: var(--t1); }

/* as portas: uma só cena presa cada */
.porta-cena { background: var(--elev); }
.porta-app { height: 185vh; }
.porta-os { height: 175vh; }
.porta-inst { height: 125vh; }
.escuro { position: absolute; inset: 0; background: var(--sup); opacity: 0; pointer-events: none; }
.porta-cena .legenda { z-index: 3; }
.cena-app { position: absolute; z-index: 4; top: 96px; bottom: 4vh; right: var(--gut); width: min(640px, 52vw); display: grid; grid-template-columns: 1fr 250px; gap: 36px; align-items: center; }
.cena-app .app-txt { min-height: 260px; }
.cena-app .tel { width: 250px; margin: 0; }
.mo .porta-app .tel .ecra img { opacity: 0; transform: scale(1.06) translateY(3%); clip-path: inset(100% 0 0 0); transition: opacity .55s var(--ease), transform .9s var(--ease), clip-path .9s var(--ease-io); }
.mo .porta-app[data-cur="0"] .ecra img:nth-child(1), .mo .porta-app[data-cur="1"] .ecra img:nth-child(1), .mo .porta-app[data-cur="2"] .ecra img:nth-child(2),
.mo .porta-app[data-cur="3"] .ecra img:nth-child(3), .mo .porta-app[data-cur="4"] .ecra img:nth-child(4),
.mo .porta-app:not([data-cur]) .ecra img:nth-child(1) { opacity: 1; transform: none; clip-path: inset(0 0 0 0); }
.porta-app[data-cur="1"] .prog i:nth-child(1), .porta-app[data-cur="2"] .prog i:nth-child(-n+2), .porta-app[data-cur="3"] .prog i:nth-child(-n+3), .porta-app[data-cur="4"] .prog i { background: var(--ciano); }
.cena-app .app-baixar { position: absolute; left: 0; bottom: -84px; }
.cena-os { position: absolute; z-index: 4; top: 100px; bottom: 5vh; left: var(--gut); right: var(--gut); display: grid; grid-template-columns: minmax(260px, 340px) 1fr; gap: 40px; align-items: center; }
.os-cab h3 { margin: 0 0 12px; font-size: var(--t4); line-height: 1.2; letter-spacing: -.02em; }
.os-cab p { margin: 0; font-size: 16px; color: var(--claro); }
.cena-os .os-vista { margin: 0; transform-origin: 50% 100%; }
.cena-os .os-nums { margin-top: 28px; gap: 12px 32px; }
.inst-escolas { position: absolute; z-index: 2; left: 0; right: 0; top: clamp(260px, 40vh, 380px); }
.inst-escolas .etq { margin: 0 var(--gut) 12px; }
.inst-escolas .etq span { display: block; margin-top: 6px; text-transform: none; letter-spacing: 0; font-weight: 400; font-size: 14px; color: var(--claro); }
.inst-escolas .fitas { margin: 0; }
.inst-escolas .fita { font-size: var(--t3); gap: 36px; }
.inst-escolas .fita a span { color: rgba(241,245,249,.34); }
.inst-escolas .fita a:nth-child(3n+1) span { color: var(--espuma); }
@media (max-width: 860px) {
  .cena-app { top: 84px; bottom: calc(92px + env(safe-area-inset-bottom)); left: var(--gut); right: var(--gut); width: auto; grid-template-columns: 1fr; grid-template-rows: auto 1fr; gap: 10px; align-items: start; justify-items: center; }
  .cena-app .tel { width: min(190px, 46vw); order: 2; }
  .cena-app .app-txt { order: 1; min-height: 150px; width: 100%; }
  .cena-app .app-step { inset: 26px 0 auto 0; }
  .cena-app .app-step h3 { font-size: var(--t4); }
  .cena-app .app-step p { font-size: 14px; }
  .cena-app .app-baixar { display: none; }
  .cena-os { top: 84px; bottom: calc(92px + env(safe-area-inset-bottom)); grid-template-columns: 1fr; gap: 16px; align-content: start; }
  .os-cab p { font-size: 14px; }
  .cena-os .os-nums { margin-top: 14px; }
  .inst-escolas { top: 200px; }
}
.rm .porta-cena, html:not(.mo) .porta-cena { height: auto; }
.rm .porta-cena > .stage, html:not(.mo) .porta-cena > .stage { height: auto; min-height: 100vh; display: grid; gap: 24px; padding: 120px var(--gut) 40px; }
.rm .porta-cena .foto, html:not(.mo) .porta-cena .foto { position: relative; height: 60vh; border-radius: 24px; }
.rm .porta-cena .hora, .rm .porta-cena .escuro, html:not(.mo) .porta-cena .hora, html:not(.mo) .porta-cena .escuro { display: none; }
.rm .porta-cena .legenda, .rm .cena-app, .rm .cena-os, .rm .inst-escolas, html:not(.mo) .porta-cena .legenda, html:not(.mo) .cena-app, html:not(.mo) .cena-os, html:not(.mo) .inst-escolas { position: relative; inset: auto; width: auto; }
.rm .app-step, html:not(.mo) .app-step { position: relative; inset: auto; margin-bottom: 20px; }

/* margens mais curtas (a página tinha 16,9 ecrãs) */
.sec { padding: clamp(72px, 8.4vw, 120px) 0; }
.modelo .mod-grid { margin-top: 48px; }
.perguntas { padding: clamp(56px, 6vw, 88px) 0; }
.final { min-height: 72vh; min-height: 72svh; }
.rp-col ul { gap: 6px; }
.rodape { padding-top: 56px; }

/* ===================== VOLTA 3 (14/10, 23h): só imagens verdadeiras, produto direito, texto inteiro ===================== */
/* o mar: fotografia viva (mexe com o rolar), véu para a frase, números dos três países */
.d-foto-caixa { position: absolute; inset: 0; overflow: hidden; }
.d-foto-caixa .d-foto { position: absolute; inset: -6% 0 0 0; width: 100%; height: 112%; object-fit: cover; }
.descida .d-fundo { background: var(--sup); opacity: 0; transform: none; }
.d-veu { background: radial-gradient(ellipse 66% 40% at 50% 46%, rgba(6,14,26,.8) 0%, rgba(6,14,26,.68) 50%, rgba(6,14,26,.3) 82%, rgba(6,14,26,.12) 100%), linear-gradient(180deg, rgba(6,14,26,0) 55%, rgba(6,14,26,.7) 100%); }
.descida .d-textos { padding-bottom: 12vh; }
.d-cont { align-items: flex-end; }
.d-cont .d-cont-n { padding: 10px 18px 12px; }
.d-cont .d-cont-p { flex-basis: 100%; margin: 4px 0 0; padding: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; font-size: 14px; color: #E2E8F0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; }
.d-cont-p i { width: 4px; height: 4px; border-radius: 9999px; background: var(--ciano); margin: 0 14px; }
@media (max-width: 860px) { .d-cont { gap: 8px 10px; bottom: calc(96px + env(safe-area-inset-bottom)); } .d-cont .d-cont-n { padding: 8px 14px 10px; } .d-cont-p i { margin: 0 8px; } .descida .d-textos { padding-bottom: 26vh; } }

/* as portas: a fotografia fica sempre (com vida), o texto entra e pára inteiro */
.porta-cena .legenda .etq { margin-bottom: 12px; }
.porta-cena .legenda .h2 { max-width: 15ch; }
.porta-cena .foto img { position: absolute; inset: -5% 0; width: 100%; height: 110%; object-fit: cover; }
.plano .foto::after { background: linear-gradient(180deg, rgba(6,14,26,.45) 0%, rgba(6,14,26,.15) 30%, rgba(6,14,26,.55) 58%, rgba(6,14,26,.92) 100%); }
/* os 4 ecrãs reais da app, direitos, a entrar uns por cima dos outros */
.cena-app { grid-template-columns: 1fr 260px; }
.pilha { position: relative; width: 260px; aspect-ratio: 620 / 1342; }
.pilha img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 28px; background: var(--sup); box-shadow: 0 34px 70px -28px rgba(0,0,0,.85), 0 0 0 1px rgba(255,255,255,.14); transition: transform .9s var(--ease), opacity .6s var(--ease), clip-path 1s var(--ease-io); transform-origin: 50% 0; }
.mo .porta-app .pilha img { opacity: 0; transform: translateY(80px) scale(.96); clip-path: inset(100% 0 0 0 round 28px); }
.mo .porta-app:not([data-cur]) .pilha img:nth-child(1), .mo .porta-app[data-cur="0"] .pilha img:nth-child(1), .mo .porta-app[data-cur="1"] .pilha img:nth-child(1),
.mo .porta-app[data-cur="2"] .pilha img:nth-child(2), .mo .porta-app[data-cur="3"] .pilha img:nth-child(3), .mo .porta-app[data-cur="4"] .pilha img:nth-child(4) { opacity: 1; transform: none; clip-path: inset(0 round 28px); }
.mo .porta-app[data-cur="2"] .pilha img:nth-child(1), .mo .porta-app[data-cur="3"] .pilha img:nth-child(2), .mo .porta-app[data-cur="4"] .pilha img:nth-child(3) { opacity: .6; transform: translateY(-26px) scale(.93); clip-path: inset(0 round 28px); }
.mo .porta-app[data-cur="3"] .pilha img:nth-child(1), .mo .porta-app[data-cur="4"] .pilha img:nth-child(2) { opacity: .32; transform: translateY(-50px) scale(.86); clip-path: inset(0 round 28px); }
.mo .porta-app[data-cur="4"] .pilha img:nth-child(1) { opacity: .14; transform: translateY(-72px) scale(.8); clip-path: inset(0 round 28px); }
.rm .pilha, html:not(.mo) .pilha { width: 100%; aspect-ratio: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.rm .pilha img, html:not(.mo) .pilha img { position: static; height: auto; }
/* o OS real, plano e de frente, numa moldura simples */
.cena-os .os-vista { border-radius: 16px; box-shadow: 0 40px 80px -36px rgba(0,0,0,.9), 0 0 0 1px rgba(255,255,255,.14); }
/* as 20 escolas: nomes inteiros, em pílulas que se lêem */
.inst-escolas { top: 108px; left: var(--gut); right: var(--gut); max-width: 980px; }
.inst-escolas .etq { margin: 0 0 12px; }
.chips-esc { display: flex; flex-wrap: wrap; gap: 8px; }
.chips-esc a { display: inline-flex; align-items: baseline; gap: 8px; padding: 8px 14px; border-radius: 9999px; background: rgba(6,14,26,.62); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; transition: box-shadow .3s; }
.chips-esc a:hover { box-shadow: inset 0 0 0 1px var(--ciano); }
.chips-esc em { font-style: normal; font-weight: 400; font-size: 12px; color: var(--claro); }
@media (max-width: 860px) {
  .inst-escolas { top: 92px; left: 0; right: 0; }
  .inst-escolas .etq { margin: 0 var(--gut) 10px; }
  .chips-esc { flex-wrap: nowrap; overflow-x: auto; padding: 0 var(--gut) 6px; scroll-snap-type: x mandatory; }
  .chips-esc a { scroll-snap-align: start; }
  .pilha { width: min(190px, 46vw); }
  .cena-app { grid-template-columns: 1fr; }
}
/* o modelo, por cima de uma fotografia */
.modelo-foto { position: relative; min-height: 100vh; min-height: 100svh; display: grid; align-items: center; overflow: hidden; background: var(--sup); padding: 110px 0 72px; }
.mod-foto { position: absolute; inset: 0; }
.mod-foto img { position: absolute; inset: -5% 0; width: 100%; height: 110%; object-fit: cover; }
.mod-foto::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,14,26,.86) 0%, rgba(6,14,26,.7) 50%, rgba(6,14,26,.45) 100%); }
.mod-in { position: relative; z-index: 2; }
.modelo-foto .mod-grid { background: rgba(6,14,26,.5); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%); max-width: 900px; }
.modelo-foto .mod strong { font-size: var(--t1); }
.modelo-foto .mod-nota { color: #E2E8F0; }
@media (max-width: 860px) { .mod-foto::after { background: rgba(6,14,26,.74); } .modelo-foto { padding-bottom: calc(110px + env(safe-area-inset-bottom)); } }
/* perguntas frequentes no cimo do rodapé */
.rodape .pf-grelha { padding: 8px 0 40px; border-bottom: 1px solid var(--linha); margin-bottom: 8px; }
.pf-tit { margin: 0; font-size: var(--t3); line-height: 1.1; letter-spacing: -.03em; color: var(--espuma); }
.rodape .pf summary { font-size: 16px; }
.rodape .pf p { font-size: 14px; }

/* ===================== O SURF TODAY DE HOJE, MELHORADO (14-15/10) ===================== */
.st-hero { position: relative; min-height: 92vh; min-height: 92svh; display: grid; align-items: center; overflow: hidden; text-align: center; }
.st-hero .st-foto { position: absolute; inset: -4% 0 0 0; width: 100%; height: 108%; object-fit: cover; opacity: .8; }
.st-hero .st-veu { background: radial-gradient(ellipse 70% 60% at 50% 45%, rgba(6,14,26,.62), rgba(6,14,26,.3) 70%), linear-gradient(180deg, rgba(6,14,26,.4) 0%, rgba(6,14,26,.2) 40%, var(--elev) 100%); }
.st-hero-in { position: relative; z-index: 2; padding: 130px 0 56px; display: grid; justify-items: center; }
.st-hero .st-h1 { max-width: 14ch; margin: 0 auto; }
.st-hero .lead { margin: 18px auto 0; max-width: 46ch; color: #E2E8F0; }
.st-conta { margin: 14px 0 0; font-size: 14px; color: var(--claro); }
.st-procura { margin: 28px auto 0; width: min(560px, 100%); display: flex; align-items: center; gap: 12px; padding: 0 20px; height: 56px; border-radius: 9999px; background: rgba(11,17,32,.55); -webkit-backdrop-filter: blur(20px) saturate(180%); backdrop-filter: blur(20px) saturate(180%); box-shadow: inset 0 1px 0 rgba(255,255,255,.16), inset 0 0 0 1px rgba(255,255,255,.12), 0 18px 40px -20px rgba(0,0,0,.8); }
.st-procura svg { width: 20px; height: 20px; color: var(--claro); flex: none; }
.st-procura input { flex: 1; min-width: 0; height: 100%; border: 0; background: none; color: #fff; font: inherit; font-size: 16px; outline: none; }
.st-procura input::placeholder { color: var(--claro); }
.st-procura:focus-within { box-shadow: inset 0 0 0 2px var(--ciano), 0 18px 40px -20px rgba(0,0,0,.8); }
.st-tabs { display: inline-flex; gap: 4px; margin-top: 18px; padding: 4px; border-radius: 9999px; background: rgba(11,17,32,.5); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.st-tabs button { border: 0; padding: 10px 18px; border-radius: 9999px; background: none; color: var(--claro); font-weight: 600; font-size: 14px; cursor: pointer; min-height: 44px; }
.st-tabs button[aria-selected="true"] { background: linear-gradient(135deg, var(--ciano-e), var(--ciano-f)); color: #fff; }
.st-nota-reg { margin: 14px 0 0; font-size: 14px; color: var(--claro); max-width: 52ch; }
.st-local { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 6px 14px; margin: 16px 0 0; padding: 10px 18px; border-radius: 9999px; background: rgba(11,17,32,.5); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); font-size: 14px; color: var(--claro); }
.st-local a { color: var(--ciano); font-weight: 600; }
.st-atalhos { display: flex; gap: 10px; margin: 16px 0 0; }
.st-atalhos a { display: inline-flex; align-items: baseline; gap: 8px; padding: 10px 18px; min-height: 44px; border-radius: 9999px; background: rgba(11,17,32,.5); box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); color: #fff; text-decoration: none; font-size: 14px; }
.st-atalhos span { color: var(--claro); font-size: 12px; }
.st-paises { margin: 8px 0 14px; }
.st-paises select { appearance: none; -webkit-appearance: none; padding: 10px 36px 10px 16px; min-height: 44px; border: 0; border-radius: 9999px; background: rgba(255,255,255,.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23CBD5E1' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center; box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.st-paises select option { color: #0B1120; }
.st-fila { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 280px); gap: 14px; overflow-x: auto; padding: 4px 2px 18px; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
.zc { position: relative; height: 220px; padding: 0; border: 0; border-radius: 24px; overflow: hidden; cursor: pointer; scroll-snap-align: start; text-align: left; color: #fff; background: var(--sup); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); transition: transform .4s var(--ease); }
.zc:hover { transform: translateY(-4px); }
.zc img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease); }
.zc:hover img { transform: scale(1.06); }
.zc::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,14,26,.1) 30%, rgba(6,14,26,.9) 100%); }
.zc-todas { display: grid; place-items: center; background: rgba(34,211,238,.1); box-shadow: inset 0 0 0 1px rgba(34,211,238,.5); font-size: 16px; }
.zc-todas::after { display: none; }
.zc-ex { position: absolute; z-index: 1; top: 12px; right: 12px; padding: 6px 10px; border-radius: 9999px; background: rgba(11,17,32,.62); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.zc-t { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 14px; display: grid; gap: 2px; }
.zc-t b { font-size: var(--t4); letter-spacing: -.02em; }
.zc-t span { font-size: 14px; color: #E2E8F0; }
.zc-t em { font-style: normal; font-size: 14px; font-weight: 700; color: var(--ciano); }
.st-filtros { margin: 4px 0 18px; }
.st-filtros summary { cursor: pointer; display: inline-flex; padding: 10px 16px; min-height: 44px; align-items: center; border-radius: 9999px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); font-size: 14px; font-weight: 600; }
.st-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.st-chips a, .st-chips button { padding: 8px 14px; min-height: 40px; display: inline-flex; align-items: center; border: 0; border-radius: 9999px; background: rgba(255,255,255,.06); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); color: var(--espuma); text-decoration: none; font-size: 14px; cursor: pointer; }
.st-chips button[aria-pressed="true"] { background: var(--ciano-e); color: #fff; }
.st-chips a:hover, .st-chips button:hover { box-shadow: inset 0 0 0 1px var(--ciano); }
.st-escolhe, .st-equip { display: flex; align-items: center; gap: 16px; margin: 18px auto 0; max-width: 720px; padding: 18px 20px; border-radius: 16px; background: linear-gradient(160deg, rgba(19,35,63,.85), rgba(15,23,42,.6)); box-shadow: inset 0 0 0 1px rgba(6,182,212,.25); text-decoration: none; color: inherit; }
.st-escolhe b, .st-equip b { display: block; font-size: 16px; color: #fff; }
.st-escolhe span, .st-equip span { font-size: 14px; color: var(--claro); }
.st-escolhe-ic { flex: none; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 9999px; background: rgba(34,211,238,.12); color: var(--ciano); }
.st-escolhe-ic svg { width: 20px; height: 20px; }
.st-equip { margin-top: 40px; } .st-equip .seta { margin-left: auto; flex: none; }
.st-todas { text-align: center; margin: 18px 0 40px; }
.st-todas .bt-2, .st-lojas .bt-2 { border: 0; cursor: pointer; padding: 8px 22px; }
.st-pronto { text-align: center; margin: 72px 0 0; }
.st-pronto .h2 { margin: 0 auto; }
.st-pronto > p { margin: 12px 0 22px; color: var(--claro); }
.st-lojas { display: flex; justify-content: center; gap: 10px; margin: 22px 0 0; }
.st-browser { margin: 12px 0 0; font-size: 14px; color: var(--fraco); } .st-browser a { color: var(--ciano); }
.st-guias { margin: 72px 0 0; padding-top: 28px; border-top: 1px solid var(--linha); }
.st-guias .etq { margin: 22px 0 6px; }
.st-guias .st-chips a { font-size: 14px; }
/* a capa da zona e da praia (a fotografia verdadeira da página de hoje, a mexer com o rolar) */
.st-capa { position: relative; min-height: 76vh; min-height: 76svh; display: grid; align-items: end; overflow: hidden; }
.st-capa-foto { position: absolute; inset: -6% 0 0 0; width: 100%; height: 112%; object-fit: cover; transform-origin: 50% 40%; }
.st-capa .st-veu { background: linear-gradient(180deg, rgba(6,14,26,.45) 0%, rgba(6,14,26,.2) 30%, rgba(6,14,26,.75) 72%, var(--elev) 100%); }
.st-capa-in { position: relative; z-index: 2; padding: 140px 0 48px; }
.st-capa .st-trilho { margin-bottom: 8px; color: #E2E8F0; }
.st-capa .st-trilho button { color: #fff; }
.st-zona-h1 { text-transform: uppercase; letter-spacing: -.02em; }
.st-capa .st-conta { font-size: 16px; color: #fff; }
.st-capa .bt { margin-top: 22px; }
.st-hoje { margin: 10px 0 0; font-size: 16px; color: #fff; }
.st-pilulas { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 18px 0 0; }
.st-pilulas span, .st-pilulas a:not(.bt) { padding: 8px 14px; border-radius: 9999px; background: rgba(11,17,32,.6); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: inset 0 0 0 1px rgba(255,255,255,.14); font-size: 14px; color: #fff; text-decoration: none; }
.st-pilulas .bt { margin: 0; }
.pgrelha { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; margin-top: 24px; }
.pc { position: relative; height: 300px; padding: 0; border: 0; border-radius: 24px; overflow: hidden; cursor: pointer; text-align: left; color: #fff; background: linear-gradient(160deg, var(--agua), var(--sup)); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); transition: transform .4s var(--ease); }
.pc:hover { transform: translateY(-4px); }
.pc img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease); }
.pc:hover img { transform: scale(1.06); }
.pc::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,14,26,0) 35%, rgba(6,14,26,.92) 100%); }
.pc-ini { position: absolute; inset: 0; display: grid; place-items: center; font-size: var(--t1); font-weight: 800; color: rgba(255,255,255,.18); }
.pc-preco { position: absolute; z-index: 1; top: 12px; right: 12px; padding: 6px 10px; border-radius: 12px; background: rgba(11,17,32,.7); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); font-size: 14px; font-weight: 800; color: var(--ciano); }
.pc-preco small { font-size: 12px; font-weight: 500; color: var(--claro); }
.pc-t { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 14px; display: grid; gap: 6px; }
.pc-t b { font-size: var(--t4); letter-spacing: -.02em; }
.pc-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.pc-chips i { font-style: normal; padding: 4px 10px; border-radius: 9999px; background: rgba(255,255,255,.14); font-size: 12px; }
.pc-chips i.c { background: rgba(34,211,238,.22); color: #CFFAFE; }
.pc-mar { font-size: 14px; color: #E2E8F0; }
.st-agora { margin: 8px 0 48px; padding: 24px; border-radius: 24px; background: linear-gradient(160deg, rgba(19,35,63,.85), rgba(15,23,42,.6)); box-shadow: inset 0 0 0 1px rgba(6,182,212,.25); }
.st-agora .h2 { font-size: var(--t3); margin-bottom: 16px; }
.st-aulas .h2, .st-pedir .h2 { margin-bottom: 8px; }
.st-sub { margin: 0 0 16px; font-size: 14px; color: var(--claro); }
.st-niveis { margin: 0 0 18px; }
.st-sep { margin-top: 48px; }
.st-pedir { margin: 56px 0 0; padding: 28px; border-radius: 24px; background: linear-gradient(160deg, rgba(19,35,63,.85), rgba(15,23,42,.6)); box-shadow: inset 0 0 0 1px rgba(6,182,212,.25); }
.st-pedir p:not(.etq) { margin: 8px 0 20px; color: var(--claro); max-width: 62ch; }
/* a confiança junto ao botão, como nas melhores lojas de experiências */
.confia { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 12px 0 0; font-size: 12px; color: var(--claro); }
.confia span::before { content: ''; display: inline-block; width: 6px; height: 10px; margin: 0 7px 1px 1px; border-right: 2px solid var(--vazia); border-bottom: 2px solid var(--vazia); transform: rotate(45deg); }
.verif { margin-left: 8px; padding: 2px 8px; border-radius: 9999px; background: rgba(52,211,153,.14); color: #A7F3D0; font-size: 12px; letter-spacing: 0; text-transform: none; font-weight: 600; }
.ficha .confia { margin-bottom: 4px; }
@media (max-width: 860px) {
  .st-hero-in { padding: 110px 0 40px; }
  .st-fila { grid-auto-columns: minmax(220px, 72vw); }
  .zc { height: 200px; }
  .st-capa-in { padding-bottom: 32px; }
  .pgrelha { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pc { height: 220px; } .pc-t b { font-size: 16px; } .pc-mar { font-size: 12px; }
  .st-equip, .st-escolhe { padding: 14px 16px; }
}

/* ===================== A BARRA MAIS VIDRO (15/10, pedido do dono) =====================
   Mais transparente (.6 em vez de .84), desfoque mais forte, linha de luz por cima, brilho por baixo.
   O texto passa a branco para manter 4,5:1 sobre os fundos mais claros (medido na régua). */
.nav, .pilula { background: linear-gradient(180deg, rgba(11,17,32,.62), rgba(11,17,32,.56)); -webkit-backdrop-filter: blur(26px) saturate(190%) brightness(.92); backdrop-filter: blur(26px) saturate(190%) brightness(.92);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.26), inset 0 0 0 1px rgba(255,255,255,.08), 0 14px 40px -16px rgba(0,0,0,.7), 0 12px 34px -20px rgba(34,211,238,.45); }
.nav { overflow: hidden; }
.nav::before { content: ''; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; overflow: hidden; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 48%); }
.nav::after { left: 14%; right: 14%; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(34,211,238,.7), transparent); opacity: 1; }
.nav-brilho { border-radius: 9999px; }
.nav .marca, .nav-links a, .nav-links .entrar, .troca .op-inicio, .troca.em-st .op-st { color: #fff; }
.troca-op, .troca.em-st .op-inicio { color: #F1F5F9; }
.pil-cta { display: none; }
@media (max-width: 860px) {
  .pilula { display: flex; align-items: center; gap: 6px; }
  .pilula .troca { min-width: 196px; height: 48px; }
  .pilula .troca-op { padding: 0 10px; font-size: 14px; }
  .pil-cta { display: inline-flex; min-height: 48px; padding: 0 18px; font-size: 14px; }
}
.d-cont .d-cont-p { flex-basis: auto; padding: 10px 18px; border-radius: 9999px; background: rgba(6,14,26,.62); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); }
@media (max-width: 860px) { .d-cont .d-cont-p { border-radius: 16px; font-size: 12px; } }

/* ===================== VOLTA 4 (15/10): um só mar por trás, a troca nova, fotografias da intro ===================== */
/* o vídeo do mar numa camada fixa: o mesmo no Início e no Surf Today */
#fundo-mar { position: fixed; inset: 0; z-index: 0; overflow: hidden; background: #0F172A; view-transition-name: fundo; }
#fundo-mar .fm-midia, #fundo-mar .hero-assenta { position: absolute; inset: 0; transform-origin: 50% 30%; will-change: transform; }
#fundo-mar video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .72; }
/* 18/10 (noite) · o vídeo do topo só aparece quando está a tocar; até lá (ou sem autoplay, no iPhone em Poupança de
   energia) vê-se por trás o fotograma do MESMO clipe: no computador o de sempre, no telemóvel o do clipe vertical */
#fundo-mar video:not(.a-tocar) { visibility: hidden; }
/* 19/10 (manhã) · o dono outra vez, com gravação: a cada recarga via-se primeiro OUTRA fotografia (as pessoas a andar
   ao pôr-do-sol, 01-1200) e só depois a onda. O «de sempre» que o comentário de cima promete é o hero-poster.jpg, o
   fotograma do próprio hero-surf.mp4 que o site antigo usava como poster. E vai escurecido como o vídeo (.72 sobre o
   fundo), senão a passagem para o vídeo dá um salto de brilho. */
#fundo-mar .hero-assenta { background: linear-gradient(rgba(11,17,32,.28), rgba(11,17,32,.28)), #0B1120 url(/assets/images/hero-poster.jpg) center / cover no-repeat; }
/* 19/10 · e no telemóvel também a mesma onda (o vídeo do telemóvel passou a ser o hero-surf-mobile): o mesmo fotograma */
/* 19/10 · o dono: «outra imagem em cima do vídeo do surfista na onda». O vídeo está a .72 e a fotografia de espera
   ficava por baixo dele a tocar: via-se a foto através do mar. Com o vídeo a tocar, a foto sai e fica só o fundo escuro. */
#fundo-mar .hero-assenta:has(video.a-tocar) { background-image: none; }
#fundo-mar::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,13,26,.5) 0%, rgba(5,13,26,.85) 100%); }
/* 18/10 · o Surf Today que o dono aprovou nas decisões (dec-st-novo): a barra em vidro e logo o carrossel das zonas,
   o texto de cima desce para baixo do carrossel, e o mar em vídeo por trás (x-st-fundo). Era uma camada só da
   pré-visualização (st1810.css); passa a viver aqui, só na vista do Surf Today. */
/* 18/10 · o dono, sobre o Surf Today: «muito mais GetYourGuide; a barra e logo o carrossel das zonas;
   muito texto em cima que empurra o carrossel para baixo; a barra maior, em vidro, como a do topo da
   inicial; as praias maiores quando se abre». Nada se apaga: o texto de cima desce para baixo do carrossel. */
#v-st .st-hero { min-height: 0 !important; }
/* 18/10 (noite) · o dono: «a barra a meio do primeiro ecrã e o carrossel logo por baixo, quase como no site que está no ar,
   mas sem as info todas»: a barra, o país e o carrossel são um bloco ao centro do primeiro ecrã; o resto fica abaixo da dobra */
#v-st .st-hero-in { padding: max(100px, calc(50svh - 200px)) 0 10px !important; }
#v-st .st-hero .st-h1 { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
#v-st .st-procura { width: min(1120px, calc(100vw - 24px)) !important; height: 64px !important; margin: 0 auto !important; padding: 0 24px !important;
  /* 18/10 · o dono: «a barra de pesquisa devia ser glass como a do header» — os mesmos valores do vidro da barra de cima */
  background: linear-gradient(180deg, rgba(11,17,32,.62), rgba(11,17,32,.56)) !important; -webkit-backdrop-filter: blur(26px) saturate(190%) brightness(.92) !important; backdrop-filter: blur(26px) saturate(190%) brightness(.92) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.26), inset 0 0 0 1px rgba(255,255,255,.08), 0 14px 40px -16px rgba(0,0,0,.7), 0 12px 34px -20px rgba(34,211,238,.45) !important; }
#v-st .st-procura input { font-size: 18px !important; }
#v-st .st-procura svg { width: 22px !important; height: 22px !important; }
#v-st .st-corpo { padding-top: 12px !important; }
#v-st .st-info-1810 { display: grid; justify-items: start; gap: 10px; margin: max(26px, calc(50svh - 204px)) 0 26px; text-align: left; }
#v-st .st-info-1810 > * { margin: 0 !important; }
#v-st .st-info-1810 .st-tabs { margin: 4px 0 0 !important; }
/* as praias, quando se abre uma zona: cartões grandes, como as atividades do GetYourGuide */
/* 18/10 · o dono: «as praias ficam muito grandes… mete um pouco mais pequenas» — 3→4 por fila a 1440, 420→360 de alto */
#v-st .pgrelha { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; gap: 18px !important; }
#v-st .pc { height: 360px !important; border-radius: 26px !important; }
#v-st .pc-t b { font-size: clamp(20px, 1.7vw, 25px) !important; }
@media (max-width: 860px) {#v-st .st-hero-in { padding-top: max(92px, calc(50svh - 190px)) !important; }#v-st .pgrelha { grid-template-columns: 1fr !important; }#v-st .pc { height: 300px !important; }
}
/* o cartão «Todas» não ocupa o lugar de uma zona: é um botão estreito no início do carrossel */
#v-st .st-fila { grid-auto-columns: auto !important; }
#v-st .st-fila .zc { width: 280px; height: 260px !important; }
#v-st .st-fila .zc-todas { width: 112px; }
@media (max-width: 860px) {#v-st .st-fila .zc { width: 74vw; height: 240px !important; }#v-st .st-fila .zc-todas { width: 96px; } }
/* 18/10 · o dono, na página das decisões: «tiraste o vídeo aí, fica muito escuro o fundo assim».
   O mar em vídeo volta a ver-se por trás da barra e do carrossel; só escurece depois do carrossel. */
#v-st .st-hero .st-veu { background: linear-gradient(180deg, rgba(6,14,26,.28) 0%, rgba(6,14,26,.18) 100%) !important; }
#v-st .st-corpo { background: linear-gradient(180deg, rgba(6,14,26,.18) 0, rgba(6,14,26,.3) calc(50svh + 60px), var(--elev) calc(50svh + 300px)) !important; }
@media (max-width: 860px) {#v-st .st-corpo { background: linear-gradient(180deg, rgba(6,14,26,.18) 0, rgba(6,14,26,.3) calc(50svh + 60px), var(--elev) calc(50svh + 280px)) !important; } #v-st .st-info-1810 { margin-top: max(26px, calc(50svh - 180px)); } }
html.modo-st #fundo-mar video { opacity: .9 !important; }
html.modo-st #fundo-mar::after { background: linear-gradient(180deg, rgba(5,13,26,.28) 0%, rgba(5,13,26,.62) 100%) !important; }
@media (max-width: 860px) {#v-st .st-procura input { font-size: 16px !important; }#v-st .st-procura { padding: 0 18px !important; } }

main { position: relative; z-index: 1; view-transition-name: conteudo; }
.topo-palco > .hero { background: none; }
.hero > div[style*="linear-gradient(180deg,rgba(5,13,26,0.5)"] { display: none; }
#v-st { background: none; }
#v-st .st-corpo { background: var(--elev); }
.st-hero .st-veu { background: radial-gradient(ellipse 70% 60% at 50% 45%, rgba(6,14,26,.5), rgba(6,14,26,.12) 70%), linear-gradient(180deg, rgba(6,14,26,0) 60%, var(--elev) 100%); }
.nav { view-transition-name: barra; } .pilula { view-transition-name: pilula; } .rodape { position: relative; }
/* a troca com View Transitions: o mar e a barra ficam vivos; só o conteúdo sai e entra */
::view-transition-group(fundo), ::view-transition-group(barra), ::view-transition-group(pilula), ::view-transition-group(root) { animation: none; }
::view-transition-old(fundo), ::view-transition-old(barra), ::view-transition-old(pilula), ::view-transition-old(root) { display: none; }
::view-transition-new(fundo), ::view-transition-new(barra), ::view-transition-new(pilula), ::view-transition-new(root) { animation: none; }
::view-transition-group(conteudo) { animation: none; }
::view-transition-old(conteudo) { animation: vt-sai 220ms cubic-bezier(.22,1,.36,1) both; }
::view-transition-new(conteudo) { animation: vt-entra 440ms cubic-bezier(.22,1,.36,1) 160ms both; }
.vt-volta::view-transition-old(conteudo) { animation-name: vt-sai-volta; }
.vt-volta::view-transition-new(conteudo) { animation-name: vt-entra-volta; }
@keyframes vt-sai { to { opacity: 0; transform: translateY(-18px); filter: blur(6px); } }
@keyframes vt-entra { from { opacity: 0; transform: translateY(28px); filter: blur(8px); } }
@keyframes vt-sai-volta { to { opacity: 0; transform: translateY(18px); filter: blur(6px); } }
@keyframes vt-entra-volta { from { opacity: 0; transform: translateY(-24px); filter: blur(8px); } }
/* o polegar desliza com um leve ressalto */
.troca-polegar { transition: transform .55s cubic-bezier(.34,1.56,.64,1); }
/* os cartões ganham luz ao passar o rato (a inclinação é feita em troca.js) */
.cartao, .zc, .pc { transition: transform .35s cubic-bezier(.22,1,.36,1), box-shadow .4s var(--ease); transform-style: preserve-3d; }
.cartao { position: relative; }
.cartao::after, .zc::before, .pc::before { content: ''; position: absolute; inset: 0; z-index: 2; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .4s var(--ease); background: radial-gradient(420px circle at var(--luz-x, 50%) var(--luz-y, 50%), rgba(255,255,255,.14), transparent 45%); }
.com-luz::after, .zc.com-luz::before, .pc.com-luz::before { opacity: 1; }
.bt-1 { transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s var(--ease), background-color .2s; }
/* os vídeos das cenas: o mesmo mar, noutro enquadramento */
.cena-video { position: absolute; inset: -6% 0 0 0; width: 100%; height: 112%; object-fit: cover; }
.d-video { object-position: 50% 30%; }
.m-video { object-position: 30% 60%; }
.mod-foto .cena-video { inset: -5% 0; height: 110%; }
/* o enquadramento de cada fotografia: a pessoa no seu lado, o texto no espaço livre */
.f-surf { object-position: 62% 40%; }
.f-escola { object-position: 30% 50%; }
.f-inst { object-position: 50% 32%; }
.final-foto { object-position: 50% 62%; }
@media (max-width: 860px) { .f-surf { object-position: 66% 50%; } .f-escola { object-position: 36% 50%; } .f-inst { object-position: 50% 30%; } .final-foto { object-position: 40% 55%; } }
/* as legendas das portas vão para o lado livre da fotografia, com o véu desse lado */
@media (min-width: 861px) {
  .porta-app .legenda { top: 120px; bottom: auto; }
  .porta-app .foto::after { background: linear-gradient(90deg, rgba(6,14,26,.86) 0%, rgba(6,14,26,.6) 34%, rgba(6,14,26,0) 58%), linear-gradient(180deg, rgba(6,14,26,.35), rgba(6,14,26,0) 30%, rgba(6,14,26,.4) 100%); }
  .porta-os .foto::after { background: linear-gradient(270deg, rgba(6,14,26,.88) 0%, rgba(6,14,26,.62) 34%, rgba(6,14,26,0) 60%), linear-gradient(180deg, rgba(6,14,26,.35), rgba(6,14,26,0) 30%, rgba(6,14,26,.45) 100%); }
  .porta-inst .foto::after { background: linear-gradient(90deg, rgba(6,14,26,.88) 0%, rgba(6,14,26,.62) 30%, rgba(6,14,26,0) 52%), linear-gradient(180deg, rgba(6,14,26,.45), rgba(6,14,26,0) 34%, rgba(6,14,26,.55) 100%); }
  .porta-os .legenda.dir { top: 140px; bottom: auto; }
  .porta-inst .legenda { bottom: clamp(32px, 7vh, 72px); max-width: 520px; }
  .porta-inst .inst-escolas { left: auto; right: var(--gut); width: min(520px, 36vw); top: auto; bottom: clamp(32px, 7vh, 72px); }
}
@media (max-width: 860px) {
  .plano .foto::after { background: linear-gradient(180deg, rgba(6,14,26,.55) 0%, rgba(6,14,26,.15) 28%, rgba(6,14,26,.55) 50%, rgba(6,14,26,.94) 76%); }
}
.final::after { background: linear-gradient(180deg, rgba(3,7,15,.35) 0%, rgba(3,7,15,.35) 40%, rgba(3,7,15,.92) 78%); }
/* o topo do Surf Today entra logo (sem ecrã vazio na troca): título palavra a palavra e, a seguir, a procura e os separadores */
.mo .st-hero [data-split] .w, .mo .st-hero [data-split] .w > span { transition-duration: .62s; transition-delay: calc(var(--i) * 38ms); }
.mo .st-hero [data-reveal] { transition-duration: .5s, .55s; }
::view-transition-new(conteudo) { animation-delay: 60ms; animation-duration: 480ms; }
::view-transition-new(conteudo) { animation-delay: 0ms; animation-duration: 520ms; }
::view-transition-old(conteudo) { animation-duration: 240ms; }
.mo .st-hero [data-split] .w { clip-path: inset(0 0 45% 0); }
.mo .st-hero [data-split] .w > span { transform: translate3d(0, 55%, 0); opacity: .15; }
.mo .st-hero [data-split].in .w { clip-path: inset(-25% -8% -25% -8%); }
.mo .st-hero [data-split].in .w > span { transform: none; opacity: 1; }

/* o OS: a secretária, depois as janelas, depois o destaque do que a frase diz (passos da cena presa) */
.os-passo { display: none; }
.os-foco { position: absolute; z-index: 3; border-radius: clamp(8px, 1.1vw, 16px); pointer-events: none; opacity: 0; transform: scale(1.06); box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45), 0 0 0 9999px rgba(3,7,15,.5); transition: opacity .5s var(--ease), transform .7s var(--ease); }
.os-foco.f2 { left: .97%; top: 3.78%; width: 19.79%; height: 60.44%; }
.os-foco.f3 { left: 21.53%; top: 5.22%; width: 19.86%; height: 36.89%; }
.os-foco.f4a { left: 21.53%; top: 43.11%; width: 15.69%; height: 41.56%; box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45); }
.os-foco.f4b { left: .97%; top: 66.44%; width: 19.79%; height: 23%; box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45); }
.porta-os[data-cur="4"] .os-foco.f4a::before { content: ''; position: absolute; inset: -9999px; box-shadow: none; }
.mo .porta-os[data-cur="2"] .f2, .mo .porta-os[data-cur="3"] .f3, .mo .porta-os[data-cur="4"] .f4a, .mo .porta-os[data-cur="4"] .f4b { opacity: 1; transform: none; }
.mo .porta-os[data-cur="4"] .os-tela::after { content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(3,7,15,.42); pointer-events: none; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 0 66.44%, .97% 66.44%, .97% 89.44%, 20.76% 89.44%, 20.76% 66.44%, 0 66.44%, 0 43.11%, 21.53% 43.11%, 21.53% 84.67%, 37.22% 84.67%, 37.22% 43.11%, 0 43.11%); }
.fx-f { font-weight: 400; transition: color .4s var(--ease), background-color .4s var(--ease); border-radius: 6px; }
.porta-os[data-cur="2"] .fx-f[data-f="2"], .porta-os[data-cur="3"] .fx-f[data-f="3"], .porta-os[data-cur="4"] .fx-f[data-f="4"] { color: #fff; background: rgba(34,211,238,.18); box-shadow: 0 0 0 3px rgba(34,211,238,.18); }
.rm .os-foco { display: none; }

/* ===================== A PREVISÃO DA PRAIA (tudo o que a página de hoje mostra, melhor de ler) ===================== */
.fc { margin: 8px 0 56px; display: grid; gap: 18px; }
.fc > div { border-radius: 24px; background: linear-gradient(160deg, rgba(19,35,63,.85), rgba(15,23,42,.6)); box-shadow: inset 0 0 0 1px rgba(6,182,212,.22); padding: clamp(18px, 2.4vw, 28px); }
.fc-agora { display: grid; grid-template-columns: minmax(220px, 1fr) 2fr; gap: 28px; align-items: start; }
.fc-agora .h2 { font-size: var(--t3); margin: 0 0 12px; }
.fc-alt { margin: 0; display: flex; align-items: baseline; gap: 12px; }
.fc-alt b { font-size: var(--t2); line-height: 1; color: #fff; }
.fc-alt span { font-size: 14px; color: var(--claro); }
.fc-meta { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin: 12px 0 0; font-size: 14px; color: var(--claro); }
.fc-conf { font-style: normal; padding: 4px 10px; border-radius: 9999px; background: rgba(251,191,36,.16); color: #FDE68A; font-weight: 600; }
.fc-agora-t > b { display: block; font-size: var(--t4); line-height: 1.3; color: #fff; }
.fc-agora-t > p { margin: 10px 0 16px; color: var(--claro); }
.fc-agora-t .bt { border: 0; cursor: pointer; min-height: 44px; padding: 8px 18px; font-size: 14px; }
.fc-ouro { font-size: 14px !important; color: var(--fraco) !important; margin: 14px 0 0 !important; }
.fc-res { margin: 4px 0 14px; color: var(--claro); }
.fc-res b { color: #fff; }
.fc-dias { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.fc-dias button { display: grid; justify-items: center; gap: 2px; padding: 10px 4px; border: 0; border-radius: 16px; background: rgba(255,255,255,.04); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); color: var(--claro); cursor: pointer; transition: background-color .3s, box-shadow .3s, transform .3s var(--ease); }
.fc-dias button:hover { transform: translateY(-2px); }
.fc-dias button[aria-selected="true"] { background: rgba(34,211,238,.14); box-shadow: inset 0 0 0 1.5px var(--ciano); color: #fff; }
.fc-dias span { font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.fc-dias b { font-size: var(--t4); color: #fff; }
.fc-dias i { font-style: normal; font-size: 14px; font-weight: 700; }
.fc-dias small { font-size: 12px; color: var(--fraco); }
.n-top { color: var(--ciano); } .n-bom { color: #67E8F9; } .n-medio { color: #FDE68A; } .n-baixo { color: var(--fraco); }
.fc-resumo { display: grid; grid-template-columns: 160px 1fr; gap: 24px; align-items: center; }
.fc-rosa { width: 150px; height: 150px; }
.fc-rosa circle { fill: rgba(255,255,255,.03); stroke: rgba(255,255,255,.16); }
.fc-rosa circle.in { fill: none; stroke: rgba(255,255,255,.08); stroke-dasharray: 2 4; }
.fc-rosa text { fill: var(--claro); font-size: 12px; text-anchor: middle; font-weight: 700; }
.fc-rosa g { transform-origin: 60px 60px; transition: transform .8s cubic-bezier(.34,1.56,.64,1); }
.fc-rosa .sw line { stroke: var(--ciano); stroke-width: 4; stroke-linecap: round; } .fc-rosa .sw path { fill: var(--ciano); }
.fc-rosa .vw line { stroke: #F1F5F9; stroke-width: 2.5; stroke-linecap: round; } .fc-rosa .vw path { fill: #F1F5F9; }
.fc-rosa-leg { display: flex; gap: 10px; justify-content: center; margin: 6px 0 0; font-size: 12px; color: var(--claro); }
.fc-rosa-leg i { display: inline-block; width: 12px; height: 3px; margin-right: 4px; vertical-align: middle; background: var(--ciano); } .fc-rosa-leg i.vw { background: #F1F5F9; }
.fc-onda { margin: 0; font-size: 16px; color: var(--claro); display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; }
.fc-onda > b { font-size: var(--t3); color: #fff; }
.fc-largo { padding: 4px 12px; border-radius: 9999px; background: rgba(96,165,250,.14); color: #DBEAFE; font-size: 14px; }
.fc-largo b { color: #fff; }
.fc-vento { margin: 6px 0 0; color: var(--claro); }
.fc-geral { margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 6px 14px; color: var(--claro); }
.fc-geral span { color: #fff; font-weight: 600; }
.fc-niveis { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.fc-nv { display: inline-flex; gap: 8px; padding: 6px 12px; border-radius: 9999px; font-size: 14px; background: rgba(255,255,255,.06); }
.fc-nv b { color: var(--claro); font-weight: 600; }
.fc-nv.ok { background: rgba(52,211,153,.16); color: #A7F3D0; } .fc-nv.nao { background: rgba(248,113,113,.14); color: #FECACA; } .fc-nv.meh { background: rgba(251,191,36,.14); color: #FDE68A; }
.fc-nota-niveis { margin: 10px 0 0; font-size: 12px; color: var(--fraco); }
.fc-det { margin: 18px 0 10px; font-size: 14px; color: var(--claro); min-height: 22px; }
.fc-det b { color: #fff; }
.fc-horas { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(44px, 1fr); gap: 4px; overflow-x: auto; padding-bottom: 6px; }
.fc-h { display: grid; justify-items: center; gap: 4px; padding: 8px 2px; border: 0; border-radius: 12px; background: none; color: var(--claro); cursor: pointer; font-size: 12px; transition: background-color .25s; }
.fc-h:hover, .fc-h.sel { background: rgba(255,255,255,.06); }
.fc-h.sel { box-shadow: inset 0 0 0 1px rgba(34,211,238,.5); }
.fc-h.boa { background: rgba(34,211,238,.08); }
.fc-h.passou { opacity: .55; }
.fc-b { width: 18px; height: 90px; display: flex; align-items: flex-end; border-radius: 6px; background: rgba(255,255,255,.05); overflow: hidden; }
.fc-b i { display: block; width: 100%; height: 100%; border-radius: 6px; background: linear-gradient(180deg, var(--ciano), var(--ciano-e)); transform-origin: 50% 100%; transform: scaleY(var(--a)); transition: transform .9s cubic-bezier(.22,1,.36,1); transition-delay: calc(var(--k) * 35ms); }
.mo .fc-horas:not(.in) .fc-b i { transform: scaleY(.02); }
.fc-h.boa .fc-b i { background: linear-gradient(180deg, #A5F3FC, var(--ciano)); }
.fc-h b { font-size: 14px; color: #fff; }
.fc-v { color: #E2E8F0; } .fc-r { color: var(--fraco); }
.fc-dir { display: inline-block; font-size: 14px; color: #F1F5F9; line-height: 1; }
.fc-m { width: 8px; height: 8px; border-radius: 9999px; background: rgba(148,163,184,.4); }
.fc-m.vazia { background: var(--vazia); } .fc-m.cheia { background: var(--cheia); }
.fc-hh { color: var(--fraco); }
.fc-leg { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 10px 0 0; font-size: 12px; color: var(--fraco); }
.fc-leg i { display: inline-block; width: 8px; height: 8px; border-radius: 9999px; margin-right: 6px; vertical-align: 0; }
.fc-leg .lb { width: 6px; height: 12px; border-radius: 2px; background: var(--ciano); } .fc-leg .lm.vazia { background: var(--vazia); } .fc-leg .lm.cheia { background: var(--cheia); } .fc-leg .lj { width: 14px; height: 10px; border-radius: 3px; background: rgba(34,211,238,.18); }
.fc-leg b { color: #E2E8F0; font-weight: 600; } .fc-leg b.r { color: var(--fraco); }
.fc-spot dl { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin: 0; }
.fc-spot dl div { padding: 12px 14px; border-radius: 16px; background: rgba(255,255,255,.04); }
.fc-spot dt { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--fraco); }
.fc-spot dd { margin: 4px 0 0; font-size: 16px; color: #fff; }
.fc-seg { margin: 14px 0 14px; padding: 14px 16px; border-radius: 16px; background: rgba(251,191,36,.08); box-shadow: inset 0 0 0 1px rgba(251,191,36,.25); color: #FDE68A; }
.fc-seg b { display: block; margin-bottom: 4px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
@media (max-width: 860px) {
  .fc-agora { grid-template-columns: 1fr; gap: 14px; }
  .fc-dias { grid-template-columns: repeat(7, minmax(52px, 1fr)); overflow-x: auto; }
  .fc-resumo { grid-template-columns: 1fr; justify-items: start; }
  .fc-rosa { width: 120px; height: 120px; }
}
.fc { grid-template-columns: minmax(0, 1fr); }
.fc > div, .fc-agora > div, .fc-resumo > div { min-width: 0; }
/* o mosaico do mar de hoje (fotografias verdadeiras das praias, do próprio site) */
.d-mosaico { position: absolute; inset: -8% -2% -8% -2%; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 1fr); gap: 14px; padding: 14px; }
.dm { position: relative; margin: 0; border-radius: 24px; overflow: hidden; background: var(--sup); box-shadow: 0 30px 60px -30px rgba(0,0,0,.8); }
.dm img { width: 100%; height: 100%; object-fit: cover; }
.dm figcaption { position: absolute; left: 14px; right: 14px; bottom: 12px; display: grid; gap: 2px; padding: 8px 12px; border-radius: 14px; background: rgba(6,14,26,.62); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.dm figcaption b { font-size: 14px; color: #fff; } .dm figcaption span { font-size: 12px; color: var(--claro); }
.descida .d-veu { background: radial-gradient(ellipse 60% 42% at 50% 46%, rgba(6,14,26,.86) 0%, rgba(6,14,26,.7) 55%, rgba(6,14,26,.35) 100%); }
@media (max-width: 860px) { .d-mosaico { grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(3, 1fr); gap: 8px; padding: 8px; } .dm figcaption { left: 8px; right: 8px; bottom: 8px; padding: 6px 8px; } }
.modelo-foto { background: radial-gradient(ellipse 80% 70% at 85% 30%, rgba(8,145,178,.28), transparent 60%), linear-gradient(180deg, var(--agua), var(--sup)); }
@media (min-width: 861px) {
  .porta-inst .inst-escolas { left: var(--gut); right: auto; width: min(560px, 40vw); top: 110px; bottom: auto; }
  .porta-inst .legenda { bottom: clamp(28px, 6vh, 64px); }
  .porta-inst .chips-esc a { padding: 6px 12px; font-size: 14px; }
}
@media (min-width: 861px) {
  .porta-inst .inst-escolas { width: min(700px, 49vw); }
  .porta-inst .chips-esc { gap: 6px; }
  .porta-inst .chips-esc a { padding: 5px 10px; font-size: 12px; }
  .porta-inst .chips-esc em { font-size: 12px; }
}
/* a folha não pode ser contentor de rolagem (partia o sticky no Safari): o canto redondo faz-se com recorte */
.folha { overflow: visible; clip-path: inset(0 round 24px 24px 0 0); }

/* ===================== VOLTA 5 (15/10): as fotografias novas, o mar, o modelo, o fecho ===================== */
/* para quem aprende: três fotografias que trocam com os ecrãs da app (vida, sem enfeites) */
.foto-troca .fa { position: absolute; inset: -5% 0; width: 100%; height: 110%; object-fit: cover; opacity: 0; transition: opacity 1s var(--ease); }
.foto-troca .fa1 { opacity: 1; object-position: 50% 55%; }
.foto-troca .fa2 { object-position: 60% 50%; }
.foto-troca .fa3 { object-position: 50% 35%; }
.mo .porta-app[data-cur="2"] .fa2, .mo .porta-app[data-cur="3"] .fa3, .mo .porta-app[data-cur="4"] .fa3 { opacity: 1; }
.mo .porta-app[data-cur="2"] .fa1, .mo .porta-app[data-cur="3"] .fa1, .mo .porta-app[data-cur="4"] .fa1 { opacity: 0; }
/* os enquadramentos: o texto no espaço livre (céu), nunca por cima das pessoas */
.f-escola { object-position: 50% 30%; }
.f-inst { object-position: 50% 62%; }
.final-foto { object-position: 50% 60%; }
@media (max-width: 860px) { .foto-troca .fa1 { object-position: 62% 50%; } .f-escola { object-position: 38% 40%; } .f-inst { object-position: 60% 62%; } .final-foto { object-position: 62% 60%; } }
@media (min-width: 861px) {
  .porta-os .foto::after { background: linear-gradient(180deg, rgba(6,14,26,.7) 0%, rgba(6,14,26,.35) 34%, rgba(6,14,26,0) 52%), linear-gradient(180deg, transparent 70%, rgba(6,14,26,.5)); }
  .porta-os .legenda.dir { top: 120px; }
  .porta-inst .foto::after { background: linear-gradient(180deg, rgba(6,14,26,.62) 0%, rgba(6,14,26,.2) 36%, rgba(6,14,26,0) 50%, rgba(6,14,26,.55) 74%, rgba(6,14,26,.9) 100%); }
}
/* o mar: o título numa faixa limpa (nunca a cavalo das juntas) e os números a sério */
.descida .d-veu { background: linear-gradient(180deg, rgba(6,14,26,.35) 0%, rgba(6,14,26,.86) 30%, rgba(6,14,26,.9) 62%, rgba(6,14,26,.55) 78%, rgba(6,14,26,.92) 100%); }
.descida .d-t { max-width: 22ch; }
.d-cont { left: 0; right: 0; bottom: 0; padding: 18px var(--gut) clamp(20px, 4vh, 40px); display: grid; grid-template-columns: auto auto 1fr; align-items: end; gap: 8px 48px; background: linear-gradient(180deg, transparent, rgba(6,14,26,.8) 40%); }
.d-cont .d-cont-n { padding: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; display: grid; gap: 2px; }
.d-cont .d-cont-n strong { font-size: var(--t1); line-height: .9; }
.d-cont .d-cont-n span { font-size: 14px; color: #E2E8F0; }
.d-cont .d-cont-p { grid-column: 1 / -1; padding: 10px 0 0; border-top: 1px solid rgba(255,255,255,.14); border-radius: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; font-size: 14px; color: var(--claro); }
@media (max-width: 860px) { .d-cont { grid-template-columns: auto auto; gap: 6px 28px; bottom: calc(80px + env(safe-area-inset-bottom)); } .d-cont .d-cont-p { font-size: 12px; } .descida .d-textos { padding-bottom: 32vh; } }
/* o fecho: título mais pequeno, no céu; o selo e os botões limpos */
.final { align-items: start; }
.final-in { padding: clamp(110px, 16vh, 150px) 0 40px; }
.final .h2 { font-size: var(--t2); max-width: 16ch; }
.final::after { background: linear-gradient(180deg, rgba(3,7,15,.7) 0%, rgba(3,7,15,.35) 34%, rgba(3,7,15,0) 52%, rgba(3,7,15,.35) 100%); }
.rp-creditos { margin: 10px 0 0; font-size: 12px; color: var(--fraco); }
/* o modelo: o caminho do aluno, em duas linhas que se percebem em 3 segundos */
.modelo-cam { position: relative; padding: clamp(90px, 10vw, 140px) 0; background: radial-gradient(ellipse 70% 60% at 85% 20%, rgba(8,145,178,.22), transparent 60%), linear-gradient(180deg, var(--elev), var(--sup)); }
.mc-grelha { display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: center; }
.caminhos { list-style: none; margin: 40px 0 0; padding: 0; display: grid; gap: 14px; }
.cam { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(90px, 1fr) auto auto; align-items: center; gap: 16px; padding: 18px 20px; border-radius: 24px; background: rgba(255,255,255,.04); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); }
.cam-de { font-size: 16px; font-weight: 700; color: #fff; }
.cam-de small { display: block; margin-top: 4px; font-size: 14px; font-weight: 400; color: var(--claro); }
.cam-linha { position: relative; height: 2px; background: rgba(255,255,255,.14); border-radius: 2px; }
.cam-linha i { position: absolute; left: 0; top: -4px; width: 10px; height: 10px; border-radius: 9999px; background: var(--vazia); box-shadow: 0 0 12px rgba(52,211,153,.8); }
.c20 .cam-linha i { background: var(--ciano); box-shadow: 0 0 12px rgba(34,211,238,.8); }
.mo .cam-linha i { animation: viaja 2.6s cubic-bezier(.65,0,.35,1) infinite; }
.mo .c20 .cam-linha i { animation-delay: .5s; }
@keyframes viaja { 0% { transform: translateX(0); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { transform: translateX(calc(var(--lw, 120px) - 10px)); opacity: 0; } }
.cam-linha em { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 4px 10px; border-radius: 9999px; background: var(--sup); box-shadow: inset 0 0 0 1px rgba(34,211,238,.5); font-style: normal; font-size: 12px; font-weight: 600; color: #CFFAFE; white-space: nowrap; }
.cam-para { padding: 8px 12px; border-radius: 9999px; background: rgba(255,255,255,.08); font-size: 14px; font-weight: 600; color: #fff; white-space: nowrap; }
.cam-pc { font-family: 'Archivo SB', 'Inter SB', sans-serif; font-stretch: 62%; font-weight: 800; font-size: var(--t2); line-height: 1; color: var(--espuma); min-width: 2.4ch; text-align: right; }
.cam-pc .gig-m { font-size: inherit; }
.c20 .cam-pc { color: var(--ciano); }
.modelo-cam .mod-nota { margin-top: 20px; color: #E2E8F0; font-size: 14px; } .modelo-cam .mod-nota b { color: #fff; }
.mc-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 0; }
.mc-foto { margin: 0; position: relative; border-radius: 24px; overflow: hidden; aspect-ratio: 4 / 5; box-shadow: 0 40px 80px -36px rgba(0,0,0,.9), 0 0 0 1px rgba(255,255,255,.1); }
.mc-foto img { position: absolute; inset: -6% 0; width: 100%; height: 112%; object-fit: cover; object-position: 40% 50%; }
@media (max-width: 860px) {
  .mc-grelha { grid-template-columns: 1fr; gap: 28px; }
  .cam { grid-template-columns: 1fr auto; gap: 10px 12px; }
  .cam-de { grid-column: 1 / -1; }
  .cam-linha { grid-column: 1 / 2; margin: 14px 0; }
  .cam-para { grid-column: 1 / 2; justify-self: start; }
  .cam-pc { grid-column: 2; grid-row: 2 / 4; }
  .mc-foto { aspect-ratio: 4 / 3; }
}
@media (min-width: 861px) { .porta-os .legenda.dir { max-width: min(440px, 31vw); right: var(--gut); } .porta-os .legenda .h2 { font-size: var(--t3); } }

/* ===================== VOLTA 6 (15/10): pedidos urgentes do dono ===================== */
/* a app: um só telemóvel; o ecrã troca dentro da moldura (nunca aparecem tiras dos ecrãs de trás) */
.mo .porta-app .pilha img { transform: none !important; clip-path: inset(0 round 28px) !important; opacity: 0 !important; transition: opacity .5s cubic-bezier(.22,1,.36,1); }
.mo .porta-app:not([data-cur]) .pilha img:nth-child(1), .mo .porta-app[data-cur="0"] .pilha img:nth-child(1), .mo .porta-app[data-cur="1"] .pilha img:nth-child(1),
.mo .porta-app[data-cur="2"] .pilha img:nth-child(2), .mo .porta-app[data-cur="3"] .pilha img:nth-child(3), .mo .porta-app[data-cur="4"] .pilha img:nth-child(4) { opacity: 1 !important; }
/* a fotografia 15 (para quem ensina): as pessoas à esquerda, inteiras; a legenda no céu e mar à direita (63%-96%) */
.f-escola { object-position: 100% 50%; }
@media (min-width: 861px) {
  .porta-os .legenda.dir { left: 63vw; right: 4vw; max-width: none; top: 120px; bottom: auto; }
  .porta-os .legenda .h2 { font-size: var(--t3); max-width: none; }
  .porta-os .foto::after { background: linear-gradient(270deg, rgba(6,14,26,.72) 0%, rgba(6,14,26,.5) 32%, rgba(6,14,26,0) 40%), linear-gradient(180deg, rgba(6,14,26,.3), rgba(6,14,26,0) 30%, rgba(6,14,26,.35) 100%); }
  /* para quem dá a aula: a rapariga a rir; o texto à esquerda, longe da cara e das mãos */
  .f-inst { object-position: 50% 30%; }
  .porta-inst .inst-escolas { width: min(560px, 38vw); }
  .porta-inst .legenda { max-width: min(520px, 38vw); }
  .porta-inst .foto::after { background: linear-gradient(90deg, rgba(6,14,26,.86) 0%, rgba(6,14,26,.62) 30%, rgba(6,14,26,0) 46%), linear-gradient(180deg, rgba(6,14,26,.3), rgba(6,14,26,0) 30%, rgba(6,14,26,.35) 100%); }
}
/* no telemóvel: a fotografia em cima, inteira, e o texto num bloco por baixo (nunca por cima das pessoas) */
@media (max-width: 860px) {
  .porta-os .foto, .porta-inst .foto { bottom: 50%; }
  .porta-os .foto::after, .porta-inst .foto::after { background: linear-gradient(180deg, rgba(6,14,26,.25) 0%, rgba(6,14,26,0) 30%, rgba(6,14,26,0) 80%, var(--elev) 100%); }
  .f-escola { object-position: 28% 50%; }
  .f-inst { object-position: 70% 40%; }
  .porta-os .legenda, .porta-inst .legenda { top: 51%; bottom: auto; left: var(--gut); right: var(--gut); }
  .porta-os .legenda .h2, .porta-inst .legenda .h2 { font-size: var(--t2); }
  .porta-inst .inst-escolas { top: auto; bottom: calc(86px + env(safe-area-inset-bottom)); }
}
/* o modelo no molde da letra da C: as linhas gigantes passam (enfeite); o texto lê-se inteiro; a tabela dos canais */
.modelo-letra { padding: clamp(96px, 14vh, 160px) 0 clamp(80px, 10vh, 120px); background: linear-gradient(180deg, var(--sup), var(--elev)); overflow: hidden; }
.modelo-letra .linha { white-space: nowrap; font-size: var(--t0); line-height: .86; }
.modelo-letra .linha + .linha { color: var(--ciano); }
.modelo-letra .ml-tit { margin-top: 44px; max-width: 18ch; }
.modelo-letra .lead { margin-top: 16px; }
.tabela { margin-top: 40px; }
.tab-l { display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: baseline; padding: 20px 0; box-shadow: inset 0 -1px 0 rgba(241,245,249,.14); }
.tab-l span { font-size: var(--t4); font-weight: 600; color: var(--espuma); }
.tab-l strong { font-family: 'Archivo SB', 'Inter SB', sans-serif; font-stretch: 62%; font-weight: 800; font-size: var(--t2); line-height: 1; color: #fff; min-width: 3ch; text-align: right; }
.tab-l.mk span, .tab-l.mk strong { color: var(--ciano); }
.tab-l.mk { box-shadow: inset 0 -1px 0 rgba(34,211,238,.4), inset 0 1px 0 rgba(34,211,238,.4); background: linear-gradient(90deg, rgba(34,211,238,.08), transparent 70%); }
.modelo-letra .mod-nota { margin-top: 22px; color: #E2E8F0; font-size: 14px; } .modelo-letra .mod-nota b { color: #fff; }
.rm .modelo-letra .linha, html:not(.mo) .modelo-letra .linha { white-space: normal; font-size: var(--t1); padding: 0 var(--gut); }
@media (max-width: 860px) {
  .porta-inst .foto { bottom: 58%; }
  .porta-inst .legenda { top: 43%; }
  .porta-inst .inst-escolas .etq span { display: none; }
  .porta-inst .inst-escolas { bottom: calc(84px + env(safe-area-inset-bottom)); }
  .porta-inst .legenda p { font-size: 16px; }
}
/* enquanto as linhas gigantes passam por baixo dela, a barra fica mais opaca (lê-se sempre) */

/* a fotografia de cada cena abre (clip-in da C) quando a cena APARECE, e não quando fica presa: nunca meia fotografia com vazio por baixo */
.mo .plano .foto[data-reveal="clip"] { clip-path: inset(0 0 100% 0); transition: clip-path 1.1s cubic-bezier(.77,0,.18,1); }
.mo .plano .foto[data-reveal="clip"].in { clip-path: inset(0 0 0 0); }

/* ===================== VOLTA 7 (15/10): fotografias com a cor delas; o texto ao lado, nunca por cima de pessoas ===================== */
/* o véu da cena inteira sai (tirava a cor); fica só um gradiente atrás de cada bloco de texto */
.escuro { display: none !important; }
/* para quem aprende: a fotografia numa janela à esquerda (cor intacta); o texto e depois a app à direita */
@media (min-width: 861px) {
  .porta-app .janela-foto { inset: 104px auto 5vh var(--gut); width: 46vw; border-radius: 24px; overflow: hidden; box-shadow: 0 40px 80px -36px rgba(0,0,0,.85), 0 0 0 1px rgba(255,255,255,.1); }
  .porta-app .janela-foto::after { display: none; }
  .porta-app .janela-foto .fa1 { object-position: 50% 30%; }
  .porta-app .janela-foto .fa2 { object-position: 62% 50%; }
  .porta-app .janela-foto .fa3 { object-position: 50% 40%; }
  .porta-app .legenda { left: calc(46vw + var(--gut) + 48px); right: var(--gut); top: auto; bottom: 12vh; max-width: none; }
  .porta-app .cena-app { left: calc(46vw + var(--gut) + 40px); right: var(--gut); width: auto; }
  .porta-app .leg-in { will-change: opacity; }
}
.porta-app .legenda .leg-in { }
/* a legenda do aprende sai quando a app entra, também no computador (a app fica no lugar do texto) */
@media (max-width: 860px) {
  .porta-app .janela-foto { bottom: 50%; }
  .porta-app .janela-foto::after { background: linear-gradient(180deg, rgba(6,14,26,.25) 0%, rgba(6,14,26,0) 30%, rgba(6,14,26,0) 80%, var(--elev) 100%); }
  .porta-app .legenda { top: 51%; bottom: auto; }
  .porta-app .janela-foto .fa1 { object-position: 46% 30%; }
}
/* para quem ensina: as pranchas na areia; o texto no lado da areia livre, com o gradiente só atrás dele */
.f-escola { object-position: 50% 70%; }
@media (min-width: 861px) {
  .porta-os .legenda.dir { left: var(--gut); right: auto; max-width: min(560px, 42vw); top: auto; bottom: 10vh; }
  .porta-os .foto::after { background: linear-gradient(90deg, rgba(6,14,26,.82) 0%, rgba(6,14,26,.6) 30%, rgba(6,14,26,0) 50%); }
  .porta-os .legenda .h2 { font-size: var(--t2); }
}
@media (max-width: 860px) { .f-escola { object-position: 30% 70%; } }
/* o OS, quando entra, traz o seu próprio fundo atrás do texto da esquerda */
.cena-os::before { content: ''; position: absolute; inset: -100vh -10vw -100vh -10vw; z-index: -1; background: linear-gradient(90deg, rgba(6,14,26,.92) 0%, rgba(6,14,26,.8) 36%, rgba(6,14,26,.35) 70%); pointer-events: none; }
/* o instrutor: uma camada de texto de cada vez (o bloco do instrutor, depois a lista das escolas, no mesmo sítio) */
.porta-inst { height: 175vh; }
@media (min-width: 861px) {
  .porta-inst .inst-escolas { left: var(--gut); right: auto; top: auto; bottom: clamp(28px, 6vh, 64px); width: min(620px, 44vw); }
  .porta-inst .chips-esc a { padding: 6px 12px; font-size: 14px; }
  .porta-inst .chips-esc em { font-size: 12px; }
}
@media (max-width: 860px) { .porta-inst .inst-escolas { top: 43%; bottom: auto; } .porta-inst .inst-escolas .etq span { display: inline; } .porta-inst .chips-esc { flex-wrap: wrap; overflow: visible; padding: 0 var(--gut); } }
/* a fotografia dela mais em baixo: a cara e o sorriso inteiros e abaixo da barra durante a cena toda */
.porta-inst .foto img { inset: auto 0 -6% 0; top: max(96px, 11vh); height: calc(100% - max(96px, 11vh) + 6%); }
@media (max-width: 860px) { .porta-inst .foto img { top: 84px; height: calc(100% - 84px + 6%); } }
.porta-inst .f-inst { object-position: 50% 0%; transform-origin: 50% 0; }
@media (max-width: 860px) { .porta-inst .f-inst { object-position: 70% 0%; } }

/* ===== 15/10 madrugada · nenhum ecrã vazio, nenhum véu, uma camada de texto de cada vez ===== */
/* o mosaico das praias: sai o véu sobre as fotografias; cada frase tem o seu próprio fundo, só atrás dela */
.descida .d-veu { display: none; }
.mo .descida .d-t { inset: 0 0 16vh 0; margin: auto; width: fit-content; height: fit-content; max-width: min(820px, calc(100vw - 2 * var(--gut))); display: block; padding: 26px 36px 30px; border-radius: 28px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); filter: none; transition: opacity .12s linear, transform .3s var(--ease); }
.mo .descida .d-t.on { transition: opacity .34s var(--ease) .16s, transform .5s var(--ease) .16s; } /* a que sai acaba aos .12s, a que entra começa aos .16s: nunca duas ao mesmo tempo */
.mo .descida .d-t small { margin-top: 14px; }
@media (max-width: 860px) { .mo .descida .d-t { inset: 0 0 30vh 0; padding: 18px 20px 20px; border-radius: 22px; } }
/* a app: o passo que sai some depressa; o que entra chega inteiro antes do ecrã do telemóvel mudar */
.mo .app-step { filter: none; transition: opacity .1s linear, transform .3s var(--ease); }
.mo .app-step.on { transition: opacity .2s var(--ease) .11s, transform .32s var(--ease) .11s; } /* o texto chega inteiro (.31s) antes do ecrã do telemóvel (.44s) */
/* o ecrã que sai só se apaga depois de o que entra estar à vista: o telemóvel nunca fica vazio, nem a rolar depressa */
.mo .porta-app .pilha img { transition: opacity .2s linear .38s; }
.mo .porta-app:not([data-cur]) .pilha img:nth-child(1), .mo .porta-app[data-cur="0"] .pilha img:nth-child(1), .mo .porta-app[data-cur="1"] .pilha img:nth-child(1),
.mo .porta-app[data-cur="2"] .pilha img:nth-child(2), .mo .porta-app[data-cur="3"] .pilha img:nth-child(3), .mo .porta-app[data-cur="4"] .pilha img:nth-child(4) { transition: opacity .28s cubic-bezier(.22,1,.36,1) .16s; z-index: 2; }
/* o rectângulo atrás das linhas gigantes: era o «passar o rato» das linhas do Surf Today (.linha:hover), que apanhava
   também estas linhas. Aqui não há nada para carregar, por isso não há fundo nem mãozinha. */
.letra .linha, .letra .linha:hover, .d-letra .linha, .d-letra .linha:hover { background: none; cursor: default; }

/* ===== 15/10 · O MAR E QUEM APRENDE NUMA SÓ CENA (a régua: o topo e o mosaico) ===== */
.descida { height: 374vh; }
.descida .ancora { position: absolute; left: 0; top: calc(100vh + 274vh * .39); width: 1px; height: 1px; }
.d-abre { position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none; clip-path: inset(50% 50% 50% 50%); }
.d-abre img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; transform-origin: 0 0; will-change: transform; }
.dm-abre { background: var(--sup); }
.descida .d-textos { z-index: 3; }
.d-cont-sai { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.d-cont-sai .d-cont { pointer-events: auto; }
/* a caixa que sai sobe um pouco e apaga-se; a que entra vem de baixo (nunca duas ao mesmo tempo) */
.mo .descida .d-t.antes { transform: translate3d(0,-26px,0) scale(.98); }
.mo .descida .d-abrir, .mo .descida .d-fechar, .mo .descida .d-fim { display: none; }
/* a caixa de vidro de lado (quem aprende e os passos da app): o mesmo vidro, encostada em baixo à esquerda, por cima da areia */
.mo .descida .d-t.ap-caixa { inset: auto auto 7vh var(--gut); margin: 0; width: min(560px, 42vw); max-width: none; font-size: 16px; font-weight: 400; letter-spacing: 0; line-height: 1.55; text-align: left; padding: 26px 32px 28px; }
.descida .ap-caixa .etq { margin-bottom: 12px; }
.descida .ap-tit { margin: 0; font-size: var(--t3); line-height: 1.06; letter-spacing: -.035em; font-weight: 800; color: #fff; text-wrap: balance; }
.descida .ap-frase { margin: 12px 0 0; font-size: var(--t5); color: var(--claro); max-width: 44ch; }
.descida .ap-caixa .ctas { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 10px; }
.descida .ap-baixar { margin: 18px 0 0; }
/* o telemóvel: sobe de dentro da fotografia, à direita, com o ecrã real direito */
.ap-tel { position: absolute; z-index: 2; right: var(--gut); bottom: 6vh; width: clamp(190px, 18.5vw, 280px); aspect-ratio: 1206 / 2622; pointer-events: none; }
.ap-tel .pilha { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; }
.ap-tel .pilha img { border-radius: 24px; box-shadow: 0 40px 80px -30px rgba(0,0,0,.85), 0 0 0 1px rgba(255,255,255,.16); }
.mo .descida .pilha img { opacity: 0; transform: none; clip-path: inset(0 round 24px); transition: opacity .2s linear .38s; }
.mo .descida .pilha img:first-child { opacity: 1; }
.mo .descida[data-cur="6"] .pilha img:first-child, .mo .descida[data-cur="7"] .pilha img:first-child, .mo .descida[data-cur="8"] .pilha img:first-child, .mo .descida[data-cur="9"] .pilha img:first-child { opacity: 0; }
.mo .descida[data-cur="6"] .pilha img:nth-child(2), .mo .descida[data-cur="7"] .pilha img:nth-child(3), .mo .descida[data-cur="8"] .pilha img:nth-child(4), .mo .descida[data-cur="9"] .pilha img:nth-child(4) { opacity: 1; transition: opacity .28s cubic-bezier(.22,1,.36,1) .16s; z-index: 2; }
@media (max-width: 860px) {
  .mo .descida .d-t.ap-caixa { inset: auto var(--gut) calc(84px + env(safe-area-inset-bottom)) var(--gut); width: auto; padding: 18px 20px 20px; border-radius: 22px; }
  .mo .descida .d-t.ap-passo { inset: 74px var(--gut) auto var(--gut); padding: 10px 16px 12px; }
  .descida .ap-passo .etq { margin-bottom: 4px; font-size: 11px; }
  .descida .ap-passo .ap-tit { font-size: var(--t4); }
  .descida .ap-passo .ap-frase { margin-top: 4px; font-size: 14px; line-height: 1.45; }
  .descida .ap-frase { font-size: 15px; }
  .descida .ap-caixa .ctas { margin-top: 14px; gap: 8px; }
  .descida .ap-baixar { display: none; }
  .ap-tel { right: 0; left: 0; margin: 0 auto; width: 130px; bottom: calc(84px + env(safe-area-inset-bottom)); }
}
/* sem movimento: tudo à vista, por ordem */
.rm .d-abre, html:not(.mo) .d-abre { position: relative; inset: auto; height: 70vh; clip-path: none; margin: 0 var(--gut); border-radius: 24px; }
.rm .d-abre img, html:not(.mo) .d-abre img { transform: none; }
.rm .ap-tel, html:not(.mo) .ap-tel { position: relative; inset: auto; margin: 32px auto; width: 220px; }
.rm .d-cont-sai, html:not(.mo) .d-cont-sai { position: relative; }
/* a caixa de quem aprende nunca toca nas pessoas: em ecrãs baixos e no telemóvel fica mais compacta */
@media (min-width: 861px) and (max-height: 820px) {
  .mo .descida .d-t.ap-caixa { bottom: 3vh; padding: 20px 28px 22px; }
  .descida .ap-frase { margin-top: 8px; }
  .descida .ap-caixa .ctas { margin-top: 14px; }
}
@media (max-width: 860px) {
  .descida .ap-caixa .etq { margin-bottom: 6px; font-size: 11px; }
  .descida .ap-frase { font-size: 14px; line-height: 1.45; margin-top: 8px; }
  .descida .ap-caixa .ctas { flex-wrap: wrap; gap: 6px; margin-top: 12px; }
  .descida .ap-caixa .ctas .bt { min-height: 40px; font-size: 14px; padding: 6px 6px 6px 14px; gap: 8px; white-space: nowrap; }
  .descida .ap-caixa .ctas .bt-2, .descida .ap-caixa .ctas .bt-3 { padding-right: 12px; }
  .descida .ap-caixa .ctas .bt .ic { width: 28px; height: 28px; }
  .mo .descida .d-t.ap-caixa { padding: 14px 16px 16px; }
}

/* ===== 15/10 · quem aprende com as fotografias do dono (P2 cresce do mosaico; P1 e o telemóvel no mosaico da app) ===== */
.descida { height: 393vh; }
.descida .ancora { top: calc(100vh + 293vh * .36); }
.d-abre img { object-position: 50% 50%; }
/* a caixa de quem aprende: de lado, à direita, a meio da altura, por cima da água livre (a cara dela fica ao centro) */
.mo .descida .d-textos .d-t.ap-caixa { inset: 0 var(--gut) 0 auto; margin: auto 0; width: min(420px, 28vw); height: fit-content; }
/* o mosaico da app */
.ap-mosaico { position: absolute; z-index: 2; inset: 100px var(--gut) 5vh var(--gut); display: grid; grid-template-columns: auto auto minmax(0, 1fr); grid-template-rows: minmax(0, 1fr) minmax(0, 1.15fr); gap: 14px; pointer-events: none; }
.ap-t { margin: 0; position: relative; border-radius: 24px; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(0,0,0,.8); }
.ap-p1 { grid-row: 1 / 3; grid-column: 1; height: 100%; aspect-ratio: 2 / 3; }
.ap-p1 img { width: 100%; height: 100%; object-fit: cover; object-position: 55% 40%; }
.ap-mosaico .ap-tel { grid-row: 1 / 3; grid-column: 2; position: relative; inset: auto; margin: 0; width: auto; height: 100%; aspect-ratio: 1206 / 2622; overflow: visible; box-shadow: none; }
.ap-p2 { grid-row: 1; grid-column: 3; background: transparent; box-shadow: none; }
.ap-cel { grid-row: 2; grid-column: 3; position: relative; pointer-events: auto; }
.mo .descida .ap-cel .d-t.ap-passo { inset: 0; margin: 0; width: auto; height: auto; max-width: none; display: flex; flex-direction: column; justify-content: flex-end; padding: 24px 28px 28px; border-radius: 24px; }
.mo .descida .pilha img { transition: opacity .2s linear .38s; }
.mo .descida[data-cur="6"] .pilha img:first-child { opacity: 1; }
.mo .descida[data-cur="7"] .pilha img:first-child, .mo .descida[data-cur="8"] .pilha img:first-child, .mo .descida[data-cur="9"] .pilha img:first-child, .mo .descida[data-cur="10"] .pilha img:first-child { opacity: 0; }
.mo .descida[data-cur="6"] .pilha img:nth-child(2), .mo .descida[data-cur="7"] .pilha img:nth-child(3), .mo .descida[data-cur="8"] .pilha img:nth-child(4), .mo .descida[data-cur="9"] .pilha img:nth-child(4) { opacity: 0; }
.mo .descida[data-cur="7"] .pilha img:nth-child(2), .mo .descida[data-cur="8"] .pilha img:nth-child(3), .mo .descida[data-cur="9"] .pilha img:nth-child(4) { opacity: 1; transition: opacity .28s cubic-bezier(.22,1,.36,1) .16s; z-index: 2; }
@media (max-width: 860px) {
  .d-abre img { object-position: 49% 50%; }
  .mo .descida .d-textos .d-t.ap-caixa { inset: 74px var(--gut) auto var(--gut); margin: 0; width: auto; }
  .ap-mosaico { inset: 74px 12px calc(84px + env(safe-area-inset-bottom)) 12px; grid-template-columns: auto auto; justify-content: center; grid-template-rows: minmax(0, .8fr) minmax(0, 1.2fr) auto; gap: 8px; }
  .ap-p2 { grid-row: 1; grid-column: 1 / 3; }
  .ap-p1 { grid-row: 2; grid-column: 1; }
  .ap-mosaico .ap-tel { grid-row: 2; grid-column: 2; }
  .ap-cel { grid-row: 3; grid-column: 1 / 3; min-height: 128px; }
  .mo .descida .ap-cel .d-t.ap-passo { padding: 14px 18px 16px; border-radius: 20px; }
}
.rm .ap-mosaico, html:not(.mo) .ap-mosaico { position: relative; inset: auto; margin: 32px var(--gut); height: 80vh; }
@media (min-width: 861px) and (max-height: 820px) { .mo .descida .d-textos > .d-t:not(.ap-caixa) { inset: 0 0 27vh 0; } }
/* o mosaico que sobe é o .ap-sobe (um para o computador, outro para o telemóvel, cada um no seu tempo) */
.ap-t.ap-p1 { overflow: visible; box-shadow: none; border-radius: 0; }
.ap-sobe { position: absolute; inset: 0; }
.ap-p1 > .ap-sobe > .ap-sobe { border-radius: 24px; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(0,0,0,.8); }
.ap-p1 img { position: absolute; inset: 0; }

/* ===== 15/10 · A COMISSÃO: a V1 «As duas portas, em mosaico», trazida de variantes-comissao/ (vc.css + v1.css) ===== */
:root { --ciano-claro: #A5F3FC; --topo: 96px; --baixo: 32px; }
@media (max-width: 860px) { :root { --topo: 84px; --baixo: 96px; } }
.vc-cena { position: relative; }
.vc-palco { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; }
.vc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* o conta-quilómetros: cada algarismo é uma tira 0-9-0 que só se mexe com transform */
.odo { display: inline-flex; align-items: flex-start; line-height: 1; white-space: nowrap; }
.odo-d { display: inline-block; height: 1em; overflow: hidden; }
.odo-tira { display: block; will-change: transform; }
.odo-tira > span { display: block; height: 1em; line-height: 1; }
.odo-pc { display: inline-block; height: 1em; line-height: 1; }

/* ---------- sem movimento: tudo no estado final, nada preso ---------- */
.vc-rm .vc-cena { height: auto !important; }
/* ---------- A LINGUAGEM DO TOPO DA D2 (valores tirados do d2.css: .descida .d-t, .dm, .d-cont) ----------
   Mosaico: cantos de 24 px, sombra 0 30px 60px -30px, intervalo de 14 px (8 no telemóvel).
   Caixa de vidro: rgba(6,14,26,.66), desfoque 16 px e saturação 130%, cantos de 28 px (22 no telemóvel),
   título em --t2 a 1,04 e -0,035em, frase em --t5 a 1,55. Números: Archivo estreita a 800, em --t1. */
.vc-mos { position: absolute; margin: 0; border-radius: 24px; overflow: hidden; background: var(--sup); box-shadow: 0 30px 60px -30px rgba(0,0,0,.8); will-change: transform; }
.vc-mos img { width: 100%; height: 100%; object-fit: cover; display: block; }
.vc-vidro { border-radius: 28px; padding: 26px 36px 30px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); text-align: center; }
.vc-vidro .vt { margin: 0 auto; max-width: 22ch; font-size: var(--t2); line-height: 1.04; letter-spacing: -.035em; font-weight: 800; text-wrap: balance; }
.vc-vidro .vs { display: block; margin: 14px auto 0; max-width: 44ch; font-size: var(--t5); line-height: 1.55; color: var(--claro); font-weight: 400; letter-spacing: 0; }
.vc-num strong { display: block; font-family: 'Archivo SB', 'Inter SB', sans-serif; font-stretch: 62%; font-weight: 800; font-size: var(--t1); line-height: .9; color: #fff; font-variant-numeric: tabular-nums; }
.vc-num b { display: block; margin-top: 6px; font-size: 16px; line-height: 1.35; color: #fff; font-weight: 700; }
.vc-num span { display: block; margin-top: 2px; font-size: 14px; line-height: 1.45; color: #E2E8F0; }
.vc-num.ci strong { color: var(--ciano); }
.vc-anel { box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45); }
@media (max-width: 860px) {
  .vc-mos { border-radius: 24px; }
  .vc-vidro { border-radius: 22px; padding: 18px 20px 20px; }
  .vc-num span { font-size: 16px; }
}
/* texto só para leitores de ecrã quando há movimento (com «reduzir movimento» passa a ver-se) */
.vc-mo .vc-sr-mo { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* V1 · AS DUAS PORTAS, EM MOSAICO
   A linguagem do topo da d2 (mosaicos de cantos de 24, a caixa de vidro, números como o 161 e o 37, as mesmas
   sombras e curvas), noutra composição: a caixa de vidro chega sozinha ao meio do ecrã e sobe; por baixo, as duas
   portas. A da escola são três mosaicos com material REAL do canal (o cartão de aula com QR, o balcão do OS, o
   calendário onde entra o iCal); a do marketplace é a app, real. Cada porta tem o seu número por cima.
   A caixa nunca fica por cima da junção de dois mosaicos: está sozinha, sobre o vazio. */

.v1 { height: 290vh; height: 290svh; background: var(--sup); }
.v1 .vc-palco { background: var(--sup); display: grid; grid-template-columns: 1.54fr 1fr; grid-template-rows: auto auto minmax(0, 1fr);
  column-gap: 14px; row-gap: 18px; padding: calc(var(--topo) + 4px) var(--gut) 24px; }

.v1-vidro { grid-column: 1 / -1; grid-row: 1; justify-self: center; position: relative; z-index: 3; display: grid; max-width: min(820px, 100%); will-change: transform, opacity; }
.v1-passo { grid-area: 1 / 1; align-self: center; }
.v1-vidro .vs { text-wrap: balance; }
.v1-ci { color: var(--ciano); }

.v1-num { margin: 0; padding: 0 6px; align-self: end; will-change: transform, opacity; }
.v1-num span { max-width: 46ch; }
.v1-num-a { grid-column: 1; grid-row: 2; }
.v1-num-b { grid-column: 2; grid-row: 2; }

.v1-porta { grid-row: 3; min-height: 0; display: grid; gap: 14px; }
.v1-porta-a { grid-column: 1; grid-template-columns: 1fr .62fr; grid-template-rows: 1fr 1fr; }
.v1-porta-b { grid-column: 2; grid-template-rows: 1fr; }
.v1 .v1-t { position: relative; min-height: 0; }
.t-qr { grid-column: 1; grid-row: 1; }
.t-ical { grid-column: 1; grid-row: 2; }
.t-balcao { grid-column: 2; grid-row: 1 / 3; }
.v1-porta-a .v1-t img { position: absolute; left: 0; right: 0; bottom: 0; top: 46px; width: 100%; height: calc(100% - 46px); }
/* a legenda vive numa faixa própria por cima da captura, para não tapar o texto que a captura tem */
.t-qr img { object-position: 50% 82%; }
.t-ical img { object-position: 50% 0; }
.t-balcao img { object-position: 50% 0; }
/* a legenda de cada mosaico: a pílula de vidro da d2 (a dos números da descida) */
.v1-t figcaption { position: absolute; left: 14px; top: 12px; margin: 0; padding: 6px 14px; border-radius: 9999px; font-size: 14px; font-weight: 700; line-height: 1.3; color: #fff;
  background: rgba(6,14,26,.62); -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); will-change: opacity; }
/* a app: o ecrã real, direito, por cima de si próprio desfocado (fixo, não anima) */
.t-app { background: var(--elev); }
.t-app-fundo { position: absolute; inset: -10%; width: 120% !important; height: 120% !important; object-fit: cover; filter: blur(24px) brightness(.55) saturate(1.2); }
.t-app-ecra { position: absolute; top: 6%; bottom: 6%; left: 0; right: 0; margin: 0 auto; height: 88% !important; width: auto !important; object-fit: contain; border-radius: 22px;
  box-shadow: 0 40px 80px -36px rgba(0,0,0,.85), 0 0 0 1px rgba(255,255,255,.1); }
.m-anel { position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; box-shadow: inset 0 0 0 2px var(--ciano), inset 0 0 40px rgba(34,211,238,.35); }

.v1-fecho { padding: clamp(40px, 6vh, 64px) 0 clamp(80px, 12vh, 120px); background: var(--sup); }
.v1-nota-rm { display: none; }

@media (max-width: 860px) {
  .v1 { height: 300svh; }
  .v1 .vc-palco { grid-template-columns: 1fr 1fr; column-gap: 8px; row-gap: 12px; padding: var(--topo) var(--gut) var(--baixo); }
  .v1-vidro .vs { font-size: 16px; margin-top: 10px; }
  .v1-num { padding: 0 2px; }
  .v1-num span { display: none; }
  .v1-porta { gap: 8px; }
  .v1-porta-a { grid-template-columns: 1fr; grid-template-rows: repeat(3, minmax(0, 1fr)); }
  .t-qr { grid-row: 1; } .t-balcao { grid-column: 1; grid-row: 2; } .t-ical { grid-row: 3; }
  .v1-t figcaption { left: 8px; top: 6px; padding: 3px 10px; font-size: 16px; }
  .v1-porta-a .v1-t img { top: 38px; height: calc(100% - 38px); }
  .t-qr img { object-position: 50% 40%; }
  .t-app-ecra { top: 3%; bottom: 3%; height: 94% !important; border-radius: 16px; }
}

/* sem movimento: o estado final, parado */
.vc-rm .m-anel { opacity: 1; }
.vc-rm .v1-p2 { display: none; }
.vc-rm .v1 .vc-palco { min-height: 100vh; min-height: 100svh; }
.vc-rm .v1-porta { min-height: 360px; }
.vc-rm .v1-nota-rm { display: block; margin: 0 0 24px; font-size: var(--t5); color: var(--claro); max-width: 56ch; }
.vc-rm .v1-nota-rm b { color: #fff; }

.v1 { height: 240vh; height: 240svh; } @media (max-width: 860px) { .v1 { height: 250svh; } }

/* ===== 15/10 · PARA QUEM ENSINA: A03 em parallax atrás, o OS grande, o vidro em cima à esquerda, os números por baixo ===== */
.en2 { height: 300vh; background: var(--sup); position: relative; }
.en2 .stage { background: var(--sup); }
.en-foto { position: absolute; left: 0; top: 0; bottom: 0; width: 44vw; overflow: hidden; }
.en-foto img { position: absolute; inset: -6% 0; width: 100%; height: 112%; object-fit: cover; object-position: 50% 55%; }
.en-os { position: absolute; z-index: 2; right: var(--gut); top: 0; bottom: 0; margin: auto 0; width: min(57vw, 880px); height: fit-content; }
.en2 .os-vista { margin: 0; transform-origin: 50% 60%; border-radius: 16px; box-shadow: 0 40px 80px -36px rgba(0,0,0,.9), 0 0 0 1px rgba(255,255,255,.14); }
.en-vidro { position: absolute; z-index: 3; left: var(--gut); top: 108px; width: min(500px, 34vw); }
.en-caixa { position: absolute; left: 0; right: 0; top: 0; border-radius: 28px; padding: 26px 32px 28px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); }
.en-caixa .etq { margin-bottom: 12px; }
.en-caixa .ap-tit { margin: 0; font-size: var(--t3); line-height: 1.06; letter-spacing: -.035em; font-weight: 800; color: #fff; text-wrap: balance; }
.en-caixa .ap-frase { margin: 12px 0 0; font-size: var(--t5); line-height: 1.55; color: var(--claro); }
.en-caixa .ctas { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 10px; }
.en-caixa .fx-f { font-weight: 600; color: #fff; border-radius: 6px; padding: 0 3px; transition: background .3s, box-shadow .3s; }
.mo .en-caixa { transition: opacity .12s linear, transform .3s var(--ease); }
.mo .en2 .en-a { opacity: 1; }
.mo .en2 .en-b { opacity: 0; transform: translate3d(0,40px,0) scale(.98); pointer-events: none; }
.mo .en2:not([data-cur="0"]):not(:not([data-cur])) .en-a { opacity: 0; transform: translate3d(0,-26px,0) scale(.98); pointer-events: none; }
.mo .en2:not([data-cur="0"]):not(:not([data-cur])) .en-b { opacity: 1; transform: none; pointer-events: auto; transition: opacity .34s var(--ease) .16s, transform .5s var(--ease) .16s; }
.en-nums { position: absolute; z-index: 3; right: var(--gut); bottom: clamp(20px, 4vh, 40px); width: min(57vw, 880px); display: flex; gap: 8px 48px; align-items: flex-end; }
.en-nums .d-cont-n { margin: 0; display: grid; gap: 2px; }
.en-nums strong { font-size: var(--t1); line-height: .9; color: #fff; }
.en-nums .d-cont-n + .d-cont-n strong { color: var(--ciano); }
.en-nums span { font-size: 14px; color: #E2E8F0; }
.en2[data-cur="2"] .fx-f[data-f="2"], .en2[data-cur="3"] .fx-f[data-f="3"], .en2[data-cur="4"] .fx-f[data-f="4"] { background: rgba(34,211,238,.18); box-shadow: 0 0 0 3px rgba(34,211,238,.18); }
@media (min-width: 861px) and (max-height: 820px) { .en-nums strong { font-size: var(--t2); } .en-vidro { top: 96px; } .en-caixa { padding: 20px 26px 22px; } }
@media (max-width: 860px) {
  .en2 { height: 320svh; }
  .en-foto { width: auto; right: 0; }
  .en-vidro { top: 76px; left: var(--gut); right: var(--gut); width: auto; }
  .en-caixa { padding: 16px 18px 18px; border-radius: 22px; }
  .en-caixa .ap-frase { font-size: 14px; line-height: 1.45; margin-top: 8px; }
  .en-caixa .ctas { margin-top: 12px; gap: 6px; }
  .en-caixa .ctas .bt { min-height: 40px; font-size: 14px; padding: 6px 6px 6px 14px; gap: 8px; }
  .en-caixa .ctas .bt .ic { width: 28px; height: 28px; }
  .en-caixa .ctas .bt-2, .en-caixa .ctas .bt-3 { padding-right: 12px; }
  .en-os { left: var(--gut); right: var(--gut); width: auto; top: auto; bottom: calc(96px + 92px + env(safe-area-inset-bottom)); margin: 0; }
  .mo .en-os { opacity: 0; transition: opacity .4s var(--ease), transform .6s var(--ease); transform: translate3d(0,60px,0); }
  .mo .en2:not([data-cur="0"]):not(:not([data-cur])) .en-os { opacity: 1; transform: none; }
  .en-nums { left: var(--gut); right: var(--gut); width: auto; bottom: calc(92px + env(safe-area-inset-bottom)); gap: 4px 28px; }
  .mo .en-nums { opacity: 0; transition: opacity .4s var(--ease) .2s; }
  .mo .en2:not([data-cur="0"]):not(:not([data-cur])) .en-nums { opacity: 1; }
  .en-nums strong { font-size: var(--t2); }
  .en-nums span { font-size: 12px; }
}
.rm .en2, html:not(.mo) .en2 { height: auto; }
.rm .en2 .stage, html:not(.mo) .en2 .stage { position: relative; height: auto; display: grid; gap: 24px; padding: 110px var(--gut) 40px; }
.rm .en-foto, .rm .en-os, .rm .en-vidro, .rm .en-caixa, .rm .en-nums, html:not(.mo) .en-foto, html:not(.mo) .en-os, html:not(.mo) .en-vidro, html:not(.mo) .en-caixa, html:not(.mo) .en-nums { position: relative; inset: auto; width: auto; margin: 0; height: auto; }
.rm .en-foto, html:not(.mo) .en-foto { height: 60vh; border-radius: 24px; }
/* a fotografia de Sagres é alta: presa ao topo e mais alta do que o ecrã, para as pessoas (a meio da imagem) ficarem
   abaixo do vidro; o céu e a falésia ficam por trás da caixa */
@media (min-width: 861px) { .en-foto img { inset: 0 0 auto 0; height: max(135%, 1100px); object-position: 50% 0; transform-origin: 50% 0; } }
@media (min-width: 861px) { .en-os, .en-nums { width: min(calc(56vw - var(--gut) - 16px), 880px); } } /* o OS começa depois da fotografia: nunca por cima das pessoas dela */

/* ===== 15/10 · PARA QUEM DÁ A AULA: a rapariga a rir a toda a largura (sem véu), o texto num vidro do lado livre,
   e as escolas como fichas de vidro que entram em cascata de baixo ===== */
.passo-marca { display: none; }
.porta-inst .foto::after { display: none; }
.porta-cena.porta-inst .foto img { inset: -6% 0; top: -6%; height: 112%; object-position: 50% 30%; transform-origin: 50% 50%; }
.porta-cena.porta-inst .leg-in { padding: 26px 32px 28px; border-radius: 28px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); }
.porta-cena.porta-inst .leg-in .h2 { font-size: var(--t3); line-height: 1.06; max-width: none; }
.porta-cena.porta-inst .leg-in p { font-size: var(--t5); color: var(--claro); }
.mo .porta-inst .chips-esc a { opacity: 0; transform: translate3d(0,26px,0) scale(.96); transition: opacity .3s var(--ease), transform .5s var(--ease); }
.mo .porta-inst[data-cur="1"] .chips-esc a { opacity: 1; transform: none; transition-delay: calc(var(--i) * 35ms); }
@media (min-width: 861px) {
  .porta-cena.porta-inst .legenda, .porta-cena.porta-inst .inst-escolas { left: var(--gut); right: auto; top: 0; bottom: 0; margin: auto 0; height: fit-content; width: min(540px, 40vw); max-width: none; }
}
@media (max-width: 860px) {
  .porta-cena.porta-inst .foto { bottom: 50%; }
  .porta-cena.porta-inst .foto img { inset: 0; top: 0; height: 100%; object-position: 70% 30%; }
  .porta-cena.porta-inst .legenda, .porta-cena.porta-inst .inst-escolas { top: calc(50% + 8px); bottom: auto; left: var(--gut); right: var(--gut); }
  .porta-cena.porta-inst .leg-in { padding: 16px 18px 18px; border-radius: 22px; }
  .porta-cena.porta-inst .leg-in p { font-size: 14px; line-height: 1.45; }
  .porta-cena.porta-inst .inst-escolas .etq { margin: 0 0 10px; }
  .porta-cena.porta-inst .chips-esc { padding: 0; }
}
.porta-cena.porta-inst .inst-escolas { padding: 22px 24px 24px; border-radius: 28px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); }
.porta-cena.porta-inst .chips-esc a { background: rgba(255,255,255,.06); }
@media (max-width: 860px) {
  .porta-cena.porta-inst .foto { bottom: 56%; }
  .porta-cena.porta-inst .legenda, .porta-cena.porta-inst .inst-escolas { top: calc(44% + 8px); }
  .porta-cena.porta-inst .inst-escolas { padding: 14px 14px 16px; border-radius: 22px; }
  .porta-cena.porta-inst .chips-esc { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
  .porta-cena.porta-inst .chips-esc a { padding: 4px 9px; font-size: 12px; gap: 5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
  .porta-cena.porta-inst .chips-esc em { font-size: 11px; }
}
@media (max-width: 860px) { .porta-cena.porta-inst .chips-esc a { white-space: normal; overflow: visible; text-overflow: clip; line-height: 1.25; padding: 4px 8px; border-radius: 10px; } .porta-cena.porta-inst .chips-esc em { display: inline; } }
@media (max-width: 860px) {
  .mo .porta-cena.porta-inst .foto { transition: clip-path .6s var(--ease-io); clip-path: inset(0 0 0 0); }
  .mo .porta-cena.porta-inst[data-cur="1"] .foto { clip-path: inset(0 0 46% 0); } /* a fotografia fecha por baixo para a lista das 20 escolas caber inteira */
  .porta-cena.porta-inst .inst-escolas { top: calc(24% + 8px); }
}

/* ===== 15/10 · O FECHO: A10 a toda a largura, sem véu; a chamada final no vidro, do lado livre (à direita) ===== */
.final { min-height: 100vh; min-height: 100svh; align-items: center; }
.final::after { display: none; }
.final-foto { object-position: 40% 30%; }
.final-in { position: relative; z-index: 2; width: 100%; padding: 0 var(--gut); display: flex; justify-content: flex-end; }
.final-vidro { width: min(560px, 42vw); border-radius: 28px; padding: 28px 34px 30px; background: rgba(6,14,26,.66); -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); }
.final .final-vidro .h2 { font-size: var(--t3); line-height: 1.06; max-width: none; }
.final-vidro .cred { margin-top: 18px; }
.final-vidro .hero-ctas { margin-top: 20px; }
@media (max-width: 860px) {
  .final { align-items: end; }
  .final-foto { object-position: 35% 30%; }
  .final-in { padding: 0 var(--gut) calc(96px + env(safe-area-inset-bottom)); }
  .final-vidro { width: 100%; padding: 18px 20px 20px; border-radius: 22px; }
}
.v1-fecho { padding: 8px 0 28px; } .v1-fecho .ctas { justify-content: center; } /* os botões da comissão logo a seguir à cena: sem faixa escura vazia antes do fecho */
/* o fecho com a U06: a fotografia presa ao topo e mais alta do que o ecrã, para o céu caber por trás do vidro; o vidro à direita, no céu */
.final { align-items: start; }
.final-foto { inset: 0 0 auto 0; top: 0; height: 125%; object-position: 70% 0; transform-origin: 50% 0; }
.final-in { padding-top: 104px; }
.final-vidro { width: min(460px, 32vw); }
@media (max-width: 860px) {
  .final { align-items: start; }
  .final-foto { height: 130%; object-position: 48% 0; }
  .final-in { padding: 76px var(--gut) 0; }
  .final-vidro { width: 100%; }
}
.final-in { position: absolute; left: 0; right: 0; top: 0; }
@media (min-width: 861px) { .final-vidro { width: min(400px, 28vw); } }
@media (max-width: 860px) { .final-foto { height: 165%; } .final-vidro .cred { font-size: 12px; } }

/* ===== 15/10 · Surf Today: «Voltar» à esquerda, por cima das migalhas (pílula de vidro da barra) ===== */
.st-voltar-lugar { height: 44px; margin-bottom: 10px; }
.st-voltar { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px 0 12px; border: 0; border-radius: 9999px; cursor: pointer; font: 600 14px/1 'Inter SB', sans-serif; color: #fff; background: linear-gradient(180deg, rgba(11,17,32,.62), rgba(11,17,32,.56)); -webkit-backdrop-filter: blur(26px) saturate(190%) brightness(.92); backdrop-filter: blur(26px) saturate(190%) brightness(.92); box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 0 1px rgba(255,255,255,.1), 0 10px 30px -12px rgba(0,0,0,.6); transition: transform .16s var(--ease); }
.st-voltar svg { width: 18px; height: 18px; }
.st-voltar:active { transform: scale(.97); }
.st-voltar:focus-visible { outline: 2px solid var(--ciano); outline-offset: 3px; }
.st-voltar.preso { position: fixed; top: 96px; z-index: 35; }
@media (max-width: 860px) { .st-voltar.preso { top: 84px; } }
/* ===== baixo.css ===== */
/* BAIXO-B · «Um objeto por cena» (15/10). Só tokens do GUIA da D (letra, vidro, cantos, sombras, curvas).
   A metade de baixo vive dentro da cena presa da descida: o motor conta o progresso do topo nos primeiros 293vh
   (data-pin-vh) e o baixo.js conduz o resto. Cada cena: uma fotografia de pessoas por trás, um protagonista grande. */

/* a cena presa fica longa: o topo aprovado (293vh de rolar) + a metade de baixo (até 15,6 ecrãs) */
.descida.b-longa { height: 1131vh; } /* 18/10: 148 + (1660−148) × 0,65 — ver o b-tudo.js */
@media (max-width: 860px) { .descida.b-longa { height: 571vh; } .descida .b-anc { top: calc(var(--s-tel, var(--s)) * 100vh); } } /* 18/10 (noite): 148 + (1660−148) × 0,28 no telemóvel */
.descida .b-anc { top: calc(var(--s) * 100vh); }

/* ---------- camadas ---------- */
.b-fundo, .b-cena { position: absolute; inset: 0; visibility: hidden; }
.b-cena { pointer-events: none; }
.b-fundo { overflow: hidden; opacity: 0; }
.b-fundo img, .b-foto img { max-width: none; position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; transform-origin: 50% 50%; will-change: transform; }
.b-f-app { z-index: 0; }
.b-f-os { z-index: 5; }
.b-app { z-index: 6; }
.b-os { z-index: 7; }
.b-inst { z-index: 8; }
.b-com { z-index: 9; }
.b-fim { z-index: 10; }
.b-foto { position: absolute; inset: 0; overflow: hidden; }
.b-f-os img { object-position: 50% 55%; }

/* ---------- o vidro (GUIA) ---------- */
.b-vidro { position: absolute; border-radius: 28px; padding: 26px 36px 30px; background: rgba(6,14,26,.66);
  -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); color: var(--espuma); }
.b-vidro .etq { margin-bottom: 12px; }
.b-tit { margin: 0; font-size: var(--t2); line-height: 1.04; letter-spacing: -.035em; font-weight: 800; color: #fff; text-wrap: balance; }
.b-frase { margin: 14px 0 0; font-size: var(--t5); line-height: 1.55; color: var(--claro); text-wrap: pretty; }
.b-vidro .ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 22px 0 0; }
.b-ctas { margin: 20px 0 0; }
.b-ci { color: var(--ciano); }

/* o que entra e sai por passos: entra de baixo (40 px, escala ,98) em ,34 s com ,16 s de espera; sai a subir em ,12 s */
.mo .b-in { opacity: 0; visibility: hidden; transform: translate3d(0,-26px,0) scale(.98);
  transition: opacity .12s linear, transform .3s var(--ease), visibility 0s linear .3s; }
.mo .b-in.depois { transform: translate3d(0,40px,0) scale(.98); }
.mo .b-in.on { opacity: 1; visibility: visible; transform: none; pointer-events: auto;
  transition: opacity .34s linear .16s, transform .6s var(--ease) .16s, visibility 0s linear 0s; }

/* ---------- A · a app ---------- */
.b-app { --sh: min(72vh, 700px); --sw: calc(var(--sh) * .4599); --bz: calc(var(--sw) * .036); --raio: calc(var(--sw) * .16); }
.b-tel { position: absolute; left: calc(50% - var(--sw) / 2 - var(--bz)); top: calc(50% + 30px - var(--sh) / 2 - var(--bz));
  width: calc(var(--sw) + 2 * var(--bz)); height: calc(var(--sh) + 2 * var(--bz)); box-sizing: border-box;
  border: var(--bz) solid #05080D; border-radius: calc(var(--raio) + var(--bz));
  box-shadow: 0 0 0 1.5px #A7B2BF, 0 0 0 4px #4B5562, 0 0 0 5px #20262E, 0 60px 110px -40px rgba(0,0,0,.9), 0 22px 40px -18px rgba(0,0,0,.55);
  transform-origin: 50% 50%; will-change: transform, opacity; }
.b-tel-ecra { position: absolute; inset: 0; border-radius: var(--raio); overflow: hidden; }
.b-tel-ecra img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mo .b-tel-ecra img { opacity: 0; transform: translate3d(0,26px,0) scale(.985); transition: opacity .44s linear .1s, transform .7s var(--ease) .1s; }
.mo .b-app[data-e="0"] .b-tel-ecra img:nth-child(-n+1), .mo .b-app[data-e="1"] .b-tel-ecra img:nth-child(-n+2),
.mo .b-app[data-e="2"] .b-tel-ecra img:nth-child(-n+3), .mo .b-app[data-e="3"] .b-tel-ecra img:nth-child(-n+4) { opacity: 1; transform: none; }
.b-ilha { position: absolute; left: 50%; top: calc(var(--sh) * .016); width: calc(var(--sw) * .3); height: calc(var(--sw) * .088); margin-left: calc(var(--sw) * -.15); border-radius: 9999px; background: #000; box-shadow: inset 0 0 0 1px rgba(255,255,255,.04); }
.b-tel::after { content: ''; position: absolute; inset: 0; border-radius: var(--raio); pointer-events: none;
  background: linear-gradient(125deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.03) 22%, rgba(255,255,255,0) 50%); }
.b-app-txt { position: absolute; top: 0; bottom: 0; left: calc(50% + var(--sw) / 2 + var(--bz) + clamp(40px, 5vw, 88px)); right: var(--gut); }
.b-app .b-passo { left: 0; top: 50%; width: min(460px, 100%); margin-top: 30px; translate: 0 -50%; }

/* ---------- B · o OS ---------- */
.b-os { --ow: min(80vw, calc((100vh - 150px) * 1.6)); --oh: calc(var(--ow) * .625); --oy: calc(50% + 30px - var(--oh) / 2); --ox: calc(50% - var(--ow) / 2); }
.b-os-vista { position: absolute; left: var(--ox); top: var(--oy); width: var(--ow); height: var(--oh); border-radius: 16px; overflow: hidden; background: #0B1120;
  box-shadow: 0 60px 120px -40px rgba(0,0,0,.9), 0 0 0 1px rgba(255,255,255,.14); transform-origin: 50% 50%; will-change: transform, opacity, clip-path; }
.b-os .os-tela { position: absolute; inset: 0; }
.b-os .os-tela > img.base { position: absolute; inset: 0; width: 100%; height: 100%; }
.b-os .wdg { will-change: transform, opacity; }
.b-foco { position: absolute; z-index: 3; border-radius: clamp(8px, 1.1vw, 16px); pointer-events: none; opacity: 0; transform: scale(1.06);
  box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45), 0 0 0 9999px rgba(3,7,15,.5); transition: opacity .5s var(--ease), transform .7s var(--ease); }
/* 18/10 · a base é a secretária real do OS (com sessão, fundo turquesa): os focos vão aos widgets que a frase nomeia —
   a previsão, as aulas em risco, o Kai e o check-in */
.b-foco.f2 { left: 22.54%; top: 49.4%; width: 20.31%; height: 38.9%; }
.b-foco.f3 { left: 44.35%; top: .95%; width: 20.31%; height: 33.9%; }
.b-foco.f4a { left: 25.89%; top: 83.1%; width: 44.57%; height: 5.4%; box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45); }
.b-foco.f4b { left: .82%; top: 23.9%; width: 20.31%; height: 26.3%; box-shadow: 0 0 0 2px var(--ciano), 0 0 30px 2px rgba(34,211,238,.45); }
.mo .b-os[data-f="2"] .f2, .mo .b-os[data-f="3"] .f3, .mo .b-os[data-f="4"] .f4a, .mo .b-os[data-f="4"] .f4b { opacity: 1; transform: none; }
.mo .b-os[data-f="4"] .os-tela::after { content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(3,7,15,.5); pointer-events: none;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 0 89.44%, .97% 89.44%, 20.76% 89.44%, 20.76% 66.44%, .97% 66.44%, .97% 89.44%, 0 89.44%, 0 84.67%, 21.53% 84.67%, 37.22% 84.67%, 37.22% 43.11%, 21.53% 43.11%, 21.53% 84.67%, 0 84.67%); }
.b-os .fx-f { font-weight: 600; color: #fff; border-radius: 6px; padding: 0 3px; transition: background .3s, box-shadow .3s; }
.b-os[data-f="2"] .fx-f[data-f="2"], .b-os[data-f="3"] .fx-f[data-f="3"], .b-os[data-f="4"] .fx-f[data-f="4"] { background: rgba(34,211,238,.18); box-shadow: 0 0 0 3px rgba(34,211,238,.18); }
.b-os-a { right: calc(var(--ox) + 1.8%); top: calc(var(--oy) + 7%); width: min(540px, calc(var(--ow) * .44)); }
.b-os-b { right: calc(var(--ox) + 1.8%); bottom: calc(100% - var(--oy) - var(--oh) + var(--oh) * .14); width: min(470px, calc(var(--ow) * .4)); }
.b-os-b .b-tit, .b-os-a .b-tit { font-size: var(--t3); line-height: 1.06; }
.b-os-nums { position: absolute; right: calc(var(--ox) + 1.8%); top: calc(var(--oy) + 6%); display: flex; gap: 10px; }
.b-os-nums .d-cont-n { margin: 0; display: grid; gap: 4px; padding: 14px 20px 16px; border-radius: 22px; background: rgba(6,14,26,.66);
  -webkit-backdrop-filter: blur(16px) saturate(130%); backdrop-filter: blur(16px) saturate(130%); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 30px 60px -30px rgba(0,0,0,.6); }
.b-os-nums strong { font-size: var(--t2); color: #fff; }
.b-os-nums span { font-size: 14px; color: #E2E8F0; max-width: 16ch; }

/* ---------- C · quem dá a aula ---------- */
.b-f-inst img { object-position: 50% 30%; }
.b-inst-a { left: var(--gut); bottom: clamp(32px, 7vh, 72px); width: min(580px, 44vw); }
.b-inst-b { left: var(--gut); bottom: clamp(32px, 7vh, 72px); width: min(640px, 46vw); padding: 22px 26px 24px; }
.b-inst-b .etq span { display: block; margin-top: 6px; text-transform: none; letter-spacing: 0; font-weight: 400; font-size: 14px; color: var(--claro); }
.b-inst-b .chips-esc { display: flex; flex-wrap: wrap; gap: 6px; }
.b-inst-b .chips-esc a { display: inline-flex; align-items: baseline; gap: 6px; padding: 6px 11px; border-radius: 9999px; background: rgba(255,255,255,.06); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); color: var(--espuma); font-size: 14px; font-weight: 600; text-decoration: none; }
.b-inst-b .chips-esc a:hover { box-shadow: inset 0 0 0 1px var(--ciano); }
.b-inst-b .chips-esc em { font-style: normal; font-weight: 400; font-size: 12px; color: var(--claro); }
.mo .b-inst-b .chips-esc a { opacity: 0; transform: translate3d(0,14px,0); transition: opacity .3s linear, transform .5s var(--ease); }
.mo .b-inst-b.on .chips-esc a { opacity: 1; transform: none; transition-delay: calc(.2s + var(--i) * 35ms); }

/* ---------- D · a comissão ---------- */
.b-f-esc img { left: -12.5%; width: 125%; object-position: 42% 35%; }
.b-f-mkt img { object-position: 60% 30%; }
.b-com-a { left: 50%; bottom: clamp(32px, 7vh, 72px); width: min(760px, calc(100% - 2 * var(--gut))); translate: -50% 0; text-align: center; }
.b-com-a .b-frase { margin-left: auto; margin-right: auto; max-width: 44ch; }
.b-num { position: absolute; right: var(--gut); bottom: clamp(32px, 7vh, 72px); width: min(560px, calc(50% - 2 * var(--gut))); display: grid; gap: 12px; will-change: transform; }
.b-num strong { font-family: 'Archivo SB', 'Inter SB', sans-serif; font-stretch: 62%; font-weight: 800; line-height: .82; letter-spacing: -.01em;
  font-size: clamp(96px, min(16vw, 26vh), 240px); color: #fff; text-shadow: 0 2px 18px rgba(3,7,15,.5), 0 10px 50px rgba(3,7,15,.45); font-variant-numeric: tabular-nums; }
/* 18/10 · o dono: «ficou em cima da cara a info» — em ecrãs mais baixos o 0%/20% subia até à cara das alunas; a altura também manda no tamanho */
.b-num-b strong { color: var(--ciano); }
.b-num .b-vidro { position: relative; padding: 18px 24px 20px; border-radius: 22px; }
.b-num .b-vidro b { display: block; font-size: var(--t4); line-height: 1.1; color: #fff; }
.b-num .b-vidro span { display: block; margin-top: 8px; font-size: 16px; line-height: 1.5; color: var(--claro); }
.b-com-b { left: 50%; bottom: clamp(32px, 7vh, 72px); width: min(720px, calc(100% - 2 * var(--gut))); translate: -50% 0; text-align: center; }
.b-com-b .b-frase { max-width: 46ch; margin-left: auto; margin-right: auto; }
.b-com-b .ctas { justify-content: center; }

/* ---------- E · o fecho ---------- */
.b-f-fim img { object-position: 70% 50%; }
.b-fim-a { left: var(--gut); top: 50%; translate: 0 -40%; width: min(600px, 46vw); }
.b-fim-a .cred { margin: 22px 0 0; }
.b-fim-a .ctas { margin-top: 22px; }

/* ---------- telemóvel ---------- */
@media (max-width: 860px) {
  .b-vidro { border-radius: 22px; padding: 18px 20px 20px; }
  .b-frase { font-size: 16px; line-height: 1.5; margin-top: 10px; }
  .b-vidro .etq { font-size: 12px; margin-bottom: 8px; }
  .b-vidro .ctas { gap: 8px; margin-top: 16px; }
  .b-vidro .bt { min-height: 44px; font-size: 16px; padding: 6px 6px 6px 16px; gap: 8px; }
  .b-vidro .bt-2, .b-vidro .bt-3 { padding: 6px 16px; }
  .b-vidro .bt .ic { width: 30px; height: 30px; }

  /* 19/10 · o texto mais comprido (o 4.º, com o botão) tocava no topo do telemóvel. No telemóvel a etiqueta repetida
     dos quatro cartões sai (diz-se uma vez no primeiro), o cartão aperta, e o telemóvel fica com o espaço que sobra. */
  .b-app { --sh: min(calc(100svh - 84px - 96px - 222px), 520px); }
  .b-app .b-passo + .b-passo .etq { display: none; }
  .b-app .b-passo { padding: 14px 18px 16px; }
  .b-app .b-frase { font-size: 15px; margin-top: 6px; }
  .b-app .b-passo .b-ctas { margin-top: 10px; }
  /* 19/10 · o dono, no iPhone: o telemóvel aparecia colado lá em cima, cortado pela barra. A regra embutida na inicial
     (`.b-tel, .os-tela { position: relative }`) vencia o `absolute` daqui, e com `relative` o «bottom: 96px» SOBE 96px
     a partir do topo da cena em vez de assentar a 96px do fundo. No computador não se nota (o top calculado dá o mesmo). */
  .mo .b-tel { position: absolute; top: auto; bottom: calc(96px + env(safe-area-inset-bottom)); }
  .b-app-txt { left: var(--gut); right: var(--gut); top: 92px; bottom: auto; }
  .b-app .b-passo { top: 0; width: 100%; margin: 0; translate: none; }
  .b-app .b-tit { font-size: 24px; }

  .b-os { --ow: 150vw; --ox: var(--gut); --oy: 190px; }
  .b-os-a { left: var(--gut); right: var(--gut); top: 80px; width: auto; }
  .b-os-a .b-tit, .b-os-b .b-tit { font-size: 26px; }
  .b-os-b { left: var(--gut); right: var(--gut); top: auto; bottom: calc(96px + env(safe-area-inset-bottom)); width: auto; }
  .b-os-b .b-tit { font-size: 22px; }
  .b-os-nums { left: var(--gut); right: var(--gut); top: 84px; }
  .b-os-nums .d-cont-n { flex: 1; padding: 10px 14px 12px; border-radius: 18px; }
  .b-os-nums strong { font-size: 40px; }
  .b-os-nums span { font-size: 14px; }

  .b-f-inst img { object-position: 57% 0%; transform-origin: 57% 0%; }
  .b-inst-a, .b-inst-b { left: var(--gut); right: var(--gut); bottom: calc(96px + env(safe-area-inset-bottom)); width: auto; }
  .b-inst-a .b-tit { font-size: var(--t2); }
  .b-inst-b { padding: 16px 0 18px; }
  .b-inst-b .etq { margin: 0 20px 10px; }
  .b-inst-b .chips-esc { display: grid; grid-auto-flow: column; grid-template-rows: repeat(3, auto); justify-content: start; overflow-x: auto; padding: 0 20px 4px; scroll-padding: 0 20px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .b-inst-b .chips-esc a { font-size: 14px; padding: 6px 11px; white-space: nowrap; }
  .b-inst-b .chips-esc em { font-size: 12px; }
  /* 19/10 · o dono, no iPhone: «olha as escolas aí». A lista desliza para o lado e os nomes ficavam cortados a meio na
     borda («Ericeira» sem fim, um «E» solto). Colunas de largura certa, nomes com reticências, a coluna seguinte a
     espreitar e a borda direita a desvanecer: lê-se como uma lista que anda para o lado, não como texto partido. */
  .b-inst-b .chips-esc { grid-auto-columns: 82%; gap: 6px 8px; -webkit-mask-image: linear-gradient(90deg, #000 86%, transparent); mask-image: linear-gradient(90deg, #000 86%, transparent); }
  .b-inst-b .chips-esc a { display: block; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; justify-self: start; }
  .b-inst-b .chips-esc em { margin-left: 6px; }

  .b-f-esc img { left: 0; width: 100%; top: -8%; height: 108%; object-position: 30% 0%; }
  .b-f-mkt img { object-position: 30% 20%; transform-origin: 30% 0; }
  .b-com-a { bottom: calc(96px + env(safe-area-inset-bottom)); }
  .b-num { left: var(--gut); right: var(--gut); width: auto; bottom: calc(96px + env(safe-area-inset-bottom)); gap: 8px; }
  .b-num strong { font-size: 96px; }
  .b-num .b-vidro { padding: 14px 18px 16px; border-radius: 18px; }
  .b-num .b-vidro b { font-size: 20px; }
  .b-num .b-vidro span { font-size: 16px; }
  .b-num-a.compacto .b-vidro span { display: none; }
  .b-num-a.compacto strong { font-size: 64px; }
  .b-num-a.compacto { gap: 4px; }
  .b-num-a.compacto .b-vidro { padding: 0; background: none; -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: none; }
  .b-num-a.compacto .b-vidro b { text-shadow: 0 1px 12px rgba(3,7,15,.6); }
  .b-com-b { bottom: calc(96px + env(safe-area-inset-bottom)); }
  .b-com-b .b-tit { font-size: 30px; }

  .b-f-fim img { object-position: 80% 50%; }
  .b-fim-a { left: var(--gut); right: var(--gut); top: auto; bottom: calc(96px + env(safe-area-inset-bottom)); translate: none; width: auto; }
  .b-fim-a .b-tit { font-size: 32px; }
}

/* ---------- reduzir movimento, ou sem JavaScript: tudo à vista, por ordem, sem nada preso ---------- */
.rm .descida.b-longa, html:not(.mo) .descida.b-longa { height: auto; }
.rm .b-anc, html:not(.mo) .b-anc { display: none; }
.rm .b-f-app, html:not(.mo) .b-f-app { display: none; }
.rm .b-cena, html:not(.mo) .b-cena, .rm .b-fundo, html:not(.mo) .b-fundo { position: relative; inset: auto; visibility: visible; opacity: 1; pointer-events: auto; }
.rm .b-cena, html:not(.mo) .b-cena { display: grid; gap: 20px; padding: 72px var(--gut); background: var(--sup); }
.rm .b-fundo.b-f-os, html:not(.mo) .b-fundo.b-f-os { height: 70vh; margin: 0 var(--gut); border-radius: 24px; }
.rm .b-foto, html:not(.mo) .b-foto { position: relative; height: 70vh; border-radius: 24px; }
.rm .b-vidro, html:not(.mo) .b-vidro, .rm .b-num, html:not(.mo) .b-num, .rm .b-os-nums, html:not(.mo) .b-os-nums,
.rm .b-app-txt, html:not(.mo) .b-app-txt, .rm .b-os-vista, html:not(.mo) .b-os-vista { position: relative; inset: auto; left: auto; right: auto; top: auto; bottom: auto; translate: none; width: auto; max-width: 900px; margin: 0; }
.rm .b-app-txt, html:not(.mo) .b-app-txt { display: grid; gap: 16px; }
.rm .b-os-vista, html:not(.mo) .b-os-vista { width: 100%; height: auto; aspect-ratio: 1440 / 900; max-width: 1200px; }
.rm .b-tel, html:not(.mo) .b-tel { position: relative; left: auto; top: auto; width: 100%; height: auto; border: 0; box-shadow: none; }
.rm .b-tel::after, html:not(.mo) .b-tel::after, .rm .b-ilha, html:not(.mo) .b-ilha { display: none; }
.rm .b-tel-ecra, html:not(.mo) .b-tel-ecra { position: relative; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; border-radius: 0; overflow: visible; }
.rm .b-tel-ecra img, html:not(.mo) .b-tel-ecra img { position: static; height: auto; border-radius: 22px; }
.rm .b-foco, html:not(.mo) .b-foco { display: none; }

/* 18/10 · as ligações de hoje que a D não mostra (server/siteD/semPerderSeo.ts): recolhidas antes do rodapé */
.sbd-mais { padding: 8px 0 32px; }
.sbd-mais details { border-top: 1px solid rgba(255,255,255,.1); padding-top: 16px; }
.sbd-mais summary { cursor: pointer; font-size: 15px; font-weight: 600; color: #E2E8F0; list-style-position: inside; }
.sbd-mais ul { list-style: none; margin: 14px 0 0; padding: 0; columns: 3 220px; column-gap: 24px; }
.sbd-mais li { break-inside: avoid; margin: 0 0 8px; font-size: 14px; }
.sbd-mais a { color: #CBD5E1; text-decoration: underline; text-underline-offset: 2px; }
/* 18/10 · «Mais sobre a SurfBooking»: o conteúdo de hoje que a B não mostra em cena, recolhido */
.sbd-sobre { padding: 56px 0 24px; }
.sbd-sobre .h2 { margin: 0 0 18px; }
.sbd-sobre details { border-top: 1px solid rgba(255,255,255,.1); }
.sbd-sobre details:last-child { border-bottom: 1px solid rgba(255,255,255,.1); }
.sbd-sobre summary { cursor: pointer; padding: 18px 0; font-size: clamp(17px, 1.4vw, 20px); font-weight: 600; color: #F1F5F9; }
.sbd-sobre-intro { margin: 0 0 18px; max-width: 70ch; color: #CBD5E1; }
.sbd-sobre-grelha { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px 28px; padding-bottom: 24px; }
.sbd-sobre-item h3 { margin: 0 0 6px; font-size: 16px; color: #F1F5F9; }
.sbd-sobre-item p, .sbd-sobre-item li { margin: 0 0 6px; font-size: 14px; line-height: 1.55; color: #CBD5E1; }
.sbd-sobre-item ul { margin: 6px 0 0; padding-left: 18px; }

/* 18/10 · primeira vista: o texto do topo entra com o mesmo movimento, mas arranca no primeiro
   desenho da página e não à espera do JavaScript (o banco do SEO mediu o LCP da D a 1,3-1,8 s contra
   0,3 s hoje). O fim do movimento é igual ao do «.in»; quando o JS chega, não há salto. */
@keyframes sbd-entra { from { opacity: 0; transform: translate3d(0,28px,0); } to { opacity: 1; transform: none; } }
.mo .hero [data-reveal], .mo .es-capa [data-reveal], .mo .bl-topo [data-reveal], .mo .st-hero [data-reveal] {
  animation: sbd-entra .8s cubic-bezier(.16,1,.3,1) both; animation-delay: min(var(--d, 0ms), 160ms); transition: none !important; }
