body {
    background: var(--teflie-background-warm) !important;
    color: var(--teflie-text-primary);
}

.section-title {
    font-size: 45px;
    font-weight: 550;
    line-height: 120%;
    letter-spacing: 0.5px;
    margin-bottom: var(--teflie-space-md);
}

.hero-banner-container {
    height: 750px;
    position: relative;
}

.hero-banner-overlay {
    background: linear-gradient(0deg, rgba(1, 35, 35, 0.7) 15.21%, rgba(1, 35, 35, 0) 35.46%);
    position: absolute;
    inset: 0;
}

video.hero-banner-video {
    width: 100%;
    position: absolute;
    inset: 0;
}

.hero-banner-content {
    position: relative;
    display: flex;
    padding: 100px 0;
    align-items: end;
    gap: var(--teflie-space-md);
    z-index: 10;
}

.hero-banner-content .hero-banner-text {
    flex: 0 0 55%;
}

.hero-banner-content .hero-banner-accreditation {
    flex: 0 0 45%;
}

.hero-banner-slider .ast-container {
    height: 100%;
}

.hero-banner-title {
    color: var(--teflie-white);
    font-weight: var(--teflie-font-weight-semibold);
    font-size: 50px;
    line-height: 130%;
    letter-spacing: 0.5px;
    margin-bottom: var(--teflie-space-sm);
}

.hero-banner-summary {
    font-size: 18px;
    color: var(--teflie-white);
    font-weight: var(--teflie-font-weight-regular);
    margin-bottom: var(--teflie-space-lg);
    line-height: 1.5;
    letter-spacing: 0;
}

.hero-banner-buttons {
    display: flex;
    align-items: center;
    gap: var(--teflie-space-sm);
}

.hero-banner-buttons .teflie-btn {
    font-size: var(--teflie-font-subheading);
    font-weight: var(--salmond-semibold);
}

/* .hero-banner-buttons>* {
    min-width: 240px;
} */

.accreditation-text {
    line-height: 1.5;
    font-size: 16px;
    color: var(--teflie-white);
    margin-bottom: var(--teflie-space-sm);
    font-weight: var(--teflie-font-weight-regular);
}

.accreditation-logos {
    display: inline-flex;
    align-items: center;
    gap: var(--teflie-space-sm);
}

.accreditation-logo h2 {
    display: none;
}

.accreditation-logo img {
    max-height: 200px;
    object-fit: contain;
}

.accreditation-banner .accreditation-logo img {
    max-height: 200px;
    object-fit: contain;
    margin-top: -30px;
    margin-bottom: -40px;
}

section.intro-section {
    padding: var(--teflie-space-2xl) 0 0 0;
    text-align: center;
}

section.intro-section>.ast-container {
    display: block;
}

h2.intro-header {
    color: var(--teflie-text-primary-dark);
    font-weight: 400;
    margin-bottom: var(--teflie-space-md);
    font-size: 45px;
    display: inline-block;
}

.intro-summary {
    font-size: 25px;
    font-weight: 500;
}

/* Milestones Sectiom*/

section.milestones-section {
    padding: var(--teflie-space-xl) 0 var(--teflie-space-2xl);
    --dim: 90%;
}

.milestones-section>.ast-container {
    display: block;
}

.milestone-section__container-top {
    background: linear-gradient(90deg, rgb(177, 227, 228) 0%, rgb(246, 241, 209) 100%);
    width: var(--dim);
    margin: auto;
    border-radius: 24px 24px 0 0;
    display: flex;
    align-items: center;
    padding: var(--teflie-space-lg) var(--teflie-space-md) var(--teflie-space-md);
    justify-content: space-around;
}

.milestone-section__container-bottom {
    background: var(--teflie-white);
    width: calc(var(--dim) + 2* 20px);
    margin: auto;
    padding: var(--teflie-space-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    border-radius: 0 0 24px 24px;
    box-shadow: var(--teflie-shadow-lg);
    position: relative;
}

.milestone-section__container-bottom-subtext {
    position: relative;
    margin-top: 1rem;
    font-size: 18px;
    font-weight: 500;
    background: #F8ECCC;
    padding: 10px 20px;
    width: 100%;
}


/* LEFT CUT (triangle pointing RIGHT) */
.milestone-section__container-bottom-subtext::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-top: 33px solid transparent;
    border-bottom: 33px solid transparent;
    border-left: 10px solid #fff;
}

/* RIGHT CUT (triangle pointing LEFT) */
.milestone-section__container-bottom-subtext::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 0;
    height: 0;
    border-top: 33px solid transparent;
    border-bottom: 33px solid transparent;
    border-right: 10px solid #fff;
}

.milestone-section__container-bottom::before {
    content: url('/wp-content/uploads/2025/09/Vector-118.svg');
    position: absolute;
    left: 0;
    top: -15px;
    z-index: -1;
}

.milestone-section__container-bottom::after {
    content: url('/wp-content/uploads/2025/09/Vector-119.svg');
    position: absolute;
    right: 0;
    top: -15px;
    z-index: -1;
}

