/* Custom page CSS
-------------------------------------------------- */
:root {
    --bs-border-color: #8da8c8;
}

.navbar {
    --bs-navbar-nav-link-padding-x: 20px;
    --bs-navbar-padding-y: 15px;
}

.navbar-dark {
    --bs-navbar-color: #fff;
    --bs-navbar-active-color: #fae12b;
    --bs-navbar-hover-color: #fae12b;
}

.navbar-toggler {
    border-radius: 0;
}

.nav-link {
    --bs-nav-link-font-size: 16px;
}

.bg-dark {
    background: #153a61 !important;
}

.light-blue-bg {
    background-color: #f0f6fe;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Poppins", serif;
    font-weight: 700;
}

.btn {
    --bs-btn-border-radius: 0;
    --bs-btn-padding-x: 34px;
    --bs-btn-padding-y: 18px;
    --bs-btn-font-size: 18px;
}

.btn-primary {
    --bs-btn-bg: #3e90fd;
    --bs-btn-border-color: #3e90fd;
}

.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}

.form-control {
    border-color: #abcffe;
    min-height: 56px;
    border-radius: 0;
}

.navbar-toggler:focus {
    box-shadow: 0 0 0 1px;
}

.required {
    color: #ff2a00;
}

main>.container {
    padding: 60px 15px 0;
}

body {
    font-family: "Rubik", serif;
    font-weight: normal;
    color: #293039;
}

.navbar-nav .nav-item:first-child .nav-link {
    padding-left: 0;
}

.logo img {
    max-width: 145px;
}

.header-cta-info {
    margin-right: 85px;
}

.header-cta-icon {
    margin-right: 12px;
}

.header-cta-text p {
    font-size: 18px;
    margin-bottom: 5px;
    font-weight: 600;
}

.header-cta-text span,
.header-cta-text a {
    font-size: 14px;
    color: #245f9d;
}
.header-cta-text a {    
    text-decoration: none;
}
.header-cta-text a:hover,
.header-cta-text a:active,
.header-cta-text a:focus {    
    text-decoration: underline;
}

.social-icons-top .social-icons-link img {
    max-height: 16px;
}

.social-icons-top .social-icons-link {
    opacity: 0.6;
}

.social-icons-top .social-icons-link:hover {
    opacity: 1;
}

.carousel-item {
    max-height: 900px;
}

.carousel-caption {
    left: 0;
}

.carousel-caption-container {
    left: 0;
    max-width: 620px;
    padding: 57px 45px 57px 0;
}

.carousel-caption-container h1 {
    font-size: 52px;
    color: #fae12b;
    margin-bottom: 16px;
}

.carousel-caption-container h2 {
    color: #fff;
    font-weight: normal;
    font-size: 37px;
}

.carousel-caption-container p {
    font-size: 20px;
    line-height: 40px;
}

.theme-band span {
    height: 11px;
    display: block;
}

.theme-band span.blue-band {
    background-color: #3e90fd;
}

.theme-band span.yellow-band {
    background-color: #fae12b;
}

.theme-band span.green-band {
    background-color: #6afe25;
}

.theme-band span.dark-blue-band {
    background-color: #30609b;
}

.services,
.what-offer,
.contact,
.footer-contact-section,
.faq,
.locations-details,
.contact-details,
.meet-team,
.therapy-services {
    padding: 132px 0;
}

.services ul li {
    font-size: 18px;
    display: flex;
    align-items: start;
    line-height: normal;
}

.services ul li:last-child {
    margin-bottom: 0 !important;
}
.banner-welcome{
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
    url(../images/services.png) no-repeat;
    background-size: cover;
    color: #fff;
}
.banner-welcome p{
    font-size: 20px;
    line-height: 36px;
    margin-bottom: 30px;
}
.banner-lotus{
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
    url(../images/banner.png) no-repeat;
    background-size: cover;
    color: #fff;
}

.what-offer .card {
    border-radius: 0;
    border: 0;
    height: 100%;
}

.what-offer .card-text {
    padding: 35px;
}

.what-offer .card-text h3 {
    margin-bottom: 15px;
    font-size: 22px;
}

.what-offer .card-text p {
    color: #30609b;
    font-size: 18px;
}

.contact-me-note {
    max-width: 780px;
}
p{
    line-height: 28px;
}
p a{
    color: #fae12b;
    text-decoration: none;
}
p a:hover{
    text-decoration: underline;
}

section h2 {
    color: #3e90fd;
    font-size: 45px;
    font-weight: 700;
}

.additional-contact .footer-content span {
    font-size: 14px;
}

.additional-contact .footer-content p,
.additional-contact .footer-content a {
    font-size: 20px;
    font-weight: 700;
    color: #293039;
    margin-bottom: 0;
    text-decoration: none;
}

.additional-contact .footer-content a:hover {
    text-decoration: underline;
}

