/* X-Large devices (large desktops, 1400px and up) */
@media (min-width: 1400px) {
    
}

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    
}
/*XX-Large devices (larger desktops, 1400px and up)*/ 
@media only screen and (min-width: 1200px) and (max-width: 1700px) {
    .hero-banner-v1 .hero-img.hero-img-one{
        display: none;
    }
    .hero-banner-v1  .hero-content {
        max-width: 600px;
    }
    .hero-banner-v1 .hero-content h1 {
        margin-bottom: 35px;
        font-size: 75px;
        line-height: 80px;
    }
    .cta-area-v1 .cta-wrapper .section-title h2 {
        font-size: 60px;
        line-height: 70px;
    }
    .hero-banner-v1 .shape-one {
        top: 130px;
        left: 30px;
    }
    .testimonial-slider-one .slick-dots {
        right: -15%;
    }
    .fancy-text-block-v1 .img-holder .shape.shape.shape-two {
        display: none;
    }
    .navigation-style-v3 .primary-menu .site-branding .lang-dropdown:before {
        margin-right: 20px;
    }
    .navigation-style-v3 .primary-menu .site-branding .lang-dropdown {
        margin-left: 20px;
    }
}

@media (max-width: 1199px) {
    .hero-banner-v2 .hero-img .hero-shape,
    .footer-gradient-bg .shape{
        display: none;
    }
    .header-right-nav ul li.navbar-toggle-btn{
        display: block;
    }
    .header-navigation .main-menu ul > li.has-children > a:before{
    /* Final mobile override: keep hero video away from screen edges and center it */
    @media (max-width: 767px) {
        .hero-banner-v1 .hero-img.hero-img-two {
            position: relative !important;
            top: auto !important;
            right: auto !important;
            left: auto !important;
            transform: none !important;
            width: 100% !important;
            max-width: none !important;
            /* Horizontal breathing room: 12–20px depending on viewport */
            padding-left: max(16px, env(safe-area-inset-left));
            padding-right: max(16px, env(safe-area-inset-right));
            box-sizing: border-box;
            margin: 12px auto 0 !important;
            z-index: 1;
        }
        .hero-banner-v1 .hero-img.hero-img-two span {
            display: block !important;
            max-width: 520px;
            margin: 0 auto !important;
        }
        .hero-banner-v1 .hero-img.hero-img-two video {
            width: 100% !important;
            max-width: 100% !important;
            height: auto !important;
            border-radius: 16px;
        }
    }
        display: none;
    }
    .navigation-style-v3 .container-fluid,
    .navigation-style-v2 .container-fluid,
    .navigation-style-v1 .container-fluid{
        padding-left: 15px;
        padding-right: 15px;
    }
    .hero-banner-v1 .shape-one {
        top: 130px;
    }
    .hero-banner-v1 .hero-content p {
        padding-right: 10%;
    }
    /* Keep only the first hero image hidden on smaller screens; show the video (hero-img-two) */
    .hero-banner-v1 .hero-img.hero-img-one,
    .cta-area-v1 .cta-img,
    .testimonial-area-v1 .shape-img{
        display: none;
    }
    /* Make hero video responsive and visible on tablets/phones */
    .hero-banner-v1 .hero-img.hero-img-two{
        display: block;
        position: relative;
        bottom: auto;
        right: auto;
        margin: 10px auto 0;
        z-index: 1;
        max-width: 92vw;
    }
    .hero-banner-v1 .hero-img.hero-img-two video{
        width: 100%;
        height: auto;
        max-width: 520px;
        transform: none !important;
        border-radius: 20px;
    }
    .testimonial-area-v1 .testimonial-item .testimonial-content h3 {
        font-size: 32px;
        line-height: 45px;
    }
    .contact-area-v1 .img-holder {
        margin-right: 0;
    }
    .footer-top .text-wrapper {
        padding-left: 70px;
    }
    .service-item {
        padding: 28px 22px 26px;
        margin-bottom: 28px !important; /* extra separation between cards */
    }
    /* Add vertical gap between auto-wrapping cols */
    .service-area .row.justify-content-center{
        row-gap: 24px;
    }
    .service-item .text .list-style-two li{
        margin-bottom: 10px;
        line-height: 1.5;
    }
    .service-item .text h3.title {
        font-size: 20px;
        line-height: 30px;
        margin-bottom: 10px;
    }
    .service-item .text .list-style-two li {
        font-size: 15px;
    }
    .testimonial-area-v2 .testimonial-item .testimonial-content h3 {
        font-size: 30px;
        line-height: 40px;
    }
    .pricing-list li{
        font-size: 16px;
    }
    .pricing-item .pricing-head span.plan {
        font-size: 18px;
    }
    .blog-area-v2 .blog-post-item {
        padding: 40px 30px 30px;
    }
    .pricing-item-one .pricing-body {
        margin-bottom: -65px;
    }
    .hero-banner-v2 .hero-img {
        min-width: 100%;
    }
    .fancy-text-block-v1 .img-holder .shape.shape.shape-two {
        display: none;
    }
    .testimonial-area-v3 .testimonial-item {
        padding: 50px 30px 45px;
    }
    .team-details-section .text-wrapper,
    .skill-area-v2 .text-wrapper,
    .skill-area-v1 .text-wrapper,
    .fancy-text-block-v2 .text-wrapper,
    .about-area-v3 .text-wrapper {
        padding-left: 0px;
    }
    .counter-area-v1 .counter-item {
        padding: 65px 30px;
    }
    .process-area-v2 .process-wrapper {
        padding: 80px 30px 10px;
    }
    .portfolio-details-wrapper .portfolio-info {
        padding: 50px 30px;
    }
    .team-area-v3 .team-item .img-holder .hover-content-two h3.title, .team-area-v3 .team-item .img-holder .hover-content h3.title {
        font-size: 24px;
        line-height: 35px;
    }
    .team-area-v3 .team-item .img-holder .hover-content-two p.position, .team-area-v3 .team-item .img-holder .hover-content p.position {
        font-size: 16px;
    }
    .team-details-section .text-wrapper .text h3.title {
        font-size: 35px;
        line-height: 45px;
    }
    .blog-standard-post-item .entry-content h3.title {
        font-size: 22px;
        line-height: 32px;
    }
    .blog-standard-post-item .entry-content {
        width: 90%;
        padding: 30px 20px 40px;
    }
    .service-area-v2 .service-wrapper{
        padding: 50px 40px 20px;
    }
    .pricing-item-three {
        padding: 30px 20px 40px;
    }
    .hero-banner-v3 .hero-content h1 {
        font-size: 52px;
        line-height: 65px;
    }
}

