/*==================================================
ADDITIONAL CORPORATE PAGE RESPONSIVE RULES
HYDRO & VOLT GROUP
==================================================*/


/*==================================================
1400 PX
==================================================*/

@media(max-width:1400px){

    .project-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .event-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .region-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .site-directory-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .search-suggestion-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .featured-news-content{
        padding:45px;
    }

    .featured-news-content h2{
        font-size:36px;
    }

}


/*==================================================
1200 PX
==================================================*/

@media(max-width:1200px){

    .contact-grid,
    .working-hours-grid,
    .global-time-grid,
    .social-grid,
    .achievement-grid,
    .language-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .job-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .download-grid{
        grid-template-columns:1fr;
    }

    .search-results-grid{
        grid-template-columns:1fr;
    }

    .site-directory-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .legal-wrapper{
        grid-template-columns:240px 1fr;
        gap:35px;
    }

    .featured-news-card{
        grid-template-columns:1fr;
    }

    .featured-news-image{
        min-height:430px;
    }

}


/*==================================================
1024 PX
==================================================*/

@media(max-width:1024px){

    .hero-small{
        min-height:650px;
        height:auto;
    }

    .form-grid{
        grid-template-columns:1fr;
    }

    .form-group-full{
        grid-column:auto;
    }

    .contact-form,
    .career-form{
        padding:40px;
    }

    .event-grid,
    .region-grid,
    .project-grid{
        grid-template-columns:1fr;
    }

    .site-directory-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .search-suggestion-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .legal-wrapper{
        grid-template-columns:1fr;
    }

    .legal-sidebar{
        position:relative;
        top:auto;
    }

    .legal-sidebar ul{
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:12px 25px;
    }

    .error-code > span{
        font-size:130px;
    }

    .error-gear i{
        font-size:88px;
    }

    .error-content h1{
        font-size:44px;
    }

}


/*==================================================
768 PX
==================================================*/

@media(max-width:768px){

    .contact-grid,
    .working-hours-grid,
    .global-time-grid,
    .social-grid,
    .achievement-grid,
    .language-grid,
    .job-grid,
    .site-directory-grid,
    .search-suggestion-grid{
        grid-template-columns:1fr;
    }

    .contact-form,
    .career-form{
        padding:28px 22px;
        border-radius:22px;
    }

    .quality-notice{
        flex-direction:column;
    }

    .featured-news-content{
        padding:32px 24px;
    }

    .featured-news-content h2{
        font-size:30px;
    }

    .featured-news-image{
        min-height:330px;
    }

    .event-card{
        flex-direction:column;
    }

    .event-date{
        width:76px;
        height:86px;
    }

    .site-search-form{
        flex-direction:column;
    }

    .site-search-form .gold-button{
        width:100%;
    }

    .search-result-card{
        flex-direction:column;
    }

    .download-card{
        align-items:flex-start;
    }

    .download-button{
        margin-left:auto;
    }

    .legal-content{
        padding:28px 22px;
    }

    .legal-sidebar ul{
        grid-template-columns:1fr;
    }

    .legal-content h2{
        font-size:26px;
    }

    .legal-table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
    }

    .error-content{
        padding:150px 0 80px;
    }

    .error-code > span{
        font-size:100px;
    }

    .error-gear i{
        font-size:68px;
    }

    .error-content h1{
        font-size:36px;
    }

    .error-actions{
        flex-direction:column;
    }

    .error-actions .gold-button,
    .error-actions .transparent-button{
        width:100%;
    }

}


/*==================================================
576 PX
==================================================*/

@media(max-width:576px){

    .hero-small{
        min-height:590px;
    }

    .contact-card,
    .working-hours-card,
    .time-card,
    .social-card,
    .job-card,
    .region-content,
    .directory-column{
        padding:28px 22px;
    }

    .contact-form,
    .career-form{
        padding:24px 16px;
    }

    .form-consent{
        align-items:flex-start;
    }

    .map-wrapper iframe{
        height:420px;
    }

    .featured-news-image{
        min-height:270px;
    }

    .featured-news-content h2{
        font-size:26px;
    }

    .news-date-badge{
        width:72px;
        height:84px;
        top:18px;
        left:18px;
    }

    .news-date-badge span{
        font-size:28px;
    }

    .project-item img,
    .project-card img{
        height:260px;
    }

    .project-overlay{
        padding:22px;
    }

    .project-overlay h3{
        font-size:22px;
    }

    .achievement-card h2{
        font-size:44px;
    }

    .download-card{
        flex-direction:column;
        gap:18px;
    }

    .download-button{
        margin-left:0;
    }

    .document-search-box,
    .site-search-box{
        border-radius:20px;
    }

    .popular-searches{
        justify-content:flex-start;
    }

    .legal-content{
        border-radius:18px;
    }

    .error-code{
        gap:8px;
    }

    .error-code > span{
        font-size:76px;
    }

    .error-gear i{
        font-size:50px;
    }

    .error-content h1{
        font-size:30px;
    }

}


/*==================================================
420 PX
==================================================*/

