/* ------------------- */
/* BASE & RESET STYLES */
/* ------------------- */
:root {
    --primary-color: #4f46e5;
    --primary-light: #e0e7ff;
    --primary-dark: #312e81;
    --secondary-color: #7c3aed;
    --pink-accent: #ec4899;
    --green-accent: #22c55e;
    --yellow-accent: #facc15;
    --red-accent: #ef4444;
    --dark-text: #1a202c;
    --medium-text: #4a5568;
    --light-text: #6b7280;
    --light-bg: #f7f8ff; 
    --white-bg: #fff;
    --dark-bg: #1a202c;
    --pain-bg: #fafbfc; 
    --font-sans: 'Inter', sans-serif;
    --content-width: 64rem;
    --primary-darker: #1e293b; 
}

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-size: 112.5%;
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-sans);
    background-color: var(--white-bg);
    color: var(--medium-text);
    margin: 0;
    line-height: 1.6;
}

h1, h2, h3 {
    font-family: var(--font-sans);
    color: var(--dark-text);
    font-weight: 800;
    line-height: 1.2;
}

h2.section-title {
    color: var(--primary-darker);
}

/* ----------------- */
/* UTILITY CLASSES   */
/* ----------------- */
.section-padding { padding: 5rem 1.5rem; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-dark { color: var(--dark-text); }
.text-gray { color: var(--medium-text); }
.text-white { color: var(--white-bg); }
.line-through { text-decoration: line-through; }
.font-bold { font-weight: 700; }
.pt-0 { padding-top: 0; }
.mt-1rem { margin-top: 1rem; }
.mt-1-5rem { margin-top: 1.5rem; }
.mt-2rem { margin-top: 2rem; }
.mb-1-5rem { margin-bottom: 1.5rem; }
.mb-2rem { margin-bottom: 2rem; }
.ml-half-rem { margin-left: 0.5rem; }
.full-width { width: 100%; }
.g-2rem { gap: 2rem; }
.icon-green { color: var(--green-accent); }
.icon-red { color: var(--red-accent); }
.icon-yellow { color: var(--yellow-accent); }
.icon-pink { color: var(--pink-accent); margin-right: 0.75rem; }

.text-highlight-primary { color: var(--primary-color); font-weight: 700; }
.text-highlight-secondary { color: var(--secondary-color); font-weight: 700; }
.text-highlight-pink { color: var(--pink-accent); font-weight: 700; }

/* Added for screen readers */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}


/* ---------------------- */
/* Logo                   */
/* ---------------------- */

/* MODIFICATION: Added new logo styles */
.logo-container {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem; /* 12px */
    font-size: 1.25rem; /* 20px - MODIFIED */
    font-weight: 900;
    color: var(--dark-text);
    text-decoration: none;
}

.logo-wrapper {
    width: 2.25rem; /* 36px - MODIFIED */
    height: 2.25rem; /* 36px - MODIFIED */
    background-color: #ffffff;
    border-radius: 0.5rem; /* 8px */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem; /* 4px */
    box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    flex-shrink: 0;
}

.logo-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}



/* ---------------------- */
/* MAIN SITE LAYOUT       */
/* ---------------------- */
.content-wrapper {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: var(--content-width);
}

.main-header {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 50;
    background-color: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--primary-light);
    padding: 0 1.5rem;
}

.header-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0; 
}

.header-title {
    font-weight: 900;
    font-size: 1.5rem;
    color: var(--dark-text);
}

