/*
Theme Name: Sawmill
Author: SIA Webhaus
Description: Theme design for Swamill page
Text Domain: sawmill
*/

/* GLOBAL */
html, body{
    margin: 0;
    font-family: Inter;
    color: #000000;
    overflow-x: hidden;
}

ul, ol{
    margin: 0;
    font-size: 22px;
    line-height: 27px;
}
p{
    font-size: 22px;
    line-height: 27px;
}
.wp-block-quote{
    border-left: 5px solid #FECC08;
    padding-left: 15px;
}
.wp-block-quote p{
    font-size: 32px;
    font-weight: 700;
    line-height: 39px;
}
@media screen and (max-width: 1280px){
    ul, ol{
        font-size: 18px;
        line-height: 24px;
    }
    p{
        font-size: 18px;
        line-height: 24px;
    }
    .wp-block-quote p{
        font-size: 24px;
        line-height: 34px;
    }
}
@media screen and (max-width: 600px){
    ul, ol{
        font-size: 16px;
        line-height: 20px;
    }
    p{
        font-size: 16px;
        line-height: 20px;
    }
}


.page-title h1{
    text-align: center;
    text-transform: uppercase;
    font-size: 32px;
    line-height: 38px;
    margin-bottom: 20px;
}

span.required {
    color: #b32d2e;
    border: none;
}

/* LAYOUT */
.site-main {
    margin-top: 20px;
}

.content-wrap{
    max-width: 1470px;
    margin: 0 auto;
    padding: 0 45px;
}
@media screen and (max-width: 480px){
    .content-wrap{
        padding: 0 25px;
    }
}

.row{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.full-width-bg{
    margin-left: -50vw;
    position: absolute;
    height: 100%;
    width: 200vw;
    background: #F5F5F5;
    z-index: -1;
}
.full-width-bg.bg-grey{
    background: #F5F5F5;
}
.full-width-bg.bg-black{
    background: #000000;
}

/* BUTTON */
.button{
    background: #FECC08;
    padding: 12px 24px;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
    border-radius: 5px;
    text-decoration: none;
    color: #000000;
    display: inline-block;
    box-sizing: border-box;
}
.button-alt{
    padding: 12px 24px;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
    border-radius: 5px;
    text-decoration: none;
    color: #000000;
    display: inline-block;
    background: #FFFFFF;
    border: 1px solid #000000;
    box-sizing: border-box;
}

.button-alt .sm-loader {
    display: none;
    margin-left: 20px;
    margin-bottom: -2px;
    width: 21px;
    aspect-ratio: 1;
    border-radius: 50%;
    background:
            radial-gradient(farthest-side,#000000 94%,#0000) top/5px 5px no-repeat,
            conic-gradient(#0000 30%,#000000);
    -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    animation: l13 1s infinite linear;
}
.button-alt.loading .sm-loader{
    display: inline-block;
}
@keyframes l13{
    100%{transform: rotate(1turn)}
}

/* SEARCH FORM */
.search-form{
    position: relative;
}
.search-form .search-input{
    font-size: 16px;
    line-height: 21px;
    color: #5C5C5C;
    padding: 10px 50px 10px 12px;
    width: 100%;
    box-sizing: border-box;
    background: transparent;
    border: 1px solid #5C5C5C;
    border-radius: 5px;
}
.search-form .icon-search{
    position: absolute;
    top: 7px;
    right: 12px;
    font-size: 28px;
    cursor: pointer;
}

/* SIDEBAR */
.site-main > .content-wrap{
    display: flex;
    gap: 35px;
}
.site-main > .content-wrap > .inner-page{
    flex: 1;
    max-width: 100%;
}
#sidebar{
    width: 200px;
    margin-top: 30px;
}
.sidebar-cta a{
    text-decoration: none;
}
.sidebar-cta .background{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding-top: 1px;
}
.sidebar-cta .overlay{
    margin-top: 295px;
    padding: 18px 14px 8px;
    background: rgba(0, 0, 0, .8);
}
.sidebar-cta .overlay .text{
    color: #ffffff;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 18px;
}
.sidebar-cta .overlay .cta-button .button{
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}
.sidebar-cta .overlay .cta-button .icon-angle-right{
    position: absolute;
    right: 12px;
    top: 17px;
}
@media screen and (max-width: 1024px){
    #sidebar{
        display: none;
    }
}

/* HEADER */
.header-top{
    background: #000000;
    padding: 25px 0 20px;
}
.header-top .row{
    align-items: center;
    justify-content: flex-start;
    row-gap: 20px;
    flex-wrap: wrap;
}
.header-top .site-logo img{
    max-width: none;
}
.header-top .phone-number-wrap a{
    text-decoration: none;
    font-weight: 700;
    font-size: 22px;
    color: #FFFFFF;
    line-height: 48px;
}
.header-top .header-search{
    flex: 1;
}
.header-top .header-search .search-input{
    color: #c6c6c6;
    border: 1px solid #f3f3f3;
}
.header-bottom{
    background: #FECC08;
}
.header-bottom .main-menu ul{
    margin: 0;
    list-style: none;
    display: flex;
    gap: 35px;
    padding: 27px 0 23px 0;
}
.header-bottom .main-menu li a{
    font-size: 22px;
    line-height: 26px;
    color: #000000;
    text-decoration: none;
}
.header-bottom .main-menu li a:hover{
    text-decoration: underline;
}
.header-bottom .main-menu li.current-menu-item a{
    text-decoration: underline;
    font-weight: 700;
}
.header-mobile-bottom{
    display: none;
    padding: 12px 0;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .25)
}
.header-mobile-bottom .row{
    gap: 18px;
    justify-content: flex-start;
}
.header-mobile-bottom .header-menu-toggle{
    flex: 1;
}
.header-mobile-bottom .header-menu-toggle .toggle-menu{
    display: inline-block;
    cursor: pointer;
}
.header-mobile-bottom .header-menu-toggle .icon-hamburger-menu{
    font-size: 46px;
}
.header-mobile-bottom .header-search .icon-search{
    font-size: 30px;
}
.header-mobile-bottom .header-search .icon-search:before{
    color: #8A8A8A;
}
.header-mobile-bottom .header-language-select{
    margin-bottom: 0;
}
.mobile-search-wrap{
    position: relative;
}
.mobile-search-wrap .header-search{
    background: #FECC08;
    padding: 10px 0;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .25);
    position: absolute;
    width: 100%;
    display: none;
    z-index: 9;
}
.mobile-search-wrap .header-search .search-input{
    color: #000000;
    border: 1px solid #000000;
}
.mobile-search-wrap .header-search .icon-search:before{
    color: #8A8A8A;
}
.header-mobile-cta{
    display: none;
    padding: 12px 0;
}
.header-mobile-cta .button {
    width: 100%;
    box-sizing: border-box;
    color: #474747;
}
.custom-language-selector {
     position: relative;
     display: inline-block;
}
.custom-language-selector .dropdown-toggle {
    background: none;
    border: none;
    color: #F3F3F3;
    font-size: 22px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}
