   :root {
            /* Color Variables */
            --landing_primary: #5850ec; 
            --landing_text_dark: #111827; 
            --landing_text_blue: #5850ec; 
            --landing_text_gray: #6b7280;
            --landing_bg_white: #ffffff;
            --landing_bg_tag: #f3f4f6; 
            --landing_white: #ffffff;
            --headingBg:#e0e7ff;
            /* Font Sizes */
            --landing_fs_h1: 4rem;
            --landing_fs_p: 1.25rem;
            --landing_fs_nav: 1rem;


            
            --landing_card_border: #f1f5f9;
          
            
            /* Icon Box Colors */
            --landing_icon_bg_blue: #eef2ff;
            --landing_icon_color_blue: #6366f1;
            --landing_icon_bg_red: #fff1f2;
            --landing_icon_color_red: #f43f5e;
            --landing_icon_bg_orange: #fff7ed;
            --landing_icon_color_orange: #f59e0b;
            --landing_icon_bg_green: #f0fdf4;
            --landing_icon_color_green: #22c55e;
            --landing_icon_bg_purple: #faf5ff;
            --landing_icon_color_purple: #a855f7;

            /* Font Sizes */
            --landing_fs_h2: 2.5rem;
            --landing_fs_h3: 1.25rem;
            --landing_fs_body: 1rem;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', -apple-system, sans-serif;
        }

        body {
            background-color: var(--landing_bg_white);
            color: var(--landing_text_dark);
        }
        .landing_heading{
            background: var(--headingBg);
        }
.footerCardBg{
    background: rgba(255,255,255,0.1); color: white;
}
.center-actions {
    justify-content: center;
}

.landing_btn--primary {
    background: white;
    color: var(--landing_primary);
}
.landing_stats {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-top: 2rem;
}

.landing_stats_avatar {
    width: 30px;
    border-radius: 50%;
    border: 2px solid white;
}

.landing_stats_text {
    color: white; 
}

