/*
   Olio Theme Responsive Design
*/

@media (max-width: 1024px) {
    .hero-section{
        height: 650px;
    }
    .about-content {
        padding: 40px 30px;
    }
    .section-heading {
        padding: 30px 20px;
    }
}

/* ---- Start of max-width 992px CSS ---- */
@media (max-width: 992px) {
    .sm-padding{ padding: 15px; }
    ul.nav > li > a {
        padding: 0 5px;
        font-size: 10px;
    }
    .content-info{
        padding-bottom: 65px;
        padding-top: 0;
    }
    .hero-section{
        height: 500px;
    }
    .hero-video {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center center;
        transform: none;
    }
    /* Show mobile toggle, hide desktop menu */
    .menu-wrap ul.nav { display: none !important; }
    .slicknav_menu { display: block !important; }
}


/* ---- Start of max-width 767px CSS ---- */
@media all and (max-width: 767px) {
    .hero-section {
        height: 100vh;
        min-height: 500px;
    }
    .hero-video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center center;
        transform: none;
    }
    /* Fullscreen overlay mobile menu */
    .slicknav_menu {
        position: fixed !important;
        top: 0; left: 0; right: 0;
        z-index: 9999; /* above all */
        background: transparent !important;
    }
    .slicknav_btn {
        position: fixed !important;
        top: 14px; right: 14px;
        z-index: 2100;
        background: rgba(255,255,255,0.08) !important;
        border: 1px solid rgba(255,255,255,0.25) !important;
        border-radius: 10px;
    }
    .slicknav_nav {
        position: fixed !important;
        top: 0; left: 0;
        width: 100vw; height: 100vh;
        background: rgba(5,5,5,0.97) !important;
        padding: 90px 30px 40px !important;
        overflow-y: auto;
        z-index: 9998;
    }
    .slicknav_nav[aria-hidden="false"] { display: block !important; }
    .slicknav_menu .slicknav_open ~ .slicknav_nav { display: block !important; }
    .slicknav_nav a,
    .slicknav_nav .slicknav_row {
        font-size: 22px !important;
        color: #fff !important;
        text-transform: uppercase;
        letter-spacing: 2px;
        text-align: center;
        padding: 14px 10px !important;
        margin: 6px 0;
        border: none !important;
        background: transparent !important;
    }
    .slicknav_nav a:hover,
    .slicknav_nav .slicknav_row:hover {
        color: #ff4c4c !important;
        background: transparent !important;
    }
    .slicknav_nav li { border: none !important; }
}
/* ---- End of max-width 767px CSS ---- */


/* ---- Start of max-width 380px CSS ---- */
@media all and (max-width: 380px) {
    .container-fluid {
        padding-left: 10px;
        padding-right: 10px;
    }
    .hero-section {
        min-height: 350px;
    }
    .hero-video {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        min-width: 0;
        min-height: 0;
        object-fit: contain;
        object-position: center center;
        transform: none;
    }
    h2 {
        font-size: 16px;
    }
    .section-heading h2 {
        font-size: 18px;
    }
    .contact-info h2 {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .about-content,
    .section-heading,
    .contact-form {
        padding: 15px 10px;
    }
    .service-content {
        padding: 15px 10px;
    }
}
/* ---- End of max-width 380px CSS ---- */
