@media screen and (max-width: 1650px) {
    :root {
        --sec_space: 48px;
    }

    .main-wrapper h2 {
        font-size: 36px;
    }

    .main-wrapper h3 {
        font-size: 24px;
    }

    .main-wrapper h4 {
        font-size: 18px;
    }

    .sm-data-list p {
        font-size: 14px;
    }


    .sm-hero-sec .sm-img-col {
        max-width: 35%;
    }

    section .sm-sec-head {
        margin-bottom: 40px;
    }

    .sm-sec-head .sm-head-desc,
    .sm-sec-head .sm-desc {
        margin-top: 16px;
    }

    button.sm-btn,
    .sm-btn {
        font-size: 14px;
    }

    p {
        font-size: 14px;
    }

    .swiper-slider-wrapper {
        max-width: 88%;
        margin-inline: auto;
    }

    div.fancybox-slide--image {
        padding: calc(var(--sec_space) * 2);
    }

    .fancybox-navigation button.fancybox-button--arrow_left {
        left: 16px;
    }

    .fancybox-navigation button.fancybox-button--arrow_right {
        right: 16px;
    }

    div.fancybox-infobar {
        padding-inline: 16px;
    }

    .user-details-wrapper .sm-user-msg {
        font-size: 22px;
    }

    .sm-testimonial-name {
        font-size: 24px;
    }

    .sm-testimonial-position {
        font-size: 18px;
    }

    .main-wrapper .h1 {
        font-size: 64px;
    }

    .sm-sub-title {
        font-size: 20px;
        letter-spacing: 23%;
    }

    .input-field input,
    .input-field textarea {
        padding: 12px 16px;
        font-size: 14px;
    }

    .sm-card .sm-price p {
        font-size: 18px;
    }

    .sm-landing-sec .sec-head .sm-title {
        font-size: 64px;
    }

    .sm-landing-sec .sec-head p {
        font-size: 16px;
    }

    .sm-landing-sec .quick-links li a {
        font-size: 40px;
    }

    .sm-banner-container .sec-icon {
        width: 92px;
        height: 92px;
    }

    .sm-banner-container .sm-title {
        font-size: 56px;
    }
}

@media screen and (max-width: 1439px) {
    .container {
        width: 95%;
    }

    .main-wrapper .h1 {
        font-size: 48px;
    }

    .main-wrapper h2 {
        font-size: 32px;
    }

    .main-wrapper h3 {
        font-size: 22px;
    }

    .sm-sub-title {
        font-size: 18px;
        letter-spacing: 13%;
    }

    .sm-sec-head .sm-desc {
        max-width: 80%;
    }

    .sm-choose-card-list .sm-choose-item {
        padding: 16px;
    }

    .user-details-wrapper .sm-user-msg {
        font-size: 20px;
    }

    .sm-contactUs-sec .sm-form-col {
        padding: 40px;
    }

    .sm-filter-row {
        margin-bottom: 40px;
    }

    .sm-contact-cta-sec .sm-head-desc {
        font-size: 24px;
    }
}

