:root {
    --primary-dark: #0A192F;
    --accent: #FFD700;
    --neutral-dark: #2D4059;
    --neutral-light: #F8F9FA;
    --cta: #FF6B6B;
}
a {
    color: var(--accent);
    text-decoration: none;
    transition: color 0.3s ease;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    line-height: 1.6;
    color: var(--neutral-light);
    background-color: var(--primary-dark);
    font-size: 1.1rem;
}

h1, h2, h3 {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
}

header {
    background-color: var(--neutral-dark);
    padding: 1rem 2rem;
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 10px rgba(0,0,0,0.3);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header a {
    color: var(--accent);
    text-decoration: none;
    font-size: 2rem;
    letter-spacing: 1px;
}

nav ul {
    display: flex;
    gap: 2rem;
    list-style: none;
    align-items: center;
}

nav a {
    color: var(--neutral-light);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

nav a:hover,
nav .current {
    color: var(--accent);
}

.nav-cta-btn {
    background: var(--accent);
    color: var(--primary-dark) !important;
    padding: 0.5rem 1.25rem;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.95rem;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
    border: 2px solid var(--accent);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    white-space: nowrap;
}

.nav-cta-btn:hover {
    background: transparent;
    color: var(--accent) !important;
    box-shadow: 0 0 16px rgba(255, 215, 0, 0.4);
    transform: translateY(-2px);
}

.dropdown {
    position: relative;
}

.dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--neutral-dark);
    min-width: 200px;
    box-shadow: 0 8px 16px rgba(0,0,0,0.2);
}

.dropdown:hover .dropdown-menu {
    display: block;
}

.dropdown-menu li {
    padding: 0.8rem 1rem;
}

.hero {
    text-align: center;
    padding: 8.5rem 2rem 4.5rem;
    background: linear-gradient(rgba(10, 25, 47, 0.92), rgba(10, 25, 47, 0.92));
    min-height: 80vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(255, 215, 0, 0.1);
    color: var(--accent);
    border: 1px solid rgba(255, 215, 0, 0.35);
    padding: 0.45rem 1.25rem;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0 auto 1.5rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.hero-eyebrow i {
    font-size: 0.95rem;
}

.hero-headline {
    font-size: 3rem;
    font-family: 'Roboto Condensed', sans-serif;
    color: #FFFFFF;
    line-height: 1.25;
    max-width: 950px;
    margin: 0 auto 1.5rem;
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.5);
    letter-spacing: 0.5px;
}

.hero-subtitle {
    font-size: 1.25rem;
    color: rgba(248, 249, 250, 0.9);
    max-width: 820px;
    margin: 0 auto 2.5rem;
    line-height: 1.75;
}

.hero-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.hero-buttons .btn {
    margin: 0.4rem;
    font-size: 1.05rem;
    padding: 0.9rem 2.2rem;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
}

.hero-buttons .btn-secondary {
    background: rgba(255, 215, 0, 0.08);
    color: var(--accent);
    border: 2px solid var(--accent);
}

.hero-buttons .btn-secondary:hover {
    background: var(--accent);
    color: var(--primary-dark);
    box-shadow: 0 5px 15px rgba(255, 215, 0, 0.3);
}

.hero h2 {
    font-size: 2.5rem;
    margin-bottom: 1.5rem;
    color: var(--accent);
}

.hero p {
    font-size: 1.3rem;
    max-width: 800px;
    margin: 0 auto 2rem;
}

.section {
    padding: 4rem 2rem;
    background-color: var(--neutral-dark);
    margin: 2rem 0;
}

.section-title {
    font-size: 2rem;
    color: var(--accent);
    margin-bottom: 2rem;
    text-align: center;
}

.section-image {
    width: 90%;
    max-width: 400px;
    height: auto;
    margin: 1rem auto;
    display: block;
    border-radius: 5px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.section-description {
    max-width: 800px;
    margin: 1rem auto;
    font-size: 1.15rem;
    line-height: 1.8;
}

.btn {
    display: inline-block;
    padding: 0.8rem 2rem;
    background-color: var(--accent);
    color: var(--primary-dark);
    text-decoration: none;
    border-radius: 5px;
    font-weight: 700;
    text-transform: uppercase;
    transition: transform 0.3s ease;
    margin: 1rem 0.5rem;
}

.btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 215, 0, 0.3);
}

footer {
    background-color: var(--neutral-dark);
    text-align: center;
    padding: 2rem;
    margin-top: 4rem;
}

.social-icons {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 1rem;
}

.social-icons a {
    color: var(--neutral-light);
    font-size: 1.5rem;
    transition: color 0.3s ease;
}

.social-icons a:hover {
    color: var(--accent);
}

.menu-toggle {
    display: none;
    background: none;
    border: none;
    color: var(--neutral-light);
    font-size: 1.5rem;
    cursor: pointer;
}
.dropdown-toggle {
    background: transparent;
    border: none;
    color: var(--neutral-light);
    padding: 0.5rem;
    cursor: pointer;
    transition: transform 0.3s ease;
}
.dropdown.active .dropdown-toggle {
    transform: rotate(180deg);
}

