@charset "UTF-8";

.modal,
.modal + *{margin-top: 0!important}

body{overflow-x: hidden}

*{min-height: 0; min-width: 0}img{max-width: 100%; height: auto; min-height: 1px}img.alignright{float:right;margin:0 0 1em 1em}img.alignleft{float:left;margin:0 1em 1em 0}img.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right}.alignleft{float:left}.aligncenter{display:block;margin-left:auto;margin-right:auto}a, button, input, textarea, select{outline: none!important}*:focus{outline:none!important}.row:before, .row:after {width:0px; height:0px}

@media (min-width: 1200px){
    .w-max{width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw)}
}
@media (max-width: 1199px){
    .w-max{margin-left: -15px; margin-right: -15px}
}

.scrollNext{
    padding: 0;
    border: 0;
    background: none;
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    left: 50%;
    bottom: 2.5%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 2
}
.scrollNext:hover svg{
    -webkit-animation: wobble-hor-bottom 0.8s both;
    animation: wobble-hor-bottom 0.8s both;
}
.scrollNext svg path, .scrollNext svg circle{-webkit-transition: all .15s ease-in-out; -moz-transition: all .15s ease-in-out; -ms-transition: all .15s ease-in-out; -o-transition: all .15s ease-in-out; transition: all .15s ease-in-out}
.scrollNext:hover svg path, .scrollNext:hover svg circle{stroke: #A49368}

.block-btns{margin: -15px}.block-btn{padding: 15px}

.wp-block-separator{margin: 0; border-color: #A49368}

.rm-link{font-weight: 700; color: #5A413F; text-decoration: none!important; display: inline-block; position: relative; padding-bottom: 0.6em}
* + .rm-link{margin-top: 1.25rem!important}
.rm-link:after{
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #A49368;
    position: absolute;
    left: 0;
    bottom: 0
}

.wp-block-buttons{
    margin: -15px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.wp-block-buttons > .wp-block-button{margin: 0; display: block; padding: 15px}
.wp-block-buttons.aligncenter{-webkit-justify-content: center; -ms-flex-pack: center; justify-content: center}
.wp-block-buttons.alignright{-webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end}


*::-webkit-scrollbar{width: 8px}
*::-webkit-scrollbar-track{border-radius: 4px; background: #D5D5D5}
*::-webkit-scrollbar-thumb{border-radius: 4px; background: #A49368}
*::-webkit-scrollbar-thumb:hover{background: #5A413F}

/* =============================================================================
   keyframes
   ========================================================================== */
@-webkit-keyframes wobble-hor-bottom {
    0%, 100%{
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        -webkit-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    }
    15% {
        -webkit-transform: translateX(-30px) rotate(-6deg);
        transform: translateX(-30px) rotate(-6deg);
    }
    30% {
        -webkit-transform: translateX(15px) rotate(6deg);
        transform: translateX(15px) rotate(6deg);
    }
    45% {
        -webkit-transform: translateX(-15px) rotate(-3.6deg);
        transform: translateX(-15px) rotate(-3.6deg);
    }
    60% {
        -webkit-transform: translateX(9px) rotate(2.4deg);
        transform: translateX(9px) rotate(2.4deg);
    }
    75% {
        -webkit-transform: translateX(-6px) rotate(-1.2deg);
        transform: translateX(-6px) rotate(-1.2deg);
    }
}
@keyframes wobble-hor-bottom {
    0%, 100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        -webkit-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    }
    15% {
        -webkit-transform: translateX(-30px) rotate(-6deg);
        transform: translateX(-30px) rotate(-6deg);
    }
    30% {
        -webkit-transform: translateX(15px) rotate(6deg);
        transform: translateX(15px) rotate(6deg);
    }
    45% {
        -webkit-transform: translateX(-15px) rotate(-3.6deg);
        transform: translateX(-15px) rotate(-3.6deg);
    }
    60% {
        -webkit-transform: translateX(9px) rotate(2.4deg);
        transform: translateX(9px) rotate(2.4deg);
    }
    75% {
        -webkit-transform: translateX(-6px) rotate(-1.2deg);
        transform: translateX(-6px) rotate(-1.2deg);
    }
}

/* =============================================================================
   header
   ========================================================================== */
#header{z-index: 100; top: 0; left: 0; width: 100%}

@media (min-width: 1024px){
    #header > .container > .row{padding-top: 90px}
}
@media (max-width: 1023px){
    #header > .container > .row{padding-top: 30px}
}

.wpml-ls{letter-spacing: 1px}
.wpml-ls ul{
    list-style: none;
    padding: 0;
    margin: -15px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
.wpml-ls li{padding: 15px}
.wpml-ls a{color: inherit!important; display: block; position: relative; padding-bottom: 10px; line-height: 22px; font-size: 15px; text-decoration: none!important}
.wpml-ls a:after{
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    bottom: 0;
    position: absolute;
    left: 0;
    background-color: #A49368;
    opacity: 0
}

.wpml-ls .wpml-ls-current-language > a:after,
.wpml-ls a:hover:after{opacity: 1}

/* =============================================================================
   gutenberg
   ========================================================================== */
.block-landing{background-image: url(../images/welcome-bg-min.jpg); background-position: center top; background-repeat: no-repeat; background-size: cover}
.block-landing:before{
    content: '';
    display: block;
    width: 100%;
    height: 50%;
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(20,20,20,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(20,20,20,1) 100%);
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(20,20,20,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#141414",GradientType=1);
}
    .block-landing > .container > .d-flex{padding-top: 100px; padding-bottom: 100px; height: 100vh}
        .landing-logo svg{width: 350px; height: auto}
        .block-landing .d-flex-item > .landing-logo + *:not(.block-btns){margin-top: 2.8125rem}
        .block-landing .d-flex-item > * + .block-btns{margin-top: 1.875rem}
        .block-landing .d-flex-item h1 + p{margin-top: 0.875rem}

    
.block-map:before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}
.block-map:before{
    background: rgb(20,20,20);
    background: -moz-linear-gradient(180deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 20%, rgba(255,255,255,0) 80%, rgba(20,20,20,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 20%, rgba(255,255,255,0) 80%, rgba(20,20,20,1) 100%);
    background: linear-gradient(180deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 20%, rgba(255,255,255,0) 80%, rgba(20,20,20,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#141414",endColorstr="#141414",GradientType=1);
}
@media (min-width: 1920px){
    .block-map > .d-inline-flex:after{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1
    }
    .block-map > .d-inline-flex:after{
        background: rgb(20,20,20);
        background: -moz-linear-gradient(270deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 10%, rgba(255,255,255,0) 90%, rgba(20,20,20,1) 100%);
        background: -webkit-linear-gradient(270deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 10%, rgba(255,255,255,0) 90%, rgba(20,20,20,1) 100%);
        background: linear-gradient(270deg, rgba(20,20,20,1) 0%, rgba(255,255,255,0) 10%, rgba(255,255,255,0) 90%, rgba(20,20,20,1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#141414",endColorstr="#141414",GradientType=1);
    }
}

.block-map > .d-inline-flex{
    width: 100%;
    max-width: 1920px;
    height: 650px;
    overflow: hidden;
    -webkit-transition: all .25s ease-in-out;
    -moz-transition: all .25s ease-in-out;
    -ms-transition: all .25s ease-in-out;
    -o-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out
}
    .block-map > .d-inline-flex > img{
        z-index: -1;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 1920px;
        height: 650px;
        max-width: unset;
        -moz-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        -o-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%)
    }
    .block-map > .d-inline-flex > a{
        z-index: 5;
        top: 50%;
        left: 50%;
        margin-top: 1.5rem;
        -moz-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }

@media (max-width: 1023px){
    .block-map > .d-inline-flex{
        height: 350px
    }
}

@media (min-width: 1440px){
    .builder-elements{position: relative}
        .builder-elements:before{
            content: '';
            top: 100vh;
            width: 100vw;
            margin-left: calc(50% - 50vw);
            height: 100%;
            position: absolute;
            left: 0;
            background-image: url(../images/elements-bg-min.png);
            background-position: center 0;
            background-repeat: no-repeat;
            z-index: -1
        }
}

.wp-block-column > * + *{margin-top: 15px}
.builder-elements > .container > * + *,
.acf-block-element:not(.block-landing):not(.block-map) > * + *{margin-top: 55px}

.builder-elements > .container > * + .acf-block-element,
.acf-block-element:not(.block-landing):not(.block-map) > * + .acf-block-element{margin-top: 75px}

.builder-elements > .container > .acf-block-element:not(.block-landing):not(.block-map) + *,
.builder-elements > .container > * + .wp-block-separator,
.builder-elements > .container > .wp-block-separator + *,
.acf-block-element:not(.block-landing):not(.block-map) > .acf-block-element:not(.block-landing):not(.block-map) + *,
.acf-block-element:not(.block-landing):not(.block-map) > * + .wp-block-separator,
.acf-block-element:not(.block-landing):not(.block-map) > .wp-block-separator + *{margin-top: 120px}


.flex-tm > .item-content{
    position: relative;
    -webkit-transition: padding .15s ease-in-out;
    -moz-transition: padding .15s ease-in-out;
    -ms-transition: padding .15s ease-in-out;
    -o-transition: padding .15s ease-in-out;
    transition: padding .15s ease-in-out;
}
.flex-tm > .item-content > svg{position: absolute; display: block; right: 100px; right: 15px}
.flex-tm > .item-thumbnail > img{display: block}

@media (min-width: 992px){
    .flex-tm > .item-thumbnail{
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
        max-width: 43%;
        flex: 0 0 auto\0
    }
    .flex-tm > .item-content{   
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%; 
        padding: 4.375rem 4.6875rem 1.875rem
    }
    .block-team > .flex-tm:nth-child(even) > .item-thumbnail{
        -ms-flex-order: 1;
        order: 1;
    }
    .flex-tm > .item-content > svg{top: 2.1875rem; right: 2.34375rem}
}
@media (min-width: 1280px){
    .flex-tm > .item-content{padding: 5rem 6.875rem 1.875rem}
    .flex-tm > .item-content > svg{top: 3.125; right: 3.4375rem}
}
@media (max-width: 991px){
    .flex-tm > .item-thumbnail{position: relative; z-index: 1; width: 100%}
        .flex-tm > .item-thumbnail > img{max-width: 250px; margin: 0 auto}
    .flex-tm > .item-content{
        width: 100%;
        margin-top: -120px;
        padding: 150px 1.875rem 1.875rem 1.875rem
    }
}

.tm-title + *:not(.tm-job):not(.close){margin-top: 30px}
.tm-job{letter-spacing: 1px; margin-top: 10px}
.tm-job-desc{font-size: 0.8125rem; line-height: 1.5}
.tm-job + *:not(.tm-job-desc),
.tm-job-desc + *{margin-top: 30px}

.item-content * + .row-grid{margin-top: 1.5625rem}

a.d-inline-flex > svg{display: block; margin-right: 0.9375rem}

.flex-flags{margin: 0 -7.5px}
.flex-flags > .d-flex-item{padding: 0 7.5px}
.flex-flags > .d-flex-item img{display: block; border-radius: 50%}

.flex-tm + .flex-tm{margin-top: 4.6875rem!important}

.item-modal-media > .modal-content-inner > * + :not(.tm-job-desc){margin-top: 30px}

.editor-content > * + *{margin-top: 0.9375rem}
.editor-content > * + h1, .editor-content > * + h2, .editor-content > * + h3, .editor-content > * + h4, .editor-content > * + h5, .editor-content > * + h6{margin-top: 1.875rem}

.row-languages > * + *{margin-top: 30px}

.modal-dialog-scrollable .modal-body{overflow-x: hidden}

*:not(.wp-block-button) + .wp-block-button{margin-top: 30px}

@media (min-width: 992px){
    .modal-content{padding: 70px}
    .modal-dialog-scrollable .modal-body,
    .modal-dialog-scrollable .modal-body .d-flex,
    .modal-dialog-scrollable .modal-body .d-flex > .d-flex-item{overflow: hidden}
    .modal-dialog-scrollable .modal-body .d-flex,
    .modal-dialog-scrollable .modal-body .d-flex > .d-flex-item,
    .modal-content-inner{position: relative; height: 100%}
    .modal-content-inner{overflow-x: hidden!important; overflow-y: auto}

    .modal-content-inner{padding-right: 35px}

    .modal-body > .d-flex > .item-modal-media{
        -ms-flex: 0 0 35.4%;
        flex: 0 0 35.4%;
        width: 35.4%;
        max-width: 100%;
        flex: 0 0 auto\0
    }
    .modal-body > .d-flex > .item-modal-content{
        -ms-flex-preferred-size: 0;
        flex-basis: 0;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 100%;
    }
    .modal-body > .d-flex > .item-modal-media + .item-modal-content{padding-left: 75px}
}
@media (max-width: 1200px){
    body.modal-open{overflow: hidden}
    .modal-open .modal{padding: 0!important}
    .modal-dialog-centered{max-height: 100%; margin: 0!important}
    .modal-content{padding: 30px; min-height: 100%}
}
@media (max-width: 991px){
    .modal-body > .d-flex > .d-flex-item{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        flex: 0 0 auto\0;
    }
    .modal-body > .d-flex > .item-modal-media + .item-modal-content{padding-top: 30px}
}

.location-item{padding: 30px 35px; max-width: 400px; margin-left: auto; margin-right: auto}
.location-item > img{display: block}
.location-item > * + *{margin-top: 30px}

.col-contact-person > * + *{margin-top: 30px}

.person-img{position: relative}
    .person-img:after{
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        border: 4px solid #fff;
        top: 0;
        left: 0;
        position: absolute
    }
    .person-img:after,
    .person-img img{border-radius: 50%}

.person-img + .person-info{
    padding-left: 40px;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
}
.person-info > h4 + .person-job{margin-top: 5px}
.person-info > h4 + p:not(.person-job),
.person-info > .person-job + p{margin-top: 30px}

@media (min-width: 992px){
    .col-contact-person > *:first-child{margin-top: 30px}
}

/* =============================================================================
   footer
   ========================================================================== */
#footer{padding: 3.5625rem 0 6.25rem; position: relative; z-index: 1; background-color: #141414}
    #footer .d-flex{margin: -15px}
    #footer .d-flex > *{padding: 15px}
    #footer > .container > * + *{margin-top: 1.25rem}
    #footer > .container > * + .d-flex{margin-top: 0.3125rem}

#footer a:not(:hover){color: inherit}

/* =============================================================================
   wpcf7 material
   ========================================================================== */
.wpcf7-form{padding: 0!important; background-color: transparent!important}
.wpcf7 p{margin: 0!important}
.wpcf7 p + *{margin-top: 24px!important}

.wpcf7 .wpcf7-form > p:last-of-type{
    display: -ms-flexbox!important;
    display: -webkit-flex!important;
    display: flex!important;
    -webkit-flex-direction: row!important;
    -ms-flex-direction: row!important;
    flex-direction: row!important;
    -webkit-flex-wrap: wrap!important;
    -ms-flex-wrap: wrap!important;
    flex-wrap: wrap!important;
    -webkit-justify-content: center!important;
    -ms-flex-pack: center!important;
    justify-content: center!important;
    -webkit-align-content: center!important;
    -ms-flex-line-pack: center!important;
    align-content: center!important;
    -webkit-align-items: center!important;
    -ms-flex-align: center!important;
    align-items: center!important;
}

.wpcf7 .wpcf7-form .wpcf7-submit{
  display: -ms-inline-flexbox!important;
  display: -webkit-inline-flex!important;
  display: inline-flex!important;
  -webkit-flex-direction: row!important;
  -ms-flex-direction: row!important;
  flex-direction: row!important;
  -webkit-flex-wrap: wrap!important;
  -ms-flex-wrap: wrap!important;
  flex-wrap: wrap!important;
  -webkit-justify-content: center!important;
  -ms-flex-pack: center!important;
  justify-content: center!important;
  -webkit-align-content: center!important;
  -ms-flex-line-pack: center!important;
  align-content: center!important;
  -webkit-align-items: center!important;
  -ms-flex-align: center!important;
  align-items: center!important;
  font-weight: 700!important;
  color: #fff!important;
  text-align: center!important;
  vertical-align: middle!important;
  -webkit-user-select: none!important;
  -moz-user-select: none!important;
  -ms-user-select: none!important;
  user-select: none!important;
  background-color: #A49368!important;
  border: 1px solid #A49368!important;
  padding: 1.0625rem 0.875rem!important;
  font-size: 1.125rem!important;
  line-height: 1.5rem!important;
  border-radius: 100px!important;
  -webkit-transition: all .25s ease-in-out!important;
  -moz-transition: all .25s ease-in-out!important;
  -ms-transition: all .25s ease-in-out!important;
  -o-transition: all .25s ease-in-out!important;
  transition: all .25s ease-in-out!important;
  min-width: 13.75rem!important;
  outline: none!important;
  text-decoration: none!important;
  -webkit-transform: translateY(0)!important;
  transform: translateY(0)!important;
  height: auto!important
}
.wpcf7 .wpcf7-form .wpcf7-submit:hover{
  -webkit-transform: translateY(-10px)!important;
  transform: translateY(-10px)!important
}

/* =============================================================================
   media query
   ========================================================================== */
@media (min-width: 1024px){
    #menu-toggle{display: none}
    
    #ps2id-dummy-offset{height: 100px}
}
@media (max-width: 1023px){
    .landing-logo svg{width: 120px; height: 83.73px}

    .block-landing > .container > .d-flex{height: auto}

    .scrollNext{bottom: 10px}

    #ps2id-dummy-offset{height: 50px}

    body.toggled{overflow: hidden}
    
    #menu-toggle{display:block!important;transition:.8s ease;z-index:9999;position:relative;height:40px;width:40px;border:2px solid #003e7e;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;background:none}#menu-toggle .menui{display:block;position:absolute;width:26px;top:50%;left:50%;margin:-1px 0 0 -13px;height:2px;background:#003e7e;-webkit-transition:all .35s ease-in-out;-moz-transition:all .35s ease-in-out;-ms-transition:all .35s ease-in-out;-o-transition:all .35s ease-in-out;transition:all .35s ease-in-out;border-radius:1px}#menu-toggle:not(.toggled) .menui.top-menu{margin-top:-6px}#menu-toggle:not(.toggled) .menui.bot-menu{margin-top:4px}#menu-toggle.toggled .menui.top-menu{top:18px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#menu-toggle.toggled .menui.mid-menu{opacity:0}#menu-toggle.toggled .menui.bot-menu{top:18px;-webkit-transform:rotate(-225deg);transform:rotate(-225deg)}
    
    #header-items{
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        background-color: #fff;
        -webkit-transition: all 0.25s ease-in-out;
        -moz-transition: all 0.25s ease-in-out;
        -ms-transition: all 0.25s ease-in-out;
        -o-transition: all 0.25s ease-in-out;
        transition: all 0.25s ease-in-out
    }
        #primary-menu{padding: 15px 0; position: relative; height: 100%; overflow-x: hidden; overflow-y: auto}
    #header-items:not(.toggled){left: -100%}
    #header-items.toggled{left: 0}

    h1, .h1{font-size: 2rem}
    h2, .h2{font-size: 1.75rem}
}

.contact-icon{display: block; width: 36px; margin-right: 15px; text-align: center}

.col-team-contacts > * + *{margin-top: 15px}