.milestone {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.milestone-number {
    font-size: 48px;
    font-family: 'Salmond' !important;
    color: var(--teflie-text-primary-dark);
    font-weight: var(--salmond-medium);
    line-height: 1;
    position: relative;
}

.milestone-number::after {
    content: "+";
    font-size: 35px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.milestone-text {
    font-size: 18px;
    font-weight: var(--teflie-font-weight-regular);
    line-height: 150%;
    letter-spacing: 0;
}

.milestone-section__container-bottom-icons {
    display: flex;
    gap: 3rem;
    align-items: center;
}

.review-cta img {
    width: 180px;
    height: 100px;
    object-fit: contain;
}

/* Courses CTA Section */

.courses-cta-section {
    padding: var(--teflie-space-2xl) 0 0 0;
}

.aero_img {
    position: absolute;
    left: -36px;
}

@media(max-width: 545px) {
    .aero_img {
        display: none;
    }
}

.courses-cta-section>.ast-container {
    display: block;
    position: relative;
}

.courses-cta-section .section-title {
    text-align: center;
}

.courses-cta-section__container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: var(--teflie-space-sm);
}

.courses-cta-section__container:before {
    content: "";
    background-image: url(/wp-content/uploads/2026/01/Group-1707480579.png);
    background-position: center;
    background-size: cover;
    width: 245px;
    height: 70px;
    display: block;
    position: absolute;
    left: 0;
    margin: -70px 0 0 -40px;
    z-index: -1;
}

.courses-cta-section__container:after {
    content: "";
    background-image: url('/wp-content/uploads/2026/02/corner-animation-2.gif');
    background-position: center;
    background-size: cover;
    width: 140px;
    height: 120px;
    display: block;
    position: absolute;
    right: 0;
    margin: -89px -45px 0 0;
}

@media(max-width: 545px) {
    .courses-cta-section__container:after {
        display: none;
    }
}

.course-card {
    border-radius: 1.5rem;
    overflow: hidden;
}

.course-card__main {
    min-height: 530px;
    display: flex;
    align-items: end;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    position: relative;
}

.course-label {
    top: -1rem;
    left: 0;
    position: relative;
    background: var(--teflie-white);
    padding: var(--teflie-space-xs);
    border-radius: var(--teflie-radius-md);
    color: var(--teflie-text-primary);
    font-weight: var(--teflie-font-weight-semibold);
    font-size: 13px;
}

.course-card__content {
    position: relative;
    padding: var(--teflie-space-md);
    background: url('/wp-content/uploads/2025/10/Blur.png');
    background-size: cover !important;
}


/* .course-card__main-body{
    height: 702px;
} */

.course-card__content-top {
    display: inline-flex;
    align-items: start;
    justify-content: space-between;
    padding-bottom: var(--teflie-space-sm);
    border-bottom: 1px solid #ffffff10;
    gap: var(--teflie-space-xs);
}

.course-title {
    margin: 0;
    color: var(--teflie-white);
    font-weight: var(--teflie-font-weight-bold);
    line-height: 130%;
    letter-spacing: -0.5px;
}

.course-price del {
    /* display: none; */
    font-size: 14px;
    font-weight: 400;
    color: var(--teflie-gray-300);
}

.course-price .wcpbc-price {
    color: var(--teflie-white);
    font-size: 18px;
    font-weight: var(--teflie-font-weight-bold);
    line-height: 140%;
    letter-spacing: -0.5px;
    display: flex;
    flex-direction: column-reverse;
    align-items: end;
}

.course-discount {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: var(--teflie-red);
    color: var(--teflie-white);
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 400;
    font-size: 14px;
}

.course-card__content-middle.course-summary {
    padding-top: var(--teflie-space-sm);
    color: var(--teflie-white);
    font-size: 16px;
    line-height: 1.5;
    font-weight: var(--teflie-font-weight-medium);
    padding-bottom: var(--teflie-space-sm);
    height: 65px;
    overflow-y: hidden;
}


.course-card__content-bottom {
    display: flex;
    gap: var(--teflie-space-xs);
}

.course-card__content-bottom>* {
    flex: auto;
}

.course-card__content-bottom>a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.course-card__content-bottom .btn-glass {
    flex-direction: row-reverse;
}

.compare-courses.teflie-btn.btn-secondary {
    /* margin: var(--teflie-space-lg) auto; */
    width: max-content;
    font-weight: var(--teflie-font-weight-semibold);
}

.course-cta-klarna {
    display: flex;
    background-color: var(--teflie-light-pink);
    padding: 9px 26px;
    gap: 12px;
    font-weight: var(--teflie-font-weight-semibold);
}

/* Search Course CTA */

.cta-container {
    width: max-content;
    margin: auto;
    display: flex;
    gap: 0.5rem;
}

@media(max-width: 545px) {
    .cta-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
}



.cta-section-title {
    font-size: 22px;
}


.search-cta-section>.ast-container {
    display: block;
}

.search-cta-section__row {
    background: var(--teflie-background-light-blue);
    padding: var(--teflie-space-lg) var(--teflie-space-xl);
    border-radius: 1.5rem;
    /* margin-top: var(--teflie-space-xl); */
    display: flex;
    align-items: center;
    gap: var(--teflie-space-md);
    justify-content: space-between;
}

.search-cta-section_left {
    display: flex;
    align-items: center;
    gap: 60px;
    position: relative;
    /* justify-content: center; */
    text-align: center;
}

.search-cta-section_left .sparkle {
    position: absolute;
    top: -80px;
    left: -80px;
    z-index: 2;
    transform: rotate(-20deg);
}

.search-cta-section_left .search-cta-section-title {
    color: var(--teflie-text-primary-dark);
    font-size: 24px;
    line-height: 140%;
    font-weight: var(--salmond-semibold);
    margin: 0;
    font-family: 'Salmond' !important;
}

.search-cta-section_right {
    position: relative;
}

.search-cta-section_right .swiggly-arrow {
    position: absolute;
    top: -70px;
    left: 0;
    height: 60px;
}

/* section.search-cta-section .teflie-btn {
    min-width: 280px;
} */

/* Teaching Preferences Section */

.teaching-preferences-section>.ast-container {
    display: block;
}

.teaching-preferences-section {
    background-color: var(--teflie-background-vanilla);
    padding: var(--teflie-space-xl) 0;
    margin-top: var(--teflie-space-xl);
}

.teaching-preferences-header {
    text-align: center;
    margin-bottom: var(--teflie-space-lg);
}

.teaching-preferences-header .section-title {
    margin-bottom: var(--teflie-space-sm);
}

.teaching-preferences-summary {
    font-size: 22px;
    color: var(--teflie-text-primary);
    margin: 0 auto;
    width: 75%;
}

.instagram-subtitle {
    font-size: 22px;
}

.teaching-tabs {
    text-align: center;
}

.teaching-tabs input[type="radio"] {
    display: none;
}

.teaching-tabs__buttons {
    display: inline-flex;
    gap: var(--teflie-space-xs);
    justify-content: center;
    margin: 0 auto var(--teflie-space-lg);
    background: #00000012;
    border-radius: 12px;
    padding: 4px;
}

.teaching-tab-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 15px;
    font-weight: 500;
    color: var(--teflie-text-primary-dark);
}

