@import url('https://fonts.googleapis.com/css?family=Ubuntu:400,500,700&display=swap');

/* SSLA Theme Styles */
body {
    font-family: 'Ubuntu', Arial, sans-serif;
    margin: 0;
    padding: 0;
    background: #fff;
    color: #1a2a32;
}

.site-header {
    background: #fff;
    padding-bottom: 0;
}
.header-logo-row {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 1.5rem;
    padding-bottom: 0.5rem;
}
.header-divider {
    width: 96%;
    height: 4px;
    background: #c3a43b;
    margin: 0 auto 0.5rem auto;
    border-radius: 2px;
}
.logo {
    height: 90px;
}
.main-nav {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 0;
}
.main-nav ul {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin: 0;
    padding: 0 0 0.5rem 0;
}
.main-nav li {
    display: flex;
    align-items: center;
}
.main-nav a {
    text-decoration: none;
    color: #1a2a32;
    font-weight: 400;
    font-size: 1.5rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    padding: 0 0.2rem;
    transition: color 0.2s;
    position: relative;
    background: none;
    border: none;
}
.main-nav a.active,
.main-nav a:hover {
    color: #c3a43b;
}
.main-nav a.active::after,
.main-nav a:hover::after {
    content: '';
    display: block;
    width: 70%;
    height: 3px;
    background: #c3a43b;
    border-radius: 2px;
    margin: 0.2rem auto 0 auto;
}
.main-nav .cta-btn {
    background: #c3a43b;
    color: #fff;
    padding: 0.4rem 1.2rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1.25rem;
    margin-left: 1.5rem;
    transition: background 0.2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    border: none;
    cursor: pointer;
    line-height: 1.2;
    display: inline-block;
}
.main-nav .cta-btn:hover {
    background: #a88d2b;
    color: #fff;
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.site-footer {
    background: #18425d;
    color: #fff;
    padding: 0 0 2.5rem 0;
    position: relative;
}
.footer-divider {
    width: 80%;
    height: 3px;
    background: #e0eaf0;
    margin: 20px auto 2.5rem auto;
    border-radius: 2px;
    opacity: 0.9;
}
.footer-main {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2.5rem;
    padding: 0 2vw 2.5rem 2vw;
}
.footer-col {
    flex: 1 1 0;
    min-width: 220px;
}
.footer-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.2rem;
}
.footer-logo {
    width: 120px;
    margin-bottom: 0.5rem;
}
.footer-academy {
    font-size: 2rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    margin-bottom: 0.5rem;
}
.footer-tagline {
    font-size: 1rem;
    color: #e0eaf0;
    margin-bottom: 1.2rem;
    max-width: 320px;
}
.footer-socials {
    display: flex;
    gap: 1.2rem;
    margin-top: 0.5rem;
}
.footer-social svg {
    display: block;
}
.footer-links-title {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
    font-family: 'Ubuntu', Arial, sans-serif;
}
.footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-links ul li {
    margin-bottom: 1rem;
}
.footer-links ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    transition: color 0.2s;
}
.footer-links ul li a:hover {
    color: #c3a43b;
}
.footer-contact {
    font-size: 1rem;
    color: #fff;
    font-family: 'Ubuntu', Arial, sans-serif;
}
.footer-bottom {
    text-align: center;
    color: #e0eaf0;
    font-size: 1rem;
    margin-top: 2.5rem;
    font-family: 'Ubuntu', Arial, sans-serif;
}
.scroll-to-top {
    position: fixed;
    bottom: 2.5rem;
    right: 2.5rem;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 2000;
    padding: 0;
    transition: opacity 0.2s;
    opacity: 0.8;
}
.scroll-to-top:hover {
    opacity: 1;
}
@media (max-width: 1100px) {
    .footer-main {
        flex-direction: column;
        align-items: center;
        gap: 2.5rem;
        padding: 0 1vw 2.5rem 1vw;
    }
    .footer-col {
        min-width: 0;
        width: 100%;
        align-items: center;
        text-align: center;
    }
    .footer-brand {
        align-items: center;
    }
    .footer-tagline {
        max-width: 100%;
    }
}
@media (max-width: 700px) {
    .footer-logo {
        width: 80px;
    }
    .footer-academy {
        font-size: 1.2rem;
    }
    .footer-main {
        gap: 1.2rem;
        padding: 0 0.5vw 1.5rem 0.5vw;
    }
    .footer-bottom {
        font-size: 0.9rem;
        margin-top: 1.2rem;
    }
    .scroll-to-top svg{
        bottom: 1.2rem;
        right: 1.2rem;
        width: 10px;
        height: 10px;
        margin-bottom: 10rem;
        margin-right: 7rem;
    }
}
/* Hamburger styles */
.hamburger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1002;
    position: relative;
}
.hamburger span {
    display: block;
    width: 50px;
    height: 2px;
    margin: 4px 0;
    background: #1a2a32;
    border-radius: 2px;
    transition: 0.3s;
}
.close-menu {
    display: none;
}
@media (max-width: 900px) {
    .hamburger {
        display: flex;
        margin: 1.2rem auto 0.5rem auto;
        position: static;
    }
    .main-nav {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: #fff;
        box-shadow: none;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        padding-top: 0;
        z-index: 1001;
        transform: translateX(-100%);
        transition: transform 0.3s;
    }
    .main-nav.open {
        transform: translateX(0);
    }
    .main-nav .close-menu {
        display: block;
        margin: 1rem auto 1rem auto;
        background: #fff;
        border: 2px solid #bfc8c9;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        font-size: 1.8rem;
        color: #18425d;
        text-align: center;
        line-height: 36px;
        cursor: pointer;
        z-index: 1003;
    }
    .main-nav ul {
        flex-direction: column;
        gap: 1.8rem;
        width: 100%;
        padding: 0 0 0 0;
        align-items: flex-start;
    }
    .main-nav ul li {
        width: 100%;
    }
    .main-nav ul li a {
        font-size: 1.35rem;
        font-family: 'Ubuntu', Arial, sans-serif;
        color: #18425d;
        font-weight: 400;
        padding: 0.7rem 2.5rem;
        display: block;
        text-align: left;
        border-radius: 0;
        border: none;
        background: none;
        transition: color 0.2s;
    }
    .main-nav ul li a.active, .main-nav ul li a:hover {
        color: #c3a43b;
    }
    .header-logo-row {
        justify-content: center;
        width: 100%;
        padding-right: 0;
    }
    .header-divider {
        margin-bottom: -1.2rem;
    }
}

@media (max-width: 700px) {
    main-nav .close-menu{
        display: block;
        margin: 2rem auto 1.5rem auto;
        background: #fff;
        border: 2px solid #bfc8c9;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        font-size: 1.8rem;
        color: #18425d;
        text-align: center;
        line-height: 36px;
        cursor: pointer;
        z-index: 1003;
    }
    }
