/* Global Styles */
*{
    font-family: 'Lato', sans-serif;
    color:#646768;
}

h1,h2,h3,h4,h5,h6{
    font-family: 'Raleway', sans-serif;
    color:#646768;
}

blockquote{
    border-left:4px solid #484a4b;
    padding:10px;
}

.tile-box{
    background:#fff;
    border-radius:5px;
    height:100%;
}

.tile-box.box-border{
    border:8px solid #fff;
}

.tile-content{
    padding:55px 75px;
    background:#fff
}

.img-box{
    height:100%;
    background-size:cover !important;
    background-repeat: no-repeat;
    border-radius:5px;
}

.tile-box .box-header {
    position: relative;
    top: 0;
    background: linear-gradient(#991b1e,#570F10);
    height: 125px;
    width: 100%;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.tile-box .box-content{
    padding:25px;
}

.img-circle{
    width:150px;
    height:150px;
    margin:auto;
    overflow:hidden;
    border: 5px solid #fff;
    position: absolute;
    top: -50px;
    left: 0;
    right: 0;
    border-radius:50%;
}

.img-circle img{
    width:100%;
}

.bg-grey-gradient{
    background: linear-gradient(#f8f8f8,#ededed);
}

.bg-red {
    background: #991b1e;
}

.bg-blue .btn-outline-light:hover,
.bg-blue-gradient .btn-outline-light:hover{
    color:#096bb4;
}

.small{
    font-size: .75rem;
}

.fixed-center{
    max-width:725px;
    margin:auto;
}

.icon-lg{
    font-size:105px;
}

.btn-primary{
    background:#991b1e;
    border-color:#991b1e;
}

.btn-outline-light:disabled{
    opacity:0.2;
}

.btn-primary:hover{
    background:#D02528;
    border-color:#D02528;
}

.alert{
    background:#fff;
    color: unset;
    border:none;
}
.alert i{
    margin-right:5px;
}

.alert-success{
    border-left:6px solid #2CB54C;
}

.alert-success i{
    color:#2CB54C;
}

.alert-danger{
    border-left:6px solid #B52C39;
}

.alert-danger i{
    color:#B52C39;
}

@media only screen and (max-width:991px){
    .img-box{
        min-height:200px;
    }
}

@media only screen and (max-width:767px){
    .tile-content{
        padding:25px;
    }

    .icon-lg{
        font-size:125px;
    }
}

/* End Global Styles */

/* Header Styles */
header{
    background:#333;
    padding:20px;
}

header nav a{
    color:#fff;
    text-decoration:none;
    text-transform: uppercase;
    border-bottom: 1px solid transparent;
    transition:border-bottom-color 0.2s;
    margin-bottom:5px;
}

header nav a:hover{
    border-bottom-color:#fff;
}

#logo{
    max-width:200px;
}

#logo img{
    width:100%;
}

@media only screen and (max-width:767px){
    header nav a{
        margin-right:20px;
    }

    #logo{
        max-width:150px;
        margin-bottom:10px;
    }
}

/* End Header Styles */

/* Banner Styles */

#banner-area{
    background-size:cover !important;
    position: relative;
}

#banner-area.home-banner{
    background:linear-gradient(90deg, rgba(255,255,255,0.8) 40%,rgba(255,255,255,0.2)),url('/assets/img/home-banner.jpg') center center;
}

#banner-area.partner-banner{
    background:linear-gradient(90deg, rgba(255,255,255,0.8) 40%,rgba(255,255,255,0.2)),url('/assets/img/partner-banner.jpg') center center;
}

#banner-area.contact-banner{
    background:linear-gradient(90deg, rgba(255,255,255,0.8) 40%,rgba(255,255,255,0.2)),url('/assets/img/contact-banner.jpg') 50% 75%;
}

#banner-area.home-banner #banner-row,
#banner-area.partner-banner #banner-row{
    min-height:400px;
}

#banner-area.contact-banner #banner-row{
    min-height:255px;
}

#banner-row h1{
    color: #484a4b;
    text-transform: none;
    font-weight:bold;
}

#banner-row h4{
    line-height:2.25rem;
}

@media screen and (max-width: 767px) {
    .powered-zesi-ai {
        flex-direction: column;
        align-items: center;
    }
}

.powered-zesi-ai h5 {
    margin-bottom: 0px;
}

#banner-area.home-banner #banner-row h1{
    max-width:635px;
}

#banner-area.home-banner #banner-row h4{
    max-width:635px;
}

