/* WIDE SCREEN SIZE */
#main_container {
    position: relative;
    max-width: 1440px;
    margin: auto;
}
#main_container h2,
#main_container h3 {
    margin: 0;
    padding: 0;
}
#content_container {
    overflow: hidden;
    background-color: var(--light_blue);
}

/* HERO SECTION */
#hero_section, #hero_section * {
    box-sizing: border-box;
}
#hero_section {
    position: relative;
    padding: 48px 150px;
    background-image: linear-gradient(-83.108deg, #8e458f 1.03%, #018bc4 97.26%);
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.hero_section_inner {
    display: flex;
    align-items: flex-start;
    gap: 36px;
    max-width: 1140px;
    margin: 0 auto;
}
.hero_content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 24px;
    flex: 0 1 594px;
    max-width: 594px;
    min-width: 0;
    min-height: 403px;
}
.hero_logo {
    width: 197px;
    margin-bottom: 0;
}
.hero_logo img {
    display: block;
    width: 100%;
    height: auto;
}
.hero_title {
    margin: 0;
    font-family: "DM Sans";
    color: var(--white);
    font-weight: 700;
    font-size: 42px;
    line-height: 60px;
    /* letter-spacing: -2.08px; */
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.10);
    display: block;
}
.hero_description {
    margin: 0;
    font-family: 'DM Sans';
    font-weight: 400;
    color: var(--white);
    font-size: 18px;
    line-height: 28px;
    width: 100%;
}
.hero_button {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    margin-top: 0;
    width: 100%;
}
.hero_image {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
}
.hero_image picture {
    display: block;
    width: 100%;
    height: 100%;
}
.hero_image img {
    /* width: 100%;
    max-width: 510px;
    height: 403px; */
    width: 100%;
    height: auto;
    object-fit: contain;
    margin: 0 auto;
    display: block;
    border-radius: 20px;
}
.hero_cta_btn {
    position: relative;
    width: auto;
    min-height: 62px;
    padding: 16px 24px;
    border-radius: 40px;
    border: 2px solid rgba(244, 247, 252, 0.30);
    color: var(--white);
    text-decoration: none;
    box-shadow: 0 4px 0 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-family: "DM Sans";
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0;
    white-space: nowrap;
    gap: 0;
    transition: transform 0.2s ease, filter 0.2s ease;
}
.hero_cta_btn span {
    display: inline-block;
}
.hero_cta_btn_orange {
    background: linear-gradient(180deg, #f38920 0%, #e76e25 100%);
    box-shadow: 0 4px 0 0 #a73b00;
    overflow: hidden;
}
.hero_cta_btn_orange::before {
    content: "";
    position: absolute;
    top: 6px;
    left: 16px;
    right: 16px;
    width: auto;
    height: 20px;
    border-radius: 40px;
    background: #ffe2bf;
    opacity: 0.16;
    pointer-events: none;
}
.hero_cta_btn_orange span {
    position: relative;
    z-index: 1;
}
.hero_cta_btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.03);
}

/* First Load Animation */
.hero_title,
.hero_description,
.hero_image,
.hero_button {
    position: relative;
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
.hero_title.animated,
.hero_description.animated,
.hero_image.animated,
.hero_button.animated {
    transform: translateY(0px);
    opacity: 1;
}
/* End of First Load Animation */
/* END OF HERO SECTION */

/* TUITION SECTION — Figma node 609:796 (CAMPUS Homepage) */
#campus_problem_section,
#campus_problem_section * {
    box-sizing: border-box;
}
#campus_problem_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: linear-gradient(180deg, #c0e4f3 0%, #c8ebfa 100%);
    padding: 48px 75px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}
.campus_problem_section_title {
    width: 100%;
    max-width: 1140px;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
}
.campus_problem_section_heading {
    font-family: "DM Sans";
    color: #3b386c;
    font-size: 32px;
    font-weight: 700;
    line-height: 0.9;
    margin: 0;
}
.campus_problem_section_subtitle {
    font-family: "DM Sans";
    color: #353277;
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.36px;
    margin: 0;
}
.campus_problem_items {
    width: 100%;
    max-width: 1140px;
    min-height: 358px;
    display: flex;
    flex-direction: row;
    gap: 24px;
    align-items: stretch;
}
.campus_problem_card {
    flex: 1 1 0;
    min-width: 0;
    background: #f8fdfe;
    border-radius: 24px;
    box-shadow: 0 2px 2px rgba(100, 98, 98, 0.1);
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    text-align: center;
}
.campus_problem_icon {
    width: 120px;
    height: 120px;
    flex-shrink: 0;
    position: relative;
}
.campus_problem_icon picture {
    display: block;
    width: 120px;
    height: 120px;
}
.campus_problem_icon img {
    width: 120px;
    height: 120px;
    object-fit: cover;
    display: block;
}
.campus_problem_card_body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    width: 100%;
}
.campus_problem_card_title {
    font-family: "DM Sans";
    color: #534f7d;
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    margin: 0;
}
.campus_problem_card_desc {
    font-family: "DM Sans";
    color: #7b7e82;
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    margin: 0;
}
.campus_problem_section_badge {
    position: relative;
    width: 100%;
    max-width: 530px;
    border: 2px solid transparent;
    border-radius: 32px;
    padding: 12px 20px;
    text-align: center;
    overflow: visible;
    background:
        linear-gradient(180deg, #c0e4f3 0%, #c8ebfa 100%) padding-box,
        linear-gradient(90deg, #018bc4 0%, #8e458f 100%) border-box;
}
.campus_problem_section_badge_overlay {
    display: none;
}
.campus_problem_section_badge_text {
    position: relative;
    z-index: 1;
    display: block;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    white-space: nowrap;
    background: linear-gradient(-41.71deg, #8e458f 1.03%, #018bc4 97.26%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
#campus_problem_section .campus_problem_section_title,
#campus_problem_section .campus_problem_items,
#campus_problem_section .campus_problem_section_badge {
    position: relative;
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_problem_section.animated .campus_problem_section_title,
#campus_problem_section.animated .campus_problem_items,
#campus_problem_section.animated .campus_problem_section_badge {
    transform: translateY(0);
    opacity: 1;
}
#campus_problem_section.animated .campus_problem_items {
    transition-delay: 0.1s;
}
#campus_problem_section.animated .campus_problem_section_badge {
    transition-delay: 0.2s;
}

/* AI SECTION */
#ai_section_container {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 0px 110px 80px;
}
#ai_section_body {
    display: flex;
    flex-direction: row;
}

/* ai section ilustration */
#ai_section_ilustration {
    width: 675px;
    order: 1;
    transform: scale(1.22);
    padding-top: 25px;
}
#ai_ilustration_idle {
    display: none;
}
/* end of ai section ilustration */
/* ai section content */
#ai_section_content {
    order: 2;
    color: var(--navy_blue);
    width: 414px;
    padding: 0 0 0 47px;
}
#ai_section_content > div {
    transition-property: opacity, transform;
    transition-duration: 0.5s;
}
#ai_content_title {
    font-family: "DM Sans";
    color: var(--navy_blue);
    font-weight: 900;
    font-size: 47px;
    line-height: 60px;
    margin-left: -4px;
    transition-delay: 1.6s;
}
#ai_content_title_bold {
    font-family: "DM Sans";
    color: var(--navy_blue);
    font-weight: 900;
    font-size: 47px;
    line-height: 60px;
    padding-bottom: 24px;
    margin-left: -4px;
    transition-delay: 1.7s;
}
#ai_content_desc {
    font-family: 'DM Sans';
font-weight: 300;
    font-size: 18px;
    line-height: 29px;
    transition-delay: 1.8s;
}
/* animate section content intro */
#ai_section_container .animate_fade_in {
    opacity: 0;
    transform: translateY(15px);
}
#ai_section_container.animate_intro .animate_fade_in {
    opacity: 1;
    transform: translateY(0);
}
/* end of ai section content */
/* END OF AI SECTION */

