/* 
 * Responsive Styles - About Page Only
 * ARISE Landing Page
 * Contains ONLY about page specific responsive styles
 * Shared styles (header, footer, font controls, hero, page-container) are in responsive-shared.css
 */

/* ============================================
   VISION & MISSION RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1919px) and (min-width: 1400px) {
    .vision-mission {
        padding-top: 2.25rem;
        padding-bottom: 2.25rem;
    }
    .vision-mission h2 {
        font-size: 3rem;
        margin-bottom: 1.25rem;
    }
    .vision-mission p {
        font-size: 1.25rem;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .vision-mission {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .vision-mission h2 {
        font-size: 2.5rem;
        margin-bottom: 1.25rem;
    }
    .vision-mission p {
        font-size: 1.125rem;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .vision-mission {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .vision-mission h2 {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    .vision-mission p {
        font-size: 1rem;
    }
}

@media (max-width: 991px) {
    .vision-mission {
        padding: 2rem 0;
    }
    .vision-mission h2 {
        font-size: 1.75rem;
        margin-bottom: 1rem;
    }
    .vision-mission p {
        font-size: 0.9375rem;
    }
}

@media (max-width: 767px) {
    .vision-mission {
        padding: 2rem 0;
    }
    .vision-mission h2 {
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }
    .vision-mission p {
        font-size: 0.875rem;
    }
}

@media (max-width: 575px) {
    .vision-mission {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
    .vision-mission h2 {
        font-size: 1.25rem;
        margin-bottom: 0.875rem;
    }
    .vision-mission p {
        font-size: 0.8125rem;
    }
}

/* ============================================
   THE PROBLEM RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1919px) and (min-width: 1400px) {
    .the-problem-container {
        padding: 45px 70px;
        border-radius: 32px;
    }
    .the-problem-container h2 {
        font-size: 3rem;
    }
    .the-problem-container .problem-intro {
        font-size: 1.25rem;
        padding: 0 100px;
        margin-bottom: 35px;
    }
    .problem-grid {
        gap: 1.5rem;
        margin: 2rem 0;
    }
    .problem-box {
        padding: 55px 40px;
        border-radius: 26px;
    }
    .problem-box p {
        font-size: 1.25rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 1.25rem;
        margin-top: 2rem;
        padding: 0 100px;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .the-problem-container {
        padding: 40px 60px;
        border-radius: 30px;
    }
    .the-problem-container h2 {
        font-size: 2.5rem;
    }
    .the-problem-container .problem-intro {
        font-size: 1.125rem;
        padding: 0 80px;
        margin-bottom: 30px;
    }
    .problem-grid {
        gap: 1.375rem;
        margin: 1.75rem 0;
    }
    .problem-box {
        padding: 48px 38px;
        border-radius: 24px;
    }
    .problem-box p {
        font-size: 1.125rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 1.125rem;
        margin-top: 1.75rem;
        padding: 0 80px;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .the-problem-container {
        padding: 35px 50px;
        border-radius: 28px;
    }
    .the-problem-container h2 {
        font-size: 2rem;
    }
    .the-problem-container .problem-intro {
        font-size: 1rem;
        padding: 0 60px;
        margin-bottom: 28px;
    }
    .problem-grid {
        gap: 1.25rem;
        margin: 1.5rem 0;
    }
    .problem-box {
        padding: 40px 32px;
        border-radius: 22px;
    }
    .problem-box p {
        font-size: 1rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 1rem;
        margin-top: 1.5rem;
        padding: 0 60px;
    }
}

@media (max-width: 991px) {
    .the-problem-container {
        padding: 32px 40px;
        border-radius: 24px;
    }
    .the-problem-container h2 {
        font-size: 1.75rem;
    }
    .the-problem-container .problem-intro {
        font-size: 0.9375rem;
        padding: 0 30px;
        margin-bottom: 24px;
    }
    .problem-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
        margin: 1.25rem 0;
    }
    .problem-box {
        padding: 32px 28px;
        border-radius: 20px;
    }
    .problem-box p {
        font-size: 0.9375rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 0.9375rem;
        margin-top: 1.25rem;
        padding: 0 30px;
    }
}

@media (max-width: 767px) {
    .the-problem-container {
        padding: 28px 32px;
        border-radius: 20px;
    }
    .the-problem-container h2 {
        font-size: 1.5rem;
        margin-bottom: 0.875rem;
    }
    .the-problem-container .problem-intro {
        font-size: 0.875rem;
        padding: 0 15px;
        margin-bottom: 20px;
    }
    .problem-grid {
        gap: 0.875rem;
        margin: 1rem 0;
    }
    .problem-box {
        padding: 24px 20px;
        border-radius: 16px;
    }
    .problem-box p {
        font-size: 0.875rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 0.875rem;
        margin-top: 1rem;
        padding: 0 15px;
    }
}

@media (max-width: 575px) {
    .the-problem-container {
        padding: 24px 20px;
        border-radius: 16px;
    }
    .the-problem-container h2 {
        font-size: 1.25rem;
        margin-bottom: 0.75rem;
    }
    .the-problem-container .problem-intro {
        font-size: 0.8125rem;
        padding: 0 8px;
        margin-bottom: 16px;
    }
    .problem-grid {
        gap: 0.75rem;
        margin: 0.875rem 0;
    }
    .problem-box {
        padding: 20px 16px;
        border-radius: 14px;
    }
    .problem-box p {
        font-size: 0.8125rem;
    }
    .the-problem-container .problem-conclusion {
        font-size: 0.8125rem;
        margin-top: 0.875rem;
        padding: 0 8px;
    }
}

/* ============================================
   OUR SOLUTION RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1919px) and (min-width: 1400px) {
    .our-solution {
        margin: 2.25rem 0;
        gap: 40px;
    }
    
    .solution-content {
        gap: 45px;
    }
    
    .solution-image {
        width: 240px;
        height: 240px;
    }
    
    .solution-text h2 {
        font-size: 2.5rem;
        margin-bottom: 0.75rem;
    }
    
    .solution-text p {
        font-size: 1.125rem;
    }
    
    .solution-text-box {
        border-radius: 22px;
        padding: 32px 26px;
    }
    
    .solution-text-box h3 {
        font-size: 1.75rem;
    }
    
    .solution-text-box p {
        font-size: 1.125rem;
    }
    
    .toolkit-features li {
        font-size: 1rem;
    }
    
    .left .solution-image-overlay {
        left: 14px;
        top: 14px;
    }
    
    .right .solution-image-overlay {
        left: 14px;
        bottom: 14px;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .our-solution {
        margin: 2rem 0;
        gap: 35px;
    }
    
    .solution-content {
        gap: 40px;
    }
    
    .solution-image {
        width: 220px;
        height: 220px;
    }
    
    .solution-text h2 {
        font-size: 2.25rem;
        margin-bottom: 0.625rem;
    }
    
    .solution-text p {
        font-size: 1rem;
    }
    
    .solution-text-box {
        border-radius: 20px;
        padding: 28px 24px;
    }
    
    .solution-text-box h3 {
        font-size: 1.625rem;
    }
    
    .solution-text-box p {
        font-size: 1rem;
    }
    
    .toolkit-features li {
        font-size: 0.9375rem;
    }
    
    .solution-divider {
        margin: 14px 0;
    }
    
    .left .solution-image-overlay {
        left: 12px;
        top: 12px;
    }
    
    .right .solution-image-overlay {
        left: 12px;
        bottom: 12px;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .our-solution {
        margin: 1.75rem 0;
        gap: 30px;
    }
    
    .solution-content {
        gap: 35px;
    }
    
    .solution-image {
        width: 200px;
        height: 200px;
    }
    
    .solution-text h2 {
        font-size: 2rem;
        margin-bottom: 0.5rem;
    }
    
    .solution-text p {
        font-size: 0.9375rem;
    }
    
    .solution-text-box {
        border-radius: 18px;
        padding: 26px 22px;
    }
    
    .solution-text-box h3 {
        font-size: 1.5rem;
    }
    
    .solution-text-box p {
        font-size: 0.9375rem;
    }
    
    .toolkit-features li {
        font-size: 0.875rem;
        margin-bottom: 0.4375rem;
    }
    
    .solution-divider {
        margin: 12px 0;
    }
    
    .left .solution-image-overlay {
        left: 10px;
        top: 10px;
    }
    
    .right .solution-image-overlay {
        left: 10px;
        bottom: 10px;
    }
}

@media (max-width: 991px) and (min-width: 768px) {
    .our-solution {
        margin: 1.5rem 0;
        gap: 25px;
    }
    
    .solution-content {
        flex-direction: column;
        align-items: center;
        gap: 22px;
    }
    
    .solution-content.reverse-mobile {
        flex-direction: column-reverse;
    }
    
    .solution-image {
        width: 220px;
        height: 220px;
    }
    
    .solution-text {
        max-width: 100%;
    }
    
    .solution-text h2 {
        font-size: 1.75rem;
        margin-bottom: 0.5rem;
        text-align: center;
    }
    
    .solution-text p {
        font-size: 0.875rem;
        text-align: center;
    }
    
    .solution-text-box {
        border-radius: 16px;
        padding: 24px 20px;
    }
    
    .solution-text-box h3 {
        font-size: 1.375rem;
    }
    
    .solution-text-box p {
        font-size: 0.875rem;
    }
    
    .toolkit-features li {
        font-size: 0.8125rem;
        margin-bottom: 0.375rem;
    }
    
    .solution-divider {
        margin: 10px 0;
    }
    
    .left .solution-image-overlay,
    .right .solution-image-overlay {
        left: 8px;
        top: 8px;
    }
}

@media (max-width: 767px) and (min-width: 576px) {
    .our-solution {
        margin: 1.25rem 0;
        gap: 20px;
    }
    
    .solution-content {
        flex-direction: column;
        align-items: center;
        gap: 18px;
    }
    
    .solution-content.reverse-mobile {
        flex-direction: column-reverse;
    }
    
    .solution-image {
        width: 200px;
        height: 200px;
    }
    
    .solution-text {
        max-width: 100%;
    }
    
    .solution-text h2 {
        font-size: 1.5rem;
        margin-bottom: 0.375rem;
        text-align: center;
    }
    
    .solution-text p {
        font-size: 0.8125rem;
        text-align: center;
    }
    
    .solution-text-box {
        border-radius: 14px;
        padding: 20px 18px;
    }
    
    .solution-text-box h3 {
        font-size: 1.25rem;
    }
    
    .solution-text-box p {
        font-size: 0.8125rem;
    }
    
    .toolkit-features {
        margin-top: 0.75rem;
    }
    
    .toolkit-features li {
        font-size: 0.75rem;
        margin-bottom: 0.3125rem;
        padding-left: 1rem;
    }
    
    .solution-divider {
        margin: 8px 0;
    }
    
    .left .solution-image-overlay,
    .right .solution-image-overlay {
        left: 6px;
        top: 6px;
    }
}

@media (max-width: 575px) {
    .our-solution {
        margin: 1rem 0;
        gap: 18px;
    }
    
    .solution-content {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    .solution-content.reverse-mobile {
        flex-direction: column-reverse;
    }
    
    .solution-image {
        width: 180px;
        height: 180px;
    }
    
    .solution-text {
        max-width: 100%;
    }
    
    .solution-text h2 {
        font-size: 1.375rem;
        margin-bottom: 0.375rem;
        text-align: center;
    }
    
    .solution-text p {
        font-size: 0.75rem;
        text-align: center;
    }
    
    .solution-text-box {
        border-radius: 12px;
        padding: 18px 16px;
    }
    
    .solution-text-box h3 {
        font-size: 1.125rem;
    }
    
    .solution-text-box p {
        font-size: 0.75rem;
    }
    
    .toolkit-features {
        margin-top: 0.625rem;
    }
    
    .toolkit-features li {
        font-size: 0.6875rem;
        margin-bottom: 0.25rem;
        padding-left: 0.875rem;
    }
    
    .solution-divider {
        margin: 6px 0;
        border-top-width: 1.5px;
    }
    
    .left .solution-image-overlay,
    .right .solution-image-overlay {
        left: 5px;
        top: 5px;
    }
}

/* ============================================
   EXPECTED RESULTS RESPONSIVE STYLES
   ============================================ */

