/* ============================================================
 * Módulo «Vídeos de Boas-Vindas» (Home) — dois convites humanos.
 * Momento de respiração entre o branco (Hook) e o cinzento (Proposta):
 * fundo azul suave com manchas desfocadas + dois cartões em vidro.
 * Esquerda (adultos) sóbrio — navy/dourado. Direita (jovens) luminoso — fluor.
 * Assenta sobre os tokens da Home (esfera.css) e a identidade fluor (kids.css).
 * ============================================================ */
.boasvindas{position:relative;isolation:isolate;overflow:hidden;padding:clamp(4rem,8vw,7.5rem) 0;background:linear-gradient(180deg,#fff 0%,#eef3fb 34%,#e8edf7 100%)}

/* atmosfera — manchas desfocadas (profundidade + brilho muito subtil) */
.bv-atmos{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.bv-atmos span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5}
.bv-atmos span:nth-child(1){width:44vw;height:44vw;left:-8vw;top:-12vw;background:radial-gradient(circle,rgba(29,76,184,.26),transparent 70%)}
.bv-atmos span:nth-child(2){width:38vw;height:38vw;right:-6vw;top:12%;background:radial-gradient(circle,rgba(12,42,115,.20),transparent 70%)}
.bv-atmos span:nth-child(3){width:30vw;height:30vw;right:8vw;bottom:-12vw;background:radial-gradient(circle,rgba(212,240,0,.18),transparent 70%)}

/* cabeçalho do módulo */
.bv-head{text-align:center;max-width:44rem;margin:0 auto clamp(2rem,4vw,3.2rem)}
.bv-eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:1rem}
.bv-eyebrow::before{content:"";width:30px;height:1px;background:var(--gold-deep)}
.bv-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(1.7rem,3.4vw,2.7rem);line-height:1.12;letter-spacing:-.02em;color:var(--navy);margin:0}
.bv-head h2 em{font-style:italic;color:var(--gold-deep)}
.bv-lede{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.42;color:var(--navy);opacity:.72;margin:.75rem auto 0;max-width:40rem}

/* grelha */
.bv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.4rem,2.6vw,2.4rem);align-items:stretch}