.landing_btn--outline {
    background: rgba(255, 255, 255, 0.1);
    color: white;
    border: 1px solid white;
}
        .landing_container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 2rem;
        }

        /* Navbar */
        .landing_header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 1.5rem 0;
        }

        .landing_logo {
            display: flex;
            align-items: center;
            gap: 10px;
            font-weight: 700;
            font-size: 1.5rem;
            color: var(--landing_text_dark);
            text-decoration: none;
        }

        .landing_logo_icon {
            background: var(--landing_primary);
            color: white;
            width: 35px;
            height: 35px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 8px;
        }

        .landing_nav {
            display: flex;
            align-items: center;
            gap: 2.5rem;
        }

        .landing_nav_links {
            display: flex;
            list-style: none;
            gap: 2rem;
        }

        .landing_nav_links a {
            text-decoration: none;
            color: var(--landing_text_gray);
            font-weight: 500;
            font-size: var(--landing_fs_nav);
            transition: color 0.2s;
        }

        .landing_nav_links a:hover {
            color: var(--landing_primary);
        }

        .landing_auth {
            display: flex;
            align-items: center;
            gap: 1.5rem;
        }

        .landing_btn {
            padding: 0.75rem 1.5rem;
            border-radius: 9999px;
            font-weight: 600;
            text-decoration: none;
            transition: all 0.3s;
            cursor: pointer;
            border: none;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .landing_btn_primary {
            background-color: var(--landing_primary);
            color: white;
            box-shadow: 0 10px 15px -3px rgba(88, 80, 236, 0.3);
        }

        .landing_btn_outline {
            background: white;
            border: 1px solid #e5e7eb;
            color: var(--landing_text_dark);
        }

        .landing_menu_toggle {
            display: none;
            font-size: 1.5rem;
            cursor: pointer;
        }

        /* Hero Section */
        .landing_hero {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 4rem 0;
            gap: 4rem;
        }

        .landing_hero_content {
            flex: 1;
        }

        .landing_trusted_tag {
            display: inline-flex;
            align-items: center;
            background: var(--landing_bg_tag);
            padding: 6px 16px;
            border-radius: 999px;
            color: var(--landing_primary);
            font-size: 0.875rem;
            font-weight: 500;
            margin-bottom: 2rem;
        }

        .landing_trusted_tag::before {
            content: "";
            width: 8px;
            height: 8px;
            background: var(--landing_primary);
            border-radius: 50%;
            margin-right: 8px;
            opacity: 0.6;
        }

        .landing_hero_content h1 {
            font-size: var(--landing_fs_h1);
            line-height: 1.1;
            margin-bottom: 1.5rem;
            letter-spacing: -0.02em;
        }

        .landing_hero_content h1 span {
            color: var(--landing_text_blue);
            display: block;
        }

        .landing_hero_content p {
            font-size: var(--landing_fs_p);
            color: var(--landing_text_gray);
            margin-bottom: 2.5rem;
            max-width: 500px;
        }

        .landing_hero_actions {
            display: flex;
            gap: 1rem;
            margin-bottom: 3rem;
        }

        .landing_hero_stats {
            display: flex;
            gap: 2rem;
            color: var(--landing_text_gray);
            font-weight: 500;
        }

        .landing_stat_item {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .landing_stat_item i {
            color: var(--landing_primary);
        }

        /* Hero Image */
        .landing_hero_image {
            flex: 1;
            position: relative;
        }

        .landing_hero_image img {
            width: 100%;
            border-radius: 24px;
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
        }

        /* Mobile Adjustments */
        @media (max-width: 1024px) {
            :root { --landing_fs_h1: 3rem; }
            .landing_hero { flex-direction: column; text-align: left; padding: 2rem 0; }
            .landing_nav{
                position: absolute;
            }

            .landing_nav_links, .landing_auth { display: none; }
            .landing_menu_toggle { display: block; }
            .landing_hero_actions { flex-direction: column; }
            .landing_btn { justify-content: center; width: 100%; }
            
            /* Toggle classes for JS */
            .landing_nav.active {
                display: flex;
                flex-direction: column;
                position: absolute;
                top: 80px;
                left: 0;
                width: 100%;
                background: white;
                padding: 2rem;
                box-shadow: 0 10px 10px rgba(0,0,0,0.05);
                z-index: 100;
            }
            .landing_nav.active .landing_nav_links, 
            .landing_nav.active .landing_auth { 
                display: flex; 
                flex-direction: column;
                width: 100%;
            }
        }


        .landing_exams_section {
            padding: 5rem 2rem;
            background-color: var(--landing_bg_white);
            text-align: center;
        }

        .landing_container {
            max-width: 1280px;
            margin: 0 auto;
        }

        /* Section Header */
        .landing_wide_tag {
            display: inline-block;
            background: var(--landing_bg_tag);
            color: var(--landing_primary);
            padding: 6px 16px;
            border-radius: 999px;
            font-size: 0.875rem;
            font-weight: 600;
            margin-bottom: 1.5rem; 
        }

        .landing_exams_section h2 {
            font-size: var(--landing_fs_h2);
            color: var(--landing_text_dark);
            margin-bottom: 1rem;
            letter-spacing: -0.02em; 
        }

        .landing_exams_section p.landing_section_desc {
            font-size: 1.125rem;
            color: var(--landing_text_gray);
            max-width: 700px;
            margin: 0 auto 4rem auto;
            line-height: 1.6; 
        }

        /* Grid Layout */
        .landing_exam_grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
            text-align: left;
        }

        /* Card Styling */
        .landing_exam_card {
            background: var(--landing_bg_white);
            border: 1px solid var(--landing_card_border);
            padding: 2.5rem;
            border-radius: 20px;
            transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
            position: relative;
            cursor: pointer;
        }

        /* Beautiful Hover Effect */
        .landing_exam_card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.02);
            border-color: #e2e8f0;
        }

        /* Icon Container */
        .landing_icon_box {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 12px;
            margin-bottom: 1.5rem;
            font-size: 1.25rem;
        }

        .landing_exam_card h3 {
            font-size: var(--landing_fs_h3);
            color: var(--landing_text_dark);
            margin-bottom: 0.75rem; 
        }

        .landing_exam_card p {
            font-size: var(--landing_fs_body);
            color: var(--landing_text_gray);
            line-height: 1.5; 
        }

        /* Icon Variants */
        .landing_blue { background: var(--landing_icon_bg_blue); color: var(--landing_icon_color_blue); }
        .landing_red { background: var(--landing_icon_bg_red); color: var(--landing_icon_color_red); }
        .landing_orange { background: var(--landing_icon_bg_orange); color: var(--landing_icon_color_orange); }
        .landing_green { background: var(--landing_icon_bg_green); color: var(--landing_icon_color_green); }
        .landing_purple { background: var(--landing_icon_bg_purple); color: var(--landing_icon_color_purple); }

        /* Responsive Design */
        @media (max-width: 1024px) {
            .landing_exam_grid { grid-template-columns: repeat(2, 1fr); }
            .landing_exams_section h2 { font-size: 2rem; }
        }

        @media (max-width: 640px) {
            .landing_exam_grid { grid-template-columns: 1fr; }
            .landing_exam_card { padding: 2rem; }
            .landing_exams_section { padding: 4rem 1rem; }
        }

            /* New Section Styles */
    .landing_how_it_works {
        padding: 5rem 2rem;
        background-color: var(--landing_bg_white);
        text-align: center;
    }

    .landing_steps_container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 2rem;
        margin-top: 4rem;
        position: relative;
    }

    /* Connecting line for steps */
    .landing_steps_container::before {
        content: "";
        position: absolute;
        top: 40px;
        left: 10%;
        right: 10%;
        height: 2px;
        background: #e5e7eb;
        z-index: 0;
    }

    .landing_step_card {
        flex: 1;
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .landing_step_icon_wrapper {
        position: relative;
        margin-bottom: 1.5rem;
    }

    .landing_step_number {
        position: absolute;
        top: -10px;
        right: -10px;
        background: var(--landing_white);
        border: 2px solid var(--landing_primary);
        color: var(--landing_primary);
        width: 24px;
        height: 24px;
        border-radius: 50%;
        font-size: 0.75rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .landing_step_icon {
        width: 80px;
        height: 80px;
        background: var(--landing_primary);
        color: white;
        border-radius: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
        box-shadow: 0 10px 15px -3px rgba(88, 80, 236, 0.3);
    }

    .landing_step_card h3 {
        font-size: var(--landing_fs_h3);
        margin-bottom: 0.75rem;
        color: var(--landing_text_dark);
    }

    .landing_step_card p {
        color: var(--landing_text_gray);
        font-size: 0.95rem;
        line-height: 1.5;
        max-width: 250px;
    }

    /* Everything You Need Section */
    .landing_tools_section {
        padding: 5rem 2rem;
        background-color: #f9fafb;
    }

    .landing_tools_section_intro {
        text-align: center;
    }

    .landing_tools_grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 2rem;
        margin-top: 4rem;
    }

    .landing_tool_card {
        background: var(--landing_white);
        padding: 2.5rem;
        border-radius: 20px;
        border: 1px solid var(--landing_card_border);
        transition: all 0.3s ease;
    }

    .landing_tool_card:hover {
        border-color: var(--landing_primary);
        transform: translateY(-5px);
    }

    /* Responsive Adjustments */
    @media (max-width: 768px) {
        .landing_steps_container {
            flex-direction: column;
            gap: 3rem;
        }
        .landing_steps_container::before {
            display: none;
        }
        .landing_tools_grid {
            grid-template-columns: 1fr;
        }
    }
    /* Testimonials Section */
.landing_testimonials {
    padding: 5rem 0;
    background-color: var(--landing_bg_white);
    overflow: hidden; /* Important to hide the overflow of the sliding track */
    text-align: center;
}

.landing_slider_wrapper {
    margin-top: 4rem;
    display: flex;
    width: 100%;
}

.landing_slider_track {
    display: flex;
    gap: 2rem;
    /* Animation: 15s duration, linear timing, infinite loop */
    animation: landing_infinite_scroll 15s linear infinite;
    padding: 1rem 0;
}

/* Pause animation on hover so users can read */
.landing_slider_track:hover {
    animation-play-state: paused;
}

.landing_testimonial_card {
    min-width: 400px; /* Fixed width for each card */
    background: var(--landing_white);
    padding: 2.5rem;
    border-radius: 24px;
    border: 1px solid var(--landing_card_border);
    text-align: left;
    transition: transform 0.3s ease;
}

.landing_stars {
    color: #fbbf24; /* Gold color for stars */
    margin-bottom: 1.5rem;
    font-size: 0.875rem;
}

.landing_testimonial_text {
    color: var(--landing_text_dark);
    font-size: 1.125rem;
    line-height: 1.6;
    margin-bottom: 2rem;
    font-style: italic;
}

.landing_user_info {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.landing_user_img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    background: #e5e7eb;
}

.landing_user_details h4 {
    color: var(--landing_text_dark);
    font-size: 1rem;
    margin-bottom: 2px;
}

.landing_user_details span {
    color: var(--landing_primary);
    font-size: 0.875rem;
    font-weight: 600;
}

/* Infinite Scroll Keyframes */
@keyframes landing_infinite_scroll {
    0% { transform: translateX(0); }
    100% { 
        /* We move by exactly half of the total width of the track 
           because we will clone the items below */
        transform: translateX(calc(-50% - 1rem)); 
    }
}

/* Responsive Fixes */
@media (max-width: 640px) {
    .landing_testimonial_card {
        min-width: 300px;
        padding: 1.5rem;
    }
}
/* FAQ Section Styles */
.landing_faq_section {
    padding: 5rem 2rem;
    background-color: #ffffff;
    text-align: center;
}

.landing_faq_container {
    max-width: 800px; /* Narrower for better readability */
    margin: 0 auto;
    text-align: left;
}

.landing_faq_header {
    text-align: center;
    margin-bottom: 4rem;
}

.landing_faq_list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.landing_faq_item {
    background: var(--landing_white);
    border: 1px solid var(--landing_card_border);
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.landing_faq_item:hover {
    border-color: #e2e8f0;
}

.landing_faq_question {
    width: 100%;
    padding: 1.5rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    background: none;
    border: none;
    outline: none;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--landing_text_dark);
    text-align: left;
}

.landing_faq_answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
    background: var(--landing_white);
}

