        /* CSS Personalizado Geral */
        :root {
            --dark-blue: #0a182e;
            --dark-blue-alt: #131c31; /* Cor de fundo alternativo */
            --medium-blue: #162f5a;
            --card-blue: #192642; 
            --light-text: #f0f0f0;
            --gray-text: #ced4da;
            --accent-yellow: #ffc107;
            --accent-orange: #ffaf0f;
            --accent-green: #28a745;
            --accent-blue: #0d6efd;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: 'Poppins', sans-serif;
            background-color: var(--dark-blue);
            color: var(--light-text);
        }

        .section-padding {
            padding: 100px 0;
        }
        
        /* Cores de fundo alternadas */
        .bg-dark-blue { background-color: var(--dark-blue); }
        .bg-dark-blue-alt { background-color: var(--dark-blue-alt); }

        .section-title {
            font-size: 2.5rem;
            font-weight: 700;
            margin-bottom: 1rem;
        }

        .section-subtitle {
            max-width: 600px;
            margin: 0 auto;
            color: var(--gray-text);
            margin-bottom: 4rem;
        }
        
        /* Seção Hero */
        .hero-section {
            background: linear-gradient(120deg, var(--dark-blue), var(--medium-blue));
            min-height: 100vh;
            display: flex;
            align-items: center;
        }

        .highlight-text { color: var(--accent-yellow); }
        .main-title { font-size: 3.5rem; font-weight: 700; line-height: 1.2; }
        .main-subtitle { font-size: 1.1rem; color: var(--gray-text); max-width: 500px; }

        .features-list { list-style: none; padding: 0; margin-top: 2.5rem; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
        .features-list li { display: flex; align-items: center; gap: 0.75rem; font-size: 1rem; }
        .features-list li a { color: var(--light-text); text-decoration: none; display: flex; align-items: center; gap: 0.75rem; transition: color 0.3s; }
        .features-list li a:hover { color: var(--accent-yellow); }
        .features-list .bi { color: var(--accent-yellow); font-size: 1.5rem; }

        .btn-custom-primary { background-color: var(--accent-orange); color: var(--dark-blue); font-weight: 600; padding: 0.8rem 2rem; border-radius: 0.5rem; border: none; transition: all 0.3s ease; text-decoration: none; display: inline-block; }
        .btn-custom-primary:hover { transform: translateY(-3px); box-shadow: 0 4px 15px rgba(255, 175, 15, 0.3); color: var(--accent-yellow); }
        .btn-custom-secondary { background-color: transparent; color: var(--light-text); font-weight: 600; padding: 0.8rem 2rem; border-radius: 0.5rem; border: 2px solid #3d5a80; transition: all 0.3s ease; }
        .btn-custom-secondary:hover { background-color: #3d5a80; color: #fff; }

        /* Card de Preços da Seção Hero */
        .pricing-card { background-color: rgba(23, 49, 92, 0.7); border-radius: 1rem; padding: 2.5rem; border: 1px solid rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); height: 100%; }
        .offer-badge { display: inline-block; background-color: var(--accent-orange); color: var(--dark-blue); padding: 0.3rem 1rem; border-radius: 50rem; font-weight: 600; font-size: 0.9rem; margin-bottom: 1.5rem; }
        .price { font-size: 2.5rem; font-weight: 700; }
        .price span { font-size: 1.25rem; font-weight: 400; }
        .price-alternative { color: var(--gray-text); margin-top: -0.5rem; }
        .included-list { list-style: none; padding: 0; margin-top: 2rem; }
        .included-list li { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
        .included-list li:last-child { border-bottom: none; margin-bottom: 0; }
        .included-item { display: flex; align-items: center; gap: 0.75rem; }
        .included-list .bi-check-circle-fill { color: var(--accent-green); }
        .included-tag { color: #adb5bd; font-size: 0.9rem; }

        /* Seção Cursos Inclusos */
        .course-card { background-color: var(--card-blue); border-radius: 1rem; padding: 2rem; height: 100%; display: flex; flex-direction: column; transition: all 0.3s ease; border: 1px solid transparent; }
        .course-card:hover { transform: translateY(-5px); /*border-color: rgba(255, 255, 255, 0.2);*/ border-color: #00d4ff;}
        .course-icon { width: 60px; height: 60px; border-radius: 0.75rem; display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem; }
        .course-icon .bi { font-size: 2rem; color: #fff; }
        .icon-bg-1 { background-color: #0d6efd; } .icon-bg-2 { background-color: #198754; } .icon-bg-3 { background-color: #fd7e14; } .icon-bg-4 { background-color: #dc3545; }
        .course-card h3 { font-weight: 600; font-size: 1.4rem; }
        .course-card p { color: var(--gray-text); font-size: 0.95rem; }
        .course-topics { list-style: none; padding: 0; margin: 1.5rem 0; color: var(--gray-text); }
        .course-topics li { position: relative; padding-left: 1.2rem; margin-bottom: 0.5rem; }
        .course-topics li::before { content: ''; width: 6px; height: 6px; border-radius: 50%; position: absolute; left: 0; top: 9px; }
        .topic-color-1 li::before { background-color: #0d6efd; } .topic-color-2 li::before { background-color: #198754; } .topic-color-3 li::before { background-color: #fd7e14; } .topic-color-4 li::before { background-color: #dc3545; }
        .course-footer { margin-top: auto; padding-top: 1rem; border-top: 1px solid rgba(255, 255, 255, 0.1); display: flex; justify-content: space-between; align-items: center; font-size: 0.9rem; }
        .footer-included { color: var(--accent-green); font-weight: 500; }
        .footer-included .bi { margin-right: 0.25rem; }
        .footer-counter { color: #6c757d; }
       
        /* Seção Prévia das Aulas */
        .video-container { border-radius: 1rem; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.1); background-color: #000; }
        .video-container .ratio { border-radius: 1rem; }
      
        /* Seção Investimento */
        .investment-card { background: linear-gradient(145deg, #2a3a5b, #1e2a45); border-radius: 1rem; padding: 2.5rem; border: 1px solid rgba(255, 255, 255, 0.2); position: relative; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.3);}
        .investment-card .offer-badge-corner { position: absolute; top: 0; right: 0; background-color: var(--accent-orange); color: var(--dark-blue); padding: 5px 40px; transform: rotate(45deg) translate(28%, -55%); transform-origin: center; font-weight: bold; font-size: 0.9rem; }
        .payment-option { background-color: rgba(10, 24, 46, 0.6); border: 2px solid #2c3e5e; border-radius: 0.75rem; padding: 1rem; margin-bottom: 1rem; cursor: pointer; transition: all 0.3s ease; }
        .payment-option.active, .payment-option:hover { background-color: #2c3e5e; border-color: var(--accent-orange); }
        .payment-option .value { font-size: 1.8rem; font-weight: 700; color: var(--accent-yellow) }
        .payment-option .details { font-size: 0.9rem; color: var(--accent-green); }
        .included-features-list { list-style: none; padding: 0; margin-top: 1.5rem; }
        .included-features-list li { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.2rem; }
        .included-features-list .icon { color: var(--accent-orange); font-size: 1.5rem; }
        .included-features-list h5 { font-weight: 600; font-size: 1rem; margin-bottom: 0.1rem; }
        .included-features-list p { margin-bottom: 0; color: var(--gray-text); font-size: 0.9rem; }
        .economy-box { background-color: rgba(10, 24, 46, 0.8); padding: 1rem; border-radius: 0.5rem; text-align: center; margin-top: 1.5rem; border: 1px solid #2c3e5e; }
        .economy-box p { margin-bottom: 0.25rem; font-size: 0.9rem; }
        .economy-box .original-price { text-decoration: line-through; color: var(--gray-text); }
        .economy-box .economy-value { color: var(--accent-green); font-weight: bold; font-size: 1.1rem; }
        .investment-disclaimer { font-size: 0.8rem; color: var(--gray-text); margin-top: 1.5rem; text-align: center; }
        .investment-footer { border-top: 1px solid rgba(255, 255, 255, 0.1); margin-top: 2.5rem; padding-top: 1.5rem; display: flex; justify-content: center; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
        .investment-footer span { display: flex; align-items: center; gap: 0.5rem; font-size: 0.9rem; color: var(--gray-text); }
        .investment-footer .bi { color: var(--gray-text); }

        /* Seção de Garantia */
        .guarantee-badge { display: inline-block; border: 1px solid var(--accent-green); color: var(--accent-green); padding: 0.4rem 1rem; border-radius: 50rem; font-weight: 500; font-size: 0.9rem; margin-bottom: 1.5rem; }
        .guarantee-card { background-color: var(--card-blue); border-radius: 1rem; padding: 3rem; border: 1px solid rgba(255, 255, 255, 0.1); }
        .guarantee-item .icon { width: 60px; height: 60px; border-radius: 50%; margin: 0 auto 1rem auto; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; border: 2px solid; }
        .guarantee-item-1 .icon { color: #20c997; border-color: #20c997; }
        .guarantee-item-2 .icon { color: #0dcaf0; border-color: #0dcaf0; }
        .guarantee-item-3 .icon { color: #ffc107; border-color: #ffc107; }
        .guarantee-item h4 { font-weight: 600; font-size: 1.2rem; margin-bottom: 0.5rem; }
        .guarantee-item p { color: var(--gray-text); font-size: 0.95rem; }
        .guarantee-details { border-top: 1px solid rgba(255, 255, 255, 0.1); margin-top: 2rem; padding-top: 2rem; }
        .guarantee-details h5 { font-weight: 600; margin-bottom: 1rem; }
        .guarantee-checklist { list-style: none; padding: 0; color: var(--gray-text); }
        .guarantee-checklist li { display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 0.5rem; }
        .guarantee-checklist .bi { color: var(--accent-green); margin-top: 4px; }
        .final-assurance { color: var(--gray-text); margin-top: 3rem; }

        /* Seção Professor */
        .professor-photo-wrapper { display: flex; align-items: center; justify-content: center; height: 100%; }
        .professor-photo { width: 250px; height: 250px; border-radius: 50%; object-fit: cover; border: 5px solid var(--medium-blue); box-shadow: 0 0 30px rgba(0, 150, 255, 0.3); }
        .professor-details h3 { font-weight: 700; font-size: 2rem; }
        .professor-details .specialty { font-weight: 500; color: var(--accent-orange); display: inline-block; margin-bottom: 2rem; }
        .professor-credentials { list-style: none; padding: 0; }
        .professor-credentials li { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.5rem; }
        .professor-credentials .icon { font-size: 1.5rem; color: var(--accent-orange); margin-top: 5px; }
        .professor-credentials h5 { font-weight: 600; margin-bottom: 0.25rem; }
        .professor-credentials p { margin-bottom: 0; color: var(--gray-text); }
        .professor-quote { background-color: var(--card-blue); border-left: 4px solid var(--accent-blue); padding: 1.5rem; border-radius: 0 0.5rem 0.5rem 0; margin-top: 2rem; }
        .professor-quote p { font-style: italic; color: var(--gray-text); margin-bottom: 0; }
        
        /* Rodapé */
        .footer { padding: 80px 0; }
        .footer-brand { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
        .footer-brand .icon { font-size: 2rem; color: var(--accent-blue); }
        .footer-brand .text { font-size: 1.5rem; font-weight: 700; color: var(--light-text); }
        .footer .footer-description { color: var(--gray-text); max-width: 350px;}
        .footer-title { font-size: 1.2rem; font-weight: 600; margin-bottom: 1.5rem; color: var(--light-text); }
        .footer-list { list-style: none; padding: 0; }
        .footer-list li { margin-bottom: 0.8rem; }
        .footer-list a { color: var(--gray-text); text-decoration: none; transition: color 0.3s; display: flex; align-items: center; gap: 0.75rem;}
        .footer-list a:hover { color: var(--accent-orange); }
        .footer-list .bi { font-size: 1.1rem; }
        .footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: 2rem; margin-top: 3rem; }
        .footer-bottom p { margin-bottom: 0; color: var(--gray-text); font-size: 0.9rem; }


        /* Responsividade */
        @media (max-width: 991.98px) { .main-title { font-size: 2.8rem; } .features-list { gap: 1rem; } .hero-section { min-height: auto; padding: 80px 0;} .professor-photo-wrapper { margin-bottom: 2rem; } }
        @media (max-width: 767.98px) { body { text-align: center; } .hero-section { padding: 60px 0 40px 0; } .section-padding { padding: 60px 0; } .main-subtitle { margin-left: auto; margin-right: auto; } .features-list { grid-template-columns: 1fr; text-align: left; max-width: 300px; margin-left: auto; margin-right: auto;} .button-group { flex-direction: column; gap: 1rem; align-items: stretch;} .pricing-card { margin-top: 3rem; } .cta-banner { text-align: center; } .cta-price { font-size: 1.5rem; } .guarantee-card { padding: 2rem; } .professor-details { text-align: left; } .professor-quote { text-align: left; } .investment-footer { gap: 1rem; } .footer-brand, .footer-bottom { justify-content: center; } .footer-bottom p { text-align: center; } .footer-bottom .text-end { text-align: center !important; margin-top: 0.5rem; } }
  