/*
Theme Name: Peerless Custom Theme
Version: 1.0
Description: Based on Blankslate 2024.2 theme
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

@font-face {

    font-family: "AxiformaSemiBold";
    src: url("assets/fonts/axiforma-semibold.otf") format("opentype");
    font-display: swap;

}

@font-face {

    font-family: "AxiformaBold";
    src: url("assets/fonts/axiforma-bold.otf") format("opentype");
    font-display: swap;

}

@font-face {
    
    font-family: "AxiformaRegular";
    src: url("assets/fonts/axiforma-regular.otf") format("opentype");
    font-display: swap;

}

@font-face {

    font-family: "AxiformaMedium";
    src: url("assets/fonts/axiforma-medium.otf") format("opentype");
    font-display: swap;

}

@font-face {

    font-family: "DMSansMedium";
    src: url("assets/fonts/dm-sans-500-medium.woff") format("woff");
    font-display: swap;

}

body {

    min-height: 50vh;
    background-color: #131313;

}

header {
    
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    align-items: center;
    padding: 20px 30px;

}

header #mobile_nav_toggle {

    display: none;

}

header .menu li {

    display: inline;
    
}

header .menu li a {

    font-family: "AxiformaSemiBold", sans-serif;
    font-size: 14px;
    line-height: 16px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    padding: 10px 0;
    display: block;
    cursor: pointer;

}

header .menu {

    flex: 1;
    display: flex;
    justify-content: flex-end;
    gap: 30px;
    padding-right: 52px;

}

header .menu .sub-menu {

    display: none;
    flex-direction: column;
    position: absolute;
    background-color: #fff;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0.15);
    padding: 10px 0;
    z-index: 1000;

}

header .menu .sub-menu li a {

    font-family: "AxiformaBold", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
    color: #070505;
    padding: 10px 16px;
    display: block;
    text-align: left;
    cursor: pointer;

}

header .menu li:hover .sub-menu {

    display: flex;

}

header .menu li.menu-item-has-children:hover {

    background-image: url("assets/img/menu_up.webp");

}

header .menu li.menu-item-has-children {

    padding-right: 24px;
    background-image: url("assets/img/menu_down.webp");
    background-repeat: no-repeat;
    background-position: top 50% right 6px;

}

header #get_quote_button {

    cursor: pointer;

}

#header-contact {

    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-left: 80px;
    font-family: "AxiformaSemiBold", sans-serif;
    font-size: 14px;
    line-height: 16px;
    font-weight: 600;
    color: #8A8F9A;
    letter-spacing: -0.02em;
    text-align: left;

}

#header-contact span {

    font-family: "AxiformaBold", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 16px;
    text-align: left;
    color: #FFF;

}

header button {

    font-family: "AxiformaSemiBold", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 16px;
    text-align: center;
    color: #fff;
    padding: 14px 30px;
    background-color: #ED1C24;
    border-radius: 100px;
    text-transform: uppercase;
    border: 0px;

}

#footer_divider {

    width: 100%;
    height: 1px;
    border-top: 1px solid #131313;

}

#footer #footer_content_wrapper {

    display: flex;
    flex-direction: column;
    padding: 80px 120px 0 120px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;

}

#footer.has_content_form {

    background-color: #202020;

}

#container {

    /*min-height: 50vh;*/

}

#container #content {

    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;

}

#footer #footer_copyright {

    border-top: 1px solid #131313;
    font-family: "AxiformaRegular", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22.18px;
    text-align: left;
    color: #8A8F9A;
    padding: 32px 0;

}

#footer #footer_content {

    display: flex;
    gap: 40px;
    padding-bottom: 48px;

}

#footer #footer_content .footer_content_column {

    display: flex;
    flex-direction: column;

}

#footer #footer_content #column_1 {

    gap: 32px;
    font-family: "AxiformaRegular", sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 26px;
    text-align: left;
    color: #8A8F9A;
    padding-right: 72px;    

}

#footer #footer_content #column_2 {

    gap: 16px;

}

#footer #footer_content #column_3 {

    gap: 16px;

}

#footer #footer_content #column_4 {

    gap: 16px;

}

#footer .footer_column_headline {

    color: #FFF;
    text-transform: uppercase;
    font-family: "AxiformaBold", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 16.8px;
    letter-spacing: -0.01em;
    text-align: left;

} 

#footer .footer_column_list {

    display: flex;
    flex-direction: column;
    gap: 24px;

}

#footer .footer_column_list li a {

    font-family: "AxiformaMedium", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 19.6px;
    text-align: left;
    color: #8A8F9A;
    text-decoration: none;

}

#footer #footer_content #column_5 {

    gap: 16px;
    flex: 1;
    font-family: "AxiformaMedium", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 19.6px;
    text-align: left;
    color: #8A8F9A;

}

#footer #footer_content #column_5 input[type=text] {

    background: transparent;
    border-radius: 100px;
    border: 1px solid #8A8F9A;
    padding: 13px 16px;
    font-family: "AxiformaRegular", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22.18px;
    text-align: left;
    color: #8A8F9A;
    width: 100%;

}

#footer #footer_content #column_5 form {

    position: relative;

}

#footer #footer_content #column_5 input[type=submit] {

    position: absolute;
    right: 8px;
    top: 9px;
    width: 32px;
    height: 32px;
    border-radius: 100px;
    border: 0;
    background-color: #ED1C24;
    background-image: url(assets/img/button_arrow.webp);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;

}

button.arrow_button {

    background: transparent;
    border: 2px solid #fff;
    border-radius: 100px;
    padding: 16px 48px 16px 24px;
    color: #fff;
    font-family: "AxiformaSemiBold", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 16px;
    text-align: center;
    cursor: pointer;   
    background-image: url(assets/img/button_arrow.webp);
    background-repeat: no-repeat;
    background-position: center right 12px; 

}

#mobile_nav {

    display: none;
    width: 100%;
    border-top: 1px solid #202020;
    backdrop-filter: blur(10px) brightness(0.5);

}

#mobile_nav .menu li {

    border-bottom: 1px solid #202020;

}

#mobile_nav .menu li a {

    font-family: "AxiformaSemiBold", sans-serif;
    font-size: 14px;
    line-height: 16px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: start;
    padding: 30px;

}

#mobile_nav .menu li .sub-menu li {

    padding-left: 40px;
    border: none;

}

@media (max-width: 1170px) {

    header {

        padding: 20px 23px;

    }

    header #top_nav_desktop {

        display: none;

    }   

    header #top_nav_desktop {

        display: none;

    }

    header #header-contact {

        display: none;

    }

    header #mobile_nav_toggle {

        display: block;
        margin-right: 10px;

    }

    header #top_logo {

        flex: 1;

    }  

    header #top_logo img {

        width: 133px;
        align-self: center;

    }

    #mobile_nav {

        display: none;
        position: absolute;
        width: 100%;
        min-height: calc(100vh - 84px);    
        margin-top: 84px;    

    }

    #footer #footer_content {

        flex-wrap: wrap;
        padding-bottom: 32px;

    }

    #footer #footer_content_wrapper { 

        padding: 50px 20px;
        padding-bottom: 0;
        
    }

    #footer #footer_copyright {

        padding: 20px 0;
        
    }

    #footer #footer_content #column_5 {

        flex-basis: 100%;

    }

    #footer_logo {
        
        width: 133px;

    }

    #footer #footer_content #column_1 {

        font-size: 14px;
        line-height: 22px;

    }

}