.tab-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

#tab-abroad:checked~.teaching-tabs__buttons label[for="tab-abroad"],
#tab-online:checked~.teaching-tabs__buttons label[for="tab-online"] {
    background: var(--teflie-white);
    font-weight: 600;
}

.teaching-tabs__content {
    display: none;
    animation: fadeIn 0.4s ease;
}

section.search-cta-section.salary-calculator-cta-section {
    margin-bottom: calc(40px + 2rem);
}

.salary-calculator-cta-section-stitle {
    font-size: 18px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(15px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#tab-abroad:checked~.tab-content-abroad,
#tab-online:checked~.tab-content-online {
    display: block;
}

.teaching-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: var(--teflie-space-sm)
}

.teaching-card {
    min-height: 460px;
    border-radius: 1.5rem;
    background-size: cover !important;
    background-position: center !important;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    position: relative;
}

.teaching-card>* {
    flex: 1;
}

.teaching-card__content {
    position: relative;
    padding: var(--teflie-space-md);
    background: url('/wp-content/uploads/2025/10/Blur.png');
    background-size: cover !important;
    width: 100%;
    z-index: 2;
}

.teaching-card__content .card-default>span {
    color: var(--teflie-white);
    display: block;
    text-align: left;
}

.teaching-card__content-title {
    font-size: 22px;
    font-weight: var(--teflie-font-weight-bold);
    line-height: 130%;
    letter-spacing: .5px;
}

.teaching-card__content-stitle {
    font-size: 16px;
    font-weight: var(--teflie-font-weight-regular);
    letter-spacing: 0;
    line-height: 150%;
}

.teaching-card::before {
    content: "";
    position: absolute;
    inset: 0;

    background: rgb(0 0 0 / 58%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    border: 1px solid rgba(255, 255, 255, 0.1);

    opacity: 0;
    transition: opacity 0.35s ease;
    z-index: 1;
}

.teaching-card:hover::before {
    opacity: 1;
}

.card-default {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.teaching-card:hover .card-default {
    opacity: 0;
    transform: translateY(10px);
}

.teaching-card:hover {
    align-items: flex-start;
}

.card-hover {
    position: absolute;
    inset: 0;
    padding: var(--teflie-space-lg);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.4s ease, transform 0.4s ease;
    z-index: 3;
}

.teaching-card:hover .card-hover {
    opacity: 1;
    transform: translateY(0);
    justify-content: flex-start;
    gap: 20px;
}

.teaching-card:hover .teaching-card__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 0;
    background-image: none;
}

.card-hover .hover-content h3 {
    margin-top: 0;
    font-size: 24px;
    font-weight: 700;
    color: var(--teflie-white);
    display: block;
    text-align: left;
    margin-bottom: 10px;
}

.teaching-card .card-hover p,
.teaching-card .card-hover a,
.teaching-card .card-hover ul li {
    color: #FFFFFFCC;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 10px;
}

.card-hover ul {
    margin-bottom: 20px;
    margin-left: 0 !important;
}

.teaching-card .card-hover li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 5px;
    color: #FFFFFFCC;
    font-size: 16px;
    font-weight: 400;
}

.teaching-card .card-hover .hover-content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 16px;
    height: 16px;
    background-image: url('/wp-content/uploads/2025/12/sparkle.png');
    background-size: contain;
    background-repeat: no-repeat;
}

.card-hover .card-btn {
    font-size: 18px;
    font-weight: 600;
}

/* Internships section */

section.internships-section {
    padding: var(--teflie-space-xl) 0;
    overflow: hidden;
}

.internships-section>.ast-container {
    display: block;
}

.internships-section__row {
    display: flex;
    align-items: center;
    /* gap: var(--teflie-space-xl); */
}

.internships-section__row--header {
    flex: 0 0 40%;
}

.internships-section__row--slider {
    flex: auto;
    position: relative;
    overflow: visible;
}

.slider-wrapper {
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    margin-right: calc(-1 * var(--teflie-space-xl));
    padding-right: var(--teflie-space-xl);
}

