/* Ny WebbEss Mall */

@import url('../../../../4.5.8/instance/webbess/esset-hamburgers.min.css');

:root {
    /* 	Layout  */
    --col-padding: 3rem;
    --menu-height: 10rem;
    --menu-height-scrolled: 8rem;

    /* 	Colors */
    --primary-color: 51, 51, 51;
    --secondary-color: 51, 51, 51;

    /* 	Typography */
    --base-size: 1.6rem;

    /* 	Mobile nav */
    --activate-mobile-menu: 1000;
    --mobile-menu-height: 6rem;
    --mobile-menu-bg: 255, 255, 255;
}

/* ==========================================================================
General
========================================================================== */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

body {
    margin: 0;
}

article,
aside,
footer,
header,
nav,
section,
figcaption,
figure,
main {
    display: block;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

.section-block-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
}

/* Full width */
.full-width .section-block {
    padding: 0;
}

.full-width .section-block-wrapper {
    max-width: none;
}

/* Display none */
.EditMode .display-none {
    display: block;
}

.display-none {
    display: none;
}

/* Object fit */
.of-wrapper {
    position: relative;
    overflow: hidden;
}

.of-wrapper img {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    max-width: none;
    min-height: 100%;
    transform: translate(-50%, -50%);
}

@supports (object-fit: cover) {
    .of-wrapper img {
        position: static;
        transform: none;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .of-wrapper img.contain {
        object-fit: contain;
    }
}

/* ==========================================================================
Typography
========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-style: normal;
    font-family: inherit;
}

p {
    padding-bottom: .5em;
    margin: 0;
    font-size: var(--base-size);
    line-height: 1.8;
    font-style: normal;
    font-family: inherit;
}

a {
    display: inline-block;
    font-size: var(--base-size);
    font-family: inherit;
}

li {
    font-size: var(--base-size);
    font-family: inherit;
    line-height: 1.8;
}

/* ==========================================================================
Header and Navigation
========================================================================== */
header {
    z-index: 8;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    transition: .3s ease;
}

@supports not (position: sticky) {
    header {
        position: relative;
    }
}

header .container {
    display: flex;
    align-items: center;
    padding: 0 2rem;
}

/* Header logo */
.header-logo {
    z-index: 9;
}

.header-logo img {
    max-height: var(--menu-height);
    padding: 1rem 0;
    transition: .3s ease;
}

header.scrolled .header-logo img {
    max-height: var(--menu-height-scrolled);
}

/* Hamburger 
========================================================================== */
.hamburger {
    display: none;
}

.mobile-menu .hamburger {
    display: block;
    align-self: center;
    margin: 0 0 0 auto;
}

/* Navigation 
========================================================================== */
.TemplateMenu {
    position: relative;
    display: flex;
    padding: 0;
    margin: 0;
    list-style: none;
}

/* Global Settings
========================================================================== */
.TemplateMenu li {
    position: relative;
}

.TemplateMenu a {
    display: block;
    padding: 0 2rem;
    text-decoration: none;
}

/* Active State */
.TemplateMenu li.active>a,
.TemplateMenu ul a:hover {
    color: rgb(var(--primary-color));
}

.mobile-menu .TemplateMenu li {
    width: 100%;
}

.expandable:after {
    content: '\f0d7';
    display: inline-block;
    margin-left: 7px;
    transform: translateY(-1px);
    font-size: .7em;
    font-weight: 700;
    font-family: 'Font Awesome 5 Pro';
    text-decoration: none;
}

.parent.expandable::after {
    content: '\f0da';
}

/* First Level Menu
===================================== */
.TemplateMenu>li>a {
    line-height: var(--menu-height);
    transition: .3s ease;
}

header.scrolled .TemplateMenu>li>a {
    line-height: var(--menu-height-scrolled);
}

/* Second and third level menu
===================================== */
.TemplateMenu ul {
    position: absolute;
    display: none;
    width: 20rem;
    padding: 0;
    list-style: none;
    background: #FFF;
}

.TemplateMenu ul a {
    line-height: 5rem;
}

/* Second Level Menu */
.TemplateMenu>li:hover>ul {
    display: block;
}

.TemplateMenu>li:focus-within>ul {
    display: block;
}

/* Third Level Menu */
.TemplateMenu>li>ul>li>ul {
    top: 0;
    right: -20rem;
}

.TemplateMenu>li>ul>li:hover>ul {
    display: block;
}

.TemplateMenu>li>ul>li:focus-within>ul {
    display: block;
}

/* Mobile Navigation 
========================================================================== */
.mobile-menu {
    height: var(--mobile-menu-height)
}

.mobile-menu .header-logo img,
.mobile-menu.scrolled .header-logo img {
    max-height: var(--mobile-menu-height)
}

.mobile-menu .mainmenu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    padding-top: calc(var(--mobile-menu-height) + 3rem);
    background-color: rgb(var(--mobile-menu-bg));
    overflow: auto;
}