@media(max-width:420px){

    .hero-small{
        min-height:540px;
    }

    .quality-notice{
        padding:24px 18px;
    }

    .quality-notice-icon{
        width:52px;
        height:52px;
    }

    .faq-item h3{
        padding:22px 52px 22px 20px;
        font-size:17px;
    }

    .faq-item h3::after{
        right:18px;
    }

    .faq-item > p,
    .faq-answer{
        padding:0 20px 22px;
    }

    .filter-buttons{
        justify-content:flex-start;
    }

    .filter-buttons button{
        width:100%;
    }

    .time-card h3{
        font-size:34px;
    }

    .project-info{
        padding:22px;
    }

    .project-info h3{
        font-size:21px;
    }

    .event-card{
        padding:24px 20px;
    }

    .download-content h3{
        font-size:18px;
    }

    .search-result-card{
        padding:24px 20px;
    }

    .search-result-content h3{
        font-size:20px;
    }

    .legal-content h2{
        font-size:23px;
    }

    .error-content h1{
        font-size:27px;
    }

}


/*==================================================
LANDSCAPE MOBILE
==================================================*/

@media(max-height:600px) and (orientation:landscape){

    .hero-small{
        min-height:760px;
    }

    .error-section{
        min-height:800px;
    }

}


/*==================================================
END ADDITIONAL RESPONSIVE RULES
==================================================*/

/*==================================================
FINAL RESPONSIVE CORE
HYDRO & VOLT GROUP
==================================================*/


/*==================================================
1500 PX
==================================================*/

@media(max-width:1500px){

    :root{

        --container-width:1280px;

    }

    .navbar{

        gap:19px;

    }

    .navbar a{

        font-size:12px;

    }

    .logo{

        width:190px;

    }

}


/*==================================================
1280 PX
==================================================*/

@media(max-width:1280px){

    section{

        padding:100px 0;

    }

    .header-buttons{

        display:none;

    }

    .navbar{

        gap:18px;

    }

    .about-section .container{

        gap:55px;

    }

    .services-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .why-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .partner-logos{

        grid-template-columns:repeat(4,1fr);

    }

    .news-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .footer-grid{

        grid-template-columns:1.3fr repeat(2,1fr);

    }

}


/*==================================================
1100 PX
==================================================*/

@media(max-width:1100px){

    :root{

        --header-height:82px;

    }

    .container{

        width:min(
            calc(100% - 40px),
            var(--container-width)
        );

    }

    .mobile-menu{

        display:flex;

    }

    .navbar{

        position:fixed;

        top:var(--header-height);

        right:0;

        width:min(420px,100%);

        height:calc(100vh - var(--header-height));

        display:flex;

        flex-direction:column;

        align-items:stretch;

        justify-content:flex-start;

        gap:0;

        padding:35px 28px 60px;

        overflow-y:auto;

        background:#0a0a0a;

        border-left:1px solid var(--border);

        transform:translateX(100%);

        transition:.35s ease;

        box-shadow:-20px 0 50px rgba(0,0,0,.35);

    }

    .navbar.active{

        transform:translateX(0);

    }

    .navbar a{

        padding:17px 0;

        font-size:15px;

        border-bottom:1px solid rgba(255,255,255,.07);

    }

    .navbar a::after{

        display:none;

    }

    .mobile-menu.active i::before{

        content:"\f00d";

    }

    .hero{

        min-height:850px;

        padding-top:150px;

    }

    .about-section .container{

        grid-template-columns:1fr;

    }

    .about-right{

        order:2;

    }

    .about-left{

        order:1;

    }

    .image-card,
    .image-card.large{

        min-height:500px;

    }

    .process-grid,
    .stats-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .testimonial-slider{

        grid-template-columns:1fr;

    }

    .footer-grid{

        grid-template-columns:repeat(2,1fr);

    }

}


/*==================================================
900 PX
==================================================*/

@media(max-width:900px){

    section{

        padding:85px 0;

    }

    .hero-content h1{

        font-size:clamp(46px,8vw,72px);

    }

    .hero-content p{

        font-size:17px;

    }

    .gallery-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .partner-logos{

        grid-template-columns:repeat(3,1fr);

    }

    .factory-features{

        grid-template-columns:1fr;

    }

    .cta-box{

        padding:65px 40px;

    }

    .newsletter-content{

        padding:55px 35px;

    }

}


/*==================================================
768 PX
==================================================*/