/* Ensure inputs remain interactive on all breakpoints */
@media (max-width: 991px) {
    input, textarea, select, button, .form_control, form {
        pointer-events: auto !important;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .section-title h2{
        font-size: 45px;
        line-height: 55px;
    }
    .contact-area-v1 .text-wrapper h2 {
        font-size: 44px;
        line-height: 55px;
    }
    .hero-banner-v2 .hero-content h1{
        font-size: 45px;
        line-height: 55px;
    }
    .navigation-style-v2 .container-fluid {
        padding-left: 70px;
        padding-right: 70px;
    }
    .counter-area-v2 .counter-item {
        padding: 60px 15px 53px;
    }
    .pricing-item-one {
        padding: 32px 20px 35px;
    }
    .pricing-item .pricing-head h2.price {
        font-size: 34px;
        line-height: 45px;
    }
    .blog-area-v2 .blog-post-item .entry-content h3.title {
        font-size: 22px;
        line-height: 34px;
    }
    .process-area-v1 .process-item {
        padding: 0 13px;
    }
    .post-nav-tag .post-nav-item .text h4 {
        font-size: 18px;
    }
    .post-nav-tag .post-nav-item .text p{
        font-size: 16px;
    }
    .testimonial-area-v4 .testimonial-item .testimonial-content p {
        font-size: 20px;
        line-height: 30px;
    }
    .counter-area-v3 .counter-item .text h2.number {
        font-size: 32px;
    }
}

@media (max-width: 991px) {
    .hero-banner-v3 .hero-content{
        margin-bottom: 40px;
    }
    .contact-area-v1 .text-wrapper h2 {
        font-size: 60px;
        line-height: 70px;
    }
    .cta-area-v1 .cta-wrapper {
        padding: 80px 40px;
    }
    .contact-area-v1 .img-holder {
        text-align: center;
    }
    .footer-copyright .footer-nav{
        margin-top: 15px;
    }
    .footer-copyright .footer-nav,
    .footer-copyright .copyright-text{
        text-align: center;
    }
    .footer-copyright .footer-nav ul li:not(first-child) {
        margin-left: 10px;
        margin-right: 10px;
    }
    .about-area-v2 .text-wrapper,
    .testimonial-area-v2 .text-wrapper {
        padding-left: 0px;
    }
    .pricing-area-v1 .pricing-wrapper,
    .contact-area-v2 .contact-wrapper,
    .service-area-v1 .service-wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }
    .contact-area-v2 .contact-form{
        margin-left: 0;
    }
    .footer-widget .widget.newsletter-widget  .newsletter-content h3 {
        font-size: 30px;
        line-height: 40px;
    }
    .cta-area-v2 .button-box {
        margin-top: 20px;
    }
    .pricing-item .pricing-head h2.price{
        font-size: 35px;
        line-height: 45px;
    }
    .pricing-item-one {
        padding: 32px 30px 35px;
        margin-bottom: 70px;
    }
    .hero-banner-v2 .hero-content{
        margin-bottom: 40px;
    }
    .contact-area-v2 .contact-form h2,
    .contact-area-v2 .text-wrapper h2{
        font-size: 32px;
        line-height: 45px;
    }
    .page-banner  .page-title {
        margin-bottom: 50px;
    }
    .about-area-v3 .img-holder {
        margin-left: 0px;
    }
    .page-footer:before,
    .page-footer:after{
        display: none;
    }
    .process-area-v1 .process-column:after{
        display: none;
    }
    .process-area-v1 .process-item {
        padding: 0 15px;
    }
    .features-list {
        padding: 55px 30px 25px;
    }
    .page-banner .page-title h1{
        font-size: 36px;
        line-height: 45px;
    }
    .post-nav-tag .post-nav-item{
        justify-content: center;
    }
    .post-nav-tag .post-icon{
        padding: 20px 0;
    }
    .partners-area-v1 .partners-slider-one {
        margin-left: -15px;
        margin-right: -15px;
    }
    .partners-area-v1 .partners-slider-one .partner-item {
        padding-left: 15px;
        padding-right: 15px;
    }
    .testimonial-area-v4{
        padding-bottom: 110px;
    }
    .testimonial-area-v4 .img-holder{
        margin-bottom: 60px;
    }
}

