/* ===== fonts.css ===== */
@media screen and (max-width: 475px) {
    h1{
        font-size: 32px;
    }
}

@media screen and (max-width: 380px) {
    h1{
        font-size: 28px;
    }
}


/* ===== headerStyle.css ===== */
@media screen and (max-width: 1300px) {
    a.blog{
        display: none;  
    }
}

@media screen and (max-width: 1200px) {
    .desktop-nav{
        gap: 26px;
    }
    .desktop-nav a {
        font-size: 15px;
        padding: 6px 8px;
    }
}

@media screen and (max-width: 1100px) {
    .desktop-nav {
        gap: 5px;
    }

    .desktop-nav a {
        font-size: 14px;
    }

    .cta-button {
        padding: 10px 16px;
        font-size: 16px;
    }

}

@media (max-width: 900px) {
    .mobile-menu{
        display: flex;
    }
    .desktop-nav {
        display: none;
    }

    .hamburger,
    .mobile-cta-button {
        display: block;
    }

    .header-container .cta-button {
        display: none;
    }

    .header-container {
        padding: 12px 16px;
    }

    /* Hamburger animation when open */
    .hamburger.open span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 6px);
    }

    .hamburger.open span:nth-child(2) {
        opacity: 0;
    }

    .hamburger.open span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -6px);
    }
}

@media screen and (max-width: 470px) {
    .logo img {
        height: 30px;
    }

    .mobile-cta-button {
        border-radius: 27px;
        padding: 6px 12px;
        font-size: 14px;
    }

    .mobile-nav {
        gap: 0px;
    }
}

@media screen and (max-width: 375px) {
    .mobile-cta-button {
        display: none;
    }
}

/* ===== hero.css ===== */
@media screen and (max-width: 1464px) {
    .hero-section .info-side h1 {
        font-size: 36px;
    }

    .hero-section .info-side h2 {
        font-size: 22px;
    }

    .hero-section .img-side .hero-bubble1 {
        top: 150px;
        right: 380px;
    }

    .hero-section .img-side .hero-bubble2 {
        top: 120px;
    }
}

@media screen and (max-width: 1340px) {
    section .container {
        width: 100%;
    }

    .hero-section .info-side {
        margin: 0 50px 0 80px;
    }

    .hero-section .img-side .hero-bubble1 {
        right: 430px;
        top: 170px;
    }

    .hero-section .info-side h2 {
        font-size: 20px;
    }
}

@media screen and (max-width: 1132px) {
    .hero-section .info-side {
        margin: 40px 50px 40px 60px;
    }

    .button-wrapper {
        flex-direction: column;
    }

    .button-wrapper .secondary-btn,
    .button-wrapper .primary-btn {
        justify-content: center;
    }

    .hero-section .img-side .hero-foxi {
        width: 80%;
    }

    .hero-section .img-side .hero-bubble1 {
        right: 330px;
        top: 150px;
    }

    .hero-section .img-side .hero-bubble2 {
        top: 100px;
        width: 220px;
    }

}

@media screen and (max-width: 900px) {
    section .container {
        flex-direction: column;
        margin: 80px auto 40px;
    }

    .hero-section .info-side {
        margin: 40px 0;
        align-items: center;
        text-align: center;
    }

    .hero-section .img-side {
        justify-content: center;
        padding: 0;
    }

    .hero-section .img-side .img-container {
        display: flex;
        justify-content: center;
        margin-bottom: 100px;
    }

    .hero-section .img-side .hero-foxi {
        width: 70%;
    }

    .hero-section .img-side .hero-bubble1 {
        right: 360px;
    }

    .hero-section .info-side h1 {
        letter-spacing: -1.5px;
    }

    .hero-section .info-side h2 {
        font-size: 20px;
    }

    .button-wrapper {
        flex-direction: column;
        width: 100%;
        align-items: center;
    }

    .button-wrapper .primary-btn,
    .button-wrapper .secondary-btn {
        width: 70%;
        text-align: center;
        padding: 16px 16px;
        border-radius: 27px;
    }

}

@media screen and (max-width: 475px) {
    .hero-section .info-side h1 {
        font-size: 32px;
        width: 96%;
    }

    .hero-section .info-side h2 {
        font-size: 16px;
    }

    .hero-section .img-side .hero-bubble1 {
        right: 66%;
    }

    .hero-section .img-side .hero-bubble2 {
        right: 10%;
    }
}