#banner-area.partner-banner #banner-row h1{
    max-width:765px;
}

#banner-area.partner-banner #banner-row h4{
    max-width:765px;
}

@media only screen and (max-width:991px) {
    #banner-area.home-banner{
        background:linear-gradient(45deg, rgba(255,255,255,0.8),rgba(255,255,255,0.8)),url('/assets/img/home-banner.jpg') center center;
    }

    #banner-area.partner-banner{
        background:linear-gradient(45deg, rgba(255,255,255,0.85),rgba(255,255,255,0.85)),url('/assets/img/partner-banner.jpg') center center;
    }
    
    #banner-area.contact-banner{
        background:linear-gradient(90deg, rgba(255,255,255,0.7) 40%,rgba(255,255,255,0.7)),url('/assets/img/contact-banner.jpg') 50% 75%;
    }

    #banner-row h1{
        justify-content: center;
    }
}


@media only screen and (max-width:500px) {
    
    #banner-row{
        padding-top:75px;
        padding-bottom:75px;
    }

    #banner-row h1{
        display:block;
        margin:25px auto;
    }

    #banner-row h1 img{
        display:block;
        margin:10px auto;
    }
}

/* End Banner Styles */

/* Main Intro Container Styles */

#intro-container{
    padding-top:75px;
    padding-bottom:225px;
}

#intro-container h2{
    color:#fff;
    font-weight:bold;
}

#intro-container h2:after{
    content:'';
    width:200px;
    height:1px;
    background:#fff;
    opacity:0.4;
    display:block;
    margin:20px auto;
}

#intro-container h4{
    color:#fff;
    color:rgba(255,255,255,0.8);
}

/* End Main Intro Container Styles */

/* Step Container Styles */

#step-container{
    top:-135px;
    position:relative;
}

#step-container .tile-box:first-child,
#step-container .tile-box:nth-child(2){
    margin-bottom:75px;
}

#step-container h2{
    color:#484a4b;
    margin-bottom:35px;
    display:flex;
    align-items:center;
    position:relative;
}

#step-container h2 i{
    font-size:36px;
    margin-right:10px;
}

#step-container h2:after{
    content: '';
    background: #991b1e;
    display: block;
    width:100px;
    height:4px;
    position:absolute;
    bottom:-20px;
}

#expect-img{
    background:url('/assets/img/what-to-expect.jpg') center center;
}

#insurance-img{
    background:url('/assets/img/update-insurance.jpg') center center;
}

#policy-img{
    background:url('/assets/img/save-on-policy.jpg') 75% center;
}

/* End Step Container Styles */

/* Contact Container Styles */

#contact-container{
    padding-top:35px;
    padding-bottom:35px;
}

#contact-container h4{
    color:#fff;
    color:rgba(255,255,255,0.8);
}

#contact-container #contact-info-col div{
    color:#fff;
    color:rgba(255,255,255,0.8)
}

#contact-container #contact-info-col .info-row{
    padding:15px 0;
    max-width:435px;
    border-top:1px solid rgba(255,255,255,0.4);
    margin:auto;
}

#contact-container #contact-info-col .info-row:last-child{
    border-bottom:1px solid rgba(255,255,255,0.4);
}

#contact-container #contact-info-col a{
    text-decoration:none;
}

#contact-container #contact-info-col a:hover div{
    color:#fff;
}

#contact-container #contact-info-col i{
    color:#fff;
}

#contact-container #contact-form-col{
    margin-top:35px;
}

#contact-container #contact-form-col h4:after {
    content: '';
    width: 200px;
    height: 1px;
    background: #fff;
    opacity: 0.4;
    display: block;
    margin: 20px auto;
}

#contact-container .border-right{
    border-right:1px solid #fff;
    border-color:rgba(255,255,255,0.4);
}

#contact-container #contactForm .form-control,
#contact-container #contactForm .form-select{
    background-color:transparent;
    border:2px solid #fff;
    box-shadow:0 0 10px rgba(255,255,255,0.2), inset 0 0 10px rgba(7, 80, 136, 0.2);
    color:#fff;
    padding:10px;
}

#contact-container #contactForm .form-control::placeholder,
#contact-container #contactForm .form-select:invalid{
    color:#fff;
    color:rgba(255,255,255,0.6);
}

#contact-container #contactForm .form-select{
    position:relative;
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

#contact-container #contactForm .form-select:after{
    content:'test';
    display:block;
    position:absolute;
}

@media only screen and (max-width:1199px){
    #contact-container #contact-info-col .info-row{
        max-width:400px;
    }
}

