/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: 
*/


* { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; scroll-behavior: smooth; }

.suspension-contain {max-height: 980px;overflow:hidden;position: relative;}
html { scroll-behavior: smooth; }
html.suspended {background: rgba(0,0,0,0.6);}
body { position: relative; max-width: 100%;margin: 0 auto;text-align: center; font-family: 'Onest', sans-serif; transition: all 0.3s ease-out; }
a { font-family: 'Onest', sans-serif; color:inherit;text-decoration: none}
a:hover {text-decoration: none;color:inherit;}
h1,h2,h3,h4,h5,h6,p { padding:0; margin:0; line-height: 120%; }
h1,h2,h3,h4,h5,h6 { font-family: 'Onest', sans-serif; font-weight: 400; line-height: 1.2em; }
p, ul li { font-family: 'Onest', sans-serif; font-weight: 400; font-size: 18px; letter-spacing: 0; line-height: 1.6em; margin: 0; }
ul, ol { margin: 0; padding: 0; }
.row { max-width: 1600px;margin: 0 auto; }
.db { display: block; }

/*color*/

.white { color: #FFFFFF; }
.black { color: #000000; }

/*sticky*/

.sticky { position: fixed!important; top: 0; width: 100%; background: rgb( 0 0 0 / 80% )!important; padding: 15px!important; box-shadow: 0px 15px 10px -15px rgb(0 0 0 / 50%); }
.sticky + .content { padding-top: 0; }
/*.sticky .header-left { width: 8%; }*/
/*#header.sticky nav ul li a { padding: 0 0 15px!important; }
#header.sticky .header-left .content-img img { filter: brightness(0) invert(1);  }
#header.sticky nav ul li a { color: #FFFFFF!important; }
*/
.sticky .header-left { width: 15%; }
.sticky .header-right { padding: 0; }
.sticky .header-section { align-items: center!important;  }

/*dropdown*/

/*#dropdown{ display: none; position: absolute; text-align: left; z-index: 9; background: rgb( 0 0 0 / 50% ); transition: all .5s ease; width: 200px!important; border: 1px solid rgb( 68 68 68 / 20% ); }
#dropdown li{ display: block!important; padding: 10px 15px!important; }
#dropdown li a { white-space: nowrap; color: #FFFFFF!important; }
#header nav ul #dropdown li a { padding: 0; }
#header nav ul #dropdown li a::before { display: none!important;  }
#header nav ul #dropdown li.active-menu a, #header nav ul #dropdown li a:hover { color: #517FBF!important; }
#menu_drop:hover > #dropdown{display: block;}*/

/*display-inline*/

.inbM { display: inline-block; vertical-align: middle; box-sizing: border-box; }
.inbT { display: inline-block; vertical-align: top; box-sizing: border-box; }

/*flex*/

.fw { flex-wrap: wrap; }
.rr { flex-direction: row-reverse; }
.flexstr { display: flex; justify-content: space-between; align-items: stretch; }
.flexstr-alt { display: flex; align-items: stretch; }

.flex { display: flex; }
.flexs { display: flex; justify-content: space-between; align-items: flex-start; }
.flexc { display: flex; justify-content: space-between; align-items: center; }
.flexe { display: flex; justify-content: space-between; align-items: flex-end; }

/*button*/

.btn { max-width: 200px; width: 100%; position: relative; background: transparent; font-family: 'Onest', sans-serif; font-weight: 700; font-size: 16px; color: #FFFFFF; letter-spacing: 0.1em; line-height: 1.2em; padding: 8px 0; display: inline-block; text-align: center; z-index: 1; text-transform: uppercase; border: 2px solid #FFFFFF; }
.btn a { color: #FFFFFF!important; }
.btn:hover {color: #FFF !important; box-shadow: 0px 10px 20px -10px #000;  }
.btn::before {content: ''; background: #2D2D2D; transition: all .3s linear; transform: scaleX(0); position: absolute;  height: 100%; width: 100%;z-index: -1;left: 0; top: 0; z-index: -1; }
.btn:hover::before {transform: scaleX(1);}
.btn.sm { max-width: 180px; width: 100%; }
.btn-arrow { position: relative; font-family: 'Onest', sans-serif; font-weight: 700; font-size: 16px; }
.btn-arrow::after { content: '\f061'; font-family: 'FontAwesome'; font-size: 20px; display: inline-block; vertical-align: middle; margin-left: 10px; }
.btn.alt { border: 2px solid #333333; color: #333333; }

/*floats*/

.fl {float:left;}
.fr {float:right;}

/*typography*/

.tl { text-align: left; }
.tc { text-align: center; }
.tr { text-align: right; }

/*clearings*/

.clear{ clear:both;}
.clearfix:after {content:"."; display:block; height:0; clear:both;visibility:hidden;font-size: 0;}
.clearfix {display:block;}

/*cookie*/

.cc-animate.cc-revoke.cc-bottom{font-size: 14px; padding: 5px 10px; position: fixed; display: block!important; transform: none!important; bottom: 0!important; left: 20px!important;}

/*call to action*/

.destroy-on-load, .cta {display: none;}

/*contact form messages*/

form .messages p {display: none;font-family: 'Onest', sans-serif; font-weight: 400!important; letter-spacing: 0!important; font-size: 16px!important; }
form .loading {display: none;}
form .alert {padding: 15px;margin-bottom: 20px;border: 1px solid transparent;border-radius: 4px;}
form .alert-success {color: #3c763d;background-color: #dff0d8;border-color: #d6e9c6;}
form .alert-danger {color: #a94442;background-color: #f2dede;border-color: #ebccd1;}
form [type="submit"] {margin: 0 auto; }

/*contact form*/

.ctc-form {margin: 0 auto;text-align: center;}
.ctc-form input[type="text"],.ctc-form textarea {font-family: 'Onest', sans-serif; font-size: 15px; color: #545454; height:60px;display: block;width: 100%;border:1px solid #D6D6D6;border-radius: 0;padding: 20px;box-sizing: border-box;margin: 0 auto 10px; }
.ctc-form textarea {height: 200px;}
/*.ctc-form input[type="text"] {font-family:'Libre Franklin', sans-serif; font-size: 16px;color:#333333;height:63px;display: inline-block;width: 32%;border: none!important;border-radius: none!important;padding: 15px 20px;box-sizing: border-box;margin: 0 6px 16px;; background: #EEEEEE; font-weight: 500; }
.ctc-form textarea {font-family:'Libre Franklin', sans-serif; font-size: 16px;color:#333333;height:134px;display: inline-block;width: 98.5%;border: none!important;border-radius: none!important;padding: 15px 20px;box-sizing: border-box;margin: 0 auto 10px; background: #EEEEEE; font-weight: 500; }*/
.ctc-form button {display: block;}
.ctc-form .recap {display: inline-block;}
.ctc-form .g-recaptcha div {margin: 0 auto 10px;}
.ctc-form .ctc-hide {display: none;}
.ctc-form .formLabel { width: 49.63%; }
.inner-form .ctc-form .formLabel { width: 100%; } 
.ctc-form .btn { display: block; color: #000000;}
/*.formBox .formLabel { width: 49.5%; }
.formLabel.lg { width: 100%; }*/
::placeholder { color: #111111; }

/*gallery*/

#content .galBox { padding-top: 30px; }
#content .gallery-container {text-align: center;}
#content .gallery {list-style-type: none;margin: 0;padding: 0; display: flex;flex-wrap: wrap;justify-content: center; gap: 20px; } 
#content .gallery li {display: inline-block; vertical-align: top; width: 200px; }
/*#content .gallery li p { line-height: 140%; width: 100%; font-size: 14px; margin: 15px auto;  }*/
#content .gallery li p { display: none; }
#content .gallery li img { width: 100%; height: 200px; object-fit: cover; } 
#content .thumbnail { border-radius: 4px;display: block;line-height: .42857; padding: 4px;transition: border 0.5s ease-in-out 0s;}
#content .thumbnail:hover {transform: scale(1.02);}
#content .page_navigation { margin: 15px 0 0; display: inline-block;}
#content .previous_link, #content .next_link { position: relative; }
#content .previous_link::before { content: '\f060'; font-family: 'FontAwesome'; font-size: 12px; color: #000000; display: inline-block; vertical-align: middle; margin: 0 5px; }
#content .next_link::after { content: '\f061'; font-family: 'FontAwesome'; font-size: 12px; color: #000000; display: inline-block; vertical-align: middle; margin: 0 5px; }
#content .first_link, #content .last_link, #content .ellipse { display: none!important; }
#content .page_link,#content .previous_link,#content .next_link,#content  .first_link,#content  .last_link, #content .ellipse {background-color: #fff;border: 1px solid #ddd;color:  #000000;display: inline-block;line-height: 1.25;margin-left: -1px;padding: 0.5rem 0.75rem;position: relative;}
#content .page_navigation > a:hover , .page_navigation > a.active_page {background-color: #eceeef;border-color: #ddd;color: #000000;text-decoration: none;}

/*HEADER*/

#header { position: absolute; width: 100%; padding: 20px 15px; z-index: 999; }
#header .row { max-width: 1820px; width: 100%; margin: 0 auto; }
#header nav a#pull {display: none}
#header nav ul { max-width: 990px; width: 100%; padding: 0; margin: 0 0 0 auto; padding: 0 15px 0 30px; }
#header nav ul li { display: inline-block; vertical-align: middle; line-height: 1; }
#header nav ul li a { position: relative; font-family: 'Onest', sans-serif; font-weight: 700; font-size: 16px; color: #FFFFFF; line-height: 1.3em; letter-spacing: 0.02em; text-transform: uppercase; }
/*#header nav ul li a::before { content: ''; background: #FF3130; width: 100%; max-width: 100%; height: 2px; border-radius: 0; position: absolute; left: 0; right: 0; bottom: 0; margin: 0 auto; transition: all .3s linear; transform: scaleX(0); z-index: 1;}
#header nav ul li a:hover::before,
#header nav ul li.active-menu a::before {transform: scaleX(1);}*/
#header nav ul li.active-menu a, #header nav ul li a:hover {  }
.header-left { width: 25%; transition: all 0.5s; }
/*.header-right { width: 75%; padding: 30px 0 0; }*/
.header-right { width: 75%; }
.header-nav { width: 87%; }
.header-info { width: 13%; }
.header-info .tel a { position: relative; font-weight: 700; font-size: 16px; }
.header-info .tel a::before { content: '\f095'; font-family: 'FontAwesome'; font-size: 13px; color: #FFFFFF; display: inline-block; vertical-align: top; margin: 4px 5px 0 0; }

/*BANNER*/

#banner, .banner-img, .banner-content, .banner-box { position: relative; }
#banner .row { position: relative; max-width: 1600px; width: 100%; margin: 0 auto; padding: 0 15px; }
/*.banner-img::before { content: ''; background: rgb( 0 0 0 / 50% ); width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; z-index: 1; }*/
.banner-img .content-img img { filter: brightness(70%); }
.banner-content { max-width: 1600px; width: 100%; margin: 0 auto; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; padding: 0 15px; z-index: 2; }
.banner-content::before { content: ''; background: url('../images/common/site-icon.webp')no-repeat center center; background-size: contain; max-width: 598px; width: 100%; height: 100%; margin: 0 auto; position: absolute; top: -65px; left: 0; right: 0; }
.banner-box { z-index: 2; }
.banner-content .content-text h2 { margin: 0 0 30px;  }
.banner-content .content-text h4 { font-size: 45px; margin: 30px 0 10px; }

/*.banner-content .content-text h2 { margin: 30px 0 10px; }
.banner-content .content-text h4 { margin: 0 0 30px;  }*/


/*CONTENT*/

#content { position: relative;  }
.content-text .text-lg { font-size: 120px; letter-spacing: 0.02em; }
.content-text .text-sm { font-size: 15px; }
.content-text h1, .content-text h2 { font-family: 'EB Garamond', serif; font-size: 80px; }
.content-text h3 { font-family: 'EB Garamond', serif; font-size: 60px; }
.content-text h4 { font-size: 50px; }
.content-text h5 { font-size: 30px; }
.content-text h6 { font-weight: 700; font-size: 18px; }
.content-img img { width: 100%; height: 100%; display: block; }

    /*ICON*/

    .icon-section { position: relative; background: #2D2D2D; padding: 115px 15px; }
    .icon-section .row { max-width: 1600px; width: 100%; margin: 0 auto; }
    .icon-wrap { column-gap: 35px; }
    /*.icon-item { background: #FFFFFF; width: 20%; padding: 65px 15px; }*/
    .icon-item { position: relative; width: 20%; }
    /*.icon-item::after { content: ''; background: rgb( 0 0 0 / 50% ); width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; }*/
    .icon-item > .content-img img { filter: brightness(70%); }
    .icon-box { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; height: 157px; }
    .icon-box .content-img { max-width: 60px; width: 100%; margin: 0 auto 25px; }
    .icon-box .content-img img { filter: brightness(0) invert(1); }
    .icon-box .content-text, .icon-box .content-img { position: relative; z-index: 2; }
    .icon-box .content-text h5 { font-family: 'EB Garamond', serif; color: #FFFFFF!important; }

    /*WELCOME*/

    .welcome-section { position: relative; padding: 90px 15px 100px; }
    .welcome-section::before { content: ''; background: url('../images/content/welcome-hero.webp')no-repeat top left; background-size: contain; width: 35%; height: 100%; position: absolute; top: 0; left: 0; }
    .welcome-section .row { position: relative; max-width: 1266px; width: 100%; margin: 0 auto; z-index: 2; }
    .welcome-content .content-text h6 { margin: 0 0 15px; }
    .welcome-wrap { padding: 75px 0 95px; border-top: 1px solid #C8C8C8; border-bottom: 1px solid #C8C8C8; column-gap: 30px; margin: 95px 0 0; }
    .welcome-col { width: 50%; }
    .welcome-col .content-text p { margin: 0 0 30px; }
    .welcome-col .content-text p:last-of-type { margin: 0; }
    .welcome-col .button { margin: 35px 0 20px; }
    .welcome-col .btn { border: 2px solid #333333; color: #333333; }
    .welcome-col .welcome-text { max-width: 540px; width: 100%; padding: 0 0 60px; }
    .welcome-col.alt .welcome-text { max-width: 540px; width: 100%; margin-left: auto; padding: 60px 0 0; }
    .welcome-info .mail a { position: relative; font-weight: 700; font-size: 16px; }
    .welcome-info .mail a::before { content: '\f0e0'; font-family: 'FontAwesome'; font-size: 13px; color: #333333; display: inline-block; vertical-align: top; margin: 4px 5px 0 0; }

    /*SERVICES*/

    .services-section { position: relative; padding: 15px; }
    .services-section .row { max-width: 100%; width: 100%; }
    .services-item { position: relative; width: 50%; padding: 15px;  }
    .services-item .content-text { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; }
    .services-item .content-img { position: relative;  }
    .services-item .content-img img { filter: brightness(70%); }
    .services-item .button { position: absolute; right: 45px; bottom: 45px; display: none; }
    .services-item .btn-arrow { color: #FFFFFF; }
    .services-item .btn-arrow::after { color: #FFFFFF; }
    .services-item:hover .content-img::after { content: ''; background: linear-gradient( to bottom, transparent, rgb( 0 0 0 / 90% ) 90% ); width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0;  }
    .services-item:hover .button { display: block!important; }

/*FOOTER*/

#footer { position: relative; background: #2D2D2D; padding: 0 15px; }
#footer::after { content: ''; background: url('../images/common/footer-bg.webp')no-repeat center right; background-size: cover; max-width: 33.33%; width: 100%; height: 100%; position: absolute; top: 0; right: 0; }
#footer .row { position: relative; max-width: 1600px; width: 100%; margin: 0 auto; z-index: 2; }
.footer-top { padding: 30px 0;  }
.footer-info, .socials { width: 50%; }
.socials { padding: 25px 0 0; }
.footer-info .tel a, .footer-info .mail a, .footer-info .loc a { position: relative; font-weight: 700; font-size: 16px; }
.footer-info .tel a::before, .footer-info .mail a::before, .footer-info .loc a::before { content: ''; font-family: 'FontAwesome'; font-size: 14px; display: inline-block; vertical-align: middle; margin: 0 10px 0 0; }
.footer-info .tel a::before { content: '\f095'; }
.footer-info .mail a::before { content: '\f0e0'; }
.footer-info .loc a::before { content: '\f3c5'; }

.footer-bot { padding: 50px 0 60px; border-bottom: 1px solid rgb( 200 200 200 / 20% ); }
.footer-left, .footer-right { width: 50%; }
.footer-bot .footer-content { max-width: 605px; width: 100%; }
.footer-bot .footer-content .content-text p { margin: 0 0 30px; }
.footer-bot .footer-content .content-text p:last-of-type { margin: 0; }
.footer-bot .content-img { max-width: 320px; width: 100%; margin-left: auto; }


    /*COPYRIGHT*/

    .copyright { padding: 40px 0; }
    .copyright .content-text p { text-transform: uppercase; }


/*INNER PAGES*/

/*HEADER*/

.inner .row { position: relative; max-width: 1200px; width: 100%; margin: 0 auto; z-index: 2; }

/*BANNER*/

/*.inner .banner-img::before { content: ''; background: rgb( 0 0 0 / 50% ); width: 100%; height: 100%; position: absolute; top: 0; left: 0; right: 0; z-index: 1; }*/
.inner .banner-img .content-img img { filter: brightness(70%); }
.inner .banner-content { max-width: 1600px; width: 100%; top: 55%; transform: translateY(-50%); bottom: unset!important; }
.inner .banner-content .content-text h1 {  color: #FFFFFF; }
.inner .banner-content::before { display: none; }

/*CONTENT*/

.inner #content { position: relative; padding: 60px 15px; min-height: 400px; }
.inner #content::before { content: ''; background: url('../images/content/welcome-hero.webp')no-repeat top left; background-size: contain; width: 35%; height: 100%; position: absolute; top: 0; left: 0; }

    /*MANUFACTURERS*/

    .inner.manufacturers #content { position: relative; padding: 0; min-height: 100%; }
    .manufacturers-section { position: relative; padding: 100px 15px 30px; z-index: 2; }
    .manufacturers-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .manufacturers-section .content-text h4 { font-family: 'Garamond', sans-serif; font-size: 40px; }
    .manufacturers-section .content-text p { margin: 30px 0 0; }
     
    .manufacturers-item-section { position: relative; padding: 0 15px 100px; z-index: 2; }
    .manufacturers-item-section .row { max-width: 1266px; width: 100%; margin: 0 auto; }
    .manufacturers-wrap { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 40px 0; align-items: center; padding: 35px 0 0; }
    .manufacturers-wrap .manufacturers-col { width: 25%; }
    .manufacturers-wrap .content-img img { width: auto; height: auto; object-fit: contain; margin: 0 auto; } 
    .manufacturers-slide { margin: 30px 0 0; }
    .manufacturers-item {  padding: 30px 0 60px; }
    .manufacturers-item .content-text h6 { font-size: 15px; text-transform: uppercase; padding: 0 0 10px; border-bottom: 1px solid #C8C8C8; }
    .manufacturers-slide .content-img img { filter: brightness(0); }
    .manufacturers-slide .slick-slide { padding: 0 20px; }

    /*DECEPTION*/

    .inner.deception #content { position: relative; padding: 0; min-height: 100%; }
    .deception-section { position: relative; padding: 105px 15px 110px; z-index: 2; }
    .deception-section .row { max-width: 1200px; width: 100%; margin: 0 auto; }
    .deception-wrap { column-gap: 40px; margin: 0 0 90px; }
    .deception-wrap .content-img { width: 50%; }

    .deception-content .content-text p { margin: 0 0 30px; }
    .deception-content .content-text p:last-of-type { margin: 0!important; }

    .inner.about #content { position: relative; padding: 0; }
    .inner.about .about-section { position: relative; padding: 105px 15px 30px; }
    .inner.about .about-section .row { max-width: 1266px; width: 100%; margin: 0 auto; padding: 0 0 80px; border-bottom: 1px solid #C8C8C8; }
    .inner.about .about-left { width: 51%; }
    .inner.about .about-left .about-content { max-width: 570px; width: 100%; padding: 0 30px 0 0; }
    .inner.about .about-content .content-text p { margin: 0 0 30px; }
    .inner.about .about-content .content-text p:last-of-type { margin: 0; }
    .inner.about .about-right { width: 49%; }

    .inner.about .staff-section { position: relative; padding: 30px 15px 155px; }
    .inner.about .staff-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .inner.about .staff-wrap { display: flex; flex-wrap: wrap; row-gap: 130px; padding: 45px 0 0; }
    .inner.about .staff-item { width: 100%; }
    .inner.about .staff-item .content-img { position: relative; max-width: 390px; width: 100%; margin: 0 auto 50px; }
    .inner.about .staff-item .content-img::after { content: ''; background: #F7F7F7; width: 100%; height: 90%; position: absolute; left: 0; right: 0; bottom: 0; }
    .inner.about .staff-item .content-img img { position: relative; z-index: 2; }
    .inner.about .staff-item .content-text h5 { font-family: 'Garamond', sans-serif; }
    .inner.about .staff-item .content-text h6 { font-size: 15px; }
    .inner.about .staff-item .content-text p { margin: 15px 0 0; }


    /*CONTACT*/

    .inner.contact #content { position: relative; padding: 0; min-height: 100%; }
    .contact-section { position: relative; padding: 100px 15px 30px; z-index: 2; }
    .contact-section .row { max-width: 1266px; width: 100%; margin: 0 auto; }
    .contact-section .content-text p { margin: 0 0 30px; }
    .contact-section .content-text p:last-of-type { margin: 0; }

    .contact-wrap { border-top: 1px solid #C8C8C8; padding: 60px 0 0; }
    .contact-info { position: relative; padding: 30px 15px 60px; z-index: 2; }
    .contact-info .row { max-width: 1266px; width: 100%; margin: 0 auto; }
    .contact-links { width: 40%; }
    .contact-map { width: 60%; }
    .contact-map iframe { border: 0!important; }
    .embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } 
    .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
    .contact-links .tel a, .contact-links .mail a, .contact-links .loc a, .contact-links .hrs p { position: relative; font-weight: 700; font-size: 20px; padding: 0 0 0 45px; line-height: 1.2em;  margin: 0 0 30px; display: block; }
    .contact-links .tel a::before, .contact-links .mail a::before, .contact-links .loc a::before, .contact-links .hrs p::before { content: ''; font-family: 'FontAwesome'; font-size: 20px; position: absolute; top: 0; left: 0; }
    .contact-links .tel a::before { content: '\f095'; }
    .contact-links .mail a::before { content: '\f0e0'; }
    .contact-links .loc a::before { content: '\f3c5'; }
    .contact-links .hrs p::before { content: '\f017'; }
    .contact-map .place-card-large { display: none!important; }




    /*POLICIES*/

/*PRIVACY POLICY*/

.inPrivacyBox {max-width: 850px; margin: 0 auto;}
.inPrivacyBox p {text-align: justify!important;}.example {
    display: grid;
    transition: all .5s;
    user-select: none;
    background: linear-gradient(to bottom, white, black);
}