/* CAMPUS ECOSYSTEM SECTION */
#campus_ecosystem_section, #campus_ecosystem_section * {
    box-sizing: border-box;
}
#campus_ecosystem_section {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    background: #e5f3f7;
    padding: 48px 75px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.campus_ecosystem_title {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.campus_ecosystem_badge {
    width: 194px;
    border-radius: 24px;
    background: #32c2ff;
    color: var(--white);
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
    padding: 6px 24px;
}
.campus_ecosystem_heading {
    color: #3b386c;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: normal;
}
.campus_ecosystem_subtitle {
    width: 800px;
    color: #353277;
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.36px;
}
.campus_ecosystem_body {
    width: 100%;
    max-width: 1140px;
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 24px;
    padding: 9px 0;
}
.campus_ecosystem_items {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.campus_ecosystem_item {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 16px;
    border-radius: 24px;
    box-shadow: 0 2px 2px rgba(100, 98, 98, 0.1);
    background-image: linear-gradient(136.67deg, rgba(255, 255, 255, 0.2) 31.64%, rgba(237, 251, 255, 0.2) 68.36%), linear-gradient(90deg, #fff 0%, #fff 100%);
}
.campus_ecosystem_item_icon_wrap {
    border-radius: 100px;
    background: #f4f7fc;
    width: 81px;
    height: 81px;
    padding: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.campus_ecosystem_item_icon {
    width: 38px;
    height: 38px;
}
.campus_ecosystem_item_icon picture {
    width: 38px;
    height: 38px;
    display: block;
}
.campus_ecosystem_item_icon img {
    width: 38px;
    height: 38px;
    display: block;
}
.campus_ecosystem_item_content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.campus_ecosystem_item_title {
    color: #353277;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
}
.campus_ecosystem_item_desc {
    color: #515151;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.36px;
}
.campus_ecosystem_visual {
    width: 654px;
    display: flex;
    align-items: stretch;
}
.campus_ecosystem_visual img,
.campus_ecosystem_visual lottie-player {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 1046 / 684;
}
.campus_ecosystem_visual.animated {
    align-self: center;
}

/* First Load Animation */
.campus_ecosystem_title,
.campus_ecosystem_items,
.campus_ecosystem_visual {
    position: relative;
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
.campus_ecosystem_title.animated,
.campus_ecosystem_items.animated,
.campus_ecosystem_visual.animated {
    transform: translateY(0px);
    opacity: 1;
}
/* End of First Load Animation */
/* END OF CAMPUS ECOSYSTEM SECTION */

/* CAMPUS PROMISES SECTION */
#campus_promises_section,
#campus_promises_section * {
    box-sizing: border-box;
}
#campus_promises_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #e5f3f7;
    padding: 36px 150px 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
    overflow: hidden;
}
.campus_promises_panel {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1286px;
    height: 380px;
    border-radius: 24px;
    background: linear-gradient(180deg, #57528f 0%, #2a2761 100%);
}
.campus_promises_title {
    position: relative;
    z-index: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}
.campus_promises_badge {
    width: auto;
    border-radius: 24px;
    background: #27aae1;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 24px;
}
.campus_promises_heading {
    color: #ecebf0;
    text-align: center;
    font-family: "DM Sans";
    font-size: 34px;
    font-weight: 700;
    line-height: normal;
}
.campus_promises_cards {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1138px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.campus_promises_card {
    min-height: 0;
    border-radius: 36px;
    background: #fff;
    box-shadow: 0 2px 2px rgba(100, 98, 98, 0.1);
    padding: 30px 30px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.campus_promises_card_results {
    border: 2px solid #71c5e8;
}
.campus_promises_card_speed {
    border: 2px solid #ffaa4d;
}
.campus_promises_card_visibility {
    border: 2px solid #c6579a;
}
.campus_promises_card_header {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.campus_promises_card_tag {
    border-radius: 100px;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    padding: 4px 12px;
}
.campus_promises_card_tag_results {
    background: #71c5e8;
}
.campus_promises_card_tag_speed {
    background: #ffaa4d;
}
.campus_promises_card_tag_visibility {
    background: #c6579a;
}
.campus_promises_card_title {
    color: #534f7d;
    text-align: center;
    font-family: "DM Sans";
    font-size: 28px;
    font-weight: 700;
    line-height: normal;
}
.campus_promises_card_subtitle {
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
}
.campus_promises_card_subtitle_results {
    color: #71c5e8;
}
.campus_promises_card_subtitle_speed {
    color: #ffaa4d;
}
.campus_promises_card_subtitle_visibility {
    color: #c6579a;
}
.campus_promises_card_illustration {
    width: 180px;
    border-radius: 8px;
    overflow: hidden;
}
.campus_promises_card_illustration img {
    width: 100%;
    height: auto;
    display: block;
}
.campus_promises_card_desc {
    margin-top: 0;
    color: #646262;
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    width: 100%;
}
.campus_promises_footer_badge {
    position: relative;
    width: 100%;
    max-width: 530px;
    border: 2px solid transparent;
    border-radius: 24px;
    padding: 12px 20px;
    text-align: center;
    overflow: visible;
    background: linear-gradient(#e5f3f7, #e5f3f7) padding-box, linear-gradient(90deg, #018bc4 0%, #8e458f 100%) border-box;
}
.campus_promises_footer_badge_overlay {
    display: block;
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: linear-gradient(-59.04deg, rgba(142, 69, 143, 0.2) 1.03%, rgba(1, 139, 196, 0.2) 97.26%);
    mix-blend-mode: overlay;
}
.campus_promises_footer_badge_text {
    position: relative;
    z-index: 1;
    display: block;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    white-space: nowrap;
    background: linear-gradient(-42.06deg, #8e458f 1.03%, #018bc4 97.26%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

#campus_promises_section .campus_promises_title,
#campus_promises_section .campus_promises_cards,
#campus_promises_section .campus_promises_footer_badge {
    position: relative;
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_promises_section.animated .campus_promises_title,
#campus_promises_section.animated .campus_promises_cards,
#campus_promises_section.animated .campus_promises_footer_badge {
    transform: translateY(0);
    opacity: 1;
}
#campus_promises_section.animated .campus_promises_cards {
    transition-delay: 0.1s;
}
#campus_promises_section.animated .campus_promises_footer_badge {
    transition-delay: 0.2s;
}
/* END OF CAMPUS PROMISES SECTION */

/* CAMPUS PERSONAL SECTION */
#campus_personal_section,
#campus_personal_section * {
    box-sizing: border-box;
}
#campus_personal_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 150px;
    background: linear-gradient(-86.883deg, #8e458f 1.03%, #018bc4 97.26%);
}
.campus_personal_inner {
    width: 100%;
    max-width: 1290px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
}
.campus_personal_title {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
}
.campus_personal_badge {
    width: 253px;
    padding: 6px 24px;
    border-radius: 24px;
    background: #32c2ff;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
}
.campus_personal_heading {
    color: #ecebf0;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: normal;
}
.campus_personal_cards {
    width: 948px;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px;
}
.campus_personal_card {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 12px 24px 12px 12px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(112, 209, 242, 0.6);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.campus_personal_card::before,
.campus_personal_card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
}
.campus_personal_card::before {
    background: linear-gradient(-72.763deg, rgba(142, 69, 143, 0.2) 1.03%, rgba(1, 139, 196, 0.2) 97.26%);
}
.campus_personal_card::after {
    background: rgba(255, 255, 255, 0.2);
    mix-blend-mode: soft-light;
}
.campus_personal_card img {
    position: relative;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}
.campus_personal_card span {
    position: relative;
    color: #fff;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    white-space: nowrap;
}
.campus_personal_subheading {
    color: #f2f3f3;
    text-align: center;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
}
.campus_personal_plp_wrap {
    width: 100%;
}
.campus_personal_plp {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    border-radius: 32px;
    padding: 36px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: flex-start;
    gap: 24px;
}
.campus_personal_plp_image {
    flex: 1 1 58%;
    width: auto;
    max-width: 440px;
    min-width: 0;
    height: auto;
    aspect-ratio: auto;
    border-radius: 12px;
    overflow: hidden;
    background: transparent;
}
.campus_personal_plp_image picture {
    display: block;
    width: 100%;
}
.campus_personal_plp_image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}
.campus_personal_plp_content {
    flex: 1 1 42%;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.campus_personal_plp_title {
    color: #ecebf0;
    font-family: "DM Sans";
    font-size: 30px;
    font-weight: 700;
    line-height: normal;
}
.campus_personal_plp_desc {
    color: #fff;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
}
.campus_personal_plp_desc p {
    margin: 0 0 18px;
}
.campus_personal_plp_desc p:last-child {
    margin-bottom: 0;
}

#campus_personal_section .campus_personal_title,
#campus_personal_section .campus_personal_cards,
#campus_personal_section .campus_personal_subheading,
#campus_personal_section .campus_personal_plp_wrap {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_personal_section.animated .campus_personal_title,
#campus_personal_section.animated .campus_personal_cards,
#campus_personal_section.animated .campus_personal_subheading,
#campus_personal_section.animated .campus_personal_plp_wrap {
    transform: translateY(0);
    opacity: 1;
}
#campus_personal_section.animated .campus_personal_cards {
    transition-delay: 0.1s;
}
#campus_personal_section.animated .campus_personal_subheading {
    transition-delay: 0.2s;
}
#campus_personal_section.animated .campus_personal_plp_wrap {
    transition-delay: 0.3s;
}
/* END OF CAMPUS PERSONAL SECTION */

/* CAMPUS STRUCTURE SECTION */
#campus_structure_section,
#campus_structure_section * {
    box-sizing: border-box;
}
#campus_structure_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 26px;
    overflow: hidden;
}
.campus_structure_bg {
    position: absolute;
    inset: 0;
}
.campus_structure_bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: blur(2px);
}
.campus_structure_overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(83, 79, 125, 0.4) 0%, rgba(83, 79, 125, 0) 100%);
    mix-blend-mode: multiply;
}
.campus_structure_title {
    position: relative;
    z-index: 1;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 34px;
    font-weight: 700;
    line-height: 0.9;
}
.campus_structure_title_text_mobile {
    display: none;
}
.campus_structure_cards {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1140px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}
.campus_structure_card {
    min-height: 0;
    height: auto;
    border-radius: 24px;
    padding: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, #fff 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.campus_structure_step {
    width: 64px;
    height: 62px;
    border-radius: 200px;
    color: rgba(255, 255, 255, 0.9);
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: 62px;
}
.campus_structure_step_1 { background: #71c5e8; }
.campus_structure_step_2 { background: #ffaa4d; color: #fdf9f4; }
.campus_structure_step_3 { background: #c6579a; }
.campus_structure_step_4 { background: #615e9b; }

.campus_structure_card_title {
    color: #262262;
    text-align: center;
    font-family: "DM Sans";
    font-size: 24px;
    font-weight: 700;
    line-height: normal;
    width: 195px;
    min-height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.campus_structure_card_desc {
    color: #515151;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}
.campus_structure_card_tag {
    margin-top: auto;
    border-radius: 100px;
    padding: 8px 16px;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    white-space: nowrap;
    width: 100%;
    box-sizing: border-box;
}
.campus_structure_card_tag_1 { background: #71c5e8; }
.campus_structure_card_tag_2 { background: #ffaa4d; }
.campus_structure_card_tag_3 { background: #c6579a; }
.campus_structure_card_tag_4 { background: #615e9b; }

#campus_structure_section .campus_structure_title,
#campus_structure_section .campus_structure_cards {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_structure_section.animated .campus_structure_title,
#campus_structure_section.animated .campus_structure_cards {
    transform: translateY(0);
    opacity: 1;
}
#campus_structure_section.animated .campus_structure_cards {
    transition-delay: 0.1s;
}
/* END OF CAMPUS STRUCTURE SECTION */

/* CAMPUS PROOF SECTION */
#campus_proof_section,
#campus_proof_section * {
    box-sizing: border-box;
}
#campus_proof_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 75px;
    background: #e5f3f7;
}
.campus_proof_inner {
    width: 100%;
    max-width: 1290px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}
.campus_proof_title {
    color: #353277;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: 0.9;
}
.campus_proof_cards {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    gap: 24px;
    align-items: stretch;
}
.campus_proof_card {
    flex: 1 1 0;
    min-width: 0;
    border-radius: 24px;
    box-shadow: 0 2px 2px rgba(31, 29, 78, 0.1);
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    text-align: center;
}
.campus_proof_card_blue { background: #71c5e8; }
.campus_proof_card_orange { background: #ffaa4d; }
.campus_proof_card_purple { background: #c6579a; }
.campus_proof_card_value {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 48px;
    font-weight: 700;
    line-height: normal;
}
.campus_proof_card_label {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
    max-width: 234px;
}

#campus_proof_section .campus_proof_title,
#campus_proof_section .campus_proof_cards {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_proof_section.animated .campus_proof_title,
#campus_proof_section.animated .campus_proof_cards {
    transform: translateY(0);
    opacity: 1;
}
#campus_proof_section.animated .campus_proof_cards {
    transition-delay: 0.1s;
}
/* END OF CAMPUS PROOF SECTION */

/* CAMPUS PLANS SECTION */
#campus_plans_section,
#campus_plans_section * {
    box-sizing: border-box;
}
#campus_plans_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 150px 56px;
    background:
        linear-gradient(-85.089deg, #8e458f 1.03%, #018bc4 97.26%),
        radial-gradient(112.16px 71.735px at 50% 22.11%, #534f7d 0%, #3f3b6f 50%, #2a2761 100%),
        linear-gradient(90deg, #2a2761 0%, #2a2761 100%);
}
.campus_plans_title {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding-bottom: 36px;
}
.campus_plans_badge {
    border-radius: 24px;
    background: #43bdf2;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    padding: 8px 24px;
}
.campus_plans_heading {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 34px;
    font-weight: 700;
    line-height: normal;
}
.campus_plans_cards {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px;
    align-items: stretch;
}
.campus_plans_card {
    border-radius: 24px;
    border: 0;
    background: #fff;
    box-shadow: 0 2px 2px rgba(100, 98, 98, 0.1);
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}
.campus_plans_card_head {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: column;
}
.campus_plans_plan_badge {
    border-radius: 24px;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    letter-spacing: 0;
    padding: 8px 24px;
}
.campus_plans_plan_badge_blue {
    background: #32c2ff;
}
.campus_plans_plan_badge_orange {
    background: #ffaa4d;
}
.campus_plans_plan_badge_gradient {
    background: linear-gradient(-82.66deg, #8e458f 1.03%, #018bc4 97.26%);
}
.campus_plans_plan_name {
    font-family: "DM Sans";
    font-size: 30px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0;
    text-align: center;
}
.campus_plans_plan_name_blue {
    color: #51b7e4;
}
.campus_plans_plan_name_orange {
    color: #f7941e;
}
.campus_plans_plan_name_gradient {
    background: linear-gradient(-67.37deg, #8e458f 1.03%, #018bc4 97.26%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.campus_plans_items {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}
.campus_plans_item {
    border-radius: 16px;
    border: 0;
    padding: 12px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-height: 0;
}
.campus_plans_item_feature {
    min-height: 124px;
}
.campus_plans_item_feature_orange {
    background: #ffaa4d;
}
.campus_plans_item_feature_gradient {
    background: linear-gradient(-79.73deg, #8e458f 1.03%, #018bc4 97.26%);
}
.campus_plans_item_soft_orange {
    background: #fff7ea;
}
.campus_plans_item_soft_blue {
    background: #f4f7fc;
}
.campus_plans_item img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-top: 2px;
}
.campus_plans_item_feature_orange img {
    filter: brightness(0) invert(1);
}
.campus_plans_item div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.campus_plans_item b {
    color: #f7941e;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
}
.campus_plans_item span {
    color: #333;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
}
.campus_plans_item_feature b,
.campus_plans_item_feature span {
    color: #fff;
}
.campus_plans_item_soft_blue b {
    background: linear-gradient(-53.89deg, #8e458f 1.03%, #018bc4 97.26%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.campus_plans_item_soft_blue span {
    color: #515151;
}

#campus_plans_section .campus_plans_title,
#campus_plans_section .campus_plans_cards {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_plans_section.animated .campus_plans_title,
#campus_plans_section.animated .campus_plans_cards {
    transform: translateY(0);
    opacity: 1;
}
#campus_plans_section.animated .campus_plans_cards {
    transition-delay: 0.1s;
}
/* END OF CAMPUS PLANS SECTION */

/* CAMPUS LOCATION SECTION */
#campus_location_section,
#campus_location_section * {
    box-sizing: border-box;
}
#campus_location_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 75px;
    background: #c8ebfa;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}
.campus_location_title {
    width: 100%;
    color: #353277;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: 0.9;
}
.campus_location_content {
    width: 100%;
    max-width: 1140px;
    display: flex;
    align-items: stretch;
    gap: 24px;
}
.campus_location_map_wrap {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
}
.campus_location_map_frame {
    width: 100%;
    height: 100%;
    flex: 1;
    padding: 2px 2px 6px;
    border-radius: 24px;
    background: linear-gradient(90deg, #018bc4 0%, #8e458f 100%);
}
.campus_location_map_frame iframe {
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 20px;
    background: #fff;
    display: block;
}
.campus_location_cards {
    flex: 1 1 0;
    min-width: 0;
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
}
.campus_location_card {
    border: 0;
    text-align: left;
    width: 100%;
    border-radius: 24px;
    padding: 16px 24px;
    border: 2px solid transparent;
    border-bottom-width: 6px;
    background:
        linear-gradient(#edf7fb, #edf7fb) padding-box,
        linear-gradient(90deg, #018bc4 0%, #8e458f 100%) border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: transform 0.2s ease, filter 0.2s ease;
}
.campus_location_card:hover {
    transform: translateY(-1px);
    filter: brightness(0.99);
}
.campus_location_card.active {
    background:
        linear-gradient(135deg, #dff1f5 7.28%, #ffffff 37.73%) padding-box,
        linear-gradient(90deg, #018bc4 0%, #8e458f 100%) border-box;
}
.campus_location_card_name {
    color: #353277;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
}
.campus_location_card_mrt {
    color: #878e97;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
}

#campus_location_section .campus_location_title,
#campus_location_section .campus_location_content {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_location_section.animated .campus_location_title,
#campus_location_section.animated .campus_location_content {
    transform: translateY(0);
    opacity: 1;
}
#campus_location_section.animated .campus_location_content {
    transition-delay: 0.1s;
}
/* END OF CAMPUS LOCATION SECTION */

/* CAMPUS FAQ SECTION */
#campus_faq_section,
#campus_faq_section * {
    box-sizing: border-box;
}
#campus_faq_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 75px;
    background: linear-gradient(0deg, #E5F3F7 0%, #E5F3F7 100%), #FFF;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}
.campus_faq_title {
    width: 100%;
    color: #3b386c;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: 0.9;
}
.campus_faq_items {
    width: 100%;
    max-width: 1140px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.campus_faq_item {
    border-radius: 24px;
    border: 1px solid #c0e4f3;
    background: #f2f3f3;
    overflow: hidden;
}
.campus_faq_question {
    width: 100%;
    border: 0;
    background: white;
    padding: 24px 36px 24px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    text-align: left;
}
.campus_faq_question_text {
    color: #353277;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
}
.campus_faq_icon {
    width: 13px;
    height: 8px;
    display: block;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='8' viewBox='0 0 13 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.382624 2.29293C0.016435 1.91738 -0.105275 1.33397 0.0979279 0.833595C0.301131 0.333764 0.78903 0 1.31715 0H11.7228C12.2107 0 12.6981 0.333764 12.9018 0.833595C13.1056 1.33343 12.9833 1.87559 12.6171 2.29239L7.4143 7.62826C6.9264 8.08685 6.19508 8.12864 5.66643 7.71184L0.382624 2.29293Z' fill='%23F7941E'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 13px 8px;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}
.campus_faq_answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    padding: 0 24px;
    background: #fff;
    color: #534f7d;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    transition: max-height 0.25s ease, opacity 0.2s ease, padding 0.25s ease;
}
.campus_faq_item.active .campus_faq_icon {
    transform: rotate(180deg);
}
.campus_faq_item.active .campus_faq_answer {
    max-height: 280px;
    opacity: 1;
    padding: 24px;
}

#campus_faq_section .campus_faq_title,
#campus_faq_section .campus_faq_items {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_faq_section.animated .campus_faq_title,
#campus_faq_section.animated .campus_faq_items {
    transform: translateY(0);
    opacity: 1;
}
#campus_faq_section.animated .campus_faq_items {
    transition-delay: 0.1s;
}
/* END OF CAMPUS FAQ SECTION */

/* CAMPUS FORM SECTION */
#campus_form_section,
#campus_form_section * {
    box-sizing: border-box;
}
#campus_form_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 150px;
    background: #1f1d4e;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 48px;
}
.campus_form_title_wrap {
    width: 100%;
    max-width: 1140px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
}
.campus_form_title {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 32px;
    font-weight: 700;
    line-height: 0.9;
}
.campus_form_subtitle {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: clamp(12px, 1.65vw, 18px);
    font-weight: 400;
    line-height: normal;
    white-space: nowrap;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 0 8px;
}
.campus_form_subtitle::-webkit-scrollbar {
    display: none;
}
.campus_form_content {
    width: 100%;
    max-width: 1140px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 387px;
    gap: 36px;
    align-items: stretch;
}
.campus_form_visual {
    position: relative;
    width: 100%;
    height: 455px;
    border-radius: 24px;
    overflow: hidden;
    align-self: stretch;
    min-height: 0;
}
.campus_form_visual img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.campus_form_lead_form {
    width: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 36px;
}
.campus_form_fields {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.campus_form_lead_form .form_group {
    width: 100%;
}
.campus_form_label {
    display: block;
    color: #fff;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 8px;
}
.campus_form_input_wrap {
    width: 100%;
    height: 48px;
    border-radius: 8px;
    border: 1px solid #cfd7e5;
    background: #f2f3f3;
    padding: 12px;
    display: flex;
    align-items: center;
}
.campus_form_input {
    width: 100%;
    border: 0;
    background: transparent;
    outline: none;
    color: #353277;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
}
.campus_form_input::placeholder {
    color: #b4b4b4;
    opacity: 1;
}
.campus_form_select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><path fill="%23F7941E" d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>');
    background-size: 13px;
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 36px;
}
.campus_form_select.placeholder {
    color: #b4b4b4;
}
.campus_form_phone_wrap {
    position: relative;
    padding: 0 12px 0 0;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><path fill="%23F7941E" d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>');
    background-size: 13px;
    background-repeat: no-repeat;
    background-position: left 53px center;
}
.campus_form_phone_wrap .phone_country_select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    padding: 0 !important;
    flex-grow: unset !important;
}
.campus_form_phone_wrap .select2-container {
    position: absolute;
    top: 0;
    width: 70px !important;
    vertical-align: top !important;
    padding: 0;
    z-index: 1;
}
.campus_form_phone_wrap .select2-container > * {
    width: 100%;
    line-height: 48px;
}
.campus_form_phone_wrap .select2-container .select2-selection {
    border: 0 !important;
    background: transparent !important;
    height: auto !important;
}
.campus_form_phone_wrap .select2-selection__rendered {
    font-family: "DM Sans";
    font-weight: 700;
    color: #353277 !important;
    text-align: center;
    line-height: unset !important;
    font-size: 16px;
    padding: 0 8px 0 0 !important;
}
.campus_form_phone_wrap .select2-container--default .select2-selection__arrow {
    display: none !important;
}
.campus_form_phone_input {
    padding-left: 72px;
}
.campus_form_lead_form .input_error .campus_form_input_wrap {
    border-color: #f39123;
}
.campus_form_lead_form .input_error .campus_form_phone_wrap {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><path fill="%23F77767" d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>');
}
.campus_form_lead_form .input_error #select2-country_id_campus_form-container {
    color: #f77767 !important;
}
.campus_form_lead_form .input_error_msg,
.campus_cta_popup_form .input_error_msg {
    display: block;
    color: #f77767;
    font-size: 15px;
    line-height: 18px;
    padding-top: 9px;
    text-align: left;
}
.campus_form_lead_form .input_error_msg[hidden],
.campus_cta_popup_form .input_error_msg[hidden] {
    display: none;
}
.campus_form_submit_btn {
    width: 100%;
    height: 55px;
    border: 0;
    border-radius: 8px;
    background: #f7941e;
    box-shadow: -2px 2px 0 #e57b41;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    overflow: hidden;
}
.campus_form_submit_btn .button_text {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
}
.campus_form_submit_btn .button_loading {
    width: 26px;
    height: 26px;
}

#campus_form_section .campus_form_title_wrap,
#campus_form_section .campus_form_content {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_form_section.animated .campus_form_title_wrap,
#campus_form_section.animated .campus_form_content {
    transform: translateY(0);
    opacity: 1;
}
#campus_form_section.animated .campus_form_content {
    transition-delay: 0.1s;
}
/* END OF CAMPUS FORM SECTION */

/* CAMPUS CTA POPUP */
#campus_cta_popup_overlay,
#campus_cta_popup_overlay * {
    box-sizing: border-box;
}
#campus_cta_popup_overlay {
    position: fixed;
    inset: 0;
    background: rgba(2, 2, 2, 0.6);
    z-index: 3000000002;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 10px;
}
#campus_cta_popup_overlay.open {
    display: flex;
}
#campus_cta_popup_container {
    position: relative;
    width: 1002px;
    max-width: 100%;
    min-height: 592px;
    border-radius: 19px;
    overflow: hidden;
    display: flex;
    background: #fff;
}
#campus_cta_popup_close {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #b4b4b4;
    font-size: 42px;
    line-height: 1;
    cursor: pointer;
    z-index: 3;
}
.campus_cta_popup_left {
    width: 56%;
    padding: 38px;
    background: #fff;
    display: flex;
    flex-direction: column;
}
.campus_cta_popup_title {
    color: #2c286b;
    font-family: "DM Sans";
    font-size: 54px;
    font-weight: 800;
    line-height: 1;
}
.campus_cta_popup_subtitle {
    margin-top: 6px;
    color: #2c286b;
    font-family: "DM Sans";
    font-size: 30px;
    font-weight: 700;
    line-height: 1.1;
}
.campus_cta_popup_subjects {
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}
.campus_cta_popup_subject {
    border-radius: 999px;
    padding: 6px 8px;
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 17px;
    font-weight: 700;
    line-height: normal;
}
.campus_cta_popup_subject_english { background: #71c5e8; }
.campus_cta_popup_subject_maths { background: #ffaa4d; }
.campus_cta_popup_subject_chinese { background: #c6579a; }
.campus_cta_popup_subject_science { background: #615e9b; }

.campus_cta_popup_form {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.campus_cta_popup_form .campus_form_input_wrap {
    height: 58px;
    border: 1px solid #cfd7e5;
    background-color: #fff;
    border-radius: 8px;
}
.campus_cta_popup_form .campus_form_input {
    color: #827e7e;
    font-size: 19px;
}
.campus_cta_popup_form #parent_name_campus_popup {
    color: #353277;
}
.campus_cta_popup_form #level_id_campus_popup:not(.placeholder),
.campus_cta_popup_form #learning_preference_campus_popup:not(.placeholder) {
    color: #353277;
}
.campus_cta_popup_form .campus_form_input::placeholder {
    color: #827e7e;
}
.campus_cta_popup_form .campus_form_phone_wrap {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 320 512"><path fill="%23F7941E" d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>');
    background-size: 13px;
    background-repeat: no-repeat;
    background-position: left 56px center;
    padding: 0 12px 0 0;
}
.campus_cta_popup_form .campus_form_phone_wrap .select2-container > * {
    line-height: 58px;
}
.campus_cta_popup_form .campus_form_phone_wrap .select2-selection__rendered {
    font-size: 18px;
    line-height: 58px !important;
    padding: 0 8px 0 0 !important;
}
.campus_cta_popup_form .campus_form_phone_input {
    padding-left: 74px;
}
.campus_cta_popup_form .campus_form_select {
    background-position: right 16px center;
    background-size: 12px;
}
.campus_cta_popup_form .input_error .campus_form_input_wrap {
    border-color: #f77767;
}
.campus_cta_popup_submit_btn {
    width: 100%;
    height: 66px;
    border: 0;
    border-radius: 8px;
    background: #f7941e;
    box-shadow: -2px 2px 0 #e57b41;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    overflow: hidden;
}
.campus_cta_popup_submit_btn .button_text {
    color: #fff;
    text-align: center;
    font-family: "DM Sans";
    font-size: 29px;
    font-weight: 700;
    line-height: normal;
}
.campus_cta_popup_submit_btn .button_loading {
    width: 26px;
    height: 26px;
}
.campus_cta_popup_policy {
    margin-top: 14px;
    color: #515151;
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
}
.campus_cta_popup_policy a {
    color: inherit;
    text-decoration: underline;
}

.campus_cta_popup_right {
    position: relative;
    width: 44%;
    background: #f3f4f4;
    overflow: hidden;
}
.campus_cta_popup_main_image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 58%;
}
.campus_cta_popup_badge {
    position: absolute;
    top: 36px;
    left: 50%;
    transform: translateX(-50%);
    width: 415px;
    height: 103px;
    z-index: 4;
}
.campus_cta_popup_badge picture,
.campus_cta_popup_badge img {
    display: block;
    width: 100%;
    height: 100%;
}
.campus_cta_popup_badge > img:first-child {
    width: 100%;
    height: 100%;
    display: block;
}
.campus_cta_popup_badge_medal {
    position: absolute;
    right: -10px;
    top: 12px;
    width: 52px;
    height: 67px;
}
.campus_cta_popup_badge_ratio {
    position: absolute;
    left: 8px;
    top: -6px;
    width: 74px;
    height: 42px;
    transform: rotate(-5deg);
}
.campus_cta_popup_badge_spark {
    position: absolute;
    left: 1px;
    top: 11px;
    width: 17px;
    height: 16px;
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
    #campus_cta_popup_container {
        width: 550px;
        min-height: 867px;
        border-radius: 16px;
        flex-direction: column-reverse;
        overflow: visible;
    }
    #campus_cta_popup_close {
        top: 43px;
        right: 8px;
        width: 40px;
        height: 40px;
        font-size: 42px;
        color: #b4b4b4;
    }
    .campus_cta_popup_right {
        width: 100%;
        height: 350px;
        border-radius: 16px 16px 0 0;
        background: #f3f4f4;
        overflow: visible;
    }
    .campus_cta_popup_main_image {
        object-position: center 58%;
    }
    .campus_cta_popup_badge {
        width: 372px;
        height: 93px;
        left: 50%;
        top: -50px;
        transform: translateX(-50%);
        z-index: 5;
    }
    .campus_cta_popup_badge_medal {
        width: 40px;
        height: 52px;
        right: -7px;
        top: 10px;
    }
    .campus_cta_popup_badge_ratio {
        width: 56px;
        height: 32px;
        left: 6px;
        top: -5px;
    }
    .campus_cta_popup_badge_spark {
        width: 13px;
        height: 12px;
        left: 1px;
        top: 8px;
    }
    .campus_cta_popup_left {
        width: 100%;
        padding: 24px;
        gap: 0;
    }
    .campus_cta_popup_title {
        font-size: 32px;
        line-height: 1;
        text-align: center;
    }
    .campus_cta_popup_subtitle {
        margin-top: 4px;
        font-size: 18px;
        line-height: normal;
        font-weight: 500;
        text-align: center;
    }
    .campus_cta_popup_subjects {
        margin-top: 16px;
        gap: 8px;
    }
    .campus_cta_popup_subject {
        padding: 8px 8px;
        font-size: 14px;
        line-height: 1.2;
    }
    .campus_cta_popup_form {
        margin-top: 16px;
        gap: 12px;
    }
    .campus_cta_popup_form .campus_form_input_wrap {
        height: 48px;
        padding: 12px 16px;
    }
    .campus_cta_popup_form .campus_form_input {
        font-size: 16px;
    }
    .campus_cta_popup_form .campus_form_phone_wrap .select2-container > * {
        line-height: 48px;
    }
    .campus_cta_popup_form .campus_form_phone_wrap .select2-selection__rendered {
        font-size: 16px;
        line-height: 48px !important;
        padding: 0 8px 0 0 !important;
    }
    .campus_cta_popup_form .campus_form_phone_wrap {
        background-position: left 51px center;
        padding: 0 12px 0 0;
    }
    .campus_cta_popup_form .campus_form_phone_input {
        padding-left: 70px;
    }
    .campus_cta_popup_submit_btn {
        height: 55px;
    }
    .campus_cta_popup_submit_btn .button_text {
        font-size: 20px;
    }
    .campus_cta_popup_policy {
        margin-top: 10px;
        font-size: 12px;
        text-align: center;
    }
    #campus_cta_popup_close {
        font-size: 24px;
    }
}

