/* Vitrine de cursos (site oficial): amarelo "trânsito" sobre preto, com brilhos e degradês. Carrega depois de aluno.css. */
.tema-amarelo { --or:#f5b301; --or2:#ffc928; --or3:#ffe28a; --line:rgba(255,255,255,.09); background:#050505; }
.tema-amarelo { background-image:radial-gradient(ellipse 80% 40% at 50% -5%,rgba(255,196,0,.16),transparent 70%); background-repeat:no-repeat; }
.tema-amarelo .al-top { background:rgba(5,5,5,.9); border-bottom-color:rgba(255,196,0,.18); }
.tema-amarelo .al-brand b { background:linear-gradient(135deg,#ffd43b,#f59e0b); color:#111; box-shadow:0 0 22px -4px rgba(255,196,0,.7); }
.tema-amarelo .al-btn { background:linear-gradient(135deg,#ffd43b,#f5a300); color:#141000; box-shadow:0 14px 34px -14px rgba(255,190,0,.85), inset 0 1px 0 rgba(255,255,255,.45); }
.tema-amarelo .al-btn.sec { background:rgba(255,255,255,.07); color:#fff; box-shadow:none; }
.tema-amarelo .al-curso { background:linear-gradient(180deg,#141210,#0b0a09); position:relative; }
.tema-amarelo .al-curso::before { content:""; position:absolute; inset:0; border-radius:inherit; padding:1px; background:linear-gradient(135deg,rgba(255,212,59,.0),rgba(255,196,0,.0)); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; transition:background .3s; pointer-events:none; z-index:2; }
.tema-amarelo .al-curso:hover { border-color:rgba(255,196,0,.5); box-shadow:0 30px 60px -28px rgba(255,190,0,.5); }
.tema-amarelo .al-curso:hover::before { background:linear-gradient(135deg,rgba(255,226,138,.9),rgba(245,163,0,.15) 55%,rgba(255,226,138,.7)); }
.tema-amarelo .al-curso .img::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(11,10,9,.85)); pointer-events:none; }
.tema-amarelo .al-curso .img::before { content:""; position:absolute; top:0; left:-60%; width:40%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent); transform:skewX(-18deg); z-index:1; transition:left .7s; }
.tema-amarelo .al-curso:hover .img::before { left:130%; }

.tema-amarelo .al-bar i { background:linear-gradient(90deg,#f5a300,#ffe28a); }
.tema-amarelo .al-preco small { display:block; margin-top:2px; }
.tema-amarelo .al-preco s { text-decoration:none; text-transform:uppercase; letter-spacing:.06em; font-size:11px; font-weight:700; color:var(--or2); }
.tema-amarelo .lj-sel { background:rgba(255,196,0,.12); border-color:rgba(255,196,0,.45); color:var(--or2); }
.tema-amarelo .lj-hero .ban { border-color:rgba(255,196,0,.45); box-shadow:0 40px 80px -34px #000,0 0 70px -22px rgba(255,190,0,.55); }
.tema-amarelo .lj-hero h1 em { color:var(--or2); }
.tema-amarelo .lj-compra { background:linear-gradient(180deg,#171409,#0d0b05); border-color:rgba(255,196,0,.35); box-shadow:0 0 60px -30px rgba(255,190,0,.6); }
.tema-amarelo .lj-compra .parc { color:var(--or3); }
.tema-amarelo .lj-lista li::before { color:var(--or2); }
.tema-amarelo .lj-mods li::before { background:rgba(255,196,0,.15); color:var(--or2); }
.tema-amarelo .lj-garantia { background:linear-gradient(120deg,rgba(255,196,0,.17),rgba(120,80,0,.2)); border-color:rgba(255,196,0,.4); }
.tema-amarelo .lj-garantia p { color:#ffe9a8; }
.tema-amarelo .al-foot a { color:var(--or3); }
/* Selo abaixo do título */
.al-etq { align-self:flex-start; display:inline-block; padding:4px 12px; border-radius:99px; font-size:11.5px; font-weight:700; letter-spacing:.02em; color:var(--or3); background:rgba(251,146,60,.12); border:1px solid rgba(251,146,60,.4); }
.tema-amarelo .al-etq { background:rgba(255,196,0,.12); border-color:rgba(255,196,0,.45); }
.al-curso .al-preco small { display:block; margin-top:2px; color:var(--mut); }

/* Hero da vitrine */
.vt-hero { position:relative; text-align:center; padding:70px 10px 40px; overflow:hidden; }
.vt-hero h1 { position:relative; margin-top:14px; font-size:clamp(34px,6vw,64px); line-height:1.05; font-weight:800; letter-spacing:-.02em; background:linear-gradient(180deg,#fff 30%,#bdb7ae); -webkit-background-clip:text; background-clip:text; color:transparent; }
.vt-hero h1 em { font-style:normal; background:linear-gradient(90deg,#ffd43b,#f59e0b,#ffe28a,#ffd43b); background-size:220% 100%; -webkit-background-clip:text; background-clip:text; color:transparent; animation:vtBrilho 6s linear infinite; }
@keyframes vtBrilho { to { background-position:220% 0; } }
.vt-hero > p { position:relative; max-width:680px; margin:18px auto 0; color:#d6d3d1; font-size:17px; line-height:1.7; }
.vt-orb { position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; pointer-events:none; z-index:0; }
.vt-orb.o1 { width:340px; height:340px; left:-80px; top:20px; background:rgba(255,196,0,.35); } .vt-orb.o2 { width:300px; height:300px; right:-60px; top:80px; background:rgba(245,120,0,.3); }
.vt-hero > * { position:relative; z-index:1; } .vt-hero > .vt-orb { position:absolute; }
.vt-nav { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:26px; }
.vt-nav a { padding:11px 22px; border-radius:99px; text-decoration:none; font-weight:700; font-size:14px; background:rgba(255,255,255,.06); border:1px solid rgba(255,196,0,.35); transition:.2s; } .vt-nav a:hover { background:rgba(255,196,0,.18); transform:translateY(-2px); }
.vt-prova { list-style:none; display:flex; justify-content:center; gap:14px; flex-wrap:wrap; margin:34px 0 0; padding:0; }
.vt-prova li { padding:12px 22px; border-radius:16px; background:rgba(255,255,255,.04); border:1px solid var(--line); text-align:left; } .vt-prova b { display:block; color:var(--or2); font-size:15px; } .vt-prova span { font-size:12px; color:var(--mut); }

/* Categorias */
.vt-cat { margin-top:56px; scroll-margin-top:90px; }
.vt-cat-h { display:flex; align-items:center; gap:16px; margin-bottom:22px; padding-bottom:16px; border-bottom:1px solid transparent; border-image:linear-gradient(90deg,rgba(255,196,0,.7),rgba(255,196,0,0)) 1; }
.vt-cat-ico { display:grid; place-items:center; width:54px; height:54px; border-radius:16px; font-size:26px; background:linear-gradient(135deg,rgba(255,212,59,.25),rgba(245,163,0,.08)); border:1px solid rgba(255,196,0,.4); box-shadow:0 0 30px -10px rgba(255,190,0,.6); flex:none; }
.vt-cat-h h2 { font-size:24px; font-weight:800; } .vt-cat-h p { margin-top:2px; color:var(--mut); font-size:14px; }
.vt-cat-n { margin-left:auto; padding:5px 13px; border-radius:99px; font-size:12px; font-weight:700; color:var(--or2); background:rgba(255,196,0,.1); border:1px solid rgba(255,196,0,.3); white-space:nowrap; }
.al .vt-cat-ico, .al .vt-cat-n { /* na Área do Aluno (laranja) */ }
body.al:not(.tema-amarelo) .vt-cat-h { border-image:linear-gradient(90deg,rgba(251,146,60,.7),rgba(251,146,60,0)) 1; }
body.al:not(.tema-amarelo) .vt-cat-ico { background:linear-gradient(135deg,rgba(251,146,60,.25),rgba(234,88,12,.08)); border-color:rgba(251,146,60,.4); box-shadow:0 0 30px -10px rgba(249,115,22,.6); }
body.al:not(.tema-amarelo) .vt-cat-n { color:#fb923c; background:rgba(251,146,60,.1); border-color:rgba(251,146,60,.3); }
.vt-final { margin:70px 0 0; padding:44px 24px; text-align:center; border-radius:28px; background:radial-gradient(ellipse at 50% 0,rgba(255,196,0,.2),transparent 70%),#0d0b05; border:1px solid rgba(255,196,0,.3); }
.vt-final h2 { font-size:28px; font-weight:800; } .vt-final p { margin:10px auto 22px; max-width:520px; color:var(--mut); line-height:1.6; }
@media (max-width:600px) { .vt-cat-n { display:none; } .vt-hero { padding-top:44px; } }

/* Etiqueta sobre a borda do card (não sobre a arte) */
.al-curso { overflow:visible; }
.al-curso .img { border-radius:19px 19px 0 0; overflow:hidden; }
.al-curso .tag { position:absolute; top:-13px; left:22px; z-index:5; padding:5px 14px; border-radius:999px; background:#0c0a09; border:1px solid rgba(251,146,60,.7); color:#fdba74; font-size:11px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; box-shadow:0 6px 16px -6px #000; }
.tema-amarelo .al-curso .tag, .vt-embed .al-curso .tag { background:#0b0a05; border-color:rgba(255,196,0,.75); color:#ffd43b; }
.al-cursos { padding-top:16px; }
.al-brand b svg, .al-brand b { color:#17140a; }
.al-brand b { background:linear-gradient(135deg,#ffd43b,#f5a300); box-shadow:0 0 22px -4px rgba(255,196,0,.65), inset 0 1px 0 rgba(255,255,255,.45); }
.al-brand b svg { width:18px; height:18px; display:block; }

/* Página /cursos/ dentro do layout do site */
.vt-site-hero { min-height:560px; }
.vt-slides { position:absolute; inset:0; z-index:-1; background:#0b0c0f; }
.vt-slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; animation:vtSlide 30s infinite; }
.vt-slide:first-child { opacity:1; }
.vt-slides::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(11,12,15,.96) 0%,rgba(11,12,15,.82) 38%,rgba(11,12,15,.35) 100%),linear-gradient(180deg,transparent 70%,#0b0c0f); }
@keyframes vtSlide { 0% { opacity:0; transform:scale(1.04); } 4% { opacity:1; } 20% { opacity:1; } 24% { opacity:0; } 100% { opacity:0; transform:scale(1.12); } }
.vt-embed { min-height:0; background:#0b0c0f; padding:20px 0 90px; }
.vt-embed.al { background:#0b0c0f; }
.vt-embed .container { max-width:1180px; }
.vt-embed .vt-cat:first-child { margin-top:30px; }
.vt-embed h2,.vt-embed h3 { font-family:"Montserrat",sans-serif; }
.vt-embed .vt-final .btn { display:inline-flex; }
@media (prefers-reduced-motion: reduce) { .vt-slide { animation:none; } .vt-slide:first-child { opacity:1; } }

/* Cards de profissionais: arte em retrato, janela 5:4 ancorada no topo para não cortar rostos */
.al-curso.retrato .img { aspect-ratio:5/4; }
.al-curso.retrato .img img { object-position:50% 0; }
.al-cursos { padding-top:0; }

/* Livro (identidade azul da landpage) dentro da página do curso */
.vt-kicker { text-align:center; color:#7dc0f2; font-weight:800; font-size:12px; letter-spacing:.2em; text-transform:uppercase; margin-bottom:14px; }
.vt-livro-img { border-radius:24px; overflow:hidden; border:1px solid rgba(109,180,230,.4); box-shadow:0 40px 90px -40px #000, 0 0 90px -30px rgba(61,142,220,.65); background:#050b14; }
.vt-livro-img img { width:100%; display:block; }
.vt-livro-txt { display:flex; align-items:center; justify-content:space-between; gap:26px; flex-wrap:wrap; margin-top:26px; }
.vt-livro-txt > div { flex:1; min-width:260px; }
.vt-livro-txt h2 { font-size:clamp(26px,3.6vw,38px); font-weight:300; line-height:1.15; } .vt-livro-txt h2 em { font-style:normal; font-weight:800; color:#6db4e6; }
.vt-livro-txt p { margin-top:10px; color:#d6d3d1; line-height:1.7; max-width:640px; }
.vt-btn-livro { display:inline-flex; padding:15px 34px; border-radius:999px; font-weight:800; font-size:14px; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; color:#fff; background:linear-gradient(135deg,#0f3a73,#3d8edc 60%,#8ec9f5); box-shadow:0 18px 40px -16px rgba(61,142,220,.9); transition:transform .15s; }
.vt-btn-livro:hover { transform:translateY(-2px); }
.vt-trilha { display:grid; grid-template-columns:1fr 1fr 1.25fr; gap:16px; align-items:stretch; } @media (max-width:900px){ .vt-trilha { grid-template-columns:1fr; } }
.vt-passo { padding:22px; border-radius:20px; background:var(--card2); border:1px solid var(--line); display:flex; flex-direction:column; gap:10px; }
.vt-passo .n { align-self:flex-start; padding:4px 12px; border-radius:99px; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; background:rgba(109,180,230,.12); border:1px solid rgba(109,180,230,.4); color:#8ec9f5; }
.vt-passo h3 { font-size:20px; font-weight:800; } .vt-passo ul { margin:0; padding-left:18px; color:#d6d3d1; line-height:1.8; font-size:14.5px; }
.vt-passo.foco { background:linear-gradient(160deg,rgba(255,196,0,.16),rgba(20,16,0,.9) 60%); border-color:rgba(255,196,0,.55); box-shadow:0 30px 70px -36px rgba(255,190,0,.6); }
.vt-passo.foco .n { background:rgba(255,196,0,.14); border-color:rgba(255,196,0,.55); color:#ffd43b; }
.vt-passo .al-btn { align-self:flex-start; margin-top:auto; }

/* Página do curso (profissionais): hero com vídeo sob o texto (desktop) / sob o card (celular) */
.lj-hero--prof { grid-template-areas:"text card" "video card"; align-items:start; }
.lj-hero--prof .lj-h-text { grid-area:text; } .lj-hero--prof .lj-h-card { grid-area:card; } .lj-hero--prof .lj-h-video { grid-area:video; }
@media (max-width:860px) { .lj-hero--prof { grid-template-areas:"text" "card" "video"; } }
.vt-vid-h { font-size:clamp(20px,2.4vw,26px); font-weight:800; margin:6px 0 14px; }
.vt-video { position:relative; aspect-ratio:16/9; border-radius:22px; overflow:hidden; border:1px solid rgba(255,196,0,.35); background:#000; box-shadow:0 30px 70px -34px #000, 0 0 60px -26px rgba(255,190,0,.5); }
.vt-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.vt-vid-cap { margin-top:10px; color:var(--mut); font-size:13.5px; }
.vt-center { text-align:center; margin-bottom:22px; } .vt-center h2 { font-size:clamp(24px,3vw,32px); font-weight:800; } .vt-center .sub { margin:8px auto 14px; max-width:620px; color:var(--mut); }

/* Ferramentas */
.vt-ferr { text-align:center; }
.vt-ferr h2 { max-width:800px; margin:0 auto; font-size:clamp(26px,3.6vw,40px); font-weight:300; line-height:1.15; } .vt-ferr h2 em { font-style:normal; font-weight:800; color:#6db4e6; }
.vt-ferr-sub { max-width:640px; margin:14px auto 22px; color:#d6d3d1; line-height:1.7; }
.vt-ferr img { width:min(640px,100%); margin:0 auto; border-radius:24px; -webkit-mask-image:radial-gradient(ellipse 85% 80% at 50% 50%,#000 60%,transparent 100%); mask-image:radial-gradient(ellipse 85% 80% at 50% 50%,#000 60%,transparent 100%); }

/* R.O.M.A. */
.vt-roma { display:grid; grid-template-columns:minmax(0,420px) 1fr; gap:clamp(24px,5vw,64px); align-items:center; padding:clamp(28px,5vw,52px); border-radius:28px; background:#0a0f1a; border:1px solid var(--line); }
@media (max-width:860px) { .vt-roma { grid-template-columns:1fr; } .vt-roma-capa { max-width:380px; margin-inline:auto; } }
.vt-roma-capa img { width:100%; display:block; box-shadow:0 30px 70px -30px #000; }
.vt-roma h2 { font-size:clamp(32px,5vw,56px); font-weight:400; color:#f5c000; line-height:1.05; margin-bottom:22px; } .vt-roma h2 strong { font-weight:800; color:#fff; }
.vt-roma p { margin:0 0 18px; line-height:1.7; color:#f1f3f7; font-size:16.5px; } .vt-roma p b { color:#fff; }
.vt-roma-ex { display:inline-block; font-weight:600; font-size:14px; letter-spacing:.04em; text-transform:uppercase; color:#f5c000; }

/* Arsenal (tabela) */
.vt-tabela { border-radius:22px; border:1px solid var(--line); background:#0a0b0d; overflow-x:auto; }
.vt-tabela table { width:100%; border-collapse:collapse; min-width:520px; }
.vt-tabela th { padding:20px 18px; text-align:center; font-size:14px; background:#06121f; } .vt-tabela th:first-child { text-align:left; }
.vt-tabela td { padding:17px 18px; text-align:center; border-top:1px solid var(--line); font-size:15px; } .vt-tabela td:first-child { text-align:left; color:#e7e5e4; }
.vt-tabela .ok { color:#22c55e; font-weight:800; } .vt-tabela .no { color:#57534e; }
.vt-tabela .m { background:rgba(255,196,0,.06); } .vt-tabela th.m { color:#ffd43b; }

/* Autor */
.vt-autor { display:grid; grid-template-columns:minmax(0,420px) 1fr; gap:clamp(24px,5vw,60px); align-items:center; }
@media (max-width:860px) { .vt-autor { grid-template-columns:1fr; } }
.vt-autor figure { margin:0; text-align:center; } .vt-autor figure img { width:100%; border-radius:0; -webkit-mask-image:radial-gradient(ellipse 72% 68% at 50% 44%,#000 58%,transparent 100%); mask-image:radial-gradient(ellipse 72% 68% at 50% 44%,#000 58%,transparent 100%); }
.vt-autor figcaption strong { display:block; font-size:17px; } .vt-autor figcaption span { color:#6db4e6; font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.vt-autor h2 { font-size:clamp(28px,3.4vw,40px); font-weight:800; line-height:1.15; margin-bottom:10px; }
.vt-autor-papel { color:var(--mut); font-size:17px; margin-bottom:14px; } .vt-autor p { line-height:1.7; color:#e7e5e4; }
.vt-creds { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:22px; } @media (max-width:520px){ .vt-creds { grid-template-columns:1fr; } }
.vt-creds div { padding:18px 20px; border-radius:18px; background:linear-gradient(165deg,#0a2036,#050f1c); border:1px solid rgba(140,199,240,.16); border-left:3px solid #3a8fd6; }
.vt-creds strong { display:block; font-size:22px; color:#6db4e6; } .vt-creds span { display:block; margin-top:4px; color:#d6d3d1; font-size:14px; line-height:1.5; }

/* FAQ */
.vt-faq-lista { max-width:860px; margin:0 auto; border-top:1px solid var(--line); }
.vt-faq-lista details { border-bottom:1px solid var(--line); }
.vt-faq-lista summary { cursor:pointer; list-style:none; display:flex; gap:14px; align-items:center; padding:22px 4px; font-size:17px; font-weight:600; }
.vt-faq-lista summary::-webkit-details-marker { display:none; } .vt-faq-lista summary span { color:var(--mut); font-size:14px; }
.vt-faq-lista summary::after { content:""; margin-left:auto; width:10px; height:10px; border-right:2px solid #6db4e6; border-bottom:2px solid #6db4e6; transform:rotate(45deg); transition:.2s; flex:none; }
.vt-faq-lista details[open] summary::after { transform:rotate(-135deg); }
.vt-faq-lista details p { padding:0 4px 22px 38px; color:#d6d3d1; line-height:1.75; }

/* Valor no final */
.vt-compra-final { max-width:520px; margin:24px auto 0; text-align:center; }

/* ===== Hero dos profissionais: menos volume, mais ar ===== */
.lj-hero--prof { grid-template-columns:minmax(0,1fr) minmax(0,360px); gap:44px 72px; padding:56px 0 24px; align-items:center; }
.lj-hero--prof h1 { font-size:clamp(28px,3vw,38px); line-height:1.12; }
.lj-hero--prof .lead { font-size:15.5px; line-height:1.7; }
.lj-hero--prof .lj-h-card .ban { max-width:360px; margin-left:auto; border-radius:20px; }
.lj-hero--prof .lj-h-video { max-width:440px; margin-top:8px; }
.vt-vid-h { font-size:17px !important; margin:0 0 12px !important; }
.vt-vid-cap { font-size:12.5px; }
@media (max-width:860px) {
  .lj-hero--prof { gap:40px; padding:36px 0 12px; }
  .lj-hero--prof .lj-h-card .ban { margin-inline:auto; max-width:320px; }
  .lj-hero--prof .lj-h-video { max-width:none; margin-top:4px; }
  .lj-hero--prof h1 { font-size:27px; }
}

/* ===== Player com máscara (vídeo próprio do nicho) ===== */
.vt-player { position:relative; aspect-ratio:16/9; border-radius:18px; overflow:hidden; background:#000; border:1px solid rgba(255,196,0,.3); box-shadow:0 26px 60px -34px #000, 0 0 50px -26px rgba(255,190,0,.5); }
.vt-player video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:#000; }
.vt-play { position:absolute; inset:0; width:100%; display:grid; place-content:center; justify-items:center; gap:10px; border:0; cursor:pointer; color:#fff; font:inherit; background:radial-gradient(ellipse at 50% 55%,rgba(0,0,0,.25),rgba(0,0,0,.62) 80%), linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.45)); transition:opacity .25s; }
.vt-play span { display:grid; place-items:center; width:64px; height:64px; border-radius:50%; color:#141000; padding-left:4px; background:linear-gradient(135deg,#ffd43b,#f5a300); box-shadow:0 0 0 8px rgba(255,196,0,.16), 0 0 40px rgba(255,190,0,.55); transition:transform .2s; }
.vt-play:hover span { transform:scale(1.08); }
.vt-play em { font-style:normal; font-weight:700; font-size:13px; letter-spacing:.04em; text-shadow:0 2px 10px #000; }
.vt-player.is-playing .vt-play { opacity:0; pointer-events:none; }

/* ===== Ferramentas: banner desktop + mobile, como na landpage ===== */
.vt-feature { text-align:center; }
.vt-feature-txt { max-width:720px; margin:0 auto; }
.vt-feature-txt h2 { font-size:clamp(26px,3vw,38px); font-weight:300; line-height:1.15; text-wrap:balance; } .vt-feature-txt h2 em { font-style:normal; font-weight:700; color:#6db4e6; }
.vt-feature .vt-ferr-sub { max-width:62ch; margin:14px auto 0; color:rgba(255,255,255,.72); font-weight:300; line-height:1.7; }
.vt-feature-art { position:relative; width:min(100%,460px); margin:26px auto 0; }
.vt-feature-art img { display:block; width:100%; height:auto; -webkit-mask-image:url("../images/livro/s2-livro-mask.png"); mask-image:url("../images/livro/s2-livro-mask.png"); -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; filter:drop-shadow(0 0 36px rgba(63,180,255,.28)) drop-shadow(0 18px 24px rgba(0,0,0,.5)); }
@media (min-width:900px) {
  .vt-feature-art { width:100%; }
  .vt-feature-art img { -webkit-mask-image:url("../images/livro/ilm-livro-mask.png"); mask-image:url("../images/livro/ilm-livro-mask.png"); }
}

/* ===== Gavetas (Ferramentas práticas) ===== */
.vt-gav-nota { margin-top:10px; color:#6db4e6; font-size:15.5px; }
.vt-gav-lista { border-top:1px solid rgba(140,199,240,.16); }
.vt-gav-lista details { border-bottom:1px solid rgba(140,199,240,.16); }
.vt-gav-lista summary { display:flex; align-items:center; gap:14px; padding:16px 2px; cursor:pointer; list-style:none; font-weight:600; font-size:15px; }
.vt-gav-lista summary::-webkit-details-marker { display:none; }
.vt-ico { flex:none; display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; background:linear-gradient(135deg,#0b2e5c,#3a8fd6 70%,#8cc7f0); box-shadow:0 0 16px rgba(74,163,224,.5); }
.vt-gav-t { flex:1; }
.vt-gav-seta { flex:none; width:9px; height:9px; border-right:2px solid #6db4e6; border-bottom:2px solid #6db4e6; transform:rotate(45deg); transition:transform .2s; }
.vt-gav-lista details[open] .vt-gav-seta { transform:rotate(-135deg); }
.vt-gav-lista details p { margin:0; padding:0 2px 18px 52px; font-size:14px; line-height:1.6; color:rgba(255,255,255,.72); }

/* ===== Autor: foto lateral de palestra ===== */
.vt-autor2 { display:grid; grid-template-columns:minmax(0,34%) 1fr; border-radius:28px; overflow:hidden; background:#050505; border:1px solid rgba(255,255,255,.07); }
.vt-autor2-foto { position:relative; min-height:420px; }
.vt-autor2-foto img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 12%; }
.vt-autor2-foto::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 78%,#050505 100%); }
.vt-autor2-txt { padding:clamp(26px,4vw,48px); }
.vt-autor2-txt h2 { font-size:clamp(28px,3.4vw,42px); font-weight:800; line-height:1.12; margin-bottom:12px; }
.vt-autor2-txt p { line-height:1.7; color:#e7e5e4; }
@media (max-width:860px) { .vt-autor2 { grid-template-columns:1fr; } .vt-autor2-foto { min-height:0; height:360px; } .vt-autor2-foto::after { background:linear-gradient(180deg,transparent 70%,#050505 100%); } }

/* ===== Ajuste fino do hero (profissionais): retângulo único, card +30%, vídeo +20%, título -10% ===== */
.lj-hero--prof { grid-template-columns:minmax(0,1fr) minmax(0,470px); gap:0 64px; align-items:stretch; padding:56px 0 28px; }
.lj-hero--prof .lj-h-text { align-self:start; }
.lj-hero--prof h1 { font-size:clamp(25px,2.7vw,34px); }
.lj-hero--prof .lj-h-video { align-self:end; max-width:528px; margin-top:28px; }
.lj-hero--prof .lj-h-video .vt-vid-cap { display:none; }
.lj-hero--prof .lj-h-card { align-self:stretch; display:flex; }
.lj-hero--prof .lj-h-card .ban { position:relative; flex:1; max-width:none; margin:0; min-height:420px; }
.lj-hero--prof .lj-h-card .ban img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
@media (max-width:860px) {
  .lj-hero--prof { grid-template-columns:1fr; gap:0; padding:36px 0 12px; }
  .lj-hero--prof h1 { font-size:24px; }
  .lj-hero--prof .lj-h-card { margin-top:40px; justify-content:center; }
  .lj-hero--prof .lj-h-card .ban { flex:none; width:min(100%,360px); min-height:0; aspect-ratio:4/5; }
  .lj-hero--prof .lj-h-video { max-width:none; margin-top:44px; }
  .lj-hero--prof .lj-h-video .vt-vid-cap { display:block; }
}

/* ===== Ventilação entre as seções da página dos profissionais ===== */
.lj-hero--prof ~ .al-sec { margin-top:96px; }
.lj-hero--prof ~ .vt-feature { margin-top:120px; }
.vt-kicker { margin-bottom:18px; }
.vt-feature-txt h2 { margin-top:4px; }
@media (max-width:860px) { .lj-hero--prof ~ .al-sec { margin-top:72px; } .lj-hero--prof ~ .vt-feature { margin-top:88px; } }

/* Celular: card e vídeo ocupam a largura toda da coluna (nunca menos de 80% da tela) */
@media (max-width:860px) {
  .lj-hero--prof .lj-h-card { display:block; }
  .lj-hero--prof .lj-h-card .ban { width:100%; max-width:none; min-width:80vw; margin-inline:auto; aspect-ratio:4/5; }
  .lj-hero--prof .lj-h-card .ban img { object-position:50% 30%; }
}

/* Nuvem negra do banner das Ferramentas (igual à landpage): véu escuro em cima e embaixo, fundindo a arte ao fundo da página */
.vt-feature-art::before, .vt-feature-art::after { content:""; position:absolute; left:0; right:0; height:26%; pointer-events:none; z-index:2; }
.vt-feature-art::before { top:0; background:linear-gradient(180deg,#050505 0%,rgba(5,5,5,.72) 40%,transparent 100%); }
.vt-feature-art::after { bottom:0; background:linear-gradient(0deg,#050505 0%,rgba(5,5,5,.72) 40%,transparent 100%); }
@media (min-width:900px) {
  /* sombra lateral suave para a arte larga não terminar em borda */
  .vt-feature-art { -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%); mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%); }
}

/* Foco dos cards de profissionais 30% mais abaixo: mostra mais do corpo dos personagens */
.al-curso.retrato .img img { object-position:50% 30%; }

/* Cursos corporativos com o Head Coach: ar entre as seções da página */
.lj-hero:not(.lj-hero--prof) ~ .al-sec { margin-top:84px; }
@media (max-width:860px) { .lj-hero:not(.lj-hero--prof) ~ .al-sec { margin-top:64px; } }

/* Vídeo do YouTube em formato leve (miniatura + play; o player só carrega no clique) */
.vt-player[data-yt] img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.vt-player[data-yt] iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.vt-vgrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:22px; }
.vt-vgrid figure { margin:0; } .vt-vgrid figcaption { margin-top:10px; font-size:14px; font-weight:600; color:#d6d3d1; line-height:1.4; }