.header-nav {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.nav-link {
    font-weight: 600;
    color: var(--medium-text);
    transition: color 0.2s ease;
    text-decoration: none;
}

.nav-link:hover {
    color: var(--primary-color);
}

.mobile-nav-toggle {
    display: none;
}

.main-footer {
    padding: 2rem 1.5rem;
    font-size: 0.9rem;
    color: var(--light-text);
    border-top: 1px solid var(--primary-light);
    text-align: center;
    background-color: var(--light-bg);
}

/* MODIFICATION: Removed underline from footer links */
.footer-link, .footer-email-link {
    text-decoration: none;
    color: var(--primary-color);
    font-weight: 600;
}

.footer-link:hover, .footer-email-link:hover {
    text-decoration: none;
}

.section-title { font-size: 2.5rem; margin-bottom: 1rem; text-align: center; }
.section-subtitle-alt { font-size: 1.25rem; margin-bottom: 2rem; color: var(--light-text); text-transform: uppercase; letter-spacing: 0.05em; text-align: center; }
.section-description { font-size: 1.125rem; max-width: 48rem; margin-left: auto; margin-right: auto; text-align: center; }

.problem-solution-grid, .success-stories-grid, .curriculum-grid, .faq-grid, .four-pillars-grid, .checklist-grid, .trust-grid, .enrollment-grid { display: grid; gap: 1.5rem; width: 100%; margin-top: 3rem; }
.problem-solution-grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.success-stories-grid { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
.curriculum-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
#system .faq-grid { grid-template-columns: 1fr; gap: 1.5rem; }
#faq .faq-grid { grid-template-columns: 1fr; gap: 1.5rem; }
.four-pillars-grid { grid-template-columns: repeat(2, 1fr); }
.checklist-grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.trust-grid { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); align-items: center; }
#enroll .enrollment-grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }

.reveal-on-scroll { opacity: 0; transform: translateY(30px); transition: opacity 0.8s ease-out, transform 0.8s ease-out; }
.reveal-on-scroll.is-visible { opacity: 1; transform: translateY(0); }

/* -------------------------- */
/* FIXED & OVERLAY COMPONENTS */
/* -------------------------- */
#progress-bar-container { position: fixed; top: 0; left: 0; width: 100%; height: 8px; z-index: 100; }
#progress-bar { height: 100%; width: 0%; background-color: var(--primary-color); transition: width 0.1s ease-out; }
.sticky-enroll-bar { position: fixed; top: 0; left: 0; width: 100%; background-color: var(--dark-bg); color: white; z-index: 150; padding: 1rem; display: none; align-items: center; justify-content: center; text-align: center; box-shadow: 0 4px 6px rgba(0,0,0,0.1); animation: slideDown 0.5s ease-out; }
.sticky-enroll-bar .enroll-button-sticky { background-color: var(--primary-color); color: white; text-decoration: none;padding: 0.75rem 1.5rem; border-radius: 9999px; text-decoration: none; font-weight: 700; margin-left: 1.5rem; flex-shrink: 0; }
@keyframes slideDown { from { transform: translateY(-100%); } to { transform: translateY(0); } }
.modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(26, 32, 44, 0.7); z-index: 200; display: none; align-items: center; justify-content: center; backdrop-filter: blur(5px); }
.modal-content { background: var(--white-bg); padding: 2.5rem; border-radius: 0.75rem; text-align: center; max-width: 500px; position: relative; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5); margin: 1.5rem; }
.close-button { position: absolute; top: 1rem; right: 1rem; font-size: 1.5rem; cursor: pointer; color: #9ca3af; }
.form-input { width: 100%; padding: 0.75rem 1rem; font-size: 1rem; border-radius: 0.375rem; border: 1px solid #ccc; margin-bottom: 1rem; }

#social-proof-popup { 
    position: fixed; 
    bottom: 20px; 
    left: 20px; 
    background-color: var(--white-bg); 
    color: var(--dark-text); 
    padding: 0.6rem 0.85rem;
    border-radius: 0.5rem; 
    box-shadow: 0 10px 20px rgba(0,0,0,0.15); 
    z-index: 250; 
    display: none; 
    font-size: 0.85rem; 
    border-left: 5px solid var(--primary-color); 
}
#social-proof-popup.show { display: block; animation: fadeIn 0.5s ease-out, fadeOut 0.5s ease-in 4.5s forwards; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeOut { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(20px); } }


/* -------------------------- */
/* SECTION-SPECIFIC STYLES    */
/* -------------------------- */
.hero-content { text-align: center; padding-bottom: 3rem; }
.hero-title { font-size: 3.25rem; } 
.hero-subtitle { font-size: 1.25rem; margin: 1.5rem auto; }
.hero-cta-button, .enrollment-cta-button { display: inline-block; background-color: var(--primary-color); color: var(--white-bg); font-weight: 700; padding: 1rem 2rem; border-radius: 9999px; text-decoration: none; border: none; cursor: pointer; font-size: 1rem; transition: transform 0.2s ease, background-color 0.2s ease; }
.enroll-button-nav { background-color: var(--primary-color); color: var(--white-bg); text-decoration: none; font-weight: 700; padding: 0.75rem 1.5rem; border-radius: 9999px; transition: transform 0.2s ease, background-color 0.2s ease; }
.hero-cta-button:hover, .enroll-button-nav:hover, .enrollment-cta-button:hover { transform: translateY(-3px); background-color: var(--primary-dark); }
.hero-small-text { margin-top: 1rem; font-size: 0.9rem; color: var(--light-text); }

.as-seen-in-section { padding: 0 1.5rem; }
.as-seen-in-section .section-subtitle-alt { margin-bottom: 1.5rem; }
.trust-logo-image { 
    opacity: 0.7; 
    transition: opacity 0.2s ease; 
    margin: 0 auto;
    max-height: 50px;
    width: auto;
}
.trust-logo-image:hover { opacity: 1; }

.full-bleed-bg, #results, #faq, .guarantee-section, .who-is-this-for-section { background-color: var(--light-bg); }
.final-cta-section { text-align: center; }
.problem-section { background-color: var(--pain-bg); }

.quiz-container { text-align: center; }
.quiz-options { display: flex; justify-content: center; gap: 1.5rem; margin-top: 2rem; flex-wrap: wrap; }
.quiz-option { 
    background-color: var(--white-bg); 
    border: 3px solid var(--primary-light); 
    border-radius: 0.5rem; 
    padding: 1.5rem 2rem; 
    font-weight: 600; 
    color: var(--medium-text); 
    cursor: pointer; 
    transition: all 0.2s ease; 
}
.quiz-option:hover { transform: translateY(-5px); border-color: var(--primary-color); box-shadow: 0 10px 15px -3px rgba(0,0,0,0.07); }
#quiz-results-container { max-width: 48rem; margin-left: auto; margin-right: auto; }
.quiz-result { display: none; margin-top: 2.5rem; padding: 2rem; background-color: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 0.75rem; text-align: left; }
.quiz-result h3 { color: #166534; margin-top: 0; }
.quiz-result p { color: #15803d; }
.quiz-result .cta-link { font-weight: 700; color: #166534; text-decoration: underline; }

.checklist-item { background-color: var(--white-bg); padding: 1.5rem; border-radius: 0.5rem; display: flex; align-items: center; box-shadow: 0 4px 10px -2px rgba(0,0,0,0.05); }
.checklist-item i { color: var(--primary-color); font-size: 1.5rem; margin-right: 1rem; }
.checklist-item p { font-weight: 600; color: var(--medium-text); margin: 0; }

.about-me-content { display: flex; gap: 2rem; align-items: flex-start; text-align: left; flex-wrap: wrap; justify-content: center;}
.inner-monologue-container { flex-direction: column; }
.inner-monologue { font-size: 1.1rem; color: var(--medium-text); border-left: 3px solid var(--secondary-color); padding-left: 1.5rem; margin-bottom: 1.5rem; }
.about-me-image-container { flex-shrink: 0; margin: 0 auto; }
.about-me-image { border-radius: 50%; width: 200px; height: 200px; object-fit: cover; }
.about-me-text { flex: 1; min-width: 300px; }
.about-me-greeting { font-size: 1.5rem; margin-top: 0; }
.about-me-paragraph { margin-bottom: 1rem; }

.curriculum-card { text-align: left; background-color: var(--white-bg); padding: 2rem; border-radius: 0.75rem; box-shadow: 0 4px 10px rgba(0,0,0,0.05); border-left: 4px solid; }
.curriculum-card.symptom-1 { border-left-color: var(--pink-accent); }
.curriculum-card.symptom-2 { border-left-color: var(--secondary-color); }
.curriculum-card.symptom-3 { border-left-color: var(--yellow-accent); }
.curriculum-title { font-size: 1.25rem; display: flex; align-items: center; }

.problem-card, .solution-card { background-color: var(--white-bg); padding: 2rem; border-radius: 0.75rem; box-shadow: 0 4px 10px rgba(0,0,0,0.05); text-align: left; display: flex; flex-direction: column; }
.solution-card { border: 2px solid var(--primary-color); }
.card-title { font-size: 1.5rem; }
.card-list { list-style: none; padding-left: 0; font-size: 1rem; margin-top: 1.5rem; }
.card-list li { margin-bottom: 1rem; }
.card-list-subtext { font-size: 0.9em; color: var(--light-text); }

.who-is-for-card { text-align: left; display: flex; align-items: flex-start; gap: 1.5rem; }
.who-is-for-icon { font-size: 2rem; }
.four-pillars-grid .who-is-for-card:nth-child(1) .who-is-for-icon { color: var(--primary-color); }
.four-pillars-grid .who-is-for-card:nth-child(2) .who-is-for-icon { color: var(--secondary-color); }
.four-pillars-grid .who-is-for-card:nth-child(3) .who-is-for-icon { color: var(--pink-accent); }
.four-pillars-grid .who-is-for-card:nth-child(4) .who-is-for-icon { color: var(--green-accent); }
.who-is-for-title { font-size: 1.25rem; margin-top: 0; }
.who-is-for-description { margin-bottom: 0; }

#system .faq-item { padding: 1.5rem; background-color: var(--white-bg); border-radius: 0.75rem; box-shadow: 0 4px 15px rgba(0,0,0,0.08); transition: transform 0.3s ease, box-shadow 0.3s ease; text-align: left; }
#system .faq-item:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.12); }
.week-item .faq-question { display: flex; align-items: center; }
.week-item .faq-question i { margin-right: 0.75rem; }
.faq-question { font-size: 1.125rem; margin: 0; padding: 0 0 1rem 0; font-weight: 700; }
.faq-answer { margin: 0; }
#faq .faq-item { padding: 0; border-radius: 0.75rem; box-shadow: 0 4px 15px rgba(0,0,0,0.08); transition: transform 0.3s ease, box-shadow 0.3s ease; text-align: left; overflow: hidden; background-color: var(--white-bg); }
#faq .faq-item:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.12); }
#faq .faq-question { font-size: 1.125rem; margin: 0; padding: 1.5rem; background-color: var(--white-bg); border-bottom: 1px solid var(--primary-light); color: var(--primary-darker); font-weight: 700; position: relative; padding-left: 3.5rem; }
#faq .faq-question::before { content: '?'; font-family: var(--font-sans); font-weight: 900; position: absolute; left: 1.5rem; top: 50%; transform: translateY(-50%); color: var(--primary-color); }
#faq .faq-answer { padding: 1.5rem; margin: 0; }

.future-pacing-text { font-size: 1.25rem; line-height: 1.7; text-align: left; }
.case-study-card { background-color: var(--white-bg); padding: 2rem; border-radius: 0.75rem; border-left-width: 5px; border-left-style: solid; text-align: left; }
.case-study-purple-border { border-left-color: var(--secondary-color); }
.case-study-green-border { border-left-color: var(--green-accent); }
.case-study-blue-border { border-left-color: #3b82f6; }
.case-study-card-header { display: flex; align-items: center; margin-bottom: 1rem; }
.testimonial-photo { border-radius: 50%; margin-right: 1rem; width: 80px; height: 80px; }
.case-study-title { margin: 0; font-size: 1.25rem; }
.case-study-quote { font-style: italic; }

.proof-section .faq-item { text-align: center; }
.ledger-number { font-size: 2.5rem; font-weight: 800; color: var(--primary-color); margin-bottom: 0.5rem; }
.ledger-label { font-weight: 600; }

.value-stack-container { background-color: var(--white-bg); border: 1px solid var(--primary-light); border-radius: 0.75rem; box-shadow: 0 10px 25px -5px rgba(0,0,0,0.05); margin: 3rem auto 0; }
.value-stack-header { padding: 1.5rem 2rem; background-color: var(--primary-color); color: white; border-top-left-radius: 0.75rem; border-top-right-radius: 0.75rem; }
.value-stack-title { margin:0; font-size: 1.5rem; color: var(--white-bg); }
.value-stack-item { display: flex; justify-content: space-between; align-items: center; padding: 1.25rem 2rem; border-bottom: 1px solid var(--primary-light); }
.value-stack-item:last-child { border-bottom: none; }
.value-stack-item p { margin: 0; color: var(--medium-text); }
.value-stack-item p i { color: var(--green-accent); margin-right: 1rem; }
.value-stack-item .value { font-weight: 600; color: var(--dark-text); background-color: #f0fdf4; padding: 0.25rem 0.5rem; border-radius: 0.25rem; }
.value-stack-total { background-color: var(--primary-light); padding: 1.5rem 2rem; border-bottom-left-radius: 0.75rem; border-bottom-right-radius: 0.75rem; text-align: center; }
.value-stack-total h3 { margin: 0 0 0.5rem 0; font-size: 1.5rem; color: var(--primary-dark); }
.value-stack-total .price-highlight { color: var(--primary-color); font-weight: 800; }
.comparison-table { width: 100%; border-collapse: collapse; background-color: var(--white-bg); box-shadow: 0 4px 10px -2px rgba(0,0,0,0.05); border-radius: 0.75rem; overflow: hidden; }
.comparison-table th, .comparison-table td { padding: 1rem 1.25rem; text-align: center; border-bottom: 1px solid var(--primary-light); }
.comparison-table th { background-color: #eef2ff; color: var(--primary-dark); font-size: 1.1rem; }
.comparison-table td:first-child { text-align: left; font-weight: 600; color: var(--medium-text); }
.comparison-table .highlight-col { background-color: #f0fdf4; }
.comparison-table .highlight-col strong { color: #166534; }
.comparison-table .icon-yes { color: var(--green-accent); font-size: 1.5rem; }
.comparison-table .icon-no { color: var(--red-accent); font-size: 1.5rem; }

.bonus-stack-container { border: 2px dashed var(--primary-color); border-radius: 0.75rem; padding: 2rem; background-color: var(--white-bg); }
.bonus-title { color: var(--primary-color); }
.bonus-stack-item { background-color: transparent; padding: 1rem 0; margin-top: 1rem; display: flex; align-items: center; }
.bonus-stack-item i { color: #f59e0b; margin-right: 1rem; font-size: 1.25rem; }
.bonus-stack-item-text .title { font-weight: 700; color: var(--dark-text); }
.bonus-stack-item-text .value { font-weight: 500; color: var(--primary-color); }

.enrollment-card { text-align: left; background-color: var(--white-bg); padding: 2rem; border-radius: 0.75rem; border: 1px solid var(--primary-light); }
.enrollment-card.popular { border: 2px solid var(--primary-color); position: relative; transform: scale(1.05); box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1); }
.popular-banner { position: absolute; top: -1rem; left: 50%; transform: translateX(-50%); background-color: var(--pink-accent); color: var(--white-bg); padding: 0.25rem 1rem; border-radius: 9999px; font-size: 0.875rem; font-weight: 700; }
.enrollment-price { font-size: 3rem; font-weight: 800; margin: 0; }
.enrollment-original-price { margin-top: 0; }
.price-reframe { font-size: 0.9rem; color: var(--light-text); margin-top: 0.5rem; }
.enrollment-cta-button.cta-alt { background: var(--white-bg); color: var(--primary-color); border: 2px solid var(--primary-color); }
.enrollment-cta-button.cta-alt:hover { background-color: var(--light-bg); }
.enrollment-scarcity-container { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin-top: 1.5rem; gap: 0.5rem 1rem; text-align: center; }
#countdown-container { display: flex; align-items: center; font-weight: 700; }
#countdown-timer { font-weight: 700; color: var(--primary-color); background-color: var(--primary-light); padding: 0.25rem 0.75rem; border-radius: 9999px; margin-left: 0.5rem; }
.final-clarity-cta { margin: 4rem auto 0; text-align: center; padding: 2rem; border: 1px solid var(--primary-light); border-radius: 0.75rem; }

.guarantee-icon { font-size: 6rem; margin-bottom: 1rem; text-align: center; }
.guarantee-text-highlight { background-color: var(--white-bg); color: var(--primary-dark); padding: 2rem; border-radius: 0.75rem; font-weight: 600; text-align: center; border: 1px solid var(--primary-light); }
.guarantee-final-text { font-weight: 700; margin-top: 1.5rem; }
.final-manifesto { background-color: var(--dark-bg); color: #f7fafc; }
.final-manifesto .section-title { color: var(--white-bg); }
.manifesto-container { text-align: center; }
.manifesto-text { color: #cbd5e0; font-size: 1.25rem; text-align: center; margin-bottom: 1.5rem; }

/* --------------------------------- */
/* Media Queries for Responsiveness  */
/* --------------------------------- */

@media (max-width: 768px) {
    .section-padding { padding: 3rem 1.5rem; }
    .section-title { font-size: 2rem; }
    .hero-title { font-size: 2.5rem; }
    html { font-size: 100%; }

    /* MODIFICATION: Made mobile nav menu narrower */
    .header-nav {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        flex-direction: column;
        padding: min(20vh, 10rem) 2rem;
        gap: 2rem;
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: blur(1rem);
        width: min(75vw, 300px); /* Adjust width to fit content */
        transform: translateX(100%);
        transition: transform 350ms ease-out;
        z-index: 100;
        text-align: center;
    }

    .header-nav[data-visible="true"] {
        transform: translateX(0%);
    }

    .mobile-nav-toggle {
        display: block;
        position: absolute;
        z-index: 200;
        right: 1.5rem;
        top: 50%;
        transform: translateY(-50%);
        background: transparent;
        border: 0;
        cursor: pointer;
        width: 1.5rem;
        height: 1.5rem;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgb(79, 70, 229)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: center;
        transition: background-image 0.3s ease;
    }

    .mobile-nav-toggle[aria-expanded="true"] {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgb(79, 70, 229)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M6 6l18 18M24 6L6 24'/%3e%3c/svg%3e");
    }
    
    .nav-link { font-size: 1.25rem; color: var(--dark-text); }
    .enroll-button-nav { padding: 1rem 2rem; font-size: 1.1rem; }
    
    .four-pillars-grid,
    .curriculum-grid, 
    .success-stories-grid { 
        grid-template-columns: 1fr; 
    }

    .enrollment-card.popular { transform: scale(1); box-shadow: 0 4px 10px rgba(0,0,0,0.05); } 
    .comparison-section .content-wrapper { overflow-x: auto; }
    .comparison-table { min-width: 600px; }

    .about-me-section .about-me-content { flex-direction: column; text-align: center; }
    .about-me-text { text-align: left; }
    .future-pacing-text { font-size: 1.1rem; }
    .manifesto-text { font-size: 1.1rem; }
    .case-study-card-header { flex-direction: column; text-align: center; }
    .testimonial-photo { margin-right: 0; margin-bottom: 1rem; }

    #social-proof-popup {
        left: 10px;
        right: 10px;
        bottom: 10px;
        width: auto;
        transform: none;
        text-align: center;
        font-size: 0.8rem;
        padding: 0.5rem 0.75rem;
    }
}

@media (max-width: 480px) {
    html { font-size: 90%; }
    .hero-title { font-size: 2.2rem; }
    .section-title { font-size: 1.8rem; }
    .quiz-options { flex-direction: column; }
    .value-stack-item { flex-direction: column; text-align: center; gap: 0.5rem; }
    .sticky-enroll-bar { flex-direction: column; gap: 1rem; padding: 1rem; }
    .sticky-enroll-bar .enroll-button-sticky { margin-left: 0; }
}