.custom-language-selector .dropdown-toggle img {
    width: auto;
    height: 16px;
}
.custom-language-selector .dropdown-toggle .icon-angle-down{
    font-size: 11px;
}
.custom-language-selector .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #ccc;
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
    z-index: 1000;
}
.custom-language-selector .dropdown-menu.open{
    display: block;
}
.custom-language-selector:hover .dropdown-menu {
    display: block;
}
.custom-language-selector .dropdown-menu li {
    padding: 5px;
}
.custom-language-selector .dropdown-menu li a {
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
    color: #333;
    padding: 5px 10px;
}
.custom-language-selector .dropdown-menu li a img {
    width: 20px;
    height: 15px;
}
.custom-language-selector .dropdown-menu li.active a {
    font-weight: bold;
}
.header-mobile-bottom .custom-language-selector .dropdown-toggle {
    color: #434B4F;
}
.header-mobile-bottom .custom-language-selector .dropdown-toggle .wh-icon:before{
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.2826 2.03128L6.28255 7.03128C6.21287 7.1012 6.13008 7.15668 6.03892 7.19453C5.94775 7.23239 5.85001 7.25188 5.7513 7.25188C5.65259 7.25188 5.55485 7.23239 5.46369 7.19453C5.37252 7.15668 5.28973 7.1012 5.22005 7.03128L0.220051 2.03128C0.0791548 1.89039 -2.09952e-09 1.69929 0 1.50003C2.09952e-09 1.30078 0.0791548 1.10968 0.220051 0.968784C0.360947 0.827888 0.552044 0.748733 0.751301 0.748733C0.950558 0.748733 1.14165 0.827888 1.28255 0.968784L5.75193 5.43816L10.2213 0.968159C10.3622 0.827263 10.5533 0.748108 10.7526 0.748108C10.9518 0.748108 11.1429 0.827263 11.2838 0.968159C11.4247 1.10906 11.5039 1.30015 11.5039 1.49941C11.5039 1.69867 11.4247 1.88976 11.2838 2.03066L11.2826 2.03128Z' fill='%23434B4F'/%3E%3C/svg%3E%0A");
}
.sticky-header-wrap{
    position: fixed;
    width: 100%;
    left: 0;
    top: -178px;
    background: #000000;
    z-index: 99;
    padding: 15px 0;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .35);
    transition: top .5s;
}
.sticky-header-wrap.show{
    top: 0;
}
.admin-bar .sticky-header-wrap.show{
    top: 32px;
}
.sticky-header-wrap .row{
    gap: 20px;
}
.sticky-header-wrap .site-logo img{
    width: 114px;
    height: auto;
}
.sticky-header-wrap .column.main-menu{
    flex: 1;
    margin-left: 20px;
}
.sticky-header-wrap .menu{
    list-style: none;
    padding: 0;
    display: flex;
    gap: 20px;
}
.sticky-header-wrap .menu li a{
    font-size: 18px;
    line-height: 22px;
    color: #FFFFFF;
    text-decoration: none;
}
.sticky-header-wrap .menu li a:hover{
    text-decoration: underline;
}
.sticky-header-wrap .menu li.current-menu-item a{
    text-decoration: underline;
    font-weight: 700;
}
.sticky-header-wrap .phone-number-wrap a{
    text-decoration: none;
    font-weight: 700;
    font-size: 18px;
    color: #FFFFFF;
    line-height: 40px;
}
.sticky-header-wrap .header-cta .button{
    padding: 8px 16px;
    font-size: 18px;
}
.sticky-header-wrap .header-menu-toggle{
    display: none;
    flex: 1;
    font-size: 36px;
    margin-left: 20px;
}
.sticky-header-wrap .header-search{
    display: none;
    font-size: 20px;
}
.sticky-header-wrap .sticky-header-toggles .main-menu{
    display: none;
    margin-top: 15px;
}
.sticky-header-wrap .sticky-header-toggles .search-form{
    display: none;
    margin-top: 15px;
}
.sticky-header-wrap .sticky-header-toggles .main-menu .button {
    padding: 8px 16px;
    font-size: 18px;
}
.sticky-header-wrap .sticky-header-toggles .row{
    justify-content: space-between;
    flex-wrap: wrap;
}
@media screen and (max-width: 1280px){
    .header-top .site-logo{
        flex: 1;
    }
    .header-top .header-search{
        order: 5;
        max-width: 460px;
        flex: 1 1 100%;
    }
    .sticky-header-wrap .header-cta{
        display: none;
    }
}
@media screen and (max-width: 1024px){
    .header-top .header-search,
    .header-top .header-cta,
    .header-top .header-language-select{
        display: none;
    }
    .header-mobile-bottom{
        display: block;
    }
    .header-bottom{
        display: none;
        position: absolute;
        width: 100%;
        z-index: 9;
        box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);
    }
    .header-bottom .main-menu ul{
        display: block;
        padding: 10px 0;
    }
    .header-bottom .main-menu ul li{
        padding: 12px;
        border-bottom: 1px solid #000000;
    }
    .header-bottom .main-menu ul li:last-child{
        border-bottom: none;
    }
    .header-mobile-cta{
        display: block;
    }
    .header-top .row{
        gap: 25px;
    }
    .sticky-header-wrap .column.main-menu{
        display: none;
    }
    .sticky-header-wrap .header-menu-toggle{
        display: block;
    }
    .sticky-header-wrap .header-search{
        display: block;
    }
}
@media screen and (max-width: 782px){
    .admin-bar .sticky-header-wrap.show{
        top: 46px;
    }
}
@media screen and (max-width: 768px){
    .sticky-header-wrap .phone-number-wrap a{
        font-size: 20px;
    }
    .sticky-header-wrap .phone-number-wrap .phone-number{
        display: none;
    }
}
@media screen and (max-width: 600px){
    .header-top .site-logo img{
        width: 135px;
        height: auto;
    }
    .admin-bar .sticky-header-wrap.show{
        top: 0;
    }
    .sticky-header-wrap .header-menu-toggle{
        margin-left: 0;
    }
    .sticky-header-wrap .menu {
        display: block;
    }
    .sticky-header-wrap .menu li{
        padding: 12px;
        border-bottom: 1px solid #FFFFFF;
    }
    .sticky-header-wrap .sticky-header-toggles .row{
        display: block;
    }
    .sticky-header-wrap .sticky-header-toggles .main-menu .button{
        margin-top: 20px;
        width: 100%;
    }
}
@media screen and (max-width: 480px){
    .header-top .row{
        justify-content: space-around;
        gap: 12px;
    }
    .header-top .site-logo{
        flex: none;
    }
    .header-top .phone-number-wrap a{
        font-size: 18px;
    }
}

