/* ==========================================================================
   HOME PAGE
   ========================================================================== */

.mv-section {
    padding: 96px 0 !important;
}

.mv-text>h1 {
    font-family: var(--marcellus-font);
    font-size: clamp(48px, 6.7vw, 96px);
    font-weight: 400;
    color: var(--text-accent);
    line-height: 1.084;
    letter-spacing: 0.5px;
    margin-bottom: 28px;
}

.mv-text>p {
    color: var(--text-body);
    font-size: clamp(16px, 1.4vw, 20px);
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 40px;
}

#call-now {
    box-shadow: 0px 24px 64px 0px #5E08262E;
    border-radius: 24px;
    background-color: #ffffff;
}

.mv-section .section-content {
    position: unset !important;
}

.mv-left {
    margin-top: -12px;
}

.mv-left>div:first-child {
    max-width: 100%;
    flex-basis: 100%;
    position: relative;
    z-index: 1;
}

.mv-flower {
    position: absolute !important;
    left: -127px;
    top: 0;
}

.mv-row>div,
.mv-row>div>div {
    position: unset;
}

.mv-right {
    position: relative;
}

.mv-above {
    position: relative;
    z-index: 1;
    padding-bottom: 0 !important;
}

.welcome-c1 {
    position: absolute !important;
    z-index: 1;
    top: -17px;
    left: -68px;
}