@media screen and (max-width: 400px) {
    .hero-section .img-side .hero-bubble1 {
        top: 120px;
        width: 70px;
    }

    .hero-section .img-side .hero-bubble2 {
        top: 50px;
        width: 200px;
    }
}

@media screen and (max-width: 365px) {
    .hero-section .info-side h1 {
        font-size: 32px;
    }

    .hero-section .info-side h2 {
        font-size: 16px;
    }
}

/* ===== formModal.css ===== */
@media screen and (max-width: 415px) {
    .login-box h2 {
        font-size: 22px;
        width: 86%;
        margin: 0 auto;
    }

    .login-box {
        width: 96%;
        margin: 0 auto;
        padding: 40px 10px;
    }

    .modal form input,
    .modal form textarea {
        width: calc(100% - 46px);
    }

    .modal form select {
        width: calc(100% - 20px);
    }

    .modal form button {
        width: 80%;
    }

}

/* ===== about.css ===== */
@media screen and (max-width: 1370px) {
    .why-grid {
        flex-wrap: wrap;
        align-items: center;
        gap: 40px;
    }

    .why-card {
        width: 30%;
    }
    
}

@media (max-width: 900px) {
    .info-wrapper {
        flex-direction: column;
    }
    .info-left{
        box-sizing: border-box;
    }

    .info-left .list-and-img{
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }
    .info-left .list-and-img:nth-child(3){
        flex-direction: column;
    }

    .list-and-img img {
        max-width: 100%;
    }

    .about-us h2 {
        font-size: 36px;
    }

    .about-us h3 {
        margin-bottom: 40px;
        font-size: 18px;
    }
    .about-us .question-right{
        top: 50%;
    }
    .about-us .question-left{
        top: 84%;
        width: 70%;
    }
    
}

@media screen and (max-width: 600px) {
    .info-left .list-and-img img,
    .info-left .list-and-img:nth-child(4) img{
        max-width: 240px;
        width: 240px;
    }
    
    .info-left ul, .list-and-img ul {
        padding-left: 0;
        margin-top: 10px;
    }
    .info-left ul li{
        font-size: 16px;
    }
}

@media screen and (max-width: 475px) {
    .about-us .container {
        width: 100%;
    }
}

@media screen and (max-width: 450px) {
    .why-card {
        width: 90%;
    }
    .info-left {
        padding: 20px 20px 40px;
    }
}

@media screen and (max-width: 365px){
    .info-left{
        padding: 0;
    }
}

/* ===== services.css ===== */
@media screen and (max-width: 1100px) {
    .advantages-section {
        background-size: cover;
    }
}

@media screen and (max-width: 900px) {
    .services-grid {
        flex-direction: column;
        align-items: center;
    }

    .services-grid .card {
        max-width: 90%;
        width: 90%;
        height: 280px;
    }

    .services-grid .card::before {
        background-size: cover;
        background-position: center;
    }

    .special-offer-container {
        flex-direction: column-reverse;
    }

    .special-offer:first-child {
        justify-content: center;
    }
}

@media screen and (max-width: 690px) {
    .special-offer {
        padding: 20px;
        gap: 20px;
    }

    .special-offer img {
        width: 100px;
    }

}