/* FOOTER */
.site-footer{
    background: #FFFFFF;
    margin-top: 60px;
}
.footer-wrap{
    padding-bottom: 31px;
    padding-top: 45px;
}
.footer-wrap > .content-wrap > .row{
    align-items: stretch;
    gap: 25px;
}
.footer-wrap .footer-colum{
    border-right: 1px solid #D3D3D3;
    padding: 0 25px 25px 0;
    flex: 1;
}
.footer-wrap .footer-logo{
    flex: none;
    position: relative;
}
.footer-wrap .footer-logo .full-width-bg{
    display: none;
}
.footer-wrap .footer-logo > .row{
    height: 100%;
    align-items: center;
    gap: 37px;
    max-width: 460px;
}
.footer-wrap .footer-logo-img{
    margin-bottom: 15px;
}
.footer-wrap .footer-logo-img img{
    max-width: none;
}
.footer-wrap .footer-logo-img.image-mobile{
    display: none;
}
.footer-wrap .footer-logo-text{
    font-size: 16px;
    color: #000000;
    line-height: 24px;
}
.footer-wrap .footer-title{
    font-size: 20px;
    color: #000000;
    margin-bottom: 15px;
    font-weight: 700;
}
.footer-wrap .footer-contacts .phone-email{
    margin-bottom: 18px;
}
.footer-wrap .footer-contacts .phone-email .phone{
    margin-bottom: 11px;
}
.footer-wrap .footer-contacts .phone-email a {
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    color: #000000;
    line-height: 19px;
}
.footer-wrap .footer-contacts .phone-email a:hover{
    text-decoration: underline;
}
.footer-wrap .footer-contacts  .phone-email .description{
    display: none;
    text-transform: uppercase;
    color: #C1BEBE;
}
.footer-wrap .footer-contacts .address{
    color: #000000;
}
.footer-wrap .socials-wrap{
    gap: 8px;
    justify-content: flex-start;
}
.footer-wrap .socials-wrap a{
    color: #FFFFFF;
    background: #000000;
    display: block;
    width: 30px;
    height: 30px;
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
}
.footer-wrap .footer-menu{
    border: none;
}
.footer-wrap .footer-menu ul{
    list-style: none;
    padding: 0;
}
.footer-wrap .footer-menu ul a{
    font-size: 16px;
    line-height: 24px;
    color: #000000;
    text-decoration: none;
}
.footer-wrap .footer-menu ul a:hover{
    text-decoration: underline;
}
.footer-wrap .footer-secondary-logo{
    display: none;
}
.site-footer .copyright{
    background: #000000;
    text-align: center;
    padding: 21px;
}
.site-footer .copyright span{
    font-size: 14px;
    line-height: 16px;
    font-weight: 700;
    color: #FFFFFF;
}
#scroll-top{
    position: fixed;
    bottom: -50px;
    right: 36px;
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    font-size: 22px;
    background: #FECC08;
    border-radius: 100%;
    cursor: pointer;
    transition: bottom .5s;
}
#scroll-top.show{
    bottom: 20px;
}

