.vitrine-hero .vitrine-hero-info>*{opacity:1;transform:none}.vitrine-hero-imagem{opacity:1;transform:none}.vitrine-tabs{opacity:0;transition:opacity .4s ease-out}.vitrine-sidebar{opacity:0;transform:translateY(16px);transition:opacity .5s cubic-bezier(.22, 1, .36, 1),transform .5s cubic-bezier(.22, 1, .36, 1)}.vitrine-main>.vitrine-secao{opacity:0;transform:translateY(10px);transition:opacity .5s cubic-bezier(.22, 1, .36, 1),transform .5s cubic-bezier(.22, 1, .36, 1)}.vitrine-hero .vitrine-hero-info>.anim-on,.vitrine-hero-imagem.anim-on,.vitrine-main>.vitrine-secao.anim-on,.vitrine-sidebar.anim-on,.vitrine-tabs.anim-on{opacity:1;transform:none}.vitrine-anim{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.22, 1, .36, 1),transform .6s cubic-bezier(.22, 1, .36, 1)}.vitrine-anim.anim-scale{transform:scale(.93) translateY(0)}.vitrine-anim.anim-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.vitrine-anim,.vitrine-hero .vitrine-hero-info>*,.vitrine-hero-imagem,.vitrine-main>.vitrine-secao,.vitrine-sidebar,.vitrine-tabs{opacity:1!important;transform:none!important;transition:none!important}}.vitrine-container{max-width:100%;margin:0 auto;padding:0}.vitrine-tabs{position:sticky;top:0;z-index:50;background:var(--bg-2,var(--surface));border-bottom:none;margin:0 -1rem;padding:0 1rem;box-shadow:0 4px 20px rgba(0,0,0,.15)}.vitrine-tabs-inner{max-width:1200px;margin:0 auto;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:.5rem 0}.vitrine-tabs-inner::-webkit-scrollbar{display:none}.vitrine-tab{position:relative;padding:.75rem 1.4rem;font-size:.88rem;font-weight:500;color:var(--muted);background:0 0;border:1px solid transparent;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all .25s ease;letter-spacing:.2px}.vitrine-tab-icone{display:none}.vitrine-tab:hover{color:var(--text);background:color-mix(in srgb,var(--primary) 8%,transparent)}.vitrine-tab.ativa{color:#fff;background:var(--primary);font-weight:600;border-color:var(--primary);box-shadow:0 2px 12px color-mix(in srgb,var(--primary) 40%,transparent)}.vitrine-tab-painel{display:none}.vitrine-tab-painel.ativa{display:block}.vitrine-tab-painel.ativa.tab-transicao{animation:tabFadeIn .3s ease-out}@keyframes tabFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vitrine-divisor{border:none;border-top:1px solid var(--border);margin:1.5rem 0}@media (max-width:768px){.vitrine-tabs{margin:0 -.5rem;padding:0 .5rem}.vitrine-tabs-inner{padding:.4rem 0;gap:.2rem}.vitrine-tab{padding:.6rem .9rem;font-size:.78rem;border-radius:6px}}.vitrine-hero{position:relative;background:var(--surface);border-bottom:1px solid var(--border);color:var(--text);padding:2rem 0;margin:-1rem -1rem 0 -1rem}.vitrine-hero::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--primary-hover))}.vitrine-hero-content{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 380px;gap:2.5rem;align-items:center}.vitrine-hero-info{color:var(--text);position:relative}.vitrine-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem;margin-bottom:1rem}.vitrine-breadcrumb a{color:var(--muted);text-decoration:none}.vitrine-breadcrumb a:hover{color:var(--primary);text-decoration:underline}.vitrine-breadcrumb span{color:var(--muted)}.vitrine-titulo{font-size:2.25rem;font-weight:700;line-height:1.2;margin-bottom:.75rem}.vitrine-subtitulo{font-size:1.1rem;color:var(--text-2);margin-bottom:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:all .3s ease}.vitrine-subtitulo.expandido{-webkit-line-clamp:unset;display:block}.vitrine-subtitulo-wrap{margin-bottom:1.25rem}.vitrine-ver-mais{background:none;border:none;color:var(--primary);font-size:.9rem;font-weight:600;cursor:pointer;padding:.25rem 0;margin-top:.25rem;transition:opacity .2s}.vitrine-ver-mais:hover{text-decoration:underline}.vitrine-meta{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;margin-bottom:1rem;font-size:.9rem}.vitrine-meta>div{display:flex;align-items:center;gap:.4rem}.meta-avaliacao{display:flex;align-items:center;gap:.5rem}.meta-avaliacao .nota{font-weight:700;font-size:1rem}.estrelas-wrapper{display:inline-flex;align-items:center;gap:0;letter-spacing:-2px}.estrelas-wrapper .estrela.ativa{color:#fbbf24}.estrelas-wrapper .estrela:not(.ativa){color:#fbbf24;opacity:.3}.estrela-parcial{position:relative;display:inline-block;line-height:1}.estrela-parcial .estrela-base{color:#fbbf24;opacity:.3}.estrela-parcial .estrela-fill{position:absolute;left:0;top:0;color:#fbbf24;overflow:hidden;width:var(--pct,50%)}.meta-avaliacao .estrelas-wrapper{letter-spacing:-2px}.vitrine-instrutor{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--muted)}.vitrine-instrutor strong{color:var(--primary)}.vitrine-hero-imagem{position:relative;background:var(--surface);border-radius:12px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.3)}.vitrine-hero-imagem img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.vitrine-hero-imagem .btn-play{display:none}.vitrine-hero-imagem.imagem-legada{background-size:cover;background-position:center;background-repeat:no-repeat}.vitrine-hero-imagem.imagem-legada::before{content:'';position:absolute;inset:0;background:inherit;filter:blur(18px) saturate(1.4) brightness(.55);transform:scale(1.15);z-index:0}.vitrine-hero-imagem.imagem-legada img{object-fit:contain;position:relative;z-index:1;padding:1rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.vitrine-body{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 3rem;display:grid;grid-template-columns:1fr 350px;gap:2rem;align-items:start}.vitrine-main{min-width:0}.vitrine-secao{background:var(--surface);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border)}.vitrine-secao h2{font-size:1.2rem;font-weight:700;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.vitrine-objetivos{line-height:1.7;font-size:.95rem}.vitrine-competencias-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.vitrine-competencia-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;line-height:1.5;color:var(--text)}.vitrine-competencia-check{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.1rem;color:var(--primary)}@media (max-width:640px){.vitrine-competencias-grid{grid-template-columns:1fr}}.vitrine-conteudo-info{display:flex;gap:1.5rem;margin-bottom:1rem;font-size:.9rem;color:var(--muted)}.vitrine-modulos{display:flex;flex-direction:column;gap:.5rem}.modulo-accordion{border:1px solid var(--border);border-radius:8px;overflow:hidden}.modulo-accordion[open]{background:var(--bg-2)}.modulo-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-2);cursor:pointer;list-style:none;transition:background-color .2s}.modulo-header::-webkit-details-marker{display:none}.modulo-header:hover{background:var(--bg-tertiary,var(--bg-2))}.modulo-titulo{font-weight:600;font-size:.95rem}.modulo-info{font-size:.85rem;color:var(--muted)}.modulo-aulas{border-top:1px solid var(--border);background:var(--surface)}.aula-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);font-size:.9rem}.aula-item .aula-icone{margin-top:.15rem}.aula-item:last-child{border-bottom:none}.aula-icone{color:var(--muted);flex-shrink:0}.aula-info{flex:1;display:flex;flex-direction:column;gap:.15rem}.aula-titulo{flex:1}.aula-descricao{font-size:.8rem;color:var(--muted);line-height:1.3}.aula-preview{font-size:.75rem;color:var(--primary);font-weight:500;padding:.15rem .5rem;background:rgba(var(--primary-rgb,45,212,191),.1);border-radius:4px}.aula-duracao{font-size:.85rem;color:var(--muted)}.vitrine-publico,.vitrine-requisitos{line-height:1.7;font-size:.95rem}.vitrine-descricao{line-height:1.5;font-size:.9rem}.vitrine-descricao *:not(b):not(strong):not(h2):not(h3):not(h4){color:inherit!important;background-color:transparent!important;font-family:inherit!important;font-size:inherit!important}.vitrine-descricao b,.vitrine-descricao strong{color:inherit!important;font-size:inherit!important;font-family:inherit!important}.vitrine-descricao b,.vitrine-descricao strong{font-weight:500;background-color:color-mix(in srgb,var(--primary) 25%,transparent);padding:.1em .25em;border-radius:3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.vitrine-descricao p{margin-bottom:1rem}.vitrine-descricao p:last-child{margin-bottom:0}.vitrine-descricao ol,.vitrine-descricao ul{margin:.5rem 0 1rem;padding-left:1.5rem;list-style:circle}.vitrine-descricao li{margin-bottom:.35rem}.vitrine-descricao>li{list-style:disc;margin-left:1.2rem;margin-bottom:.6rem;margin-top:.6rem}.vitrine-descricao li>ol,.vitrine-descricao li>ul{margin-top:.25rem;margin-bottom:.25rem}.vitrine-instrutor-card{display:flex;gap:1.5rem;align-items:flex-start}.instrutor-avatar{flex-shrink:0}.instrutor-avatar img{width:100px;height:100px;border-radius:50%;object-fit:cover}.instrutor-info{flex:1;min-width:0}.avatar-placeholder{width:100px;height:100px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.instrutor-info h3{font-size:1.15rem;margin-bottom:.25rem}.instrutor-titulo{color:var(--muted);font-size:.9rem;margin-bottom:.75rem}.instrutor-stats{display:flex;gap:1.5rem;margin-bottom:.75rem;font-size:.85rem;color:var(--muted)}.instrutor-bio{font-size:.9rem;line-height:1.6}.instrutor-balao{display:flex;gap:.75rem;align-items:flex-start;margin-top:1rem}.instrutor-balao-avatar{flex-shrink:0}.instrutor-balao-avatar img{width:36px;height:36px;border-radius:50%;object-fit:cover}.instrutor-balao-msg{position:relative;background:color-mix(in srgb,var(--primary) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:0 12px 12px 12px;padding:.75rem 1rem;font-size:.88rem;line-height:1.6;color:var(--text);max-width:100%;min-width:0}.instrutor-balao-msg::before{content:'';position:absolute;top:0;left:-6px;width:0;height:0;border-top:6px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-left:6px solid transparent}.instrutor-balao-nome{display:block;font-weight:600;font-size:.8rem;color:var(--primary);margin-bottom:.25rem}.instrutor-balao-msg p{margin:0}.instrutor-balao-msg .instrutor-curriculo-item{display:flex;flex-direction:column;gap:.1rem;margin-top:.35rem;font-size:.88rem;line-height:1.5}.instrutor-balao-msg .instrutor-curriculo-item strong{font-weight:600;color:var(--text)}.instrutor-balao-msg .instrutor-curriculo-item span{font-size:.82rem;color:var(--muted)}.vitrine-dori-card{display:flex;flex-direction:column;gap:0;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,transparent),color-mix(in srgb,var(--primary) 3%,transparent));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));border-radius:12px;padding:0;position:relative;overflow:visible}.vitrine-dori-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem}.vitrine-dori-icone{flex-shrink:0;width:56px;height:56px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:var(--primary-contrast,#fff);display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px color-mix(in srgb,var(--primary) 30%,transparent);position:relative;cursor:pointer;transition:transform .25s cubic-bezier(.34, 1.56, .64, 1)}.vitrine-dori-icone svg{width:28px;height:28px;animation:doriVitrinFloat 2s ease-in-out infinite}@keyframes doriVitrinFloat{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(2deg)}50%{transform:translateY(-5px) rotate(0)}75%{transform:translateY(-3px) rotate(-2deg)}100%{transform:translateY(0) rotate(0)}}.dori-heart{position:absolute;pointer-events:none;font-size:14px;line-height:1;z-index:10;opacity:0;animation:doriHeartUp 1s ease-out forwards}@keyframes doriHeartUp{0%{opacity:.9;transform:translateY(0) scale(1)}50%{opacity:.7;transform:translateY(-18px) scale(1.2)}100%{opacity:0;transform:translateY(-36px) scale(.5)}}.vitrine-dori-header h3{font-size:.95rem;font-weight:600;margin:0;color:var(--text);line-height:1.3}.vitrine-dori-nome{color:var(--primary);font-weight:700}.vitrine-dori-body{display:flex;align-items:center;gap:1rem;padding:0 1.25rem 1rem}.vitrine-dori-conteudo{flex:1;min-width:0}.vitrine-dori-conteudo p{font-size:.82rem;color:var(--muted);line-height:1.5;margin:0}.vitrine-dori-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:var(--primary-contrast,#fff);border:none;border-radius:9px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 12px color-mix(in srgb,var(--primary) 30%,transparent);white-space:nowrap;position:relative}.vitrine-dori-btn:hover{transform:translateY(-2px);box-shadow:0 5px 18px color-mix(in srgb,var(--primary) 40%,transparent)}.vitrine-dori-btn:active{transform:translateY(0)}@keyframes doriShake{0%,100%{transform:translateX(0) rotate(0)}15%{transform:translateX(-6px) rotate(-4deg)}30%{transform:translateX(6px) rotate(4deg)}45%{transform:translateX(-4px) rotate(-2deg)}60%{transform:translateX(4px) rotate(2deg)}75%{transform:translateX(-2px) rotate(-1deg)}}.vitrine-dori-icone.dori-shake{animation:doriShake .5s ease}@keyframes doriNao{0%,100%{transform:rotate(0)}20%{transform:rotate(-8deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(5deg)}}.vitrine-dori-icone.dori-nao{animation:doriNao .35s ease}@keyframes doriWiggle{0%,100%{rotate:0deg}25%{rotate:-3deg}75%{rotate:3deg}}.vitrine-dori-icone.dori-fugindo{transition:transform .2s cubic-bezier(.34, 1.56, .64, 1);animation:doriWiggle .3s ease-in-out infinite}.vitrine-dori-icone.dori-fugindo svg{animation:none}@media (max-width:768px){.vitrine-dori-body{flex-direction:column;gap:.75rem}.vitrine-dori-conteudo{text-align:center}.vitrine-dori-header{justify-content:center}.vitrine-dori-btn{width:100%;justify-content:center}}@media (prefers-reduced-motion:reduce){.vitrine-dori-icone svg{animation:none!important}.dori-heart{display:none!important}}.vitrine-avaliacoes-resumo{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.avaliacao-numero{display:flex;align-items:center;gap:.5rem}.avaliacao-numero .numero{font-size:1.75rem;font-weight:700;color:var(--warning,#fbbf24)}.avaliacao-numero .estrelas-wrapper{font-size:1.2rem;letter-spacing:-1px}.avaliacao-numero .estrela.ativa{color:var(--warning,#fbbf24)}.avaliacao-numero .estrela:not(.ativa){color:var(--warning,#fbbf24);opacity:.3}.avaliacao-numero .total{font-size:.8rem;color:var(--muted)}.vitrine-avaliacoes-lista{display:flex;flex-direction:column;transition:opacity .2s ease}.avaliacao-card{padding:.75rem 0;border-bottom:1px solid var(--border)}.avaliacao-card:last-child{border-bottom:none}.avaliacao-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.avaliacao-autor{display:flex;align-items:center;gap:.5rem}.avaliacao-autor img{width:28px;height:28px;border-radius:50%;object-fit:cover}.avatar-placeholder-sm{width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.avaliacao-autor span{font-weight:500;font-size:.85rem}.avaliacao-nota{color:var(--warning,#fbbf24);letter-spacing:-1px;font-size:.85rem}.avaliacao-nota .estrela.ativa{color:var(--warning,#fbbf24)}.avaliacao-nota .estrela:not(.ativa){opacity:.3}.avaliacao-texto{font-size:.85rem;line-height:1.5;margin:0}.avaliacao-data{font-size:.8rem;color:var(--muted)}.avaliacoes-paginacao{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-paginacao{padding:.5rem 1.2rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-paginacao:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.btn-paginacao:disabled{opacity:.4;cursor:not-allowed}.paginacao-info{font-size:.85rem;color:var(--muted);min-width:120px;text-align:center}.vitrine-sidebar{position:sticky;top:1.5rem;height:fit-content}.vitrine-compra-card{background:var(--surface);border-radius:12px;padding:1.5rem;border:1px solid var(--border);box-shadow:0 4px 20px rgba(0,0,0,.1)}.compra-preco{margin-bottom:1.25rem;display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.preco-atual{font-size:2rem;font-weight:700}.preco-atual.gratuito{color:var(--success)}.preco-original{font-size:1rem;color:var(--muted);text-decoration:line-through}.preco-desconto{display:inline-block;background:var(--danger);color:#fff;padding:.2rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600}.vitrine-compra-card .btn{width:100%;padding:.875rem 1.5rem;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.vitrine-compra-card .btn-block{margin-bottom:.75rem}.compra-info{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.compra-info p{font-size:.9rem;font-weight:600;margin-bottom:.75rem}.compra-info ul{list-style:none;padding:0;margin:0}.compra-info li{display:flex;align-items:center;gap:.6rem;font-size:.85rem;margin-bottom:.6rem;color:var(--text-2,var(--text))}.compra-info li svg{color:var(--success);flex-shrink:0;width:16px;height:16px}.compra-certificado-amostra{margin-top:1rem}.compra-certificado-amostra a{display:block;border-radius:8px;overflow:hidden;position:relative;transition:transform .2s ease,box-shadow .2s ease;border:1px solid rgba(255,255,255,.1)}.compra-certificado-amostra a:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(45,212,191,.2);border-color:var(--primary)}.certificado-amostra-img{width:100%;height:auto;display:block;opacity:.85;transition:opacity .2s ease}.compra-certificado-amostra a:hover .certificado-amostra-img{opacity:1}.certificado-amostra-label{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem;font-size:.8rem;font-weight:600;color:var(--primary);background:var(--surface);text-align:center}.certificado-amostra-label svg{width:16px;height:16px}.btn-comprar{background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:var(--primary-contrast);border:none;font-weight:600;transition:all .2s ease;box-shadow:0 4px 14px rgba(45,212,191,.3)}.btn-comprar:hover{background:linear-gradient(135deg,var(--primary-hover),var(--primary));transform:translateY(-2px);box-shadow:0 6px 20px rgba(45,212,191,.4);color:var(--primary-contrast)}.btn-comprar:active{transform:translateY(0)}.vitrine-relacionados{max-width:1200px;margin:2rem auto 0;padding:0 1.5rem 3rem}.vitrine-relacionados h2{font-size:1.25rem;font-weight:700;margin-bottom:1.5rem}@media (max-width:1024px){.vitrine-hero-content{grid-template-columns:1fr;gap:2rem}.vitrine-hero-imagem{max-width:500px}.vitrine-body{grid-template-columns:1fr}.vitrine-sidebar{position:static;order:-1}.vitrine-compra-card{max-width:500px}}@media (max-width:768px){.vitrine-hero{padding:1.5rem 0;margin:-1rem -.5rem 1.5rem -.5rem}.vitrine-hero-content{padding:0 1rem}.vitrine-titulo{font-size:1.5rem}.vitrine-subtitulo{font-size:1rem}.vitrine-meta{flex-direction:column;align-items:flex-start;gap:.75rem}.vitrine-body{padding:0 1rem 2rem}.vitrine-secao{padding:1.25rem}.vitrine-instrutor-card{flex-direction:column;text-align:center}.instrutor-avatar{margin:0 auto}.instrutor-stats{justify-content:center}.vitrine-avaliacoes-resumo{justify-content:center}.vitrine-relacionados{padding:0 1rem 2rem}}@media (max-width:480px){.vitrine-titulo{font-size:1.35rem}.preco-atual{font-size:1.75rem}.vitrine-conteudo-info{flex-direction:column;gap:.5rem}}.vitrine-collapse{transition:max-height .3s ease}.vitrine-collapse.collapsed{overflow:hidden;position:relative}.vitrine-collapse.collapsed::after{content:'';position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(transparent,var(--bg,#1a1a2e));pointer-events:none}.vitrine-collapse-btn{display:block;width:100%;padding:.75rem;margin-top:.5rem;background:0 0;border:1px solid var(--border,#333);border-radius:8px;color:var(--accent,#2dd4bf);font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s;text-align:center}.vitrine-collapse-btn:hover{background:rgba(45,212,191,.1);border-color:var(--accent,#2dd4bf)}.vitrine-galeria{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 0}.vitrine-galeria h2{font-size:1.15rem;font-weight:700;margin-bottom:1rem;color:var(--text);display:flex;align-items:center;gap:.5rem}.vitrine-galeria-wrap{position:relative}.vitrine-galeria-track{display:flex;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding:.25rem 0}.vitrine-galeria-track::-webkit-scrollbar{display:none}.vitrine-galeria-slide{flex:0 0 auto;width:320px;scroll-snap-align:start;border-radius:10px;overflow:hidden;background:var(--surface);border:1px solid var(--border);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.vitrine-galeria-slide:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.2)}.vitrine-galeria-slide img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.vitrine-galeria-legenda{padding:.5rem .75rem;font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vitrine-galeria-nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:all .2s ease;z-index:5}.vitrine-galeria-nav:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.vitrine-galeria-nav.prev{left:-12px}.vitrine-galeria-nav.next{right:-12px}.vitrine-galeria-dots{display:flex;justify-content:center;gap:.4rem;margin-top:.75rem}.vitrine-galeria-dot{width:8px;height:8px;border-radius:50%;background:var(--border);border:none;cursor:pointer;transition:all .2s ease;padding:0}.vitrine-galeria-dot.active{background:var(--primary);transform:scale(1.2)}.vitrine-galeria-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.vitrine-galeria-lightbox-content{display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:default;max-width:90vw;max-height:90vh}.vitrine-galeria-lightbox-content img{max-width:90vw;max-height:80vh;object-fit:contain;border-radius:8px;cursor:default}.vitrine-galeria-lightbox-legenda{color:rgba(255,255,255,.85);font-size:.9rem;text-align:center;max-width:600px}.vitrine-galeria-lightbox-counter{color:rgba(255,255,255,.5);font-size:.8rem}.vitrine-galeria-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10000}.vitrine-galeria-lightbox-nav:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.3)}.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}.vitrine-galeria-lightbox-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10000;transition:background .2s ease}.vitrine-galeria-lightbox-close:hover{background:rgba(255,255,255,.3)}@media (max-width:768px){.vitrine-galeria-lightbox{padding:.5rem}.vitrine-galeria-lightbox-nav{width:40px;height:40px}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}.vitrine-galeria-lightbox-content img{max-width:95vw;max-height:75vh}}@media (max-width:768px){.vitrine-galeria{padding:1rem 1rem 0}.vitrine-galeria-slide{width:260px}.vitrine-galeria-nav{display:none}}@media (max-width:480px){.vitrine-galeria-slide{width:220px}}
/* Descricao — tipografia de leitura (2026-07-05) */
.vitrine-descricao{line-height:1.75;font-size:.95rem;max-width:80ch}
.vitrine-descricao p{margin-bottom:1.1rem}
.vitrine-secao .vitrine-descricao h2{font-size:1.08rem;font-weight:700;margin:1.6rem 0 .65rem;padding-bottom:0;border-bottom:none;color:var(--text)}
.vitrine-secao .vitrine-descricao h2:first-child{margin-top:.25rem}
.vitrine-secao .vitrine-descricao h3{font-size:1rem;font-weight:600;margin:1.3rem 0 .5rem}
.vitrine-faq{display:flex;flex-direction:column;gap:.5rem}.faq-resposta{border-top:1px solid var(--border);background:var(--surface);padding:1rem;font-size:.9rem;line-height:1.6;color:var(--text)}.vitrine-faq .modulo-titulo{padding-right:.75rem}

/* Facade do video do hero — iframe do embed so entra no clique (2026-07-09) */
.vitrine-video-facade{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;position:relative;z-index:1}
.vitrine-video-facade .vitrine-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease;pointer-events:none}
.vitrine-video-facade .vitrine-video-play svg{margin-left:3px}
.vitrine-video-facade:hover .vitrine-video-play,.vitrine-video-facade:focus-visible .vitrine-video-play{transform:translate(-50%,-50%) scale(1.08);background:var(--primary)}

