/*Tao default theme styles*/
:root {
    /*Fonts*/
    --header: "Poppins", sans-serif;    
    --subheader: "Inter Tight", sans-serif, system-ui; 
    --bodytext: "Inter", sans-serif, system-ui;     
    /*Colors*/
    --primary:#016ba4;  
    --accent:#ce2030;
    --highlight: #023a4a;    
    --text:#000000;
    --mute:#303e49;
    --gray:#f0f9ff; 
    --light:#f2f7f9;
    --offwhite:#FAF9F6;
    --white: #FFFFFF;
    --error:#ea1000;
    /*Utilities*/
    --sliderHeight:600px;
    @keyframes spinner-border{100% transform: rotate(360deg);}
}



/* 1. Reset/Normalize */
html{-ms-text-size-adjust:100%; -webkit-text-size-adjust:100%; font-family:sans-serif; scroll-behavior:smooth;}
body{color:var(--text);display:flex;flex-direction:column;font-family:var(--bodytext);font-size: 1rem;font-weight: 300;line-height: 1.5;margin:0;position:relative;text-align:left;size-adjust: 105%;ascent-override: 92%;descent-override: 28%;line-gap-override: 0%;}
body.noScroll{ overflow:hidden;}
body::-webkit-scrollbar-track {background-color: #fff;}
body::-webkit-scrollbar { width: 7px; background-color: #fff;}
body::-webkit-scrollbar-thumb { background-color: var(--primary);}

button, input, optgroup {margin: 0; font: inherit; color: inherit;  border: 1px solid var(--gray); }
button {overflow: visible; -webkit-appearance: button;}   
.button, input[type="button"], input[type="reset"], input[type="submit"] {display: inline-block;line-height: 1;width:auto;background-color: var(--accent);color: var(--white);fill: var(--white);text-align: center;-webkit-transition: all 0.3s;-o-transition: all 0.3s;transition: all 0.3s;font-size: 1.2em;font-weight: 400;border-radius: 5px;padding: 15px 30px;
    &:hover {background: var(--primary);color: var(--white);}
    &:active {background: var(--gray); }
}
input {line-height: normal;
    &[type="checkbox"], &[type="radio"] {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0 3px; }
    &[type="number"]::-webkit-inner-spin-button, &[type="number"]::-webkit-outer-spin-button {height: auto; }
    &[type="email"], &[type="password"], &[type="tel"], &[type="text"], &[type="number"], select {width: 100%;min-height: 40px;background-color: var(--gray);border: 1px solid color-mix(in srgb, var(--gray) 70%, transparent);padding: 10px;text-align: left;color: var(--text);border-radius: 5px;
        &::-webkit-input-placeholder {font-family: "Inter", sans-serif;color: var(--dark); }
        &::-moz-placeholder {font-family: "Inter", sans-serif; color: var(--dark); }
        &:-ms-input-placeholder {font-family: "Inter", sans-serif; color: var(--dark); }
        &:-moz-placeholder {font-family: "Inter", sans-serif; color: var(--dark); }
        &:focus::-webkit-input-placeholder, &:focus::-moz-placeholder, &:focus:-moz-placeholder, &:focus:-ms-input-placeholder {color: transparent; }
    }
    &[type="radio"] {margin-right: 5px;} 
}
select, textarea {
    width:100%;
    background-color: var(--gray);
    border: 1px solid color-mix(in srgb, var(--gray) 70%, transparent);
    padding: 10px;
    text-align: left;
    color: var(--text);
    border-radius: 5px;
    &::
    -ms-expand {display: none; }
    &::
    -moz-focus-inner, input::-moz-focus-inner {padding: 0;
    border: 0;}                  
    &::
    -webkit-input-placeholder, &::-moz-placeholder, &:-ms-input-placeholder, &:-moz-placeholder {color: var(--dark); }
    &:
    focus::-webkit-input-placeholder, &:focus::-moz-placeholder, &:focus:-moz-placeholder, &:focus:-ms-input-placeholder {color: transparent; }
}

/*Div post template*/
.errmsg {color:var(--error);}
.group_nogroup_label,.group_nogroup_tr{ display:none; }
.fieldgroup{clear:both;margin-top: 30px;
    & .fieldgroup_label {border-left: 4px solid var(--primary);color: var(--dark);display:block;font-size: 1.3em;line-height: 1;font-weight: 500;padding-left: 5px;}            
    & .fieldgroup_desc, & .field_desc{font-weight:inherit;margin-bottom:15px; color: var(--mute); font-size: .87em; font-style: italic; }
    & .fieldrow{display:block;text-align:left;margin: 15px 0;
        & .fieldlabel{ display:block;
            label { font-weight:500;}
            sup{font-size: .95em;color:var(--error);}
        }   
        & .fieldval{display:block;width:100%;
            input:not([type="radio"],[type="checkbox"]), input[type=text], input[type=tel], input[type=email], select{width:100%;} 
            input[type=button], input[type=reset], input[type=submit], .button{width:auto;}
            textarea{min-height:100px; width:100%;} 
            input[type=file]{padding: 8px;}                    
        } 
        & .preferred_communications_radio{display:inline-block;margin-right: 10px;}
    }            
}

/* 2. Global Styles */
#layout{background:var(--white); display:flex; flex-direction:column; left:0; min-height:100vh; min-width:100%; position:relative; top:0; width:100%; overflow: hidden;}
#wrapper{flex:1 0 auto; height:auto; margin:0 auto; position:relative; width:100%;}
header h1{display:none;}

/* 3. Base Elements */
h1, h2, h3, h4, h5, h6 {margin-top: 0; margin-bottom: 0.5rem; font-family:var(--header); font-weight: 500; text-align:left; text-rendering:optimizelegibility; line-height: 1.2; color:var(--primary);
   a { color:inherit;}
}
.h1, h1 {font-size: calc(1.375rem + 1.5vw); 
    @media (min-width: 1200px) {font-size: 2.5rem; } 
}
.h2, h2 {font-size: calc(1.3rem + 0.6vw); 
    @media (min-width: 1200px) {font-size: 1.75rem; } 
}
.h3, h3 {font-size: calc(1.25625rem + 0.075vw); 
    @media (min-width: 1200px) {font-size: 1.3125rem; } 
}
.h4, h4 {font-size: 1.125rem; }
.h5, h5 {font-size: 1rem; }
.h6, h6 {font-size: 0.875rem; }

img {border:0; max-width: 100%; height: auto; vertical-align: middle; border: 0; -ms-interpolation-mode: bicubic;}
strong, b {font-weight:bold;}
p{line-height:1.7em; margin:.5em 0;}
a{-moz-transition:all .4s ease; -o-transition:all .4s ease; -webkit-transition:all .4s ease; color:var(--accent); text-decoration:none; transition:all .4s ease;
    &:hover, &:focus{color: var(--primary);text-decoration:none;}
}
/*Helper classs*/
.hide{display:none;}
/* 4. Components */
/*Buttons*/
.button {-o-transition: all 0.3s;-webkit-transition: all 0.3s;background-color: var(--primary);border-radius: 5px;color: var(--white);display: inline-block;fill: var(--white);font-size: 1.2em;font-weight: 400;line-height: 1;padding: 12px 24px;text-align: center;transition: all 0.3s;
    &.button-lg {font-size: 1.5em; padding: 20px 30px; }
    &.button-sm {border-radius:0.25rem;padding: 0.35rem .70rem;font-size: 1rem;}

    &.button-primary {background: var(--primary); border: 1px solid transparent; color: var(--white);
        &:hover {background: var(--highlight); }
        &.button-lines { border-color: var(--primary); color: var(--primary); }
        &.button-lines:hover {background: var(--primary); color: var(--white); }
    }
}

/*Skip button*/
.skip-to-main-content-link {display: block;position: absolute;left: -999px;top: -999px; 
    &:focus{left: 0;top: 0;z-index: 9999;padding: 3px;background: var(--dark);border:1px solid var(--primary); color:var(--white);}
}
:focus,:focus-visible{outline:1px dashed var(--primary);}
/*Search*/
.searchBlock {
    & .searchBlock_backdrop{background: color-mix(in srgb, var(--text) 45%, transparent);height:100%;left:0;position: fixed;top:0;width:100%;height: 100%;z-index:9999;display: block;/* opacity: 0; */transition: all .7s ease;}
    & .searchBlock_body {height: auto;left: 0;padding: 35px 0;position: absolute;top: 70px;width: 100%;z-index: 9999;transition:all .5s ease;/* background: var(--gray); */
        & .container {height: 100%; position: relative; }
        & .search_Close {color: var(--white); display: none; position: relative; top: 120px; }
        & .searchBlock {position: relative;
            form {display: flex; flex-wrap: wrap; min-width: 100%; width: 100%;
                label {color: var(--highlight); display: none; font-family: var(--bodytext); font-size: 5em; font-weight: 600; min-width: 100%; text-transform: uppercase; }
                & .fieldsRow {display: flex; width: 100%;
                    #textfield {background: var(--white);border: 1px solid var(--gray);width:100%;bor;border-radius: 0;border-bottom-left-radius: 5px;border-top-left-radius: 5px;font-size: 1.5em;margin: 0;padding: 20px;}
                    button[type="submit"] {background:var(--primary);border-radius: 0;border-bottom-right-radius: 5px;border-top-right-radius: 5px;color: var(--white);height: 100%;width: 80px;}
                    i { font-size:28px}                        
                }
            }
        }
    }
    &.show {top:0;left:0;width: 100%;height: 100vh;position: fixed; z-index: 99;
        & .searchBlock_body {transition:all .5s ease;}
        & .searchBlock_backdrop {opacity: 1;transition: all .3s ease;}
    }
}

/*Search form*/
form#sitesearch {display: flex; margin-bottom: 15px;
    input {margin: 0;
        &[type="text"] {border-bottom-left-radius: 5px; border-radius: 0; border-top-left-radius: 5px; }
        &[type="submit"] {border-bottom-right-radius: 5px; border-radius: 0; border-top-right-radius: 5px; }
    }
}

/* 5. Layout */
/* Custom Container sizes */
@media (min-width: 1440px) {.container{max-width: 1180px!important;} }
@media (min-width: 1640px) {.container{max-width:1340px!important;} }
@media (min-width: 1840px) {.container{max-width:1440px!important;} }
@media (min-width: 2040px) {.container{max-width:1640px!important;} }
/*Header & logo*/

header.Header {position: fixed;width: 100%;z-index: 99;padding: 0;top: auto;left: auto;transition: all .5s ease;transform: translateY(0px);transition: all .5s ease;background: var(--primary);
    & .logo {display:flex;justify-content: space-between;
        & img {filter:brightness(0) invert(1); padding:5px 0; max-height: 70px;}
        & .mobileNav{ display:flex;
            button{background:none;border:0;padding: 0;margin: 0 10px;color:var(--white);font-size: 3rem;
                &:hover{color:var(--accent);}
            }
            button.search-toggler{font-size:2em;}
        }             
    }
    .main-navigation {justify-content:end;
        & > ul {
            & > li { 
                & > a, & > span {padding: 30px 10px;font-size: 1rem;border-bottom: 3px solid transparent; transition:all .5s ease;
                    &:hover { border-bottom: 3px solid var(--primary);}
                }               
            }
        }
    }
    &.toFixed{box-shadow: 0px 0px 1px rgb(9 9 9 / 30%);transform: translateY(-100%);transition:all .3s ease;}
    &.headBg.toFixed {background: var(--primary);transition: all .5s ease;position: fixed;top: 0;transform: translateY(0px);
        & .logo{
            span{color:var(--white);}
            svg g {fill:var(--white);}
        }   
        & .navigation {
            & .iconMenu { 
                button, a{color: var(--white); 
                    &:hover{color: var(--dark);}
                } 
            }
        }               
    } 
    @media (min-width: 0px) and (max-width: 768px) {
        & .logo a {font-size:1.3em;}
        & .iconMenu {
            span{ display:none;}
            i{font-size:24px;}
        }
    }  
    @media (min-width: 0px) and (max-width: 576px) {
         & .iconMenu a{display:none;}
        & .logo a {font-size:1.2em;}
    }                         
}

/*Navigation*/
header.Header .main-navigation {padding:0;
    ul {align-items: stretch;display: -webkit-box;display: -ms-flexbox;display: flex;flex-direction: row;height: 100%;justify-content: flex-end;list-style: none;margin: 0;padding: 0;position: static;text-align: center;
        li {align-items: center; display: flex; position: relative; text-align: center; transition: all 0.3s ease;
            a, span {color: var(--white);display: block;font-family: var(--bodytext);font-size: 1.0rem;font-weight: 300;padding:23px  10px;text-transform: uppercase;}
            &.home a{font-size:0;text-align: center;padding: 28px 15px;margin: 0;
                &:before{content:"\f422";font-family:bootstrap-icons!important;font-size: 18px;display: block;margin: 0 auto;font-weight: bold;}        
            }
            &.search span{font-size:0;text-align: center;padding: 28px 15px;margin: 0;
                &:after {content:"\f52a";font-family:bootstrap-icons!important;font-size: 18px;display: block;margin: 0 auto;font-weight: bold;} 
            }         
            &:hover{ 
                a{ color:var(--white); }
            }
            &:hover > ul {display: block; }
            &:hover > ul li {background: var(--primary); }

            ul {background: var(--primary); box-shadow: 0 1px 1px 0 var(--gray); display: none; left: 0; list-style: none; margin: 0; margin-top: 0; min-width: 260px; padding: 0; position: absolute; top: 100%;
                li {display: block; text-align: left; position: relative; width: auto; left: 0; top: 0;
                    &:first-child {padding-top: 1px; }
                    &:hover {
                        ul {display: block; }
                        a {background: var(--primary); color: var(--white); }
                    }
                    ul {background: var(--primary); left: auto; right: 100%; position: absolute; top: 0; }
                    a {color: var(--white); font-size: 0.9em; padding: 10px;
                        &:hover {background: var(--white); color: var(--primary); }
                    }
                }
                ul {left: 100%; }
            } 
        }
    }
}
.subpageHeader-block{margin-top: 85px;padding: 30px 0;}
/*Breadcrumbs*/
.breadcrumbs {color: var(--text);line-height: 0;background: var(--light);transition: all .5s ease; 
    & .container {display: flex;align-items: center;justify-content: flex-start;} 
    a {color: var(--text); font-size: 12px; line-height: 1; padding: 10px 5px; font-weight: 400; display: inline-block; }
}
/* 6. Utilities */
/*Go to Top button*/
.cd-top {position: fixed; bottom: 0; right: 40px; width: 40px; height: 32px; z-index: 10; border-radius: 5px 5px 0 0; background: color-mix(in srgb, var(--dark) 70%, var(--offwhite)); opacity: 0; visibility: hidden; overflow: hidden; display: block; transition: opacity .3s, visibility .3s;
    i {position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: 0 auto; line-height: 35px; text-align: center; font-size: 1.4em; color: var(--white); text-indent: 0; }
    &.cd-is-visible, &.cd-fade-out, .no-touch &:hover {opacity: 1; visibility: visible; transition: opacity .3s, visibility .3s; }
    &.cd-fade-out {opacity: .75; }
    &:hover, .no-touch &:hover {background: var(--highlight); border-color: var(--white); }
    &:hover i {color: var(--white); }
}

/*Mobile Sidebar Menu*/
.Sidebar{
    & .Sidebar_backdrop{background: color-mix(in srgb, var(--text) 30%, transparent);height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999; display:none;}
    & .Sidebar_body{-webkit-overflow-scrolling:touch;-webkit-transition:right .3s ease-in-out;background-color: var(--primary);bottom:0;overflow-y:auto;position:fixed;right:-320px;top:0;transition:right .3s ease-in-out;width:320px;z-index:10000;
        & .sidebar_Close {text-align:right;
            button {
                i{font-size:30px;background:var(--primary);color:var(--white);display: block;}
                &:hover i{background:var(--dark);}
            }                         
        }          
    }    
    &.show{
        & .Sidebar_body{right:0;}
        & .Sidebar_backdrop{display:block;}
    }    
    .SidebarMenu{padding: 30px 0;
        ul{list-style:none; margin:0; padding:0;
            li{
                a{color:var(--white);display:block;font-size:1.1em;font-weight: 400;padding:10px 15px;text-decoration:none;text-transform:uppercase;} 
                ul li{padding:0;}
                ul li a{text-transform:none;font-size:.96em;}
                &.search{display:none;}
            }
            a:hover{background: var(--accent);color: var(--white);}
        }  
    } 
}

.pageContent { font-size:1.3em;}
.CTAblocks{margin: 50px 0;
    & .CTAblock{padding:20px;text-align:center;font-size:1.3em;border-radius: 15px;box-shadow: rgb(233, 233, 233) 0px 0px 10px 8px;
        img{margin-bottom:30px;max-width: 100%;width: 250px;}   
        & .button{margin-top:50px;font-size: 1em;font-weight: 500;}
    }
}

.AgentBlock{padding: 60px 0;
    img{border-radius:25px;}
    & .details{padding: 15px 50px;display:flex;height: 100%;flex-direction: column;justify-content: space-between;
        h2, h4{ color:var(--text);}          
    }
    @media (min-width: 0px) and (max-width: 768px) {            
        & .details{padding: 50px 0;}
    }
}

/*Responsive styles*/
@media all and (min-width: 0px) and (max-width: 1199px) { }
@media all and (min-width: 0px) and (max-width: 1080px) { } 
@media all and (min-width: 0px) and (max-width: 779px) { }
@media all and (min-width: 0px) and (max-width: 639px) { }
@media all and (min-width: 0px) and (max-width: 579px) { }
@media all and (min-width: 0px) and (max-width: 460px) { }
@media all and (min-width: 0px) and (max-width: 380px) { }
 