 :root {
     --c-h1: #00BB9C;
     /* h1 */
     --c-h2: #FF9C00;
     /* títulos de seção (visual <h2>, sem usar a tag) */
     --c-bg: #112240;
     /* fundo principal */
     --c-text: #ffffff;
     /* textos gerais */
     --c-card: #0d1a34;
     /* fundo de cards */
     --c-muted: #9fb1d1;
     /* texto secundário */
 }

 body {
     background: var(--c-bg);
     color: var(--c-text);
     scroll-behavior: smooth;
 }

 /* Navbar fixa */
 .navbar {
     backdrop-filter: saturate(140%) blur(6px);
     background: rgba(17, 34, 64, .85);
     border-bottom: 1px solid rgba(255, 255, 255, .08);
 }

 .navbar .nav-link {
     color: #e6f2ff;
 }

 .navbar .nav-link:hover {
     color: var(--c-h1);
 }

 /* Utilitários de títulos (evitando <h2>) */
 .heading-1 {
     color: var(--c-h1);
     font-weight: 800;
     letter-spacing: .2px;
 }

 .heading-2 {
     color: var(--c-h2);
     font-weight: 800;
     letter-spacing: .2px;
     font-size: clamp(1.2rem, 2.5vw, 1.6rem);
     text-transform: uppercase;
 }

 .lead-muted {
     color: var(--c-muted);
 }

 /* Hero */
 .hero {
     position: relative;
     min-height: 78vh;
     display: grid;
     place-items: center;
     background:
         radial-gradient(1200px 500px at 10% 10%, rgba(0, 187, 156, .18), transparent 70%),
         radial-gradient(1000px 500px at 90% 20%, rgba(255, 156, 0, .12), transparent 70%),
         linear-gradient(180deg, rgba(0, 0, 0, .08), rgba(0, 0, 0, .18));
 }

 .hero-card {
     background: linear-gradient(135deg, rgba(13, 26, 52, .95), rgba(13, 26, 52, .75));
     border: 1px solid rgba(255, 255, 255, .06);
     border-radius: 1rem;
     box-shadow: 0 10px 40px rgba(0, 0, 0, .35);
 }

 /* Cards padrão */
 .card-dark {
     background: var(--c-card);
     border: 1px solid rgba(255, 255, 255, .06);
     border-radius: 1rem;
 }

 .icon-badge {
     width: 48px;
     height: 48px;
     border-radius: 12px;
     display: flex;
     align-items: center;
     justify-content: center;
     background: linear-gradient(135deg, #203357, #0d1a34);
     border: 1px solid rgba(255, 255, 255, .1);
 }

 /* Grade do curso */
 .mod-acc .accordion-button {
     background: #0f2244;
     color: #fff;
     border: 1px solid rgba(255, 255, 255, .08);
     box-shadow: none !important;
 }

 .mod-acc .accordion-button:not(.collapsed) {
     background: linear-gradient(135deg, #153060, #0f2244);
     color: #fff;
 }

 .check {
     color: #54e1c3;
 }

 /* CTA Final */
 .cta {
     background:
         radial-gradient(900px 420px at 15% 30%, rgba(0, 187, 156, .22), transparent 70%),
         radial-gradient(800px 420px at 85% 20%, rgba(255, 156, 0, .18), transparent 70%),
         linear-gradient(180deg, rgba(0, 0, 0, .12), rgba(0, 0, 0, .22));
     border-top: 1px solid rgba(255, 255, 255, .08);
 }

 /* Botões */
 .btn-cta {
     background: linear-gradient(135deg, #FF9C00, #ffb547);
     color: #112240;
     font-weight: 800;
     border: none;
     box-shadow: 0 10px 24px rgba(255, 156, 0, .25);
 }

 .btn-cta:hover {
     filter: brightness(1.05);
     color: #0b1730;
 }

 .btn-outline-soft {
     border: 1px solid rgba(255, 255, 255, .25);
     color: #e9f3ff;
 }

 .btn-outline-soft:hover {
     background: rgba(255, 255, 255, .06);
     color: #fff;
 }

 .badge-soft {
     background: rgba(255, 255, 255, .08);
     border: 1px solid rgba(255, 255, 255, .1);
     color: #e9f3ff;
 }

 /* Pequenas melhorias de espaçamento */
 section {
     padding: 72px 0;
 }

 .small {
     font-size: .92rem;
 }

 :root {
     --c-h1: #00BB9C;
     --c-h2: #FF9C00;
     --c-bg: #112240;
     --c-text: #ffffff;
     --c-card: #0d1a34;
     --c-muted: #9fb1d1;
 }

 body {
     background: var(--c-bg);
     color: var(--c-text);
 }

 .mod-acc .accordion-button {
     background: #0f2244;
     color: #fff;
     border: 1px solid rgba(255, 255, 255, .08);
     box-shadow: none !important;
 }

 .mod-acc .accordion-button:not(.collapsed) {
     background: linear-gradient(135deg, #153060, #0f2244);
     color: #fff;
 }

 /* 🔹 Correção de contraste dentro da grade */
 .mod-acc .accordion-body {
     color: #e9f3ff;
     /* texto principal mais claro */
     background-color: rgba(13, 26, 52, .6);
 }

 .mod-acc .accordion-body ul li {
     color: #e9f3ff;
     margin-bottom: 6px;
     list-style-type: disc;
     margin-left: 20px;
 }

 .mod-acc .accordion-body ul li::marker {
     color: var(--c-h2);
     /* marcador laranja */
 }

 /* Demais estilos mantidos */
 .check {
     color: #54e1c3;
 }

 .card-dark {
     background: var(--c-card);
     border: 1px solid rgba(255, 255, 255, .06);
     border-radius: 1rem;
 }


 /*horários*/

 .chip-line {
     display: flex;
     flex-wrap: wrap;
     gap: .5rem;
     margin: .75rem 0 1.25rem;

     padding: 5px;
 }

 .chip-line .badge {
     display: inline-flex;
     align-items: center;
     gap: .4rem;
     padding: .5rem .75rem;
     border-radius: 999px;
     font-weight: 700;
     letter-spacing: .2px;
     border: 1px solid rgba(220, 10, 202, 0.974);
     background: #4b1e81;
     color: #e9f3ff;
 }

 .chip-line .badge i {
     font-size: 1rem;
 }

 .chip-line .badge-live {
     background: linear-gradient(135deg, #14ccab, #0bb598);
     color: #0b1832;
     border-color: rgba(20, 204, 171, .35);
     box-shadow: 0 6px 20px rgba(20, 204, 171, .25);
 }

 .chip-line .badge-time {
     background: #0e2144;
 }

