/* Our Services */
#section-services {
    font-size: 14px;
}  

#section-services h3 {
    font-size: 14px;
}  
#section-services p {
    font-weight: 200;
    line-height: 1.75em;
    letter-spacing: .6px;
}

/* Building America (typing block) */
    
.section-hero-1 {
    background: var(--darkest-neutral-rgba-thirty), url("../images/parallax/bg-parallax.jpg");
    background-repeat: no-repeat;
}

.typing-heading {
    color: var(--accent-bright);
    margin-bottom: 1rem;
}

.typed-strings, .typed {
    text-transform: none;
    font-size: 2rem;
    margin-top: 0;
}

#section-why-choose-us-2 .box-icon {display: grid;
    grid-template-columns: 66px auto;
    align-items: center;
    justify-content: center;
}

.box-icon i {background: var(--darkest-neutral);
    color: var(--accent-bright);
}

#section-why-choose-us-2 .box-icon .icon {
    margin-top: -20px;
    position: relative;
}

#section-why-choose-us-2 .box-icon .text {
    margin-left: 0;
    text-align: left;
    width: 150px;
}

#section-why-choose-us-2 .box-icon h3 {
    font-weight: 400;
    margin-top: -3px;
    line-height: 1.58;
}

#cta .btn-line {
    background: var(--accent-bright);
    border-color: var(--accent-bright) !important;
    font-weight: 500;
    letter-spacing: 3px;
    font-size: 12px;
    transition: all .2s ease-in-out;
}

#cta .btn-line:hover {
    color: var(--lightest-neutral);
    background: var(--accent-brighter);
    border-color: var(--accent-brighter) !important;
    transition: all .2s ease-in-out;
}

.contact-details a {
    display: flex;
}

.contact-details a i {
    margin: 0.22em 1em 0 0;
}

#section-about {
    padding-bottom: 0;
}

#section-bio .row.bio, .row.slide-detail {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: 1fr
}
@media screen and (max-width:767px) {
    #section-bio .row.bio, .row.slide-detail {
        grid-template-columns: 1fr;
        gap: 2em;
    }
}
#section-bio .row.bio .bio-text {
    padding-right: 4em;
}
#section-bio .row.bio .bio-text strong {
    font-size: 2.2em;
    font-weight: 600;
    letter-spacing: .9px;
    margin-right: 5px;
}


#section-services.service-page-services .col-md-4 h3 {
    color: var(--mid-neutral);
    font-weight: 300;
    margin-top: -10px;
    transition: all .2 ease-in-out;
}

#section-services.service-page-services .col-md-4.active h3 {
    color: var(--primary-color-1);
    font-weight: bold;
    transition: all .2 ease-in-out;
}

#section-services.service-page-services .col-md-4:hover h3 {
    color: var(--lightest-neutral);
    transition: all .2 ease-in-out;
}

#section-services.service-page-services .col-md-4.active img {
    box-shadow: 0 0 0 4px var(--primary-color-1);
    transition: all .2 ease-in-out;
}

#section-services.service-page-services .col-md-4:hover img {
    box-shadow: 0 0 0 4px var(--lightest-neutral);
    transition: all .2 ease-in-out;
}

#section-services.service-page-services .col-md-4 img {
    box-shadow: none;
    transition: all .2 ease-in-out;
}

.row.service-detail, .row.slide-detail {
    margin-top: 2rem;
}

.row.bio .img-box img, .row.service-detail .img-box img, .row.slide-detail .img-box img {
    max-width: 100%;
}
@media screen and (max-width: 767px) {
    .row.bio .img-box img, .row.service-detail .img-box img, .row.slide-detail .img-box img {
        max-width: 100%;
        margin-bottom: 0.7em;
    }
}

.info-box i.icon_phone-custom.id-color {
    margin-top: 1px;
}



.info-box i.icon_house_alt.id-color {
    margin-top: 2px;
}

@font-face {
    font-family: "icomoon";
    src: url("../fonts/icomoon.eot");
    src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff")
        format("woff"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.svg#icomoon")
        format("svg");
    font-weight: normal;
    font-style: normal;
  }


.icon_phone-custom:before {
    font-family: "icomoon";
    content: "\e900";
    color: #424e4b;
    font-style: normal;
    font-size: 44px;
    line-height: 40px;
}

.info-box-a {
    display: block;
}


  
.info-box-a:hover i::before {
    color: var(--primary-color-1);
    transition: all .2s ease-in-out;
}
.info-box-a:hover .info-box_title {
    color: var(--primary-color-1);
    transition: all .2s ease-in-out;
}

.info-box-a i::before {
    transition: all .2s ease-in-out;
}


.de_tab.tab_steps .de_nav li span:hover {
    background-color: var(--lightest-neutral);
    color: var(--darkest-neutral);
}

.box-icon .icon_check {
    border: 1px solid var(--accent-bright);
    padding: 12px 8px;
    width: 50px;
    margin-right: 15px;
    transition: all .5s ease-in-out;
}

.box-icon:hover .icon_check {
    border: 1px solid var(--lightest-neutral);
    transition: all .5s ease-in-out;
}
.box-icon:hover .icon_check::before {
    color: var(--lightest-neutral);
    transition: all .5s ease-in-out;
}

div.widget.contact h3 {
    text-transform: none !important;
    font-size: 1rem;
}

div.widget.contact p {
    margin: 0px;
}

div.widget.contact .subhead{
    color: var(--primary-color-1);
    font-weight: bold;
    margin-top: 28px;
    font-size: 1.1rem;
}

div.widget.contact address {
    margin-top: 0;
}

div.widget.contact address span {
    border-bottom: 0;
}

#contact_form input[placeholder], #contact_form textarea[placeholder] {
    color: var(--darkest-neutral);
    background-color: var(--mid-neutral);
}

#contact_form input[type=submit].btn-line {
    background-color: var(--accent-bright);
}

#contact_form input[type=submit].btn-line:hover {
    background-color: var(--accent-brighter);
    color: var(--lightest-neutral)
}

#section-services .row.service-detail.hide {
    display: none;
}


.gallery-container {
    position: relative;
    display: flex;
    justify-content: center;
  }
  
  .thumbnails {
    position: absolute;
    bottom: 8px;
    display: flex;
    flex-direction: row;
    gap: 6px;
  }
  
  .thumbnails div {
    width: 8px;
    height: 8px;
    cursor: pointer;
    background: #aaa;
    border-radius: 100%;
  }
  
  .thumbnails div.highlighted {
    background-color: #777;
  }
  
  .slides {
    margin: 0 16px;
    display: grid;
    align-content:center;
    grid-auto-flow: column;
    gap: 1rem;
    width: 100%;
    padding: 0 0.25rem;
    height: 300px;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x;
  }
  
  .slides > div {
    scroll-snap-align: center;
  }
  
  .slides img {
    width: 540px;
    object-fit: contain;
    overflow-y: hidden;
  }
  
  .slides::-webkit-scrollbar {
    display: none;
  }