@media screen and (max-width: 1024px) {
    :root {
        --sec_space: 40px;
    }

    body,
    html {
        scroll-padding-top: 55px;
    }

    .hide-in-desktop {
        display: flex;
    }

    .sm-site-logo h1 a {
        font-size: 28px;
    }

    .sm-menu nav {
        width: 100%;
        height: 100%;
        padding-top: 44px;
    }

    .sm-menu {
        position: fixed;
        top: 0;
        right: -350px;
        width: 100%;
        max-width: 320px;
        height: 100%;
        z-index: 9;
        transition: all 0.3s ease-in-out;
        background-color: var(--bg-color);
        border-left: 2px solid var(--primary);
        box-shadow: 5px 0 15px var(--primary);
        overflow: hidden;
    }

    .sm-menu::after {
        content: '';
        position: absolute;
        background: url("../images/flowerCircle.png") no-repeat;
        background-size: contain;
        opacity: 0.05;
        width: 100%;
        bottom: calc(-256px/2);
        left: 50%;
        transform: translateX(-50%);
        max-width: 256px;
        padding-top: 256px;
    }

    .show-menu .sm-menu {
        right: 0;
    }

    header nav ul {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        align-items: flex-start;
        align-content: flex-start;
        max-height: calc(100dvh - 44px);
        overflow-y: auto;
    }

    header nav ul li+* {
        margin-left: 0;
    }

    header nav ul li {
        width: 100%;
    }

    header nav ul a {
        width: 100%;
        padding: 10px 24px;
        color: var(--primary);
    }

    header nav ul a:hover,
    header nav ul li.active a {
        color: var(--accent);
    }

    .close-drawer-wrap {
        position: absolute;
        top: 16px;
        right: 16px;
    }

    .sm-testimonial-name {
        font-size: 20px;
    }

    .sm-testimonial-position {
        font-size: 16px;
    }

    .footer-wrapper>* {
        flex: auto;
    }

    .footer-wrapper {
        gap: 24px;
    }

    .footer-right-col {
        justify-content: flex-start;
    }

    .sm-sec-head .sm-desc {
        max-width: 90%;
    }

    .sm-hero-sec .sm-img-col {
        max-width: 42%;
    }

    .sm-info-sec-head .btn-wrap,
    .sm-sec-head .btn-wrap {
        margin-top: 24px;
    }

    .sec-bottom-art {
        background-position: center calc(100% - -7px);
        background-size: 64px;
    }

    .sm-card-wrap .sm-card {
        border-radius: 8px;
    }

    .sm-data-list>* {
        margin-top: 10px;
    }

    .card-footer .sm-list.sm-price {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 8px;
    }

    .card-footer .btn-wrap {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .card-footer .btn-wrap .sm-btn {
        width: 100%;
    }

    .sm-card .sm-price h4,
    .sm-card .sm-price p {
        margin-bottom: 0;
    }

    .sm-about-sec .sm-sec-head .sm-title {
        font-size: 40px;
    }

    .sm-sub-title {
        font-size: 16px;
    }

    .swiper-slider-wrapper {
        max-width: 96%;
    }

    .sm-testimonial-content .user-details-wrapper {
        padding: 24px;
        max-width: 65%;
    }

    .sm-testimonial-content .sm-img-wrapper {
        max-width: 35%;
    }

    .user-details-wrapper .sm-user-msg::before {
        top: -15px;
        left: -8px;
    }

    .sm-contactUs-sec .sm-info-col {
        max-width: 298px;
    }

    .sm-contactUs-sec .sm-form-col {
        padding: 24px;
        max-width: calc(100% - 298px);
    }

    .sm-inner-col {
        padding: 20px;
    }

    .sm-category-list {
        row-gap: 8px;
        margin-inline: -4px;
    }

    .sm-category-list .category-item {
        padding-inline: 4px;
    }

    .sm-filter-buttons {
        gap: 8px;
    }

    .sec-bg-wrapper .for-mobile-img {
        display: block;
    }

    .sec-bg-wrapper .for-desktop-img {
        display: none;
    }

    .sm-banner-container {
        padding-bottom: 16vw;
    }

    .sm-grid-row .sm-icon-box .icon {
        width: 80px;
        height: 80px;
    }

    .sm-grid-row .sm-icon-box .box-head {
        padding: 16px;
    }

    .sm-grid-row .sm-icon-box .box-head::before {
        width: 100px;
        height: 100px;
        top: -50px;
        left: -50px;
    }

    .sm-categories-vdo-filter-sec .sm-category-list .category-item {
        max-width: 33.33%;
    }

    .fancybox-inner .fancybox-slide {
        padding-inline: calc(var(--sec_space) *1.7);
    }
}

@media screen and (max-width: 991px) {
    .sm-choose-card-list .sm-choose-card {
        flex-basis: 50%;
    }

    .user-details-wrapper .sm-user-msg {
        font-size: 16px;
        margin-bottom: 40px;
    }

    .input-field textarea {
        min-height: 164px;
    }

    .sm-categories-sec .sm-categorie-item-card {
        max-width: 50%;
    }

    .sm-category-list .category-item {
        max-width: 20%;
    }

}

@media screen and (max-width: 767px) {
    :root {
        --sec_space: 32px;
    }

    .main-wrapper .h1 {
        font-size: 28px;
        line-height: 120%;
    }

    .main-wrapper h2 {
        font-size: 28px;
    }

    .main-wrapper h4 {
        font-size: 16px;
    }

    button.sm-btn,
    .sm-btn {
        padding: 10px 16px;
    }

    .sm-sec-head .sm-helloTag {
        font-size: 18px;
    }

    .container {
        width: 100%;
    }

    .sm-sec-head .sm-desc {
        max-width: 100%;
    }

    .sm-top-header .inner-wrapper {
        display: inline-block;
        width: 100%;
    }

    .sm-top-left-col {
        width: auto;
        float: right;
        margin-bottom: -24px;
    }

    header .sm-top-right-col .sm-social-links {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        row-gap: 4px;
    }

    .sm-social-btns {
        column-gap: 4px;
    }

    .sm-hero-sec .sm-info-col {
        max-width: 100%;
        padding-bottom: 24px;
    }

    .sm-hero-sec .sm-img-col {
        max-width: 100%;
    }

    .sm-card-inner-wrap .sm-card-wrap {
        max-width: 100%;
    }

    .sm-about-sec .sm-sec-head .sm-title {
        font-size: 32px;
    }

    .sm-sub-title {
        font-size: 14px;
        letter-spacing: 2px;
        word-spacing: 0;
    }

    .sm-about-sec .sm-about-me {
        margin-top: 40px;
    }

    .sm-about-me .sm-img-wrapper {
        max-width: 100%;
        position: relative;
        top: unset;
        margin-bottom: 32px;
    }

    .sm-about-sec .sm-my-info {
        max-width: 100%;
    }

    .sm-choose-card-list .sm-choose-card {
        flex-basis: 100%;
    }

    .swiper-slider-wrapper {
        max-width: 100%;
        padding: 0 0 48px 0;
    }

    .sm-swiper-nav .swiper-button-prev-sm,
    .sm-swiper-nav .swiper-button-next-sm,
    .sm-video-sec .swiper-button-prev,
    .sm-video-sec .swiper-button-next {
        width: 32px;
        height: 32px;
        border-radius: 6px;
        top: unset;
        bottom: 0;
    }

    .sm-swiper.swiper-container {
        border-radius: 8px;
    }

    .sm-swiper .video-container {
        border-radius: 8px;
    }

    .swiper-slider-wrapper::before {
        top: -50px;
        left: -90px;
        width: 150px;
        padding-top: 150px;
    }

    .swiper-slider-wrapper::after {
        bottom: 0px;
        right: -90px;
        width: 150px;
        padding-top: 150px;
    }

    .sm-swiper-nav .swiper-button-prev-sm::after,
    .sm-swiper-nav .swiper-button-next-sm::after,
    .sm-video-sec .swiper-button-prev::after,
    .sm-video-sec .swiper-button-next::after {
        font-size: 16px;
    }

    .sm-video-sec .swiper-button-prev-sm,
    .sm-video-sec .swiper-button-prev {
        left: calc(50% - 38px);
    }

    .sm-swiper-nav .swiper-button-next-sm,
    .sm-video-sec .swiper-button-next {
        right: calc(50% - 38px);
    }

    .sm-gallery-wrap {
        grid-gap: 8px;
        grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
        grid-auto-rows: 100px;
    }

    .sm-testimonial-content {
        flex-wrap: wrap;
    }

    .sm-testimonial-content .sm-img-wrapper {
        max-width: 100%;
    }

    .sm-testimonial-content .user-details-wrapper {
        padding: 32px 16px;
        max-width: 100%;
    }

    .sm-testimonial-content .sm-img-wrapper .sm-img-wrap {
        padding-top: 100%;
    }

    .user-details-wrapper .sm-user-msg {
        font-size: 14px;
        margin-bottom: 32px;
    }

    .user-details-wrapper .sm-user-msg::before {
        top: -21px;
        left: -4px;
        width: 56px;
        height: 56px;
    }

    .sm-testimonial-content .user-details-wrapper {
        background-position: center calc(100% - -2px);
        background-size: 48px;
    }

    .testimonial-slider-wrapper .swiper-pagination {
        display: none;
    }

    .sm-swiper-nav {
        position: absolute;
        top: unset;
        left: unset;
        transform: unset;
        justify-content: center;
        gap: 14px;
        bottom: 0;
    }

    .sm-contactUs-sec .sm-contact-wrap {
        border-radius: 8px;
        flex-direction: column-reverse;
    }

    .sm-inner-col {
        padding: 16px;
    }

    .sm-contactUs-sec .sm-form-col {
        padding: 16px;
        max-width: 100%;
    }

    .sm-contactUs-sec .sm-info-col {
        max-width: 100%;
        border: none;
    }

    section .sm-sec-head {
        margin-bottom: 24px;
    }

    .sm-bottom-wrap p {
        margin-top: 8px;
    }

    .input-field.col2-field-group>.input-field {
        flex-basis: 100%;
    }

    .input-field textarea {
        min-height: 136px;
    }

    .cust-form .btn-wrap {
        margin-top: 16px;
    }

    .sm-footer .sm-social-btns .sm-soc-link {
        width: 32px;
        height: 32px;
    }

    .sm-footer .sm-social-links .sm-soc-link svg {
        width: 20px;
        height: 20px;
    }

    .sm-menu {
        right: calc(-100% - 30px);
        max-width: 100%;
        border-left: none;
    }

    .sm-story-container .sm-img-wrapper {
        max-width: 100%;
        margin-bottom: 24px;
    }

    .sm-story-container .sm-info-col {
        max-width: 100%;
        padding-bottom: 0;
    }

    .sm-story-container:not(:first-child) {
        margin-top: unset;
        margin-top: 56px;
    }

    .sm-story-container:not(:first-child) .sm-info-col {
        padding-top: 0;
    }

    .sm-story-container {
        flex-direction: column-reverse;
    }

    .sm-story-container:nth-child(2n) {
        flex-direction: column-reverse;
    }


    .sm-categories-sec .sm-categorie-item-card {
        max-width: 100%;
    }

    .sm-filter-buttons .sm-filter-btn {
        padding: 6px 16px;
        border-radius: 8px;
        font-size: 14px;
    }

    .sm-filter-row {
        margin-bottom: 28px;
    }

    .sm-category-list .category-item {
        max-width: 33.33%;
    }

    header .sm-social-links .sm-soc-link {
        font-size: 14px;
    }

    .sm-social-btns .sm-soc-link {
        width: 20px;
        height: 20px;
        border-radius: 4px;
    }

    .sm-social-links .sm-soc-link svg {
        width: 14px;
        height: 14px;
    }

    .sm-site-logo h1 a {
        font-size: 24px;
    }

    .sm-first-sec {
        padding-top: 148px;
    }

    section.sm-landing-sec {
        padding-block: 40px;
    }

    .sm-landing-sec .sec-head .sm-title {
        font-size: 40px;
    }

    .sm-landing-sec .sec-head p {
        font-size: 14px;
    }

    .sm-landing-sec .quick-links li a {
        font-size: 24px;
        margin-block: 8px 16px;
    }


    .sm-banner-container {
        padding-bottom: 24vw;
    }

    .sm-banner-container .sm-banner-container-wrap {
        row-gap: 24px;
    }

    .sm-banner-container .sec-icon {
        width: 72px;
        height: 72px;
    }

    .sm-banner-container .sm-subline {
        letter-spacing: 2px;
        font-size: 12px;
    }

    .sm-banner-container .sm-title {
        font-size: 32px;
    }

    .sm-grid-row .sm-icon-box {
        max-width: 50%;
    }

    .sm-contact-cta-sec .sm-info-col {
        justify-content: center;
        row-gap: 16px;
    }

    .sm-contact-cta-sec .sm-info-sec-head {
        max-width: 100%;
    }

    .sm-contact-cta-sec .sm-head-desc {
        font-size: 18px;
        text-align: center;
    }

    .sm-faq-sec .faq-wrapper .faq-item {
        border-radius: 12px;
    }

    .sm-faq-sec .faq-wrapper {
        padding-inline: 24px;
    }

    .sm-faq-sec .faq-question::after {
        width: 24px;
        height: 24px;
        right: 8px;
    }

    .sm-faq-sec .faq-question {
        font-size: 16px;
    }

    .sm-faq-sec .sm-desc br {
        display: none;
    }

    .sm-faq-sec .faq-wrapper::after,
    .sm-faq-sec .faq-wrapper::before {
        width: 20px;
        background-size: 16px;
    }

    .sm-categories-vdo-filter-sec .sm-category-list .category-item {
        max-width: 50%;
    }

    .sm-categories-vdo-filter-sec .sm-category-list .sm-img-wrapper .sm-img-wrap::before {
        width: 32px;
        height: 22px;
    }

    .fancybox-navigation button.fancybox-button--arrow_right {
        right: unset;
        top: unset;
        bottom: 0;
        left: calc(50% + 25px);
    }

    .fancybox-navigation button.fancybox-button--arrow_left {
        left: calc(50% - 25px);
        bottom: 0;
        top: unset;
    }

    .fancybox-inner .fancybox-slide {
        padding-inline: 16px;
        padding-block: calc(var(--sec_space) *2.5);
    }

}

@media screen and (max-width: 375px) {

    .sm-category-list .category-item {
        max-width: 50%;
    }

    .sm-landing-sec .sec-head .sm-title {
        font-size: 36px;
    }

    .sm-banner-container .sm-title {
        font-size: 24px;
    }

    .sm-categories-vdo-filter-sec .sm-category-list .category-item {
        max-width: 100%;
    }
}