/* Extracted from PTE.html; shared chrome styles live in base.css. */

/*navbar and main header*/
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        font-family: 'Plus Jakarta Sans', sans-serif;
    }

    :root {
        --navy-dark-blue: #010a26;
        --brand-blue: #0b1a4a;
        --brand-red: #c91818;
        --text-dark: #1e293b;
        --white: #ffffff;
        --border-capsule: #cbd5e1;
        --pill-active-bg: #fee2e2;
    }

    body {
        background-color: #f8fafc;
    }


    /* --- SHARED SECTION-BOTTOM CTA BUTTONS --- */
    .section-cta-row {
        width: 100%;
        display: flex;
        justify-content: center;
        margin-top: 32px;
    }

    .btn-cta-solid {
        text-decoration: none;
        background-color: var(--brand-red);
        color: var(--white);
        padding: 13px 30px;
        border-radius: 8px;
        font-size: 14.5px;
        font-weight: 700;
        display: inline-block;
        transition: background-color 0.2s ease, transform 0.2s ease;
    }

    .btn-cta-solid:hover {
        background-color: #a71212;
        transform: translateY(-2px);
    }

    .btn-cta-outline {
        text-decoration: none;
        background-color: transparent;
        border: 2px solid rgba(255, 255, 255, 0.85);
        color: #fff;
        padding: 11px 28px;
        border-radius: 8px;
        font-size: 14.5px;
        font-weight: 700;
        display: inline-block;
        transition: all 0.2s ease;
    }

    .btn-cta-outline:hover {
        background-color: #fff;
        color: var(--brand-blue);
        transform: translateY(-2px);
    }

    .hero-section {
        position: relative;
        width: 100%;
        min-height: 50vh;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        background: url('PTEBG.jpg') no-repeat center 28%;
        background-size: cover;
    }

    .hero-section::before {
        content: '';
        position: absolute;
        inset: 0;
        background: rgba(3, 23, 57, 0.68);
        pointer-events: none;
    }

    .hero-container {
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        height: 100%;
        padding: 20px 40px;
        box-sizing: border-box;
    }

    .hero-content {
        position: relative;
        z-index: 2;
        width: 100%;
        max-width: 800px;
    }

    .info-pill-badge {
        display: inline-block;
        background-color: rgba(255, 255, 255, 0.08);
        color: var(--white);
        font-size: 12.5px;
        font-weight: 500;
        padding: 7px 20px;
        border-radius: 30px;
        border: 1px solid rgba(255, 255, 255, 0.3);
        margin-bottom: 18px;
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }

    .hero-content h1 {
        font-size: clamp(26px, 3vw, 38px);
        color: var(--white);
        line-height: 1.2;
        margin-bottom: 14px;
        letter-spacing: -0.5px;
        font-family: 'Playfair Display', Georgia, serif;
        font-weight: 700;
    }

    .hero-content p {
        font-size: 14.5px;
        color: rgba(255, 255, 255, 0.85);
        line-height: 1.6;
        margin-bottom: 26px;
        max-width: 560px;
        margin-left: auto;
        margin-right: auto;
    }

    /* --- STATS ROW --- */
.hero-stats {
display: flex;
justify-content: center;
align-items: center;
gap: 0;

/* 1. Subtle horizontal gradient background matching the image */
background: linear-gradient(
    90deg, 
    rgba(8, 20, 38, 0.70) 0%, 
    rgba(13, 27, 48, 0.45) 50%, 
    rgba(8, 20, 38, 0.70) 100%
);

/* 2. Glassmorphism effect */
backdrop-filter: blur(12px);

/* 3. Soft gradient border around the container */
border: 1px solid rgba(255, 255, 255, 0.15);
border-radius: 12px;

padding: 18px 24px;
width: 100%;
max-width: 900px;
box-sizing: border-box;
}

.hero-stat {
display: flex;
flex-direction: column;
align-items: center;
flex: 1;
padding: 0 24px;
position: relative;
}

/* 4. Vertical divider line with vertical fade gradient */
.hero-stat:not(:first-child)::before {
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
height: 70%; /* Line height relative to box */
width: 1px;
background: rgba(131, 137, 148, 0.68);
}


.hero-stat-label {
font-size: 13px;
color: rgba(255, 255, 255, 0.75);
margin-bottom: 6px;
font-weight: 400;
}

.hero-stat-value {
font-size: 15px;
color: #ffffff;
font-weight: 700;
font-family: serif; /* Matches serif typography in image */
}

