@charset "UTF-8";

*{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}

html, body{height:100%}#wrapper{min-height:100%; overflow: hidden}

.rm-link,
.wp-block-button.is-style-outline .wp-block-button__link{
   display: inline-block;
   font-size: 1.3125rem;
   line-height: 1.5625rem;
   font-weight: 700;
   text-transform: uppercase;
   padding: 0 0 0.75rem 0;
   text-decoration: none!important;
   color: #000;
   border: none;
   border-radius: 0;
   border-bottom: 3px solid #000;
   letter-spacing: 2px
}
.rm-link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover{color: #D80028; border-color: #D80028}

* + .block_link{margin-top: 2.5rem}

*:not(.wp-block-button) + .wp-block-button{margin-top: 2.5rem}

.double_img{padding-bottom: 3.375rem; padding-right: 6.875rem; max-width: 38.75rem}
   .double_img img{display: block}
   .double_img img + img{
      position: absolute;
      top: 4rem;
      right: 0;
      width: 46.776%;
      height: auto
   }

/* =============================================================================
   header
   ========================================================================== */
#wrapper:not(.no-opacity){padding-top: 12.5rem}

#header{color: #fff; position: fixed; top: 0; left: 0; width: 100%; z-index: 100; -webkit-transition: background .35s ease-in-out; -moz-transition: background .35s ease-in-out; -ms-transition: background .35s ease-in-out; -o-transition: background .35s ease-in-out; transition: background .35s ease-in-out}

#header:not(.no-opacity):not(.fixed){background-image: url(../images/header-bg.png); background-position: center; background-repeat: no-repeat; background-size: cover; color: #000}
#header:not(.no-opacity):not(.fixed) .col-logo svg path{fill: #000}
#header:not(.no-opacity):not(.fixed) .btn-outline-light{color: #000; border-color: #000}
#header:not(.no-opacity):not(.fixed) .btn-outline-light:hover{box-shadow: 0 0 0 0.3rem rgba(0, 0, 0, 0.5)}

#header.fixed{background-color: rgba(0,0,0,.5)}
#header .container-fluid > .row{-webkit-transition: height .35s ease-in-out; -moz-transition: height .35s ease-in-out; -ms-transition: height .35s ease-in-out; -o-transition: height .35s ease-in-out; transition: height .35s ease-in-out}

#primary-menu ul{padding: 0; list-style: none}
#header a{text-decoration: none}

.col-logo svg{width: 8.6819375rem; height: 6.875rem}

#header .btn{padding: 0.875rem 1.1875rem; font-size: 1.875rem}

/* =============================================================================
   body
   ========================================================================== */
* + .block-boxedlinks{margin-top: 4.5rem}
.block-boxedlinks + *:not(.wp-block-buttons){margin-top: 6.25rem}

.builder-elements > .container > .acf-block-element:not(.w-max) + .acf-block-element,
.builder-elements > .container > .acf-block-element + .acf-block-element:not(.w-max),
.acf-block-element:not(.bg_light) + :not(.acf-block-element){margin-top: 6.25rem}

.builder-elements{
   -webkit-flex: 1 1 auto;
   -ms-flex: 1 1 auto;
   flex: 1 1 auto;
   background-image: url(../images/content-light-bg.png);
   background-attachment: fixed;
   background-size: cover;
}

.builder-elements .acf-block-element + .wp-el,
.builder-elements .wp-el + .acf-block-element{margin-top: 6.25rem}

* + .wp-block-contact-form-7-contact-form-selector,
.wp-block-contact-form-7-contact-form-selector + *,
.editor-content > * + *,
.builder-elements * + .wp-block-buttons,
.builder-elements .wp-el + .wp-el{margin-top: 1.875rem}

.editor-content > * + h1, .editor-content > * + h2, .editor-content > * + h3, .editor-content > * + h4, .editor-content > * + h5, .editor-content > * + h6,
.wp-block-contact-form-7-contact-form-selector + h1, .wp-block-contact-form-7-contact-form-selector + h2, .wp-block-contact-form-7-contact-form-selector + h3, .wp-block-contact-form-7-contact-form-selector + h4, .wp-block-contact-form-7-contact-form-selector + h5, .wp-block-contact-form-7-contact-form-selector + h6,
.builder-elements .wp-el + h1.wp-el, .builder-elements .wp-el + h2.wp-el, .builder-elements .wp-el + h3.wp-el, .builder-elements .wp-el + h4.wp-el, .builder-elements .wp-el + h5.wp-el, .builder-elements .wp-el + h6.wp-el{margin-top: 3.125rem}

h1 + .wp-block-contact-form-7-contact-form-selector, h2 + .wp-block-contact-form-7-contact-form-selector, h3 + .wp-block-contact-form-7-contact-form-selector,
.editor-content > h1 + *, .editor-content > h2 + *, .editor-content > h3 + *,
.builder-elements h1.wp-el + .wp-el, .builder-elements h2.wp-el + .wp-el{margin-top: 1.875rem}

h4 + .wp-block-contact-form-7-contact-form-selector, h5 + .wp-block-contact-form-7-contact-form-selector, h6 + .wp-block-contact-form-7-contact-form-selector,
.editor-content > h4 + *, .editor-content > h5 + *, .editor-content > h6 + *,
.builder-elements h3.wp-el + .wp-el, .builder-elements h4.wp-el + .wp-el, .builder-elements h5.wp-el + .wp-el, .builder-elements h6.wp-el{margin-top: 1.25rem}

.editor-content ul:not([class]),
ul.wp-el{padding-left: 0; list-style: none; line-height: 1.5rem}
   .editor-content ul:not([class]) li,
   ul.wp-el li{padding-left: 54px; position: relative}
   .editor-content ul:not([class]) li + li,
   ul.wp-el li + li{margin-top: 1rem}
      .editor-content ul:not([class]) li:before,
      ul.wp-el li:before{
         content: '';
         display: block;
         width: 10px;
         height: 10px;
         background-color: #D80028;
         position: absolute;
         top: 0.5rem;
         left: 20px;
         border-radius: 50%
      }

.editor-content > * + *{margin-top: 1rem}

.acf-block-element.block-references{padding: 7.5rem 0 6.25rem}
.block-background{padding: 6.25rem 0 7.5rem}

.block-background.bg_dark{color: #fff; background-color: #000; background-image: url(../images/bg_dark-min.jpg); background-attachment: fixed; background-size: cover}

.block-header + .block-body{margin-top: 5rem}
.bh-content * + p{margin-top: 1.875rem}
.bh-content p + *{margin-top: 1.25rem}

.entry-header{background-image: url(../images/entry-header.png); background-size: cover; background-position: center; padding: 3.75rem 0}
.entry-header h1 + p{margin-top: 0.875rem}

.entry-header + *:not(.acf-block-element),
.entry-header + .acf-block-element.block-container{margin-top: 6.25rem}

.builder-elements > .container > .wp-block-contact-form-7-contact-form-selector:last-child,
.builder-elements > .container > .wp-el:last-child,
.builder-elements > .container > .wp-block-columns:last-child,
.builder-elements > .container > .acf-block-element.block-container:last-child{margin-bottom: 7.5rem}

/* .wp-block-columns */
.wp-block-columns{margin: -1.25rem; flex-wrap: wrap!important}
   .wp-block-columns > .wp-block-column{margin: 0!important; padding: 1.25rem}


.type_gallery > .gallery{
   margin: -1.25rem;
   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;
}
.type_gallery > .gallery > .gallery-item{padding: 1.25rem; width: 33.33334%}

.boxbg-item{padding: 2.625rem; text-align: center; height: 31.25rem; background-size: cover; background-position: center}
   .boxbg-item:before{
      content: '';
      display: block;
      width: 100%;
      height: 40%;
      position: absolute;
      bottom: 0;
      left: 0;
      -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;
      background: rgb(0,0,0);
      background: -moz-linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%);
      background: -webkit-linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%);
      background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
   }
   .boxbg-item:hover:before{
      height: 100%;
      background: rgb(0,0,0);
      background: -moz-linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
      background: -webkit-linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
      background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
   }
   .boxbg-item > *{position: relative; overflow: hidden}
   .boxbg-item h3{position: relative}
   .boxbg-item ul{padding: 0; list-style: none}
   .boxbg-item h3{padding-bottom: 6px}
   .boxbg-item h3:before,
   .boxbg-item h3:after{
      content: '';
      display: block;
      position: absolute;
      top: 100%;
      width: 0;
      height: 0.125rem;
      opacity: 1;
      background-color: #D80028;
      -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
   }
   .boxbg-item h3:before{right: 50%}
   .boxbg-item h3:after{left: 50%}
   @media (min-width: 768px){
      .boxbg-item ul{max-height: 0; overflow: hidden}
      .boxbg-item:hover ul{max-height: unset; padding-top: 18px}
      .boxbg-item:hover h3:before,
      .boxbg-item:hover h3:after{width: 4.1875rem; opacity: 1}
   }
   @media (max-width: 767px){
      .boxbg-item{height: unset}
      .boxbg-item:before{
         background: rgb(0,0,0);
         background: -moz-linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
         background: -webkit-linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
         background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.7) 100%);
         filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
         height: 100%;
      }
      .boxbg-item ul{padding-top: 18px}
      .boxbg-item h3:before,
      .boxbg-item h3:after{width: 4.1875rem; opacity: 1}
   }


