@media screen and (min-width:991px) {
    section.hero .hero_image {
        width: 366px;
        bottom: 51px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
    }



    .shape {
        position: absolute;
        z-index: 10;
        bottom: 13px;
    }

}


@media screen and (min-width:1100px) {
    section.hero .hero_image {
        width: 519px;
        bottom: 51px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
    }



    .shape {
        position: absolute;
        z-index: 10;
        bottom: 4px;
    }

}


@media screen and (min-width:1400px) {
    section.hero .hero_image {
        width: 480px;
        bottom: 51px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
    }



    .shape {
        position: absolute;
        z-index: 10;
        bottom: -2px;
    }
}






@media screen and (min-width:1660px) {
    section.hero .hero_image {
        width: 600px;
        bottom: 51px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
    }

    .shape {
        position: absolute;
        z-index: 10;
        bottom: -24px;
    }

}




@media screen and (max-width:1300px) {
    .footer-section .bottom_1 {
        position: absolute;
        top: -69px;
    }

    .font_fw {
        font-size: 20px !important;
    }

    .font_fw2 {
        font-size: 16px !important;
    }
}



@media screen and (max-width:1100px) {
    section.hero .chat-bubble {
        left: 0 !important;
        right: 0 !important;
        margin: 0 auto !important;
        top: 39px;
        font-size: 16px;
        white-space: nowrap;
    }

    section.overview .quote-text {
        font-size: 22px;
        line-height: 1.5;
        position: relative;
        /* font-weight: 400; */
    }

    section.overview .quote-text svg {
        position: absolute;
        left: -103px;
        top: -41px;
        width: 153px;
        height: 74px;
    }

    section.overview .stat-label {
        font-size: 17px;
        font-weight: 500;
        color: #4a3631;
    }

    section.overview .stat-number {
        font-size: 30px;
    }

    section.overview .feature-desc {
        font-size: 16px;
        color: #6e5853;
    }

    section.overview {
        padding: 7px 0 50px 0;
    }

    section.service .top_1 {
        position: absolute;
        top: -53px;
        z-index: 0;
    }

    .heading {
        color: #3E2723;
        font-size: 40px;
    }

    .sub-text {
        color: #3E2723;
        font-size: 18px;
    }

    section.service h4 {
        font-size: 20px !important;
    }

    section.service p {
        font-size: 14px !important;
    }

    .btn-session {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 34px;
        background-color: #df6283;
        color: #ffffff;
        padding: 12px 30px;
        border-radius: 100px;
        font-size: 16px;
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        text-decoration: none;
        border: none;
        cursor: pointer;
        outline: none;
        -webkit-box-shadow: 0 4px 14px rgba(223, 98, 131, 0.25);
        box-shadow: 0 4px 14px rgba(223, 98, 131, 0.25);
        -webkit-transition: background-color 0.2s ease,
            -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            -webkit-box-shadow 0.2s ease;
        transition: background-color 0.2s ease,
            -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            -webkit-box-shadow 0.2s ease;
        -o-transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            background-color 0.2s ease,
            box-shadow 0.2s ease;
        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            background-color 0.2s ease,
            box-shadow 0.2s ease;
        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            background-color 0.2s ease,
            box-shadow 0.2s ease,
            -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275),
            -webkit-box-shadow 0.2s ease;
    }

    section.service {
        padding: 18vh 0;
    }

    .map-section {
        padding: 40px 0;
        /* background-color: #fbf9f6; */
        text-align: center;
    }

    .pin-newzealand {
        top: 87%;
        left: 86%;
    }

    .pin-dubai {
        top: 64%;
        left: 46%;
    }

    .pin-italy {
        top: 56%;
        left: 46%;
    }

    .pin-poland {
        top: 48%;
        left: 49%;
    }

    .dynamic-accent-text {
        color: #df6283;
        font-size: 22px;
        font-weight: 500;
        text-align: center;
        margin-bottom: -10px;
        min-height: 48px;
        -webkit-transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
        transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
        -o-transition: opacity 0.4s ease, transform 0.4s ease;
        transition: opacity 0.4s ease, transform 0.4s ease;
        transition: opacity 0.4s ease, transform 0.4s ease, -webkit-transform 0.4s ease;
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    .section-title {
        font-size: 2rem;
        font-weight: 500;
        line-height: 1.25;
        color: var(--text-dark);
        margin-bottom: 28px;
    }

    .approach-name {
        font-size: 18px;
        font-weight: 600;
        color: #3b2824;
        margin-bottom: 12px;
        line-height: 1.3;
    }

    .approach-desc {
        font-size: 14px;
        line-height: 1.5;
        color: #6e5853;
        margin-bottom: 0;
    }

    .illustration-overlay {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 110px;
        height: 110px;
        opacity: 1;
        pointer-events: none;
        z-index: 1;
        mix-blend-mode: multiply;
    }

    .tall-card {
        min-height: 291px;
    }

    .support-section {
        position: relative;
        padding-top: 89px;
        padding-bottom: 12px;
    }

    .testimonial-text {
        font-size: 14px;
        line-height: 1.6;
        color: #6e5853;
        margin-bottom: 30px;
        font-weight: 400;
    }

    .testimonial-card {
        background-color: #ffffff;
        border-radius: 24px;
        padding: 24px;
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        border: none;
        border: 1px solid #ededed;
        /* box-shadow: 0 8px 24px rgba(74, 54, 49, 0.03); */
        -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
        transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
        -o-transition: transform 0.3s ease, box-shadow 0.3s ease;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
    }

    .testimonials-section {
        position: relative;
        overflow: hidden;
        padding: 70px 0;
    }

    section.about-section .top_1 {
        position: absolute;
        top: -57px;
    }

    section.about-section {
        position: relative;
        background-color: #F7F0E6;
        padding: 100px 0;
        overflow: hidden;
    }

    .section-desc {
        font-size: 16px;
        line-height: 1.7;
        color: var(--text-muted);
        margin-bottom: 40px;
        max-width: 580px;
    }

    section.about-section .bottom_1 {
        position: absolute;
        bottom: -53px;
    }

    section.FAQ {
        padding: 0 0 42px 0;
    }

    .footer-section .bottom_1 {
        position: absolute;
        top: -51px;
    }


}




