.elementor-1408 .elementor-element.elementor-element-b976f08{--display:flex;overflow:visible;}.elementor-1408 .elementor-element.elementor-element-f732e86{text-align:center;}.elementor-1408 .elementor-element.elementor-element-f732e86 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:75px;font-weight:600;text-decoration:none;-webkit-text-stroke-color:#000;stroke:#000;color:#242370;}.elementor-1408 .elementor-element.elementor-element-6a18113{text-align:center;font-family:"Poppins", Sans-serif;font-size:17px;}.elementor-1408 .elementor-element.elementor-element-6a18113 p{margin-block-end:0px;}.elementor-1408 .elementor-element.elementor-element-35f86b0{--display:flex;overflow:visible;}.elementor-1408 .elementor-element.elementor-element-7efcd4d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}:root{--page-title-display:none;}/* Start custom CSS for heading, class: .elementor-element-f732e86 */.hero-text-section {
    text-align: center;
    max-width: 800px;
    margin: 60px auto;
    padding: 0 20px;
    font-family: 'Playfair Display', 'Georgia', serif; /* Gives it that classic, elegant serif look */
}

.hero-main-title {
    font-size: 48px;
    font-weight: 800;
    color: #111111;
    line-height: 1.2;
    margin-bottom: 24px;
    letter-spacing: -0.5px;
}

.hero-subtitle {
    font-family: 'Poppins', 'Helvetica Neue', sans-serif; /* Clean sans-serif for readability */
    font-size: 16px;
    color: #555555;
    line-height: 1.6;
    max-width: 650px;
    margin: 0 auto;
}

/* Responsive adjustment for mobile screens */
@media (max-width: 600px) {
    .hero-main-title {
        font-size: 32px;
    }
    .hero-subtitle {
        font-size: 14px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a8b9e62 *//* --- Main Container Layout --- */
.custom-hero-section {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding: 60px 40px;
    background-color: #f4f6f8; /* Light grey container background */
    border-radius: 24px;
    max-width: 1200px;
    margin: 40px auto;
    font-family: 'Poppins', sans-serif; /* Standard clean font */
}

/* Desktop Layout: Side-by-Side */
@media (min-width: 768px) {
    .custom-hero-section {
        flex-direction: row;
        align-items: center;
    }
    .hero-content-side, .hero-image-grid {
        flex: 1; /* Splits the space 50/50 */
    }
}

/* --- Left Side Content Styling --- */
.hero-tagline {
    font-size: 12px;
    font-weight: 700;
    color: #2b59c3;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: block;
    margin-bottom: 15px;
}

.hero-title {
    font-size: 38px;
    font-weight: 800;
    color: #1a2340;
    line-height: 1.2;
    margin-bottom: 20px;
}

.hero-description {
    font-size: 16px;
    color: #555e70;
    line-height: 1.6;
    margin-bottom: 30px;
}

/* --- Stats Row Styling --- */
.hero-stats-container {
    display: flex;
    gap: 20px;
}

.stat-card {
    background-color: rgba(255, 255, 255, 0.6);
    padding: 15px 20px;
    border-radius: 12px;
    min-width: 140px;
}

.stat-number {
    display: block;
    font-size: 28px;
    font-weight: 700;
    color: #2b59c3;
}

.stat-label {
    font-size: 11px;
    color: #6b7280;
    line-height: 1.3;
}

/* --- Right Side 2x2 Grid Styling --- */
.hero-image-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
}

.grid-card {
    aspect-ratio: 1 / 1; /* Keeps cards perfectly square */
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
}

/* Color Matching from Canva Mockup */
.photo-workshop {
    background-color: #f1efeb;
    color: #7d7a75;
}

.photo-student {
    background-color: #0091de;
    color: #ffffff;
}

.photo-discussion {
    background-color: #1d2671;
    color: #ffffff;
}

.photo-presentation {
    background-color: #e5e5e0;
    color: #7d7a75;
}/* End custom CSS */