.site-footer .partners-slider-wrap{
    background: #F5F5F5;
    padding: 10px 0;
}
#partner-slider .splide__slide{
    text-align: center;
    padding: 20px;
}
#partner-slider .splide__slide a{
    display: block;
}
#partner-slider .splide__slide img{
    max-height: 60px;
    width: auto;
    height: auto;
    opacity: .5;
    filter: grayscale(100%);
    transition: filter .3s ease, opacity .3s ease;
}
#partner-slider .splide__slide:hover img{
    filter: grayscale(0%);
    opacity: 1;
}
#partner-slider .splide__arrow{
    width: auto;
    height: auto;
    background: transparent;
    border: none;
    opacity: 0;
    transform: translate(-30px, -50%);
    font-size: 20px;
    transition: transform .25s ease, opacity .25s ease;
}
#partner-slider .splide__arrow.splide__arrow--next{
    transform: translate(30px, -50%);
}
.site-footer .partners-slider-wrap:hover #partner-slider .splide__arrow{
    opacity: 0.5;
    transform: translate(0, -50%);
}
@media screen and (max-width: 1280px){
    .footer-wrap > .content-wrap > .row{
        flex-wrap: wrap;
    }
    .footer-wrap .footer-logo{
        flex: 1 1 100%;
        border-right: none;
    }
}
@media screen and (max-width: 768px){
    .site-footer{
        background: none;
    }
    .footer-wrap{
        padding-top: 0;
    }
    .footer-wrap > .content-wrap > .row{
        display: block;
        text-align: center;
    }
    .footer-wrap .footer-colum{
        padding: 30px 0;
        border-right: none;
    }
    .footer-wrap .footer-logo{
        padding: 0;
    }
    .footer-wrap .footer-logo .full-width-bg{
        display: block;
    }
    .footer-wrap .footer-logo > .row{
        max-width: none;
        display: block;
        padding: 30px 0;
    }
    .footer-wrap .footer-logo-img{
        display: none;
    }
    .footer-wrap .footer-logo-img.image-mobile{
        display: block;
    }
    .footer-wrap .footer-logo-text{
        color: #FFFFFF;
    }
    .footer-wrap .footer-contacts .phone-email .description{
        display: inline;
    }
    .footer-wrap .footer-contacts .phone-email .phone{
        margin-bottom: 0;
    }
    .footer-wrap .footer-contacts .phone-email a{
        border: 1px solid #000000;
        border-radius: 5px;
        display: block;
        padding: 14px;
        margin-bottom: 8px;
    }
    .footer-wrap .footer-contacts .phone-email a:hover{
        text-decoration: none;
    }
    .footer-wrap .socials-wrap{
        justify-content: center;
    }
    .footer-wrap .footer-menu ul li{
        border-bottom: 1px solid #D3D3D3;
        padding: 14px 30px;
        position: relative;
    }
    .footer-wrap .footer-menu ul li:first-child{
        border-top: 1px solid #D3D3D3;
    }
    .footer-wrap .footer-menu ul a{
        font-size: 18px;
    }
    .footer-wrap .footer-menu ul li:before{
        content: "";
        display: block;
        position: absolute;
        top: 19px;
        right: 25px;
        background-image: url("data:image/svg+xml,%3Csvg width='9' height='16' viewBox='0 0 9 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.180771 0.180771C0.237928 0.123469 0.305828 0.0780066 0.380583 0.0469869C0.455337 0.0159672 0.535477 0 0.616412 0C0.697347 0 0.777487 0.0159672 0.852241 0.0469869C0.926996 0.0780066 0.994896 0.123469 1.05205 0.180771L8.4358 7.56452C8.4931 7.62168 8.53857 7.68958 8.56959 7.76433C8.60061 7.83909 8.61657 7.91923 8.61657 8.00016C8.61657 8.0811 8.60061 8.16124 8.56959 8.23599C8.53857 8.31074 8.4931 8.37865 8.4358 8.4358L1.05205 15.8196C0.936514 15.9351 0.779809 16 0.616412 16C0.453015 16 0.29631 15.9351 0.180771 15.8196C0.0652316 15.704 0.000322157 15.5473 0.000322157 15.3839C0.000322157 15.2205 0.0652316 15.0638 0.180771 14.9483L7.13011 8.00016L0.180771 1.05205C0.123469 0.994897 0.078006 0.926996 0.0469863 0.852242C0.0159666 0.777487 0 0.697347 0 0.616412C0 0.535478 0.0159666 0.455338 0.0469863 0.380583C0.078006 0.305829 0.123469 0.237928 0.180771 0.180771Z' fill='%238F8F8F'/%3E%3C/svg%3E");
        width: 9px;
        height: 16px;
    }
    .footer-wrap .footer-secondary-logo{
        display: block;
    }
}