.slider-wrapper::-webkit-scrollbar {
    display: none;
}

.slider-track {
    display: flex;
    gap: var(--teflie-space-md);
    /* width: max-content; */
}

@media(min-width:945px) {
    #internships-slider-list {
        width: 60% !important;
    }
}

.internship-card {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    min-height: 415px;
    background-position: center !important;
    background-size: cover !important;
    padding: var(--teflie-space-sm);
    scroll-snap-align: center;
    transition: transform 0.3s ease;
}

/* .internship-card .teflie-btn {
    min-width: 130px;
} */

img.internship-flag {
    position: absolute;
    top: var(--teflie-space-sm);
    left: var(--teflie-space-sm);
    width: 50px;
    height: auto;
}

.internship-card-content {
    display: flex;
    flex-direction: column;
    gap: var(--teflie-space-xs);
    width: 100%;
}

.internship-card-content>* {
    color: var(--teflie-white);
}

.internship-title {
    font-size: 20px;
    font-weight: var(--teflie-font-weight-bold);
    line-height: 1.3;
    letter-spacing: -0.5px;
}

.splide__pagination.internships-slider__pagination.splide__pagination--ltr {
    justify-content: flex-start;
    bottom: revert;
    margin: 1rem 0 0 4rem;
}

.splide__pagination.internships-slider__pagination .splide__pagination__page.is-active {
    background: var(--teflie-turquoise);
    transform: none;
    z-index: 1;
}

.splide__pagination.internships-slider__pagination .splide__pagination__page {
    background: #00000026;
}

.splide__arrows.internships-slider__arrows {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--teflie-space-sm);
    margin-top: var(--teflie-space-xl);
}

.splide__arrows.internships-slider__arrows button {
    background: none;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
    position: relative;
    left: auto;
    right: auto;
    opacity: 1;
    width: 40px;
    /* height: 40px; */
}

.splide__arrows.internships-slider__arrows button img {
    width: 40px;
    height: 40px;
    transition: transform 0.3s ease;
}

.splide__arrows.internships-slider__arrows button.splide__arrow--prev img {
    transform: rotate(180deg);
}

.splide__arrows.internships-slider__arrows button.disabled,
.splide__arrows.internships-slider__arrows button:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    border-color: #ccc;
}

/* FAQs Section */

section.faqs-section>.ast-container {
    display: block;
}

.faqs-section {
    padding: var(--teflie-space-2xl) 0;
}

.faqs-section-row {
    text-align: center;
}

.faqs-wrapper {
    position: relative;
    margin: var(--teflie-space-xl) auto 0;
}

/* benefit section css */
.benefits-container {
    overflow: hidden;
    position: relative;
    width: 100%;
    bottom: 12px;
}

.benefits-slider {
    display: flex;
    gap: 3rem;
    width: max-content;
    animation: infiniteScroll 35s linear infinite;
    padding: 1rem 0;
}

.benefits-slider:hover {
    animation-play-state: paused;
}

@keyframes infiniteScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.benefits-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('/wp-content/uploads/2026/02/orang-bg-strip-scaled.png');
    background-repeat: repeat-x;
    background-size: auto 100%;
    background-position: center;
    z-index: 0;
}

.benefit-item {
    flex-shrink: 0;
    padding: 0.75rem 2rem;
    color: var(--teflie-white);
    font-weight: var(--teflie-font-weight-semibold);
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    z-index: 1;
}

.benefit-item::after {
    content: '';
    position: absolute;
    right: -1.5rem;
    top: 50%;
    transform: translateY(-50%);
    background-image: url('/wp-content/uploads/2025/12/Union.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 13px;
    height: 12px;
}


.benefit-item:last-child::after {
    display: none;
}


/*Card Section*/

.card {
    background-color: white;
    box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.15);
    border-radius: 24px;
    flex: 1 1 0;
    height: 100%;
    position: relative;
}

.card-section .card-container {
    display: flex;
    gap: 26px;
    align-items: flex-start;
}

.card-content {
    padding: 32px;
}

.card-title h3 {
    font-size: 24px;
    font-weight: 450;
    color: var(--teflie-text-primary-dark);
}

.card-subtitle p {
    margin: 0 0 12px;
    font-weight: 700;
}

.card-title {
    margin-bottom: 18px;
}

.accred-link h6 img {
    width: 20px;
}

.accred-link h6 {
    display: flex;
    gap: 4px;
    align-items: center;
    margin-bottom: 1rem;
    justify-content: center;
}

.card-bg.card-bg-multiple {
    display: flex;
    align-items: center;
    gap: var(--teflie-space-md);
    justify-content: space-around;
    padding: var(--teflie-space-xs) var(--teflie-space-md);
    background: var(--teflie-background-warm);
    height: 225px;
}

.card-bg.card-bg-multiple a img {
    width: 100%;
    object-fit: contain;
    height: 90px;
}

.card-bg.card-bg-multiple .accred-link {
    flex: 1;
}

.card-description {
    color: var(--teflie-text-primary);
    position: relative;
    overflow: hidden;
}

.card-description .content-preview {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    /* ðŸ‘ˆ number of rows */
    overflow: hidden;
    margin-bottom: 1rem;
}

.content-preview p {
    margin: 0;
}

.card-section .read-more-btn {
    all: unset;
    color: var(--teflie-turquoise);
    font-weight: var(--teflie-font-weight-bold);
    display: inline-flex;
    align-items: center;
    gap: var(--teflie-space-xs);
    cursor: pointer;
}