.block-logos .row{margin: -1.25rem -1.875rem}
.block-logos .row > *{padding: 1.25rem 1.875rem}

.accordionItem > h4{padding-bottom: 1.75rem}
.accordionItem + .accordionItem{border-top: 1px solid #000}
.accordionItem:last-child{border-bottom: 1px solid #000}
.accordionItem + .accordionItem > h4{padding-top: 1.75rem}
.accordionItem .editor-content{padding-bottom: 2.625rem}
.accordionItem > h4.position-relative{padding-right: 2.5rem}
.accordionItem > h4.position-relative > svg{
   position: absolute;
   display: block;
   right: 0;
   top: 50%;
   width: 1.5rem;
   height: 1.5rem;
   -moz-transform: translateY(-50%);
   -webkit-transform: translateY(-50%);
   -o-transform: translateY(-50%);
   -ms-transform: translateY(-50%);
   transform: translateY(-50%);
   -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;
}
.accordionItem:first-child > h4.position-relative > svg{margin-top: -0.875rem}
.accordionItem > h4.position-relative[aria-expanded="true"] > svg{
   -moz-transform: rotate(180deg) translateY(50%);
   -webkit-transform: rotate(180deg) translateY(50%);
   -o-transform: rotate(180deg) translateY(50%);
   -ms-transform: rotate(180deg) translateY(50%);
   transform: rotate(180deg) translateY(50%)
}

.bg_dark .accordionItem + .accordionItem{border-top: 1px solid #fff}
.bg_dark .accordionItem:last-child{border-bottom: 1px solid #fff}
.bg_dark .accordionItem svg path{fill: #fff}

/* =============================================================================
   wpcf7
   ========================================================================== */
.wpcf7 .row-grid{margin: -0.625rem -1.25rem}
.wpcf7 .row-grid > .col, .wpcf7 .row-grid > [class*="col-"]{padding: 0.625rem 1.25rem}

.wpcf7 label{display: block; font-weight: 700; font-size: 1.125rem; line-height: 1.375rem}
.wpcf7 label > span{color: #D80028; font-weight: 600}

.wpcf7-form-control:not(.wpcf7-checkbox):not(.wpcf7-radio):not(.wpcf7-submit):not(.wpcf7-acceptance):not(.wpcf7-file).wpcf7-not-valid{border-color: #D80028}
.wpcf7-form-control-wrap > .wpcf7-not-valid-tip{
   display: block;
   font-size: 12px;
   line-height: 1em;
   text-transform: uppercase;
   padding: 5px 10px;
   position: absolute;
   bottom: 100%;
   right: 0;
   background-color: #D80028;
   color: #fff
}

/* =============================================================================
   footer
   ========================================================================== */
#footer{padding: 6.25rem 0; background-image: url(../images/footer-bg.png); background-position: center top; background-repeat: no-repeat; background-size: cover}
#footer a:not(:hover){text-decoration: none}

/* =============================================================================
   media query
   ========================================================================== */
@media (min-width: 1320px){
   #menu-toggle{display: none}

   #header .container-fluid > .row{height: 12.5rem}
   #header.fixed .container-fluid > .row{height: 8.75rem}

   #primary-menu > ul{
      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;
      margin: -1.25rem
   }
      #primary-menu > ul > li{padding: 1.25rem}
         #primary-menu > ul > li > a{
            display: block;
            position: relative;
            padding: 0.5rem 0;
            font-weight: 600;
            font-size: 1.875rem;
            line-height: 2.1875rem
         }
            #primary-menu > ul > li > a:before,
            #primary-menu > ul > li > a:after{
               content: '';
               display: block;
               width: 0;
               height: 0.125rem;
               background-color: #D80028;
               position: absolute;
               bottom: 0;
               -webkit-transition: width .35s ease-in-out;
               -moz-transition: width .35s ease-in-out;
               -ms-transition: width .35s ease-in-out;
               -o-transition: width .35s ease-in-out;
               transition: width .35s ease-in-out
            }
            #primary-menu > ul > li > a:before{right: 50%}
            #primary-menu > ul > li > a:after{left: 50%}
            
            #primary-menu a:hover{color: inherit}

            #primary-menu > ul > li > a:hover:before,
            #primary-menu > ul > li > a:hover:after,
            #primary-menu > ul > .current-menu-item > a:before,
            #primary-menu > ul > .current-menu-item > a:after,
            #primary-menu > ul > .current-menu-parent > a:before,
            #primary-menu > ul > .current-menu-parent > a:after,
            #primary-menu > ul > .current-menu-ancestor > a:before,
            #primary-menu > ul > .current-menu-ancestor > a:after{width: 50%}

   #header .col-btn{
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
      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-end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-align-content: center;
      -ms-flex-line-pack: center;
      align-content: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
   }
   
   .w-max{
      width: 100vw;
      max-width: 100vw;
      margin-left: calc(50% - 50vw);
   }
}
@media (min-width: 1440px){
   .container-fluid{padding-right: 7.5rem; padding-left: 7.5rem}
}
@media (max-width: 1900px){
   html{font-size: 14px}
}
@media (max-width: 1680px){
   html{font-size: 13px}
}
@media (max-width: 1440px){
   html{font-size: 12px}
}
@media (max-width: 1319px){
   #wrapper:not(.no-opacity){padding-top: 80px}
   #header .container-fluid > .row{height: 80px}

   .w-max{margin-right:-1.25rem;margin-left:-1.25rem}
   
   body.toggled{overflow: hidden}

   #menu-toggle{display:block!important;transition:.8s ease;z-index:9999;position:relative;height:40px;width:40px;border:2px solid #D80028;-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:#D80028;-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)}
   * + #menu-toggle{margin-left: 20px}


   .toggled #header:not(.no-opacity):not(.fixed) .btn-outline-light{border-color: #fff; color: #fff}
   .toggled #header:not(.no-opacity):not(.fixed) .btn-outline-light:hover{box-shadow: 0 0 0 0.3rem rgba(255, 255, 255, 0.5)}

   #header-items{
      position: fixed;
      width: 100%;
      top: 0;
      bottom: 0;
      background-color: rgba(0, 0, 0, 0.95);
      -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;
      padding: 95px 0 15px
   }
      #primary-menu{padding: 15px 0; position: relative; height: 100%; overflow-x: hidden; overflow-y: auto; text-align: center; font-size: 21px; line-height: 30px}
      #primary-menu li + li{margin-top: 20px}
      #primary-menu a{color: #fff!important}
      #primary-menu a:hover,
      #primary-menu .current-menu-item > a,
      #primary-menu .current-menu-parent > a,
      #primary-menu .current-menu-ancestor > a{color: #D80028!important}


   #header-items:not(.toggled){left: -100%}
   #header-items.toggled{left: 0}

   .col-logo svg{
      width: 80px;
      height: 63.34px
   }
}

.wpcf7 .col-12 > p + p{margin-top: 1.25rem}
.wpcf7 .col-12 > p > label + br{display: none!important}