@media (max-width: 768px) {
    header {
        position: sticky;
        top: 0;
        z-index: 1000;
        background-color: var(--neutral-dark);
        padding: 0.5rem 1rem;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    }
    .logo {
        max-width: 80px; /* Smaller logo on mobile */
    }

    .menu-toggle {
        display: block;
        position: absolute;
        right: 1rem;
        top: 0.8rem;
        z-index: 1001;
        padding: 0.5rem;
        background: transparent;
        border: none;
    }

    nav ul {
        display: none;
        width: 100%;
        margin: 0;
        padding: 0;
        position: absolute;
        top: calc(100% - 1px);
        left: 0;
        background-color: var(--neutral-dark);
        z-index: 1000;
        box-shadow: 0 3px 10px rgba(0,0,0,0.2);
    }
    .dropdown-toggle {
        background: transparent;
        border: none;
        color: var(--neutral-light);
        padding: 0.5rem;
        cursor: pointer;
        transition: transform 0.3s ease;
    }
    .dropdown.active .dropdown-toggle {
        transform: rotate(180deg);
    }

    nav ul.menu-active {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        padding: 1rem 0;
    }

    .dropdown-menu {
        position: static;
        background-color: transparent;
        box-shadow: none;
        display: none;
        padding-left: 1rem;
    }

    .dropdown-menu.menu-active {
        display: block;
        animation: slideDown 0.3s ease-out;
    }

    .hero {
        padding: 5rem 1.25rem 3rem;
        margin-top: 0 !important;
        min-height: auto;
    }

    .hero-eyebrow {
        font-size: 0.78rem;
        letter-spacing: 1px;
        padding: 0.4rem 0.9rem;
        margin-bottom: 1.2rem;
        text-align: center;
    }

    .hero-headline {
        font-size: 2rem;
        line-height: 1.3;
        margin-bottom: 1.2rem;
    }

    .hero-subtitle {
        font-size: 1.05rem;
        line-height: 1.6;
        margin-bottom: 1.8rem;
    }

    .hero-buttons {
        flex-direction: column;
        width: 100%;
        gap: 0.75rem;
    }

    .hero-buttons .btn {
        width: 100%;
        max-width: 320px;
        justify-content: center;
        margin: 0 auto;
    }

    .nav-cta-btn {
        margin: 0.5rem 1.5rem;
        text-align: center;
        display: inline-flex;
        justify-content: center;
    }

    @keyframes slideDown {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}
.logo {
    max-width: 80px; /* Adjust based on your logo size */
    height: auto;
    display: block;
    padding: 10px 0; /* Add vertical spacing if needed */
}

/* Optional: Add hover effect */
.logo:hover {
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

/* Add after existing .logo styles */
.levels-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin: 2rem auto;
    max-width: 1200px;
}

.level-card {
    background: var(--primary-dark);
    border-radius: 8px;
    padding: 2rem;
    text-align: center;
    transition: transform 0.3s ease;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.level-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.level-title {
    color: var(--accent);
    font-size: 1.5rem;
    margin-bottom: 1rem;
    font-family: 'Roboto Condensed', sans-serif;
}

.level-description {
    color: var(--neutral-light);
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 1.5rem;
    opacity: 0.9;
}

.level-button {
    display: inline-block;
    padding: 0.8rem 1.5rem;
    background-color: var(--accent);
    color: var(--primary-dark);
    text-decoration: none;
    border-radius: 5px;
    font-weight: 700;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    font-size: 0.95rem;
}

.level-button:hover {
    background-color: transparent;
    color: var(--accent);
    border-color: var(--accent);
    box-shadow: 0 5px 15px rgba(255, 215, 0, 0.2);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .levels-container {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 0 1rem;
    }
    
    .level-card {
        padding: 1.5rem;
    }
    
    .level-title {
        font-size: 1.3rem;
    }
}

/* ==========================================================================
   Product Template & Dynamic EA Catalog Styles
   ========================================================================== */

.product-badge-wrapper {
    margin-bottom: 1rem;
}

.product-badge {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 215, 0, 0.12);
    color: var(--accent);
    border: 1px solid rgba(255, 215, 0, 0.35);
    padding: 0.3rem 0.9rem;
    border-radius: 50px;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.price-pill {
    display: inline-flex;
    align-items: center;
    background: rgba(76, 175, 80, 0.15);
    color: #4CAF50;
    border: 1px solid rgba(76, 175, 80, 0.4);
    padding: 0.3rem 0.8rem;
    border-radius: 50px;
    font-size: 0.82rem;
    font-weight: 700;
}

.card-badge-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.card-bullets,
.level-card .card-bullets,
.ea-catalog-card .card-bullets {
    margin: 1rem 0 1.5rem;
    padding-left: 0 !important;
    margin-left: 0 !important;
    list-style: none !important;
    list-style-type: none !important;
    text-align: left;
}

.card-bullets li,
.level-card .card-bullets li,
.ea-catalog-card .card-bullets li {
    position: static;
    padding: 0.35rem 0;
    padding-left: 0 !important;
    margin-left: 0 !important;
    font-size: 0.95rem;
    display: flex;
    align-items: flex-start;
    color: rgba(248, 249, 250, 0.9);
    list-style: none !important;
    list-style-type: none !important;
}

.card-bullets li::before,
.level-card .card-bullets li::before,
.ea-catalog-card .card-bullets li::before {
    content: none !important;
    display: none !important;
}

.card-actions {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    margin-top: auto;
}

.card-actions .btn {
    margin: 0;
    width: 100%;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1.2rem;
    font-size: 0.92rem;
}

.card-actions .btn-inquire {
    background: rgba(37, 211, 102, 0.12);
    color: #25D366;
    border: 2px solid #25D366;
}

.card-actions .btn-inquire:hover {
    background: #25D366;
    color: #0A192F;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3);
}

/* Product Detail Header & Dual-Checkout Box */
.product-header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    align-items: start;
    margin-bottom: 3rem;
}

.product-preview-img {
    width: 100%;
    max-width: 500px;
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.dual-checkout-box {
    background: rgba(10, 25, 47, 0.75);
    border: 1px solid rgba(255, 215, 0, 0.25);
    border-radius: 10px;
    padding: 1.8rem;
    margin-top: 1.5rem;
    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.35);
}

.checkout-header h3 {
    color: var(--neutral-light);
    font-size: 1.3rem;
    margin-bottom: 0.3rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.checkout-header p {
    font-size: 0.95rem;
    color: rgba(248, 249, 250, 0.75);
    margin-bottom: 1.25rem;
}

.checkout-actions {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    margin-bottom: 1.25rem;
}

.btn-direct-crypto {
    background: #25D366 !important;
    color: #0A192F !important;
    border: 2px solid #25D366;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    padding: 0.9rem 1.4rem !important;
    font-weight: 700;
    font-size: 0.98rem;
    border-radius: 6px;
    transition: all 0.3s ease;
    margin: 0 !important;
    text-transform: none;
}

.btn-direct-crypto:hover {
    background: transparent !important;
    color: #25D366 !important;
    box-shadow: 0 0 16px rgba(37, 211, 102, 0.4);
    transform: translateY(-2px);
}

.btn-mql5-market {
    background: var(--cta) !important;
    color: #FFFFFF !important;
    border: 2px solid var(--cta);
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    padding: 0.85rem 1.4rem !important;
    font-weight: 700;
    font-size: 0.98rem;
    border-radius: 6px;
    transition: all 0.3s ease;
    margin: 0 !important;
    text-transform: none;
}

.btn-mql5-market:hover {
    background: transparent !important;
    color: var(--cta) !important;
    box-shadow: 0 0 16px rgba(255, 107, 107, 0.4);
    transform: translateY(-2px);
}

.btn-price-tag {
    background: rgba(0, 0, 0, 0.28);
    padding: 0.25rem 0.65rem;
    border-radius: 4px;
    font-size: 0.85rem;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.custom-mod-wrapper {
    border-top: 1px solid rgba(255, 215, 0, 0.15);
    padding-top: 1rem;
    margin-top: 0.5rem;
    text-align: center;
}

.custom-mod-link,
.custom-mod-wrapper a {
    color: var(--accent);
    font-size: 0.92rem;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    text-decoration: none !important;
    border-bottom: none !important;
    transition: all 0.25s ease;
}

.custom-mod-link:hover,
.custom-mod-link:focus,
.custom-mod-wrapper a:hover,
.custom-mod-wrapper a:focus {
    color: #FFFFFF;
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
    text-shadow: 0 0 8px rgba(255, 215, 0, 0.4);
}

.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.25rem;
}

@media (max-width: 768px) {
    .product-header {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .btn-direct-crypto, .btn-mql5-market {
        flex-direction: column;
        gap: 0.4rem;
        text-align: center;
        padding: 0.8rem 1rem !important;
    }
}

/* Add to your CSS file */
.lesson-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem;
}

.lesson-card {
    background: var(--primary-dark);
    border-radius: 8px;
    padding: 1.5rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    transition: transform 0.3s ease;
}

.lesson-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.lesson-title {
    color: var(--accent);
    font-family: 'Roboto Condensed', sans-serif;
    margin-bottom: 1rem;
    font-size: 1.3rem;
}

.lesson-description {
    color: var(--neutral-light);
    opacity: 0.9;
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.lesson-button {
    display: inline-block;
    padding: 0.7rem 1.5rem;
    background-color: var(--accent);
    color: var(--primary-dark);
    text-decoration: none;
    border-radius: 5px;
    font-weight: 700;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.lesson-button:hover {
    background-color: transparent;
    color: var(--accent);
    border-color: var(--accent);
}

@media (max-width: 768px) {
    .lesson-grid {
        grid-template-columns: 1fr;
    }
}

/* ===== LESSON PAGE SPECIFIC STYLES ===== */
.lesson-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
}

.lesson-card {
    background: var(--primary-dark);
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.1);
    margin: 2rem 0;
    padding: 2rem;
    transition: transform 0.3s ease;
}

.lesson-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

/* Participant Grid */
.participant-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin-top: 1.5rem;
}

.participant-card {
    background: rgba(255, 215, 0, 0.05);
    border-left: 4px solid var(--accent);
    padding: 1.5rem;
    border-radius: 8px;
}

.participant-card h3 {
    color: var(--accent);
    margin-bottom: 0.5rem;
    font-family: 'Roboto Condensed', sans-serif;
}

/* Quiz Styles */
.quiz-card {
    background: rgba(255, 107, 107, 0.05);
    border: 2px solid var(--cta);
}

.quiz-question {
    margin: 1.5rem 0;
}

.quiz-option {
    display: block;
    width: 100%;
    padding: 1rem;
    margin: 0.5rem 0;
    background: var(--primary-dark);
    border: 2px solid rgba(255, 215, 0, 0.1);
    border-radius: 8px;
    color: var(--neutral-light);
    cursor: pointer;
    transition: all 0.3s ease;
}

.quiz-option:hover {
    background: rgba(255, 215, 0, 0.05);
    border-color: var(--accent);
}

/* Icon List */
.icon-list {
    display: grid;
    gap: 2rem;
    margin-top: 1.5rem;
}

.icon-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: var(--neutral-light);
}

.icon-item i {
    font-size: 1.5rem;
    color: var(--accent);
    min-width: 40px;
}

/* Example Box */
.example-box {
    background: rgba(10, 25, 47, 0.5);
    border-left: 4px solid var(--accent);
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 0 8px 8px 0;
}

/* Next Lesson Section */
.next-lesson {
    text-align: center;
    margin: 3rem 0;
    padding: 2rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 12px;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

/* Responsive Design */
@media (max-width: 768px) {
    .participant-grid {
        grid-template-columns: 1fr;
    }
    
    .lesson-content {
        padding: 1rem;
    }
    
    .lesson-card {
        margin: 1rem 0;
        padding: 1.5rem;
    }
    
    .quiz-option {
        padding: 0.8rem;
    }
}

/* Enhanced Lesson Styles */
.lesson-header {
    text-align: center;
    margin-bottom: 3rem;
}

.lesson-objective {
    color: var(--accent);
    font-size: 1.2rem;
}

.concept-grid, .purpose-grid, .advantages-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    margin: 2rem 0;
}