@media only screen and (max-width:991px){
    #contact-container #contact-info-col .info-row{
        max-width:250px;
        border:none !important;
        padding:0;
    }

    #contact-container #contact-info-col .info-col{
        border-top:1px solid rgba(255,255,255,0.4);
        padding-top:15px;
        padding-bottom:15px;
    }

    #contact-container #contact-info-col .info-col:last-child{
        border-bottom:1px solid rgba(255,255,255,0.4);
    }
}

@media only screen and (max-width:767px){
    #contact-container .border-right{
        border-right: none;
    }

    #contact-container #contact-form-col{
        margin-top:75px;
    }
}

/* End Contact Container Styles */

/* Partner Intro Container Styles */

#partner-intro-container{
    padding-top:35px;
    padding-bottom:35px;
}

#partner-intro-container p,
#partner-intro-container p strong{
    color:#646768;
    max-width:720px;
    margin:25px auto;
}

#partner-intro-container h5,
#partner-intro-container h5 strong{
    color:#646768;
    max-width:720px;
    margin:55px auto;
}

/* End Partner Intro Container Styles */

/* Services Container Styles */

#services-container{
    padding-top:55px;
    padding-bottom:55px;
}

#service-header-row{
    max-width:800px;
    margin:35px auto 105px;
}

#service-header-row h2{
    color:#484a4b;
    margin-bottom: 35px;
    display: flex;
    align-items: center;
    justify-content:center;
    position: relative;
}

#service-header-row h2 i{
    font-size: 36px;
    margin-right: 10px;
}


#service-header-row h2:after{
    content: '';
    background: #991b1e;
    display: block;
    width: 100px;
    height: 4px;
    position: absolute;
    bottom: -20px;
    left:0;
    right:0;
    margin:auto;
}

#partner-value-row{
    margin-top:55px
}

#partner-value-row .value-col{
    margin-top:25px;
    margin-bottom:25px;
}

#partner-value-row h5{ 
    color:#484a4b;
    min-height:55px;
}

@media only screen and (max-width:767px){
    #partner-value-row .value-col {
        margin: 0 0 105px;
    }

    #services-container{
        padding-bottom:0;
    }
}

/* End Services Container Styles */

/* Contact Form Styles */

#contactForm{
    width: 100%;
    max-width: 400px;
    position:relative;
}

#contactForm.form-submitted .form-content{
    pointer-events:none;
    filter:blur(5px);
}

#contactForm .form-alert{
    display:flex;
    align-items:baseline;
}

#contactForm.form-submitted .form-alert{
    position:absolute;
    top:25%;
    left:0;
    right:0;
    margin:auto;
    z-index:2;
}

#contactForm .form-control.is-invalid{
    border-color: #B52C39 !important;
}

#contactForm .invalid-feedback{
    color:#fff;
}

#submitBtn .lds-ring{
    display:none;
}

#submitBtn.loading .lds-ring{
    display:inline-block;
}

#submitBtn:hover .lds-ring div {
    border-color: #096bb4 transparent transparent transparent;
}

.lds-ring {
    display: inline-block;
    position: relative;
    width: 15px;
    height: 15px;
}

.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 15px;
    height: 15px;
    margin: 3px;
    border: 3px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent;
}

.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}

.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}

.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes lds-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@media only screen and (min-width:767px) and (max-width:991px){
    #contactForm{
        max-width:250px;
    }
}

/* End Contact Form Styles */

/* Footer Styles */

footer{
    background:#333;
    padding:20px;
}

footer div{
    color:#fff;
    color:rgba(255,255,255,0.6);
}

footer a{
    color:#fff;
    color:rgba(255,255,255,0.4);
    text-decoration: none;
    border-bottom:1px dotted rgba(255,255,255,0.4);
}

footer a:hover{
    color:#fff;
    border-color:#fff;
}

/* End Footer Styles */

/* 404 Styles */
#not-found-container{
    padding-top:225px;
    padding-bottom:225px;
    min-height:900px;
}

#not-found-container h2{
    color:#fff;
    font-weight:bold;
}

#not-found-container h2:after{
    content:'';
    width:200px;
    height:1px;
    background:#fff;
    opacity:0.4;
    display:block;
    margin:20px auto;
}

#not-found-container h4{
    color:#fff;
    color:rgba(255,255,255,0.8);
}

@media only screen and (max-width:991px){
    #not-found-container{
        min-height:unset;
    }
}

/* End 404 Styles */