@media only screen and (max-width: 768px) {
    #campus_cta_popup_overlay {
        padding: 40px 16px 20px;
        align-items: flex-start;
        justify-content: center;
        overflow-y: auto;
    }
    #campus_cta_popup_container {
        width: 330px;
        max-width: calc(100vw - 32px);
        min-height: 0;
        border-radius: 16px;
        flex-direction: column-reverse;
        background: transparent;
        overflow: visible;
    }
    #campus_cta_popup_close {
        top: 28px;
        right: 2px;
        width: 36px;
        height: 36px;
        font-size: 22px;
        color: #b4b4b4;
    }
    .campus_cta_popup_right {
        width: 100%;
        height: 242px;
        border-radius: 16px 16px 0 0;
        background: #f3f4f4;
        overflow: visible;
    }
    .campus_cta_popup_main_image {
        inset: auto 0 0;
        width: 100%;
        height: 210px;
        object-position: center 58%;
        border-radius: 15.56px 15.56px 0 0;
    }
    .campus_cta_popup_badge {
        width: 210px;
        height: 74px;
        left: 50%;
        top: -30px;
        transform: translateX(-50%);
    }
    .campus_cta_popup_badge_medal {
        width: 33px;
        height: 42px;
        right: -8px;
        top: 11px;
    }
    .campus_cta_popup_badge_ratio {
        width: 48px;
        height: 30px;
        left: 6px;
        top: -5px;
    }
    .campus_cta_popup_badge_spark {
        width: 11px;
        height: 10px;
        left: 1px;
        top: 8px;
    }
    .campus_cta_popup_left {
        width: 100%;
        padding: 14px;
        gap: 0;
        border-radius: 0 0 16px 16px;
    }
    .campus_cta_popup_title {
        font-size: 28px;
        line-height: 1;
        text-align: center;
    }
    .campus_cta_popup_subtitle {
        margin-top: 4px;
        font-size: 16px;
        line-height: 1.2;
        font-weight: 500;
        text-align: center;
    }
    .campus_cta_popup_subjects {
        margin-top: 16px;
        gap: 8px;
    }
    .campus_cta_popup_subject {
        padding: 4px 6px;
        font-size: 13px;
        line-height: 19px;
    }
    .campus_cta_popup_form {
        margin-top: 16px;
        gap: 12px;
    }
    .campus_cta_popup_form .campus_form_input_wrap {
        height: 44px;
        padding: 12px 16px;
    }
    .campus_cta_popup_form .campus_form_input {
        font-size: 15px;
        line-height: 24px;
    }
    .campus_cta_popup_form .campus_form_phone_wrap {
        background-position: left 48px center;
        padding: 0 12px 0 0;
    }
    .campus_cta_popup_form .campus_form_phone_wrap .select2-container {
        width: 64px !important;
    }
    .campus_cta_popup_form .campus_form_phone_wrap .select2-container > * {
        line-height: 44px;
    }
    .campus_cta_popup_form .campus_form_phone_wrap .select2-selection__rendered {
        font-size: 15px;
        line-height: 44px !important;
        padding: 0 8px 0 0 !important;
    }
    .campus_cta_popup_form .campus_form_phone_input {
        padding-left: 66px;
    }
    .campus_cta_popup_form .campus_form_select {
        background-position: right 16px center;
        background-size: 12px;
    }
    .campus_cta_popup_submit_btn {
        height: 50px;
    }
    .campus_cta_popup_submit_btn .button_text {
        font-size: 16px;
    }
    .campus_cta_popup_policy {
        margin-top: 8px;
        font-size: 11px;
        line-height: 1.25;
        text-align: center;
    }
}
/* END OF CAMPUS CTA POPUP */

