/* Large Version */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .welcome-content h2 {
        font-size: 42px;
    }
    .timelineBody {
        max-height: 545px;
    }
    .team-member-thumb {
        width: 150px;
    }
    .post-meta p a {
        margin-right: 15px;
    }
    .post-title h4 {
        font-size: 20px;
    }
    .single-team-member {
        padding: 20px;
    }
    .cd-intro.default-title > h2 {
        font-size: 42px;
    }
}

/* Medium Version */

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .welcome_area {
        height: 700px !important;
    }
    .welcome_single_slider.height-900 {
        height: 700px;
    }
    .welcome-content h2 {
        font-size: 30px;
    }
    .cta-content h2 {
        font-size: 30px;
    }
    .timelineBody {
        max-height: 640px;
    }
    .price_table_text > h1 {
        font-size: 36px;
    }
    .price_table_text > p,
    .table_text_details > p {
        font-size: 13px;
    }
    .login-btn {
        margin: 30px;
    }
    .cd-intro.default-title > h2 {
        font-size: 36px;
    }
}

/* Mobile Version */

@media only screen and (max-width: 767px) {
    /* Fix pour éviter le débordement horizontal */
    html, body {
        overflow-x: hidden;
        max-width: 100%;
    }
    
    * {
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .container,
    .container-fluid {
        max-width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .row {
        margin-left: -15px;
        margin-right: -15px;
    }
    
    [class*="col-"] {
        padding-left: 15px;
        padding-right: 15px;
    }
    .login-btn {
        margin: 30px;
    }
    .welcome-content h2 {
        font-size: 24px;
    }
    .welcome-content p {
        font-size: 14px;
    }
    .dream-btn {
        min-width: 130px;
        padding: 0 20px;
        font-size: 10px;
    }
    .single_cool_fact {
        margin-bottom: 50px;
    }
    .classy-navbar {
        height: 60px;
    }
    .who-we-contant h4 {
        font-size: 24px;
    }
    .sonar {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    .cta-content h2 {
        font-size: 24px;
    }
    .cta-content p {
        font-size: 14px;
    }
    .timelineBox {
        margin-top: 100px;
    }
    .our-mission-area {
        height: 1000px !important;
    }
    .section-heading h2 {
        font-size: 24px;
    }
    .post-meta p a {
        margin-right: 15px;
    }
    .post-title h4 {
        font-size: 20px;
    }
    .footer-side-thumbnail {
        width: 100%;
    }
    .welcome_single_slider.height-900 {
        height: 600px;
    }
    .welcome_area.sliders {
        height: 600px !important;
    }
    .cd-intro.default-title > h2 {
        font-size: 24px;
    }
    .welcome_area.animated-headline {
        height: 600px !important;
    }
    .welcome_area.animated-headline {
        height: 600px !important;
    }
    .dream-btn.video-btn {
        min-width: 70px;
        padding: 0;
        font-size: 20px;
    }
    #scrollUp {
        bottom: 100px;
        right: 0;
    }
    .welcome-video-area {
        margin-top: 0;
    }
    .timelineBody .timeline {
        padding: 1em;
    }
    .timelineBody .timeline .timelineDate {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50px;
                flex: 0 0 50px;
        padding: 0;
    }
    .footer-copywrite-info {
        text-align: left;
    }
    .breadcumb--con {
        padding-top: 60px;
    }
    .welcome-content {
        margin-top: 130px;
    }
    .sidebar-area {
        margin-top: 100px;
    }
}

@media only screen and (max-width: 767px) {
    .welcome_area {
        height: 1100px !important;
    }
    .welcome_area.none{
        height: 100vh !important;
    }
    .sonar {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    
    .welcome-content h2 {
        font-size: 30px;
    }
    .dream-btn {
        min-width: 160px;
        padding: 0 20px;
        font-size: 12px;
    }
    .single-team-member:after {
        width: 50%;
    }
    
    /* Hero Section Mobile */
    .ico-bg2 {
        min-height: auto !important;
        height: auto !important;
        padding: 80px 0 40px !important;
    }
    
    .hero-section-content {
        height: auto !important;
        min-height: auto !important;
        padding: 20px 0 !important;
    }
    
    .welcome-content {
        margin-top: 20px !important;
        text-align: center;
        padding: 0 15px;
    }
    
    .welcome-content .cd-intro h1 {
        font-size: 24px !important;
        line-height: 1.4 !important;
    }
    
    .welcome-content .cd-words-wrapper {
        width: auto !important;
        display: block !important;
    }
    
    .dream-btn-group {
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }
    
    .dream-btn-group .btn {
        width: 100%;
        max-width: 280px;
        margin: 0 !important;
    }
    
    .hero-image-container {
        margin-top: 30px;
        padding: 0 15px;
    }
    
    .animated-hero-img {
        max-width: 100% !important;
        height: auto !important;
    }
    
    /* Fix débordement général */
    img {
        max-width: 100%;
        height: auto;
    }
    
    .project-wrapper,
    .zerogrid,
    .wrap-container {
        max-width: 100%;
        overflow-x: hidden;
    }
    
    .wrap-content {
        margin: 0;
        max-width: 100%;
    }
   
}

@media only screen and (min-width: 576px) and (max-width: 767px) {
    .welcome-content h2 {
        font-size: 36px;
    }
    .dream-btn {
        min-width: 160px;
        padding: 0 20px;
        font-size: 12px;
    }
    .cd-intro.default-title > h2 {
        font-size: 30px;
    }
    .single-team-member:after {
        width: 80%;
    }
    
    /* Hero Section Tablet */
    .ico-bg2 {
        min-height: auto !important;
        height: auto !important;
        padding: 100px 0 50px !important;
    }
    
    .hero-section-content {
        height: auto !important;
        padding: 30px 0 !important;
    }
}