/* Hero Section */
.hero {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    background: #fff;
    padding: 3.5rem 0 0 0;
    min-height: 500px;
    gap: 3rem;
    position: relative;
}
.hero-content {
    flex: 1 1 60%;
    max-width: 600px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin-left: 8vw;
}
.hero-title {
    font-size: 4rem;
    font-weight: 400;
    color: #1a2a32;
    margin-bottom: 2rem;
    line-height: 1.1;
    letter-spacing: 2px;
}
.hero-desc {
    font-size: 1.1rem;
    color: #1a2a32;
    margin-bottom: 2.5rem;
    max-width: 90%;
}
.hero-buttons {
    display: flex;
    gap: 1.5rem;
}
.hero-btn {
    font-size: 1.25rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    border-radius: 8px;
    padding: 0.4rem 1.2rem;
    border: 2px solid #c3a43b;
    background: #fff;
    color: #c3a43b;
    cursor: pointer;
    margin-right: 1rem;
    transition: background 0.2s, color 0.2s;
    text-decoration: none;
    display: inline-block;
}
.hero-btn-primary {
    background: #fff;
    color: #c3a43b;
}
.hero-btn-primary:hover {
    background: #c3a43b;
    color: #fff;
}
.hero-btn-secondary {
    background: #c3a43b;
    color: #fff;
    border: 2px solid #c3a43b;
}
.hero-btn-secondary:hover {
    background: #fff;
    color: #c3a43b;
}
.hero-btn:last-child {
    margin-right: 0;
}
.hero-image {
    flex: 1 1 40%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hero-icon-box {
    background: linear-gradient(100deg, #eeebfd 0%, #fdf0d7 100%);
    border-radius: 48px;
    width: 538px;
    height: 538px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    padding: 0;
}
.hero-icon-box img {
    width: 320px;
    height: 320px;
    object-fit: contain;
}
.hero-arrow {
    position: absolute;
    right: 3rem;
    bottom: -10rem;
    width: 50px;
    height: 70px;
}

/* Section Spacing */
section {
    padding: 3rem 0;
}

/* Responsive */
@media (max-width: 1100px) {
    .hero {
        flex-direction: column;
        align-items: center;
        gap: 2rem;
    }
    .hero-content, .hero-image {
        max-width: 100%;
        margin-left: 0;
    }
    .hero-icon-box img {
        width: 120px;
        height: 120px;
    }
}

@media (max-width: 700px) {
    .hero {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.2rem;
        padding: 1.5rem 0 0 0;
    }
    .hero-content {
        max-width: 100%;
        margin-left: 0;
        align-items: flex-start;
        width: 100%;
        padding-left: 1.2rem;
        padding-right: 1.2rem;
    }
    .hero-title {
        font-size: 2.2rem;
        text-align: left;
        margin-bottom: 1.2rem;
    }
    .hero-desc {
        font-size: 1rem;
        text-align: left;
        margin-bottom: 1.2rem;
    }
    .hero-buttons {
        flex-direction: row;
        gap: 0.7rem;
        width: 100%;
        margin-bottom: 1.2rem;
    }
    .hero-btn {
        width: auto;
        min-width: 110px;
        font-size: 1rem;
        padding: 0.4rem 0.8rem;
    }
    .hero-image {
        width: 100%;
        display: flex;
        justify-content: center;
        margin-top: 1.2rem;
    }
    .hero-icon-box {
        padding: 0;
        width: 90vw;
        max-width: 320px;
        height: 320px;
        margin: 0 auto;
    }
    .hero-icon-box img, .welcome-svg {
        width: 120px;
        height: 120px;
    }
    .hero-arrow {
        position: relative;
        display: block;
        right: auto;
        left: 0;
        bottom: 0;
        margin: 1.2rem auto 0 auto;
        width: 40px;
        height: 60px;
    }

}



.welcome-animation {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: relative;
}

.welcome-animation svg text, .welcome-animation svg tspan {
    font-family: 'Ubuntu', Arial, sans-serif;
  }
.welcome-svg {
    width: 80px;
    height: 80px;
    position: absolute;
    opacity: 0;
    transition: opacity 0.3s;
}
.welcome-svg.active {
    opacity: 1;
    z-index: 2;
}

/* Why Choose */

.why-choose {
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
    text-align: center;
}
.why-choose-divider {
    width: 90%;
    max-width: 1400px;
    height: 3px;
    background: #c3a43b;
    margin: 10rem auto 2.5rem auto;
    border-radius: 2px;
}
.why-choose-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 3rem;
    font-weight: 400;
    color: #1a2a32;
    margin-bottom: 1.2rem;
    letter-spacing: 1px;
}
.why-choose-subtitle {
    color: #c3a43b;
    font-size: 1.4rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 3.5rem;
    font-weight: 500;
}
.why-choose-cards {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 2.5rem;
    flex-wrap: wrap;
}
.why-choose-card {
    background: #fff;
    border: 2px solid #bfc8c9;
    border-radius: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.03);
    padding: 2.5rem 2rem 2rem 2rem;
    width: 230px;
    min-height: 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.why-choose-card:hover {
    box-shadow: 0 6px 24px rgba(195,164,59,0.10);
    border-color: #c3a43b;
}
.card-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 1.6rem;
    color: #1a2a32;
    font-weight: 500;
    margin-bottom: 2rem;
    letter-spacing: 1px;
}
.card-desc {
    color: #c3a43b;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
    margin-top: 0.2rem;
}
.card-icon {
    margin-bottom: 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
}
.card-icon svg {
    width: 48px;
    height: 48px;
    display: block;
}
@media (max-width: 1200px) {
    .why-choose-cards {
        gap: 1.2rem;
    }
    .why-choose-card {
        width: 240px;
        padding: 2rem 1.2rem 1.5rem 1.2rem;
    }
}
@media (max-width: 900px) {

    .why-choose {
        margin-top: -5rem;
        margin-bottom: -10rem;
    }

    .why-choose-title {
        font-size: 1.5rem;
        margin-bottom: 0.7rem;
    }
    .why-choose-subtitle {
        font-size: 0.8rem;
        margin-bottom: 2rem;
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }
    .why-choose-cards {
        flex-wrap: wrap;
        gap: 1.2rem;
    }
    .why-choose-card {
        width: 70vw;
        max-width: 350px;
        margin: 0 auto;
    }
    .card-title {
        font-size: 1.2rem;
    }
    .card-desc {
        font-size: 1rem;
    }
}


/* Mission & Vision */