.concept-card, .purpose-card, .advantage-card {
    background: rgba(255, 215, 0, 0.05);
    padding: 1.5rem;
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.participant-hierarchy {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
}

.tier {
    padding: 1.5rem;
    border-radius: 8px;
}

.central-banks { background: rgba(255, 107, 107, 0.05); }
.commercial-banks { background: rgba(52, 152, 219, 0.05); }
.retail-traders { background: rgba(46, 204, 113, 0.05); }

.historical-example, .case-study {
    background: var(--primary-dark);
    padding: 1rem;
    margin-top: 1rem;
    border-radius: 6px;
}

.interactive-section {
    background: rgba(10, 25, 47, 0.8);
    border: 2px solid var(--accent);
}

.quiz-container {
    margin: 2rem 0;
}

.analogy-card {
    background: rgba(255, 215, 0, 0.1);
    padding: 1.5rem;
    border-radius: 8px;
    margin-top: 2rem;
}

.next-steps {
    text-align: center;
    margin-top: 4rem;
}

.homework-box {
    background: rgba(255, 215, 0, 0.05);
    padding: 1.5rem;
    margin: 2rem 0;
    border-radius: 8px;
}

@media (max-width: 768px) {
    .concept-grid, .purpose-grid {
        grid-template-columns: 1fr;
    }
    
    .tier {
        padding: 1rem;
    }
}

/* Auth Specific Styles */
.auth-section {
    padding: 6rem 2rem 4rem;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.auth-container {
    background: var(--neutral-dark);
    padding: 3rem;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    max-width: 500px;
    width: 100%;
}

.auth-welcome {
    text-align: center;
    margin-bottom: 2.5rem;
}

.auth-subtitle {
    color: var(--neutral-light);
    opacity: 0.9;
    margin-top: 0.5rem;
}

.auth-form {
    margin: 2rem 0;
}

.form-group {
    position: relative;
    margin-bottom: 1.5rem;
}

.form-group input {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    background: var(--primary-dark);
    border: 2px solid rgba(255, 215, 0, 0.1);
    border-radius: 8px;
    color: var(--neutral-light);
    font-size: 1rem;
    transition: all 0.3s ease;
}

.form-group input:focus {
    border-color: var(--accent);
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.1);
}

.input-icon {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--accent);
    opacity: 0.7;
}

.btn-block {
    width: 100%;
    padding: 1rem;
    font-size: 1.1rem;
}

.btn-secondary {
    background: rgba(255, 215, 0, 0.1);
    color: var(--accent);
    border: 2px solid rgba(255, 215, 0, 0.2);
}

.btn-secondary:hover {
    background: rgba(255, 215, 0, 0.2);
    transform: translateY(-2px);
}

.auth-divider {
    position: relative;
    margin: 2rem 0;
    text-align: center;
    color: var(--neutral-light);
    opacity: 0.7;
}

.auth-divider::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    border-top: 1px solid rgba(255, 215, 0, 0.1);
    z-index: 1;
}

.auth-divider span {
    position: relative;
    padding: 0 1rem;
    background: var(--neutral-dark);
    z-index: 2;
}

.auth-links {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media (max-width: 768px) {
    .auth-container {
        padding: 2rem;
        margin: 1rem;
    }
    
    .auth-section {
        padding: 4rem 1rem;
    }
    
    .auth-links {
        flex-direction: column;
    }
}
/* Add to noldy22.css */
.fa-check-circle {
    color: var(--accent);
    opacity: 0.7;
}

/* Alert Styles */
.alert-container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--neutral-dark);
    border: 2px solid var(--accent);
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    z-index: 2000;
    max-width: 90%;
    width: 500px;
    display: none;
    animation: alertFadeIn 0.3s ease-out;
}

.alert-content {
    position: relative;
    padding: 2rem;
}

.close-alert {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 1.5rem;
    color: var(--neutral-light);
    cursor: pointer;
    transition: color 0.3s ease;
}

.close-alert:hover {
    color: var(--accent);
}

#alertMessage {
    color: var(--neutral-light);
    font-size: 1.1rem;
    line-height: 1.6;
    margin: 1rem 0;
}

@keyframes alertFadeIn {
    from {
        opacity: 0;
        transform: translate(-50%, -60%);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .alert-container {
        width: 90%;
        padding: 1rem;
    }
    
    .alert-content {
        padding: 1.5rem;
    }
    
    #alertMessage {
        font-size: 1rem;
    }
}
/* Add this to your CSS file */
.level-card ul {
    list-style-type: none;
    margin: 1rem 0;
}

.level-card li {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 0.5rem;
}

.level-card li::before {
    content: "•";
    color: var(--accent);
    position: absolute;
    left: 0;
    font-weight: bold;
}

/* Override: Remove bullet dot from catalog cards and checkmark bullet lists */
.level-card .card-bullets li::before,
.ea-catalog-card li::before,
.card-bullets li::before {
    content: none !important;
    display: none !important;
}

.level-card .card-bullets li,
.ea-catalog-card li {
    padding-left: 0;
}

/* Product Page Enhancements */
.product-header {
    padding: 2rem 0;
}

.feature-item {
    padding: 1.5rem;
    background: rgba(255,215,0,0.05);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.settings-table th {
    font-family: 'Roboto Condensed', sans-serif;
}

.faq-item {
    padding: 1.5rem;
    transition: transform 0.3s ease;
}

.faq-item:hover {
    transform: translateY(-3px);
}

.styled-list li {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
    position: relative;
}

.styled-list li::before {
    content: "▹";
    color: var(--accent);
    position: absolute;
    left: 0;
}
/* Add after existing table styles */
.comparison-table table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    background: var(--primary-dark);
}

.comparison-table th,
.comparison-table td {
    padding: 1rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: left;
}

.comparison-table th {
    background-color: var(--neutral-dark);
    font-family: 'Roboto Condensed', sans-serif;
    color: var(--accent);
}

.disclaimer {
    font-size: 0.9rem;
    opacity: 0.7;
    margin-top: 0.5rem;
}

/* Expanded sections */
.expanded {
    margin: 2rem 0;
    padding: 1.5rem;
    background: rgba(255, 215, 0, 0.05);
    border-radius: 8px;
}

.visual-guide {
    margin: 2rem auto;
    max-width: 600px;
    text-align: center;
}

.visual-guide img {
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    margin-bottom: 1rem;
}

.image-caption {
    font-size: 0.9rem;
    opacity: 0.7;
}