/* COOKIE NOTICE */
.whc_wrapper.whc_bottomfull{
    padding: 30px;
}
.whc_wrapper.whc_bottomfull:before {
    content: "";
    display: block;
    height: 4px;
    width: 87%;
    position: absolute;
    background: #FECC08;
    top: 0;
    right: 0;
}
.whc_wrapper.whc_bottomfull .whc_inner{
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.whc_wrapper.whc_bottomfull p{
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
}
.whc_wrapper.whc_bottomfull .whc_btn{
    background: #FECC08;
    padding: 12px 24px;
    font-weight: 700;
    font-size: 14px;
    line-height: 24px;
    text-align: center;
    border-radius: 5px;
    text-decoration: none;
    color: #000000;
    display: inline-block;
    border: none;
    box-shadow: none;
    text-shadow: none;
    font-family: 'Inter', sans-serif;
    width: auto;
    white-space: nowrap;
}
@media screen and (max-width: 768px){
    .whc_wrapper.whc_bottomfull .whc_inner{
        flex-wrap: wrap;
        gap: 15px;
    }
}

/* 404 PAGE */
.page-not-found{
    text-align: center;
    padding: 50px 0;
}
.page-not-found .search-form{
    max-width: 575px;
    margin: 45px auto 0;
}

/* SINGLE PAGE */
.banner-wrap{
    position: relative;
}
.banner-wrap .banner-img img{
    width: 100%;
    height: auto;
    max-height: 500px;
    object-fit: cover;
}
@media screen and (max-width: 768px){
    .banner-wrap{
        display: none;
    }
}

/* SINGLE POST */
.post-info{
    margin-bottom: 16px;
    font-size: 14px;
    color: #555555;
}
.share-wrap{
    display: flex;
    gap: 8px;
    justify-content: flex-start;
    margin-top: 10px;
}
.share-wrap a{
    color: #FFFFFF;
    background: #000000;
    display: block;
    width: 30px;
    height: 30px;
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
}

/* HOME PAGE */
.page-template-template-home-page .inner-page{
    margin-top: 30px;
}

/* - product cat menu */
.product-categories-menu{
    margin-right: 49px;
}
.product-categories-menu .row{
    flex-wrap: wrap;
    align-items: flex-start;
    column-gap: 75px;
    row-gap: 42px;
}
.product-categories-menu .product-category{
    flex: 1 1 26%;
    padding-right: 85px;
    position: relative;
    box-sizing: border-box;
}
.product-categories-menu .product-category h2{
    margin: 0;
    font-size: 22px;
    padding: 16px 11px 8px;
    border-bottom: 2px solid #9C9C9C;
    text-transform: uppercase;
}
.product-categories-menu .product-category h2 a{
    text-decoration: none;
    color: #000000;
}
.product-categories-menu .product-category-image{
    position: absolute;
    top: 0;
    right: 0;
}
.product-categories-menu .product-category-image a{
    text-decoration: none;
}
.product-categories-menu .product-category-image span{
    font-size: 64px;
}
.product-categories-menu .child-categories{
    list-style: none;
    padding: 0;
}
.product-categories-menu .child-categories a{
    color: #000000;
    font-size: 18px;
    font-weight: 300;
    line-height: 22px;
    padding: 7px 0 7px 11px;
    display: inline-block;
    text-decoration: none;
}
.product-categories-menu .child-categories a:hover{
    text-decoration: underline;
}
.product-categories-menu .child-categories .show-extra a{
    font-weight: 500;
    text-decoration: underline;
}
@media screen and (max-width: 1440px){
    .product-categories-menu .product-category{
        flex: 1 1 34%;
    }
}
@media screen and (max-width: 1280px){
    .product-categories-menu{
        margin-right:  10px;
    }
    .product-categories-menu .row{
        column-gap: 42px;
    }
}
@media screen and (max-width: 768px){
    .product-categories-menu .product-category {
        flex: 1 1 100%;
        padding-right: 0;
    }
    .product-categories-menu .product-category h2{
        padding-right: 53px;
    }
    .product-categories-menu .product-category-image span{
        font-size: 42px;
    }
    .product-categories-menu .row{
        row-gap: 17px;
    }
    .product-categories-menu .child-categories .category{
        border-bottom: 1px solid #D0D0D0;
    }
    .product-categories-menu .child-categories a{
        padding: 14px 0 14px 11px;
    }
}

/* - subscription form */
.newsletter-subscription-wrap{
    position: relative;
    margin-top: 88px;
}
.subscription-form-wrap{
    padding: 37px 0 23px;
}
.subscription-form-wrap .form-title{
    font-size: 32px;
    font-weight: 600;
    line-height: 40px;
    margin-bottom: 12px;
    text-align: center;
}
.subscription-form-wrap .form-subtitle{
    font-size: 16px;
    line-height: 24px;
    text-align: center;
    max-width: 555px;
    margin: 0 auto 37px;
}
.subscription-form-wrap .newsletter-form > .row{
    gap: 77px;
}
.subscription-form-wrap .newsletter-form > .row > .column {
    flex: 1;
    position: relative;
}
.subscription-form-wrap .newsletter-form input{
    width: 100%;
    font-size: 16px;
    line-height: 24px;
    padding: 28px;
    box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.12);
    border: none;
    box-sizing: border-box;
}
.subscription-form-wrap .newsletter-form .button{
    position: absolute;
    top: 50%;
    right: 28px;
    transform: translateY(-50%);
}
.subscription-form-wrap .button .icon-arrow-right2{
    margin: 0 0 0 12px;
    font-size: 18px;
}
.subscription-form-wrap .form-disclaimer{
    text-align: right;
    margin-top: 13px;
    font-size: 16px;
    font-weight: 500;
    color: #7A7A7A;
}
.subscription-form-wrap .form-message{
    text-align: right;
}
.subscription-form-wrap .form-message .message{
    display: inline-block;
    margin-top: 17px;
}
.subscription-form-wrap .form-message .message.success{
    color: green;
    font-weight: bold;
}
.subscription-form-wrap .form-message .message.error{
    color: red;
}
.subscription-form-wrap .form-mobile-submit{
    display: none;
    text-align: right;
    margin-top: 26px;
}
@media screen and (max-width: 1280px){
    .subscription-form-wrap .newsletter-form .button{
        display: none;
    }
    .subscription-form-wrap .form-mobile-submit{
        display: block;
    }
}
@media screen and (max-width: 768px){
    .subscription-form-wrap .newsletter-form > .row {
        gap: 12px;
    }
    .subscription-form-wrap .newsletter-form input{
        padding: 19px;
    }
}
@media screen and (max-width: 600px){
    .subscription-form-wrap .newsletter-form > .row {
        flex-wrap: wrap;
    }
    .subscription-form-wrap .newsletter-form > .row > .column{
        flex: 1 1 100%;
    }
    .subscription-form-wrap .form-disclaimer{
        text-align: center;
    }
    .subscription-form-wrap .form-mobile-submit{
        text-align: center;
    }
    .subscription-form-wrap .form-message{
        text-align: center;
    }
}

/* - page cta */
.cta-section{
    padding: 43px 0;
}
.cta-section a{
    text-decoration: none;
}
.cta-section .background{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding-top: 1px;
}
.cta-section .overlay{
    margin-top: 172px;
    padding: 19px 15px 19px 32px;
    background: rgba(0, 0, 0, .8);
}
.cta-section .overlay .text{
    color: #ffffff;
    font-weight: 700;
    font-size: 36px;
}
.cta-section .overlay .cta-button .button{
    font-size: 14px;
    padding-right: 36px;
    position: relative;
    white-space: nowrap;
}
.cta-section .overlay .cta-button .icon-angle-right{
    position: absolute;
    right: 18px;
    top: 17px;
}
@media screen and (max-width: 768px) {
    .cta-section .overlay .text{
        font-size: 24px;
    }
}
@media screen and (max-width: 600px){
    .cta-section .row{
        flex-wrap: wrap;
        gap: 15px;
    }
}

