/* Marketing layer (vitrine) — mantém theme.css como base */
:root{ --mx: 1180px; }
.m-wrap{max-width:var(--mx); margin:0 auto; padding:0 16px;}
.m-top{position:sticky; top:0; z-index:30; backdrop-filter:saturate(160%) blur(10px);}
.m-topbar{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0;}
.m-brand{display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit;}
.m-brand img{width:44px; height:44px; border-radius:16px;}
.m-cta{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.m-hero{position:relative; padding:34px 0 18px 0;}
.m-hero::before{content:""; position:absolute; inset:-120px -40px auto -40px; height:420px;
  background:
    radial-gradient(closest-side at 20% 30%, rgba(255,255,255,.10), transparent 70%),
    radial-gradient(closest-side at 80% 20%, rgba(255,255,255,.08), transparent 70%),
    linear-gradient(135deg, rgba(0,0,0,.08), transparent 55%);
  pointer-events:none;}
.m-hero-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:14px; align-items:stretch;}
@media(max-width:980px){.m-hero-grid{grid-template-columns:1fr;}}
.m-h1{font-size:34px; line-height:1.05; margin:0;}
@media(max-width:640px){.m-h1{font-size:28px;}}
.m-lead{color:var(--muted); font-size:15px; margin-top:10px;}
.m-bullets{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px;}
@media(max-width:640px){.m-bullets{grid-template-columns:1fr;}}
.m-bullet{padding:10px 12px; border-radius:16px; background:rgba(0,0,0,.03);}
.m-grid{display:grid; grid-template-columns:repeat(12,1fr); gap:12px;}
.m-col-4{grid-column:span 4;}
.m-col-6{grid-column:span 6;}
.m-col-12{grid-column:span 12;}
@media(max-width:980px){.m-col-4{grid-column:span 6;}}
@media(max-width:640px){.m-col-4,.m-col-6{grid-column:span 12;}}
.m-cardlink{text-decoration:none; color:inherit;}
.m-thumb{width:100%; aspect-ratio:16/9; background:rgba(0,0,0,.04); border-radius:20px; overflow:hidden;}
.m-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.m-meta{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.m-section{margin:18px 0;}
.m-section .m-title{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.m-section .m-title .m-h2{margin:0; font-size:18px;}
.m-divider{height:1px; background:rgba(0,0,0,.06); margin:12px 0;}
.m-course-hero{display:grid; grid-template-columns:1.25fr .75fr; gap:12px;}
@media(max-width:980px){.m-course-hero{grid-template-columns:1fr;}}
.m-sticky{position:sticky; top:84px;}
@media(max-width:980px){.m-sticky{position:static;}}