/* Calculation workspace */
.calculation-workspace {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 1rem 0;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.calculation-workspace p {
    font-family: monospace;
    color: var(--accent);
    margin: 0.5rem 0;
}

/* Scenario questions */
.scenario {
    background: rgba(255, 107, 107, 0.05);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 1.5rem 0;
}

.hint {
    font-size: 0.9rem;
    color: rgba(248, 249, 250, 0.7);
    margin-top: 0.5rem;
}

/* Price ticker animation */
.price-ticker {
    display: inline-flex;
    align-items: center;
    padding: 0.8rem 1.5rem;
    background: var(--primary-dark);
    border-radius: 30px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    margin: 1rem 0;
}

.bid-ask {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.spread {
    color: var(--cta);
    font-weight: bold;
}

/* Warning notes */
.warning-note {
    color: var(--cta);
    padding: 1rem;
    border-left: 3px solid var(--cta);
    margin: 1rem 0;
    background: rgba(255, 107, 107, 0.05);
}

/* Formula boxes */
.formula-box {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 1rem 0;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.formula-box p {
    margin: 0.5rem 0;
    font-family: monospace;
}

/* Responsive table adjustments */
@media (max-width: 768px) {
    .comparison-table table {
        display: block;
        overflow-x: auto;
    }
    
    .example-table table {
        font-size: 0.9rem;
    }
    
    .visual-guide img {
        width: 100%;
    }
}

/* Add this to your CSS */
.example-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    background: var(--primary-dark);
}

.example-table th,
.example-table td {
    padding: 1rem;
    border: 1px solid rgba(255, 215, 0, 0.1);
    text-align: center;
}

.example-table th {
    background-color: var(--neutral-dark);
    color: var(--accent);
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.5px;
}

.example-table tr:nth-child(even) {
    background-color: rgba(255, 215, 0, 0.03);
}

.example-table td {
    color: var(--neutral-light);
    font-size: 0.95rem;
}

@media (max-width: 768px) {
    .example-table {
        font-size: 0.9rem;
    }
    
    .example-table th,
    .example-table td {
        padding: 0.8rem;
    }
}

.pip-diagram {
    max-width: 600px;
    margin: 0 auto;
    display: block;
}

.pip-diagram text {
    user-select: none;
}
.calculation-diagram pre {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    border: 1px solid rgba(255, 215, 0, 0.2);
    color: var(--accent);
    text-align: center;
    margin: 2rem auto;
    max-width: 400px;
    overflow-x: auto;
}
/* Add to existing styles */
.explanation-box {
    background: rgba(255,215,0,0.05);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 1rem 0;
}

.accent {
    color: var(--accent);
    font-weight: 700;
}

.math-steps {
    background: var(--primary-dark);
    padding: 1rem;
    border-radius: 8px;
    margin: 1rem 0;
}

.step-by-step {
    background: rgba(255,255,255,0.05);
    padding: 1rem;
    border-left: 3px solid var(--accent);
    margin: 1rem 0;
}

.motivation {
    background: rgba(255,215,0,0.1);
    padding: 1rem;
    margin-top: 1rem;
    border-radius: 8px;
}
/* === ANALOGY STYLES === */
.money-exchange-analogy {
    background: rgba(255,215,0,0.05);
    padding: 1.5rem;
    border-radius: 10px;
    margin: 1rem 0;
    border-left: 4px solid var(--accent);
}

.team-list span.rate-example {
    color: rgba(248,249,250,0.7);
    font-size: 0.9rem;
    margin-left: 10px;
}

/* === STEP-BY-STEP GUIDE === */
.step-by-step-guide {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
}

.step {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 1rem 0;
}

.step-number {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--accent);
    color: var(--primary-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.step.result .step-number {
    background: var(--cta);
}

/* === LOT SIZE COMPARISON === */
.package-comparison {
    background: rgba(10,25,47,0.8);
    padding: 1.5rem;
    border-radius: 8px;
}

.lot-card {
    padding: 1.5rem;
    margin: 1rem;
    border-radius: 8px;
    text-align: center;
}

.lot-card.micro { background: rgba(76,175,80,0.1); }
.lot-card.mini { background: rgba(33,150,243,0.1); }
.lot-card.standard { background: rgba(156,39,176,0.1); }

.coffee-size {
    display: block;
    font-size: 0.9rem;
    color: var(--accent);
    margin: 0.5rem 0;
}

/* === TRADING SIMULATOR === */
.trading-simulator {
    background: var(--neutral-dark);
    padding: 2rem;
    border-radius: 10px;
}

.simulator-screen {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
}

.price-up { color: #4CAF50; }
.price-down { color: #F44336; }

.simulator-controls {
    display: flex;
    gap: 1rem;
    justify-content: center;
    margin-top: 1.5rem;
}

.btn-buy, .btn-sell {
    padding: 1rem 2rem;
    border: none;
    border-radius: 5px;
    font-weight: 700;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.btn-buy {
    background: #4CAF50;
    color: white;
}

.btn-sell {
    background: #F44336;
    color: white;
}

/* === HOMEWORK LIST === */
.hw-list li {
    margin: 1rem 0;
    padding-left: 1.5rem;
    position: relative;
}

.hw-list li::before {
    content: "▹";
    color: var(--accent);
    position: absolute;
    left: 0;
}
/* === DEFINITION BOXES === */
.definition-box {
    background: rgba(255,215,0,0.05);
    padding: 1.5rem;
    border-left: 4px solid var(--accent);
    margin: 1rem 0;
    border-radius: 8px;
}

.definition-box h3 {
    color: var(--accent);
    margin-bottom: 0.5rem;
}

/* === EXAMPLE STYLES === */
.real-world-example {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 1rem 0;
    border: 1px solid rgba(255,215,0,0.1);
}

.example {
    background: rgba(255,255,255,0.03);
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 6px;
}

/* === CALCULATION STYLES === */
.math-steps {
    background: rgba(10,25,47,0.8);
    padding: 1.5rem;
    border-radius: 8px;
    font-family: monospace;
    margin: 1rem 0;
}

.math-steps strong {
    color: var(--accent);
}

/* === QUIZ EXPLANATIONS === */
.explanation {
    background: rgba(76,175,80,0.1);
    padding: 1rem;
    border-radius: 8px;
    margin-top: 1rem;
}

.explanation p {
    margin: 0.5rem 0;
}

/* === PRICE TICKER === */
.price-ticker {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: var(--neutral-dark);
    padding: 1rem;
    border-radius: 8px;
    margin: 1rem 0;
}

.prices {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.spread {
    color: var(--cta);
}
/* Market Hours Visualization */
.market-hours-guide {
    background: rgba(255,215,0,0.05);
    padding: 2rem;
    border-radius: 10px;
}

.timezone-map {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-top: 1.5rem;
}

.session-dot {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin: 0 auto;
}

.session-dot.sydney { background: #4CAF50 }
.session-dot.tokyo { background: #2196F3 }
.session-dot.london { background: #FF5722 }
.session-dot.ny { background: #9C27B0 }

/* Liquidity Comparison */
.liquidity-comparison {
    margin: 2rem 0;
}

.volume-bars {
    background: var(--primary-dark);
    padding: 1rem;
    border-radius: 8px;
}

.volume-bar {
    padding: 1rem;
    margin: 0.5rem 0;
    border-radius: 4px;
    color: white;
}

.volume-bar.forex { background: #4CAF50 }
.volume-bar.stocks { background: #2196F3 }

/* Participant Cards */
.participant-roles {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
}

.participant-card {
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
}

.participant-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    justify-content: center;
}

.central-bank { background: rgba(76,175,80,0.1) }
.commercial-bank { background: rgba(33,150,243,0.1) }
.retail-trader { background: rgba(156,39,176,0.1) }

/* Trading Simulator */
.trading-simulator {
    background: var(--neutral-dark);
    padding: 2rem;
    border-radius: 10px;
}

.simulator-screen {
    background: var(--primary-dark);
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
    margin-bottom: 1.5rem;
}

.price-up { color: #4CAF50; }
.price-down { color: #F44336; }

.btn-buy, .btn-sell {
    padding: 1rem 2rem;
    border: none;
    border-radius: 5px;
    font-weight: 700;
    cursor: pointer;
}

.btn-buy { background: #4CAF50; color: white; }
.btn-sell { background: #F44336; color: white; }
/* Chart Styles */
.chart-types {
    background: rgba(255,215,0,0.05);
    padding: 2rem;
    border-radius: 10px;
    margin: 1rem 0;
}

.chart-visual {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.chart-example svg {
    border: 1px solid rgba(255,215,0,0.2);
    padding: 1rem;
}

/* Support/Resistance Visual */
.sr-visual {
    margin: 2rem 0;
    padding: 1rem;
    background: var(--primary-dark);
    border-radius: 8px;
}

.sr-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 1rem;
}

.support { color: #4CAF50; }
.resistance { color: #F44336; }

/* Trend Styles */
.trend-types {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.trend-card svg {
    background: rgba(255,255,255,0.03);
    padding: 1rem;
}

/* Indicator Styles */
.indicator-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.rsi-meter {
    height: 100px;
    background: linear-gradient(to bottom, #4CAF50 0%, #FFD700 50%, #F44336 100%);
    border-radius: 8px;
    position: relative;
    color: white;
}

.overbought, .oversold, .neutral {
    position: absolute;
    width: 100%;
    padding: 0.3rem;
    text-align: center;
}

.overbought { top: 0 }
.neutral { top: 30% }
.oversold { bottom: 0 }

/* Chart Simulator */
.chart-simulator {
    background: var(--neutral-dark);
    padding: 2rem;
    border-radius: 10px;
}

.chart-area {
    height: 300px;
    border-left: 2px solid #FFD700;
    border-bottom: 2px solid #FFD700;
    position: relative;
    margin-bottom: 2rem;
}

.price-point {
    width: 10px;
    height: 10px;
    background: #FFD700;
    position: absolute;
    border-radius: 50%;
}
/* MT5 Chart Images Styling */
.mt5-chart {
    width: 100%;
    height: auto;
    border: 1px solid rgba(255,215,0,0.2);
    border-radius: 8px;
    margin: 1rem 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.chart-comparison {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.chart-caption {
    text-align: center;
    margin-top: 1rem;
    padding: 1rem;
    background: rgba(255,215,0,0.05);
    border-radius: 8px;
}

/* Support/Resistance Annotations */
.sr-example {
    position: relative;
    margin-bottom: 80px; /* Add space for annotations */
}
.sr-annotations {
    position: absolute;
    width: 100%;
    bottom: -60px; /* Move annotations below image */
    display: flex;
    justify-content: space-between;
    padding: 0 10%;
}

.support-label, .resistance-label {
    background: rgba(0,0,0,0.7);
    padding: 8px 15px;
    border-radius: 5px;
    font-size: 0.9rem;
}

.support-label {
    color: #4CAF50;
    border: 1px solid #4CAF50;
}

.resistance-label {
    color: #F44336;
    border: 1px solid #F44336;
}
.sr-explanation {
    margin-top: 40px; /* Add space between image and text */
    padding: 20px;
    background: rgba(255,215,0,0.05);
    border-left: 3px solid var(--accent);
}

/* Trend Analysis */
.trend-analysis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

/* Indicator Styling */
.indicator-example {
    margin: 3rem 0;
}

.indicator-caption {
    margin-top: 1rem;
    padding-left: 1rem;
    border-left: 3px solid var(--accent);
}

@media (max-width: 768px) {
    .mt5-chart {
        border-radius: 4px;
    }
    
    .sr-annotations {
        margin-top: -30px;
        font-size: 0.9rem;
    }
}
/* Indicator Details Styling */
.indicator-details {
    margin-top: 1.5rem;
    padding: 1.5rem;
    background: rgba(255,215,0,0.05);
    border-radius: 8px;
}

.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 1.5rem 0;
}

.tip-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
    margin-top: 1rem;
}

.tip-card {
    padding: 1rem;
    background: rgba(10,25,47,0.8);
    border-radius: 8px;
    text-align: center;
}
/* Economic Indicators Grid */
.indicator-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.indicator-card {
    padding: 1.5rem;
    background: rgba(255,215,0,0.05);
    border-radius: 8px;
    text-align: center;
}

.econ-icon {
    width: 60px;
    height: 60px;
    margin-bottom: 1rem;
}

/* Central Bank Styles */
.central-bank-guide {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.bank-card {
    padding: 1.5rem;
    border-radius: 8px;
    background: rgba(10,25,47,0.8);
}

.bank-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 1rem;
}

/* News Timeline */
.news-timeline {
    display: grid;
    gap: 1.5rem;
    margin: 2rem 0;
}

.event-card {
    padding: 1rem;
    border-left: 3px solid var(--accent);
    background: rgba(255,215,0,0.05);
}

.event-date {
    color: var(--accent);
    font-weight: bold;
}
/* Risk-Reward Visual */
.rr-visual {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    margin: 2rem 0;
}

.money {
    padding: 1rem;
    border-radius: 8px;
    color: white;
    font-weight: bold;
}

.risk { background: #F44336; }
.reward { background: #4CAF50; }

/* Probability Table */
.probability-table {
    background: var(--primary-dark);
    border-radius: 8px;
    overflow: hidden;
    margin: 1rem 0;
}

.table-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 1rem;
    border-bottom: 1px solid rgba(255,215,0,0.1);
}

.table-row.result {
    background: rgba(76,175,80,0.1);
}

/* Leverage Comparison */
.leverage-comparison {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.leverage-card {
    padding: 1.5rem;
    border-radius: 8px;
    position: relative;
}

.dangerous { background: rgba(244,67,54,0.1); }
.safe { background: rgba(76,175,80,0.1); }

.warning-label, .safe-label {
    position: absolute;
    top: -10px;
    right: -10px;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.8rem;
}

.warning-label { background: #F44336; }
.safe-label { background: #4CAF50; }
/* Psychology Scale */
.psychology-scale {
    display: flex;
    justify-content: center;
    gap: 3rem;
    margin: 2rem 0;
}

.emotion-side, .logic-side {
    padding: 1.5rem;
    border-radius: 8px;
    width: 200px;
    text-align: center;
}

.emotion-side { background: rgba(244,67,54,0.1); }
.logic-side { background: rgba(76,175,80,0.1); }

/* Trap Grid */
.trap-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
}

.trap-card {
    padding: 1.5rem;
    border-radius: 8px;
    background: rgba(255,215,0,0.05);
}

.solution {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--primary-dark);
    border-radius: 8px;
}

/* Routine Guide */
.routine-guide {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.routine-step {
    padding: 1.5rem;
    border-left: 3px solid var(--accent);
    background: rgba(255,215,0,0.05);
}

/* Tool Grid */
.tool-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.tool-card {
    padding: 1.5rem;
    border-radius: 8px;
    background: rgba(10,25,47,0.8);
}

.journal-example {
    background: rgba(255,255,255,0.05);
    padding: 1rem;
    margin-top: 1rem;
    border-radius: 8px;
}
/* Password Reset Modal Fixes */
#passwordResetModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 9999; /* Higher than header z-index (1000) */
  display: none;
}

#passwordResetModal .alert-content {
  background: var(--neutral-dark);
  border: 2px solid var(--accent);
  border-radius: 8px;
  width: 90%;
  max-width: 400px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 2rem;
  animation: alertFadeIn 0.3s ease-out;
}

#passwordResetModal h3 {
  color: var(--accent);
  margin-bottom: 1.5rem;
  font-family: 'Roboto Condensed', sans-serif;
}

#submitResetEmail {
  margin-top: 1rem;
  width: 100%;
}
/* Add to your existing form styles */
#passwordResetModal .form-group {
  position: relative;
  margin-bottom: 1.5rem;
}

#passwordResetModal .form-group input {
  width: 100%;
  padding: 1rem 1rem 1rem 3rem;
  background: var(--primary-dark);
  border: 2px solid rgba(255, 215, 0, 0.1);
  border-radius: 8px;
  color: var(--neutral-light);
  font-size: 1rem;
  transition: all 0.3s ease;
}

#passwordResetModal .form-group input:focus {
  border-color: var(--accent);
  outline: none;
  box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.1);
}

#passwordResetModal .input-icon {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--accent);
  opacity: 0.7;
}

/* Image Styling */
.chart-diagram,
.chart-pattern,
.fib-example,
.quiz-image {
    width: 100%;
    max-width: 800px;
    height: auto;
    display: block;
    margin: 1.5rem auto;
    border: 2px solid rgba(255, 215, 0, 0.2);
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.chart-diagram {
    background: rgba(255,215,0,0.05);
    padding: 20px;
}

.chart-pattern {
    max-width: 600px;
    margin-top: 1rem;
}

.fib-example {
    border-color: rgba(156, 39, 176, 0.3);
}

.quiz-image {
    border-style: dashed;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.quiz-image:hover {
    transform: scale(1.02);
}

@media (max-width: 768px) {
    .chart-diagram,
    .chart-pattern {
        border-radius: 8px;
        padding: 15px;
    }
}

/* Remove existing image placeholders */
.image-placeholder {
    display: none;
}

/* Enhance existing structures */
.candle-structure {
    display: grid;
    gap: 2rem;
    grid-template-columns: 1fr 1fr;
    align-items: center;
}

.formation-example {
    margin: 2rem 0;
    padding: 1.5rem;
    background: rgba(255,215,0,0.03);
    border-radius: 8px;
}

.fibonacci-demo {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    margin-top: 1.5rem;
}

/* Candlestick Pattern Additions */
.pattern-category {
    margin: 2rem 0;
    padding: 1.5rem;
    background: rgba(255,215,0,0.05);
    border-radius: 8px;
}

.pattern-example {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 2rem;
    margin: 1.5rem 0;
    align-items: center;
}

.pattern-visual {
    position: relative;
    max-width: 200px;
}

.pattern-label {
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--accent);
    font-weight: bold;
}

.pattern-rules li {
    margin: 0.8rem 0;
    padding-left: 1.5rem;
    position: relative;
}

.pattern-rules li::before {
    content: "✓";
    color: var(--accent);
    position: absolute;
    left: 0;
}

.candle-sequence {
    display: flex;
    gap: 0.5rem;
    margin: 1rem 0;
}

.candle {
    width: 40px;
    height: 60px;
    position: relative;
    background: #333;
}

.candle::after {
    content: "";
    position: absolute;
    width: 2px;
    height: 100%;
    background: #666;
    left: 50%;
    transform: translateX(-50%);
}

.candle.red { background: #e74c3c }
.candle.green { background: #2ecc71 }
.candle.hammer { background: #2ecc71; height: 80px }

.learn-section {
    background-color: rgba(255, 215, 0, 0.05);
    padding: 4rem 2rem;
    margin: 2rem 0;
    text-align: center;
}

.learn-list {
    list-style: none;
    max-width: 800px;
    margin: 2rem auto 0;
    padding: 0;
    display: grid;
    gap: 1.2rem;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.learn-list li {
    font-size: 1.1rem;
    color: var(--neutral-light);
    display: flex;
    align-items: center;
    gap: 0.7rem;
    justify-content: center;
}

.learn-list i {
    color: var(--accent);
    font-size: 1.2rem;
}

.why-noldy {
    background-color: var(--neutral-dark);
    padding: 4rem 2rem;
    text-align: center;
}

.why-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 2rem auto 0;
}

.why-card {
    background: rgba(255, 215, 0, 0.05);
    border-radius: 10px;
    padding: 2rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(255, 215, 0, 0.1);
}

.why-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.3);
}

.why-card i {
    font-size: 2rem;
    color: var(--accent);
    margin-bottom: 1rem;
}

.why-card h3 {
    font-size: 1.2rem;
    color: var(--accent);
    margin-bottom: 0.8rem;
    font-family: 'Roboto Condensed', sans-serif;
}

.why-card p {
    font-size: 1rem;
    color: var(--neutral-light);
    opacity: 0.9;
    line-height: 1.6;
}
.cta-banner {
    background: linear-gradient(90deg, rgba(255,215,0,0.05), rgba(10,25,47,1));
    padding: 4rem 2rem;
    text-align: center;
    border-top: 2px solid rgba(255,215,0,0.1);
    border-bottom: 2px solid rgba(255,215,0,0.1);
}

.cta-banner h2 {
    font-size: 2rem;
    color: var(--accent);
    margin-bottom: 1rem;
    font-family: 'Roboto Condensed', sans-serif;
}

.cta-banner p {
    color: var(--neutral-light);
    opacity: 0.9;
    font-size: 1.2rem;
    max-width: 800px;
    margin: 0 auto 2rem;
    line-height: 1.6;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.cta-buttons .btn {
    padding: 0.9rem 2rem;
    font-size: 1rem;
}
.hero-heading {
    font-size: 2.5rem;
    font-family: 'Roboto Condensed', sans-serif;
    color: var(--accent);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.6rem;
    align-items: center;
    text-align: center;
    line-height: 1.4;
}

.hero-heading .dot {
    font-size: 1.8rem;
    color: var(--accent);
    opacity: 0.6;
    transform: translateY(-2px);
}
/* Styling for conditions/points layout in Modules 2, 3 & 4 */
.conditions-container {
    display: flex;
    flex-wrap: wrap; /* Allows items to wrap to the next line on smaller screens */
    gap: 20px; /* Space between the condition items */
    margin-top: 15px;
    list-style: none; /* Remove default ul/ol styling if applied elsewhere */
    padding: 0; /* Remove default ul/ol padding */
}

.condition-group {
    flex: 1 1 calc(50% - 10px); /* Attempts to make two columns, accounting for gap */
    min-width: 280px; /* Minimum width before wrapping to single column */
    background-color: var(--card-background-color); /* Use your theme's card background */
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    color: var(--text-color); /* Use your theme's text color */
}

.condition-group.full-width {
    flex: 1 1 100%; /* Makes this item take full width */
}

.condition-group p {
    margin: 0; /* Remove default paragraph margins within these groups */
    line-height: 1.6;
}

.condition-group .fas {
    margin-right: 8px; /* Space between icon and text */
    color: var(--accent-color); /* Your theme's accent color for icons */
}

/* Adjustments for smaller screens */
@media (max-width: 768px) {
    .condition-group {
        flex: 1 1 100%; /* Stack all conditions on smaller screens */
    }
}

/* Specific styling for the Premium/Discount zones, using .learn-list as a base */
/* This is a new rule for image_ed1d42.png section */
.premium-discount-list {
    display: flex;
    flex-direction: column; /* Stack items by default */
    gap: 10px; /* Space between items */
    list-style: none;
    padding: 0;
    margin-top: 15px;
}

.premium-discount-list li {
    background-color: var(--card-background-color);
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    display: flex;
    align-items: flex-start; /* Align icon and text at the top */
}

.premium-discount-list li .fas {
    margin-right: 10px;
    color: var(--accent-color);
    font-size: 1.2em; /* Slightly larger icon */
    flex-shrink: 0; /* Prevent icon from shrinking */
    padding-top: 2px; /* Align icon better with text */
}

.premium-discount-list li p {
    margin: 0;
    line-height: 1.6;
}

/* For larger screens, attempt a two-column layout for some parts */
@media (min-width: 769px) {
    .premium-discount-list {
        flex-direction: row; /* Layout items in a row */
        flex-wrap: wrap; /* Allow wrapping */
        justify-content: space-between; /* Distribute items with space */
    }
    .premium-discount-list li {
        flex: 1 1 calc(50% - 10px); /* Two columns */
        max-width: calc(50% - 10px); /* Ensure max width for two columns */
    }
    /* Make Equilibrium take full width or align differently */
    .premium-discount-list li:first-child { /* Target Equilibrium specifically */
        flex: 1 1 100%; /* Make it full width */
        max-width: 100%;
        text-align: center; /* Center equilibrium text */
        justify-content: center; /* Center content horizontally */
    }
}

/* Small screen adjustments for premium-discount-list */
@media (max-width: 480px) {
    .premium-discount-list li {
        padding: 10px 15px;
    }
}
/* General styling for structured content blocks */
.concept-grid,
.conditions-container {
    display: flex;
    flex-wrap: wrap; /* Allows items to wrap to the next line on smaller screens */
    gap: 20px; /* Space between the items */
    margin-top: 15px;
    list-style: none; /* Remove default ul/ol styling if applied elsewhere */
    padding: 0; /* Remove default ul/ol padding */
}

.concept-card,
.condition-group {
    flex: 1 1 calc(50% - 10px); /* Attempts to make two columns, accounting for gap */
    min-width: 280px; /* Minimum width before wrapping to single column */
    background-color: var(--card-background-color); /* Use your theme's card background */
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    color: var(--text-color); /* Use your theme's text color */
}

.condition-group.full-width {
    flex: 1 1 100%; /* Makes this item take full width */
}

.concept-card h4,
.condition-group h4 {
    margin-top: 0;
    margin-bottom: 10px;
    color: var(--heading-color); /* Use your theme's heading color */
}

.concept-card p,
.condition-group p {
    margin: 0; /* Remove default paragraph margins within these groups */
    line-height: 1.6;
}

.concept-card .fas,
.condition-group .fas {
    margin-right: 8px; /* Space between icon and text */
    color: var(--accent-color); /* Your theme's accent color for icons */
}

/* For lists within cards, like the "Example of Strong Confluence" */
.learn-list {
    list-style: none;
    padding: 0;
    margin: 10px 0;
}

.learn-list li {
    display: flex;
    align-items: flex-start; /* Align icon and text at the top */
    margin-bottom: 8px;
    line-height: 1.5;
}

.learn-list li .fas {
    margin-right: 10px;
    color: var(--accent-color);
    font-size: 1em;
    flex-shrink: 0; /* Prevent icon from shrinking */
    padding-top: 2px; /* Adjust icon vertical alignment */
}

/* Adjustments for smaller screens to ensure stacking */
@media (max-width: 768px) {
    .concept-card,
    .condition-group {
        flex: 1 1 100%; /* Stack all conditions/concepts on smaller screens */
    }
}

/* ==========================================================================
   High-Converting MQL5 Showcase & Engineering Overhaul Styles
   Sleek dark surfaces (#0b111e, #111927), gold (#ffcc00), glassmorphic design
   ========================================================================== */

/* --- Section A: Credibility Proof Bar --- */
.credibility-proof-bar {
    width: 100%;
    max-width: 1240px;
    margin: -2rem auto 3.5rem;
    padding: 0 1.5rem;
    position: relative;
    z-index: 10;
}

.proof-bar-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    background: rgba(17, 25, 39, 0.92);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 204, 0, 0.22);
    border-radius: 14px;
    padding: 1.6rem 2rem;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.45);
}

.proof-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.proof-icon {
    width: 46px;
    height: 46px;
    border-radius: 10px;
    background: rgba(255, 204, 0, 0.1);
    border: 1px solid rgba(255, 204, 0, 0.28);
    color: #ffcc00;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.proof-item:hover .proof-icon {
    transform: scale(1.08);
    background: rgba(255, 204, 0, 0.18);
    border-color: rgba(255, 204, 0, 0.45);
}

.proof-text {
    display: flex;
    flex-direction: column;
}

.proof-metric {
    font-size: 1.08rem;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 0.25rem;
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.3px;
}

.proof-desc {
    font-size: 0.85rem;
    color: rgba(248, 249, 250, 0.75);
    line-height: 1.45;
    margin: 0;
}

/* --- Common Showcase Section Header --- */
.showcase-section {
    padding: 4.5rem 1.5rem;
    max-width: 1240px;
    margin: 0 auto;
}

.section-header-wrap {
    text-align: center;
    max-width: 820px;
    margin: 0 auto 3.5rem;
}

.section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(255, 204, 0, 0.1);
    color: #ffcc00;
    border: 1px solid rgba(255, 204, 0, 0.25);
    border-radius: 50px;
    padding: 0.35rem 1.1rem;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    margin-bottom: 1rem;
}

.showcase-section .section-title {
    font-size: 2.4rem;
    color: #ffffff;
    margin-bottom: 1rem;
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.5px;
    text-align: center;
}

.section-subheading {
    font-size: 1.15rem;
    color: rgba(248, 249, 250, 0.82);
    line-height: 1.65;
    margin: 0 auto;
}

/* --- Section B: Flagship Systems Grid --- */
.flagship-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    gap: 1.75rem;
}

.flagship-card {
    background: linear-gradient(160deg, #111927 0%, #0b111e 100%);
    border: 1px solid rgba(255, 204, 0, 0.16);
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
    position: relative;
}

.flagship-card:hover {
    transform: translateY(-6px);
    border-color: rgba(255, 204, 0, 0.45);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6), 0 0 24px rgba(255, 204, 0, 0.14);
}

.card-thumb-wrap {
    position: relative;
    width: 100%;
    height: 180px;
    overflow: hidden;
    background: #080d16;
}

.card-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
    display: block;
}

.flagship-card:hover .card-thumb {
    transform: scale(1.06);
}

.card-body-content {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.card-meta-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.9rem;
}

.card-meta-row .product-badge {
    font-size: 0.78rem;
    padding: 0.25rem 0.75rem;
    background: rgba(255, 204, 0, 0.12);
    border: 1px solid rgba(255, 204, 0, 0.3);
    color: #ffcc00;
    border-radius: 20px;
    font-weight: 700;
}

.card-meta-row .price-badge {
    font-size: 0.8rem;
    font-weight: 700;
    color: #4CAF50;
    background: rgba(76, 175, 80, 0.12);
    border: 1px solid rgba(76, 175, 80, 0.35);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
}

.card-meta-row .price-badge.free-badge {
    color: #ffcc00;
    background: rgba(255, 204, 0, 0.15);
    border-color: rgba(255, 204, 0, 0.4);
}

.flagship-card-title {
    font-size: 1.35rem;
    color: #ffffff;
    margin-bottom: 0.75rem;
    font-family: 'Roboto Condensed', sans-serif;
    line-height: 1.3;
}

.flagship-bullets {
    list-style: none !important;
    padding: 0 !important;
    margin: 0.5rem 0 1.5rem !important;
    flex-grow: 1;
}

.flagship-bullets li {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    font-size: 0.88rem;
    color: rgba(248, 249, 250, 0.85);
    margin-bottom: 0.6rem;
    line-height: 1.45;
}

.flagship-bullets li i {
    color: #ffcc00;
    font-size: 0.78rem;
    margin-top: 0.28rem;
    flex-shrink: 0;
}

.flagship-card-actions {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    padding: 0 1.5rem 1.5rem;
    margin-top: auto;
}

.flagship-card-actions .btn {
    margin: 0;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.8rem 1rem;
    font-size: 0.9rem;
    text-transform: none;
    font-weight: 700;
    border-radius: 7px;
    box-sizing: border-box;
}

.btn-specs {
    background: rgba(255, 204, 0, 0.12);
    color: #ffcc00 !important;
    border: 1.5px solid rgba(255, 204, 0, 0.35);
    transition: all 0.3s ease;
}

.btn-specs:hover {
    background: #ffcc00;
    color: #0b111e !important;
    box-shadow: 0 4px 15px rgba(255, 204, 0, 0.35);
    transform: translateY(-2px);
}

.btn-wa {
    background: rgba(37, 211, 102, 0.12);
    color: #25D366 !important;
    border: 1.5px solid #25D366;
    transition: all 0.3s ease;
}

.btn-wa:hover {
    background: #25D366;
    color: #0b111e !important;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
    transform: translateY(-2px);
}

/* --- Section C: Custom Engineering & Freelance Services --- */
.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.75rem;
    margin-bottom: 3rem;
}

.service-card {
    background: linear-gradient(160deg, #111927 0%, #0b111e 100%);
    border: 1px solid rgba(255, 204, 0, 0.16);
    border-radius: 14px;
    padding: 2.2rem 1.8rem;
    display: flex;
    flex-direction: column;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
}

.service-card:hover {
    transform: translateY(-6px);
    border-color: rgba(255, 204, 0, 0.45);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6), 0 0 24px rgba(255, 204, 0, 0.14);
}

.service-card-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.4rem;
}

.service-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: rgba(255, 204, 0, 0.1);
    border: 1px solid rgba(255, 204, 0, 0.28);
    color: #ffcc00;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.45rem;
}

.service-price-pill {
    background: rgba(255, 204, 0, 0.12);
    color: #ffcc00;
    border: 1px solid rgba(255, 204, 0, 0.35);
    padding: 0.35rem 0.9rem;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.3px;
}

.service-title {
    font-size: 1.45rem;
    color: #ffffff;
    margin-bottom: 0.8rem;
    font-family: 'Roboto Condensed', sans-serif;
}

.service-desc {
    font-size: 0.96rem;
    color: rgba(248, 249, 250, 0.82);
    line-height: 1.6;
    margin-bottom: 1.4rem;
}

.service-features {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.service-features li {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    font-size: 0.88rem;
    color: rgba(248, 249, 250, 0.85);
    margin-bottom: 0.65rem;
    line-height: 1.45;
}

.service-features li i {
    color: #ffcc00;
    font-size: 0.75rem;
    margin-top: 0.28rem;
    flex-shrink: 0;
}

.service-cta-wrapper {
    text-align: center;
    margin-top: 1rem;
}

.btn-quote-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    background: #25D366;
    color: #0b111e !important;
    border: 2px solid #25D366;
    padding: 1.1rem 2.6rem;
    font-size: 1.05rem;
    font-weight: 700;
    border-radius: 8px;
    text-transform: none;
    letter-spacing: 0.4px;
    box-shadow: 0 4px 20px rgba(37, 211, 102, 0.35);
    transition: all 0.3s ease;
}

.btn-quote-cta:hover {
    background: transparent;
    color: #25D366 !important;
    box-shadow: 0 0 26px rgba(37, 211, 102, 0.5);
    transform: translateY(-3px);
}

/* --- Section D: Client Satisfaction & Engineering Standards --- */
.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.75rem;
}

.testimonial-card {
    background: linear-gradient(160deg, #111927 0%, #0b111e 100%);
    border: 1px solid rgba(255, 204, 0, 0.16);
    border-radius: 14px;
    padding: 2.2rem 1.8rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.testimonial-card:hover {
    transform: translateY(-5px);
    border-color: rgba(255, 204, 0, 0.4);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.6), 0 0 20px rgba(255, 204, 0, 0.12);
}

.testimonial-stars {
    color: #ffcc00;
    font-size: 0.95rem;
    letter-spacing: 3px;
    margin-bottom: 1.25rem;
}

.testimonial-quote {
    font-size: 1.02rem;
    line-height: 1.65;
    color: rgba(248, 249, 250, 0.92);
    font-style: italic;
    margin: 0 0 1.6rem 0;
    flex-grow: 1;
}

.testimonial-author-box {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding-top: 1.2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.author-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 204, 0, 0.12);
    border: 1px solid rgba(255, 204, 0, 0.3);
    color: #ffcc00;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.author-meta {
    display: flex;
    flex-direction: column;
}

.author-name {
    font-size: 1rem;
    font-weight: 700;
    color: #ffffff;
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.3px;
}

.author-role {
    font-size: 0.82rem;
    color: rgba(248, 249, 250, 0.72);
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.15rem;
}

.verified-check {
    color: #25D366;
    font-size: 0.8rem;
}

/* --- Section E: Final High-Conversion Action Banner --- */
.conversion-banner-section {
    padding: 2rem 1.5rem 5rem;
    max-width: 1240px;
    margin: 0 auto;
}

.conversion-banner-card {
    background: radial-gradient(circle at 85% 15%, rgba(255, 204, 0, 0.15), transparent 45%),
                linear-gradient(135deg, #111927 0%, #0b111e 100%);
    border: 1.5px solid rgba(255, 204, 0, 0.32);
    border-radius: 18px;
    padding: 4.5rem 2.5rem;
    text-align: center;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.65), 0 0 32px rgba(255, 204, 0, 0.09);
    position: relative;
    overflow: hidden;
}

.banner-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(255, 204, 0, 0.12);
    color: #ffcc00;
    border: 1px solid rgba(255, 204, 0, 0.35);
    padding: 0.4rem 1.1rem;
    border-radius: 50px;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 1.4rem;
}

.banner-title {
    font-size: 2.8rem;
    color: #ffffff;
    margin-bottom: 1rem;
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0.5px;
}

.banner-subtitle {
    font-size: 1.22rem;
    color: rgba(248, 249, 250, 0.85);
    max-width: 720px;
    margin: 0 auto 2.8rem;
    line-height: 1.7;
}

.banner-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.25rem;
}

.banner-btn-primary {
    background: #ffcc00;
    color: #0b111e !important;
    border: 2px solid #ffcc00;
    padding: 1rem 2.4rem;
    font-size: 1.05rem;
    font-weight: 700;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    text-transform: none;
    letter-spacing: 0.4px;
    box-shadow: 0 4px 18px rgba(255, 204, 0, 0.32);
    transition: all 0.3s ease;
    margin: 0;
}

.banner-btn-primary:hover {
    background: transparent;
    color: #ffcc00 !important;
    box-shadow: 0 0 24px rgba(255, 204, 0, 0.5);
    transform: translateY(-2px);
}

.banner-btn-secondary {
    background: rgba(37, 211, 102, 0.12);
    color: #25D366 !important;
    border: 2px solid #25D366;
    padding: 1rem 2.4rem;
    font-size: 1.05rem;
    font-weight: 700;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    text-transform: none;
    letter-spacing: 0.4px;
    box-shadow: 0 4px 18px rgba(37, 211, 102, 0.22);
    transition: all 0.3s ease;
    margin: 0;
}

.banner-btn-secondary:hover {
    background: #25D366;
    color: #0b111e !important;
    box-shadow: 0 0 24px rgba(37, 211, 102, 0.45);
    transform: translateY(-2px);
}

/* --- Responsive Layout for Overhauled Sections --- */
@media (max-width: 1200px) {
    .flagship-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .proof-bar-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }
    .services-grid {
        grid-template-columns: 1fr;
        max-width: 650px;
        margin-left: auto;
        margin-right: auto;
    }
    .testimonials-grid {
        grid-template-columns: 1fr;
        max-width: 650px;
        margin-left: auto;
        margin-right: auto;
    }
}

@media (max-width: 768px) {
    .credibility-proof-bar {
        margin: 1.5rem auto 2.5rem;
        padding: 0 1rem;
    }
    .proof-bar-wrapper {
        grid-template-columns: 1fr;
        padding: 1.25rem;
        gap: 1.25rem;
    }
    .showcase-section {
        padding: 3rem 1rem;
    }
    .showcase-section .section-title {
        font-size: 2rem;
    }
    .section-subheading {
        font-size: 1rem;
    }
    .flagship-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    .services-grid {
        gap: 1.5rem;
    }
    .testimonials-grid {
        gap: 1.5rem;
    }
    .conversion-banner-section {
        padding: 1rem 1rem 3.5rem;
    }
    .conversion-banner-card {
        padding: 2.5rem 1.25rem;
    }
    .banner-title {
        font-size: 1.9rem;
    }
    .banner-subtitle {
        font-size: 1.05rem;
        margin-bottom: 2rem;
    }
    .banner-actions {
        flex-direction: column;
        width: 100%;
    }
    .banner-btn-primary,
    .banner-btn-secondary {
        width: 100%;
        max-width: 320px;
    }
    .btn-quote-cta {
        width: 100%;
        max-width: 360px;
        padding: 0.95rem 1.5rem;
        font-size: 0.95rem;
    }
}

/* ==========================================================================
   In-Site Video Playback & Product Performance Stats
   ========================================================================== */

/* Video Trigger Button (Cards) */
.btn-watch-demo {
    background: rgba(255, 204, 0, 0.15) !important;
    color: #ffcc00 !important;
    border: 1.5px solid rgba(255, 204, 0, 0.4) !important;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 0.75rem 1rem !important;
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
    width: 100%;
    box-sizing: border-box;
    text-transform: none;
    margin-bottom: 0.5rem;
}

.btn-watch-demo:hover {
    background: #ffcc00 !important;
    color: #0b111e !important;
    box-shadow: 0 0 18px rgba(255, 204, 0, 0.4);
    transform: translateY(-2px);
}

.btn-mql5-card {
    background: rgba(255, 107, 107, 0.12) !important;
    color: var(--cta) !important;
    border: 1.5px solid rgba(255, 107, 107, 0.35) !important;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 0.75rem 1rem !important;
    border-radius: 6px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
    width: 100%;
    box-sizing: border-box;
    text-transform: none;
    text-decoration: none;
}

.btn-mql5-card:hover {
    background: var(--cta) !important;
    color: #ffffff !important;
    box-shadow: 0 0 16px rgba(255, 107, 107, 0.4);
    transform: translateY(-2px);
}

/* Card Stats Pills */
.card-stats-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin: 0.65rem 0 1rem;
}

.stat-pill {
    background: rgba(0, 255, 163, 0.1);
    border: 1px solid rgba(0, 255, 163, 0.25);
    color: #00FFA3;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.25rem 0.6rem;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.stat-pill.stat-dd {
    background: rgba(255, 107, 107, 0.1);
    border-color: rgba(255, 107, 107, 0.3);
    color: #ff8b8b;
}

.stat-pill.stat-time {
    background: rgba(255, 204, 0, 0.1);
    border-color: rgba(255, 204, 0, 0.3);
    color: #ffcc00;
}

/* Native Video Modal */
.video-modal {
    position: fixed;
    inset: 0;
    background: rgba(5, 7, 10, 0.88);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.video-modal.active {
    opacity: 1;
    pointer-events: auto;
}

.video-modal-dialog {
    width: 100%;
    max-width: 900px;
    background: #0B0E14;
    border: 1.5px solid rgba(255, 215, 0, 0.35);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 215, 0, 0.15);
    transform: scale(0.95);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.video-modal.active .video-modal-dialog {
    transform: scale(1);
}

.video-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.9rem 1.4rem;
    background: #141821;
    border-bottom: 1px solid rgba(255, 215, 0, 0.18);
}

.video-modal-title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-family: 'Roboto Condensed', sans-serif;
}

.video-modal-title i {
    color: #ffcc00;
}

.video-modal-close {
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.4rem;
    cursor: pointer;
    line-height: 1;
    padding: 0.3rem 0.5rem;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.video-modal-close:hover {
    color: #ffcc00;
    background: rgba(255, 255, 255, 0.08);
}

/* Product Detail Page Hero Media Container */
.product-media-container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    width: 100%;
    max-width: 520px;
}

.product-emblem-wrap {
    width: 100%;
    background: #080d16;
    border: 1.5px solid rgba(255, 215, 0, 0.25);
    border-radius: 12px;
    padding: 1.5rem 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    box-sizing: border-box;
}

.product-emblem-img {
    max-width: 100%;
    max-height: 240px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.product-video-showcase {
    width: 100%;
    max-width: 100%;
    border-radius: 12px;
    overflow: hidden;
    border: 1.5px solid rgba(255, 215, 0, 0.25);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.55), 0 0 20px rgba(255, 215, 0, 0.08);
    box-sizing: border-box;
}

.video-responsive-16-9 {
    position: relative;
    width: 100%;
    max-width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.video-responsive-16-9 iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.video-caption-bar {
    background: #101622;
    padding: 0.75rem 1rem;
    font-size: 0.86rem;
    color: rgba(248, 249, 250, 0.88);
    display: flex;
    align-items: center;
    gap: 0.55rem;
    border-top: 1px solid rgba(255, 215, 0, 0.12);
    box-sizing: border-box;
}

.video-caption-bar i {
    color: var(--accent);
    flex-shrink: 0;
}

/* Verified Stats Bar / Grid in Product Detail */
.product-stats-banner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin: 1.5rem 0;
    padding: 1.25rem;
    background: linear-gradient(135deg, rgba(17, 25, 39, 0.85) 0%, rgba(11, 17, 30, 0.95) 100%);
    border: 1px solid rgba(255, 215, 0, 0.25);
    border-radius: 10px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
}

.stat-item {
    text-align: center;
    padding: 0.5rem;
    border-right: 1px solid rgba(255, 215, 0, 0.12);
}

.stat-item:last-child {
    border-right: none;
}

.stat-value {
    font-size: 1.5rem;
    font-weight: 800;
    color: #00FFA3;
    font-family: 'Roboto Condensed', sans-serif;
    line-height: 1.2;
    margin-bottom: 0.25rem;
}

.stat-value.gold {
    color: #ffcc00;
}

.stat-value.warn {
    color: #FF6B6B;
}

.stat-label {
    font-size: 0.78rem;
    color: rgba(248, 249, 250, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.8px;
    font-weight: 600;
}

@media (max-width: 768px) {
    .product-stats-banner {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }
    .stat-item:nth-child(2) {
        border-right: none;
    }
}