/* GALLERY */
body .splide__track--nav>.splide__list>.splide__slide.is-active{
    border: 1px solid #FECC08;
}
body .splide__arrow{
    height: 30px;
    width: 30px;
    background: #FECC08;
    opacity: 1;
    border: 1px solid #000000;
}
body .splide__arrow--prev {
    left: 0;
}
body .splide__arrow--next {
    right: 0;
}

/* FORM STYLING */
.form-row{
    margin-bottom: 15px;
}
.form-row label{
    font-size: 14px;
    line-height: 18px;
    color: #2E2E2E;
}
.form-row label a{
    color: #2e2e2e;
    font-weight: bold;
}
.form-row input,
.form-row textarea,
.form-row select{
    width: 100%;
    border-radius: 5px;
    border: 1px solid #5C5C5C;
    font-size: 14px;
    line-height: 18px;
    padding: 6px 12px;
    box-sizing: border-box;
    color: #5C5C5C;
    margin-top: 5px;
    font-weight: 600;
}
.form-row input.error,
.form-row textarea.error,
.form-row select.error{
    background: #FDDDDE;
    border-color: #E21414;
}
.field-error{
    color: #E21414;
    font-size: 14px;
    line-height: 17px;
}
.field-error .icon-error{
    margin-right: 5px;
}

/* CUSTOM CHECKMARK */
.checkmark-container{
    display: inline-block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.checkmark-container input{
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.checkmark-container .checkmark{
    top: 2px;
    left: 0;
    height: 20px;
    width: 20px;
    border: 1px solid #5C5C5C;
    border-radius: 5px;
    box-sizing: border-box;
    display: inline-block;
    margin-bottom: -2px;
    margin-right: 5px;
    position: relative;
}
.checkmark-container input:checked ~ .checkmark {
    background-color: #FECC08;
}
.checkmark-container input.error ~ .checkmark {
    background: #FDDDDE;
    border-color: #E21414;
}
.checkmark-container .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.checkmark-container input:checked ~ .checkmark:after {
    display: block;
}
.checkmark-container .checkmark:after {
    left: 6px;
    top: 2px;
    width: 5px;
    height: 8px;
    border: solid black;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* PRODUCT REQUEST FORM */
.request-form-wrap{
    padding: 29px 0;
}
.request-form-wrap form > .row{
    align-items: flex-start;
}
.request-form-wrap .column-1{
    width: 30%;
}
.request-form-wrap .column-2{
    flex: 1;
}
.request-form-wrap #field-terms{
    text-align: right;
    margin-bottom: 22px;
}
.request-form-wrap #field-terms input{
    width: auto;
}
.request-form-wrap #field-terms label{
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: #000000;
}
.request-form-wrap #field-terms .field-error{
    display: block;
}
.request-form-wrap #field-submit{
    text-align: right;
}
.request-form-wrap #field-message{
    margin-bottom: 5px;
}
.request-form-wrap .success-wrap{
    position: absolute;
    background: rgba(0, 0, 0, .7);
    color: #ffffff;
    font-size: 36px;
    line-height: 44px;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-align: center;
    display: none;
    z-index: 9;
    padding: 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 1024px){
    .request-form-wrap .success-wrap {
        font-size: 26px;
        line-height: 35px;
    }
}
@media screen and (max-width: 768px){
    .request-form-wrap form > .row {
        display: block;
    }
    .request-form-wrap .column-1 {
        width: 100%;
    }
    .request-form-wrap #field-terms {
        text-align: center;
    }
    .request-form-wrap #field-submit {
        text-align: center;
    }
    .request-form-wrap #field-submit .button{
        width: 100%;
        box-sizing: border-box;
    }
}

/* PRODUCT DOCUMENTATION */
.custom-product-files{
    padding: 29px 0 7px;
}
.custom-product-files .file-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 22px;
    gap: 20px;
}
.custom-product-files .file-item .file-download {
    display: flex;
    gap: 32px;
    align-items: center;
}
.custom-product-files .file-item .file-download span {
    font-size: 43px;
}
.custom-product-files .file-item .file-download a{
    text-transform: uppercase;
    min-width: 253px;
}
@media screen and (max-width: 1280px){
    .custom-product-files .file-item .file-download a{
        min-width: 170px;
    }
}
@media screen and (max-width: 600px){
    .custom-product-files .file-item{
        display: block;
    }
    .custom-product-files .file-item .file-name{
        margin-bottom: 5px;
    }
    .custom-product-files .file-item .file-download{
        display: block;
        position: relative;
    }
    .custom-product-files .file-item .file-download span{
        position: absolute;
        right: 0;
        bottom: 0;
    }
}

/* PARTNERS SHORTCODE */
.partners-wrapper{
    display: flex;
    flex-wrap: wrap;
    gap: 42px 65px;
    justify-content: flex-start;
}
.partners-wrapper .partner img{
    height: 100px;
    width: auto;
    object-fit: contain;
}
@media screen and (max-width: 768px){
    .partners-wrapper{
        justify-content: center;
        gap: 42px;
    }
    .partners-wrapper .partner img{
        height: 69px;
    }
}

/* LOAD MORE SECTION */
.load-more-wrap{
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 60px;
}