/* Mobile Responsive */
@media (max-width: 768px) {
.hero-stats {
    flex-wrap: wrap;
    gap: 16px 0;
    padding: 16px 12px;
}

.hero-stat {
    flex: 1 1 50%;
    padding: 8px 0;
}

.hero-stat:not(:first-child)::before {
    display: none; /* Hide dividers on mobile */
}
}
    @media (max-width: 768px) {
        .hero-stats {
            flex-wrap: wrap;
            gap: 12px 0;
        }
        .hero-stat {
            width: 50%;
            border-left: none;
            padding: 8px 0;
        }
    }

    /* Container Layout */
    .card-container {
        display: flex;
        align-items: center;
        gap: 60px;
        max-width: 1000px;
        margin: 50px auto;
        padding: 20px;
    }

    .image-section {
        position: relative;
        flex: 1.2;
    }

    .main-image {
        width: 100%;
        height: 350px;
        border-radius: 24px;
        display: block;
        position: relative;
        z-index: 2;
    }

    .offset-bg {
        position: absolute;
        width: 75%;
        height: 80%;
        background-color: #d10a14;
        border-radius: 16px;
        bottom: -20px;
        left: -20px;
        z-index: 1;
    }

    .content-section {
        flex: 1;
    }

    .tagline {
        color: #d10a14;
        font-weight: 700;
        font-size: 0.95rem;
        letter-spacing: 0.5px;
    }

    .title {
        color: #0d1b3e;
        font-family: Georgia, serif;
        font-size: 2.4rem;
        font-weight: 500;
        line-height: 1.15;
        margin: 12px 0 24px 0;
    }

    .description {
        color: #5d6675;
        font-size: 1rem;
        line-height: 1.6;
    }

    @media (max-width: 768px) {
        .card-container {
            flex-direction: column;
            gap: 40px;
            padding: 20px;
            margin-bottom: 60px;
        }

        .offset-bg {
            bottom: -15px;
            left: -15px;
        }
    }

    /* --- STATISTICS GLASS-CARD ROW (full-width, edge to edge) --- */
    .stats-section {
        background: linear-gradient(135deg, rgba(61, 64, 71, 0.92) 0%, rgba(74, 87, 132, 0.88) 100%),
                    url('PTE3.png') center/cover no-repeat fixed;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        background-attachment: fixed;
        min-height: 220px;
        padding: 0px 0;
        width: 100%;
        display: flex;
        align-items: center;
        position: relative;
        box-sizing: border-box;
        overflow: hidden;
    }

    .shr-container {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        align-items: stretch;
        gap: 24px;
        flex-wrap: wrap;
        background: transparent !important;
        padding: 0;
    }

    .shr-item {
        flex: 1 1 220px;
        max-width: 220px;
        min-width: 180px;
        max-height: 120px;
        text-align: center;
        padding: 30px 20px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.05) 100%);
        border: 1px solid rgba(255, 255, 255, 0.25);
        border-radius: 14px;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        transition: all 0.3s ease;
    }

    .shr-item:hover {
        border-color: rgba(255, 255, 255, 0.4);
        background: rgba(255, 255, 255, 0.12);
        transform: translateY(-3px);
    }

    .shr-number {
        display: block;
        font: 500 30px 'Playfair Display', Georgia, serif;
        margin-bottom: 3px;
        color: #fff;
    }

    .shr-label {
        display: block;
        font-size: 13px;
        color: rgba(255, 255, 255, 0.8);
        font-weight: 500;
        letter-spacing: 0.2px;
    }

    @media (max-width: 1024px) {
        .stats-section { background-attachment: scroll; padding: 30px 0; }
        .shr-container { justify-content: center; gap: 16px; }
        .shr-item { flex: 1 1 45%; }
    }

    @media (max-width: 480px) {
        .shr-item { flex: 1 1 100%; max-width: none; padding: 14px 16px; }
        .shr-number { font-size: 28px; }
    }

    :root {
        --bg-page: #eef0f7;
        --red: #d92b2b;
        --red-dark: #a32d2d;
        --pink-bg: #fbe1e2;
        --navy: #141b40;
        --navy-panel: #141b40;
        --navy-circle: #1e2a5c;
        --gold: #f4c05a;
        --text-body: #6b7280;
        --text-muted: #aab1d4;
        --white: #ffffff;
        --radius-card: 14px;
        --radius-icon: 10px;
    }

    * { box-sizing: border-box; }

    .section {
        width: 100%;
        background: var(--bg-page);
        padding: 70px 70px;
    }

    @media (max-width: 768px) {
        .section { padding: 40px 20px; }
    }
    .section-header,
    .grid {
        max-width: 1160px;
        margin: 0 auto;
    }

    .section-header {
        text-align: center;
        margin-bottom: 30px;
    }

    .eyebrow {
        color: var(--red);
        font-weight: 500;
        font-size: 14px;
        margin-bottom: 6px;
    }

    .heading {
        color: var(--navy);
        font-weight: 600;
        font-size: 34px;
        font-family: 'Playfair Display', serif;
    }

    .grid {
        display: grid;
        grid-template-columns: 2fr 1fr;
        gap: 20px;
        align-items: stretch;
    }

    .left-column {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .card {
        background: var(--white);
        border-radius: var(--radius-card);
        padding: 24px 26px;
    }

    .card-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        flex: 1;
    }

    .card-top {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 18px;
    }

    .icon-badge {
        width: 44px;
        height: 44px;
        border-radius: var(--radius-icon);
        background: var(--pink-bg);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .icon-badge svg {
        width: 22px;
        height: 22px;
        stroke: var(--red);
        fill: none;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .time-pill {
        background: var(--pink-bg);
        color: var(--red-dark);
        font-size: 13px;
        font-weight: 500;
        padding: 6px 14px;
        border-radius: 999px;
        white-space: nowrap;
    }

    .card-title {
        color: var(--navy);
        font-weight: 600;
        font-size: 18px;
        font-family: 'Playfair Display', serif;
        margin: 0 0 8px 0;
    }

    .card-text {
        color: var(--text-body);
        font-size: 14px;
        line-height: 1.6;
        margin: 0;
    }

    .panel {
        background: var(--navy-panel);
        border-radius: var(--radius-card);
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        position: relative;
        height: 100%;
    }

    .panel-image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .panel-circle {
        width: 64px;
        height: 64px;
        border-radius: 50%;
        background: var(--navy-circle);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .panel-circle svg {
        width: 30px;
        height: 30px;
        fill: var(--gold);
    }

    .panel-label {
        color: var(--white);
        font-size: 15px;
        font-weight: 500;
    }

    .panel-score {
        color: var(--gold);
        font-size: 36px;
        font-weight: 600;
        font-family: 'Playfair Display', serif;
    }

    .panel-text {
        color: var(--text-muted);
        font-size: 13px;
        line-height: 1.6;
        margin: 0;
    }

    @media (max-width: 768px) {
        .grid { grid-template-columns: 1fr; }
        .card-row { grid-template-columns: 1fr; }
        .heading { font-size: 26px; }
    }

  
.tips-outer {
width: 100%;
display: flex;
justify-content: center;
padding: 70px 40px; 
font-family: 'Poppins', sans-serif;
background-color: #ffffff;
padding-bottom: 100px;


box-sizing: border-box; 
}

.tips-outer * {
font-family: 'Poppins', sans-serif;
box-sizing: border-box;
}

.tips-section {
width: 100%;
max-width: 950px; 
text-align: center;
transform: none; 
margin-bottom: 0;
background-color: #F8F5F2;
padding: 40px 50px 40px 50px;
}

.tips-header {
margin-bottom: 20px; 
}

.pro-tips-tag {
color: #D32F2F;
font-size: 11px; 
font-weight: 600;
text-transform: uppercase;
letter-spacing: 1px;
position: relative;
display: inline-block;
}

.pro-tips-tag::before,
.pro-tips-tag::after {
content: "";
display: inline-block;
width: 15px;
height: 1.5px;
background-color: #D32F2F;
vertical-align: middle;
margin: 0 8px;
}

.tips-header h2 {
font-size: 26px; /* Scaled down header */
font-weight: 700;
color: #0B1C3F;
margin: 6px 0 8px 0;
}

.tips-subtitle {
color: #53647E;
font-size: 13px; 
max-width: 550px;
margin: 0 auto;
line-height: 1.4;
}

.tips-hero-banner {
position: relative;
width: 100%;
max-width: 700px;
height: 200px; 
border-radius: 12px;
overflow: hidden;
display: flex;
align-items: center;
padding: 0 25px;
margin: 15px auto;
background-image: url('laptop.png'); 
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}

/* --- 2. The Gradient Overlay Layer --- */
.tips-banner-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%; 
background: linear-gradient(90deg, rgba(8, 25, 53, 0.98) 0%, rgba(14, 38, 74, 0.85) 45%, rgba(20, 50, 90, 0.1) 100%);
z-index: 1;
}

.tips-banner-content {
position: relative;
z-index: 2;
max-width: 440px;
color: #ffffff;
text-align: left;
}

.tips-focus-tag {
color: #FF4D4D;
font-size: 11px;
font-weight: 600;
display: block;
margin-bottom: 4px;
}

.tips-banner-content h1 {
font-size: 20px; /* Reduced typography scale to match small box footprint */
font-weight: 700;
line-height: 1.2;
margin-bottom: 12px;
letter-spacing: -0.3px;
}

/* --- Tighter Glassmorphism Coach Note --- */
.tips-coach-note {
background: rgba(255, 255, 255, 0.06);
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 6px;
padding: 6px 12px;   /* Extra narrow dimensions */
display: flex;
align-items: center;
gap: 8px;
width: max-content;
max-width: 100%;
}

.tips-note-icon {
width: 24px;         /* Micro circle layout size */
height: 24px;
border-radius: 50%;
border: 1px solid rgba(255, 255, 255, 0.2);
display: flex;
justify-content: center;
align-items: center;
color: #FF4D4D;
font-size: 10px;
flex-shrink: 0;
}

.tips-note-text {
font-size: 11px;     
color: #E2E8F0;
line-height: 1.3;
}

.tips-note-text strong {
color: #ffffff;
font-weight: 600;
}

/* --- Minimized Grid Cards Section --- */
.tips-cards-container {
position: relative;
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 12px;
width: 100%;
max-width: 950px;

/* Changed from start to stretch to force equal column heights */
align-items: stretch; 
}

.tips-connecting-line {
position: absolute;
top: 48%; 
left: 5%;
right: 5%;
height: 2px;
border-top: 2.5px dotted #D32F2F;
z-index: 1;
}

.tips-step-card {
background-color: #ffffff;
border-radius: 12px;
padding: 16px 10px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
position: relative;
z-index: 2;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
transition: transform 0.3s ease;

/* Forces all cards to match the maximum row height */
height: 100%; 
}

.tips-step-card:hover {
transform: translateY(-4px);
}

.tips-icon-wrapper {
width: 44px; /* Scaled down circle size */
height: 44px;
border-radius: 50%;
background-color: #FFF2F2;
color: #E53935;
font-size: 18px;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 12px;
}

.tips-step-number {
color: #D32F2F;
font-size: 18px; /* Tighter font scale */
font-weight: 700;
margin-bottom: 4px;
}

.tips-step-card h3 {
font-size: 14px;
color: #0B1C3F;
font-weight: 700;
margin-bottom: 8px;
}

.tips-step-card p {
font-size: 11.5px;
color: #53647E;
line-height: 1.4;
margin-top: auto; /* Push content cleanly into unified grid layouts */
}

@media (max-width: 768px) {
.tips-outer {
    padding: 50px 24px;
}
.tips-section {
    padding: 32px 24px;
}
.tips-cards-container {
    grid-template-columns: repeat(2, 1fr);
}
.tips-connecting-line {
    display: none;
}
}

@media (max-width: 480px) {
.tips-cards-container {
    grid-template-columns: 1fr;
}
}

/* ======== Testimonials Section ======== */
.testimonials-section {

position: relative !important;
overflow: hidden !important; 
padding-bottom: 140px !important; 


position: relative !important;
margin-top: -40px !important; 
background-color: #e6e7e8 !important;
padding: 60px 80px 30px 80px !important; 
width: 100% !important;
overflow: visible !important; 

}

.testimonials-section::after {
content: "" !important;
position: absolute !important;
bottom: 0 !important;
left: 0 !important;
width: 100% !important;
height: 15vh !important; 

background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath fill='%23ffffff' d='M0,40 Q720,0 1440,40 Z'%3E%3C/path%3E%3C/svg%3E") !important;
background-size: 100% 100% !important;
background-repeat: no-repeat !important;
background-position: bottom center !important;
z-index: 1 !important;
pointer-events: none !important;
}

.testimonials-section .navigation-row {
position: relative !important;
z-index: 5 !important;
margin-top: 10px !important; 
margin-bottom: 0 !important;
}

.testimonials-section .header-area,
.testimonials-section .cards-grid,
.testimonials-section .navigation-row {
position: relative !important;
z-index: 5 !important;
}

.testimonials-section .header-area {
text-align: center;
margin-bottom: 35px;
}

.testimonials-section .title,
.testimonials-section .title span {
font-family: 'Lora', 'Georgia', serif !important;
font-weight: 700 !important;
}

.testimonials-section .subtitle {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
gap: 12px !important; 
}

.testimonials-section .subtitle::before,
.testimonials-section .subtitle::after {
content: "" !important;
display: inline-block !important;
width: 24px !important; 
height: 2px !important;  
background-color: #e51d24 !important;
}

.testimonials-section .title {
font-size: 40px;
font-weight: 700;
color: hsl(0, 6%, 3%);
margin-bottom: 12px;
letter-spacing: -0.5px;
}
.testimonials-section .title span { color: #e51d24; }
.testimonials-section .description {
color: #300336;
max-width: 620px;
margin: 0 auto;
font-size: 15px;
line-height: 1.6;
}
.cards-grid {
display: flex !important;
flex-direction: row !important;
flex-wrap: wrap !important; 
justify-content: center !important;
align-items: stretch !important;
gap: 32px !important;
width: 100% !important;
max-width: 1200px !important;
margin: 0 auto 40px auto !important; 
}
.testimonials-section .testimonial-card {

background-color: #ffffff !important;
border: 1px solid #eef2f6 !important; 
border-radius: 15px !important; 
padding: 32px 28px !important;  
box-shadow: 0 10px 35px rgba(0, 0, 0, 0.04) !important;

flex: 1 1 calc(33.333% - 22px) !important; 
min-width: 260px !important;   
max-width: 340px !important;    
min-height: 320px !important;   

display: flex !important;
flex-direction: column !important;
justify-content: space-between !important;


background-color: #ffffff !important;
border: 1px solid #dbe1e8 !important; 
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06) !important; 
transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;

}

.testimonials-section .navigation-row {
display: flex !important;
justify-content: space-between !important;
align-items: center !important;
width: 100% !important;
max-width: 1200px !important;
clear: both !important;        
margin-top: 20px !important;  
margin-bottom: 20px !important;   

}

.testimonials-section .testimonial-card:hover {
transform: translateY(-5px) !important;
border: 2.8px solid #f5c7c6 !important; 
padding: 30.5px 26.5px !important; 
box-shadow: 0 15px 35px rgba(252, 218, 217, 0.45) !important; 
}

.testimonials-section .stars-container {
color: #e51d24;
font-size: 15px;
margin-bottom: 16px;
letter-spacing: 3px;
}
.testimonials-section .review-text {
color: #334155;
font-size: 14px;
line-height: 1.6;
margin-bottom: 18px;
}
.testimonials-section .card-divider {
height: 1px;
background-color: #f1f5f9;
width: 100%;
margin-bottom: 16px;
border: none;
}
.testimonials-section .profile-container {
display: flex;
align-items: center;
gap: 12px;
}
.testimonials-section .avatar {
width: 44px;
height: 44px;
border-radius: 50%;
object-fit: cover;
}
.testimonials-section .user-details h4 {
color: #0f172a;
font-size: 14.5px;
font-weight: 700;
margin-bottom: 2px;
}
.testimonials-section .user-details p {
color: #e51d24;
font-size: 12.5px;
font-weight: 600;
}

@media (max-width: 1024px) {
.testimonials-section {
    margin-top: 60px !important;
    padding: 60px 40px 140px 40px !important;
}
.testimonials-section::after {
    height: 80px !important; 
}
}

@media (max-width: 768px) {
.testimonials-section {
    margin-top: 40px !important;
    padding: 40px 20px 100px 20px !important;
}
.testimonials-section::after {
    height: 50px !important; 
}
}

@media (max-width: 768px) {
.testimonials-section {
    padding: 40px 24px !important; 
}
.testimonials-section .testimonial-card { 
    flex: 0 0 100% !important; 
}
}
    
 .testimonials-section .navigation-row {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
max-width: 1200px;
margin-top: 40px;
}

.testimonials-section .arrow-btn {
width: 48px;
height: 48px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.2s ease;
background: none;
}


.testimonials-section .arrow-btn.back {
background-color: #fcdad9;
border: 1px solid #e51d24;
}
.testimonials-section .arrow-btn.back:hover {
background-color: rgba(255, 255, 255, 0.15);
}

.testimonials-section .arrow-btn.next {
background-color: #fcdad9;
border: 1px solid #e51d24;
}

.testimonials-section .arrow-btn svg {
width: 20px;
height: 20px;
fill: none;
stroke: #e51d24;
stroke-width: 2.5;
stroke-linecap: round;
stroke-linejoin: round;
}

.testimonials-section .arrow-btn.back svg {
stroke: #8f3a3a;
}

.testimonials-section .pagination-container {
display: flex;
align-items: center;
gap: 8px;
}

.testimonials-section .page-num {
width: 40px !important;
height: 40px !important;
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
border-radius: 6px !important;
font-size: 14px !important;
font-weight: 600 !important;
cursor: pointer;
transition: all 0.2s ease !important;
background-color: #ffffff !important;
color: #334155 !important;
border: 1px solid #e2e8f0 !important;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02) !important;
}

.testimonials-section .page-num.active {
background-color: #fcdad9 !important; 
border: 1px solid #e51d24 !important;   
color: #e51d24 !important;               
}

.testimonials-section .page-num:not(.active):hover {
border-color: #e51d24 !important;
background-color: #fcdad9 !important;
}

.testimonials-section .page-dots {
color: #64748b !important;
font-weight: 600 !important;
padding: 0 4px !important;
}

@media (max-width: 768px) {
.testimonials-section .arrow-btn {
    width: 42px;
    height: 42px;
}
}

/* ======= FAQ Section ======= */
.faq-section {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
background-color: #ffffff;
padding: 40px 0 60px 0; 
}

.faq-section-inner {
max-width: 1060px; 
width: 100%;
margin: 0 auto;
padding: 20px 40px; 
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
box-sizing: border-box;
background-color: white;
}

.faq-content {
flex: 1.2;
max-width: 540px; 
box-sizing: border-box;
}

.faq-content h2,
.faq-content h2 span {
font-family: 'Playfair Display', 'Georgia', serif !important;
font-size: 34px; 
font-weight: 800;
color: #0b1a4d;
margin-bottom: 24px;
line-height: 1.2;
}

.faq-content h2 span {
color: #e51d24;
}
.faq-content > p {
color: #64748B;
font-size: 14.5px;
font-weight: 500;
margin-bottom: 28px;
}
.faq-list {
display: flex;
flex-direction: column;
gap: 14px;
}
.faq-item {
border: 1.5px solid #e2e5ea;
border-radius: 10px;
overflow: hidden;
background-color: #ffffff;
transition: all 0.3s ease;
}
.faq-item.active {
border-color: #e51d24;
background-color: #fdf1f1;
}
.faq-question {
display: flex;
align-items: center;
justify-content: space-between;
gap: 14px;
padding: 18px 20px;
cursor: pointer;
font-size: 15px;
font-weight: 700;
color: #1e293b;
}
.faq-item.active .faq-question {
color: #e51d24;
}
.faq-question .q-left {
display: flex;
align-items: center;
gap: 12px;
}
.faq-question .q-icon {
width: 22px;
height: 22px;
border-radius: 50%;
border: 1.5px solid #94a3b8;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
color: #94a3b8;
background-color: transparent;
flex-shrink: 0;
transition: all 0.3s ease;
}
.faq-item.active .q-icon {
border-color: #e51d24;
background-color: #e51d24;
color: #ffffff;
}
.faq-question .chevron {
transition: transform 0.3s ease;
color: #94a3b8;
font-size: 13px;
flex-shrink: 0;
}
.faq-item.active .chevron {
transform: rotate(180deg);
color: #e51d24;
}
.faq-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-answer p {
padding: 0 20px 20px 54px;
font-size: 14px;
color: #64748b;
line-height: 1.7;
}
.faq-illustration {
flex: 0.9;
display: flex;
justify-content: center;
align-items: center;
max-width: 380px; 
padding: 0;
margin: 0;
}
.faq-illustration img {
width: 100%;
height: auto;
object-fit: contain;
}
@media (max-width: 1024px) {
.faq-section {
    padding: 0px 40px;
    gap: 30px;
    flex-direction: column;
}
.faq-content, .faq-illustration {
    max-width: 100%;
    width: 100%;
}
.faq-illustration {
    order: 2;
}
}

/* ======= Ready to Study CTA / Booking Section ======= */
.cta-booking-wrapper {
width: 100%;
padding: 60px 40px;
box-sizing: border-box;
display: flex;
justify-content: center;
background-color: #f5f5f5;
}
.cta-booking-card {
max-width: 1200px;
width: 100%;
display: flex;
border-radius: 24px;
overflow: hidden;
border: 1px solid #f3b9bb;
box-shadow: 0 20px 50px rgba(11, 26, 77, 0.08);
}
.cta-booking-left {
flex: 1;
background-color: #1c1c1e;
color: #ffffff;
padding: 48px 44px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: center;
}
.cta-booking-left h2 {
font-family: 'Playfair Display', 'Georgia', serif;
font-size: 32px;
font-weight: 800;
line-height: 1.25;
margin: 0 0 6px;
color: #ffffff;
}
.cta-booking-left h2 .highlight-red {
color: #e51d24;
display: block;
}
.cta-booking-left .cta-sub {
color: #cbd0da;
font-size: 14.5px;
line-height: 1.6;
margin: 16px 0 28px;
max-width: 460px;
}
.cta-booking-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 16px;
}
.cta-booking-list li {
display: flex;
align-items: center;
gap: 12px;
font-size: 14.5px;
font-weight: 600;
color: #f1f1f1;
}
.cta-booking-list li .li-icon {
width: 20px;
height: 20px;
border-radius: 50%;
border: 1.5px solid #e51d24;
color: #e51d24;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
flex-shrink: 0;
}
.cta-booking-right {
flex: 1;
background-color: #ffffff;
padding: 44px 40px;
box-sizing: border-box;
position: relative;
}
.cta-booking-right::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 6px;
background: linear-gradient(90deg, #f2c94c 0%, #e51d24 45%, #e07a1f 100%);
}
.cta-form-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px 20px;
}
.cta-form-group {
display: flex;
flex-direction: column;
gap: 8px;
}
.cta-form-group.full-width {
grid-column: 1 / -1;
}
.cta-form-group label {
font-size: 14.5px;
font-weight: 700;
color: #0f172a;
}
.cta-form-group label .req {
color: #e51d24;
}
.cta-form-group input,
.cta-form-group select {
border: 1px solid #d7dde7;
background-color: #f7f9fc;
border-radius: 8px;
padding: 13px 16px;
font-size: 14px;
color: #1e293b;
font-family: inherit;
outline: none;
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
}
.cta-form-group input::placeholder {
color: #94a3b8;
}
.cta-form-group.select-wrap {
position: relative;
}
.cta-form-group.select-wrap::after {
content: '';
position: absolute;
right: 16px;
bottom: 17px;
width: 10px;
height: 10px;
border-right: 2px solid #334155;
border-bottom: 2px solid #334155;
transform: rotate(45deg);
pointer-events: none;
}
.cta-form-group input:focus,
.cta-form-group select:focus {
border-color: #e51d24;
}
.cta-submit-btn {
grid-column: 1 / -1;
margin-top: 6px;
background-color: #d13b3b;
color: #ffffff;
border: none;
border-radius: 8px;
padding: 16px 20px;
font-size: 15px;
font-weight: 700;
font-family: inherit;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
transition: background-color 0.2s ease;
}
.cta-submit-btn:hover {
background-color: #a71212;
}
.cta-submit-btn svg {
width: 16px;
height: 16px;
}