/* cartão em vidro (glassmorphism subtil) */
.bv-card{position:relative;display:flex;flex-direction:column;padding:clamp(1.5rem,2.6vw,2.2rem);border-radius:24px;background:rgba(255,255,255,.55);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.75);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 30px 60px -30px rgba(12,42,115,.30);transition:transform .5s var(--ease,cubic-bezier(.22,.61,.36,1)),box-shadow .5s}
.bv-card:hover{transform:translateY(-6px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 42px 82px -34px rgba(12,42,115,.42)}
.bv-card-top{flex:1 0 auto}
.bv-card h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.3rem,2.2vw,1.7rem);line-height:1.12;letter-spacing:-.01em;color:var(--navy);margin:0 0 .35rem}
.bv-sub{font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);margin:0 0 .75rem}
.bv-intro{font-family:var(--serif);font-style:italic;font-size:1.02rem;line-height:1.5;color:var(--ink);opacity:.85;margin:0 0 1.25rem;max-width:32rem}
.bv-apoio{font-family:var(--sans);font-size:.78rem;letter-spacing:.03em;color:#6b6b6b;margin:1rem 0 0;text-align:center}

/* área do vídeo — facade 16:9 (mesma linguagem do vídeo do Caderno: movimento + sombra + play dourado) */
.bv-media{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;box-shadow:0 20px 44px -22px rgba(12,42,115,.5);transition:transform .5s var(--ease,cubic-bezier(.22,.61,.36,1)),box-shadow .5s var(--ease,cubic-bezier(.22,.61,.36,1))}
.bv-media:has(.bv-screen):hover{transform:scale(1.012);box-shadow:0 10px 20px rgba(19,19,19,.08),0 46px 80px -30px rgba(12,42,115,.5)}
.bv-screen{position:absolute;inset:0;width:100%;height:100%;border:0;margin:0;padding:0;cursor:pointer;background-size:cover;background-position:center;background-color:#0c2a73;background-image:radial-gradient(58% 60% at 42% 34%,#3a4e74,transparent 62%),radial-gradient(60% 70% at 80% 80%,#16294d,transparent 60%),linear-gradient(150deg,#20355c,#0a1830);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem}
.bv-screen::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(12,42,115,.05),rgba(12,42,115,.32))}
.bv-play{position:relative;z-index:1;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--gold-light,#d4b378);transition:.42s var(--ease,cubic-bezier(.22,.61,.36,1))}
.bv-play::after{content:"";width:0;height:0;margin-left:6px;border-left:22px solid #fff;border-top:14px solid transparent;border-bottom:14px solid transparent;transition:border-color .3s}
.bv-media:has(.bv-screen):hover .bv-play{background:var(--gold,#b8945a);border-color:var(--gold,#b8945a);transform:scale(1.08)}
.bv-frame{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;object-fit:cover;background:#000;z-index:2}
.bv-screen.is-empty{cursor:default}
.bv-badge{position:relative;z-index:1;font-family:var(--sans);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.4);padding:.5rem .9rem;border-radius:100px}

/* --- lado CRIANÇAS E JOVENS: página de caderno (papel · linhas · fita-cola · fluor · magenta · Caveat) --- */
.bv-jovens{background:var(--k-paper,#f7f4ea);-webkit-backdrop-filter:none;backdrop-filter:none;border:2px dashed rgba(20,20,20,.24);box-shadow:0 26px 52px -26px rgba(125,146,0,.5),0 3px 0 #e7e2d0;overflow:visible}
.bv-jovens::before{content:"";position:absolute;inset:13px;border-radius:16px;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent 0 30px,rgba(20,20,20,.05) 30px 31px)}
.bv-jovens>*{position:relative;z-index:1}
/* doodles */
.bv-doodle{position:absolute;z-index:3;font-family:var(--k-hand,'Caveat','Segoe Script',cursive);line-height:1;pointer-events:none}
.bv-doodle-star{color:var(--k-fluor,#d4f000);-webkit-text-stroke:1.6px #141414;font-size:1.8rem;top:14px;right:22px;transform:rotate(10deg)}
.bv-doodle-ast{color:var(--k-mag,#ff3d8b);font-size:2.1rem;right:30px;bottom:96px;transform:rotate(-8deg)}
/* textos com voz de criança */
.bv-jovens h3{color:var(--navy);display:inline-block;background:linear-gradient(var(--k-fluor,#d4f000),var(--k-fluor,#d4f000)) no-repeat;background-size:100% .28em;background-position:0 90%}
.bv-jovens .bv-sub{font-family:var(--k-hand,'Caveat','Segoe Script',cursive);font-size:1.6rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--k-mag,#ff3d8b);transform:rotate(-1.5deg);margin:.2rem 0 .7rem}
.bv-jovens .bv-intro{font-family:var(--sans);font-style:normal;color:var(--k-ink2,#2c2c2c);opacity:1}
.bv-jovens .bv-apoio{font-family:var(--k-hand,'Caveat','Segoe Script',cursive);font-size:1.3rem;color:var(--k-mag,#ff3d8b);letter-spacing:0}
/* vídeo — «fotografia» colada com fita-cola, ligeiramente torta */
.bv-jovens .bv-media{overflow:visible;background:transparent;border-radius:0;box-shadow:none;transform:rotate(-1.1deg)}
.bv-jovens .bv-media::before{content:"";position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(3deg);width:128px;height:26px;z-index:4;background:repeating-linear-gradient(90deg,rgba(212,240,0,.82) 0 9px,rgba(212,240,0,.5) 9px 18px);box-shadow:0 2px 7px rgba(0,0,0,.12)}
.bv-jovens .bv-screen,.bv-jovens .bv-frame{border-radius:6px}
.bv-jovens .bv-screen{overflow:hidden;border:1px solid rgba(20,20,20,.12);box-shadow:0 16px 32px -16px rgba(20,20,20,.42)}
.bv-jovens .bv-play{background:rgba(255,255,255,.14);border-color:var(--k-fluor,#d4f000);box-shadow:none}
.bv-jovens .bv-media:has(.bv-screen):hover{transform:rotate(-1.1deg) scale(1.02);box-shadow:none}
.bv-jovens .bv-media:has(.bv-screen):hover .bv-screen{box-shadow:0 26px 46px -20px rgba(20,20,20,.5)}
.bv-jovens .bv-media:has(.bv-screen):hover .bv-play{background:var(--k-fluor,#d4f000);border-color:var(--k-fluor,#d4f000);transform:scale(1.08)}
.bv-jovens .bv-media:has(.bv-screen):hover .bv-play::after{border-left-color:#141414}
.bv-jovens .bv-screen.is-empty .bv-badge{font-family:var(--k-hand,'Caveat','Segoe Script',cursive);font-size:1.1rem;letter-spacing:.02em;text-transform:none;color:#fff;border-color:rgba(255,255,255,.6)}

/* responsivo */
@media(max-width:860px){.bv-grid{grid-template-columns:1fr;gap:1.4rem}.bv-card-top{flex:0 0 auto}}

/* microanimações de entrada — o fade + rise vem do .fi da secção (observer da Home);
   os cartões acrescentam só um leve escalonamento vertical. Nunca se escondem por si
   próprios (robustez: sem JS, valem as regras do .fi, como no resto do site). */
@media (prefers-reduced-motion:no-preference){
  .boasvindas .bv-card{transition:transform .7s var(--ease,cubic-bezier(.22,.61,.36,1)),box-shadow .5s}
  .boasvindas:not(.v) .bv-adultos{transform:translateY(26px)}
  .boasvindas:not(.v) .bv-jovens{transform:translateY(42px)}
  .boasvindas.v .bv-card{transform:none}
}
@media (prefers-reduced-motion:reduce){.bv-card:hover,.bv-screen.has-video:hover{transform:none}.bv-atmos span{opacity:.3}}