/* CAMPUS TESTIMONIAL SECTION */
#campus_testimonial_section,
#campus_testimonial_section * {
    box-sizing: border-box;
}
#campus_testimonial_section {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 48px 75px;
    background: #e8f8ff;
    display: flex;
    flex-direction: column;
    gap: 24px;
    align-items: center;
}
.ctr_title_block {
    width: 100%;
    max-width: 1140px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: center;
}
.campus_testimonial_title {
    width: 100%;
    color: #3b386c;
    text-align: center;
    font-family: "DM Sans";
    font-size: 34px;
    font-weight: 700;
    line-height: normal;
}
.ctr_subtitle {
    color: #262262;
    font-family: "DM Sans";
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -0.36px;
    margin: 0;
}
/* Tab bar */
.ctr_tab_bar {
    display: flex;
    align-items: center;
    background: rgba(255,255,255,0.04);
    border-radius: 100px;
    padding: 4px;
    gap: 8px;
}
.ctr_tab {
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 400;
    color: #262262;
    background: transparent;
    border: none;
    border-radius: 100px;
    padding: 6px 16px;
    cursor: pointer;
    line-height: 22px;
    white-space: nowrap;
    /* box-shadow: 0 2px 1px rgba(100,98,98,0.1); */
    transition: background 0.15s, font-weight 0.15s, box-shadow 0.15s;
}
.ctr_tab.active {
    background: #fff;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
/* Cards carousel */
.campus_testimonial_cards {
	--homepage-carousel-gap: 16px;
	position: relative;
    width: 100%;
    max-width: 1140px;
	display: block;
	overflow: hidden;
}
.campus_testimonial_track {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	gap: var(--homepage-carousel-gap);
	transition: transform 0.45s cubic-bezier(.22,.7,.24,1);
	will-change: transform;
}
.campus_testimonial_card {
    position: relative;
	box-sizing: border-box;
	flex: 0 0 calc((100% - var(--homepage-carousel-gap) - var(--homepage-carousel-gap)) / 3);
	min-width: 0;
    background: #fff;
    border-radius: 16px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
    box-shadow: 0 2px 2px rgba(100,98,98,0.1);
    overflow: hidden;
}
.campus_testimonial_card.hidden {
    display: none;
}
/* Decorative quote — match Study Hub .review-card::after (FA quote-right) */
.campus_testimonial_card::after,
.ctr_popup_card::after {
    content: '\f10e';
    position: absolute;
    top: 14px;
    right: 28px;
    z-index: 0;
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 4.6rem;
    line-height: 1;
    color: rgba(33, 177, 233, 0.09);
    transform: rotate(-4deg);
    pointer-events: none;
    user-select: none;
}
/* Card content */
.ctr_card_top {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1;
}
.ctr_reviewer_row {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 52px;
}
.ctr_avatar {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ctr_avatar_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ctr_avatar_initials {
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ctr_name_rating {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}
.ctr_name {
    font-family: "DM Sans";
    font-size: 16px;
    font-weight: 700;
    color: #262262;
    line-height: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ctr_rating_row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.ctr_stars {
    color: #ffcc00;
    font-size: 12px;
    letter-spacing: 1px;
    line-height: 1;
}
.ctr_date {
    font-family: "DM Sans";
    font-size: 12px;
    font-weight: 400;
    color: #b4b4b4;
    line-height: normal;
}
/* Text + read-more */
.ctr_text_wrap {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}
.ctr_text {
    font-family: "DM Sans";
    font-size: 14px;
    font-weight: 400;
    color: #515151;
    line-height: 1.6;
    margin: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}
.ctr_read_more {
    display: block;
    visibility: hidden;
    font-family: "DM Sans";
    font-size: 12px;
    font-weight: 700;
    color: #43bdf2;
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    text-align: left;
    line-height: normal;
}
.ctr_read_more:hover {
    text-decoration: underline;
}
/* Place label */
.ctr_place {
    font-family: "DM Sans";
    font-size: 10px;
    font-weight: 500;
    color: #b4b4b4;
    line-height: normal;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    z-index: 1;
}
/* Nav buttons */
.campus_testimonial_nav {
    display: flex;
    gap: 24px;
    justify-content: center;
}
.campus_testimonial_nav_btn {
    width: 52px;
    height: 52px;
    border: none;
    border-radius: 100px;
    background: #fff;
    cursor: pointer;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.campus_testimonial_nav_btn::before {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 3px solid #f39123;
    border-right: 3px solid #f39123;
    display: block;
}
.campus_testimonial_nav_prev::before {
    transform: translateX(2px) rotate(-135deg);
}
.campus_testimonial_nav_next::before {
    transform: translateX(-2px) rotate(45deg);
}
.campus_testimonial_nav_btn.disabled {
    opacity: 0.6;
    cursor: default;
}
.campus_testimonial_footer {
    width: 100%;
    text-align: center;
    color: #3669b2;
    font-family: "DM Sans";
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
}
/* Review popup */
#ctr_popup {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
#ctr_popup.open {
    display: flex;
}
.ctr_popup_card {
    position: relative;
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 3px 8px rgba(0,0,0,0.24);
    max-width: 560px;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.ctr_popup_text {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
    font-size: 15px;
    line-height: 1.65;
}
/* Entrance animations */
#campus_testimonial_section .ctr_title_block,
#campus_testimonial_section .ctr_tab_bar,
#campus_testimonial_section .campus_testimonial_cards,
#campus_testimonial_section .campus_testimonial_nav,
#campus_testimonial_section .campus_testimonial_footer {
    transform: translateY(38px);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s;
}
#campus_testimonial_section.animated .ctr_title_block,
#campus_testimonial_section.animated .ctr_tab_bar,
#campus_testimonial_section.animated .campus_testimonial_cards,
#campus_testimonial_section.animated .campus_testimonial_nav,
#campus_testimonial_section.animated .campus_testimonial_footer {
    transform: translateY(0);
    opacity: 1;
}
#campus_testimonial_section.animated .ctr_tab_bar { transition-delay: 0.08s; }
#campus_testimonial_section.animated .campus_testimonial_cards { transition-delay: 0.15s; }
#campus_testimonial_section.animated .campus_testimonial_nav { transition-delay: 0.25s; }
#campus_testimonial_section.animated .campus_testimonial_footer { transition-delay: 0.35s; }

@media (prefers-reduced-motion: reduce) {
	.campus_testimonial_track {
		transition: none;
	}
}

@media only screen and (min-width: 769px) {
	.campus_testimonial_cards {
		width: calc(100% + var(--homepage-carousel-gap) + var(--homepage-carousel-gap));
		max-width: calc(1140px + var(--homepage-carousel-gap) + var(--homepage-carousel-gap));
		margin-right: calc(var(--homepage-carousel-gap) * -1);
		margin-left: calc(var(--homepage-carousel-gap) * -1);
		padding-right: var(--homepage-carousel-gap);
		padding-left: var(--homepage-carousel-gap);
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 var(--homepage-carousel-gap), #000 calc(100% - var(--homepage-carousel-gap)), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 var(--homepage-carousel-gap), #000 calc(100% - var(--homepage-carousel-gap)), transparent 100%);
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
	}
}
/* END OF CAMPUS TESTIMONIAL SECTION */

/* TESTIMONIALS SECTION */
#testimonials_section_container {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: 0 0 80px 0;
}
#testimonials_illustration {
    position: relative;
    width: 584px;
    padding-top: 19px;
}
#testimonials_content {
    max-width: 414px;
    padding-left: 30px;
}
.testimonials_image img{
    width: 90%;
    height: auto;
    /* transform: scale(1.1); */
}
.testimonials_item {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: opacity 1s;
    width: 100%;
}
#testimonials_section_container[position="1"] .testimonials_item[order="1"],
#testimonials_section_container[position="2"] .testimonials_item[order="2"],
#testimonials_section_container[position="3"] .testimonials_item[order="3"],
#testimonials_section_container[position="4"] .testimonials_item[order="4"],
#testimonials_section_container[position="5"] .testimonials_item[order="5"]
{
    opacity: 1;
}
.testimonials_title {
    font-family: "DM Sans";
    font-weight: 900;
    font-size: 39px;
    line-height: 47px;
    padding-bottom: 19px;
}
.testimonials_text {
    position: relative;
    height: 200px;
    font-family: 'DM Sans';
    font-weight: 300;
    font-size: 18px;
    line-height: 29px;
    /* padding-bottom: 19px; */
    overflow: hidden;
}
.testimonials_user_name {
    position: relative;
    font-family: 'DM Sans';
    font-weight: 700;
    font-size: 27px;
    height: 32px;
    line-height: 32px;
    padding-bottom: 8px;
}
.testimonials_user_title {
    position: relative;
        font-family: 'DM Sans';
    font-weight: 100;
    font-size: 23px;
    height: 26px;
    line-height: 26px;
    padding-bottom: 38px;
}
.testimonials_navigation {
    display: flex;
}
.testimonials_nav_button_wrapper:nth-of-type(1) {
    margin-right: 17px;
}
.testimonials_nav_button {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s, background-color 0.3s;
}
.testimonials_nav_button.left {
    background-color: var(--white);
}
.testimonials_nav_button.right {
    background-color: var(--white);
}
.testimonials_nav_button:hover {
    transform: scale(1.1);
}
.testimonials_nav_button.disabled {
    cursor: unset;
    /* opacity: 0; */
    /* transition: opacity 0.3s; */
    color: var(--white);
    background-color: var(--light_silver);
}
.testimonials_nav_button.disabled .testimonials_arrow {
    display: none;
}
.testimonials_nav_button.disabled .testimonials_arrow_white {
    display: unset;
}
.testimonials_nav_button .testimonials_arrow {
    display: unset;
}
.testimonials_nav_button .testimonials_arrow_white {
    display: none;
}
.testimonials_nav_button.disabled:hover {
    transform: scale(1);
}
.testimonials_arrow {
    width: 38px;
}
.testimonials_nav_button.left .testimonials_arrow {
    margin-right: 5px;
}
.testimonials_nav_button.right .testimonials_arrow {
    margin-left: 5px;
}

/* First Load Animation */
.testimonials_illustration,
.testimonials_title,
.testimonials_text,
.testimonials_user_name,
.testimonials_user_title {
    transition-property: transform, opacity;
    transition-duration: 0.5s;
    transform: translateY(38px);
    opacity: 0;
}
.testimonials_illustration { transition-delay: 0.3s; }
.testimonials_title { transition-delay: 0.4s; }
.testimonials_text { transition-delay: 0.5s; }
.testimonials_user_name { transition-delay: 0.6s; }
.testimonials_user_title { transition-delay: 0.7s; }
.testimonials_nav_button_wrapper {
    transition-property: transform;
    transition-duration: 0.5s;
    transform: scale(0);
    transition-delay: 1.4s;
}
#testimonials_section_container.animate_intro .testimonials_illustration,
#testimonials_section_container.animate_intro .testimonials_title,
#testimonials_section_container.animate_intro .testimonials_text,
#testimonials_section_container.animate_intro .testimonials_user_name,
#testimonials_section_container.animate_intro .testimonials_user_title {
    transform: translateY(0);
    opacity: 1;
}
#testimonials_section_container.animate_intro .testimonials_nav_button_wrapper {
    transform: scale(1);
}
/* End of First Load Animation */
/* END OF TESTIMONIALS SECTION */

/* STATS SECTION */
#stats_section_container {
    position: relative;
    text-align: center;
}
#stats_title {
    font-family: "DM Sans";
    font-weight: 900;
    color: var(--navy_blue);
    font-size: 54px;
    line-height: 65px;
}
#stats_images_container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-top: 35px;
}
.stats_content {
    user-select: none;
    margin-right: 29px;
}
.stats_content:nth-last-of-type(1) {
    margin-right: 0;
}
.stats_content_img {
    width: 189px;
    height: 189px;
}
.stats_content_title {
    font-family: "DM Sans";
    font-weight: 900;
    color: var(--navy_blue);
    font-size: 32px;
    padding-bottom: 15px;
    margin-top: -15px;
}
.stats_content_desc {
    font-family: 'DM Sans';
    font-weight: 500;
    color: var(--grey);
    font-size: 20px;
    max-width: 113px;
    margin: 0 auto;
}
/* animate stats section intro */
#stats_section_container #stats_title,
#stats_section_container .stats_content {
    transition-property: transform, opacity;
    transition-duration: 0.5s;
    transform: translateY(38px);
    opacity: 0;
}
#stats_section_container.animate_intro #stats_title,
#stats_section_container.animate_intro .stats_content {
    transform: translateY(0);
    opacity: 1;
}
#stats_section_container .stats_content:nth-of-type(1) { transition-delay: 0.1s; }
#stats_section_container .stats_content:nth-of-type(2) { transition-delay: 0.2s; }
#stats_section_container .stats_content:nth-of-type(3) { transition-delay: 0.3s; }
#stats_section_container .stats_content:nth-of-type(4) { transition-delay: 0.4s; }
#stats_section_container .stats_content:nth-of-type(5) { transition-delay: 0.5s; }
/* END OF STATS SECTION */

/* BLOG SECTION */
#blog_section_container {
    position: relative;
    text-align: center;
    padding: 83px 0 0;
}
#blog_title {
    font-family: "DM Sans";
    font-weight: 900;
    color: var(--navy_blue);
    font-size: 54px;
    line-height: 65px;
}
#view_more_popular_article { display: none; }

/* article card navigation */
.blog_nav {
    position: absolute;
    top: 361px;
    z-index: 2;
}
.blog_nav_btn {
    background-color: var(--white);
    border-radius: 50%;
    box-sizing: border-box;
    box-shadow: 0px 0px 53px rgba(0, 0, 0, 0.16);
    width: 69px;
    height: 69px;
    padding: 11px;
    cursor: pointer;
    transition: transform 0.3s;
}
.blog_nav_btn:hover {
    transform: scale(1.1);
}
.blog_nav_btn img {
    width: 100%;
    height: 100%;
}
.blog_nav_white_btn {
    background-color: var(--light_silver);
}
#blog_navigation_left, #blog_navigation_left_white {
    left: 25px;
}
#blog_navigation_right, #blog_navigation_right_white {
    right: 25px;
}

/* blog article cards */
#blog_section_body {
    position: relative;
    width: 100%;
    white-space: nowrap;
    font-size: 0;
    padding: 56px 0 70px;
    justify-content: center;
    overflow-x: scroll;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}
#blog_section_body::-webkit-scrollbar {
    display: none;  /* Safari and Chrome */
}
#blog_left_overlay, #blog_right_overlay {
    width: 150px;
    opacity: 0;
    transition: 0.3s opacity;
    position: absolute;
    top: 0;
    height: 100%;
    z-index: 1;
    height: 406px;
    top: 203px;
}
#blog_left_overlay {
    left: -1px;
    background: linear-gradient(to right,  rgba(229, 243, 247, 1), rgba(229, 243, 247, 0));
}
#blog_right_overlay {
    right: -1px;
    background: linear-gradient(to left, rgba(229, 243, 247, 1), rgba(229, 243, 247, 0));
}
#blog_left_overlay:hover, #blog_navigation_left:hover  ~ #blog_left_overlay,
#blog_right_overlay:hover, #blog_navigation_right:hover  ~ #blog_right_overlay {
    display: block;
    opacity: 1;
}
#blog_cards_container {
    display: table;
    margin: auto;
}
.blog_card_wrapper {
    display: inline-block;
    white-space: normal;
    margin-right: 33px;
    vertical-align: top;
}
.blog_card_wrapper:nth-of-type(1) {
    margin-left: 110px;
}
.blog_card_wrapper:nth-last-of-type(1) {
    margin-right: 110px;
}
.blog_card {
    display: block;
    width: 334px;
    height: 401px;
    border-radius: 15px;
    overflow: hidden;
    background: var(--white);
    box-shadow: 2px 5px 17px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s;
}
.blog_card:hover {
    transform: scale(1.06);
}
.blog_card_image {
    width: 100%;
    height: 192px;
    overflow: hidden;
}
.blog_card_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.blog_card_detail {
    padding: 17px 29px;
    text-align: left;
}
.blog_card_date {
    display: none;
        font-family: 'DM Sans';
    font-weight: 100;
    font-size: 12px;
    color: var(--navy_blue);
    margin-bottom: 8px;
}
.blog_card_title {
    font-family: "DM Sans";
    font-weight: 900;
    color: var(--navy_blue);
    font-size: 23px;
    line-height: 27px;
    margin-bottom: 19px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
}
.blog_card_excerpt, .blog_card_read_button {
    font-family: 'DM Sans';
font-weight: 300;
    color: var(--grey);
    font-size: 12px;
    line-height: 20px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3; /* number of lines to show */
    line-clamp: 3;
    -webkit-box-orient: vertical;
}
.blog_card_read_button {
    display: inline-block;
    cursor: pointer;
    color: var(--apricot_orange);
    margin-top: 2px;
}