a.google-review {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

a.google-review>div {
    display: flex;
    align-items: center;
    gap: 4px;
}

span.google-review__rating {
    font-size: 22px;
    font-weight: 600;
}

@media screen and (min-width:769px) {
    .card-bg .accred-link:nth-of-type(2) {
        border-right: 1px solid #19132D33;
        border-left: 1px solid #19132D33;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media screen and (max-width:768px) {
    .card {
        overflow: visible;
    }

    .card-bg.card-bg-multiple {
        height: 150px;
    }

    .card-bg.card-bg-multiple a img {
        width: 100%;
        object-fit: contain;
        height: 70px;
    }

    .accred-link h6 {
        justify-content: center;
        flex-direction: column;
        text-align: center;
        font-size: 12px;
    }

    .trustpilot-widget {
        width: 50%;
        height: 90px;
    }
}


.personal-message-section {
    padding: 0 0 4rem 0;
}

.personal-message-card {
    display: flex;
    gap: 2rem;
    background: #FDEBC6;
    border-radius: 24px;
    padding: 2rem 2rem;
}

.personal-message-icon {
    flex: none;
}

.personal-message-icon img {
    width: 80px;
    height: auto;
    object-fit: contain;
}

.personal-message-title {
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 33px;
    line-height: 1;
}

.personal-message-text {
    position: relative;
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
    max-height: 48px;
    overflow: hidden;
}

/* Ellipsis */
.personal-message-text::after {
    content: "â€¦";
    position: absolute;
    right: 0;
    bottom: 0;
    padding-left: 6px;
    background: #FDEBC6;
    /* same as card background */
}

/* Expanded state */
.personal-message-text.is-expanded {
    max-height: none;
}

.personal-message-text.is-expanded::after {
    display: none;
}

/* Read more styling */
.personal-message-readmore {
    display: inline-block;
    margin-top: 15px;
    font-weight: 700;
    color: #07ada5;
    text-decoration: none;
}

.personal-message-readmore:hover {
    color: #07ada5;
}


@media screen and (max-width:768px) {
    .personal-message-card {
        flex-direction: column;
    }

    .personal-message-icon img {
        width: 40px;
    }

    /* .hero-banner-container{
        height: 100vh;
    } */
}

/* Partnership Section */

.content-remaining h4 {
    font-weight: 500;
    margin-top: 40px !important;
    display: block;
}

.partnership-section {
    padding: 0px 0 50px;
}

.partnership-card {
    background: #F4EFE5;
    border-radius: 32px;
    display: flex;
    gap: 40px;
    padding: 32px;
    align-items: flex-start;
    /* â­ important */
}

.stars-box {
    border-radius: 24px;
    padding: 28px;
    background: var(--teflie-background-light-blue);
    width: 70%;
    height: 100%;
}

.starts-header {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 15px;
    gap: 60px;
}

.stars-box h3 {
    font-size: 48px;
    font-weight: 500;
    color: var(--teflie-text-primary-dark);
}

.stars-box p {
    margin-bottom: 0;
}

.partnership-section hr {
    background-color: #0000001F;
    margin-bottom: 15px;
}

.content-box {
    width: 100%;
}

.content-box h3 {
    font-size: 24px;
    font-weight: 450;
}

.content-box .subtitle {
    margin-top: 1rem;
    font-size: 16px;
}

.image-label {
    display: flex;
    gap: 3rem;
}

.image-label .image-label__inner {
    width: 50%;
}

.image-label__text {
    width: 50%;
    background: #ECE1CE;
    font-weight: 600;
    text-align: center;
    padding: 1rem 3rem;

    display: flex;
    align-items: center;
    position: relative;
    line-height: 1.4;
    overflow: hidden;
    /* important */
}

/* LEFT inward cut */
.image-label__text::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    width: 0;
    height: 0;

    border-top: 50px solid transparent;
    border-bottom: 50px solid transparent;
    border-left: 33px solid #F6EFE3;
}

/* RIGHT inward cut */
.image-label__text::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    width: 0;
    height: 0;

    border-top: 50px solid transparent;
    border-bottom: 50px solid transparent;
    border-right: 33px solid #F6EFE3;
    /* parent bg */
}

.alumni-text {
    font-size: 18px;
    font-weight: 600;
}

.text-content {
    margin: 10px 0 0;
}

.content-box .btn-read-more {
    all: unset;
    color: var(--teflie-turquoise);
    font-weight: var(--teflie-font-weight-bold);
    display: inline-flex;
    align-items: center;
    gap: var(--teflie-space-xs);
    cursor: pointer;
}

/* Journey Section */

.journey-section {
    width: 100%;
    height: 300px;
    background-size: cover;
    background-position: center -50px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    background-repeat: no-repeat;
}