@media screen and (max-width: 580px) {
    .special-offer:last-child {
        flex-direction: column;
        text-align: center;
    }

    .special-offer img {
        width: 80px;
    }

    .special-offer:first-child img,
    .special-offer:last-child img:nth-child(2) {
        display: none;
    }

    .services-grid .card-footer .icon-hover {
        filter: drop-shadow(0 3px 6px #8400ff);
    }
}

@media screen and (max-width: 430px) {
    .special-offer:first-child {
        flex-direction: column;
        text-align: center;
        width: 100%;
    }

    .special-offer:first-child img {
        display: none;
    }

    .special-offer {
        padding: 20px 10px;
        min-width: 200px;
    }

    .special-offer h3 {
        font-size: 20px;
    }
}

@media screen and (max-width: 375px) {
    .services-grid .card {
        max-width: 90%;
        width: 100%;
        padding: 20px 10px;
    }

    .services-grid .card::before {
        background-size: 212%;
    }
}

/* ===== advantages.css ===== */
@media screen and (max-width: 1500px) {
    .adv-card p {
        width: 64%;
    }

    .adv-card img {
        opacity: 0.7;
        right: -60px;
    }
}

@media screen and (max-width: 1100px) {

    .adv-card {
        min-height: 200px;
    }

    .adv-card:nth-child(3) video {
        display: none;
    }

    .adv-content {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
    }

    .adv-card p {
        width: 80%;
    }

    .adv-card img {
        width: 220px;
        right: -60px;
        bottom: -40px;
    }

    .teachers-bg {
        background-position: center center;
    }

    .teacher-card {
        backdrop-filter: blur(10px);
    }

    .teachers-wrapper {
        height: 720px;
    }

    .card-1 {
        bottom: 110px;
        left: 90px;
    }

    .card-2 {
        top: -110px;
        left: 50px;
    }

    .card-3 {
        top: 50px;
        left: 50px;
    }

    .card-4 {
        bottom: -155px;
        right: 82px;
    }

    .card-5 {
        top: 170px;
        right: 60px;
    }

    .card-6 {
        top: 290px;
        right: 80px;
    }

    .teachers-images img {
        margin-left: 40px;
    }

    .teachers-btn {
        margin-top: 110px;
    }
}

@media screen and (max-width: 800px) {
    .default-wave {
        background-position: center top;
        background-size: 100%;
    }

    .advantages-section h2,
    .teachers-title {
        font-size: 36px;
    }

    .adv-card {
        flex: 1 1 100%;
        min-height: 0;
    }

    .adv-card:nth-child(3) video {
        display: block;
    }

    .teachers-bg {
        background-size: 100%;
        background-position: center bottom;
    }

    .teacher-card {
        background: rgba(255, 255, 255, 0.45);
    }

    .card-4 {
        bottom: -305px;
    }

    .card-5 {
        top: 320px;
        right: 120px;
    }

    .card-6 {
        top: 440px;
        right: 80px;
    }

    .teachers-btn {
        margin-top: 260px;
    }
}

@media (max-width: 768px) {
    .adv-card {
        flex: 1 1 100%;
        backdrop-filter: blur(10px);
        background: rgba(255, 255, 255, 0.5);
    }

    .adv-card:hover {
        background: rgba(255, 255, 255, 0.6);
    }

    .adv-card:nth-child(3) video{
        max-width: 140px;
    }

    .adv-card img {
        width: 140px;
        right: -10px;
        bottom: -10px;
    }

    .teachers-images img {
        margin-top: 160px;
    }
}

@media screen and (max-width: 475px) {
    .advantages-section {
        width: 100%;
    }

    .teachers-bg {
        background-size: 110%;
        background-position: center center;
    }

    .teachers-wrapper {
        height: 600px;
    }

    .teachers-images img {
        width: 300px;
        margin-left: 0;
        margin-top: 250px;
    }

    .teacher-card {
        width: 68%;
        font-size: 13px;
        padding: 14px 20px;
    }

    .card-1 {
        bottom: 200px;
        left: 50%;
        transform: translateX(-50%) rotateZ(4deg) !important;
    }

    .card-2 {
        top: -190px;
        left: 50%;
        transform: translateX(-50%) rotateZ(-2deg) !important;
    }

    .card-3 {
        top: -65px;
        left: 50%;
        transform: translateX(-50%) rotateZ(4deg) !important;
    }

    .card-4 {
        bottom: -370px;
        right: auto;
        left: 50%;
        transform: translateX(-50%) rotateZ(-4deg) !important;
    }

    .card-5 {
        top: 375px;
        right: auto;
        left: 50%;
        transform: translateX(-50%) rotateZ(2deg) !important;
    }

    .card-6 {
        top: 480px;
        right: auto;
        left: 50%;
        transform: translateX(-50%) rotateZ(-2deg) !important;
    }

    .teachers-btn {
        margin-top: 330px;
        padding: 12px 28px;
        font-size: 14px;
    }
}

@media screen and (max-width: 450px){
    .adv-card:nth-child(3){
        flex-direction: column;
    }
    .adv-card:nth-child(3) video{
        margin: 0 auto;
    }
    .adv-card:nth-child(3) .adv-info{
        text-align: left;
    }
}

@media screen and (max-width: 360px) {
    .teacher-card {
        width: 240px;
    }

    .teachers-images img {
        width: 250px;
    }

    .adv-card video {
        width: 100%;
    }
}

/* ===== achievments.css ===== */
@media screen and (max-width: 768px) {
    .achievments-card {
        flex: 1 1 100%;
    }
}

@media screen and (max-width: 1100px) {
    .projects-wrapper{
        width: 100%;
    }
}

@media screen and (max-width: 900px) {
    .projects-row {
        flex-direction: column;
    }

    .project-card.large {
        padding: 28px;
        flex-direction: column;
    }
}

@media screen and (max-width: 680px) {
    .foxi-projects .section-title{
        font-size: 36px;
    }    
}

@media screen and (max-width: 600px) {
    .project-card.large video{
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 500px) {
    .foxi-projects .container{
        width: 96%;
        padding: 0;
    }
    .project-card.large,
    .project-card{
        padding: 28px 14px;
    }
    .foxi-projects .button-wrapper .cta-button{
        width: 90%;
        font-size: 16px;
        padding: 14px 16px;
    }
}

@media screen and (max-width: 900px) {
    .achievments-grid{
        flex-direction: column;
    }
    .achievments-card.color1-right video{
        display: block;
        border-radius: 23px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 768px) {
    .achievments-card {
        flex: 1 1 100%;
    }
}

@media screen and (max-width: 500px) {
    .achievments-section .button-wrapper .cta-button{
        width: 90%;
        font-size: 16px;
        padding: 14px 16px;
    }
}

/* ===== faq.css ===== */
@media screen and (max-width: 1000px) {
    .faq-wrapper {
        max-width: 100%;
    }

    .accordion-container {
        max-width: 100%;
    }

    .left-faq,
    .right-faq {
        min-width: 0;
    }
}

@media screen and (max-width: 680px) {
    .accordion-container {
        flex-direction: column;
        gap: 0px;
    }

    .FAQ-section h2 {
        font-size: 36px;
        gap: 15px;
    }

    .faq-wrapper {
        margin-top: 0;
    }

    .tab__label {
        font-size: 16px;
    }
}

@media screen and (max-width: 475px) {
    .faq-outer {
        width: 98%;
    }

    .FAQ-section {
        background-size: 100%;
        background-position-x: center;
    }
}

@media screen and (max-width: 475px) {
    .FAQ-section{
        padding: 40px 20px;
    }
}

/* ===== reviews.css ===== */
@media (max-width: 700px) {
    .review-cards {
        flex-direction: column;
        align-items: center;
        gap: 24px;
    }
}

@media screen and (max-width: 1400px) {
    .review-bg {
        /* background-size: 130%; */
        background-position: 0 0;
    }

    .review-wrapper {
        background-size: 110%;
        background-position-y: -110px;
    }
}

@media screen and (max-width: 1260px) {
    .review-bg {
        background-size: 180%;
    }
}

@media screen and (max-width: 1000px) {
    .review-section {
        width: 100%;
    }

    .review-cards {
        width: 90%;
        margin: 0 auto;
    }

    .review-bg {
        background-size: 210%;
    }
}

@media screen and (max-width: 700px) {
    .review-bg {
        background-size: 300%;
    }

    .review-section h2 {
        font-size: 40px;
    }

    .review-wrapper {
        background-position-y: 50px;
    }

    .col-2,
    .col-3 {
        display: none;
    }

    .review-card {
        max-width: 70%;
        margin: 0 auto;
    }

    .slider-container .carousel::before,
    .slider-container .carousel::after {
        width: 120px !important;
    }
    .teacher-card:hover{
        transform: none;
    }
}

@media screen and (max-width: 520px) {
    .review-bg {
        background-size: 480%;
    }
}

@media screen and (max-width: 475px) {

    .review-section h2 {
        font-size: 36px;
    }
}

@media screen and (max-width: 365px) {
    .review-card {
        max-width: 90%;
    }

    .review-section h2 {
        font-size: 32px;
        line-height: 1;
    }
}

/* ===== footerStyle.css ===== */
@media screen and (max-width: 900px) {
    .footer-top {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .legal-links {
        justify-content: center;
    }
}

/* ===== wavesAnimation.css ===== */
@media screen and (max-width: 900px) {
    .waves{
        bottom: -85px;
    }
    .about-us .waves{
        width: 100%;
        height: 5%;
        bottom: -70px;
    }
    
}

/* ===== slider.css ===== */
@media screen and (max-width: 900px) {
    .carousel .video-card {
        width: calc(100% / 2);
        height: 100%;
    }
}

@media screen and (max-width: 550px) {
    .slider-container .carousel{
        /* height: calc(512px - 40px); */
        padding: 0 20px;
    }
    .video-container{
        width: 95%;
    }
    .video-container video{
        width: 280px;
    }
    .carousel .video-card {
        width: 294px;
        height: auto;
    }

}