@font-face {
  font-family: 'Eindhoven Type';
  src: url('fonts/EindhovenTypeRegularV20.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Nitti Eindhoven';
  src: url('fonts/NittiEindhoven-Normal-v20.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Nitti Eindhoven';
  src: url('fonts/NittiEindhoven-NormalItalic-v20.otf') format('opentype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Nitti Eindhoven';
  src: url('fonts/NittiEindhoven-Bold-v20.otf') format('opentype');
  font-weight: 700;
  font-style: bold;
}

:root{
	--primary-red-color: #E32527;
    --secondary-blue-color: #0E384C;
    --tertiary-green-color: #0A3C35;
    --quaternary-plum-color: #4A2E34;
    --light-grey: #F5F5F5;
    --default-white: #FFF;
    --default-black: #231F20;
    --error-color: #B30000;

    /* Focus colors */
    --focus-outline-color: currentColor;
    --focus-outline-offset: 0.1rem;
    --focus-outline-style: solid;
    --focus-outline-width: 2px;
}

.h3{
    font-family: 'Eindhoven Type';
    font-size: 18px;
    margin: 0;
    margin-bottom: 25px;
    color: var(--primary-red-color);
    line-height: 1;
    font-weight: 500;
}

#content,
.grid {
	max-width: 1460px;
	margin: 0 auto;
    padding: 64px 30px;
}


.a-fa{
    font-weight: 500;
    display: inline-block;
    position: relative;
}

.b-fa{
    font-weight: 500;
    display: inline-block;
    position: relative;
}

.b-fa:hover{
    text-decoration: solid 1px currentColor !important;
}

.b-fa:before {
    font-size: 12px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 600;
    content: "\f324";
    display: inline-block;
    margin-right: 10px;
    color: var(--primary-red-color);
}

.a-fa_bold{
    font-weight: 700;
    display: inline-block;
    position: relative;
}

.a-fa:after {
    font-size: 12px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 400;
    content: "\f08e";
    display: inline-block;
    margin-left: 10px;
}

.a-fa_bold:before{
    font-size: 14px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 700;
    content: "\f33d";
    display: inline-block;
    margin-right: 10px;
}


/* skiplinks */
.a-skiplink {
    background-color: #fff;
    border: 2px solid #999;
    display: block;
    left: -1000em;
    padding: .5em;
    position: absolute;
    z-index: 10;
    transition: none;
}

.a-skiplink:focus {
    left: 1em;
    top: 126px;
    z-index: 1000;
}

#container_menu_top,
#apptitle,
#header_top,
#pull {
    display: none !important;
}

#container_menu{
    overflow: visible;
}

#container_menu, #innerfooter{
    font-family: 'Nitti Eindhoven';
    line-height: 1.6;
    font-size: 18px;

    ul{
        padding: 0;
        margin: 0;
    }
    li{
        list-style: none;
    }

    a {
        font-size: 18px;
        text-decoration: none;
        color: var(--default-black);
        display: inline-block;
        position: relative;
    }

    a:hover{
        color: var(--primary-red-color);
        border-bottom: none;
    }
}

.logo{
    max-width: 200px;
    width: 100%;
    max-height: 56px;
    height: 100%;
}

#innercontainer{
    background: var(--default-white);
}

#innercontainer header:after {
    content: "";
    filter: drop-shadow(0 6px 3px rgba(0, 0, 0, 0.22));
    display: block;
    width: 100%;
    height: 14px;
    background: url(images/zigzag.svg) repeat-x bottom;
    top: -1px;
    position: relative;
}

.b_header-wrapper{
    height: 80px;
    max-width: 1460px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 30px;
    padding-right: 30px;
}

#innerheader {
    a {
        display: block;
    }

    p{
        margin: 0;
        max-height: 60px;
    }
}

.menu{
    display: flex;
    gap: 24px;
}

#p103 a{
    display: inline-block;
}

#p103 a:after{
    font-size: 12px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 600;
    content: "\f002";
    display: inline-block;
    margin-left: 8px;
}



/* Banner section start */

.banner {
    width: 100%;
    /* height: 300px; */
    height: clamp(9.375rem, 0rem + 21.4286vw, 18.75rem);
    background-image: url(images/banner.jpg);
    background-position: center;
    margin-top: -14px;
    background-size: cover;
}

/* Banner section end */


/* Footer section start */

#footer {
    border-top: solid 5px var(--primary-red-color);
    margin-top: auto;
    background: var(--default-white);
}

#innerfooter {
    max-width: 1460px;
    width: 100%;
    margin: 0 auto;
}

#innerfooter li{
    margin-bottom: 8px;
}

#innerfooter .a-fa:after {
    color: var(--primary-red-color);
}

#innerfooter .grid{
    row-gap: 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 54px;
}

.c-1-1{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 54px;
}

.c-2{
    width: 312px;
}


/* Footer section end */

@media screen and (max-width: 1000px){
    .menu, .menu-button {
        display: none;
    }
    #pull{
        display: block !important;
        color: var(--primary-red-color);
        text-decoration: none;
        width: 44px;
        height: 44px;
        text-align: center;
    }
    #pull:focus-visible{
        outline-color: var(--focus-outline-color);
        outline-offset: var(--focus-outline-offset);
        outline-style: var(--focus-outline-style);
        outline-width: var(--focus-outline-width);
    }
    #pull:before {
        color: var(--primary-red-color);
        font-family: "Font Awesome 6 Pro";
        font-size: 25px;
        font-weight: 400;
        content: "\f0c9";
    }
    #pull[aria-expanded="true"]::before {
        content: "\f00d";
        color: var(--primary-red-color);
    }
    .b_menu-open{
        display: block;
        position: absolute;
        left: 0;
        top: 80px;
        background: var(--default-white);
        width: 100%;
        z-index: 2;
    }
    #container_menu {
        overflow: visible;
    }

    .b_menu-open a{
        padding: 20px 0px;
        width: 100%;
    }
    .b_menu-open li:not(:last-of-type) a{
        border-bottom: solid 1px #a1a1a1 !important;
    }
    .b_menu-search-wrapper{
        position: unset;
    }
    #innerfooter .grid{
        grid-template-columns: 1fr;
    }
    .c-1-1{
        gap: unset;
    }
    
    .b_menu-open li{
        padding-right: 30px;
        padding-left: 30px;     
    }
    

}

@media screen and (max-width: 700px){
    .logo{
        width: 150px;
    }

    .c-1-1{
        grid-template-columns: 1fr;
        row-gap: 24px;
    }
    .c-2{
        width: 100%;
    }

}

@media screen and (max-width: 400px) {
    .b_header-wrapper, #content{
        padding-left: 15px;
        padding-right: 15px;
    }
    .b_header-wrapper {
        height: 60px;
    }
    .b_menu-open {
        top: 60px;
    }
}




body.menubody * {
  pointer-events: none;
}

body.menubody #innercontainer,
body.menubody #innercontainer * {
  pointer-events: auto;
  .b_menu-open{
      z-index: 102;
  }
}

body.menubody::before{
    content: "";
    background: #fff;
    width: 100%;
    height: 100%;
    top: 109px;
    left: 0;
    position: fixed;
    z-index: 99;
}

html.menubody,
body.menubody {
  overflow: hidden;
  height: 100vh;
}