/* blog button view all */
#blog_section_button {
    position: relative;
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

/* animate blog section intro */
#blog_section_container #blog_title,
#blog_section_container .blog_card_wrapper,
#blog_section_container #blog_section_button {
    transition-property: transform, opacity;
    transition-duration: 0.5s;
    transform: translateY(38px);
    opacity: 0;
}
#blog_section_container.animate_intro #blog_title,
#blog_section_container.animate_intro .blog_card_wrapper,
#blog_section_container.animate_intro #blog_section_button {
    transform: translateY(0);
    opacity: 1;
}
#blog_section_container .blog_card_wrapper:nth-of-type(1) { transition-delay: 0s; }
#blog_section_container .blog_card_wrapper:nth-of-type(2) { transition-delay: 0.1s; }
#blog_section_container .blog_card_wrapper:nth-of-type(3) { transition-delay: 0.2s; }
#blog_section_container .blog_card_wrapper:nth-of-type(4) { transition-delay: 0.3s; }
#blog_section_container .blog_card_wrapper:nth-of-type(5) { transition-delay: 0.4s; }
#blog_section_container .blog_card_wrapper:nth-of-type(6) { transition-delay: 0.5s; }
#blog_section_container .blog_card_wrapper:nth-of-type(7) { transition-delay: 0.6s; }
#blog_section_container .blog_card_wrapper:nth-of-type(8) { transition-delay: 0.7s; }
#blog_section_container .blog_card_wrapper:nth-of-type(9) { transition-delay: 0.8s; }
#blog_section_container .blog_card_wrapper:nth-of-type(10) { transition-delay: 0.9s; }
#blog_section_container #blog_section_button { transition-delay: 0.4s; }
#blog_section_container #blog_navigation_left, #blog_section_container #blog_navigation_left_white,
#blog_section_container #blog_navigation_right, #blog_section_container #blog_navigation_right_white {
    transition: transform 0.5s 0.3s;
    transform: scale(0);
}
#blog_section_container.animate_intro #blog_navigation_left, #blog_section_container.animate_intro #blog_navigation_left_white,
#blog_section_container.animate_intro #blog_navigation_right, #blog_section_container.animate_intro #blog_navigation_right_white {
    transform: scale(1);
}
/* END OF BLOG SECTION */

/* LOGOS SECTION */
#logos_section {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 48px 0 48px;
    margin: 0 auto;
}
.logos_section_image {
    position: relative;
    top: 23px;
    opacity: 0;
    transition: top 0.3s, opacity 0.3s;
    height: auto;
}
.logos_section_image.animated {
    opacity: 1;
    top: 0;
}
.logo_section_block {
    display: flex;
    flex-direction: column;
    margin-right: 36px;
    align-items: flex-end;
}
.logo_section_block > div {
    display: flex;
    align-items: center;
    padding-bottom: 16px;
}
.logo_section_block > div:last-child {
    padding-bottom: 0;
}
.logo_section_block .logos_section_image {
    width: auto;
    margin-right: 24px;
}
.logo_section_block .logos_section_image:last-child {
    margin-right: 0;
}
.logo_section_block > div:nth-child(1) .logos_section_image:nth-child(1) {
    height: 21px;
}
.logo_section_block > div:nth-child(1) .logos_section_image:nth-child(2) {
    height: 36px;
}
.logo_section_block > div:nth-child(2) .logos_section_image:nth-child(1) {
    height: 26px;
}
.logo_section_block > div:nth-child(2) .logos_section_image:nth-child(2) {
    height: 50px;
}
.logo_section_rounded .logos_section_image {
    width: auto;
    height: 100px;
    margin-right: 24px;
}
.logo_section_rounded .logos_section_image:last-child {
    margin-right: 0;
}
/* END OF LOGOS SECTION */

/* DESKTOP SCREEN SIZE */
@media only screen and (min-width: 768px) and (max-width: 1440px) {
    /* HERO SECTION */
    #hero_section {
        padding: 64px 75px;
    }
    .hero_section_inner {
        justify-content: space-between;
        gap: 36px;
    }
    .hero_content {
        flex: 1 1 0;
        max-width: 594px;
        min-height: 403px;
    }
    .hero_description {
        width: 100%;
    }
    .hero_image {
        display: flex;
        justify-content: flex-end;
        flex: 1 1 0;
        min-width: 0;
    }
    .hero_image img {
        width: 100%;
        max-width: 510px;
        height: auto;
        max-height: 403px;
        border-radius: 20px;
    }

    /* First Load Animation */
    .hero_title,
    .hero_description,
    .hero_image,
    .hero_button {
        transform: translateY(2.639vw);
    }
    .hero_title.animated,
    .hero_description.animated,
    .hero_image.animated,
    .hero_button.animated {
        transform: translateY(0.000vw);
    }
    .hero_button {
        margin-top: 0;
        gap: 0;
        justify-content: flex-start;
    }
    .hero_cta_btn {
        width: auto;
        min-height: 62px;
        padding: 16px 24px;
        font-size: 24px;
        line-height: normal;
        gap: 0;
    }
    /* End of First Load Animation */
    /* END OF HERO SECTION */

    /* AI SECTION */
    #ai_section_container {
        padding: 0 7.639vw 5.556vw;
    }
    /* ai section ilustration */
    #ai_section_ilustration {
        width: 46.875vw;
        padding-top: 1.736vw
    }
    /* end of ai section ilustration */
    /* ai section content */
    #ai_section_content {
        width: 28.750vw;
        padding: 0 0 0 3.264vw;
    }
    #ai_content_title {
        font-size: 3.264vw;
        line-height: 4.167vw;
        margin-left: -0.260vw;
    }
    #ai_content_title_bold {
        font-size: 3.264vw;
        line-height: 4.167vw;
        padding-bottom: 1.667vw;
        margin-left: -0.260vw;
    }
    #ai_content_desc {
        font-size: 1.250vw;
        line-height: 2.031vw;
    }
    /* animate section content intro */
    #ai_section_container .animate_fade_in {
        transform: translateY(1.042vw);
    }
    /* end of ai section content */
    /* END OF AI SECTION */

    /* OUR PRODUCTS SECTION */
    #our_products_section {
        padding: 0 0 5.556vw 12.708vw;
    }
    .product_content {
        width: 37.5vw;
        margin-top: 0.694vw;
    }
    .product_title {
        font-size: 3.264vw;
        line-height: 4.167vw;
        margin-left: -0.278vw;
        padding-bottom: 0.139vw;
    }
    .product_title_bold {
        font-size: 3.264vw;
        line-height: 4.167vw;
        padding-bottom: 1.667vw;
        margin-left: -0.278vw;
    }
    .product_description {
        font-size: 1.250vw;
        line-height: 2.014vw;
        padding-bottom: 3.750vw;
        width: 30.556vw;
    }
    .product_image {
        width: 36.111vw;
        padding-top: 1.528vw;
    }

    /* First Load Animation */
    .product_title,
    .product_title_bold,
    .product_description,
    .product_image,
    .product_button {
        transform: translateY(2.639vw);
    }
    .product_title.animated,
    .product_title_bold.animated,
    .product_description.animated,
    .product_image.animated,
    .product_button.animated {
        transform: translateY(0.000vw);
    }
    /* End of First Load Animation */
    /* END OF OUR PRODUCTS SECTION */

    /* TESTIMONIALS SECTION */
    #testimonials_section_container {
        padding: 0 0 5.556vw 0;
    }
    #testimonials_illustration {
        width: 40.521vw;
        padding-top: 1.302vw;
    }
    #testimonials_content {
        max-width: 28.750vw;
        padding-left: 2.083vw;
    }
    .testimonials_title {
        font-size: 2.708vw;
        line-height: 3.281vw;
        padding-bottom: 1.302vw;
    }
    .testimonials_text {
        height: 13.54vw;
        font-size: 1.250vw;
        line-height: 2.031vw;
        /* padding-bottom: 1.302vw; */
    }
    .testimonials_user_name {
        font-size: 1.875vw;
        height: 2.240vw;
        line-height: 2.240vw;
        padding-bottom: 0.521vw;
    }
    .testimonials_user_title {
        font-size: 1.563vw;
        height: 1.823vw;
        line-height: 1.823vw;
        padding-bottom: 2.604vw;
    }
    .testimonials_nav_button_wrapper:nth-of-type(1) {
        margin-right: 1.146vw;
    }
    .testimonials_nav_button {
        width: 4.167vw;
        height: 4.167vw;
    }
    .testimonials_arrow {
        width: 2.604vw;
    }
    .testimonials_nav_button.left .testimonials_arrow {
        margin-right: 0.313vw;
    }
    .testimonials_nav_button.right .testimonials_arrow {
        margin-left: 0.313vw;
    }

    /* First Load Animation */
    .testimonials_title,
    .testimonials_text,
    .testimonials_user_name,
    .testimonials_user_title {
        transform: translateY(2.604vw);
    }
    /* End of First Load Animation */
    /* END OF TESTIMONIALS SECTION */

    /* STATS SECTION */
    #stats_title {
        font-size: 3.750vw;
        line-height: 4.531vw;
    }
    #stats_images_container {
        padding-top: 2.396vw;
    }
    .stats_content {
        margin-right: 1.979vw;
    }
    .stats_content_img {
        width: 13.125vw;
        height: 13.125vw;
    }
    .stats_content_title {
        font-size: 2.188vw;
        padding-bottom: 1.042vw;
        margin-top: -1.042vw;
    }
    .stats_content_desc {
        font-size: 1.406vw;
        max-width: 7.813vw;
    }
    /* animate stats section intro */
    #stats_section_container #stats_title,
    #stats_section_container .stats_content {
        transform: translateY(2.604vw);
    }
    /* END OF STATS SECTION */

    /* BLOG SECTION */
    #blog_section_container {
        padding: 5.729vw 0 0;
    }
    #blog_title {
        font-size: 3.750vw;
        line-height: 4.531vw;
    }

    /* article card navigation */
    .blog_nav {
        top: 25.073vw;
    }
    .blog_nav_btn {
        box-shadow: 0.000vw 0.000vw 3.646vw rgba(0, 0, 0, 0.16);
        width: 4.792vw;
        height: 4.792vw;
        padding: 0.729vw;
    }
    #blog_navigation_left, #blog_navigation_left_white {
        left: 1.719vw;
    }
    #blog_navigation_right, #blog_navigation_right_white {
        right: 1.719vw;
    }

    /* blog article cards */
    #blog_section_body {
        padding: 3.906vw 0 4.844vw;
    }
    #blog_left_overlay, #blog_right_overlay {
        width: 10.417vw;
        height: 28.177vw;
        top: 14.063vw;
    }
    #blog_left_overlay {
        left: -0.052vw;
    }
    #blog_right_overlay {
        right: -0.052vw;
    }
    .blog_card_wrapper {
        margin-right: 2.292vw;
    }
    .blog_card_wrapper:nth-of-type(1) {
        margin-left: 7.656vw;
    }
    .blog_card_wrapper:nth-last-of-type(1) {
        margin-right: 7.656vw;
    }
    .blog_card {
        width: 23.177vw;
        height: 27.865vw;
        border-radius: 1.042vw;
        box-shadow: 0.104vw 0.313vw 1.146vw rgba(0, 0, 0, 0.08);
    }
    .blog_card_image {
        height: 13.333vw;
    }
    .blog_card_detail {
        padding: 1.146vw 1.979vw;
    }
    .blog_card_date {
        font-size: 0.833vw;
        margin-bottom: 0.521vw;
    }
    .blog_card_title {
        font-size: 1.615vw;
        line-height: 1.875vw;
        margin-bottom: 1.302vw;
    }
    .blog_card_excerpt, .blog_card_read_button {
        font-size: 0.833vw;
        line-height: 1.354vw;
    }
    .blog_card_read_button {
        margin-top: 0.156vw;
    }

    /* animate blog section intro */
    #blog_section_container #blog_title,
    #blog_section_container .blog_card_wrapper,
    #blog_section_container #blog_section_button {
        transform: translateY(2.604vw);
    }
    /* END OF BLOG SECTION */

    /* LOGOS SECTION */
    #logos_section {
        padding: 3.333vw 0 3.333vw;
    }
    .logos_section_image {
        top: 1.597vw;
    }
    .logo_section_block {
        margin-right: 2.500vw;
    }
    .logo_section_block > div {
        padding-bottom: 1.111vw;
    }
    .logo_section_block > div:last-child {
        padding-bottom: 0;
    }
    .logo_section_block .logos_section_image {
        width: auto;
        margin-right: 1.667vw;
    }
    .logo_section_block .logos_section_image:last-child {
        margin-right: 0;
    }
    .logo_section_block > div:nth-child(1) .logos_section_image:nth-child(1) {
        height: 1.458vw;
    }
    .logo_section_block > div:nth-child(1) .logos_section_image:nth-child(2) {
        height: 2.500vw;
    }
    .logo_section_block > div:nth-child(2) .logos_section_image:nth-child(1) {
        height: 1.806vw;
    }
    .logo_section_block > div:nth-child(2) .logos_section_image:nth-child(2) {
        height: 3.472vw;
    }
    .logo_section_rounded .logos_section_image {
        width: auto;
        height: 6.944vw;
        margin-right: 1.667vw;
    }
    .logo_section_rounded .logos_section_image:last-child {
        margin-right: 0;
    }
    /* END OF LOGOS SECTION */
}

