.home-header-title {
    color: #ffffff;
    font-size: 41px;
    font-weight: 800;
    filter: drop-shadow(3px 2px 0px #000000);
    margin-bottom: 15px;
}
.home-header-text {
    color: #ffffff;
    font-size: 27px;
    line-height: 31px;
    letter-spacing:0px;
    font-weight:400;
    
    filter: drop-shadow(2px 2px 0px #000000);
}
.home-header-content{
    position:relative;
    display:block;
}
.home-header-talk{
    font-size:32px;
    padding-top:10px;
    color: #ffffff;
    font-weight: 800;
    filter: drop-shadow(3px 2px 0px #000000);
    margin-bottom: 15px;
}

.about-color-box-title{
    color:#fff;
    font-size:35px;
    filter: drop-shadow(2px 2px 0px #000000);
}

.about-color-box-text{
    color:#fff;
    font-size:20px;
    padding-right:20px; filter: drop-shadow(2px 2px 0px #000000);
}

.map-list-item{
    /*filter: drop-shadow(2px 2px 1px #000000);*/
    display:list-item;
    font-size:21px;
    font-weight:400;
    margin-bottom:24px;
    line-height:29px;
}

.map-pop-text{
    color: var(--thm-gray);
    font-size: 17px;
    font-weight: 400;
}

.ul-page-list{
    list-style-type: disc;
    padding-left:20px;
}
.li-page-item{
    display:list-item;
}

.li-page-item-home{
    margin-top:7px !important;
}

.li-page-item-home::marker{
    font-size:25px;
    
}


ul.custom-bullets {
  list-style: none;
  padding-left: 20px;
}

ul.custom-bullets li {
  position: relative;
    marin-top:12px;
}

ul.custom-bullets li::before {
  content: "•";
  position: absolute;
  left: -20px;
  top: 0px;
  font-size: 40px; /* bullet size */
}

.service-box-dla{
    background:white;
    /*padding:5px;*/
    height:100%;
    /*filter: drop-shadow(1px 1px 3px #bcbcbc); */
    cursor: pointer;
}

.drop-menu-link{
    color:var(--thm-gray);
}
.drop-menu-holder{
    width:100%;
    /*height:300px;*/
    background-color:var(--thm-base);
    position:fixed;
    top:105px;
    border-bottom:1px solid #A1A1A1;
}

.tan-box-bkg{
    /*background-image: linear-gradient(#c1bab2, #847a70);*/
    background-image: linear-gradient(#c1bab2, #786f66);
}
.cranberry-box-bkg{
    background-image: linear-gradient(#fe6d9d, #c02056);
}
.green-box-bkg{
    background-image: linear-gradient(#8db3a3, #38746d);
}
.gray-box-bkg{
    background-image: linear-gradient(#919191, #606060);
}

.fs-16{
    font-size:16px;
}

a:hover{
            
    color:var(--thm-base) !important;
}

.service a:hover{
            
    color:#555555 !important;
}

.menu a:hover{
            
    color:#ffffff !important;
}

.service-padding-top{
        padding-top:25px;
        min-height:230px;
        padding-bottom:0px;
    }

    .about-title{
        font-size:25px !important;
    }

    .services-body{
        padding-top:2px;
        padding-left:10px;
        padding-right:10px;
        font-size:17px;
    }

.testimonial-quote{
    font-family:times;
    font-size:100px;
    color:var(--thm-base);
    font-weight:bold;

}

.testimonials-one__single:hover .testimonials-one__single-icon span {
    color: #ffffff;
}


.testimonials-one__single:hover .client-info .show1 {
    display:none;
}
.testimonials-one__single .client-info .show1 {
    display:block;
    border-radius:50%;
    width:70%;
    height:70%;
    margin-left:15%;
    margin-bottom:-10px;
}

.testimonials-one__single:hover .client-info .show2 {
    display:block;
    border-radius:50%;
    width:70%;
    height:70%;
    margin-left:15%;
    margin-bottom:-10px;
}
.testimonials-one__single .client-info .show2 {
    display:none;
}
        
        

.testimonials-one__single-icon {
    position: relative;
    display: block;
    margin-bottom: -30px;
    margin-top: 20px;
        }

      .main-content {
  position: relative;
}
.main-content .owl-theme .custom-nav {
  position: absolute;
  top: 30%;
  left: 0;
  right: 0;
}
.main-content .owl-theme .custom-nav .owl-prev,
.main-content .owl-theme .custom-nav .owl-next {
  position: absolute;
  height: 100px;
  color: inherit;
  background: none;
  border: none;
  z-index: 100;
}
.main-content .owl-theme .custom-nav .owl-prev i,
.main-content .owl-theme .custom-nav .owl-next i {
  font-size: 2.5rem;
  color: #cecece;
}
.main-content .owl-theme .custom-nav .owl-prev {
  left: -40px;
}
.main-content .owl-theme .custom-nav .owl-next {
  right: -40px;
}

 .testimonials-one__single{
            
    min-height:355px;
    padding-top:25px; 
    padding-bottom: 25px;
    padding-left:25px;
    padding-right:25px;
}

.lh-25{
    line-height:25px;
}

.projects-detalis__sidebar-single {
     margin-top:53px;   
}

/* Contact form validation */
.contact-form-field-error {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.contact-form-errors ul {
    padding-left: 1.25rem;
}

/* Submit button spinner */
.contact-form-spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255,255,255,.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: contact-form-spin 0.7s linear infinite;
}
@keyframes contact-form-spin {
    to { transform: rotate(360deg); }
}

/* Age of Client number input – match other contact form inputs */
.contact-one__form-box .input-box input[type="number"] {
    position: relative;
    display: block;
    background: #ffffff;
    width: 100%;
    height: 50px;
    border: 2px solid rgba(0, 0, 0, 0);
    color: #202020;
    font-size: 17px;
    font-weight: 400;
    font-style: normal;
    padding-left: 20px;
    padding-right: 20px;
    border-radius: var(--thm-bdr-radius);
    transition: all 500ms ease;
    font-family: var(--thm-font-two);
    outline: none;
    -moz-appearance: textfield;
}
.contact-one__form-box .input-box input[type="number"]::-webkit-outer-spin-button,
.contact-one__form-box .input-box input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* ========== Consolidated page styles (moved from inline <style> on each page) ========== */
html {
    scroll-behavior: auto !important;
}
.home-header-bg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-attachment: scroll;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.home-header-logo {
    position: relative;
    float: left;
    padding-top: 8px;
}
.home-faq-inner {
    padding-left: 0 !important;
}
.home-testimonial {
    padding-left: 0 !important;
}
.br-5 {
    border-radius: 5px;
}
.br-top-5 {
    border-radius: 5px 5px 0 0;
}
.br-btm-5 {
    border-radius: 0 0 5px 5px;
}
.agbalumo-regular {
    font-family: "Agbalumo", system-ui;
    font-weight: 400;
    font-style: normal;
}
.contact-one__bg::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(160, 28, 66, 0.93);
    content: "";
    z-index: -2;
}
.pl-2px {
    padding-left: 3px;
    color: #6e6e6e;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .home-header-title { font-size: 35px; }
    .home-header-text { font-size: 28px; line-height: 40px; }
    .home-header-content { width: 50%; }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .home-header-title { font-size: 30px; }
    .home-header-text { font-size: 20px; line-height: 35px; }
    .home-header-content { width: 80%; }
}
@media only screen and (max-width: 767px) {
    .home-header-title { font-size: 25px; }
    .home-header-text { font-size: 20px; line-height: 25px; }
    .home-header-content { width: 100%; }
}
.faq-one-accrodion .accrodion-title {
    min-height: 77px;
}
.faq-one-accrodion.accrodion--min-50 .accrodion-title {
    min-height: 50px;
}
.faq-one-accrodion.accrodion--min-76 .accrodion-title {
    min-height: 76px;
}
.quote-line {
    height: 2px;
    opacity: .5;
    color: white;
    margin-left: 200px;
    margin-right: 200px;
}
.box-about {
    padding: 22px 10px 26px;
    min-height: 160px;
}
.circle-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90px;
    height: 90px;
    margin-left: 3px;
    border-radius: 50%;
    background-color: #fff;
    border: 2px solid var(--thm-base);
    color: var(--thm-base);
}
.circle-title {
    margin-top: 20px;
    color: var(--thm-base);
}
.pd-120-0-90 {
    padding: 90px 0 90px;
}
.pr-55 { padding-right: 45px; }
.pl-55 { padding-left: 45px; }
.h3-team { font-size: 24px; margin-bottom: 6px; }
.icon-box-check {
    background-color: #e4e4ea;
    padding: 10px;
    height: 60px;
    width: 60px;
    border-radius: 30px;
}
.text-white { color: #fff; font-size: 20px; }
.two-line-center { padding-top: 13px; }
.pl-pr-0 { padding-left: 0; padding-right: 0; }
.pink-box-bkg { background-image: linear-gradient(#ff76a4, #e53776); }
.tan-page-box-bkg { background-image: linear-gradient(#c1beb7, #888172); }
.light-green-box-bkg { background-image: linear-gradient(#a2d4bf, #6c9584); }
.light-box-bkg { background-image: linear-gradient(#eeeeee, #c5c5c5); }
.mh-190 { min-height: 190px; }
.tab-one__tabs .tab-buttons li { padding: 19px 64px 20px; }
.service-box-pad-left-box {
    padding-left: 100px;
    padding-right: 20px;
    padding-top: 5px;
    padding-bottom: 5px;
}
.service-box-pad-right-box {
    padding-left: 20px;
    padding-right: 100px;
    padding-top: 5px;
    padding-bottom: 5px;
}
.service-line-heading {
    font-size: 1.25rem;
    line-height: 1.2;
    font-weight: 700;
}
.terms-link,
.terms-link:hover,
.terms-link:focus,
.terms-link:visited {
    color: var(--thm-gray) !important;
    -webkit-transition: none;
}
.faq-three-line { min-height: 102px !important; }
.valueList ul li::marker { font-size: .9em; }
.core-titles { font-size: 23px; color: var(--thm-base); }
.testimonial-quote--90 { font-size: 90px; }
.testimonials-one__single--pb { padding-bottom: 15px; }
.cran-title { font-size: 25px; }
.pr-20px { padding-right: 20px; }
.learn-more-link { font-weight: bold; color: var(--thm-base); }
ol > li::marker { font-weight: 600; }

/* ========== Home page (index) responsive layout ========== */
.home-page-header {
    padding-top: 0;
    padding-bottom: 0;
}
.home-page-header .home-page-header__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
}
.home-page-header .home-header-content {
    flex: 1 1 45%;
    max-width: 45%;
    padding-top: 115px;
    padding-bottom: 48px;
    float: none !important;
    width: auto !important;
}
.home-page-header .home-header-img {
    flex: 1 1 51%;
    max-width: 51%;
    float: none !important;
    width: auto !important;
    text-align: right;
}
.home-page-header .home-header-img__photo {
    position: relative;
    display: inline-block;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 520px;
    object-fit: contain;
    vertical-align: bottom;
}

@media (min-width: 1200px) {
    .home-page-header .home-header-img__photo {
        left: -75px;
        max-width: min(100%, calc(100% + 75px));
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .home-page-header .home-header-content {
        flex: 1 1 50%;
        max-width: 50%;
        padding-top: 90px;
    }
    .home-page-header .home-header-img {
        flex: 1 1 48%;
        max-width: 48%;
    }
    .home-page-header .home-header-title {
        font-size: 35px;
    }
    .home-page-header .home-header-text {
        font-size: 28px;
        line-height: 40px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .home-page-header .home-page-header__inner {
        flex-direction: column;
        align-items: center;
    }
    .home-page-header .home-header-content {
        flex: 1 1 100%;
        max-width: 100%;
        padding-top: 56px;
        padding-bottom: 16px;
        text-align: center;
    }
    .home-page-header .home-header-img {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: center;
    }
    .home-page-header .home-header-img__photo {
        left: 0 !important;
        max-height: 380px;
    }
    .home-page-header .home-header-title {
        font-size: 30px;
    }
    .home-page-header .home-header-text {
        font-size: 20px;
        line-height: 1.5;
    }
}

@media (max-width: 767px) {
    .home-page-header .home-header-content {
        flex: 1 1 100%;
        max-width: 100%;
        padding-top: 36px;
        padding-bottom: 12px;
        text-align: center;
    }
    .home-page-header .home-header-img {
        flex: 1 1 100%;
        max-width: 100%;
        text-align: center;
    }
    .home-page-header .home-header-img__photo {
        left: 0 !important;
        max-height: min(50vh, 260px);
    }
    .home-page-header .home-header-title {
        font-size: clamp(1.35rem, 5.5vw, 1.65rem);
        line-height: 1.2;
    }
    .home-page-header .home-header-text {
        font-size: 17px;
        line-height: 1.45;
    }
    .home-page-header .button-box .thm-btn {
        float: none !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-right: 0 !important;
    }
    .home-page-header .home-header-talk {
        font-size: 17px !important;
        padding-top: 10px !important;
    }
    .home-page-header .home-header-content > .row {
        margin-top: 18px !important;
    }
}

/* Challenges */
.section-home-challenges {
    background: #ffffff;
    padding-top: 120px;
    padding-bottom: 90px;
}
.section-home-challenges__title {
    padding-bottom: 10px;
}
.section-home-challenges__subtitle {
    padding-bottom: 25px;
}
.home-challenges-copy {
    padding-right: 110px;
}
.home-challenges-list {
    padding-right: 90px;
}
.home-challenges-side-img {
    padding-top: 5px;
    padding-left: 5px;
    padding-right: 0;
    margin-left: 0;
}
@media (min-width: 992px) {
    .home-challenges-side-img {
        margin-left: -30px;
    }
}
@media (max-width: 991px) {
    .section-home-challenges {
        padding-top: 64px;
        padding-bottom: 56px;
    }
    .home-challenges-copy,
    .home-challenges-list {
        padding-right: 0;
    }
    .home-challenges-side-img {
        margin-left: 0;
        padding-top: 24px;
        max-width: 520px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Services grid (home) */
@media (max-width: 991px) {
    .home-services .service-padding-top {
        min-height: 0;
    }
}

/* Founder message */
.founder-message-card {
    background-color: #ffffff;
    padding: 220px 100px 60px;
}
.founder-message-photo {
    float: right;
    width: 200px;
    max-width: 42vw;
    height: auto;
    margin-right: 70px;
    margin-top: -150px;
}
.founder-message-quote {
    font-size: 17px;
    padding-right: 60px;
}
.founder-message-signature {
    width: 190px;
    max-width: 55%;
    height: auto;
}
@media (max-width: 991px) {
    .founder-message-card {
        padding: 120px 28px 48px;
    }
    .founder-message-photo {
        float: none;
        display: block;
        margin: -100px auto 20px;
    }
}
@media (max-width: 575px) {
    .founder-message-card {
        padding: 100px 18px 40px;
    }
    .founder-message-photo {
        margin-top: -72px;
    }
    .founder-message-quote {
        padding-right: 0;
    }
}

@media (max-width: 991px) {
    .section-about-team {
        padding-top: 72px !important;
        padding-bottom: 72px !important;
    }
    .section-getting-started {
        padding-top: 64px !important;
        padding-bottom: 56px !important;
    }
}
@media (max-width: 575px) {
    .section-about-team {
        padding-top: 56px !important;
        padding-bottom: 56px !important;
    }
    .section-getting-started {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }
    .section-founder-message {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }
}

@media (max-width: 767px) {
    .section-getting-started .button-box {
        padding-left: 0 !important;
        text-align: center;
    }
}

/* Service areas */
.service-areas-heading-wrap {
    margin-bottom: 20px;
}
.service-areas-intro {
    padding-top: 30px;
    padding-bottom: 40px;
    padding-left: 160px;
    padding-right: 160px;
}
.service-areas-cities {
    font-weight: 600;
    font-size: 21px;
    padding-top: 60px;
    padding-bottom: 40px;
    padding-left: 50px;
    padding-right: 24px;
    background-color: #ffffff;
    border: 1px solid #C6C6C6;
}
.service-areas-list-col {
    padding-right: 5px;
}
@media (max-width: 1199px) {
    .service-areas-intro {
        padding-left: 24px;
        padding-right: 24px;
    }
    .service-areas-list-col {
        margin-bottom: 24px;
        padding-right: 0;
    }
}
@media (max-width: 767px) {
    .service-areas-intro {
        padding-top: 16px;
        padding-bottom: 24px;
    }
    .service-areas-cities {
        font-size: 17px;
        padding-top: 36px;
        padding-bottom: 28px;
        padding-left: 16px;
        padding-right: 12px;
    }
    .section-service-areas .map-list-item {
        font-size: 17px;
        margin-bottom: 16px;
        line-height: 1.35;
    }
}
.home-google-map {
    min-height: 280px;
    height: 360px !important;
}
@media (min-width: 1200px) {
    .home-google-map {
        height: 470px !important;
    }
}

/* Testimonials carousel — keep arrows on-screen on small viewports */
@media (max-width: 767px) {
    .home-testimonials .main-content .owl-theme .custom-nav .owl-prev {
        left: 0;
    }
    .home-testimonials .main-content .owl-theme .custom-nav .owl-next {
        right: 0;
    }
    .home-testimonials .testimonials-one__single {
        min-height: 0;
        padding-left: 16px;
        padding-right: 16px;
    }
}