/* Extra small mobile devices (phones in portrait mode) */
@media (max-width: 480px) {
    .hero-banner-v1 {
        padding: 80px 0 40px; /* Reduced from 100px 0 60px */
        min-height: 100vh;
    }
    
    .hero-banner-v1 .hero-content h1 {

/* Final mobile overrides: ensure first sections clear fixed blurred header */
@media (max-width: 991.98px) {
    .blend-header + section { margin-top: 68px !important; }
    .transparent-header + .coming-soon-section { margin-top: 68px !important; }
}
@media (max-width: 575.98px) {
    .blend-header + section { margin-top: 80px !important; }
    .transparent-header + .coming-soon-section { margin-top: 80px !important; }
    .services-intro,
    .team-intro,
    .contact-intro { padding-top: 128px !important; }
}
        font-size: 32px !important; /* Increased from 28px */
        line-height: 36px !important; /* Increased from 32px */
        margin-bottom: 10px !important; /* Reduced from 12px */
    }
    
    .hero-banner-v1 .hero-content .blue-dark {
        font-size: 28px !important; /* Increased from 24px */
        line-height: 32px !important; /* Increased from 28px */
        margin-top: 2px !important; /* Reduced spacing */
    }
    
    .hero-banner-v1 .main-btn {
        padding: 14px 28px !important;
        font-size: 15px !important;
        margin-top: 18px !important; /* Reduced from 25px */
    }
    
    .hero-banner-v1 .hero-img.hero-img-two {
        max-width: 240px;
        right: -70px;
        opacity: 0.7;
    }
    
    /* Improve header spacing on very small screens */
    .hero-banner-v1 .hero-content {
        padding: 0 20px;
    }
    
    /* Add subtle animation on mobile */
    .hero-banner-v1 .hero-content h1 {
        animation: fadeInUp 0.8s ease-out;
    }
    
    .hero-banner-v1 .main-btn {
        animation: fadeInUp 0.8s ease-out 0.3s both;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .hero-banner-v1 .hero-content h1 {
        font-size: 72px;
        line-height: 80px;
    }
    .footer-top .text-wrapper {
        padding-left: 20px;
    }
    .footer-top .text-wrapper h3 {
        line-height: 40px;
        font-size: 30px;
    }
    .partners-wrapper .partner-item {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .contact-area-v3 .map-box {
        top: 19%;
    }
}


@media (max-width: 767px){
    /* Enhanced Hero Section for Mobile */
    .hero-banner-v1 {
        min-height: 100vh;
        display: flex;
        align-items: center;
        padding: 60px 0 20px; /* Reduced from 80px 0 40px */
        overflow: hidden;
    }
    
    .hero-banner-v1 .container {
        z-index: 2;
        position: relative;
    }
    
    .hero-banner-v1 .hero-content {
        text-align: center;
        padding: 0 15px;
        margin-bottom: 0;
    }
    
    .hero-banner-v1 .hero-content h1 {
        font-size: 36px !important; /* Increased from 32px */
        line-height: 40px !important; /* Increased from 38px */
        margin-bottom: 12px !important; /* Reduced from 15px */
        font-weight: 700;
        letter-spacing: -0.5px;
    }
    
    .hero-banner-v1 .hero-content h1 br {
        display: none; /* Remove line break on mobile for better flow */
    }
    
    .hero-banner-v1 .hero-content .blue-dark {
        display: block;
        margin-top: 3px; /* Reduced from 5px */
        font-size: 32px; /* Increased from 28px */
        line-height: 36px; /* Increased from 34px */
        background: linear-gradient(135deg, #60a5fa, #3b82f6);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    
    /* Enhanced video positioning for mobile */
    .hero-banner-v1 .hero-img.hero-img-two {
        position: absolute;
        top: 50%;
        right: -50px;
        transform: translateY(-50%);
        z-index: 1;
        max-width: 280px;
        opacity: 0.8;
        margin: 0;
    }
    
    .hero-banner-v1 .hero-img.hero-img-two video {
        width: 100%;
        height: auto;
        border-radius: 16px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
        filter: drop-shadow(0 10px 20px rgba(89, 86, 233, 0.2));
    }
    
    /* Enhanced button styling for mobile */
    .hero-banner-v1 .main-btn {
        padding: 16px 32px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        border-radius: 12px !important;
        background: linear-gradient(135deg, #5956e9, #4f46e5) !important;
        border: none !important;
        box-shadow: 0 8px 24px rgba(89, 86, 233, 0.3) !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        margin-top: 20px !important; /* Reduced from 30px */
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    
    .hero-banner-v1 .main-btn:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 12px 32px rgba(89, 86, 233, 0.4) !important;
    }
    
    /* Background gradients for mobile */
    .hero-banner-v1 .bg-one,
    .hero-banner-v1 .bg-two {
        opacity: 0.6;
    }
    
    .hero-banner-v1::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: radial-gradient(circle at 30% 20%, rgba(89, 86, 233, 0.1) 0%, transparent 50%),
                    radial-gradient(circle at 70% 80%, rgba(96, 165, 250, 0.1) 0%, transparent 50%);
        z-index: 1;
        pointer-events: none;
    }
    
    /* Dark mode enhancements */
    body.theme-dark .hero-banner-v1 .hero-content .blue-dark {
        background: linear-gradient(135deg, #60a5fa, #38bdf8);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    
    body.theme-dark .hero-banner-v1 .hero-img.hero-img-two video {
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6);
        filter: drop-shadow(0 10px 20px rgba(96, 165, 250, 0.2));
    }
    
    body.theme-dark .hero-banner-v1::before {
        background: radial-gradient(circle at 30% 20%, rgba(96, 165, 250, 0.15) 0%, transparent 50%),
                    radial-gradient(circle at 70% 80%, rgba(89, 86, 233, 0.15) 0%, transparent 50%);
    }

    .section-title h2{
        font-size: 30px;
        line-height: 40px;
    }
    .hero-banner-v1 .hero-content p {
        padding-right: 0%;
    }
    .service-item {
        padding: 50px 35px 40px;
    }
    .cta-area-v1 .cta-wrapper .section-title h2 {
        font-size: 26px;
        line-height: 38px;
    }
    /* Mobile navigation is handled in main style.css */
    .footer-top .text-wrapper {
        padding-left: 0px;
        padding-top: 20px;
        border-left: none;
        border-top: 2px solid rgba(89, 86, 233, 0.2);
    }
    .partners-wrapper .partner-item {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .cta-area-v2 .cta-wrapper {
        padding: 50px 30px;
    }
    .testimonial-area-v3 .testimonial-item {
        display: flex;
        flex-direction: column;
    }
    .testimonial-area-v3 .testimonial-item .author-thumb{
        margin-bottom: 25px;
    }
    .process-area-v2 .process-item .icon {
        margin-right: 20px;
    }
    .post-nav-tag .post-nav-item .text h4 {
        font-size: 18px;
    }
    .post-nav-tag .post-nav-item .text p{
        font-size: 16px;
    }
    .sidebar-widget-area .widget {
        padding: 30px 20px 40px;
    }
    .comments-area .comments-list .comment{
        flex-direction: column;
    }
    .comments-area .comments-list .comment .comment-avatar{
        margin-bottom: 30px;
    }
    .comments-area .comments-list .comment:nth-child(even) {
        margin-left: 20px;
    }
    .comments-respond {
        padding: 40px 30px 60px;
    }
    .post-author-box{
        flex-direction: column;
        align-items: flex-start;
    }
    .post-author-box .author-thumb{
        margin-bottom: 30px;
    }
    .contact-area-v2 .information-style-two{
        flex-direction: column;
    }
    .contact-area-v2 .information-style-two .icon{
        margin-bottom: 25px;
    }
    .information-style-two{
        padding: 40px 25px 30px;
    }
    .contact-area-v2 .information-style-two .info h4{
        font-size: 20px;
    }
    .blog-area-v2 .blog-post-item .entry-content h3.title{
        font-size: 20px;
        line-height: 30px;
    }
    .cta-area-v2 .button-box .main-btn{
        padding: 12px 25px;
    }
    .contact-area-v3 .map-box {
        top: 14%;
    }
    .partners-area-v1 .partners-arrows{
        justify-content: flex-start;
    }
    .counter-area-v3 .counter-item.mt-lg-30{
        margin-top: 0;
    }
    .lang-dropdown .nice-select {
        font-size: 16px;
    }
    .navigation-style-v3 .primary-menu .site-branding .lang-dropdown:before{
        margin-right: 15px;
    }
    .navigation-style-v3 .primary-menu .site-branding .lang-dropdown{
        margin-left: 15px;
    }
    .hero-banner-v3 .hero-content h1{
        font-size: 40px;
        line-height: 45px;
    }
    .navigation-style-v3 .header-right-nav ul li.nav-button {
        display: none;
    }
    .testimonial-area-v4 .testimonial-item {
        padding: 60px 30px;;
    }
    .testimonial-area-v4 .testimonial-item .testimonial-content p {
        font-size: 18px;
        line-height: 30px;
    }
}

/* Mobile-only spacing for CTA buttons on Services page (and similar CTA sections) */
@media (max-width: 575.98px) {
    /* Stack buttons vertically with a small gap and reset desktop right margin */
    .cta-area .cta-buttons {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .cta-area .cta-buttons .main-btn {
        margin-right: 0 !important;
    }
    .cta-area .cta-buttons a + a {
        margin-top: 12px !important;
    }
}
@media (max-width: 400px){
    .about-area-v1 .shape-one {
        bottom: -20px;
        left: 0px;
    }
    .footer-widget .widget.newsletter-widget .newsletter-content h3,
    .footer-top .text-wrapper h3 {
        line-height: 40px;
        font-size: 30px;
    }
    .blog-standard-post-item .entry-content h3.title {
        font-size: 20px;
        line-height: 30px;
    }
    .service-area-v2 .service-wrapper {
        padding: 40px 15px 10px;
    }
    .service-item .text h3.title {
        font-size: 20px;
        line-height: 30px;
    }
    .testimonial-area-v4 .testimonial-item .testimonial-content .author-title-thumb {
        flex-direction: column;
    }
    .testimonial-area-v4 .testimonial-item .testimonial-content .author-title-thumb .author-thumb{
        margin-bottom: 25px;
    }
}
@media only screen and (min-width: 415px) and (max-width: 767px) {
    .partners-wrapper .partner-item {
        flex: 0 0 33.33%;
        max-width: 33.33%;
    }
}