.mission-vision {
    margin: 6rem 0 4rem 0;
}
.mission-vision-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4rem;
    max-width: 1400px;
    margin: 0 auto;
    flex-wrap: wrap;
}
.mission-vision-image-col {
    position: relative;
    min-width: 380px;
    max-width: 650px;
    flex: 1 1 540px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
}
.mission-vision-image {
    position: relative;
    width: 100%;
    max-width: 650px;
    border-radius: 0.5rem;
    z-index: 2;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);
}
.mission-vision-years {
    position: absolute;
    bottom: 2.5rem;
    left: 2.5rem;
    background: #18425d;
    color: #fff;
    border-radius: 12px;
    padding: 1.2rem 2.2rem 1rem 2.2rem;
    z-index: 3;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.years-main {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.2rem;
    font-family: 'Ubuntu', Arial, sans-serif;
}
.years-sub {
    color: #c3a43b;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
}
.mission-vision-content {
    flex: 1 1 480px;
    max-width: 600px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.mission-vision-title {
    font-size: 3rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #18425d;
    font-weight: 400;
    margin-bottom: 1.5rem;
}
.mission-vision-lead {
    font-size: 1.6rem;
    color: #18425d;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 2.2rem;
    line-height: 1.2;
}
.mission-vision-list {
    margin: 0 0 2.5rem 0;
    padding: 0;
    list-style: none;
}
.mission-vision-list li {
    font-size: 1.15rem;
    color: #18425d;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 1.2rem;
    position: relative;
    padding-left: 1.5rem;
}
.mission-vision-list li:before {
    content: '\2022';
    color: #c3a43b;
    font-size: 1.5rem;
    position: absolute;
    left: 0;
    top: 0.1rem;
}
.mission-vision-link {
    color: #c3a43b;
    font-size: 1.15rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    text-decoration: none;
    font-weight: 500;
    margin-top: 0.5rem;
    transition: color 0.2s;
}
.mission-vision-link:hover {
    color: #18425d;
}
@media (max-width: 1100px) {
    .mission-vision-container {
        flex-direction: column;
        gap: 2.5rem;
        align-items: flex-start;
    }
    .mission-vision-image-col, .mission-vision-content {
        max-width: 98vw;
        width: 100%;
    }
    .mission-vision-image-bg {
        left: 0;
        top: 24px;
    }
    .mission-vision-years {
        left: 1.2rem;
        bottom: 1.2rem;
        padding: 1rem 1.5rem 0.8rem 1.5rem;
    }
}
@media (max-width: 700px) {
    .mission-vision {
        margin-top: -5rem;
        margin-bottom: -10rem;
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }
    .mission-vision-image-col {
        min-width: 0;

    }
    .mission-vision-image {
        max-width: 90vw;

    }

    .mission-vision-title {
        font-size: 2rem;
    }
    .mission-vision-lead {
        font-size: 1.1rem;
    }
    .years-main {
        font-size: 1.2rem;
    }
    .years-sub {
        font-size: 0.9rem;
    }
}

/* Featured Courses */

.featured-courses {
    margin: 6rem 0 4rem 0;
}
.featured-courses-container {
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 2vw;
}
.featured-courses-title {
    font-size: 3.2rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #18425d;
    font-weight: 400;
    margin-bottom: 1.2rem;
    text-align: left;
    margin-left: 1.5vw;
}
.featured-courses-subtitle {
    color: #18425d;
    font-size: 1.4rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 3.5rem;
    font-weight: 400;
    text-align: left;
    margin-left: 1.5vw;
}
.featured-courses-cards {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 3rem;
    flex-wrap: wrap;
}
.featured-course-card {
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    width: 420px;
    min-height: 480px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    overflow: hidden;
    border: 1.5px solid #f2f2f2;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.featured-course-card:hover {
    box-shadow: 0 6px 24px rgba(195,164,59,0.10);
    border-color: #c3a43b;
}
.course-image-placeholder {
    background: #f5f5f5;
    width: 100%;
    height: 220px;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
}
.course-card-content {
    padding: 2.2rem 1.8rem 2.2rem 1.8rem;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    justify-content: flex-end;
}
.course-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 1.6rem;
    color: #18425d;
    font-weight: 500;
    margin-bottom: 1.2rem;
}
.course-desc {
    color: #18425d;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
    margin-bottom: 2.2rem;
}
.course-btn {
    border: 1.5px solid #c3a43b;
    color: #18425d;
    background: #fff;
    border-radius: 12px;
    padding: 0.9rem 0;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
    width: 100%;
    display: block;
}
.course-btn:hover {
    background: #c3a43b;
    color: #fff;
}

.featured-courses-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    gap: 2rem;
}
.view-all-courses-btn {
    border: 1.5px solid #c3a43b;
    color: #c3a43b;
    background: #fff;
    border-radius: 8px;
    padding: 0.5rem 1.2rem;
    font-size: 1.05rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
    margin-top: 3rem;
    margin-right: 7vw;
    box-shadow: 0 1px 4px rgba(0,0,0,0.03);
    display: inline-block;
}
.view-all-courses-btn:hover {
    background: #c3a43b;
    color: #fff;
}
@media (max-width: 1300px) {
    .featured-courses-cards {
        gap: 1.5rem;
    }
    .featured-course-card {
        width: 340px;
        min-height: 420px;
    }
}
@media (max-width: 1000px) {
    .featured-courses-cards {
        flex-wrap: wrap;
        justify-content: center;
    }
    .featured-course-card {
        width: 90vw;
        max-width: 400px;
        margin: 0 auto;
    }
}


@media (max-width: 700px) {
    .featured-courses {
        margin-top: 15rem;
        margin-bottom: 3rem;
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }
    .featured-courses-title {
        font-size: 2rem;
    }
    .featured-courses-subtitle {
        font-size: 1.1rem;
        margin-top: 1.5rem;
    }
    .view-all-courses-btn {
        margin-top: 0.5rem;
    }

    .featured-courses-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8rem;
    }
    .view-all-courses-btn {
        margin-right: 0;
    }
}


/* Testimonials */