.welcome-text>h2 {
    color: var(--text-heading);
    font-family: var(--marcellus-font);
    font-size: clamp(28px, 3.34vw, 48px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.17;
    margin-bottom: 24px;
}

.welcome-text>p {
    color: var(--text-body);
    font-size: clamp(16px, 1.4vw, 20px);
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 40px;
}

.welcome-text>p+p {
    margin-top: 14.4px;
}

.welcome-icon {
    aspect-ratio: 1;
    max-width: 24px !important;
}

.welcome-contact-info>p {
    color: var(--text-heading);
    font-size: clamp(16px, 1.4vw, 20px);
    font-weight: 500;
    line-height: 1.6;
}

.welcome-contact-leftcol {
    max-width: fit-content !important;
    margin-right: 12px !important;
}

.welcome-single-contact {
    align-items: center !important;
}

.welcome-single-contact+.welcome-single-contact {
    margin-top: 12px;
}

.welcome-time-working {
    margin-top: 24px;
}

.welcome-time-working>p {
    color: var(--text-body);
    font-size: clamp(16px, 1.4vw, 20px);
    font-weight: 400;
    line-height: 1.6;
}

.welcome-time-working>p+p {
    margin-top: 12px;
}

.welcome-contact-leftcol {
    min-height: 32px;
}

.welcome-left-row {
    position: relative;
}

.welcome-left-row>div:nth-child(1) {
    position: absolute;
    z-index: 1;
}

.welcome-left-row>div:nth-child(2) {
    position: absolute;
    z-index: 0;
}

.welcome-left-row>div:nth-child(3) {
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
}

.flower-bud {
    position: absolute !important;
}

.service-img {
    margin-bottom: 24px !important;
}

.service-img>div {
    max-width: 110px;
    aspect-ratio: 1;
}

.service-text>h2 {
    color: var(--text-white);
    font-size: clamp(20px, 1.7vw, 24px);
    font-weight: 500;
    line-height: 1.33;
    letter-spacing: 0.4px;
    margin-bottom: 24px;
}

.service-text>p {
    color: var(--text-white);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}

.signature-left>h2 {
    color: var(--text-accent);
    font-family: var(--marcellus-font);
    font-size: clamp(24px, 3.34vw, 48px);
    font-weight: 400;
    line-height: 1.17;
    letter-spacing: 0;
    margin-bottom: 0;
}

.signature-right>p {
    color: var(--text-body);
    font-size: clamp(16px, 1.4vw, 20px);
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 40px;
}

.signature-right>p+p {
    margin-top: 14.4px;
}

.call-us {
    padding: 15px 33.1px !important;
}

.call-us:hover {
    background-color: var(--primary-strong) !important;
    border-color: var(--primary-strong);
}

.client-section {
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.client-title>h2 {
    color: var(--text-heading);
    font-family: var(--marcellus-font);
    font-size: clamp(24px, 3.34vw, 48px);
    font-weight: 400;
    line-height: 1.17;
    margin-bottom: 64px;
}

.testimonials-icon {
    aspect-ratio: 1;
    width: 40px;
    flex-shrink: 0;
}

.testimonials-wrapper {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.testimonials-text {
    color: var(--text-body);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0;
    margin-bottom: 24px;
}

.testimonials-user {
    display: flex;
    align-items: center;
    gap: 12px;
}

.testimonials-avatar {
    aspect-ratio: 1;
    width: 44px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.testimonials-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonials-name {
    color: var(--text-heading);
    font-weight: 500;
    font-size: clamp(16px, 1.4vw, 20px);
    line-height: 1.6;
    letter-spacing: 0;
    margin-bottom: 4px;
}

.testimonials-moreinfo {
    color: var(--text-accent);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    margin-bottom: 0;
}

.client-wrapper>div {
    padding: 0 !important;
}

.client-row {
    background-color: #FDF3E0;
    border-radius: 16px;
    padding: 64px;
    max-width: 1200px !important;
}

.client-row>div {
    padding: 0 !important;
}

.client-comment {
    flex-flow: unset !important;
    align-items: center;
}

.gallery-text>h2 {
    color: var(--text-heading);
    font-family: var(--marcellus-font);
    font-size: clamp(24px, 2.8vw, 40px);
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 40px;
}

@media screen and (min-width: 1300px) {
    .welcome-right {
        margin-left: 34px !important;
    }
}

@media screen and (min-width: 1200px) {
    .service-list>div {
        padding-bottom: 14.2px !important;
    }

    .service-list>div:nth-child(2) {
        margin: 0 34px;
    }
}

@media screen and (min-width: 1025px) {
    .mv-left>div:first-child {
        max-width: 598px;
        margin-top: 12.2px;
        padding-bottom: 0 !important;
    }

    .mv-row>div:first-child {
        padding-bottom: 0 !important;
    }

    .mv-left>div+div {
        max-width: 754px;
        width: 754px;
    }

    .mv-right {
        padding-bottom: 0 !important;
    }

    .mv-above {
        max-width: 598px !important;
        flex-basis: 598px !important;
    }

    .welcome-c1 {
        max-width: 462px !important;
        flex-basis: 462px !important;
    }

    .welcome-c2 {
        max-width: 688px !important;
        flex-basis: 688px !important;
    }

    .welcome-left {
        max-width: 688px !important;
        flex-basis: 688px !important;
        margin-top: 56.5px !important;
    }

    .welcome-right {
        max-width: 508px !important;
        flex-basis: 508px !important;
        padding-bottom: 0 !important;
    }

    .flower-bud {
        max-width: 118.7px;
        bottom: -14px;
        right: 0;
    }

    .service-list>div {
        padding-bottom: 0 !important;
    }

    .service-item {
        max-width: 387.33px !important;
    }

    .signature-left-col {
        padding-right: 32px !important;
        padding-bottom: 0 !important;
    }

    .signature-right-col {
        padding-left: 32px !important;
        padding-bottom: 0 !important;
    }

    .signature-right {
        max-width: 568px;
        margin-top: 8px;
    }

    .client-left {
        padding-bottom: 0 !important;
    }

    .client-right {
        margin-left: 49px !important;
        padding-bottom: 0 !important;
    }

    .client-wrapper {
        flex-flow: unset !important;
        justify-content: center;
        gap: 64px;
    }
}

/* Tablet */

@media screen and (min-width: 768px) and (max-width: 1200px) {
    .welcome-c1 {
        max-width: 456px !important;
        flex-basis: 456px !important;
    }

    .flower-bud {
        max-width: 118.7px;
        bottom: 76.1px;
        right: -97.7px;
    }

    .welcome-row {
        flex-flow: unset !important;
    }

    .welcome-left-row {
        justify-content: center;
        position: relative;
    }

    .welcome-left-row>div:nth-child(1) {
        position: unset;
        margin-top: -55px;
    }

    .welcome-left-row>div:nth-child(2) {
        left: unset;
        top: unset;
    }

    .welcome-left-row>div:nth-child(3) {
        left: unset;
        top: unset;
    }

    .welcome-left {
        max-width: 100% !important;
    }

    .welcome-right {
        max-width: 100% !important;
    }

    .welcome-text {
        margin-left: unset !important;
        max-width: 100%;
    }

    .flower-bud {
        bottom: 0;
        right: 0;
        margin-bottom: 0 !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    .mv-section {
        padding: 50px 0 0 !important;
    }

    .mv-text>h1 {
        font-size: clamp(48px, 8.64vw, 72px);
        line-height: 1.1;
        margin-bottom: 32px;
    }

    .mv-text>p {
        font-size: clamp(16px, 2.16vw, 18px);
        line-height: 1.56;
        margin-bottom: 32px;
    }

    .mv-above {
        max-width: 598px !important;
        flex-basis: 598px !important;
    }

    .mv-flower {
        max-width: 458px !important;
        width: 458px !important;
        left: -78px;
    }

    .mv-row {
        flex-direction: column !important;
    }

    .mv-row>div {
        max-width: 100% !important;
    }

    .mv-row>div:first-child {
        padding-bottom: 48px !important;
    }

    .mv-left>div:first-child {
        margin-top: 22px;
    }

    .mv-left>div {
        padding-bottom: 0 !important;
    }

    .mv-right {
        padding-bottom: 72px !important;
    }

    .mv-right .mv-right-row {
        justify-content: center !important;
    }

    .welcome-row {
        flex-flow: unset !important;
        flex-direction: column !important;
    }

    .welcome-left-row>div {
        padding-bottom: 0 !important;
    }

    .welcome-left {
        padding-bottom: 48px !important;
    }

    .welcome-right {
        padding-bottom: 0 !important;
    }

    .welcome-c1 {
        top: -58px;
        left: -112px;
    }

    .welcome-c2 {
        max-width: 688px !important;
        flex-basis: 688px !important;
    }

    .welcome-left-row>div:nth-child(1) {
        margin-top: unset;
    }

    .welcome-text>h2 {
        font-size: clamp(28px, 4.32vw, 36px);
        line-height: 1.23;
        margin-bottom: 20px;
    }

    .welcome-text>p {
        font-size: clamp(16px, 2.16vw, 18px);
        line-height: 1.56;
        margin-bottom: 32px;
    }

    .welcome-contact-info>p,
    .welcome-time-working>p {
        font-size: clamp(16px, 2.16vw, 18px);
        line-height: 1.56;
    }

    .welcome-contact-leftcol {
        min-height: 28px;
    }

    .welcome-single-contact+.welcome-single-contact {
        margin-top: 8px;
    }

    .welcome-time-working {
        margin-top: 20px;
    }

    .welcome-time-working>p+p {
        margin-top: 8px;
    }

    .service-item {
        max-width: 262px !important;
        padding: 0 24px 0 !important;
    }

    .service-img {
        margin-bottom: 20px !important;
    }

    .service-text>h2 {
        margin-bottom: 20px;
        line-height: 1.4;
    }

    .signature-left-col {
        padding-bottom: 0 !important;
    }

    .signature-right-col {
        padding-bottom: 0 !important;
    }

    .signature-row {
        flex-direction: column !important;
    }

    .signature-row>div {
        max-width: 100% !important;
    }

    .signature-left {
        text-align: center !important;
    }

    .signature-left>h2 {
        margin-bottom: 32px;
        font-size: clamp(24px, 3.84vw, 32px);
        line-height: 1.25;
    }

    .signature-right>p {
        margin-bottom: 32px;
        font-size: clamp(16px, 2.16vw, 18px);
        line-height: 1.56;
    }

    .signature-left>h2>br {
        display: none;
    }

    .signature-right {
        text-align: center !important;
    }

    .signature-right-col {
        text-align: center !important;
        padding-bottom: 0 !important;
    }

    .call-us {
        padding: 15px 31.1px !important;
    }

    .client-row {
        padding: 48px;
        margin: 0 auto !important;
    }

    .testimonials-user {
        gap: 8px;
    }

    .client-title>h2 {
        margin-bottom: 48px;
    }

    .testimonials-text {
        margin-bottom: 20px;
    }

    .testimonials-name {
        font-size: clamp(16px, 2.16vw, 18px);
        line-height: 1.56;
    }

    .client-wrapper {
        flex-flow: unset !important;
        justify-content: center;
        gap: 48px;
    }

    .testimonials-wrapper {
        gap: 20px;
    }

    .client-section {
        padding: 72px 48px !important;
    }

    .gallery-text>h2 {
        margin-bottom: 32px;
        font-size: clamp(24px, 3.84vw, 32px);
        line-height: 1.25;
    }

    .btn-callnow {
        padding: 15px 31.3px !important;
    }
}

@media screen and (max-width: 767px) {
    #call-now {
        padding: 48px 24px !important;
    }

    .mv-section {
        padding: 56px 0 0 !important;
    }

    .mv-text>h1 {
        font-size: 48px;
        line-height: 1.17;
        margin-bottom: 24px;
    }

    .mv-text>p {
        font-size: 16px;
        margin-bottom: 24px;
        line-height: 1.5;
    }

    .mv-row {
        flex-flow: unset !important;
        flex-direction: column !important;
    }

    .mv-row>div {
        max-width: 100%;
        flex-basis: 100%;
    }

    .mv-row>div:first-child {
        padding-bottom: 32px !important;
    }

    .mv-left>div:first-child {
        padding-bottom: 0 !important;
    }

    .mv-right {
        padding-bottom: 56px !important;
    }

    .mv-right .mv-right-row {
        justify-content: center !important;
    }

    .mv-above {
        max-width: 372px !important;
        flex-basis: 372px !important;
    }

    .mv-flower {
        max-width: 320px !important;
        width: 320px !important;
        left: -72px;
    }

    .welcome-c1 {
        max-width: 234px !important;
        top: -18px;
        left: -70px;
        padding-bottom: 0 !important;
    }

    .welcome-c1 .col-inner,
    .welcome-c1 .col-inner>div,
    .welcome-c1 .img-inner {
        height: 100% !important;
    }

    .welcome-row {
        flex-direction: column !important;
    }

    .welcome-left-row {
        justify-content: center;
        position: relative;
        margin-bottom: 32px;
    }

    .welcome-left-row>div {
        padding-bottom: 0 !important;
    }

    .welcome-left-row>div:nth-child(1) {
        position: unset;
        max-width: 100%;
        flex-basis: 100%;
    }

    .welcome-left-row>div:nth-child(2) {
        left: unset;
        top: unset;
        max-width: 372px !important;
    }

    .welcome-left-row>div:nth-child(3) {
        left: unset;
        top: unset;
    }

    .welcome-left {
        max-width: 100% !important;
        padding-bottom: 0 !important;
    }

    .welcome-right {
        max-width: 100% !important;
        padding-bottom: 0 !important;
    }

    .welcome-text {
        margin-left: unset !important;
    }

    .welcome-text>h2 {
        margin-bottom: 16px;
    }

    .welcome-text>p {
        margin-bottom: 24px;
    }

    .welcome-single-contact {
        flex-flow: unset !important;
    }

    .welcome-single-contact+.welcome-single-contact {
        margin-top: 8px;
    }

    .welcome-time-working {
        margin-top: 16px;
    }

    .welcome-time-working>p+p {
        margin-top: 8px;
    }

    .flower-bud {
        bottom: 0;
        right: 0;
        max-width: 118px;
        margin-bottom: 0 !important;
    }

    .service-list {
        flex-direction: column !important;
    }

    .service-list>div {
        max-width: 100% !important;
    }

    .service-list>div:last-child {
        padding-bottom: 0 !important;
    }

    .service-item {
        padding-bottom: 32px !important;
    }

    .service-img {
        margin-bottom: 16px !important;
    }

    .service-text>h2 {
        margin-bottom: 16px;
        line-height: 1.4;
    }

    .service-text>p {
        font-size: 14px;
        line-height: 1.43;
    }

    .signature-row {
        flex-direction: column !important;
    }

    .signature-row>div {
        max-width: 100% !important;
        padding-bottom: 0 !important;
    }

    .signature-left {
        text-align: center !important;
    }

    .signature-left-col {
        margin-bottom: 32px !important;
    }

    .signature-left>h2>br {
        display: none;
    }

    .signature-right {
        text-align: center !important;
    }

    .signature-right-col {
        text-align: center !important;
        padding-bottom: 0 !important;
    }

    .signature-right>p {
        margin-bottom: 24px;
        line-height: 1.5;
    }

    .call-us {
        padding: 15px 31.1px !important;
    }

    .client-row {
        padding: 32px;
    }

    .testimonials-user {
        gap: 8px;
    }

    .client-wrapper {
        flex-direction: column !important;
        gap: 32px;
    }

    .client-wrapper>div {
        max-width: 100% !important;
    }

    .testimonials-text {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .testimonials-name {
        line-height: 1.5;
    }

    .testimonials-moreinfo {
        font-size: 14px;
        line-height: 1.43;
    }

    .testimonials-wrapper {
        gap: 16px;
    }

    .client-title>h2 {
        margin-bottom: 32px;
    }

    .client-section {
        padding: 56px 15px !important;
    }

    .grid-col-1 {
        max-height: unset;
    }

    .gallery-text>h2 {
        margin-bottom: 24px;
        line-height: 1.33;
    }

    .btn-callnow {
        padding: 15px 31.3px !important;
    }
}