@media (max-width: 768px) {
.cta-booking-card {
    flex-direction: column;
    border-radius: 18px;
}
.cta-booking-left, .cta-booking-right {
    padding: 36px 28px;
}
.cta-booking-left h2 {
    font-size: 26px;
}
.cta-form-grid {
    grid-template-columns: 1fr;
}
.cta-booking-wrapper {
    padding: 6px 20px;
}
}
@media (max-width: 480px) {
.cta-booking-left h2 {
    font-size: 22px;
}
.cta-booking-left, .cta-booking-right {
    padding: 28px 20px;
}
}

/* ======= Why Choose Us Section (added) ======= */
:root{
--why-navy:#0d1b3e;
--why-navy-deep:#0a1530;
--why-red:#e8222a;
--why-red-soft:#fdeaea;
--why-slate:#5c6b8a;
--why-bg:#f5f7fc;
--why-card-bg:#ffffff;
}

.why-section{
max-width:1200px;
margin:0 auto;
padding:40px 78px 70px;
background:var(--why-bg);
font-family:'Georgia','Times New Roman',serif;
color:var(--why-navy);
}

.why-eyebrow{
text-align:center;
color:var(--why-red);
font-family:Arial, Helvetica, sans-serif;
font-weight:700;
font-size:11px;
letter-spacing:1.2px;
text-transform:uppercase;
display:flex;
align-items:center;
justify-content:center;
gap:10px;
margin-bottom:10px;
}
.why-eyebrow::before, .why-eyebrow::after{
content:"";
width:22px;
height:2px;
background:var(--why-red);
}