/* TABLET HERO SECTION (769px - 1024px) */
@media only screen and (min-width: 769px) and (max-width: 1024px) {
    #hero_section {
        padding: 32px 24px;
        background-image: linear-gradient(-83.886deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .hero_section_inner {
        display: flex;
        justify-content: space-between;
        max-width: 100%;
        gap: 24px;
        align-items: start;
    }
    .hero_content {
        flex: 0 1 395px;
        min-height: 0;
        justify-content: flex-start;
        gap: 24px;
        min-width: 0;
        max-width: 395px;
    }
    .hero_logo {
        width: 99px;
        margin-bottom: 0;
    }
    .hero_title {
        margin: 0;
        font-size: 32px;
        line-height: normal;
        letter-spacing: -0.96px;
    }
    .hero_description {
        font-size: 14px;
        line-height: 20px;
        width: 100%;
    }
    .hero_image {
        display: flex;
        justify-content: flex-end;
        flex: 0 1 auto;
        margin-left: auto;
        min-width: 0;
        height: auto;
    }
    .hero_image picture {
        width: auto;
        max-width: 100%;
        height: auto;
    }
    .hero_image img {
        width: auto;
        max-width: 100%;
        height: 340px;
        object-fit: contain;
        margin: 0;
        border-radius: 14px;
    }
    .hero_button {
        margin-top: 0;
        gap: 0;
        justify-content: flex-start;
    }
    .hero_cta_btn {
        width: auto;
        min-height: 56px;
        padding: 14px 20px;
        font-size: 18px;
        line-height: normal;
        gap: 0;
    }

    /* CAMPUS PROBLEM SECTION */
    #campus_problem_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_problem_section_heading {
        font-size: 24px;
    }
    .campus_problem_section_subtitle {
        width: 594px;
        max-width: 100%;
        font-size: 18px;
    }
    .campus_problem_items {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        min-height: 0;
    }
    .campus_problem_card {
        background: #fff;
        border-radius: 24px;
        padding: 24px 12px;
        min-height: 0;
        box-shadow: 0 2px 2px rgba(100, 98, 98, 0.1);
        gap: 24px;
    }
    .campus_problem_icon {
        width: 92px;
        height: 99px;
        margin: 0 auto;
    }
    .campus_problem_icon picture,
    .campus_problem_icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_problem_card_title {
        font-size: 20px;
    }
    .campus_problem_card_desc {
        color: #515151;
        font-size: 16px;
    }
    .campus_problem_section_badge {
        width: auto;
        max-width: 100%;
        padding: 6px 24px;
    }
    .campus_problem_section_badge_text {
        font-size: 16px;
    }

    /* CAMPUS ECOSYSTEM SECTION */
    #campus_ecosystem_section {
        padding: 32px 24px;
        gap: 24px;
        overflow: visible;
    }
    .campus_ecosystem_badge {
        width: 178px;
        font-size: 16px;
    }
    .campus_ecosystem_heading {
        font-size: 24px;
    }
    .campus_ecosystem_subtitle {
        width: 100%;
        max-width: 100%;
        font-size: 18px;
    }
    .campus_ecosystem_body {
        flex-direction: column-reverse;
        gap: 24px;
        max-width: 100%;
        padding: 0;
        align-items: stretch;
    }
    .campus_ecosystem_visual {
        width: 100%;
        height: 320px;
        max-width: none;
        flex: 0 0 auto;
    }
    .campus_ecosystem_visual picture,
    .campus_ecosystem_visual img,
    .campus_ecosystem_visual lottie-player {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_ecosystem_items {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .campus_ecosystem_item {
        border-radius: 16px;
        padding: 16px;
        gap: 18px;
    }
    .campus_ecosystem_item_icon_wrap {
        width: 60px;
        height: 60px;
        padding: 12px;
    }
    .campus_ecosystem_item_icon,
    .campus_ecosystem_item_icon picture,
    .campus_ecosystem_item_icon img {
        width: 30px;
        height: 30px;
    }
    .campus_ecosystem_item_title {
        font-size: 16px;
    }
    .campus_ecosystem_item_desc {
        color: #515151;
        font-size: 14px;
        line-height: 19px;
        letter-spacing: normal;
    }

    /* CAMPUS PROMISES SECTION */
    #campus_promises_section {
        background: #2a2761;
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_promises_panel {
        display: none;
    }
    .campus_promises_badge {
        width: auto;
        font-size: 16px;
        padding: 8px 24px;
    }
    .campus_promises_heading {
        font-size: 24px;
    }
    .campus_promises_cards {
        max-width: 100%;
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: center;
        gap: 12px;
    }
    .campus_promises_card {
        min-height: 0;
        flex: 0 0 254px;
        width: 254px;
        max-width: 254px;
        border-radius: 16px;
        padding: 24px;
        gap: 16px;
    }
    .campus_promises_card_tag {
        font-size: 14px;
    }
    .campus_promises_card_title {
        font-size: 24px;
    }
    .campus_promises_card_subtitle {
        font-size: 14px;
    }
    .campus_promises_card_illustration {
        width: 141px;
        height: 140px;
    }
    .campus_promises_card_illustration img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_promises_card_desc {
        margin-top: 0;
        font-size: 16px;
        line-height: normal;
    }
    #campus_promises_section .campus_promises_footer_badge {
        width: auto;
        max-width: 100%;
        border: 0;
        background: transparent;
        padding: 0;
    }
    #campus_promises_section .campus_promises_footer_badge_overlay {
        display: none;
    }
    #campus_promises_section .campus_promises_footer_badge_text {
        font-size: 16px;
        color: #fff;
        background: none;
        -webkit-background-clip: initial;
        background-clip: initial;
        -webkit-text-fill-color: #fff;
    }

    /* CAMPUS PLANS SECTION */
    #campus_plans_section {
        padding: 32px 24px;
        background: linear-gradient(-86.508deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .campus_plans_title {
        max-width: 100%;
        margin: 0 auto;
        gap: 8px;
        padding-bottom: 24px;
    }
    .campus_plans_badge {
        width: auto;
        font-size: 16px;
        padding: 8px 24px;
    }
    .campus_plans_heading {
        font-size: 24px;
    }
    .campus_plans_cards {
        max-width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        align-items: stretch;
    }
    .campus_plans_card {
        border-radius: 16px;
        padding: 16px;
        gap: 16px;
    }
    .campus_plans_plan_badge {
        font-size: 14px;
        line-height: 19px;
        padding: 8px 16px;
        letter-spacing: 0;
    }
    .campus_plans_plan_name {
        font-size: 22px;
        line-height: normal;
        letter-spacing: 0;
    }
    .campus_plans_items {
        gap: 12px;
    }
    .campus_plans_item {
        border-radius: 16px;
        padding: 12px;
        min-height: 0;
    }
    .campus_plans_item_feature {
        min-height: 113px;
    }
    .campus_plans_item b,
    .campus_plans_item span {
        font-size: 16px;
    }

    /* CAMPUS PERSONAL SECTION */
    #campus_personal_section {
        padding: 32px 24px;
        background: linear-gradient(-87.561deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .campus_personal_inner {
        max-width: 100%;
        gap: 24px;
    }
    .campus_personal_title {
        gap: 16px;
    }
    .campus_personal_badge {
        width: 231px;
        font-size: 16px;
    }
    .campus_personal_heading {
        font-size: 24px;
    }
    .campus_personal_cards {
        width: 100%;
        max-width: 948px;
        gap: 12px;
        justify-content: center;
    }
    .campus_personal_card {
        width: auto;
        border-radius: 24px;
        padding: 12px 24px 12px 12px;
    }
    .campus_personal_card img {
        width: 18px;
        height: 18px;
    }
    .campus_personal_card span {
        font-size: 16px;
    }
    .campus_personal_subheading {
        font-size: 16px;
    }
    .campus_personal_plp {
        border-radius: 24px;
        padding: 12px;
        gap: 12px;
        max-width: 100%;
        align-items: flex-start;
        flex-wrap: nowrap;
    }
    .campus_personal_plp_image {
        width: auto;
        max-width: 324px;
        min-width: 0;
        min-height: 0;
        border-radius: 12px;
        flex: 1 1 0;
    }
    .campus_personal_plp_image img {
        width: 100%;
        height: 100%;
        /* max-height: 400px; */
        object-fit: cover;
    }
    .campus_personal_plp_content {
        flex: 1 1 0;
        min-width: 260px;
        gap: 16px;
    }
    .campus_personal_plp_title {
        font-size: 24px;
    }
    .campus_personal_plp_desc {
        font-size: 16px;
        line-height: 26px;
    }
    .campus_personal_plp_desc p {
        margin-bottom: 16px;
    }

    /* CAMPUS STRUCTURE SECTION */
    #campus_structure_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_structure_title {
        font-size: 24px;
    }
    .campus_structure_cards {
        max-width: 100%;
        min-height: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }
    .campus_structure_card {
        height: auto;
        min-height: 242px;
        border-radius: 16px;
        padding: 24px;
        gap: 8px;
    }
    .campus_structure_step {
        width: 48px;
        height: 46px;
        font-size: 24px;
        line-height: 46px;
    }
    .campus_structure_card_title {
        width: 100%;
        font-size: 20px;
        min-height: 0;
    }
    .campus_structure_card_desc {
        font-size: 16px;
    }
    .campus_structure_card_tag {
        width: 180px;
        max-width: 100%;
        padding: 8px 16px;
        font-size: 14px;
        letter-spacing: 0;
    }

    /* CAMPUS PROOF SECTION */
    #campus_proof_section {
        padding: 32px 24px;
    }
    .campus_proof_inner {
        max-width: 100%;
        gap: 24px;
    }
    .campus_proof_title {
        font-size: 24px;
    }
    .campus_proof_cards {
        max-width: 100%;
        gap: 12px;
        align-items: stretch;
    }
    .campus_proof_card {
        border-radius: 12px;
        box-shadow: none;
        padding: 24px 18px;
        gap: 8px;
        justify-content: flex-start;
        min-height: 129px;
    }
    .campus_proof_card_value {
        font-size: 24px;
    }
    .campus_proof_card_label {
        max-width: 100%;
        font-size: 16px;
    }

    /* CAMPUS LOCATION SECTION */
    #campus_location_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_location_title {
        font-size: 24px;
    }
    .campus_location_content {
        max-width: 100%;
        gap: 16px;
        align-items: stretch;
    }
    .campus_location_map_wrap {
        flex: 1 1 0;
    }
    .campus_location_map_frame {
        border-radius: 12px;
        padding: 2px 2px 6px;
    }
    .campus_location_map_frame iframe {
        border-radius: 10px;
    }
    .campus_location_cards {
        flex: 1 1 0;
        gap: 12px;
    }
    .campus_location_card {
        border-radius: 12px;
        padding: 12px;
        min-height: 76px;
    }
    .campus_location_card_name,
    .campus_location_card_mrt {
        font-size: 16px;
    }

    /* CAMPUS FAQ SECTION */
    #campus_faq_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_faq_title {
        font-size: 24px;
    }
    .campus_faq_items {
        max-width: 100%;
    }
    .campus_faq_question {
        padding: 12px 24px;
    }
    .campus_faq_question_text {
        font-size: 16px;
    }
    .campus_faq_answer {
        font-size: 16px;
    }
    .campus_faq_item.active .campus_faq_answer {
        padding: 24px;
    }
    /* CAMPUS FORM SECTION */
    #campus_form_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_form_title_wrap {
        max-width: 100%;
    }
    .campus_form_title {
        font-size: 22px;
    }
    .campus_form_subtitle {
        font-size: clamp(11px, 2.1vw, 18px);
    }
    .campus_form_content {
        max-width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
        align-items: stretch;
    }
    .campus_form_visual {
        border-radius: 12px;
    }
    .campus_form_lead_form {
        padding: 0;
        gap: 24px;
    }
    .campus_form_fields {
        gap: 16px;
    }
    .campus_form_label {
        font-size: 16px;
    }
    .campus_form_submit_btn {
        width: 100%;
        max-width: 100%;
    }

    /* CAMPUS TESTIMONIAL SECTION */
    #campus_testimonial_section {
        padding: 36px 24px;
        gap: 20px;
    }
    .campus_testimonial_title {
        font-size: 24px;
    }
    .ctr_subtitle {
        font-size: 16px;
    }
    .campus_testimonial_cards {
		--homepage-carousel-gap: 12px;
		max-width: calc(100% + var(--homepage-carousel-gap) + var(--homepage-carousel-gap));
    }
    .campus_testimonial_card {
        border-radius: 12px;
        padding: 16px;
    }
    .campus_testimonial_nav {
        gap: 24px;
        padding-top: 6px;
    }
    .campus_testimonial_nav_btn {
        width: 48px;
        height: 48px;
    }
    .campus_testimonial_nav_btn::before {
        width: 10px;
        height: 10px;
        border-top-width: 2px;
        border-right-width: 2px;
    }
    .campus_testimonial_footer {
        font-size: 16px;
    }
}

/* MID BREAKPOINT ADJUSTMENT (1025px - 1200px) */
@media only screen and (min-width: 1025px) and (max-width: 1200px) {
    #campus_ecosystem_section {
        padding: 48px 24px;
    }
    .campus_ecosystem_body {
        max-width: 100%;
        align-items: center;
        gap: 16px;
    }
    .campus_ecosystem_items {
        flex: 1 1 44%;
        min-width: 0;
    }
    .campus_ecosystem_item {
        padding: 12px 16px;
        gap: 14px;
    }
    .campus_ecosystem_item_title,
    .campus_ecosystem_item_desc {
        font-size: 16px;
    }
    .campus_ecosystem_visual {
        flex: 0 1 56%;
        width: auto;
        min-width: 0;
    }
    .campus_ecosystem_visual img,
    .campus_ecosystem_visual lottie-player {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    #campus_personal_section {
        padding: 48px 24px;
    }
    .campus_personal_plp {
        max-width: 100%;
        padding: 16px;
        gap: 16px;
        align-items: flex-start;
    }
    .campus_personal_plp_image {
        flex: 1 1 56%;
        max-width: none;
    }
    .campus_personal_plp_image img {
        left: 9.6825%;
        top: 12.8889%;
        width: 104.9206%;
        height: auto;
    }
    .campus_personal_plp_content {
        flex: 1 1 44%;
        min-width: 0;
        gap: 14px;
    }
    .campus_personal_plp_title {
        font-size: 28px;
    }
    .campus_personal_plp_desc {
        font-size: 16px;
        line-height: 28px;
    }
}

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
    #campus_structure_section {
        padding: 48px 40px;
        gap: 32px;
    }
    .campus_structure_cards {
        gap: 16px;
    }
    .campus_structure_card {
        padding: 20px 14px;
        gap: 18px;
    }
    .campus_structure_card_title {
        width: auto;
        font-size: 18px;
    }
    .campus_structure_card_desc {
        font-size: 15px;
    }
}

@media only screen and (min-width: 1025px) and (max-width: 1360px) {
    .campus_structure_card {
        padding: 16px;
    }
}