/* ---- "O que voce vai lembrar" (F5 do Bit, 2026-08-15): amostra de cards de revisao na vitrine ----
   Cores so por token (claro/escuro de graca). A resposta fica oculta ate o toque. */
.vitrine-lembrar{margin-bottom:0}
/* Quando entra embaixo de conteudo ja existente no mesmo painel (competencias ou descricao):
   respiro + fio separando os dois assuntos. Sozinho no painel, nao ganha topo nenhum. */
.vitrine-lembrar-apos{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.vitrine-lembrar-titulo{font-size:1.2rem;font-weight:700;margin:0 0 .5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border);color:var(--text)}
.vitrine-lembrar-sub{font-size:.85rem;color:var(--muted);margin:0 0 .9rem;line-height:1.5}
.vitrine-lembrar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}
.vitrine-lembrar-card{position:relative;text-align:left;display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem 1.6rem;background:color-mix(in srgb,var(--primary) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:12px;color:var(--text);cursor:pointer;font:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.vitrine-lembrar-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 18%,transparent);border-color:var(--primary)}
.vitrine-lembrar-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.vitrine-lembrar-p{font-weight:600;font-size:.92rem;line-height:1.4}
.vitrine-lembrar-r{display:none;font-size:.88rem;line-height:1.5;color:var(--text-2,var(--text));padding-top:.5rem;border-top:1px solid color-mix(in srgb,var(--primary) 20%,var(--border))}
.vitrine-lembrar-card.aberto .vitrine-lembrar-r{display:block}
.vitrine-lembrar-dica{position:absolute;right:.9rem;bottom:.55rem;font-size:.72rem;color:var(--primary);font-weight:600}
.vitrine-lembrar-card.aberto .vitrine-lembrar-dica{display:none}
@media (prefers-reduced-motion:reduce){.vitrine-lembrar-card{transition:none}.vitrine-lembrar-card:hover{transform:none}}

/* Peso de leitura — a MESMA falha ja consertada no corpo da aula (`.aulaC-texto`, 2026-08-17).
   O texto NAO era negrito (peso 400), mas LIA como negrito: a Lexend Deca e' monolinear e larga,
   e no tema escuro o texto quase-branco sobre quase-preto floresce (halation) e engorda o traco.
   Conserto: peso 350 (a fonte e' variavel, e o @font-face do head.php ja abre o piso em 100),
   um fio de letter-spacing e antialiasing SO' no escuro (no claro o traco fica fino demais).
   ⛔ Nao baixar a COR pra aliviar o peso: `--text-2` serve os DOIS temas. (2026-08-18) */
.vitrine-descricao,
.vitrine-objetivos,
.vitrine-publico,
.vitrine-requisitos,
.faq-resposta{font-weight:350;letter-spacing:.006em}
html[data-theme="dark"] .vitrine-descricao,
html[data-theme="dark"] .vitrine-objetivos,
html[data-theme="dark"] .vitrine-publico,
html[data-theme="dark"] .vitrine-requisitos,
html[data-theme="dark"] .faq-resposta{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