footer {
    color: #fff;
}

.bg-footer {
    background-color: #30609b;
}

.footer-logo img {
    max-height: 153px;
}

footer h5 {
    font-size: 26px;
}

footer ul li {
    font-size: 18px;
    padding: 12px 0;
}

footer ul li a {
    color: #fff;
    text-decoration: none;
}

footer ul li a:hover {
    text-decoration: underline;
}

.social-icons-wrapper.right .social-icon {
    margin-left: 10px;
    margin-right: 0;
}

.social-icon {
    display: inline-block;
    margin: 0 7px;
}

.social-icon img {
    max-height: 15px;
}

.social-icon a {
    display: inline-block;
    border-radius: 500px;
    padding-top: 5px;
    text-align: center;
    width: 38px;
    height: 38px;
    color: #fff;
    background-color: #3e90fd;
}

.social-icon a:hover {
    background-color: #3782e6;
}

.copyright {
    font-size: 14px;
}

.banner .inner-banner {
    background-size: cover;
    background-position: center center;
    height: 376px;
    color: #fff;
}

.faq-banner {
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
        url(../images/banner-inner-faq.jpg) no-repeat;
}

.locations-banner {
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
        url(../images/banner-inner-locations.jpg) no-repeat;
}

.contact-banner {
background: #4e99fc;
}

.services-banner {
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
        url(../images/services-banner.jpg) no-repeat;
        color: #fff;
        background-size: cover;
}
.about-banner {
    background: linear-gradient(rgb(5, 29, 48, 0.8), rgb(128, 128, 128, 0.4)),
        url(../images/about-banner.png) no-repeat;
        background-size: cover;
        color: #fff;
}
.about-banner h2{
    color: #fae12b;
}
.banner .inner-banner h1 {
    font-size: 30px;
}

.banner .inner-banner .breadcrumb {
    color: #fff;
}

.banner .inner-banner .breadcrumb .breadcrumb-item {
    color: #fff;
    font-family: "Poppins", serif;
}

.banner .inner-banner .breadcrumb .breadcrumb-item a {
    color: #cecece;
    text-decoration: none;
}

.banner .inner-banner .breadcrumb .breadcrumb-item a:hover {
    text-decoration: underline;
}

.breadcrumb-item+.breadcrumb-item::before {
    color: #fff;
    content: ">";
}

.inner-page h1 {
    font-size: 37px;
    font-weight: bold;
    margin-bottom: 25px;
}

.inner-page h3 {
    color: #fae12b;
    font-size: 20px;
    font-weight: bold;
    padding: 40px 0;
    margin-bottom: 40px;
    border-bottom: 1px solid #fae12b;
}

.inner-page .accordion-item {
    border: none;
}

.inner-page .accordion-button {
    font-size: 20px;
    font-weight: bold;
    padding: 40px 0;
    border-bottom: 1px solid #cbcbcb;
}

.inner-page .accordion-button:focus {
    box-shadow: none;
}

.inner-page .accordion-button:not(.collapsed) {
    background-color: inherit;
    box-shadow: none;
    color: #3e90fd;
}

.inner-page .accordion-button::after {
    background-image: url(../images/faq-expand.svg);
    margin-right: 10px;
}

.inner-page .accordion-button:not(.collapsed)::after {
    background-image: url(../images/faq-collapse.svg);
}

.inner-page .accordion-body {
    padding: 40px 0;
}

.inner-page .accordion-body p {
    line-height: 38px;
}

.locations-details .card {
    padding: 50px 40px;
    border-radius: 0;
}

.locations-details .card .card-title {
    font-size: 25px;
    padding-bottom: 15px;
    color: #293039;
}

.locations-details .card .card-text {
    font-size: 20px;
    line-height: 35px;
    color: #293039;
}

.locations-details img {
    border: 10px solid #f0f6fe;
    border-radius: 50%;
    width: 110px;
}

.locations-content {
    min-height: 500px;
}

.locations-content h3 {
    font-size: 25px;
    margin-bottom: 32px;
}

.locations-content h3 span {
    font-size: 25px;
    font-family: "Rubik", serif;
    font-weight: normal;
}

.locations-content ul li {
    font-size: 18px;
    display: flex;
    align-items: start;
    line-height: normal;
}

.locations-content-text {
    padding: 80px 90px;
}

.map-container {
    min-height: 450px;
    height: 100%;
}

/*owl carousel*/

.owl-carousel .owl-stage {
    display: flex;
    margin: auto;
}

.owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
    justify-content: center;
}

/*.owl-carousel .caption {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
}*/

.owl-carousel .flex-text {
    flex-grow: 1;
}

.owl-carousel .thumbnail {
    display: flex;
    flex-direction: column;
    margin: 0 2px;
    border: 1px solid #cbcbcb;
    padding: 38px;
    text-align: center;
    align-self: start;
    width: 100%;
    height: 100%;
}