/* MOBILE SCREEN SIZE */
@media only screen and (max-width: 768px) {
    /* HERO SECTION */
    #hero_section {
        padding: 32px 24px;
        background-image: linear-gradient(-88.266deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .hero_section_inner {
        flex-direction: column;
        align-items: center;
        max-width: 380px;
        gap: 24px;
    }
    .hero_content {
        display: contents;
        width: 100%;
        min-height: 0;
        text-align: center;
    }
    .hero_logo {
        order: 1;
        width: 148px;
        margin-bottom: 0;
    }
    .hero_image {
        order: 2;
        width: 100%;
        margin-top: 0;
    }
    .hero_image img {
        width: 100%;
        max-width: 380px;
        height: auto;
        object-fit: cover;
        border-radius: 20px;
    }
    .hero_title {
        order: 3;
        margin: 0;
        text-align: center;
        font-size: 28px;
        line-height: normal;
        letter-spacing: -0.84px;
    }
    .hero_description {
        order: 4;
        width: 100%;
        font-size: 14px;
        line-height: 20px;
        text-align: center;
    }
    .hero_button {
        order: 5;
        flex-direction: row;
        justify-content: center;
        margin-top: 0;
        gap: 0;
        width: 100%;
    }
    .hero_cta_btn {
        width: 100%;
        max-width: 380px;
        min-height: 62px;
        border-radius: 40px;
        font-size: 18px;
        line-height: normal;
        gap: 0;
        padding: 14px 16px;
    }

    /* First Load Animation */
    .hero_title,
    .hero_description,
    .hero_image,
    .hero_button {
        transform: translateY(5.487vw);
    }
    /* End of First Load Animation */
    /* END OF HERO SECTION */

    /* CAMPUS PROBLEM SECTION */
    #campus_problem_section {
        padding: 32px 24px;
        gap: 24px;
        overflow: visible;
    }
    .campus_problem_section_title {
        gap: 16px;
        align-items: center;
    }
    .campus_problem_section_heading {
        width: 380px;
        max-width: 100%;
        font-size: 24px;
    }
    .campus_problem_section_subtitle {
        width: 278px;
        max-width: 100%;
        font-size: 16px;
        letter-spacing: -0.32px;
    }
    .campus_problem_items {
        position: relative;
        width: calc(100% + 48px);
        margin-left: -24px;
        margin-right: -24px;
        min-height: 0;
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        gap: 12px;
        padding: 0 48px;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 24px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .campus_problem_items::-webkit-scrollbar {
        display: none;
    }
    .campus_problem_card {
        flex: 0 0 262px;
        width: 262px;
        min-height: 0;
        border-radius: 12px;
        background: #fff;
        box-shadow: none;
        padding: 24px 12px;
        gap: 24px;
        scroll-snap-align: start;
    }
    .campus_problem_icon {
        width: 92px;
        height: 99px;
        margin: 0 auto;
    }
    .campus_problem_icon picture,
    .campus_problem_icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_problem_card_title {
        font-size: 20px;
    }
    .campus_problem_card_desc {
        font-size: 14px;
    }
    .campus_problem_section_badge {
        width: auto;
        max-width: 100%;
        border-radius: 8.205vw;
        padding: 2.564vw 4.103vw;
    }
    .campus_problem_section_badge_text {
        font-size: 3.033vw;
        white-space: nowrap;
        line-height: normal;
    }

    /* CAMPUS ECOSYSTEM SECTION */
    #campus_ecosystem_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_ecosystem_badge {
        width: 161px;
        font-size: 14px;
    }
    .campus_ecosystem_heading {
        font-size: 24px;
    }
    .campus_ecosystem_subtitle {
        width: 100%;
        max-width: 100%;
        font-size: 16px;
        letter-spacing: -0.32px;
    }
    .campus_ecosystem_body {
        flex-direction: column-reverse;
        gap: 24px;
        max-width: 100%;
        padding: 0;
    }
    .campus_ecosystem_visual {
        width: 100%;
        height: 244px;
    }
    .campus_ecosystem_visual picture,
    .campus_ecosystem_visual img,
    .campus_ecosystem_visual lottie-player {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_ecosystem_items {
        position: relative;
        width: calc(100% + 48px);
        margin-left: -24px;
        margin-right: -24px;
        min-height: 183px;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch;
        overflow-x: auto;
        overflow-y: hidden;
        gap: 12px;
        padding: 0 48px;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 24px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
    }
    .campus_ecosystem_items::-webkit-scrollbar {
        display: none;
    }
    .campus_ecosystem_item {
        flex: 0 0 250px !important;
        width: 250px !important;
        max-width: 250px;
        min-height: 0;
        border-radius: 16px;
        padding: 16px;
        gap: 8px;
        justify-content: flex-start;
        flex-direction: column;
        text-align: center;
        scroll-snap-align: start;
        align-self: stretch;
    }
    .campus_ecosystem_item_icon_wrap {
        width: 60px;
        height: 60px;
        margin: 0 auto;
        padding: 12px;
    }
    .campus_ecosystem_item_icon,
    .campus_ecosystem_item_icon picture,
    .campus_ecosystem_item_icon img {
        width: 30px;
        height: 30px;
    }
    .campus_ecosystem_item_content {
        align-items: center;
    }
    .campus_ecosystem_item_title {
        font-size: 16px;
    }
    .campus_ecosystem_item_desc {
        color: #515151;
        font-size: 14px;
        line-height: 19px;
        letter-spacing: normal;
    }

    /* CAMPUS PROMISES SECTION */
    #campus_promises_section {
        background: #2a2761;
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_promises_panel {
        display: none;
    }
    .campus_promises_badge {
        width: auto;
        font-size: 14px;
        padding: 6px 24px;
    }
    .campus_promises_heading {
        font-size: 24px;
    }
    .campus_promises_cards {
        position: relative;
        width: calc(100% + 48px);
        margin-left: -24px;
        margin-right: -24px;
        max-width: none;
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        gap: 12px;
        padding: 0 48px;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 24px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        opacity: 1;
        transform: none;
    }
    .campus_promises_cards::-webkit-scrollbar {
        display: none;
    }
    .campus_promises_card {
        flex: 0 0 254px;
        width: 254px;
        max-width: 254px;
        min-height: 0;
        border-radius: 16px;
        padding: 24px;
        gap: 16px;
        scroll-snap-align: start;
    }
    .campus_promises_card_tag {
        font-size: 12px;
    }
    .campus_promises_card_title {
        font-size: 24px;
    }
    .campus_promises_card_subtitle {
        font-size: 12px;
    }
    .campus_promises_card_illustration {
        width: 141px;
        height: 140px;
    }
    .campus_promises_card_illustration img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .campus_promises_card_desc {
        margin-top: 0;
        font-size: 14px;
        line-height: normal;
    }
    #campus_promises_section .campus_promises_footer_badge {
        width: auto;
        max-width: 100%;
        border: 0;
        background: transparent;
        padding: 0;
    }
    #campus_promises_section .campus_promises_footer_badge_overlay {
        display: none;
    }
    #campus_promises_section .campus_promises_footer_badge_text {
        font-size: 14px;
        white-space: normal;
        line-height: normal;
        color: #fff;
        background: none;
        -webkit-background-clip: initial;
        background-clip: initial;
        -webkit-text-fill-color: #fff;
    }

    /* CAMPUS PERSONAL SECTION */
    #campus_personal_section {
        padding: 32px 24px;
        background: linear-gradient(-89.275deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .campus_personal_inner {
        gap: 24px;
    }
    .campus_personal_title {
        gap: 16px;
    }
    .campus_personal_badge {
        width: 208px;
        font-size: 14px;
    }
    .campus_personal_heading {
        width: 258px;
        max-width: 100%;
        font-size: 22px;
    }
    .campus_personal_cards {
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
    .campus_personal_card {
        width: 100%;
        max-width: 100%;
        border-radius: 24px;
        padding: 12px 24px 12px 12px;
    }
    .campus_personal_card img {
        width: 16px;
        height: 16px;
    }
    .campus_personal_card span {
        font-size: 14px;
        white-space: nowrap;
    }
    .campus_personal_subheading {
        font-size: 16px;
        line-height: normal;
    }
    .campus_personal_plp {
        max-width: 100%;
        border-radius: 16px;
        padding: 12px;
        display: flex;
        flex-direction: column;
        gap: 24px;
    }
    .campus_personal_plp_image {
        width: 100%;
        min-width: 0;
        height: auto;
        aspect-ratio: auto;
        border-radius: 12px;
    }
    .campus_personal_plp_image img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }
    .campus_personal_plp_content {
        gap: 16px;
        min-width: 0;
    }
    .campus_personal_plp_title {
        font-size: 22px;
        text-align: center;
        overflow-wrap: anywhere;
    }
    .campus_personal_plp_desc {
        font-size: 14px;
        line-height: 24px;
        text-align: center;
        overflow-wrap: anywhere;
    }
    .campus_personal_plp_desc p {
        margin-bottom: 14px;
    }

    /* CAMPUS STRUCTURE SECTION */
    #campus_structure_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_structure_title {
        font-size: 24px;
    }
    .campus_structure_title_text_desktop {
        display: inline;
    }
    .campus_structure_title_text_mobile {
        display: none;
    }
    .campus_structure_cards {
        width: 100%;
        max-width: 100%;
        min-height: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .campus_structure_card {
        height: auto;
        min-height: 253px;
        border-radius: 16px;
        padding: 16px 10px;
        gap: 8px;
        justify-content: center;
    }
    .campus_structure_step {
        width: 40px;
        height: 39px;
        font-size: 20px;
        line-height: 39px;
    }
    .campus_structure_card_title {
        width: 100%;
        min-height: 44px;
        font-size: 16px;
        line-height: 22px;
    }
    .campus_structure_card_desc {
        font-size: 14px;
    }
    .campus_structure_card_tag {
        width: 100%;
        padding: 6px 16px;
        font-size: 12px;
        letter-spacing: 0;
    }

    /* CAMPUS PROOF SECTION (mobile Figma 114:2068 — 3-up row) */
    #campus_proof_section {
        padding: 32px 24px;
    }
    .campus_proof_inner {
        max-width: 100%;
        gap: 24px;
    }
    .campus_proof_title {
        font-size: 24px;
        color: #353277;
    }
    .campus_proof_cards {
        max-width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: center;
        gap: 12px;
    }
    .campus_proof_card {
        flex: 1 1 0;
        min-width: 0;
        width: auto;
        border-radius: 12px;
        box-shadow: none;
        padding: 24px 12px;
        gap: 8px;
        justify-content: flex-start;
        min-height: 0;
    }
    .campus_proof_card_value {
        font-size: 20px;
        font-weight: 700;
        line-height: normal;
    }
    .campus_proof_card_label {
        max-width: 100%;
        font-size: 14px;
        font-weight: 400;
        line-height: normal;
        overflow-wrap: anywhere;
    }

    /* CAMPUS TESTIMONIAL SECTION */
    #campus_testimonial_section {
        padding: 32px 24px;
        gap: 20px;
    }
    .campus_testimonial_title {
        font-size: 22px;
    }
    .ctr_subtitle {
        font-size: 15px;
    }
    .campus_testimonial_cards {
        position: relative;
        width: calc(100% + 48px);
        margin-left: -24px;
        margin-right: -24px;
        max-width: none;
		display: block;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 0 24px;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 24px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .campus_testimonial_cards::-webkit-scrollbar {
        display: none;
    }
	.campus_testimonial_track {
		width: max-content;
		gap: 16px;
		transition: none;
	}
    .campus_testimonial_card {
        flex: 0 0 299px;
        width: 299px;
        height: auto;
        min-height: 200px;
        border-radius: 12px;
        padding: 16px;
        gap: 12px;
        scroll-snap-align: center;
    }
    .campus_testimonial_card::after,
    .ctr_popup_card::after {
        top: 10px;
        right: 14px;
    }
    .campus_testimonial_nav {
        gap: 24px;
        padding-top: 6px;
    }
    .campus_testimonial_nav_btn {
        width: 48px;
        height: 48px;
    }
    .campus_testimonial_nav_btn::before {
        width: 10px;
        height: 10px;
        border-top-width: 2px;
        border-right-width: 2px;
    }
    .campus_testimonial_footer {
        font-size: 16px;
    }
    #ctr_popup {
        padding: 16px;
        align-items: center;
        justify-content: center;
    }
    .ctr_popup_card {
        max-height: 75vh;
        border-radius: 16px;
    }

    /* CAMPUS PLANS SECTION */
    #campus_plans_section {
        padding: 32px 24px;
        background: linear-gradient(-88.878deg, #8e458f 1.03%, #018bc4 97.26%);
    }
    .campus_plans_title {
        max-width: 100%;
        margin: 0 auto;
        gap: 8px;
        padding-bottom: 24px;
    }
    .campus_plans_badge {
        width: auto;
        font-size: 14px;
        padding: 6px 24px;
    }
    .campus_plans_heading {
        font-size: 24px;
    }
    .campus_plans_cards {
        max-width: 100%;
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    .campus_plans_card {
        border-radius: 16px;
        padding: 16px;
        gap: 16px;
    }
    .campus_plans_plan_badge {
        font-size: 12px;
        line-height: 16px;
        letter-spacing: 0;
        padding: 8px 16px;
    }
    .campus_plans_plan_name {
        font-size: 20px;
        letter-spacing: 0;
        line-height: normal;
    }
    .campus_plans_items {
        gap: 12px;
        flex: initial;
    }
    .campus_plans_item {
        border-radius: 16px;
        padding: 12px;
        min-height: 0;
    }
    .campus_plans_item_feature {
        min-height: 101px;
    }
    .campus_plans_item b,
    .campus_plans_item span {
        font-size: 14px;
    }
    .campus_plans_item b {
        font-size: 16px;
    }

    /* CAMPUS LOCATION SECTION */
    #campus_location_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_location_title {
        font-size: 22px;
        line-height: normal;
    }
    .campus_location_content {
        max-width: 100%;
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }
    .campus_location_map_wrap {
        width: 100%;
        flex: initial;
    }
    .campus_location_map_frame {
        height: 230px;
        border-radius: 12px;
        padding: 2px 2px 6px;
    }
    .campus_location_map_frame iframe {
        border-radius: 10px;
    }
    .campus_location_cards {
        width: 100%;
        flex: initial;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .campus_location_card {
        border-radius: 12px;
        padding: 12px;
        min-height: 76px;
    }
    .campus_location_card_name,
    .campus_location_card_mrt {
        font-size: 14px;
    }

    /* CAMPUS FAQ SECTION */
    #campus_faq_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_faq_title {
        font-size: 22px;
    }
    .campus_faq_items {
        max-width: 100%;
        gap: 12px;
    }
    .campus_faq_question {
        padding: 12px 24px;
    }
    .campus_faq_question_text {
        font-size: 14px;
    }
    .campus_faq_answer {
        font-size: 14px;
    }
    .campus_faq_item.active .campus_faq_answer {
        padding: 24px;
    }
    /* CAMPUS FORM SECTION */
    #campus_form_section {
        padding: 32px 24px;
        gap: 24px;
    }
    .campus_form_title {
        font-size: 22px;
    }
    .campus_form_subtitle {
        font-size: clamp(10px, 3.1vw, 18px);
    }
    .campus_form_content {
        max-width: 100%;
        display: flex;
        flex-direction: column;
        gap: 24px;
    }
    .campus_form_visual {
        height: 200px;
        border-radius: 12px;
    }
    .campus_form_visual img {
        object-fit: cover;
    }
    .campus_form_lead_form {
        width: 100%;
        padding: 0;
        gap: 24px;
    }
    .campus_form_fields {
        gap: 16px;
    }
    .campus_form_label {
        font-size: 14px;
    }
    .campus_form_submit_btn {
        margin-top: 0;
        width: 100%;
        max-width: 100%;
    }
    .campus_form_submit_btn .button_text {
        font-size: 16px;
    }

    /* AI SECTION */
    #ai_section_container {
        padding: 6.075vw 0 6.075vw;
        align-items: center;
    }
    #ai_section_body {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }
    /* ai section ilustration */
    #ai_section_ilustration {
        margin: auto;
        order: 2;
        width: 87vw;
        transform: scale(1);
        padding-top: 0;
        margin-top: -6vw;
    }
    /* end of ai section ilustration */
    /* ai section content */
    #ai_section_content {
        order: 1;
        width: 84.112vw;
        box-sizing: border-box;
        padding: 0 0 14vw;
    }
    #ai_content_title {
        font-size: 8.012vw;
        line-height: 10.047vw;
        padding: 0;
        margin: 0;
        transition-delay: 0s;
    }
    #ai_content_title_bold {
        font-size: 8.012vw;
        line-height: 10.047vw;
        padding-bottom: 5.607vw;
        margin: 0;
        transition-delay: 0.1s;
    }
    #ai_content_desc {
        font-size: 4.206vw;
        line-height: 6.075vw;
        transition-delay: 0.2s;
    }
    /* animate section content intro */
    #ai_section_container .animate_fade_in {
        transform: translateY(1.042vw);
    }
    /* end of ai section content */
    /* END OF AI SECTION */

    /* OUR PRODUCTS SECTION */
    #our_products_section {
        flex-direction: column;
        padding: 6.075vw 0 6.075vw;
    }
    .product_content {
        width: 87vw;
        margin-top: 0;
        text-align: center;
    }
    .product_title {
        font-size: 8.012vw;
        line-height: 10.047vw;
        margin-left: 0;
    }
    .product_title_bold {
        font-size: 8.012vw;
        line-height: 10.047vw;
        padding-bottom: 5.607vw;
        margin-left: 0;
    }
    .product_description {
        font-size: 4.206vw;
        line-height: 6.075vw;
        padding-bottom: 6.308vw;
        width: unset;
    }
    .product_button {
        margin: auto;
    }
    .product_image {
        width: 74.299vw;
        padding-top: 6.308vw;
    }

    /* First Load Animation */
    .product_title,
    .product_title_bold,
    .product_description,
    .product_image,
    .product_button {
        transform: translateY(5.487vw);
    }
    /* End of First Load Animation */
    /* END OF OUR PRODUCTS SECTION */

    /* TESTIMONIALS SECTION */
    #testimonials_section_container {
        padding: 9.248vw 7.477vw 0;
        text-align: center;
    }
    #testimonials_illustration {
        position: absolute;
        top: 31vw;
        /* left: 4.5vw; */
        width: 100%;
        height: 75vw;
        z-index: 1;
    }
    #testimonials_content {
        max-width: unset;
        padding-left: 0;
    }
    .testimonials_image img{
        height: 100%;
        /* transform: scale(1); */
    }
    .testimonials_title {
        font-size: 7.477vw;
        line-height: 8.879vw;
        padding-bottom: 92vw;
    }
    .testimonials_text {
        height: 44vw;
        font-size: 4.206vw;
        line-height: 6.075vw;
        /* padding-bottom: 10.206vw; */
    }
    .testimonials_user_name {
        font-size: 5.841vw;
        height: 6.776vw;
        line-height: 6.776vw;
        padding-bottom: 2vw;
    }
    .testimonials_user_title {
        font-size: 4.673vw;
        height: 4.206vw;
        line-height: 4.206vw;
        padding-bottom: 4.206vw;
    }
    .testimonials_navigation {
        justify-content: center;
    }
    .testimonials_nav_button_wrapper:nth-of-type(1) {
        margin-right: 2.336vw;
    }
    .testimonials_nav_button {
        width: 8.879vw;
        height: 8.879vw;
    }
    .testimonials_nav_button:hover {
        transform: scale(1);
    }
    .testimonials_arrow {
        width: 5.6vw;
    }
    .testimonials_nav_button.left .testimonials_arrow {
        margin-right: 0.6vw;
    }
    .testimonials_nav_button.right .testimonials_arrow {
        margin-left: 0.6vw;
    }

    /* First Load Animation */
    .testimonials_title,
    .testimonials_text,
    .testimonials_user_name,
    .testimonials_user_title {
        transform: translateY(5.487vw);
    }
    .testimonials_title { transition-delay: 0s; }
    .testimonials_text { transition-delay: 1.1s; }
    .testimonials_user_name { transition-delay: 1.2s; }
    .testimonials_user_title { transition-delay: 1.3s; }
    /* End of First Load Animation */
    /* END OF TESTIMONIALS SECTION */


    /* STATS SECTION */
    #stats_section_container {
        padding: 8.666vw 0 0;
    }
    #stats_title {
        max-width: 72%;
        margin: 0 auto;
        font-size: 7.477vw;
        line-height: 8.879vw;
    }
    #stats_images_container {
        padding-top: 1.168vw;
        flex-wrap: wrap;
    }
    .stats_content {
        padding-top: 2.804vw;
        margin-right: 0;
    }
    .stats_content_img {
        width: 29.206vw;
        height: 29.206vw;
    }
    .stats_content_title {
        font-size: 5.140vw;
        padding-bottom: 1.636vw;
        margin-top: -2.5vw;
    }
    .stats_content_desc {
        font-size: 4.206vw;
        line-height: 6.075vw;
        max-width: 26vw;
    }
    /* animate stats section intro */
    #stats_section_container #stats_title,
    #stats_section_container .stats_content {
        transform: translateY(5.487vw);
    }
    /* END OF STATS SECTION */

    /* BLOG SECTION */
    #blog_section_container {
        padding: 9.930vw 0 0;
    }
    #blog_title {
        font-size: 7.477vw;
        line-height: 8.879vw;
    }
    #view_more_popular_article { display: block; }

    /* hide desktop only element */
    .blog_nav, #blog_left_overlay, #blog_right_overlay {
        display: none !important;
    }

    /* blog article cards */
    #blog_section_body {
        padding: 8.178vw 8.178vw 7.477vw 8.178vw;
        box-sizing: border-box;
    }
    #blog_cards_container {
        display: flex;
        flex-direction: column;
    }
    .blog_card_wrapper.hide_mobile { display: none; }
    .blog_card_wrapper,
    .blog_card_wrapper:nth-of-type(1) {
        display: block;
        margin: 0;
    }
    .blog_card_wrapper:nth-last-of-type(1) { margin: 0; }
    .blog_card {
        display: flex;
        flex-direction: row;
        width: 100%;
        height: unset;
        border-radius: 2.804vw;
        box-shadow: 0.000vw 0.701vw 11.682vw rgba(0, 0, 0, 0.05);
        margin-bottom: 4.673vw;
        padding: 2.804vw 3.738vw;
        box-sizing: border-box;
    }
    .blog_card:hover {
        transform: scale(1);
    }
    .blog_card_image {
        width: 21.262vw;
        height: 20.561vw;
        border-radius: 2.336vw;
    }
    .blog_card_detail {
        width: 50.467vw;
        padding: 0 0 0 4.206vw;
    }
    .blog_card_date {
        font-size: 2.804vw;
        line-height: 3.037vw;
        margin-bottom: 1.168vw;
    }
    .blog_card_title {
        font-size: 4.206vw;
        line-height: 6.075vw;
        margin-bottom: 2.336vw;
    }
    .blog_card_excerpt {
        -webkit-line-clamp: 5; /* number of lines to show */
    }
    .blog_card_excerpt, .blog_card_read_button {
        font-size: 4.206vw;
        line-height: 6.075vw;
    }
    .blog_card_read_button {
        margin-top: 0.701vw;
    }

    /* animate blog section intro */
    #blog_section_container #blog_title,
    #blog_section_container .blog_card_wrapper,
    #blog_section_container #blog_section_button {
        transform: translateY(2.604vw);
    }
    /* END OF BLOG SECTION */

    /* LOGOS SECTION */
    #logos_section {
        padding: 12.800vw 0 12.800vw;
        flex-direction: column;
    }
    .logos_section_image {
        top: 4.673vw;
    }
    .logo_section_block {
        margin-right: 0;
        align-items: center;
    }
    .logo_section_block > div {
        padding-bottom: 3.738vw;
    }
    .logo_section_block > div:last-child {
        padding-bottom: 3.738vw;
    }
    .logo_section_block .logos_section_image {
        width: auto;
        margin-right: 3.738vw;
    }
    .logo_section_block .logos_section_image:last-child {
        margin-right: 0;
    }
    .logo_section_block > div:nth-child(1) .logos_section_image:nth-child(1) {
        height: 2.804vw;
    }
    .logo_section_block > div:nth-child(1) .logos_section_image:nth-child(2) {
        height: 5.374vw;
    }
    .logo_section_block > div:nth-child(2) .logos_section_image:nth-child(1) {
        height: 3.972vw;
    }
    .logo_section_block > div:nth-child(2) .logos_section_image:nth-child(2) {
        height: 7.477vw;
    }
    .logo_section_rounded .logos_section_image {
        width: auto;
        height: 10.748vw;
        margin-right: 3.738vw;
    }
    .logo_section_rounded .logos_section_image:last-child {
        margin-right: 0;
    }
    /* END OF LOGOS SECTION */
}