@media (max-width: 1919px) and (min-width: 1400px) {
    .expected-results {
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
    
    .expected-results h2 {
        font-size: 3rem;
        margin-bottom: 3rem;
    }
    
    .results-grid {
        gap: 15px;
    }
    
    .result-box {
        padding: 45px 30px;
        padding-top: 18px;
        border-radius: 25px;
    }
    
    .result-box h4 {
        font-size: 1.5rem;
        min-height: 75px;
    }
    
    .result-divider {
        margin: 0 0 16px 0;
    }
    
    .result-box p {
        font-size: 1.125rem;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .expected-results {
        padding-top: 0.625rem;
        padding-bottom: 0.625rem;
    }
    
    .expected-results h2 {
        font-size: 2.5rem;
        margin-bottom: 2.5rem;
    }
    
    .results-grid {
        gap: 14px;
    }
    
    .result-box {
        padding: 40px 28px;
        border-radius: 22px;
    }
    
    .result-box h4 {
        font-size: 1.375rem;
        min-height: 70px;
    }
    
    .result-divider {
        margin: 0 0 14px 0;
    }
    
    .result-box p {
        font-size: 1rem;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    .expected-results {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    
    .expected-results h2 {
        font-size: 2.25rem;
        margin-bottom: 2.25rem;
    }
    
    .results-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    
    .result-box {
        padding: 35px 24px;
        border-radius: 20px;
    }
    
    .result-box h4 {
        font-size: 1.25rem;
        min-height: auto;
    }
    
    .result-divider {
        margin: 0 0 12px 0;
    }
    
    .result-box p {
        font-size: 0.9375rem;
    }
}

@media (max-width: 991px) and (min-width: 768px) {
    .expected-results {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    
    .expected-results h2 {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
    
    .results-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    
    .result-box {
        padding: 30px 22px;
        border-radius: 18px;
    }
    
    .result-box h4 {
        font-size: 1.125rem;
        min-height: auto;
    }
    
    .result-divider {
        margin: 0 0 10px 0;
    }
    
    .result-box p {
        font-size: 0.875rem;
        line-height: 1.5;
    }
}

@media (max-width: 767px) and (min-width: 576px) {
    .expected-results {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    
    .expected-results h2 {
        font-size: 1.75rem;
        margin-bottom: 1.75rem;
    }
    
    .results-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .result-box {
        padding: 26px 20px;
        border-radius: 16px;
    }
    
    .result-box h4 {
        font-size: 1rem;
        min-height: auto;
    }
    
    .result-divider {
        margin: 0 0 10px 0;
    }
    
    .result-box p {
        font-size: 0.8125rem;
        line-height: 1.5;
    }
}

@media (max-width: 575px) {
    .expected-results {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    
    .expected-results h2 {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }
    
    .results-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .result-box {
        padding: 22px 18px;
        border-radius: 14px;
    }
    
    .result-box h4 {
        font-size: 0.9375rem;
        min-height: auto;
    }
    
    .result-divider {
        margin: 0 0 8px 0;
        border-top-width: 1.5px;
    }
    
    .result-box p {
        font-size: 0.75rem;
        line-height: 1.5;
    }
}