@media screen and (min-width: 768px) and (orientation: portrait) {
       section.hero {
    height:calc(80vh - 4rem);
}
.shape {
    position: absolute;
    z-index: 10;
    bottom: 16px;
}
}


@media screen and (max-height:650px) {
    section.hero {
    height: calc(100vh - 20px);
}
}

@media screen and (max-width:991px) {
    section.hero .hero_image {
        width: 432px;
        bottom: 51px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        position: absolute;
        z-index: 1;
    }

    .modal-title-custom {
        font-size: 26px;
    }

    .vr {
        display: none;
    }

    .py-6 {
        padding-top: 3rem !important;
        padding-bottom: 5rem !important;
    }

    .therapy-contact-section .main-heading {
        color: #4A3A35;
        font-size: 2rem;
        line-height: 1.2;
    }

    .therapy-contact-section {
        padding-top: 39px;
    }

    .footer-section .bottom_1 {
        position: absolute;
        top: -36px;
    }
}



@media screen and (max-width:650px) {
    section.hero .hero_image {
        width: 90vw;
        bottom: 43px;
    }

    section.hero {
        height: 82vh;
        padding-top: 0rem;
    }

    .shape {
        position: absolute;
        z-index: 10;
        bottom: 31px;
        /* height: 87px; */

    }

    .shape img {
        height: 60px;
    }


    section.hero h1 {
        padding: 0 20px;
        font-size: 20px !important;
    }

    section.hero p {
        padding: 0 20px;
        font-size: 16px !important;
    }

    section.hero .chat-bubble {
        left: 0 !important;
        right: 0 !important;
        margin: 0 auto !important;
        top: 20px;
        padding: 8px 18px;
        font-size: 1rem;
        -webkit-transform-origin: bottom center;
        -ms-transform-origin: bottom center;
        transform-origin: bottom center;
        white-space: nowrap;
    }


    section.overview {
        padding: 0px 0;
    }

    section.overview .quote-text {
        font-size: 1.3rem;
        line-height: 1.5;
        position: relative;
        /* font-weight: 400; */
    }

    section.overview .quote-text svg {
        z-index: 100;
        position: absolute;
        left: -31px;
        top: -45px;
        width: 26px;
    }

    section.overview .stat-label {
        font-size: 1.3rem;
        font-weight: 500;
        color: #4a3631;
    }

    section.overview .stat-number {
        font-size: 3rem;
        font-weight: 600;
    }

    /* section.overview .stat-item {
      
        justify-content: center !important;
    } */

    section.service .top_1 {
        height: 116px;
        position: absolute;
        top: -28px;
        z-index: 0;
    }

    section.service {
        padding: 16vh 0;
    }

    .heading {
        color: #3E2723;
        font-size: 36px;
    }

    section.service .bottom_1 {
        position: absolute;
        bottom: -32px;
        height: 116px;

    }


    .map-section {
        padding: 50px 0;
        /* background-color: #fbf9f6; */
        text-align: center;
    }

    .sub-text {
        font-size: 16px;
    }


    .map-marker {
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
        position: static;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 20px;
        gap: 12px;
        background-color: #ffffff;
        border: 2px solid #df6283;
        padding: 8px 20px;
        border-radius: 30px;
        /* box-shadow: 0 4px 10px rgba(223, 98, 131, 0.1); */
        font-size: 14px;
        font-weight: 500;
        color: #df6283;
        white-space: wrap;
        -webkit-transform-origin: none;
        -ms-transform-origin: none;
        transform-origin: none;
        opacity: 0;
        /* Managed by GSAP */

    }

    .map-marker .marker-tooltip {
        position: static;
        opacity: 1;
        pointer-events: auto;
        border: none;
        box-shadow: none;
        padding: 0;
        margin: 0;
        transform: none;
        background-color: transparent;
        color: inherit;
        font-size: inherit;
        font-weight: inherit;
    }

    .flag-icon {
        width: 30px;
        height: 30px;
        margin: 0;
    }


    section.spoken .bottom_1 {
        position: absolute;
        bottom: -49px;
        height: 100px;
    }

    .languages-banner {
        padding: 34px 24px;
    }

    .section-title {
        font-size: 2rem;
        margin-top: 5px;
    }

    .section-desc {
        font-size: 1rem;
        line-height: 1.7;
        color: var(--text-muted);
        margin-bottom: 40px;
        max-width: 579px;
    }

    .dynamic-accent-text {
        font-size: 1.5rem;
    }

    .vector-art {
        max-width: 100%;
    }

    .languages-banner {
        margin-top: 50px;
    }

    .illustration-overlay {
        position: absolute;
        bottom: 0px;
        right: 0px;
        width: 110px;
        height: 110px;
        opacity: 1;
        pointer-events: none;
        z-index: 1;
        mix-blend-mode: multiply;
    }

    .approach-name {
        font-size: 18px;
    }

    .approach-desc {
        font-size: 14px;
        line-height: 1.5;
    }

    .approach-card {
        padding: 20px 24px;
    }

    .marquee-item {
        font-size: 1rem;
        font-weight: 500;
        color: #DF5D83;
    }

    .support-section {
        position: relative;
        padding-top: 50px;
        padding-bottom: 100px;
    }

    .marquee-container {
        padding: 12px 0;
    }

    .section-heading {
        font-size: 2.2rem;
    }

    .section-paragraph {
        font-size: 1rem;
    }

    .support-pill {
        padding: 10px 12px;
        gap: 8px;
        font-size: 12px;
    }

    .testimonials-section {
        padding: 0px 0;
    }

    section.about-section .top_1 {
        position: absolute;
        top: -43px;
        height: 120px;
    }

    section.about-section .bottom_1 {
        position: absolute;
        bottom: 0;
        height: 120px;
    }

    section.instgram {
        padding: 0;
        padding-bottom: 0;
    }


    .blob-wrapper {
        max-width: 380px;
        margin-top: 11px;
    }

    section.FAQ {
        padding: 0 0 0 0;
    }

    .therapy-contact-section .main-heading {
        color: #4A3A35;
        font-size: 1.8rem;
        line-height: 1.2;
    }

    .therapy-contact-section .timeline-number-wrapper {
        background-color: transparent;
        padding: 2px 0;
        height: 30px;
    }

    .therapy-contact-section .timeline::before {

        height: 81%;

    }

    .footer-section .bottom_1 {
        position: absolute;
        top: -50px;
        height: 100px;
    }

    .footer-section {
        background-color: #3E2723;
        margin-top: 100px;
        position: relative;
        padding-top: 87px;
        padding-bottom: 40px;
    }



    .option_box {
        overflow: hidden;
        position: fixed;
        bottom: 70px;
        right: 15px;
        width: 230px;
        height: auto;
        z-index: 10000;
        border-radius: 30px;
        background: #29032480;
        opacity: 0;
        -webkit-backdrop-filter: blur(109.5px);
        backdrop-filter: blur(109.5px);
        -webkit-transition: all 0.5s ease 0s;
        -o-transition: all 0.5s ease 0s;
        transition: all 0.5s ease 0s;
        visibility: hidden;
        display: none;
    }


    .option_box.open {
        opacity: 1;
        visibility: visible;
        display: block;
    }


    .floating-btn_1 {
        position: fixed;
        bottom: 10px;
        right: 10px;
        background: #d45d79;
        -webkit-backdrop-filter: blur(109.5px);
        backdrop-filter: blur(109.5px);
        /* Blue color from image */
        color: white;
        border-radius: 50%;
        width: 55px;
        height: 55px;
        text-align: center;
        cursor: pointer;
        z-index: 1040;
        /* Subtle shadow */
        -webkit-transition: -webkit-transform 0.2s ease-in-out;
        transition: -webkit-transform 0.2s ease-in-out;
        -o-transition: transform 0.2s ease-in-out;
        transition: transform 0.2s ease-in-out;
        transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
        /* Smooth hover effect */
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }



    .floating-btn_1.mobile {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .mobile {
        display: block;
    }



    section.about_banner .bottom_1 {
        position: absolute;
        bottom: -21px;
        z-index: 1;
        left: 0;
    }


    .font-fw-3 {
        font-size: 19px !important;
    }

    .font-fw-4 {
        font-size: 16px !important;
    }

    .practice-ethos {
        padding-top: 30px !important;
    }

    .philosophy-narrative {
        padding-bottom: 20px !important;
    }


    .outcomes-wrap {
        background: var(--cms-bg-soft);
        border-radius: 32px;
        padding: 0 !important;
        border: 1px solid var(--cms-border);
    }

    header .logo {
        width: 169px;
        object-fit: contain;
        height: 65px;
    }

    .sidebar-accordion .accordion-button:not(.collapsed) {
        padding-left: 8px;
    }

    .animation {
        animation: map 5s ease 0s infinite;
    }

    @keyframes map {
        0% {
            transform: translateY(0);
        }

        50% {
            transform: translateY(20px);
        }

        100% {
            transform: translateY(0);
        }
    }
 
    section.approach .flex{
        flex-direction: row;
        width: 100%;
        overflow-x: auto;
        gap: 20px;
    } 


   section.approach .flex::-webkit-scrollbar {
    height: 2px;
}

.approach-card {
    display: block !important;
    padding: 9px 12px;
    height: 100%;
    width: 179px;
    text-align: center;
}

section.approach .grid{
    display: flex;
    gap: 20px !important;
    
}


section.approach {
    padding: 100px 0 76px 0;
}

.box_1 {
    width: 100px;
    height: auto;
    /* border: 1px solid #2b1d1a24; */
    /* border-radius: 100%; */
    display: flex;
    margin-bottom: 10px;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
}

.box_1 img {
    width: 100%;
    object-fit: contain;
    mix-blend-mode: darken;
}

.approach-name {
    font-size: 15px;
    margin-bottom: 0;
}

.reassure-card{
    padding: 2rem 1rem;
}

.pill-grid {
    gap: 12px;
   
}

.para_2{
    font-size: 12px;
}

.modal-body {
    padding: 12px;
    max-height: 70vh;
    overflow-y: auto;
}

.therapy-card p {
    color: #6C5B57;
    line-height: 1.7;
    margin-bottom: 0;
    font-size: 14px;
}
.modal-header {
    padding: 13px 22px;
    align-items: self-start;
}

.x{
    position: relative;
    top: 15px;
    right: 10px;
}

section.about-overview {
    padding-top: 38px;
}


section.hero .avatar-wrapper {
    position: absolute;
    left: -20px;
    width: 100%;
    display: flex;
    justify-content: center;
    top: 26%;
    pointer-events: none;
}

}



@media screen and (max-width:380px) {


    section.hero {
        height:93vh;
        padding-top: 0rem;
    }

        section.hero .chat-bubble {
top: 40px;
    font-size: 15px;
  
}

}


@media screen and (max-width:320px) {
    section.hero .hero_image {
        width: 70vw;
        bottom: 43px;
    }

    section.hero {
        height:102vh;
        padding-top: 0rem;
    }

    section.hero .chat-bubble {
    left: 0 !important;
    right: 0 !important;
    margin: 0 auto !important;
    top: 57px;
    padding: 8px 18px;
    font-size: 12px;
    -webkit-transform-origin: bottom center;
    -ms-transform-origin: bottom center;
    transform-origin: bottom center;
    white-space: nowrap;
}
}