/* HERO VIDEO SECTION */
#video_section { padding: 0; margin: 0; }
#video_section .hero_video_wrapper {
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: transparent;
}
#video_section .hero_video_wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
#video_section .video_overlay_dark {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
    background: linear-gradient(to top, rgba(38, 34, 98, 0.6) 0%, rgba(38, 34, 98, 0.3) 50%, transparent 100%);
    z-index: 1;
    opacity: 1;
    transition: opacity 1s ease-out;
}
#video_section .video_overlay_dark.fade_out {
    opacity: 0;
}
#video_section .video_overlay_content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 0 130px 80px 130px;
    z-index: 2;
    box-sizing: border-box;
    opacity: 1;
    transition: opacity 0.2s ease-out;
}
#video_section .video_overlay_content.fade_out {
    opacity: 0;
}
#video_section .video_title {
    font-family: "DM Sans";
    color: var(--white);
    font-weight: 900;
    font-size: 48px;
    line-height: 60px;
    margin-left: -4px;
    display: block;
}
#video_section .video_title_icon {
    position: relative;
    top: 7px;
    margin: 0;
    padding: 0;
    width: 80px;
    height: auto;
}
#video_section .video_description {
    font-family: 'DM Sans';
    font-weight: 300;
    color: var(--white);
    font-size: 32px;
    line-height: 29px;
    padding-bottom: 12px;
}
#video_section .video_description_icon {
    position: relative;
    top: 7px;
    margin: 0;
    padding: 0;
    width: 56px;
    height: auto;
}
/* Liquid glass card wrapper for video title + description */
#video_section .video_glass_card {
    position: relative;
    padding: 0;
    border-radius: 24px;
    display: inline-block;
    max-width: 1048px;
    width: 100%;
    overflow: visible;
}
/* Glass background layer with distortion */
/* #video_section .video_glass_card::before {
    content: "";
    position: absolute;
    inset: -20px;
    background-color: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(2px) brightness(1.1);
    -webkit-backdrop-filter: blur(12px) brightness(1.1);
    border-radius: 24px;
    z-index: 0;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1),
                0 2px 8px rgba(0, 0, 0, 0.05);
} */
/* Content wrapper - stays clear */
#video_section .video_glass_content {
    position: relative;
    padding: 2.5rem 3rem;
    z-index: 2;
    border-radius: 24px;
}
.glass-filter-overlay {
    filter: url(#glass-distortion);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    backdrop-filter: blur(2px) brightness(1.1);
    -webkit-backdrop-filter: blur(12px) brightness(1.1);
}
.video_glass_card_wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
}
/* Safari fix: Remove SVG filter as it conflicts with backdrop-filter */
@supports (-webkit-backdrop-filter: blur(1px)) {
    @supports not (backdrop-filter: blur(1px)) {
        #video_section .video_glass_content {
            filter: none;
            -webkit-backdrop-filter: blur(2px) brightness(1.15);
            background-color: rgba(255, 255, 255, 0.08);
        }
    }
}
/* Safari-specific fix - applied via JavaScript class */
.safari-browser #video_section .video_glass_content {
    filter: none !important;
    -webkit-backdrop-filter: blur(2px) brightness(1.15) !important;
    background-color: rgba(255, 255, 255, 0.08) !important;
}
/* Glass edge highlight - subtle */
#video_section .video_glass_card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-top: 1px solid rgba(255, 255, 255, 0.45);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    pointer-events: none;
    z-index: 3;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1),
    0 2px 8px rgba(0, 0, 0, 0.05);
}
#video_section .video_glass_content_inner {
    position: relative;
    top: -14px;
    z-index: 2;
}
/* Learn More Button */
#video_section .video_learn_more_button {
    display: inline-block;
    padding: 14px 32px;
    border-radius: 100px;
    background: linear-gradient(94deg, rgba(46, 189, 210, 0.60) 0.87%, rgba(101, 47, 142, 0.60) 99.13%);
    color: #ffffff;
    font-family: 'DM Sans';
    font-weight: 800;
    font-size: 24px;
    text-align: center;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
    margin-top: 24px;
}
#video_section .video_learn_more_button:hover {
    transform: translateY(-2px) scale(1.05);
    filter: brightness(1.1);
}
#video_section .video_learn_more_button:active {
    transform: translateY(0) scale(1);
    box-shadow: 0 2px 10px rgba(16, 132, 190, 0.3);
}
/* DESKTOP SCREEN SIZE (768px - 1440px) */
@media only screen and (min-width: 768px) and (max-width: 1440px) {
    #video_section .video_overlay_content {
        padding: 0 9.028vw 5.556vw 9.028vw;
    }
    #video_section .video_title {
        font-size: 3.333vw;
        line-height: 4.167vw;
        margin-left: -0.278vw;
    }
    #video_section .video_title_icon {
        width: 5.556vw;
        top: 0.486vw;
    }
    #video_section .video_description {
        font-size: 2.222vw;
        line-height: 2.014vw;
        padding-bottom: 0.833vw;
    }
    #video_section .video_description_icon {
        width: 3.889vw;
        top: 0.486vw;
    }
    #video_section .video_glass_card {
        max-width: 72.778vw;
    }
    #video_section .video_glass_card::before {
        border-radius: 1.667vw;
        inset: -1.389vw;
    }
    #video_section .video_glass_content {
        padding: 1.736vw 2.083vw;
    }
    #video_section .video_glass_content_inner {
        top: -0.972vw;
    }
    #video_section .video_learn_more_button {
        padding: 0.972vw 2.222vw;
        font-size: 1.667vw;
        margin-top: 1.667vw;
    }
}
/* MOBILE SCREEN SIZE */
@media only screen and (max-width: 768px) {
    #video_section .hero_video_wrapper {
        aspect-ratio: 9 / 16; /* Vertical video aspect ratio */
        width: 100% !important;
        height: auto !important;
    }
    #video_section .video_overlay_dark {
        height: 50%;
    }
    #video_section .video_overlay_content {
        padding: 0 6.075vw;
        align-items: center;
        text-align: center;
        justify-content: flex-end;
        padding-bottom: 40px;
    }
    #video_section .video_title {
        font-size: 5vw;
        line-height: 10.22vw;
        margin-left: 0;
        padding-bottom: 8px;
    }
    #video_section .video_title_icon {
        width: 8.63vw;
        top: 0.987vw;
    }
    #video_section .video_description {
        font-size: 4.48vw;
        line-height: 6.78vw;
        padding-bottom: 1.2vw;
        max-width: unset;
    }
    #video_section .video_description_icon {
        width: 7.09vw;
        top: 0.867vw;
    }
    #video_section .video_glass_card {
        max-width: 87.85vw;
        /* top: 200px; */
    }
    #video_section .video_glass_card::before {
        border-radius: 4.673vw;
        backdrop-filter: blur(10px) brightness(1.1);
        -webkit-backdrop-filter: blur(10px) brightness(1.1);
        inset: -4vw;
        background-color: rgba(255, 255, 255, 0.08);
    }
    #video_section .video_glass_content {
        padding: 7.477vw 3.346vw;
    }
    #video_section .video_glass_content_inner {
        top: -0.733vw;
    }
    #video_section .video_glass_card::after {
        border-radius: 4.673vw;
    }
    #video_section .video_learn_more_button {
        padding: 2.738vw 5.477vw;
        font-size: 4.31vw;
        margin-top: 4.4vw;
    }
}
@media only screen and (max-width: 412px) {
    .campus_structure_card_tag {
        font-size: 2.7vw;
    }

@media only screen and (max-width: 375px) {
    .campus_structure_card_tag {
        font-size: 2.4vw;
    }
/* END OF HERO VIDEO SECTION */