/* CONTACTS PAGE */
.banner-wrap .banner-text{
    position: absolute;
    right: 17px;
    text-align: right;
    top: 50%;
    transform: translateY(-50%);
    color: #ffffff;
    font-size: 32px;
    line-height: 38px;
}
.banner-text-title{
    font-size: 38px;
    line-height: 46px;
    font-weight: 700;
}
.contacts-page-wrap{
    margin-top: 17px;
}
.contacts-page-wrap .info-wrap{
    display: flex;
    gap: 25px;
    align-items: stretch;
}
.contacts-page-wrap .info-wrap .info-block {
    flex: 1 1 33%;
    border-bottom: 2px solid #434B4F;
    padding-bottom: 11px;
}
.contacts-page-wrap .info-wrap .info-block-inner {
    background: linear-gradient(180deg, #FFFFFF 28.5%, #F2F0F0 100%);
    height: 100%;
    padding: 15px 31px 37px;
    box-sizing: border-box;
}
.contacts-page-wrap .info-wrap .info-row {
    font-size: 22px;
    line-height: 26px;
}
.contacts-page-wrap .address-info-block a{
    text-decoration: none;
    color: #000000;
}
.contacts-page-wrap .address-info-block a:hover{
    text-decoration: underline;
}
.contacts-page-wrap .phone-email-info-block .info-row:first-child{
    margin-bottom: 42px;
}
.contacts-page-wrap .phone-email-info-block a{
    color: #000000;
    text-decoration: none;
    display: flex;
    align-items: center;
}
.contacts-page-wrap .phone-email-info-block a:hover .hover-underline{
    text-decoration: underline;
}
.contacts-page-wrap .phone-email-info-block .icon-phone:before{
    color: #000000;
}
.contacts-page-wrap .info-wrap .info-block-wrap {
    display: flex;
}
.contacts-page-wrap .info-wrap .info-block-wrap .info-title{
    font-size: 22px;
    line-height: 27px;
    color: #858585;
}
.contacts-page-wrap .info-wrap [class^="icon-"] {
    margin-right: 18px;
    font-size: 35px;
    text-decoration: none;
}
.contacts-page-wrap .form-wrap{
    display: flex;
    margin-top: 10px;
    gap: 25px;
    align-items: flex-start;
}
.contacts-page-wrap .form-wrap .company-details-wrap{
    background: linear-gradient(180deg, #FFFFFF 28.5%, #F2F0F0 100%);
    padding: 15px 15px 36px;
    flex: 1 1 33%;
    box-sizing: border-box;
    font-size: 22px;
    line-height: 27px;
}
.contacts-page-wrap .form-wrap .contact-form-wrap{
    flex: 1 1 66%;
    margin-top: 21px;
    position: relative;
}
.contacts-page-wrap .form-wrap .contact-form-wrap .success-wrap{
    position: absolute;
    background: rgba(0, 0, 0, .7);
    color: #ffffff;
    font-size: 36px;
    line-height: 44px;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    text-align: center;
    display: none;
    z-index: 9;
    padding: 20px;
    box-sizing: border-box;
}
.contacts-page-wrap .form-wrap .contact-form-wrap .form-mobile-title{
    display: none;
    text-align: center;
    font-weight: 700;
    font-size: 24px;
    text-transform: uppercase;
    margin-bottom: 14px;
}
.contacts-page-wrap .form-wrap .form-details-wrap > .row{
    align-items: flex-start;
}
.contacts-page-wrap .form-wrap .form-details-wrap > .row > .column{
    flex: 1;
}
.contacts-page-wrap .form-wrap #field-terms{
    text-align: right;
    margin-bottom: 22px;
}
.contacts-page-wrap .form-wrap #field-terms input{
    width: auto;
}
.contacts-page-wrap .form-wrap #field-terms label{
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: #000000;
}
.contacts-page-wrap .form-wrap #field-terms .field-error{
    display: inline-block;
}

.contacts-page-wrap .form-wrap #field-submit{
    text-align: right;
    text-transform: uppercase;
}
.contacts-page-wrap .form-wrap #field-message{
    margin-bottom: 5px;
}
.contacts-page-wrap .map-wrap{
    margin-top: 37px;
    margin-bottom: 41px;
}
.contacts-page-wrap .map-wrap iframe{
    width: 100%;
}
@media screen and (max-width: 1440px){
    .contacts-page-wrap .info-wrap .info-row {
        font-size: 18px;
        line-height: 22px;
    }
    .contacts-page-wrap .info-wrap .info-block-wrap .info-title{
        font-size: 18px;
        line-height: 22px;
    }
    .contacts-page-wrap .form-wrap .company-details-wrap{
        font-size: 18px;
        line-height: 22px;
    }
}
@media screen and (max-width: 1280px){
    .contacts-page-wrap .info-wrap {
        gap: 10px;
    }
    .contacts-page-wrap .info-wrap .info-block-inner{
        padding: 15px 15px 37px;
    }
    .contacts-page-wrap .info-wrap [class^="icon-"] {
        margin-right: 5px;
        font-size: 28px;
    }
    .contacts-page-wrap .phone-email-info-block .wh-icon {
        margin-bottom: -5px;
    }
}
@media screen and (max-width: 768px){
    .contacts-page-wrap .info-wrap{
        display: block;
    }
    .contacts-page-wrap .info-wrap .info-block{
        border: none;
    }
    .contacts-page-wrap .info-wrap .info-block-inner{
        background: none;
    }
    .contacts-page-wrap .phone-email-info-block .info-row:first-child{
        margin-bottom: 8px;
    }
    .contacts-page-wrap .phone-email-info-block .info-row a {
        border: 1px solid #000000;
        border-radius: 5px;
        text-align: center;
        padding: 15px;
        position: relative;
        color: #434B4F;
        font-weight: 700;
        justify-content: center;
        position: relative;
    }
    .contacts-page-wrap .phone-email-info-block .wh-icon {
        margin-bottom: 0px;
        position: absolute;
        left: 5%;
        top: 50%;
        transform: translateY(-50%);
    }
    .contacts-page-wrap .info-wrap .info-block-inner{
        padding: 0;
    }
    .contacts-page-wrap .info-wrap{
        box-sizing: border-box;
        width: 100vw;
        padding: 0 45px;
        margin-left: -45px;
        background: linear-gradient(180deg, #FFFFFF 28.5%, #F2F0F0 100%);
    }
    .contacts-page-wrap .info-wrap .info-block{
        padding-bottom: 41px;
    }
    .contacts-page-wrap .info-wrap .wh-icon {
        margin-right: 15px;
    }
    .contacts-page-wrap .form-wrap{
        display: flex;
        flex-direction: column;
        order: 3;
    }
    .contacts-page-wrap .form-wrap .company-details-wrap{
        background: none;
        order: 2;
        margin-top: 28px;
    }
    .contacts-page-wrap{
        display: flex;
        flex-direction: column;
    }
    .contacts-page-wrap .map-wrap {
        margin-top: 27px;
        margin-bottom: 20px;
    }
    .contacts-page-wrap .form-wrap .contact-form-wrap .form-mobile-title {
        display: block;
    }
    .contacts-page-wrap .form-wrap #field-submit .button{
        width: 100%;
        box-sizing: border-box;
    }
    .contacts-page-wrap .form-wrap .contact-form-wrap{
        box-sizing: border-box;
        width: 100vw;
        padding: 0 45px 47px;
        margin-left: -45px;
        background: linear-gradient(180deg, #FFFFFF 28.5%, #F2F0F0 100%);
    }
}
@media screen and (max-width: 480px){
    .contacts-page-wrap .info-wrap{
        padding: 0 25px;
        margin-left: -25px;
    }
    .contacts-page-wrap .form-wrap .contact-form-wrap{
        padding: 0 25px 47px;
        margin-left: -25px;
    }
    .contacts-page-wrap .form-wrap .contact-form-wrap .row{
        display: block;
    }
}

/* SERVICES PAGE */
.services-wrapper{
    display: flex;
    flex-wrap: wrap;
    gap: 54px 38px;
    align-items: flex-start;
    justify-content: flex-start;
}
.services-wrapper .service{
    flex: 1 1 35%;
    max-width: calc(50% - 19px);
}
.services-wrapper .service a{
    text-decoration: none;
    color: inherit;
}
.services-wrapper .image-wrap{
    position: relative;
}
.services-wrapper .image-wrap img{
    width: 100%;
    height: 259px;
    object-fit: cover;
    display: block;
}
.services-wrapper .image-wrap .overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6);
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    padding: 20px;
}
.services-wrapper .image-wrap .title{
    font-size: 36px;
    font-weight: 700;
    line-height: 44px;
    text-align: center;
    color: #FECC08;
}
.services-wrapper .description{
    margin-top: 23px;
}
@media screen and (max-width: 1280px){
    .services-wrapper .image-wrap .title{
        font-size: 28px;
        line-height: 36px;
    }
}
@media screen and (max-width: 768px){
    .services-wrapper .service{
        flex: 1 1 100%;
        max-width: none;
    }
    .services-wrapper .description{
        margin-top: 18px;
    }
}

