/* =========================================================
   VARIABLES
   ========================================================= */

:root {
    --site-width: 960px;

    --header-height: 150px;

    --nav-height: 36px;

    --green: #4d633e;

    --yellow: #d8b900;

    --nav-yellow: #f0c900;

    --header-bg: #f8f8ec;
}

body.wrapper-fluid{
    width: var(--site-width) !important;
      margin: 0 auto !important;
      background: #F8F8EC;
}
/* =========================================================
   MAIN HEADER
   ========================================================= */

.header.container-header {
    position: relative !important;

    display: grid !important;

    grid-template-columns: 1fr auto !important;

    grid-template-areas:
        "topbar logo"
        "banner banner"
        "nav nav" !important;

   

    max-width: 100% !important;

    min-height: auto !important;

    height: auto !important;

  

    padding: 0 !important;

    background: var(--header-bg) !important;

    overflow: visible !important;
}
/* =========================================================
   UTILITY MENU
   ========================================================= */

.header.container-header > .container-topbar {
    grid-area: topbar !important;

    display: flex !important;

    align-items: flex-start !important;

    min-height: var(--header-height) !important;

    margin: 0 !important;

    padding: 20px 0 0 30px !important;

    background: transparent !important;

    box-sizing: border-box !important;
}


.header.container-header > .container-topbar .mod-menu {
    display: flex !important;

    flex-direction: column !important;

    align-items: flex-start !important;

    gap: 6px !important;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;
}


.header.container-header > .container-topbar .nav-item {
    width: 100% !important;

    margin: 0 !important;

    padding: 0 !important;
}


.header.container-header > .container-topbar a {
    display: block !important;

    padding: 0 !important;

    color: var(--green) !important;

    font-size: 14px !important;

    text-decoration: none !important;
}


.header.container-header > .container-topbar a::before {
    content: "";

    display: inline-block;

    width: 5px;

    height: 5px;

    margin-right: 8px;

    background: var(--yellow);

    vertical-align: middle;
}
/* =========================================================
   LOGO
   ========================================================= */

.header.container-header > .grid-child:has(.navbar-brand) {
    grid-area: logo !important;

    display: flex !important;

    align-items: flex-start !important;

    justify-content: flex-end !important;

    min-height: var(--header-height) !important;

    margin: 0 !important;

    padding: 20px 30px 0 0 !important;

    background: transparent !important;

    box-sizing: border-box !important;
}


.header.container-header .navbar-brand {
    display: block !important;

    width: auto !important;

    margin: 0 !important;

    padding: 0 !important;
}


.header.container-header .brand-logo {
    display: block !important;

    margin: 0 !important;

    padding: 0 !important;
}


.header.container-header .brand-logo img {
    display: block !important;

    width: 330px !important;

    max-width: 100% !important;

    height: auto !important;

    margin: 0 !important;
}
/* =========================================================
   BANNER
   ========================================================= */

.header.container-header > .container-banner {
    grid-area: banner !important;

    position: relative !important;

    display: block !important;

    width: 100% !important;

    margin: 0 !important;

    padding: 0 !important;

    min-height: 0 !important;

    background: var(--green) !important;

    overflow: hidden !important;
}
.header.container-header > .container-banner img {
    display: block !important;

    width: 100% !important;

    max-width: none !important;

    height: auto !important;

    margin: 0 !important;
}
.header.container-header .mod-languages {
    position: absolute !important;

   
    right: 30px !important;

    z-index: 50 !important;
}
.header.container-header .mod-languages__list {
    display: flex !important;

    flex-direction: row !important;

    align-items: center !important;

    justify-content: flex-end !important;

    gap: 12px !important;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;
}


.header.container-header .mod-languages__list li {
    display: block !important;

    margin: 0 !important;

    padding: 0 !important;
}


.header.container-header .mod-languages__list li a {
    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    line-height: 1 !important;
}


.header.container-header .mod-languages__list img {
    display: block !important;

    width: 28px !important;

    height: auto !important;

    max-width: none !important;
}
/* =========================================================
   MAIN NAVIGATION
   BELOW BANNER
   ========================================================= */

.header.container-header > .container-nav {
    grid-area: nav !important;

    position: relative !important;

    top: auto !important;

    left: auto !important;

    transform: none !important;

    width: 100% !important;

    min-height: var(--nav-height) !important;

    margin: 0 !important;

    padding: 0 !important;

    z-index: 20 !important;

    background: var(--green) !important;
}
.header.container-header > .container-nav > .mod-menu {
    display: flex !important;

    align-items: center !important;

    justify-content: flex-start !important;

    width: 100% !important;

    min-height: var(--nav-height) !important;

    margin: 0 !important;

    padding: 0 25px !important;

    list-style: none !important;

    box-sizing: border-box !important;
}


.header.container-header > .container-nav > .mod-menu > .nav-item {
    margin: 0 !important;

    padding: 0 !important;
}


.header.container-header > .container-nav > .mod-menu > .nav-item > a {
    padding:12px 10px;
   

    color: var(--nav-yellow) !important;

    white-space: nowrap !important;

    text-decoration: none !important;
}
/* Hover */

.header.container-header > .container-nav > .mod-menu > li:hover > a {
    text-decoration: none;
    background-color: #F5F5F5;
}
/* =========================================================
   ACTIVE MENU ITEM
   ========================================================= */

.header.container-header > .container-nav > .mod-menu > li.active > a,
.header.container-header > .container-nav > .mod-menu > li.current > a {
    background: rgba(255, 255, 255, 0.12) !important;
}

/* =========================================================
   BANNER + LANGUAGE FLAGS
   HTML:
   .container-below-top
      ├── .mod-banners
      └── .mod-languages
   ========================================================= */


/* The parent must be the positioning reference */
.header.container-header > .container-below-top {
     grid-area: banner !important;
    position: relative !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
}


/* =========================================================
   BANNER - FULL WIDTH
   ========================================================= */

.header.container-header > .container-below-top > .mod-banners {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


.header.container-header
> .container-below-top
> .mod-banners
> .mod-banners__item {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Banner image */

.header.container-header
> .container-below-top
> .mod-banners
> .mod-banners__item
> img {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    height: var(--banner-height) !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center !important;
}


/* =========================================================
   LANGUAGE MENU
   OVERLAP BANNER
   ========================================================= */

.header.container-header
> .container-below-top
> .mod-languages {
    position: absolute !important;

    top: 20px !important;
    right: 30px !important;

    z-index: 1000 !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
}


/* Flag list */

.header.container-header
> .container-below-top
> .mod-languages
> .mod-languages__list {
    display: flex !important;

    flex-direction: row !important;
    align-items: center !important;

    gap: 12px !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* Individual flags */

.header.container-header
> .container-below-top
> .mod-languages
> .mod-languages__list
> li {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Flag links */

.header.container-header
> .container-below-top
> .mod-languages
> .mod-languages__list
> li
> a {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1 !important;
}


/* Flag images */

.header.container-header
> .container-below-top
> .mod-languages
> .mod-languages__list
> li
> img {
    display: block !important;

    width: 28px !important;
    height: auto !important;

    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