.testimonials {
    margin: 6rem 0 4rem 0;
}
.testimonials-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2vw;
    text-align: center;
}
.testimonials-title {
    font-size: 2.6rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #18425d;
    font-weight: 400;
    margin-bottom: 1.2rem;
}
.testimonials-subtitle {
    color: #18425d;
    font-size: 1.15rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 3.5rem;
    font-weight: 400;
}
.testimonials-cards {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 3rem;
    flex-wrap: wrap;
    margin-left: 1vw;
}
.testimonial-card {
    background: #fff;
    border-radius: 12px;
    border: 1.5px solid #bfc8c9;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    width: 340px;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 1.2rem 1.2rem 1.2rem 1.2rem;
    position: relative;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.testimonial-card:hover {
    box-shadow: 0 6px 24px rgba(195,164,59,0.10);
    border-color: #c3a43b;
}
.testimonial-quote {
    font-size: 2rem;
    color: #18425d;
    font-family: serif;
    margin-bottom: 0.7rem;
    font-weight: bold;
}
.testimonial-text {
    color: #18425d;
    font-size: 0.98rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
    margin-bottom: 2.2rem;
    text-align: left;
}
.testimonial-student {
    display: flex;
    align-items: center;
    margin-top: auto;
    gap: 0.6rem;
}
.testimonial-avatar {
    width: 20px;
    height: 20px;
    background: #c3a43b;
    border-radius: 50%;
    display: inline-block;
}
.testimonial-name {
    color: #18425d;
    font-size: 0.98rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
}
@media (max-width: 1100px) {
    .testimonials-cards {
        gap: 1.2rem;
    }
    .testimonial-card {
        width: 90vw;
        max-width: 400px;
        margin: 0 auto;
    }
}
@media (max-width: 700px) {
    .testimonials {

        margin-bottom: 3rem;
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }
    .testimonials-title {
        font-size: 2rem;
    }
    .testimonials-subtitle {
        font-size: 1.1rem;
        margin-top: 1.5rem;
    }
}

/* Enquire Section */
.enquire-section {
    background: linear-gradient(90deg, #eae8fa 0%, #f9eedf 100%);
    padding: 4rem 0 4rem 0;
    width: 100%;
}
.enquire-container {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.enquire-title {
    color: #c3a43b;
    font-size: 3rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    margin-bottom: 1.2rem;
}
.enquire-subtitle {
    color: #18425d;
    font-size: 1.3rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 2.5rem;
}
.enquire-form {
    width: 100%;
    max-width: 700px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.2rem;
}
.enquire-form-row {
    display: flex;
    gap: 1.2rem;
    width: 100%;
    margin-bottom: 0.5rem;
}
.enquire-input {
    flex: 1 1 0;
    padding: 1rem 1.2rem;
    border-radius: 8px;
    border: none;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    background: #fff;
    color: #18425d;
    margin-bottom: 0;
    outline: none;
}
.enquire-input::placeholder {
    color: #bfc8c9;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
}
.enquire-textarea {
    width: 100%;
    min-height: 140px;
    border-radius: 10px;
    border: none;
    padding: 1rem 1.2rem;
    font-size: 1.1rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    background: #fff;
    color: #18425d;
    resize: vertical;
    outline: none;
}
.enquire-btn {
    background: #c3a43b;
    color: #fff;
    border: none;
    border-radius: 24px;
    padding: 0.9rem 3.5rem;
    font-size: 1.5rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 500;
    margin-top: 1.5rem;
    cursor: pointer;
    transition: background 0.2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.enquire-btn:hover {
    background: #a88d2b;
}
@media (max-width: 700px) {
    .enquire-section {
        margin-top: 10rem;
        margin-bottom: 3rem;

    }
    .enquire-container {
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }
    .enquire-title {
        font-size: 2rem;
    }
    .enquire-subtitle {
        font-size: 1rem;
        margin-bottom: 1.2rem;
    }
    .enquire-form-row {
        flex-direction: column;
        gap: 0.7rem;
    }
    .enquire-form {
        padding: 0 0.5rem;
    }
    .enquire-btn {
        width: 100%;
        padding: 0.9rem 0;
        font-size: 1.1rem;
    }
    .enquire-input, .enquire-textarea {
        font-size: 1rem;
        padding: 0.8rem 1rem;
    }
    .enquire-textarea {
        min-height: 100px;
        max-width: 85vw;
    }
    .enquire-input::placeholder, .enquire-textarea::placeholder {
        font-size: 1rem;
    }

}



/* Partners Section */
.partners-section {
    background: #fff;
    padding: 5rem 0 5rem 0;
    width: 100%;
}
.partners-container {
    max-width: 1400px;
    margin: 0 auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.partners-title {
    color: #18425d;
    font-size: 2.6rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
    margin-bottom: 1.2rem;
}
.partners-subtitle {
    color: #18425d;
    font-size: 1.15rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 3.5rem;
    font-weight: 400;
}
.partners-logos {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 2.5rem;
    flex-wrap: wrap;
}
.partner-logo-box {
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    width: 220px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.partner-logo-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
@media (max-width: 1100px) {
    .partners-logos {
        gap: 1.2rem;
    }
    .partner-logo-box {
        width: 150px;
        height: 150px;
        padding: 1rem;
    }
}
@media (max-width: 700px) {
    .partners-section {
        margin-bottom: 3rem;

    }
    .partners-title {
        font-size: 2rem;
    }
    .partners-subtitle {
        font-size: 1rem;
        margin-bottom: 3rem;
    }
    .partners-logos {
        flex-direction: column;
        gap: 1.5rem;
        align-items: center;
    }
    .partner-logo-box {
        width: 80vw;
        max-width: 320px;
        height: 100px;
        padding: 0.5rem;
    }
}

/* ========================= About Us Hero Section ========================= */
.about-hero {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
    min-height: 200px;
    background: linear-gradient(90deg, #eae8fa 0%, #f9eedf 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 0 90px 0;
    margin-top: 100px;
}
.about-hero-inner {
    width: 100%;
    max-width: 1100px;
    text-align: center;
}
.about-hero-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 4rem;
    font-weight: 400;
    color: #1a2a32;
    margin-bottom: 2.2rem;
    letter-spacing: 1px;
}
.about-hero-subtitle {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 1.5rem;
    color: #c3a43b;
    font-weight: 400;
    margin: 0 auto;
    max-width: 900px;
}
@media (max-width: 700px) {
    .about-hero {
        min-height: 220px;
        padding: 40px 0 60px 0;
    }
    .about-hero-title {
        font-size: 2.2rem;
    }
    .about-hero-subtitle {
        font-size: 1.1rem;
    }
}

/* ========================= Mission & Values Section ========================= */
.mission-values {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 10rem 0 10rem 0;
}
.mission-values-container {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    max-width: 1300px;
    margin: 0 auto;
    gap: 3rem;
    flex-wrap: wrap;
}
.mission-values-left {
    flex: 1 1 480px;
    min-width: 320px;
    max-width: 600px;
    padding-top: 1.5rem;
}
.mission-title {
    font-size: 3rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #1a2a32;
    font-weight: 400;
    margin-bottom: 1.2rem;
}
.mission-text {
    font-size: 1.5rem;
    color: #18425d;
    font-family: 'Ubuntu', Arial, sans-serif;
    margin-bottom: 1.2rem;
    line-height: 1.25;
}
.values-title {
    font-size: 2.5rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #1a2a32;
    font-weight: 400;
    margin: 2.5rem 0 1.2rem 0;
}
.values-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.values-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.7rem;
    margin-bottom: 0.5rem;
}
 li .value-desc {
    margin-top: -0.9rem;
    padding-left: 2.3rem;
    text-align: left;
}
.value-icon {
    margin-top: 0.2rem;
    flex-shrink: 0;
}
.value-main {
    font-size: 1.3rem;
    font-family: 'Ubuntu', Arial, sans-serif;
    color: #1a2a32;
    font-weight: 500;
    margin-right: 0.5rem;
}
.value-desc {
    font-size: 1.05rem;
    color: #18425d;
    font-family: 'Ubuntu', Arial, sans-serif;
    font-weight: 400;
    margin-left: 0.2rem;
}
.mission-values-right {
    flex: 1 1 420px;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1.2rem;
    margin-top: 0.5rem;
}
.mission-box {
    border-radius: 16px;
    background: linear-gradient(120deg, #eae8fa 0%, #f9eedf 100%);
}
.mission-box-lg {
    width: 380px;
    height: 150px;
    margin-bottom: 1.2rem;
}
.mission-box-row {
    display: flex;
    gap: 1.2rem;
    width: 100%;
}
.mission-box-sm {
    width: 180px;
    height: 130px;
}
.mission-box-md {
    width: 380px;
    height: 210px;
    margin-top: 1.2rem;
}
@media (max-width: 1100px) {
    .mission-values-container {
        flex-direction: column;
        gap: 2.5rem;
        align-items: flex-start;
    }
    .mission-values-right {
        flex-direction: row;
        gap: 1.2rem;
        align-items: flex-start;
        margin-top: 0;
    }
    .mission-box-lg, .mission-box-md {
        width: 220px;
    }
    .mission-box-row {
        flex-direction: column;
        gap: 1.2rem;
    }
    .mission-box-sm {
        width: 100px;
        height: 80px;
    }
    .mission-box-md {
        height: 120px;
    }
}
@media (max-width: 700px) {
    .mission-values {
        padding: 5rem 0 5rem 0;
    }
    .mission-values-container{
        margin-left: 1.2rem;
        margin-right: 1.2rem;
    }

    .mission-title, .values-title {
        font-size: 2rem;
    }
    .mission-text {
        font-size: 1rem;
    }
    .mission-values-container {
        flex-direction: column;
        gap: 1.2rem;
        padding: 0 0.5rem;
    }
    .mission-values-left, .mission-values-right {
        max-width: 100vw;
        min-width: 0;
        width: 100%;
        padding: 0;
    }
    .mission-values-right {
        flex-direction: column;
        align-items: stretch;
        gap: 0.7rem;
    }
    .mission-box-lg, .mission-box-md {
        width: 100%;
        min-width: 0;
        height: 80px;
    }
    .mission-box-row {
        flex-direction: row;
        gap: 0.7rem;
    }
    .mission-box-sm {
        width: 50%;
        min-width: 0;
        height: 60px;
    }
    .mission-box-md {
        height: 80px;
    }
}

/* ========================= Meet Our Team Section =========================     */
.meet-our-team {
  width: 100%;
  padding: 2rem 0 2rem 0;
  background: #fff;
}
.meet-team-inner {
  max-width: 1400px;
  margin: 0 auto;
  text-align: center;
}
.team-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.team-subtitle {
  color: #c3a43b;
  font-size: 1.4rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 3.5rem;
  font-weight: 500;
}
.team-cards {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 2.2rem;
  flex-wrap: wrap;
}
.team-card {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  width: 230px;
  min-height: 270px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  overflow: hidden;
  border: 1.5px solid #f2f2f2;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.team-card-img {
  width: 100%;
  height: 270px;
  background: linear-gradient(120deg, #eae8fa 0%, #f9eedf 100%);
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.team-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  display: block;
}
.team-card-name {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.2rem;
  color: #1a2a32;
  font-weight: 400;
  padding: 1.2rem 0 1.2rem 0;
}
.team-card-position {
  text-align: center;
  font-size: 1.05rem;
  color: #c3a43b;
  margin-top: 0.2rem;
  margin-bottom: 1.2rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
}
@media (max-width: 1200px) {
  .team-cards {
    gap: 1.2rem;
  }
  .team-card {
    width: 180px;
    min-height: 220px;
  }
  .team-card-img {
    height: 120px;
  }
}
@media (max-width: 900px) {
  .team-cards {
    flex-wrap: wrap;
    gap: 1.2rem;
  }
  .team-card {
    width: 45vw;
    max-width: 220px;
    min-width: 120px;
  }
}
@media (max-width: 700px) {
  .team-title {
    font-size: 1.5rem;
  }
  .team-subtitle {
    font-size: 1.05rem;
    margin-bottom: 2rem;
  }
  .team-cards {
    flex-direction: column;
    gap: 1.2rem;
    align-items: center;
  }
  .team-card {
    width: 90vw;
    min-height: 270px;
    max-width: 320px;
    min-width: 0;
  }
  .team-card-img {
    height: 350px;
  }
}

/* ========================= Our Journey Section ========================= */
.our-journey-image {
  width: 100%;
  padding: 10rem 0 10rem 0;
  background: #fff;
}
.journey-image-inner {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}
.journey-title {
  font-size: 2.5rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 0.7rem;
  letter-spacing: 2px;
}
.journey-subtitle {
  color: #c3a43b;
  font-size: 1.1rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 3.5rem;
  font-weight: 500;
}
.journey-image-wrapper {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.journey-map-img {
  max-width: 100%;
  height: auto;

}
@media (max-width: 700px) {
  .journey-image-inner {
    margin-left: 1.2rem;
    margin-right: 1.2rem;
  }
  .journey-title {
    font-size: 2rem;
  }
  .journey-subtitle {
    font-size: 1rem;
  }
}
/* ========================= Our Impact Section ========================= */

.our-impact {
  width: 100%;
  padding: 5rem 0 5rem 0;
  margin-top: 5rem;
  margin-bottom: 15rem;
  background: linear-gradient(100deg, #eeebfd 0%, #fdf0d7 100%);
}
.impact-inner {
  max-width: 1400px;
  margin: 0 auto;
  text-align: center;
}
.impact-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.impact-subtitle {
  color: #c3a43b;
  font-size: 1.4rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 4.5rem;
  font-weight: 500;
}
.impact-stats {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 6vw;
  flex-wrap: wrap;
}
.impact-stat {
  min-width: 180px;
  margin-bottom: 2rem;
}
.impact-number {
  font-size: 2.5rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 500;
  margin-bottom: 0.7rem;
  letter-spacing: 2px;
}
.impact-label {
  font-size: 1.3rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-top: 0.2rem;
}
@media (max-width: 900px) {
  .impact-stats {
    gap: 2vw;
  }
  .impact-title {
    font-size: 2rem;
  }
  .impact-subtitle {
    font-size: 1.1rem;
    margin-bottom: 2.2rem;
  }
  .impact-number {
    font-size: 1.5rem;
  }
  .impact-label {
    font-size: 1rem;
  }
}
@media (max-width: 600px) {
  .impact-stats {
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
  }
  .impact-stat {
    min-width: 0;
    width: 100%;
  }
}

/* ========================= Services Hero Section ========================= */
.services-hero {
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
  min-height: 200px;
  background: linear-gradient(100deg, #eeebfd 0%, #fdf0d7 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 50px 0 90px 0;
  margin-top: 100px;
}
.services-hero-inner {
  width: 100%;
  max-width: 1100px;
  text-align: center;
}
.services-hero-title {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 4rem;
  font-weight: 400;
  color: #1a2a32;
  margin-bottom: 2.2rem;
  letter-spacing: 1px;
}
.services-hero-subtitle {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.5rem;
  color: #c3a43b;
  font-weight: 400;
  margin: 0 auto;
  max-width: 900px;
}
@media (max-width: 700px) {
  .services-hero {
    min-height: 180px;
    padding: 40px 0 60px 0;
  }
  .services-hero-title {
    font-size: 2.2rem;
  }
  .services-hero-subtitle {
    font-size: 1.1rem;
  }
}

/* ========================= Service Interpretation Section ========================= */
.service-interpretation {
  width: 100%;
  background: #fff;
  padding: 4rem 0 4rem 0;
}
.service-interpretation-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.service-interpretation-left {
  flex: 1 1 520px;
  min-width: 320px;
  max-width: 700px;
  padding: 2.5rem 2vw 2.5rem 6vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-interpretation-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2.2rem;
  letter-spacing: 2px;
}
.service-interpretation-desc {
  font-size: 1.6rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  font-weight: 400;
  max-width: 600px;
}
.service-interpretation-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.service-interpretation-list li {
  font-size: 1.25rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 2.2rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
}
.check-icon {
  display: inline-block;
  width: 28px;
  height: 28px;
  background: none;
  border-radius: 50%;
  border: 2px solid #c3a43b;
  position: relative;
}
.check-icon:after {
  content: '';
  position: absolute;
  left: 7px;
  top: 12px;
  width: 8px;
  height: 4px;
  border-left: 3px solid #c3a43b;
  border-bottom: 3px solid #c3a43b;
  transform: rotate(-45deg);
}
.service-interpretation-right {
  flex: 1 1 600px;
  min-width: 320px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2.5rem;
  position: relative;
}
.interpretation-rect {
  position: absolute;
  border-radius: 20px;
  background: linear-gradient(120deg, #fdf0d7 0%, #eeebfd 100%);
  opacity: 0.7;
}

@media (max-width: 1200px) {
  .service-interpretation-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .service-interpretation-right {
    width: 100%;
    min-width: 0;
    height: 320px;
    margin-top: 2rem;
  }

}
@media (max-width: 700px) {
  .service-interpretation-title {
    font-size: 1.5rem;
  }
  .service-interpretation-desc {
    font-size: 1.1rem;
  }
  .service-interpretation-list li {
    font-size: 1rem;
    margin-bottom: 1.2rem;
  }
  .service-interpretation-left {
    padding: 1.2rem 0.5rem 1.2rem 0.5rem;
    max-width: 100vw;
  }
  .service-interpretation-right {
    height: 180px;
  }

}

.service-interpretation-img {
  max-width: 520px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .service-interpretation-img {
    max-width: 340px;
  }
}
@media (max-width: 700px) {
  .service-interpretation-img {
    max-width: 180px;
  }
}

/* ========================= Service Translation Section ========================= */
.service-translation {
  width: 100%;
  background: #fff;
  padding: 4rem 0 4rem 0;
}
.service-translation-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.service-translation-left img {
  max-width: 520px;
  max-height: 420px;
  width: 100%;
  height: auto;
  display: block;
  margin-top: 120px;
  margin-left: 100px;
}
.translation-rect {
  border-radius: 20px;
  background: linear-gradient(120deg, #fdf0d7 0%, #eeebfd 100%);
  opacity: 0.7;
}
.rect-top {
  width: 340px;
  height: 140px;
  margin-right: 60px;
}
.rect-mid {
  width: 480px;
  height: 220px;
}
.rect-bot {
  width: 340px;
  height: 120px;
  margin-right: 120px;
}
.service-translation-right {
  flex: 1 1 520px;
  min-width: 320px;
  max-width: 700px;
  padding: 2.5rem 6vw 2.5rem 2vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-translation-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2.2rem;
  letter-spacing: 2px;
}
.service-translation-desc {
  font-size: 1.6rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  font-weight: 400;
  max-width: 600px;
}
.service-translation-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.service-translation-list li {
  font-size: 1.25rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 2.2rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
}
@media (max-width: 1200px) {
  .service-translation-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .service-translation-left {
    width: 100%;
    max-width: 100vw;
    align-items: center;
    padding: 1.2rem 0 1.2rem 0;
  }
  .rect-top {
    width: 180px;
    height: 70px;
    margin-right: 20px;
  }
  .rect-mid {
    width: 320px;
    height: 120px;
  }
  .rect-bot {
    width: 180px;
    height: 60px;
    margin-right: 40px;
  }
  .service-translation-right {
    padding: 1.2rem 0 1.2rem 0;
    max-width: 100vw;
  }
}
@media (max-width: 700px) {
  .service-translation-title {
    font-size: 1.5rem;
  }
  .service-translation-desc {
    font-size: 1.1rem;
  }
  .service-translation-list li {
    font-size: 1rem;
    margin-bottom: 1.2rem;
  }
  .service-translation-left {
    gap: 1.2rem;
  }
  .rect-top {
    width: 90px;
    height: 30px;
    margin-right: 8px;
  }
  .rect-mid {
    width: 140px;
    height: 60px;
  }
  .rect-bot {
    width: 90px;
    height: 30px;
    margin-right: 16px;
  }
}

.service-community {
  width: 100%;
  background: #fff;
  padding: 4rem 0 4rem 0;
}
.service-community-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.service-community-left {
  flex: 1 1 600px;
  min-width: 320px;
  max-width: 700px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 2.5rem;
  padding: 2.5rem 2vw 2.5rem 0;
}
.community-rect {
  border-radius: 20px;
  background: linear-gradient(120deg, #fdf0d7 0%, #eeebfd 100%);
  opacity: 0.7;
  width: 160px;
}
.rect-tall {
  height: 320px;
}
.rect-x-tall {
  height: 420px;
}
.rect-short {
  height: 200px;
}
.service-community-right {
  flex: 1 1 520px;
  min-width: 320px;
  max-width: 700px;
  padding: 2.5rem 6vw 2.5rem 2vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-community-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2.2rem;
  letter-spacing: 2px;
}
.service-community-desc {
  font-size: 1.6rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  font-weight: 400;
  max-width: 600px;
}
.service-community-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.service-community-list li {
  font-size: 1.25rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 2.2rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
}
@media (max-width: 1200px) {
  .service-community-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .service-community-left {
    width: 100%;
    max-width: 100vw;
    align-items: flex-end;
    padding: 1.2rem 0 1.2rem 0;
    gap: 1.2rem;
  }
  .community-rect {
    width: 80px;
  }
  .rect-tall {
    height: 160px;
  }
  .rect-x-tall {
    height: 220px;
  }
  .rect-short {
    height: 100px;
  }
  .service-community-right {
    padding: 1.2rem 0 1.2rem 0;
    max-width: 100vw;
  }
}
@media (max-width: 700px) {
  .service-community-title {
    font-size: 1.5rem;
  }
  .service-community-desc {
    font-size: 1.1rem;
  }
  .service-community-list li {
    font-size: 1rem;
    margin-bottom: 1.2rem;
  }
  .service-community-left {
    gap: 0.7rem;
  }
  .community-rect {
    width: 40px;
  }
  .rect-tall {
    height: 80px;
  }
  .rect-x-tall {
    height: 110px;
  }
  .rect-short {
    height: 50px;
  }
}

.service-community-img {
  max-width: 520px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .service-community-img {
    max-width: 340px;
  }
}
@media (max-width: 700px) {
  .service-community-img {
    max-width: 180px;
  }
}

.service-consulting {
  width: 100%;
  background: #fff;
  padding: 4rem 0 4rem 0;
}
.service-consulting-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.service-consulting-left {
  flex: 1 1 600px;
  min-width: 320px;
  max-width: 700px;
  padding: 2.5rem 2vw 2.5rem 6vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-consulting-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2.2rem;
  letter-spacing: 2px;
}
.service-consulting-desc {
  font-size: 1.6rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  font-weight: 400;
  max-width: 600px;
}
.service-consulting-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.service-consulting-list li {
  font-size: 1.25rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 2.2rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
}
/* ========================= Service Consulting Section ========================= */
.service-consulting-right {
  flex: 1 1 600px;
  min-width: 320px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2.5rem;
  position: relative;
}
.service-consulting-img {
  max-width: 520px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .service-consulting-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .service-consulting-right {
    width: 100%;
    min-width: 0;
    margin-top: 2rem;
  }
  .service-consulting-img {
    max-width: 340px;
  }
}
@media (max-width: 700px) {
  .service-consulting-title {
    font-size: 1.5rem;
  }
  .service-consulting-desc {
    font-size: 1.1rem;
  }
  .service-consulting-list li {
    font-size: 1rem;
    margin-bottom: 1.2rem;
  }
  .service-consulting-left {
    padding: 1.2rem 0.5rem 1.2rem 0.5rem;
    max-width: 100vw;
  }
  .service-consulting-img {
    max-width: 180px;
  }
}

/* ========================= Request Services Section ========================= */
.request-services {
  width: 100%;
  background: linear-gradient(90deg, #ece8fa 0%, #f9eedf 100%);
  padding: 5rem 0 5rem 0;
}
.request-services-inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}
.request-services-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.request-services-subtitle {
  color: #c3a43b;
  font-size: 1.4rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 3.5rem;
  font-weight: 500;
}
.request-services-form {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
}
.form-row {
  width: 100%;
  display: flex;
  gap: 2rem;
  margin-bottom: 0.5rem;
}
.form-input, .form-textarea, .form-date {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.2rem;
  border-radius: 10px;
  border: none;
  background: #fff;
  color: #1a2a32;
  padding: 1.2rem 1.2rem;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 0;
  outline: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  transition: border 0.2s;
}
.form-input:focus, .form-textarea:focus {
  border: 2px solid #c3a43b;
}
.form-input[type="date"] {
  padding-right: 2.5rem;
}
.form-textarea {
  min-height: 140px;
  resize: vertical;
  margin-top: 0.5rem;
}
.form-submit-btn {
  background: #c3a43b;
  color: #fff;
  border: none;
  border-radius: 24px;
  padding: 0.9rem 3.5rem;
  font-size: 1.5rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  margin-top: 1.5rem;
  cursor: pointer;
  transition: background 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.form-submit-btn:hover {
  background: #a88d2b;
}
@media (max-width: 900px) {
  .request-services-title {
    font-size: 2rem;
  }
  .request-services-subtitle {
    font-size: 1.1rem;
    margin-bottom: 2.2rem;
  }
  .form-row {
    flex-direction: column;
    gap: 0.7rem;
  }
  .form-input, .form-textarea {
    font-size: 1rem;
    padding: 0.9rem 1rem;
  }
  .form-submit-btn {
    width: 100%;
    padding: 0.9rem 0;
    font-size: 1.1rem;
  }
}

/* Course & Trainig */

/* ========================= Courses Hero Section ========================= */
.courses-hero {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
    min-height: 200px;
    background: linear-gradient(100deg, #eeebfd 0%, #fdf0d7 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 0 90px 0;
    margin-top: 100px;
  }
  .courses-hero-inner {
    width: 100%;
    max-width: 1100px;
    text-align: center;
  }
  .courses-hero-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 4rem;
    font-weight: 400;
    color: #1a2a32;
    margin-bottom: 2.2rem;
    letter-spacing: 1px;
  }
  .courses-hero-subtitle {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 1.5rem;
    color: #c3a43b;
    font-weight: 400;
    margin: 0 auto;
    max-width: 900px;
  }
  @media (max-width: 700px) {
    .courses-hero {
      min-height: 180px;
      padding: 40px 0 60px 0;
    }
    .courses-hero-title {
      font-size: 2.2rem;
    }
    .courses-hero-subtitle {
      font-size: 1.1rem;
    }
  }

/* ========================= Courses List Section ========================= */
.courses-list-section {
  width: 100%;
  background: #fff;
  padding: 3rem 0 5rem 0;
}
.courses-search-row {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 3.5rem;
  max-width: 900px;
  margin-left: 7vw;
}
.courses-search-box {
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  border: 2px solid #eae8fa;
  padding: 0.2rem 1.2rem;
  width: 420px;
  max-width: 100%;
}
.courses-search-icon {
  font-size: 1.3rem;
  color: #1a2a32;
  margin-right: 0.7rem;
}
.courses-search-input {
  border: none;
  outline: none;
  font-size: 1.2rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  background: transparent;
  width: 100%;
  padding: 0.7rem 0;
  color: #1a2a32;
}
.courses-cards-row {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 3rem;
  flex-wrap: wrap;
  margin-top: 2.5rem;
}
.course-card {
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  width: 420px;
  min-height: 420px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  overflow: hidden;
  border: 1.5px solid #f2f2f2;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.course-card-gradient {
  background: linear-gradient(120deg, #fdf0d7 0%, #eeebfd 100%);
  width: 100%;
  height: 180px;
  border-top-left-radius: 24px;
  border-top-right-radius: 24px;
}
.course-card-content {
  padding: 2.2rem 1.8rem 2.2rem 1.8rem;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  justify-content: flex-end;
}
.course-card-title {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.6rem;
  color: #18425d;
  font-weight: 500;
  margin-bottom: 1.2rem;
}
.course-card-desc {
  color: #18425d;
  font-size: 1.1rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 2.2rem;
}
.course-card-btn {
  border: 1.5px solid #c3a43b;
  color: #18425d;
  background: #fff;
  border-radius: 12px;
  padding: 0.9rem 0;
  font-size: 1.1rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
  width: 100%;
  display: block;
}
.course-card-btn:hover {
  background: #c3a43b;
  color: #fff;
}
@media (max-width: 1300px) {
  .courses-cards-row {
    gap: 1.5rem;
  }
  .course-card {
    width: 340px;
    min-height: 340px;
  }
  .course-card-gradient {
    height: 120px;
  }
}
@media (max-width: 900px) {
  .courses-cards-row {
    flex-wrap: wrap;
    justify-content: center;
  }
  .course-card {
    width: 90vw;
    max-width: 400px;
    margin: 0 auto;
  }
}

.courses-enquire-section {
  width: 100%;
  background: linear-gradient(90deg, #ece8fa 0%, #f9eedf 100%);
  padding: 5rem 0 5rem 0;
}
.courses-enquire-inner {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}
.courses-enquire-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.courses-enquire-subtitle {
  color: #c3a43b;
  font-size: 1.4rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 3.5rem;
  font-weight: 500;
}
.courses-enquire-form {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
}
.courses-enquire-row {
  width: 100%;
  display: flex;
  gap: 2rem;
  margin-bottom: 0.5rem;
  justify-content: center;
}
.courses-enquire-input, .courses-enquire-textarea {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.2rem;
  border-radius: 10px;
  border: none;
  background: #fff;
  color: #1a2a32;
  padding: 1.2rem 1.2rem;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 0;
  outline: none;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  transition: border 0.2s;
}
.courses-enquire-input:focus, .courses-enquire-textarea:focus {
  border: 2px solid #c3a43b;
}
.courses-enquire-row .courses-enquire-input {
  max-width: 320px;
}
.courses-enquire-textarea {
  min-height: 140px;
  resize: vertical;
  margin-top: 0.5rem;
  width: 100%;
  max-width: 900px;
}
.courses-enquire-btn {
  background: #c3a43b;
  color: #fff;
  border: none;
  border-radius: 24px;
  padding: 0.9rem 3.5rem;
  font-size: 1.5rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  margin-top: 1.5rem;
  cursor: pointer;
  transition: background 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.courses-enquire-btn:hover {
  background: #a88d2b;
}
@media (max-width: 900px) {
  .courses-enquire-title {
    font-size: 2rem;
  }
  .courses-enquire-subtitle {
    font-size: 1.1rem;
    margin-bottom: 2.2rem;
  }
  .courses-enquire-row {
    flex-direction: column;
    gap: 0.7rem;
  }
  .courses-enquire-input, .courses-enquire-textarea {
    font-size: 1rem;
    padding: 0.9rem 1rem;
  }
  .courses-enquire-btn {
    width: 100%;
    padding: 0.9rem 0;
    font-size: 1.1rem;
  }
}
/* Community impact page*/

.community-hero {
  width: 100vw;
  margin-left: 50%;
  transform: translateX(-50%);
  min-height: 200px;
  background: linear-gradient(100deg, #eeebfd 0%, #fdf0d7 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 50px 0 90px 0;
  margin-top: 100px;
}
.community-hero-inner {
  width: 100%;
  max-width: 1100px;
  text-align: center;
}
.community-hero-title {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 4rem;
  font-weight: 400;
  color: #1a2a32;
  margin-bottom: 2.2rem;
  letter-spacing: 1px;
}
.community-hero-subtitle {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.5rem;
  color: #c3a43b;
  font-weight: 400;
  margin: 0 auto;
  max-width: 1100px;
}
@media (max-width: 700px) {
  .community-hero {
    min-height: 180px;
    padding: 40px 0 60px 0;
  }
  .community-hero-title {
    font-size: 2.2rem;
  }
  .community-hero-subtitle {
    font-size: 1.1rem;
  }
}

.community-impact-section {
  width: 100%;
  background: #fff;
  padding: 3rem 0 5rem 0;
}
.community-impact-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.community-impact-left {
  flex: 1 1 600px;
  min-width: 320px;
  max-width: 600px;
  padding: 2.5rem 2vw 2.5rem 6vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.community-impact-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2.2rem;
  letter-spacing: 2px;
}
.community-impact-desc {
  font-size: 1.6rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  font-weight: 400;
  max-width: 600px;
}
.community-impact-right {
  flex: 1 1 700px;
  min-width: 320px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2.5rem;
  position: relative;
}
.puzzle-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 2.2rem;
}
.puzzle-piece {
  background: linear-gradient(120deg, #fdf0d7 0%, #eeebfd 100%);
  border-radius: 32px 32px 32px 32px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
  min-width: 220px;
  min-height: 180px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 2.2rem 2.2rem 2.2rem 2.2rem;
  position: relative;
  font-family: 'Ubuntu', Arial, sans-serif;
  /* Puzzle effect: use border-radius and pseudo-elements for notches */
}
.puzzle-piece:nth-child(1) {
  border-top-left-radius: 48px;
  border-top-right-radius: 32px;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 32px;
}
.puzzle-piece:nth-child(2) {
  border-top-left-radius: 32px;
  border-top-right-radius: 48px;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 32px;
}
.puzzle-piece:nth-child(3) {
  border-top-left-radius: 32px;
  border-top-right-radius: 32px;
  border-bottom-left-radius: 48px;
  border-bottom-right-radius: 32px;
}
.puzzle-piece:nth-child(4) {
  border-top-left-radius: 32px;
  border-top-right-radius: 32px;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 48px;
}
.puzzle-number {
  font-size: 2rem;
  color: #1a2a32;
  font-weight: 500;
  margin-bottom: 0.7rem;
  letter-spacing: 2px;
}
.puzzle-label {
  font-size: 1.1rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
}
@media (max-width: 1200px) {
  .community-impact-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .community-impact-right {
    width: 100%;
    min-width: 0;
    margin-top: 2rem;
    justify-content: center;
  }
  .puzzle-grid {
    gap: 1.2rem;
  }
  .puzzle-piece {
    min-width: 140px;
    min-height: 100px;
    padding: 1.2rem 1.2rem 1.2rem 1.2rem;
  }
}
@media (max-width: 700px) {
  .community-impact-title {
    font-size: 1.5rem;
  }
  .community-impact-desc {
    font-size: 1.1rem;
  }
  .puzzle-grid {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4, 1fr);
    gap: 0.7rem;
  }
  .puzzle-piece {
    min-width: 0;
    min-height: 60px;
    padding: 0.9rem 0.9rem 0.9rem 0.9rem;
  }
}

.impact-stats-list {
  margin-top: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.impact-stat-block {
  font-family: 'Ubuntu', Arial, sans-serif;
  font-size: 1.5rem;
  color: #1a2a32;
  display: flex;
  align-items: baseline;
  gap: 1.2rem;
}
.impact-stat-number {
  font-size: 2rem;
  font-weight: 500;
  color: #1a2a32;
  min-width: 90px;
  display: inline-block;
}
.impact-stat-label {
  font-size: 1.1rem;
  color: #1a2a32;
  font-weight: 400;
}
.impact-puzzle-img {
  max-width: 480px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .community-impact-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .community-impact-right {
    width: 100%;
    min-width: 0;
    margin-top: 2rem;
    justify-content: center;
  }
  .impact-puzzle-img {
    max-width: 320px;
  }
}
@media (max-width: 700px) {
  .impact-stats-list {
    gap: 0.7rem;
  }
  .impact-stat-block {
    font-size: 1rem;
  }
  .impact-stat-number {
    font-size: 1.2rem;
    min-width: 50px;
  }
  .impact-puzzle-img {
    max-width: 180px;
  }
}

.make-difference-section {
  width: 100%;
  background: linear-gradient(90deg, #ece8fa 0%, #f9eedf 100%);
  padding: 4rem 0 4rem 0;
}
.make-difference-inner {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.make-difference-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.make-difference-subtitle {
  color: #c3a43b;
  font-size: 1.4rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 3.5rem;
  font-weight: 500;
}
.make-difference-btn-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.5rem;
  flex-wrap: wrap;
}
.make-difference-btn {
  background: #18425d;
  color: #fff;
  border: none;
  border-radius: 16px;
  padding: 1rem 2.5rem;
  font-size: 1.3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  margin-bottom: 1rem;
  display: inline-block;
}
.make-difference-btn:hover {
  background: #c3a43b;
  color: #fff;
}
@media (max-width: 900px) {
  .make-difference-title {
    font-size: 2rem;
  }
  .make-difference-subtitle {
    font-size: 1.1rem;
    margin-bottom: 2.2rem;
  }
  .make-difference-btn-row {
    flex-direction: column;
    gap: 1.2rem;
  }
  .make-difference-btn {
    width: 100%;
    max-width: 350px;
    font-size: 1.1rem;
    padding: 1rem 0;
  }
}

/* Contact Us Hero Section */
.contact-hero {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
    min-height: 200px;
    background: linear-gradient(90deg, #eae8fa 0%, #f9eedf 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 0 90px 0;
    margin-top: 100px;
}
.contact-hero-inner {
    width: 100%;
    max-width: 1100px;
    text-align: center;
}
.contact-hero-title {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 4rem;
    font-weight: 400;
    color: #1a2a32;
    margin-bottom: 2.2rem;
    letter-spacing: 1px;
}
.contact-hero-subtitle {
    font-family: 'Ubuntu', Arial, sans-serif;
    font-size: 1.5rem;
    color: #c3a43b;
    font-weight: 400;
    margin: 0 auto;
    max-width: 900px;
}
@media (max-width: 700px) {
    .contact-hero {
        min-height: 220px;
        padding: 40px 0 60px 0;
    }
    .contact-hero-title {
        font-size: 2.2rem;
    }
    .contact-hero-subtitle {
        font-size: 1.1rem;
    }
}

/* Contact Us Main Section */
.contact-main-section {
  width: 100%;
  background: #fff;
  padding: 4rem 0 4rem 0;
}
.contact-main-inner {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 4rem;
  flex-wrap: wrap;
}
.contact-info-col {
  flex: 1 1 480px;
  min-width: 320px;
  max-width: 600px;
  padding-top: 1.5rem;
}
.contact-info-title {
  font-size: 3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 1.2rem;
  letter-spacing: 2px;
}
.contact-info-desc {
  font-size: 2rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 2.5rem;
  line-height: 1.2;
}
.contact-info-list {
  margin-bottom: 2.5rem;
}
.contact-info-item {
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
  margin-bottom: 2rem;
}
.contact-info-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #f3ede2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  flex-shrink: 0;
}
.contact-icon-location::before {
  content: '\1F4CD'; /* 📍 */
  font-size: 2rem;
  color: #c3a43b;
}
.contact-icon-phone::before {
  content: '\260E'; /* ☎ */
  font-size: 2rem;
  color: #c3a43b;
}
.contact-icon-email::before {
  content: '\2709'; /* ✉ */
  font-size: 2rem;
  color: #c3a43b;
}
.contact-info-label {
  font-size: 1.3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 500;
  margin-bottom: 0.2rem;
}
.contact-info-detail {
  font-size: 1.05rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 400;
}
.contact-socials-block {
  margin-top: 2.5rem;
}
.contact-socials-label {
  font-size: 1.2rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  margin-bottom: 1.2rem;
}
.contact-socials-row {
  display: flex;
  gap: 1.5rem;
  margin-top: 0.5rem;
}
.contact-social {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #c3a43b;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 2rem;
  transition: background 0.2s;
  text-decoration: none;
}
.contact-social:hover {
  background: #18425d;
  color: #fff;
}
.contact-social-yt::before {
  content: '\f167'; /* YouTube (FontAwesome fallback) */
  font-family: Arial, sans-serif;
  font-size: 2rem;
}
.contact-social-fb::before {
  content: '\f09a'; /* Facebook (FontAwesome fallback) */
  font-family: Arial, sans-serif;
  font-size: 2rem;
}
.contact-social-ig::before {
  content: '\f16d'; /* Instagram (FontAwesome fallback) */
  font-family: Arial, sans-serif;
  font-size: 2rem;
}
.contact-social-x::before {
  content: 'X';
  font-family: Arial, sans-serif;
  font-size: 2rem;
}

.contact-form-col {
  flex: 1 1 520px;
  min-width: 320px;
  max-width: 600px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.contact-form-box {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 2px 16px rgba(0,0,0,0.07);
  padding: 2.5rem 2.5rem 2rem 2.5rem;
  width: 100%;
  max-width: 620px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.contact-form-title {
  font-size: 2rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  color: #1a2a32;
  font-weight: 400;
  margin-bottom: 2rem;
  letter-spacing: 1px;
}
.contact-form-row {
  display: flex;
  gap: 2rem;
  margin-bottom: 1.2rem;
}
.contact-form-group {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  margin-bottom: 1.2rem;
}
.contact-form-group label {
  font-size: 1rem;
  color: #1a2a32;
  font-family: 'Ubuntu', Arial, sans-serif;
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.contact-form-group input,
.contact-form-group textarea {
  border: 1.5px solid #bfc8c9;
  border-radius: 8px;
  padding: 0.9rem 1.2rem;
  font-size: 1.1rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  background: #f9f9f9;
  color: #1a2a32;
  margin-bottom: 0;
  outline: none;
  transition: border 0.2s;
}
.contact-form-group input:focus,
.contact-form-group textarea:focus {
  border: 2px solid #c3a43b;
  background: #fff;
}
.contact-form-group textarea {
  min-height: 120px;
  resize: vertical;
}
.contact-form-btn {
  background: #c3a43b;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 0.9rem 2.5rem;
  font-size: 1.3rem;
  font-family: 'Ubuntu', Arial, sans-serif;
  font-weight: 500;
  margin-top: 1.2rem;
  cursor: pointer;
  transition: background 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  align-self: flex-start;
}
.contact-form-btn:hover {
  background: #a88d2b;
}
@media (max-width: 1100px) {
  .contact-main-inner {
    flex-direction: column;
    gap: 2.5rem;
    align-items: flex-start;
  }
  .contact-info-col, .contact-form-col {
    max-width: 100vw;
    width: 100%;
  }
  .contact-form-box {
    max-width: 100vw;
  }
}
@media (max-width: 700px) {
  .contact-main-section {
    padding: 2rem 0 2rem 0;
  }
  .contact-info-title {
    font-size: 1.5rem;
  }
  .contact-info-desc {
    font-size: 1.1rem;
  }
  .contact-info-col, .contact-form-col {
    padding: 0;
    max-width: 100vw;
    min-width: 0;
    width: 100%;
  }
  .contact-main-inner {
    flex-direction: column;
    gap: 1.2rem;
    align-items: stretch;
  }
  .contact-form-box {
    padding: 1.2rem 0.7rem 1.2rem 0.7rem;
  }
  .contact-form-title {
    font-size: 1.2rem;
  }
  .contact-form-row {
    flex-direction: column;
    gap: 0.7rem;
  }
  .contact-form-btn {
    width: 100%;
    padding: 0.9rem 0;
    font-size: 1.1rem;
  }
  .contact-socials-row {
    gap: 0.7rem;
  }
  .contact-social {
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
  }
}

/* (Insert or update a global rule for mobile (max-width: 700px) so that the page does not scroll horizontally.) */
@media (max-width: 700px) {
  body, html {
    overflow-x: hidden; /* Prevent horizontal scroll on mobile (home page) */
  }
}

/* (Remove underline (text-decoration) from mobile menu (main-nav ul li a) so that active and hover states (or any other state) do not show an underline.) */
@media (max-width: 900px) {
  .main-nav ul li a.active, .main-nav ul li a:hover {
    color: #c3a43b; /* (or your desired hover/active color) */
    /* text-decoration: underline; (removed) */
  }
}