.mobile-menu .Navigator {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.mobile-menu .TemplateMenu {
    flex-wrap: wrap;
}

.mobile-menu .TemplateMenu ul {
    position: relative;
    display: block;
    width: 100%;
    right: auto;
    padding-left: 2rem;
}

.mobile-menu .TemplateMenu>li>a,
.mobile-menu.scrolled .TemplateMenu>li>a {
    line-height: 5rem;
}

.mobile-menu .expandable:after {
    display: none;
}

/* ==========================================================================
Layout settings
========================================================================== */
.LayoutPage .section-separator {
    display: none;
}

/* -- Layout styles -- */
.layout-1 .col-0 {
    width: 100%;
}

.layout-2 .col-0 {
    width: 50%;
    padding-right: var(--col-padding);
}

.layout-2 .col-1 {
    width: 50%;
    padding-left: var(--col-padding);
}

.layout-3 .col-0 {
    width: 33.333%;
    padding-right: var(--col-padding);
}

.layout-3 .col-1 {
    width: 33.334%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-3 .col-2 {
    width: 33.333%;
    padding-left: var(--col-padding);
}

.layout-4 .col-0 {
    width: 25%;
    padding-right: var(--col-padding);
}

.layout-4 .col-1 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-4 .col-2 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-4 .col-3 {
    width: 25%;
    padding-left: var(--col-padding);
}

.layout-5 .col-0 {
    width: 33%;
    padding-right: var(--col-padding);
}

.layout-5 .col-1 {
    width: 67%;
    padding-left: var(--col-padding);
}

.layout-6 .col-0 {
    width: 67%;
    padding-right: var(--col-padding);
}

.layout-6 .col-1 {
    width: 33%;
    padding-left: var(--col-padding);
}

.layout-7 .col-0 {
    width: 25%;
    padding-right: var(--col-padding);
}

.layout-7 .col-1 {
    width: 50%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-7 .col-2 {
    width: 25%;
    padding-left: var(--col-padding);
}

.layout-8 .col-0 {
    width: 25%;
    padding-right: var(--col-padding);
}

.layout-8 .col-1 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-8 .col-2 {
    width: 50%;
    padding-left: var(--col-padding);
}

.layout-9 .col-0 {
    width: 50%;
    padding-right: var(--col-padding);
}

.layout-9 .col-1 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-9 .col-2 {
    width: 25%;
    padding-left: var(--col-padding);
}

.layout-10 .col-0 {
    width: 20%;
    padding-right: var(--col-padding);
}

.layout-10 .col-1 {
    width: 20%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-10 .col-2 {
    width: 20%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-10 .col-3 {
    width: 20%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-10 .col-4 {
    width: 20%;
    padding-left: var(--col-padding);
}

.layout-11 .col-0 {
    width: 16.666%;
    padding-right: var(--col-padding);
}

.layout-11 .col-1 {
    width: 16.667%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-11 .col-2 {
    width: 16.667%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-11 .col-3 {
    width: 16.667%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-11 .col-4 {
    width: 16.667%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-11 .col-5 {
    width: 16.666%;
    padding-left: var(--col-padding);
}

.layout-12 .col-0 {
    width: 100%;
}

.layout-12 .col-1 {
    width: 50%;
    padding-right: var(--col-padding);
}

.layout-12 .col-2 {
    width: 50%;
    padding-left: var(--col-padding);
}

.layout-12 .col-3 {
    width: 100%;
}

.layout-13 .col-0 {
    width: 100%;
}

.layout-13 .col-1 {
    width: 33.333%;
    padding-right: var(--col-padding);
}

.layout-13 .col-2 {
    width: 33.334%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-13 .col-3 {
    width: 33.333%;
    padding-left: var(--col-padding);
}

.layout-13 .col-4 {
    width: 100%;
}

.layout-14 .col-0 {
    width: 100%;
}

.layout-14 .col-1 {
    width: 25%;
    padding-right: var(--col-padding);
}

.layout-14 .col-2 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-14 .col-3 {
    width: 25%;
    padding-left: var(--col-padding);
    padding-right: var(--col-padding);
}

.layout-14 .col-4 {
    width: 25%;
    padding-left: var(--col-padding);
}

.layout-14 .col-5 {
    width: 100%;
}

@media only screen and (max-width:1200px) {

    .layout-4 .col-0,
    .layout-4 .col-3,
    .layout-8 .col-0,
    .layout-9 .col-2,
    .layout-10 .col-0,
    .layout-11 .col-0,
    .layout-11 .col-5,
    .layout-14 .col-1,
    .layout-14 .col-4 {
        width: 50%;
    }

    .layout-4 .col-1,
    .layout-8 .col-1,
    .layout-10 .col-1,
    .layout-10 .col-3,
    .layout-11 .col-1,
    .layout-11 .col-3,
    .layout-14 .col-2 {
        width: 50%;
        padding-right: 0;
    }

    .layout-4 .col-2,
    .layout-9 .col-1,
    .layout-10 .col-2,
    .layout-11 .col-2,
    .layout-11 .col-4,
    .layout-14 .col-3 {
        width: 50%;
        padding-left: 0;
    }

    .layout-8 .col-2 {
        width: 100%;
        padding-left: 0;
    }

    .layout-9 .col-0 {
        width: 100%;
        padding-right: 0;
    }

    .layout-10 .col-4 {
        width: 50%;
        padding-left: 0;
        padding-right: var(--col-padding);
    }
}

@media only screen and (max-width: 980px) {

    .layout-2 .col-0,
    .layout-3 .col-0,
    .layout-4 .col-0,
    .layout-4 .col-2,
    .layout-5 .col-0,
    .layout-6 .col-0,
    .layout-7 .col-0,
    .layout-8 .col-0,
    .layout-9 .col-1,
    .layout-10 .col-0,
    .layout-10 .col-2,
    .layout-10 .col-4,
    .layout-11 .col-0,
    .layout-11 .col-2,
    .layout-11 .col-4,
    .layout-12 .col-1,
    .layout-13 .col-1,
    .layout-14 .col-1,
    .layout-14 .col-3 {
        width: 100%;
        padding-right: 0;
    }

    .layout-2 .col-1,
    .layout-3 .col-2,
    .layout-4 .col-1,
    .layout-4 .col-3,
    .layout-5 .col-1,
    .layout-6 .col-1,
    .layout-7 .col-2,
    .layout-8 .col-1,
    .layout-9 .col-2,
    .layout-10 .col-1,
    .layout-10 .col-3,
    .layout-11 .col-1,
    .layout-11 .col-3,
    .layout-11 .col-5,
    .layout-12 .col-2,
    .layout-13 .col-3,
    .layout-14 .col-2,
    .layout-14 .col-4 {
        width: 100%;
        padding-left: 0;
    }

    .layout-3 .col-1,
    .layout-7 .col-1,
    .layout-13 .col-2 {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}

.col-0,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5 {
    max-width: 100%;
}

/* ==========================================================================
Contact Form
========================================================================== */
.ContactForm input,
.ContactForm textarea {
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
    font-size: 16px;
    font-family: inherit;
}

.ContactForm input[type="text"],
.ContactForm textarea {
    border: 1px solid #dadada;
    padding: 1rem 1.5rem;
}

.ContactForm input:focus,
.ContactForm textarea:focus {
    outline: 2px solid rgb(var(--primary-color));
}

.ContactForm p {
    padding-bottom: .2em;
}

.ContactForm div {
    margin-bottom: 2rem;
}

.ContactSubmit {
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}

.ContactForm input.illegal,
.ContactForm textarea.illegal {
	background-color: #FFECEC;
}

/* ==========================================================================
Media queries
========================================================================== */
@media only screen and (hover:none) {

    *,
    *::before,
    *::after {
        background-attachment: scroll;
        background-position: center center;
    }
}