.owl-carousel .thumbnail img {
    width: 100%;
    height: auto;
    object-fit: cover;
    max-width: initial;
}

.caption h4 {
    font-size: 20px;
    margin-top: 35px;
}

.caption p {
    font-size: 18px;
    font-weight: normal;
    color: #30609b;
}

.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 40px;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: #3e90fd;
}

.owl-theme .owl-dots .owl-dot span {
    background: #bcdaff;
}

.contact-details .footer-content p {
    font-size: 18px;
    font-weight: 700;
    line-height: 38px;
}
.contact-details .footer-content p span{
    padding: 0 10px;
}

.contact-details .footer-content a {
    color: #293039;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}

.contact-details .footer-content a:hover {
    text-decoration: underline;
}

.contact-map-container {
    height: 835px;
}

.therapy-list {
    padding: 0 30px;
    line-height: 60px;
    font-weight: 500;
}


.therapy-list ul li {
    display: flex;
    align-items: start;
    line-height: normal;
}

.therapy-list ul li:last-child {
    margin-bottom: 0 !important;
}

.error {
    color: red !important;
    font-size: 0.9rem;
    margin-top: 5px;
}
.modal-content{
    border-radius: 20px;
    border: none;
}
.modal-body .modal-top{
    background: #3E90FD;
    padding: 40px;
    border-radius: 20px 20px 0 0;
    color:#fff;
    font-size: 32px;
    font-weight: bold;
}
.modal-body .modal-top.error-alert{
    background: #E34343;
}
.modal-body .modal-top img{
    margin-bottom: 20px;
}
.modal-body .modal-text{
    padding: 40px;
}
.modal-body .modal-text p{
    max-width: 387px;
    margin: 0 auto 32px auto;
}
.modal-body .modal-text button{
    min-width: 148px;
}
.modal-body .modal-text.error-alert button{
    background: #E34343;
    border-color: #E34343;
}
.modal-body .modal-text.error-alert button:hover,
.modal-body .modal-text.error-alert button:focus,
.modal-body .modal-text.error-alert button:active{
    background:#CB3737;
    border-color: #CB3737;
}

@media only screen and (max-width: 991px) {
    section h2 {
        font-size: 35px;
    }

    .inner-page h1 {
        font-size: 30px;
    }

    .services,
    .what-offer,
    .contact,
    .footer-contact-section,
    .faq,
    .locations-details,
    .contact-details,
    .meet-team,
    .therapy-services {
        padding: 50px 0;
    }

    .carousel-caption-container {
        border-width: 8px;
    }

    .carousel-caption-container h1 {
        font-size: 36px;
    }

    .carousel-caption-container h2 {
        font-size: 22px;
    }

    .carousel-caption-container p {
        font-size: 17px;
        line-height: 28px;
    }

    .carousel-caption-container {
        padding: 25px;
    }

    .header-cta-info {
        margin-right: 35px;
    }

    .theme-band span {
        height: 7px;
    }

    .locations-details .card {
        padding: 30px 20px;
    }

    .locations-content-text {
        padding: 50px;
    }
    .w-lg-100 {
        width: 100%!important;

    }
}

@media only screen and (max-width: 767px) {
    .therapy-list-item {
        margin-right: 40px;
    }

    .therapy-list {
        padding: 0 15px;
    }

    .header-cta-text p {
        font-size: 16px;
        margin-bottom: 0;
    }

    .header-cta-icon img {
        width: 24px;
    }

    .header-cta-text {
        line-height: normal;
    }

    .header-cta-info {
        margin-bottom: 15px;
    }

    .header-cta-info:last-child {
        margin-bottom: 0;
    }

    .contact-map-container {
        height: 450px;
    }
}

@media only screen and (max-width: 600px) {
    .banner .inner-banner {
        height: 300px;
    }

    .banner .inner-banner h1 {
        font-size: 25px;
    }

    .logo img {
        max-width: 105px;
    }

    .locations-content-text {
        padding: 50px 12px;
    }

    .carousel-item {
        height: 300px;
    }

    .carousel-item img {
        height: 100%;
        object-fit: cover;
    }

    .header-cta-text p {
        font-size: 14px;
    }

    .header-cta-text span {
        font-size: 12px;
    }

    .carousel-caption-container h1 {
        font-size: 25px;
    }

    .carousel-caption-container h2 {
        font-size: 18px;
    }

    .carousel-caption-container p {
        font-size: 14px;
        line-height: 20px;
    }

    .carousel-caption-container {
        padding: 12px;
    }
    .contact-details .footer-content p span{
        display: none;
    }
    .modal-body .modal-top{
        padding: 30px;
    }
    .modal-body .modal-text{
        padding: 30px;
    }
}