@media(max-width:768px){

    :root{

        --header-height:76px;

    }

    section{

        padding:72px 0;

    }

    .container{

        width:min(
            calc(100% - 28px),
            var(--container-width)
        );

    }

    .header .container{

        gap:16px;

    }

    .logo{

        width:170px;

    }

    .mobile-menu{

        width:44px;

        height:44px;

    }

    .hero{

        min-height:760px;

        padding:135px 0 80px;

    }

    .hero-content h5{

        font-size:12px;

        letter-spacing:3px;

    }

    .hero-content h1{

        font-size:46px;

    }

    .hero-content p{

        font-size:16px;

    }

    .hero-buttons,
    .about-buttons,
    .cta-buttons{

        flex-direction:column;

        align-items:stretch;

    }

    .hero-buttons .gold-button,
    .hero-buttons .transparent-button,
    .about-buttons .gold-button,
    .about-buttons .transparent-button,
    .cta-buttons .gold-button,
    .cta-buttons .transparent-button{

        width:100%;

    }

    .section-title{

        margin-bottom:45px;

    }

    .section-title h2{

        font-size:38px;

    }

    .section-title p{

        font-size:15px;

    }

    .about-left h2,
    .factory-content h2{

        font-size:38px;

    }

    .about-left p,
    .factory-content p{

        font-size:15px;

    }

    .image-card,
    .image-card.large{

        min-height:380px;

    }

    .services-grid,
    .why-grid,
    .process-grid,
    .stats-grid,
    .news-grid,
    .gallery-grid{

        grid-template-columns:1fr;

    }

    .service-card,
    .why-card,
    .process-card,
    .testimonial-card{

        padding:30px 24px;

    }

    .partner-logos{

        grid-template-columns:repeat(2,1fr);

    }

    .partner-logos > img,
    .partner-logo-card{

        min-height:100px;

    }

    .cta-box{

        padding:52px 24px;

        border-radius:24px;

    }

    .cta-box h2{

        font-size:38px;

    }

    .newsletter-content{

        padding:45px 22px;

    }

    .newsletter-content h2{

        font-size:36px;

    }

    .newsletter form{

        flex-direction:column;

        border-radius:18px;

        overflow:visible;

        background:transparent;

        border:none;

    }

    .newsletter input{

        width:100%;

        border:1px solid var(--border);

        border-radius:18px;

        background:#0d0d0d;

    }

    .newsletter button{

        width:100%;

        min-height:54px;

        margin-top:12px;

        border-radius:30px;

    }

    .footer{

        padding-top:70px;

    }

    .footer-grid{

        grid-template-columns:1fr;

        gap:40px;

    }

    .footer-bottom{

        flex-direction:column;

        align-items:flex-start;

    }

    .whatsapp-button,
    #topButton{

        right:16px;

        width:52px;

        height:52px;

    }

    .whatsapp-button{

        bottom:82px;

    }

    #topButton{

        bottom:18px;

    }

}


/*==================================================
560 PX
==================================================*/

@media(max-width:560px){

    .hero{

        min-height:690px;

    }

    .hero-content h1{

        font-size:39px;

    }

    .section-title h2,
    .about-left h2,
    .factory-content h2,
    .cta-box h2{

        font-size:33px;

    }

    .service-card h3{

        font-size:22px;

    }

    .stat-box h2{

        font-size:46px;

    }

    .gallery-grid img{

        height:270px;

    }

    .partner-logos{

        grid-template-columns:1fr 1fr;

        gap:14px;

    }

    .partner-logo-card img{

        max-width:115px;

    }

    .cta-box{

        padding:45px 18px;

    }

    .footer-logo{

        width:190px;

    }

}


/*==================================================
420 PX
==================================================*/

@media(max-width:420px){

    .container{

        width:min(
            calc(100% - 22px),
            var(--container-width)
        );

    }

    .logo{

        width:150px;

    }

    .hero{

        min-height:640px;

    }

    .hero-content h1{

        font-size:34px;

    }

    .hero-content p{

        font-size:15px;

    }

    .gold-button,
    .transparent-button{

        min-height:50px;

        padding:13px 20px;

        font-size:13px;

    }

    .section-title h2,
    .about-left h2,
    .factory-content h2,
    .cta-box h2{

        font-size:30px;

    }

    .image-card,
    .image-card.large{

        min-height:310px;

    }

    .service-card,
    .why-card,
    .process-card,
    .testimonial-card{

        padding:26px 20px;

    }

    .service-icon,
    .service-card > i{

        width:62px;

        height:62px;

        font-size:27px;

    }

    .partner-logos{

        grid-template-columns:1fr;

    }

    .gallery-grid img{

        height:240px;

    }

    .newsletter-content h2{

        font-size:30px;

    }

    .footer{

        padding-top:58px;

    }

}


/*==================================================
HEIGHT-SENSITIVE MOBILE
==================================================*/

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

    .navbar{

        padding-top:22px;

    }

    .navbar a{

        padding:13px 0;

    }

}


/*==================================================
TOUCH DEVICES
==================================================*/

@media(hover:none){

    .service-card:hover,
    .why-card:hover,
    .project-card:hover,
    .project-item:hover,
    .news-card:hover,
    .contact-card:hover,
    .job-card:hover,
    .region-card:hover{

        transform:none;

    }

}


/*==================================================
PRINT
==================================================*/

@media print{

    .header,
    .footer,
    .whatsapp-button,
    #topButton,
    .scroll-progress,
    .mouse-light,
    #preloader{

        display:none !important;

    }

    body{

        color:#000;

        background:#fff;

    }

    section{

        padding:30px 0;

    }

    a{

        color:#000;

        text-decoration:underline;

    }

}