.landing_faq_answer_content {
    padding: 0 2rem 1.5rem 2rem;
    color: var(--landing_text_gray);
    line-height: 1.6;
    font-size: 1rem;
}

/* Toggle State */
.landing_faq_item.active {
    border-color: var(--landing_card_border);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.landing_faq_item.active .landing_faq_answer {
    max-height: 1000px;
    transition: max-height 0.5s ease-in-out;
}

.landing_faq_icon {
    font-size: 1.25rem;
    color: #9ca3af;
    transition: transform 0.3s ease;
}

.landing_faq_item.active .landing_faq_icon {
    transform: rotate(180deg);
}

/* Responsive Base Styles */
:root {
    --landing_max_width: 1280px;
}

/* Container Utility */
.landing_container {
    max-width: var(--landing_max_width);
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* Header & Nav Responsiveness */
.landing_header {
    position: relative;
    z-index: 1000;
}

.landing_menu_toggle {
    display: none;
    font-size: 1.5rem;
    cursor: pointer;
    background: none;
    border: none;
    color: var(--landing_text_dark);
}

@media (max-width: 1024px) {
    .landing_menu_toggle {
        display: block;
    }

    .landing_nav {
        display: none; /* Hidden by default on mobile */
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background: white;
        padding: 2rem;
        box-shadow: 0 10px 15px rgba(0,0,0,0.1);
        gap: 2rem;
    }

    .landing_nav.active {
        display: flex;
    }

    .landing_nav_links {
        flex-direction: column;
        width: 100%;
        gap: 1.5rem;
    }

    .landing_auth {
        flex-direction: column;
        width: 100%;
    }
}

/* Hero Section Responsiveness */
@media (max-width: 1024px) {
    .landing_hero {
        flex-direction: column;
        text-align: center;
        padding: 3rem 0;
    }

    .landing_hero_content p {
        margin-left: auto;
        margin-right: auto;
    }

    .landing_hero_actions {
        justify-content: center;
    }

    .landing_hero_stats {
        justify-content: center;
    }
}

/* Grid System for Exams and Tools */
.landing_exam_grid, .landing_tools_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

@media (max-width: 1024px) {
    .landing_exam_grid, .landing_tools_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .landing_exam_grid, .landing_tools_grid {
        grid-template-columns: 1fr;
    }
}

/* CTA Section (Ready to Crack Exam) */
.landing_cta_section {
    background: linear-gradient(135deg, #5850ec 0%, #4338ca 100%);
    border-radius: 24px;
    padding: 4rem 2rem;
    text-align: center;
    color: white;
    margin: 4rem 0;
}

.landing_cta_section h2 {
    color: white;
    font-size: 3rem;
    margin-bottom: 1rem;
}

.landing_cta_section p {
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 2.5rem;
}

/* Footer Section Styles */
.landing_footer {
    background-color: #0f172a; /* Dark navy background */
    color: #94a3b8; /* Light gray text */
    padding: 5rem 0 2rem 0;
    font-family: 'Inter', sans-serif;
}

.landing_footer_grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr; /* Brand column is wider */
    gap: 3rem;
    margin-bottom: 4rem;
}

.landing_footer_brand {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.landing_footer_logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.5rem;
}

.landing_footer_logo_icon {
    background: #5850ec;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
}

.landing_footer_desc {
    line-height: 1.6;
    max-width: 250px;
}

.landing_footer_socials {
    display: flex;
    gap: 1rem;
}

.landing_social_btn {
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    text-decoration: none;
    transition: background 0.3s ease;
}

.landing_social_btn:hover {
    background: #5850ec;
}

.landing_footer_column h4 {
    color: #ffffff;
    font-size: 1rem;
    margin-bottom: 1.5rem;
    font-weight: 600;
}

.landing_footer_links {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.landing_footer_links a {
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.2s ease;
}

.landing_footer_links a:hover {
    color: #ffffff;
}

/* Bottom Bar */
.landing_footer_bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem;
}

.landing_contact_info {
    display: flex;
    align-items: center;
    gap: 8px;
}

.landing_footer_email_link {
    color: #94a3b8;
    text-decoration: none;
    transition: color 0.2s ease;
}

.landing_footer_email_link:hover {
    color: #ffffff;
}

/* Mobile Responsiveness */
@media (max-width: 1024px) {
    .landing_footer_grid {
        grid-template-columns: 1fr 1fr; /* Two columns on tablets */
    }
    .landing_footer_brand {
        grid-column: span 2; /* Brand takes full width */
        margin-bottom: 1rem;
    }
}

@media (max-width: 640px) {
    .landing_footer_grid {
        grid-template-columns: 1fr; /* Single column on mobile */
        gap: 2rem;
    }
    .landing_footer_brand {
        grid-column: span 1;
    }
    .landing_footer_bottom {
        flex-direction: column;
        gap: 1.5rem;
        text-align: center;
    }
}

/* How It Works Section Styles */
.landing_how_it_works {
    padding: 5rem 0;
    background-color: var(--landing_bg_white);
    text-align: center;
}

.landing_steps_container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    margin-top: 4rem;
    position: relative;
    flex-wrap: nowrap; /* Keeps items in a row on desktop */
}

/* Connecting line for steps - adjusted for 4 items */
.landing_steps_container::before {
    content: "";
    position: absolute;
    top: 40px;
    left: 10%;
    right: 10%;
    height: 2px;
    background: #e5e7eb;
    z-index: 0;
}

.landing_step_card {
    flex: 1;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.landing_step_icon_wrapper {
    position: relative;
    margin-bottom: 1.5rem;
}

.landing_step_icon {
    width: 80px;
    height: 80px;
    background: var(--landing_primary);
    color: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    box-shadow: 0 10px 15px -3px rgba(88, 80, 236, 0.3);
}

.landing_step_number {
    position: absolute;
    top: -10px;
    right: -10px;
    background: var(--landing_white);
    border: 2px solid var(--landing_primary);
    color: var(--landing_primary);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 0.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.landing_step_card h3 {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
    color: var(--landing_text_dark);
}

.landing_step_card p {
    color: var(--landing_text_gray);
    font-size: 0.95rem;
    line-height: 1.5;
    max-width: 220px;
}
.login-link {
  text-decoration: none;
  color: var(--landing_text_gray);
  font-weight: 500;
}
/* MOBILE RESPONSIVE FIXES */
@media (max-width: 1024px) {
    .landing_steps_container {
        flex-wrap: wrap; /* Allows wrapping on tablets */
        justify-content: center;
        gap: 3rem;
    }
    .landing_step_card {
        flex: 0 0 calc(50% - 2rem); /* 2 items per row on tablets */
    }
    .landing_steps_container::before {
        display: none; /* Hide line when layout isn't a single row */
    }
}

@media (max-width: 640px) {
    .landing_how_it_works {
        padding: 3rem 1rem;
    }
    .landing_steps_container {
        flex-direction: column; /* Stack vertically on phones */
        align-items: center;
    }
    .landing_step_card {
        flex: 1 1 100%;
        width: 100%;
    }
    .landing_step_card p {
        max-width: 100%; /* Full width text for better mobile reading */
    }
}

/* Legal / policy document pages (content inside shared landing layout) */
.landing_legal_main {
    padding: 2rem 1.5rem 4rem;
    max-width: 42rem;
}

.landing_legal_article {
    line-height: 1.65;
}

.landing_legal_meta {
    font-size: 0.875rem;
    color: var(--landing_text_gray);
    margin-bottom: 0.5rem;
}

.landing_legal_h1 {
    font-size: 2rem;
    margin-bottom: 1rem;
    color: var(--landing_text_dark);
}

.landing_legal_h2 {
    font-size: 1.25rem;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
    color: var(--landing_text_dark);
}

.landing_legal_h3 {
    font-size: 1.05rem;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    color: var(--landing_text_dark);
    font-weight: 600;
}

.landing_legal_lead {
    font-size: 1.05rem;
    color: var(--landing_text_gray);
    margin-bottom: 1rem;
}

.landing_legal_article p {
    margin-bottom: 0.85rem;
    color: var(--landing_text_dark);
    font-size: 0.98rem;
}

.landing_legal_article a {
    color: var(--landing_primary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.landing_legal_article a:hover {
    text-decoration-thickness: 2px;
}

.landing_legal_list {
    margin: 0.5rem 0 1rem 1.25rem;
    padding: 0;
    color: var(--landing_text_dark);
    font-size: 0.98rem;
}

.landing_legal_list li {
    margin-bottom: 0.5rem;
}

.landing_legal_contact_block {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0.5rem 0 1rem;
}