.journey-section::before {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    height: 10%;
    background: linear-gradient(180deg, #faf7f0 26.82%, rgba(255, 251, 243, 0) 100%);
}

.journey-section::after {
    content: "";
    position: absolute;
    bottom: -50px;
    width: 100%;
    height: 60%;
    background: linear-gradient(0deg, #0E1615 32.72%, rgba(14, 22, 21, 0.538294) 55%, rgba(14, 22, 21, 0) 100%);
}

.journey-section .ast-container {
    z-index: 2;
    padding: 40px 0 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.hero-banner-slider .splide__track {
    padding-bottom: 0;
}

.hero-banner-video-overlay {
    height: 100%;
    width: 100%;
    position: absolute;
    background: #15262977;
    z-index: 1;
}

.section-summary {
    font-size: 22px !important;
}

h1.hero-banner-title>br:last-of-type {
    display: block;
}

@media screen and (min-width:769px) {
    .faqs-section-row .section-summary {
        max-width: 40%;
        margin: auto;
    }

    .faqs-wrapper {
        max-width: 75%;
    }

    h1.hero-banner-title>br {
        display: none;
    }
}

@media screen and (max-width:1500px) {
    video.hero-banner-video {
        height: 100%;
        object-fit: cover;
    }
}

@media screen and (max-width:768px) {
    .section-summary {
        font-size: 18px !important;
    }

    .cta-section-title {
        font-size: 18px;
    }

    .teaching-preferences-summary {
        font-size: 18px;
        width: 100%;
    }

    .student-stories-section__row--header .section-summary {
        font-size: 18px;
    }

    .instagram-subtitle {
        font-size: 18px;
    }

    .personal-message-title {
        font-size: 20px
    }

    .section-title,
    h2.intro-header {
        font-size: 24px;
    }

    section>.ast-container {
        height: 100%;
        padding-left: var(--teflie-space-sm) !important;
        padding-right: var(--teflie-space-sm) !important;
    }

    .hero-banner-overlay {
        background: #00000060;
    }


    .hero-banner-content,
    .hero-banner-buttons {
        flex-direction: column;
    }

    .hero-banner-content {
        padding: 100px 0 100px;
        height: 100%;
        justify-content: end;
    }

    .hero-banner-content .hero-banner-accreditation {
        flex: 0;
    }

    .hero-banner-title {
        font-size: 32px;
    }

    .hero-banner-buttons>* {
        min-width: 240px;
        width: 100%;
    }

    .courses-cta-section__container:before {
        left: -140px;
        top: 115px;
    }

    .milestone-section__container-top {
        display: grid;
        grid-template-columns: calc(50% - var(--teflie-space-sm)/2 - 1px) calc(50% - var(--teflie-space-sm)/2 - 1px);
        grid-template-rows: auto auto;
        gap: var(--teflie-space-sm);
        padding: 0;
        background: none;
        width: 100%;
    }

    .milestone {
        display: flex;
        flex-direction: column;
        align-items: start;
        background: linear-gradient(90deg, rgb(177, 227, 228) 0%, rgb(246, 241, 209) 100%);
        padding: var(--teflie-space-sm);
        border-radius: 8px;
    }

    .milestone-number {
        font-size: 24px;
        white-space: nowrap;
    }

    .milestone-text {
        font-size: 12px;
        line-height: 1.2;
        white-space: nowrap;
    }

    .milestone-number::after {
        font-size: 18px;
    }

    .hide-on-mobile {
        display: none;
    }

    .milestone-section__container-bottom {
        margin-top: var(--teflie-space-lg);
        gap: var(--teflie-space-sm);
        background: none;
        box-shadow: none;
        padding: 0;
        flex-wrap: wrap;
        width: auto;
    }

    .milestone-section__container-bottom-icons {
        display: flex;
        flex-wrap: wrap;
        gap: var(--teflie-space-sm);
        justify-content: center;
        align-items: center;
    }

    .review-cta {
        background: #fff;
        padding: var(--teflie-space-sm);
        border-radius: 8px;
        border: 1px solid #2B2D4214;
        box-shadow: 0px 4px 4px 0px #00000005;
        max-width: calc(50% - 2px - var(--teflie-space-md)/2);
    }

    .review-cta img {
        width: 100%;
        height: 50px;
    }

    .acred-tags {
        flex: auto;
    }

    .milestone-section__container-bottom::before,
    .milestone-section__container-bottom::after,
    .search-cta-section_left img {
        display: none;
    }

    .courses-cta-section {
        position: relative;
    }

    .course-card__content-top,
    .course-card__content-bottom {
        flex-direction: column;
    }

    .course-card__content-bottom>a {
        justify-content: center;
    }

    .search-cta-section__row {
        flex-direction: column;
        padding: var(--teflie-space-md);
    }

    /* .salary-calculator-cta-section .search-cta-section__row {
        margin-top: 0;
    } */

    .search-cta-section_left .search-cta-section-title {
        text-align: center;
        margin-bottom: var(--teflie-space-md);
    }

    .search-cta-section_right .swiggly-arrow {
        position: absolute;
        top: -22px;
        left: -10%;
        width: 40px;
        height: 30px;
        transform: rotate(360deg) translateX(-50%);
    }

    #verified_reviews_section {
        padding-bottom: 20px;
    }

    .teaching-preferences-title {
        font-size: 28px;
    }

    .teaching-tabs__buttons {
        width: 100%;
        flex-direction: row;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        line-height: 1;
    }

    .teaching-tab-btn {
        width: 100%;
        justify-content: center;
    }

    .teaching-card {
        min-height: 350px;
        background-position: center 20% !important;
    }

    .card-hover .hover-content h3 {
        font-size: 16px;
        margin-bottom: 0px;
    }

    .teaching-card:hover .card-hover {
        padding: 20px;
        gap: 0px !important;
    }

    .teaching-card .card-hover li,
    .teaching-card .card-hover p {
        font-size: 14px;
    }

    .card-hover .card-btn {
        font-size: 16px;
    }

    .internships-section__row {
        display: block;
    }

    .internships-section__row--header {
        margin-bottom: var(--teflie-space-lg);
        text-align: center
    }

    .internship-title {
        font-size: 1.25rem;
    }

    .internship-pay {
        font-size: 1rem;
    }

    /*Card Section*/

    .card-section {
        padding: 0 0 50px !important;
    }

    .card-section .card-container {
        flex-direction: column;
    }

    .card-content {
        padding: 20px;
    }

    .card-title h3 {
        font-size: 18px;
    }

    .card-title {
        margin-bottom: 10px;
    }

    /* Partnership Section */

    .partnership-card {
        flex-direction: column;
        padding: 20px 20px 0px;
        gap: 10px;
    }

    .stars-box {
        width: 100%;
    }

    .stars-box h3 {
        font-size: 35px;
    }

    .starts-header {
        gap: 25px;
    }

    /* Journey Section */

    .journey-section {
        height: auto;
        padding: 40px 20px 140px;
        justify-content: center;
        align-items: center;
        background-size: 300%;
        background-position: bottom;
    }

    .journey-section::after {
        display: none;
    }

    .journey-section .ast-container {
        padding: 0;
        text-align: center;
    }

    .journey-section .teflie-btn {
        width: 50%;
        margin-top: 20px;
    }
}

@media screen and (max-width:545px) {
    .hero-banner-content {
        padding-left: var(--teflie-space-sm) !important;
        padding-right: var(--teflie-space-sm) !important;
    }

}

/* Course Slider on mobile */

@media screen and (max-width:768px) {
    .custom-slider {
        position: relative;
    }

    .slider-container {
        display: flex !important;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 10px;
    }

    .slider-container::-webkit-scrollbar {
        display: none;
    }

    .slider-item {
        flex: 0 0 90%;
        scroll-snap-align: start;
        scroll-snap-stop: always;
        flex-shrink: 0;
    }

    .slider-nav {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 12px;
        margin-top: 24px;
        margin-bottom: 24px;
    }

    .slider-nav-btn {
        background: #fff;
        cursor: pointer;
        transition: all 0.3s ease;
        padding: 0;
    }

    .slider-nav-btn img {
        width: 40px;
        height: 40px;
        transition: transform 0.3s ease;
    }

    .slider-prev img {
        transform: rotate(180deg);
    }

    .slider-nav-btn:hover:not(.disabled),
    .slider-nav-btn:focus:not(.disabled) {
        background: #000;
        transform: scale(1.05);
    }

    .slider-nav-btn:hover:not(.disabled) img,
    .slider-nav-btn:focus:not(.disabled) img {
        filter: brightness(0) invert(1);
    }

    .slider-nav-btn.disabled,
    .slider-nav-btn:disabled {
        opacity: 0.3;
        cursor: not-allowed;
        border-color: #ccc;
    }

    .slider-nav-btn.disabled:hover,
    .slider-nav-btn:disabled:hover {
        background: #fff;
        transform: none;
    }

    .slider-nav-btn:active:not(.disabled) {
        transform: scale(0.95);
    }
}

/* AI block section */

.ai-block-section {
    padding: 40px 0;
}

.ai-block-bg {
    background-image: url('/wp-content/uploads/2026/01/ai_blockbg.png');
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 16px;
    padding: 40px;
}

.ai-block-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.ai-block-left {
    flex: 0 0 auto;
}

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

.left-content .tefl-ai-logo {
    width: 140px;
    height: auto;
}

.left-content p {
    color: #ffffff;
    font-size: 18px;
    margin: 0;
    line-height: 1.4;
}


.ai-block-right {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 33px 80px;
}

.ai-block-right ul {
    display: contents;
    list-style: none;
    padding: 0;
    margin: 0;
}

.ai-block-right li {
    color: var(--teflie-white);
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.tefl-ai-btn {
    display: flex;
    width: max-content;
    margin-top: 20px;
}

.tefl-ai-btn img {
    height: 50px;
}

.app-download-section__image img {
    width: 33rem;
}

.search-cta-section_left-question {
    height: 73px;
}

/* Responsive */
@media (max-width: 768px) {

    .image-label {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin: 2rem;
    }

    .image-label .image-label__inner {
        width: 100%;
    }

    .image-label__text {
        width: 100%;
    }

    .ai-block-container {
        flex-direction: column;
        align-items: flex-start;
    }

    .ai-block-right {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .ai-block-bg {
        padding: 30px 20px;
    }

    /* .hero-banner-slider {
        margin-bottom: 20px;
    } */
}

/* Read More */

.course-summary {
    height: 65px;
    overflow: hidden;
    transition: height 0.35s ease;
    color: var(--teflie-white);
    font-size: 16px;
    line-height: 1.5;
    font-weight: var(--teflie-font-weight-medium);
}

.course-summary.expanded {
    height: 252px;
    overflow-y: scroll;
}

.read-more {
    display: inline-block;
    margin-top: 6px;
    cursor: pointer;
    color: var(--teflie-turquoise);
    font-weight: var(--teflie-font-weight-medium);
    margin-bottom: 13px;
}

.course-card_main.expanded {
    height: auto;
}

.course-summary.expanded {
    height: 252px;
    overflow-y: auto;
    padding-right: 6px;
    /* space for scrollbar */
}

.course-summary.expanded ul li {
    list-style-type: disc;
}

@media(max-width: 545px) {
    .course-summary.expanded {
        height: 200px;
    }
}

/* Chrome, Edge, Safari */
.course-summary.expanded::-webkit-scrollbar {
    width: 6px;
}

.course-summary.expanded::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 10px;
}

.course-summary.expanded::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--teflie-turquoise), var(--teflie-turquoise));
    border-radius: 10px;
}