.why-title{
text-align:center;
font-size:28px;
font-weight:700;
margin:0 0 10px;
color:var(--why-navy);
}

.why-subtitle{
text-align:center;
font-family:Arial, Helvetica, sans-serif;
color:var(--why-slate);
font-size:13px;
margin:0 0 28px;
}

.why-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto auto;

/* row-gap / column-gap: horizontal gap minimized */
gap: 24px 12px;
}

/* Featured card spans two rows */
.feature-card {
grid-row: 1 / span 3;
grid-column: 1;
position: relative;
border-radius: 16px;
overflow: hidden;

/* Image + Gradient Overlays stacked together */
background: 
    linear-gradient(180deg, rgba(10, 21, 48, 0.55) 0%, rgba(10, 21, 48, 0.88) 65%, rgba(10, 21, 48, 0.97) 100%), 
    radial-gradient(circle at 70% 30%, rgba(28, 44, 92, 0.6) 0%, var(--why-navy-deep) 70%),
    url('roboot.png') center/cover no-repeat; /* Replace 'your-image.jpg' with your image path */

color: #fff;
display: flex;
flex-direction: column;
padding: 24px;
min-height: 400px;
width: 100%;
max-width: none;
}
.feature-icon{
width:36px;
height:36px;
background:var(--why-red);
border-radius:9px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:10px;
}
.feature-icon svg{width:18px;height:18px;stroke:#fff;}

.feature-num{
font-family:Arial, Helvetica, sans-serif;
color:var(--why-red);
font-weight:700;
font-size:11px;
letter-spacing:0.8px;
}

.feature-tag{
font-family:Arial, Helvetica, sans-serif;
color:var(--why-red);
font-weight:700;
font-size:10.5px;
letter-spacing:0.4px;
text-transform:uppercase;
margin-top:22px;
}

.feature-card h2{
font-size:19px;
margin:4px 0 10px;
}

.feature-card p{
font-family:Arial, Helvetica, sans-serif;
color:#d7deee;
font-size:12px;
line-height:1.5;
max-width:280px;
}

.feature-bottom{
margin-top:auto;
padding-top:16px;
border-top:1px solid rgba(255,255,255,0.25);
}

.feature-bottom p{
font-family:Arial, Helvetica, sans-serif;
color:#e9ecf5;
font-size:11.5px;
margin:0;
}

.why-card {
  background: var(--why-card-bg);
  border-radius: 11px;
  padding: 10px;
  box-shadow: 0 2px 10px rgba(20, 30, 70, 0.06);

  /* Prevents grid stretching and locks minimal height */
  align-self: start;
  height: fit-content;
  min-height: 0;
}

.why-card .icon{
width:32px;
height:32px;
background:var(--why-red-soft);
border-radius:8px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:9px;
}
.why-card .icon svg{width:15px;height:15px;stroke:var(--why-red);}

.why-card .num{
font-family:Arial, Helvetica, sans-serif;
color:var(--why-slate);
font-weight:700;
font-size:10.5px;
letter-spacing:0.8px;
margin-bottom:4px;
}

.why-card h3{
font-size:14px;
margin:0 0 6px;
color:var(--why-navy);
}

.why-card p{
font-family:Arial, Helvetica, sans-serif;
color:var(--why-slate);
font-size:11.5px;
line-height:1.5;
margin:0;
}

@media (max-width: 768px) {
.why-grid{grid-template-columns:1fr;}
.feature-card{grid-row:auto;grid-column:auto;min-height:auto;}
}

@media (max-width: 768px) {
.why-section { padding: 30px 20px 50px; }
}

@media (max-width: 480px) {
  .tips-outer {
    padding: 30px 16px;
  }
  .tips-section {
    padding: 24px 16px;
  }
  .why-section {
    padding: 20px 16px 40px;
  }

  .hero-container {
    padding: 16px;
  }

  .hero-content h1 {
    font-size: 22px;
  }

  .hero-content p {
    font-size: 13px;
  }

  .hero-stats {
    padding: 14px 12px;
  }

  .hero-stat {
    padding: 0 12px;
  }

  .hero-stat-label {
    font-size: 11px;
  }

  .hero-stat-value {
    font-size: 13px;
  }

  .info-pill-badge {
    font-size: 11px;
    padding: 6px 14px;
  }

  .shr-item {
    padding: 12px 14px;
  }

  .shr-number {
    font-size: 24px;
  }

  .cta-booking-left h2 {
    font-size: 20px;
  }

  .cta-booking-left, .cta-booking-right {
    padding: 20px 16px;
  }

  .tips-outer {
    padding: 24px 14px;
  }

  .tips-section {
    padding: 20px 14px;
  }

  .why-section {
    padding: 16px 14px 32px;
  }

  .why-card h3 {
    font-size: 13px;
  }

  .why-card p {
    font-size: 10.5px;
  }
}

@media (max-width: 400px) {
  .hero-container {
    padding: 14px 12px;
  }

  .hero-content h1 {
    font-size: 20px;
  }

  .hero-content p {
    font-size: 12px;
    margin-bottom: 18px;
  }

  .hero-stats {
    padding: 12px 10px;
    border-radius: 8px;
  }

  .hero-stat {
    padding: 0 8px;
  }

  .hero-stat-label {
    font-size: 10px;
  }

  .hero-stat-value {
    font-size: 12px;
  }

  .info-pill-badge {
    font-size: 10px;
    padding: 5px 12px;
    margin-bottom: 12px;
  }

  .shr-item {
    padding: 10px 12px;
  }

  .shr-number {
    font-size: 22px;
  }

  .cta-booking-left h2 {
    font-size: 18px;
  }

  .cta-booking-left, .cta-booking-right {
    padding: 18px 14px;
  }

  .cta-form-grid {
    gap: 12px;
  }

  .tips-outer {
    padding: 20px 12px;
  }

  .tips-section {
    padding: 18px 12px;
  }

  .tips-cards-container {
    gap: 14px;
  }

  .why-section {
    padding: 14px 12px 28px;
  }

  .why-card {
    padding: 14px;
  }

  .why-card h3 {
    font-size: 12px;
    margin-bottom: 4px;
  }

  .why-card p {
    font-size: 10px;
  }

  .section {
    padding: 20px 12px;
  }

  .faq-section {
    gap: 24px;
    padding: 24px 12px;
  }

  .faq-section .faq-content h2 {
    font-size: 20px;
  }

  .faq-section .faq-question {
    padding: 12px 14px;
    font-size: 12px;
  }

  .faq-section .faq-answer p {
    font-size: 12px;
    padding: 4px 14px 14px 14px;
  }

  .hero-section {
    min-height: 40vh;
  }
}