/* BLOG ARCHIVE PAGE */
.post-layout {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 27px 70px;
}
.post-layout article a{
    text-decoration: none;
    color: inherit;
}
.post-layout .post-content h2{
    margin: 6px 0 28px;
    font-weight: 700;
    font-size: 32px;
    line-height: 39px;
}
.post-layout .post-content a:hover{
    text-decoration: underline;
}
.post-layout .post-content p{
    margin: 0 0 10px;
    text-align: justify;
    font-size: 18px;
}
.post-layout .post-content .read-more{
    font-size: 18px;
    font-weight: 700;
    line-height: 27px;
    text-decoration: underline;
}
.post-large{
    grid-column: span 3;
    padding-bottom: 27px;
    border-bottom: 2px solid #FECC08;
}
.post-large a{
    display: flex;
    flex-direction: row-reverse;
    gap: 33px;
}
.post-large:last-child{
    border-top: 2px solid #FECC08;
    padding-top: 27px;
}
.post-large .post-thumbnail img {
    width: 100%;
    height: auto;
}
.post-large .post-thumbnail {
    flex: 1 1 50%;
}
.post-large .post-content {
    flex: 1 1 50%;
}
.post-large .post-content .post-meta{
    font-weight: 300;
    font-size: 14px;
    line-height: 16px;
    margin: 0;
}
.post-small .post-thumbnail img {
    width: 100%;
    height: auto;
}
.post-small .post-content {
    margin-top: 10px;
}
.post-small .post-content h2{
    font-size: 22px;
    line-height: 26px;
    text-align: justify;
    margin-top: 24px;
}
.post-small .post-meta{
    display: none;
}
.pagination-wrap{
    text-align: center;
    margin-top: 16px;
}
.pagination-wrap .page-numbers{
    width: 32px;
    height: 32px;
    display: inline-block;
    text-align: center;
    line-height: 32px;
    border-radius: 5px;
    margin: 0 4px;
    font-size: 14px;
    color: #000000;
    text-decoration: none;
}
.pagination-wrap .page-numbers.current{
    border: 1px solid #515151;
    font-weight: 700;
    color: #515151;
}
.pagination-wrap .page-numbers.next,
.pagination-wrap .page-numbers.prev{
    color: #515151;
    width: auto;
}
@media screen and (max-width: 1280px){
    .post-layout {
        gap: 27px 30px;
    }
}
@media screen and (max-width: 768px){
    .post-layout{
        display: block;
    }
    .post-layout .post a{
        display: block;
    }
    .post-layout .post{
        border-bottom: 1px solid #C1BEBE;
        margin-bottom: 27px;
        padding-bottom: 27px;
        border-top: none;
        padding-top: 0;
    }
    .post-large .post-meta{
        display: none;
    }
    .post-layout .post-content h2,
    .post-small .post-content h2{
        font-size: 24px;
        line-height: 29px;
        text-align: left;
    }
    .post-layout .post-content .read-more{
        font-size: 18px;
        line-height: 22px;
    }
}

/* SERVICE PAGE */
.service-gallery{
    display: flex;
    gap: 10px 30px;
    flex-wrap: wrap;
}
.service-gallery a {
    flex: 1 1 21%;
}
.service-gallery a img {
    border: 2px solid #cfcfcf;
}
@media screen and (max-width: 600px) {
    .service-gallery a{
        flex: 1 1 34%;
    }
}