.course-summary.expanded::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, var(--teflie-turquoise), var(--teflie-turquoise));
}

/* Firefox */
.course-summary.expanded {
    scrollbar-width: thin;
    scrollbar-color: var(--teflie-turquoise) rgba(255, 255, 255, 0.00);
}

.feature-benefit-card__icon img {
    width: 100px;
}

@media screen and (max-width:768px) {
    .feature-benefit-card__icon img {
        width: 50px00px;
    }

    .feature-benefit-card__title {
        font-size: 14px;
    }
}

.card-container .card-content a,
.partnership-card a,
.personal-message-card .personal-message-text a {
    text-decoration: underline;
    font-weight: 500;
    color: #07ADA5;
}

/* Google Reviews Slider */

#verified_reviews_section .section-sumamry {
    font-size: 18px;
}

#verified_reviews_section .review-widgets {
    display: flex;
    justify-content: center;
    align-items: center;
}

#verified_reviews_section .trustpilot-widget iframe {
    height: 120px !important;
}

.google-widget .google-reviews-badge {
    text-align: left;
}

.google-widget .stars {
    color: #fbc02d;
    font-size: 54px;
    line-height: 1;
    /* font-weight: 700; */
}

.business-reviews-slider .rplg-slider .rplg-slider-review {
    flex-direction: column-reverse;
    display: flex;
    background: var(--teflie-white);
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.rplg-slider .rplg-box .rplg-box-content {
    margin: 40px 20px 20px 40px !important;
}

.rplg-slider .rplg-box .rplg-box-content:before {
    top: 32px !important;
}

.business-reviews-slider .rplg .rplg-box {
    background-color: transparent !important;
    border-radius: 0 !important;
    border: none !important;
}

.business-reviews-slider .rplg-slider .rplg-row {
    padding-bottom: 0 !important;
}

.business-reviews-slider .rplg .rplg-review-name {
    color: var(--teflie-text-primary) !important;
    font-size: 18px !important;
    /* text-decoration: underline !important; */
}

.business-reviews-slider .rplg-slider .rplg-stars {
    position: absolute;
    top: -5px;
    left: 16px;
}

.business-reviews-slider .rplg .rplg-more-toggle {
    color: var(--teflie-light-red) !important;
}

.business-reviews-slider .rplg .rplg-review-text {
    color: var(--teflie-text-primary) !important;
    line-height: 1.25 !important;
    font-size: 16px !important;
}

.business-reviews-slider .rplgsw-pagination-bullet-active {
    opacity: 1;
    background: var(--teflie-border-2);
}

.business-reviews-slider .rplg-slider .rplg-box:before,
.business-reviews-slider .rplg .rplg-review-avatar,
.business-reviews-slider .rplg .rplg-review-badge {
    display: none !important;
}

.trustpilot-widget-wrapper iframe #profile-link {
    display: flex !important;
    align-items: center !important;
    flex-direction: column !important;
}

