
/*
 * Rubin Mobile Header
 * PrestaShop 1.6.1.24
 * Theme: owl_esonic
 *
 * Version: 1.0.3
 */


/* ==========================================================
   MOBILE: up to 767px
   ========================================================== */

@media (max-width: 767px) {

    /* HEADER GRID */

    header .header-top {
        margin: 10px 0 !important;
    }

    header .header-top > .container {
        display: grid !important;
        grid-template-columns: 44px minmax(0, 1fr) 90px !important;
        grid-template-rows: 65px auto !important;
        column-gap: 0 !important;
        row-gap: 8px !important;
        align-items: center !important;
        justify-content: stretch !important;
        position: relative !important;
        min-height: 73px !important;
        height: auto !important;
        padding: 0 12px !important;
        box-sizing: border-box !important;
    }


    /* LOGO */

    header #header_logo {
        grid-column: 2 !important;
        grid-row: 1 !important;

        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;

        display: block !important;
        float: none !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: 65px !important;

        padding: 0 !important;
        margin: 0 !important;

        text-align: center !important;
        box-sizing: border-box !important;
    }

    header #header_logo > a {
        display: flex !important;
        width: 100% !important;
        height: 100% !important;

        align-items: center !important;
        justify-content: center !important;

        box-sizing: border-box !important;
    }

    header #header_logo .logo {
        display: block !important;

        width: auto !important;
        max-width: 100% !important;
        max-height: 48px !important;
        height: auto !important;

        margin: 0 !important;
        transform: none !important;

        object-fit: contain;
    }


    /* CATEGORY MENU */

    header #header_logo .icon_menu {
        position: absolute !important;

        left: -44px !important;
        right: auto !important;
        top: 50% !important;

        transform: translateY(-50%) !important;

        display: block !important;
        float: none !important;

        width: 36px;
        margin: 0 !important;

        z-index: 20 !important;
    }


    /* CART */

    header .shopping_cart_top {
        grid-column: 3 !important;
        grid-row: 1 !important;

        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;

        display: block !important;
        float: none !important;

        width: 90px !important;
        min-width: 0 !important;
        max-width: 90px !important;

        margin: 0 !important;
        padding: 0 !important;

        justify-self: end !important;
        align-self: center !important;

        z-index: 20 !important;
        box-sizing: border-box !important;
    }

    header .shopping_cart {
        float: none !important;
        width: 100% !important;
        margin: 0 !important;
    }


    /* DESKTOP SEARCH CONTAINER */

    header #_desktop_search_block {
        grid-column: 1 / 4 !important;
        grid-row: 2 !important;

        display: block !important;
        position: relative !important;

        float: none !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    header #_desktop_search_block #search_block_top {
        display: block !important;

        float: none !important;

        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;

        padding: 0 !important;
        margin: 0 !important;

        box-sizing: border-box !important;
    }

    header #_desktop_search_block #searchbox {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    header #_desktop_search_block .search_query {
        flex: 1 1 auto !important;

        width: 1px !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    header #_desktop_search_block .button-search {
        flex: 0 0 auto !important;
    }


    /* MOBILE SEARCH PLACEHOLDER */

    header #_mobile_search_block {
        display: block !important;

        width: 100% !important;
        padding: 0 12px !important;
        margin: 10px 0 !important;

        box-sizing: border-box !important;
    }

    header #_mobile_search_block:empty {
        display: none !important;
    }

    header #_mobile_search_block #search_block_top {
        display: block !important;

        float: none !important;

        width: 100% !important;
        max-width: none !important;

        padding: 0 !important;
        margin: 0 !important;

        box-sizing: border-box !important;
    }

    header #_mobile_search_block #searchbox {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    header #_mobile_search_block .search_query {
        flex: 1 1 auto !important;
        width: 1px !important;
        min-width: 0 !important;
    }

    header #_mobile_search_block .button-search {
        flex: 0 0 auto !important;
    }


    /* CART POPUP - OUTSIDE GRID FLOW */

    header #layer_cart {
        position: absolute !important;
        z-index: 1000 !important;
    }

    header .layer_cart_overlay {
        position: fixed !important;
        z-index: 999 !important;
    }
}


/* ==========================================================
   TABLET: 768px - 1024px
   ========================================================== */

@media (min-width: 768px) and (max-width: 1024px) {

    header .header-top {
        margin: 15px 0 !important;
    }

    header .header-top > .container {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        min-height: 90px;
        padding: 0 12px;
    }


    /* LOGO */

    header #header_logo {
        float: none !important;
        flex: 0 0 250px !important;
        width: 250px !important;
        min-width: 250px !important;
        margin: 0 !important;
        text-align: center;
    }

    header #header_logo > a {
        display: inline-block;
    }

    header #header_logo .logo {
        display: block;
        width: auto !important;
        max-width: 240px !important;
        max-height: 75px !important;
        margin: 0 auto !important;
    }


    /* SEARCH */

    header #_desktop_search_block {
        display: block !important;
        float: none !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 15px !important;
    }

    header #_desktop_search_block #search_block_top {
        float: none !important;
        width: 100% !important;
        max-width: 300px;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    header #_desktop_search_block #searchbox {
        display: flex;
        width: 100%;
    }

    header #_desktop_search_block .search_query {
        flex: 1;
        width: 1px;
        min-width: 0;
    }

    header #_desktop_search_block .button-search {
        flex: 0 0 auto;
    }


    /* CART */

    header .shopping_cart_top {
        position: relative !important;
        float: none !important;
        flex: 0 0 120px !important;
        width: 120px !important;
        min-width: 120px !important;
        margin: 0 !important;
    }

    header .shopping_cart {
        float: none !important;
        margin: 0 !important;
    }


    /* NAVIGATION */

    header .owl-menu {
        display: block;
    }

    header #_mobile_search_block {
        display: none !important;
    }
}