.review-btn-link {
    text-decoration: underline;
    color: var(--teflie-text-primary-dark);
    font-weight: 600;
    display: block;
}

/* .trustpilot-widget-wrapper .review-btn-link{
    margin-top: 8px;
} */

.google-widget-wrapper .review-btn-link {
    margin-top: 10px;
}


@media screen and (max-width:768px) {
    #verified_reviews_section .section-inner.text-center {
        text-align: left;
    }

    .google-widget .badge-review {
        font-size: 12px;
    }

    .google-widget .stars {
        font-size: 32px;
    }

    #verified_reviews_section .section-sumamry {
        font-size: 16px;
    }

    .review-widgets>* {
        flex: 1;
    }

    .course-price .wcpbc-price {
        align-items: start;
    }
}

/* Accreditation Banner */

section.accreditation-banner {
    background: url('https://tefl.ie/wp-content/uploads/2026/04/accred-banner-pattern.png'),
        linear-gradient(90deg, #B1E3E4 0%, #F6F1D1 100%);
    padding: var(--teflie-space-lg) 0;
}

.accreditation-banner__row {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 40px;
}

.accreditation-banner__content,
.accreditation-banner__logos {
    flex: 0 1 auto;
}

.accreditation-banner__logos {
    display: flex;
    align-items: center;
    gap: 12px;
}

.accreditation-banner__title {
    --margin-dim: 2rem;
    line-height: 1.4;
    font-size: 21px;
    color: #2D4040;
    font-weight: 700;
    letter-spacing: 0.5%;
    margin-bottom: var(--margin-dim);
    position: relative;
}

.accreditation-banner__title::after {
    content: "";
    position: absolute;
    height: 2px;
    width: 33%;
    background: #2D404080;
    left: 0;
    bottom: calc(-1 * var(--margin-dim) / 2);
}

.accreditation-banner__summary {
    margin: 0;
    font-size: 21px;
    font-weight: 400;
    color: #2D4040;
    line-height: 1.4;
    letter-spacing: 0.5%;
}

@media screen and (min-width:769px) {
    .accreditation-banner__summary {
        max-width: 65%;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .accreditation-banner__row {
        flex-direction: column;
        text-align: center;
        gap: 24px;
    }

    .accreditation-banner__title::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .accreditation-banner__title,
    .accreditation-banner__summary {
        font-size: 17px;
    }

    .accreditation-logo img {
        max-height: 120px;
        margin: 0;
    }
}