        /**
        Theme Name: DL Morse and Associates Inc
        Author: Blue Winds Media
        Author URI: https://www.bluewindsmedia.com
        Description: A custom theme for DL Morse and Associates Inc, built on the Astra framework.
        Version: 1.0
        License: GNU General Public License v2 or later
        License URI: http://www.gnu.org/licenses/gpl-2.0.html
        Text Domain: dl-morse-and-associates-inc
        Template: astra
        */


        /* ======= Common CSS: Start ======= */
        *,
        ::before,
        :after {
            box-sizing: border-box;
        }

        html,
        body,
        div,
        span,
        applet,
        object,
        iframe,
        h1,
        h2,
        h3,
        h4,
        h5,
        h6,
        p,
        blockquote,
        pre,
        a,
        abbr,
        acronym,
        address,
        big,
        cite,
        code,
        del,
        dfn,
        em,
        img,
        ins,
        kbd,
        q,
        s,
        samp,
        small,
        strike,
        strong,
        sub,
        sup,
        tt,
        var,
        b,
        u,
        i,
        center,
        dl,
        dt,
        dd,
        ol,
        ul,
        li,
        fieldset,
        form,
        label,
        legend,
        table,
        caption,
        tbody,
        tfoot,
        thead,
        tr,
        th,
        td,
        article,
        aside,
        canvas,
        details,
        embed,
        figure,
        figcaption,
        footer,
        header,
        hgroup,
        menu,
        nav,
        output,
        ruby,
        section,
        summary,
        time,
        mark,
        audio,
        video {
            margin: 0;
            padding: 0;
            border: 0;
            font-size: 100%;
            font: inherit;
            vertical-align: baseline;
            box-sizing: border-box;
        }

        p {
            margin: 0px 0px 20px;
        }

        p strong {
            font-weight: 700 !important;
        }

        p em {
            font-style: italic !important;
        }

        p:last-child {
            margin: 0px 0px 0px;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        a:hover,
        a:focus {
            text-decoration: none;
        }

        img {
            max-width: 100%;
            height: auto;
        }

        ul,
        ol,
        li {
            list-style: none;
        }

        ul+ul,
        ul+ol,
        ol+ul,
        ol+ol {
            margin: 20px 0px 0px;
        }

        a:focus,
        a:focus-within,
        a:focus-visible,
        a:target,
        a:visited,
        a:active,
        button:focus,
        button:focus-within,
        button:focus-visible,
        button:target,
        button:visited,
        button:active,
        input:focus,
        input:focus-within,
        input:focus-visible,
        input:target,
        input:visited,
        input:active,
        select:focus,
        select:focus-within,
        select:focus-visible,
        select:target,
        select:visited,
        select:active,
        textarea:focus,
        textarea:focus-within,
        textarea:focus-visible,
        textarea:target,
        textarea:visited,
        textarea:active {
            outline: none;
            box-shadow: none;
            font-family: inherit;
        }

        ::-webkit-input-placeholder,
        :-moz-placeholder,
        ::-moz-placeholder,
        :-ms-input-placeholder,
        ::-ms-input-placeholder,
        ::placeholder {
            color: inherit;
            opacity: 1;
            font-family: inherit;
        }

        table {
            border-collapse: collapse;
            border-spacing: 0;
        }

        /* ======= Common CSS: End ======= */



        /* ======= Hover Button CSS: Start ======= */

        /* ======= Hover Button CSS: End ======= */



        /* ======= Heading Text Anim CSS: Start ======= */
        span.word {
            display: inline-flex;
            overflow: hidden;
        }

        .text-anim span.word span.char {
            opacity: 0;
            transition: all 1.2s cubic-bezier(0.17, 0.17, 0, 0.79) !important;
        }

        .text-anim.split-is h1 span.word span.char,
        .text-anim.split-is h2 span.word span.char,
        .text-anim.split-is h3 span.word span.char,
        .text-anim.split-is h4 span.word span.char {
            opacity: 1;
            transition-delay: calc(30ms * var(--char-index)) !important;
            display: inline-flex;
        }

        /* ======= Heading Text Anim CSS: End ======= */



        /* ======= Header Section CSS: Start ======= */



        .header-main-sec .header-btn a span.elementor-button-icon {
            width: 26px;
            height: 26px;
            background: rgba(255, 255, 255, 0.2);
            border-radius: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            transition: all 0.3s ease-in-out;
        }

        .header-main-sec .header-btn a:hover span.elementor-button-icon {
            background: #fff !important;
        }

        .header-main-sec .header-btn a span.elementor-button-icon svg {
            width: 8.513px;
            height: 7.8px;
        }

        .header-main-sec .header-btn a span.elementor-button-content-wrapper {
            display: flex;
            align-items: center;
        }

        .header-logo:after {
            content: "";
            width: calc(100% - 507px);
            height: 104px;
            display: block;
            background-image: url("https://wordpress-1097225-5816330.cloudwaysapps.com/wp-content/uploads/2025/09/logo_stripe-e1756981911201.png");
            position: absolute;
            bottom: 0;
            right: 0px;
            background-repeat: repeat;
        }

        /* ======= Header Section CSS: End ======= */



        /* ======= Footer Section CSS: Start ======= */

        .footer-logo a:after {
            content: "";
            width: calc(100% - 580px);
            height: 104px;
            display: block;
            background-image: url("https://wordpress-1097225-5816330.cloudwaysapps.com/wp-content/uploads/2025/09/logo_stripe-e1756981911201.png");
            position: absolute;
            top: 0;
            right: 40px;
        }

        /* ======= Footer Section CSS: End ======= */



        /* =======  Banner Section CSS: Start ======= */

        .text-anim h2 span,
        .text-anim h4 span {
            color: #E80068 !important;
        }

        .portfolio-slider .swiper-wrapper {
            transition-timing-function: linear !important;
        }

        .portfolio-slider .swiper {
            overflow: visible;
            width: 100vw;
        }

        .portfolio-slider .swiper img {
            aspect-ratio: 1/1;
            object-fit: cover;
        }

        .services-img-sec figure.elementor-image-box-img {
            width: 100% !important;
        }

        .portfolio-loop-grid-sec .elementor-widget-theme-post-featured-image {
            height: 100% !important;
        }

        .portfolio-loop-grid-sec .elementor-widget-theme-post-featured-image img {
            height: 100% !important;
            object-fit: cover;
        }

        .portfolio_img img {
            aspect-ratio: 1/.8;
            object-fit: cover;
        }

        .services-img-sec figure.elementor-image-box-img img {
            aspect-ratio: 1/1.25;
            object-fit: cover;
            height: 100% !important;
            width: 100% !important;
        }

        .services-img-sec figure.elementor-image-box-img {
            width: 100% !important;
        }

        .why-us-main-sec .e-con-inner {
            margin-right: 0 !important;
        }

        .contact-form .elementor-form-fields-wrapper .elementor-field-group input,
        .contact-form .elementor-form-fields-wrapper .elementor-field-group textarea {
            padding: 28px 30px !important;
            box-shadow: none;
        }

        .contact-form .elementor-form-fields-wrapper .elementor-field-group input::placeholder,
        .contact-form .elementor-form-fields-wrapper .elementor-field-group textarea::placeholder {
            color: rgba(0, 0, 0, 1) !important;
            text-transform: uppercase !important;
        }

        .contact-form .elementor-form-fields-wrapper .elementor-field-group input:focus,
        .contact-form .elementor-form-fields-wrapper .elementor-field-group textarea:focus,
        .contact-form .elementor-form-fields-wrapper .elementor-field-group select:focus {
            box-shadow: none !important;
            border-style: solid !important;
        }

        .service-main-sec>.e-con-inner {
            margin-right: 0;
        }

        .service-main-sec .service-inner-subhead-row .e-con-inner,
        .services-main-sec>.e-con-inner {
            margin-left: 0px;
        }

        .service-main-sec .service-inner-img-row .e-con-inner {
            margin-right: 0;
        }

        .slider-heading h2 {
            display: flex;
            width: max-content;
            white-space: nowrap;
            justify-content: center;
            align-items: center;
        }

        .slider-heading-left h2 {
            animation: marqueeLeft 100s linear infinite;
        }

        @keyframes marqueeLeft {
            0% {
                transform: translateX(0%);
            }

            100% {
                transform: translateX(-50%);
            }
        }

        .slider-heading-right h2 {
            animation: marqueeRight 100s linear infinite;
        }

        @keyframes marqueeRight {
            0% {
                transform: translateX(-50%);
            }

            100% {
                transform: translateX(0%);
            }
        }

        .slider-heading {
            overflow: hidden;
        }


        .slider-heading h2>span {
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .slider-heading h2>span>span {
            text-indent: 50px;
            display: flex;
            align-items: center;
        }

        .slider-heading h2 {
            white-space: nowrap;
        }

        .slider-heading h2 span>span:after {
            content: "";
            background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="50" viewBox="0 0 30 50" fill="none"><path d="M0 50L23.118 0H30L6.88196 50H0Z" fill="%23E80068"/></svg>');
            background-size: contain;
            width: 30px;
            height: 50px;
            display: inline-flex;
            margin-left: 50px;
            background-repeat: no-repeat;
        }

        .portfolio-loop-sec .e-loop-item:nth-child(odd) .portfolio-loop-row {
            display: flex;
            flex-direction: row-reverse;
        }

        .portfolio {
            counter-increment: list-counter;
        }

        /* .portfolio-img-col:before {
            content: counter(list-counter, decimal-leading-zero) ". ";
            color: rgba(0, 0, 0, 0.7);
            font-family: "Suisse Intl";
            font-size: 16px;
            font-style: normal;
            font-weight: 400;
            line-height: 1.56em;
            text-transform: uppercase;
            position: relative;
            text-align: center;
        } */

        .portfolio-right-col:hover .portfolio-img-col:before,
        .portfolio-right-col:hover .elementor-widget-text-editor a,
        .portfolio-right-col:hover .elementor-widget-text-editor {
            color: #fff !important;
        }

        .choose-us-row .elementor-widget-text-editor {
            display: -webkit-box;
            -webkit-line-clamp: 1;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .choose-us-row.active .elementor-widget-text-editor {
            -webkit-line-clamp: 5 !important;
            overflow: visible !important;
        }

        .choose-us-row.active h4,
        .choose-us-row.active h4 span,
        .choose-us-row.active .elementor-widget-text-editor {
            color: #fff !important;
        }

        .choose-us-row.active:before {
            content: "";
            width: 100%;
            height: 100%;
            display: block;
            background: #000;
            transition: all 0.4s ease;
            z-index: -1;
        }

        .choose-us-row {
            transition: all 0.4s ease;
        }

        .choose-us-row.active:after {
            content: "";
            width: 100%;
            height: 100%;
            display: block;
            background-image: url("https://wordpress-1097225-5816330.cloudwaysapps.com/wp-content/uploads/2025/09/Glass-14.png");
            background-position: center bottom;
            background-size: contain;
            background-repeat: no-repeat;
            position: absolute;
            z-index: -1;
        }

        .choose-us-row.active .elementor-widget-image {
            opacity: 1 !important;
            height: 100% !important;
        }

        .choose-us-row .elementor-widget-image {
            opacity: 0;
            height: 0;
        }

        .portfolio-category-post-sec .elementor-grid-item .elementor-post__text {
            display: flex;
            flex-direction: row !important;
            justify-content: space-between;
            align-items: center;
            padding: 10px 20px;
            background: #000;
        }

        /* =======  Banner Section CSS: End ======= */

        .review-sliders .elementor-testimonial .elementor-testimonial__footer {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 20px;
        }

        .review-sliders .elementor-testimonial cite.elementor-testimonial__cite {
            margin-left: 0 !important;
        }

        .review-sliders .elementor-testimonial .elementor-testimonial__text:before {
            content: "";
            width: 60px !important;
            height: 55px !important;
            display: block;
            background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="95" height="80" viewBox="0 0 95 80" fill="none"><path d="M0 80V45.2297C0 33.3569 3.52941 23.4629 10.8824 15.265C17.9412 7.06713 26.7647 1.97881 37.0588 0V16.1131C25 20.636 19.1176 29.682 19.1176 43.8163H37.0588V80H0ZM57.9412 80V45.2297C57.9412 33.3569 61.4706 23.4629 68.8235 15.265C75.8823 7.06713 84.7059 1.97881 95 0V16.1131C82.9412 20.636 77.0588 29.682 77.0588 43.8163H95V80H57.9412Z" fill="%23E80068"/></svg>');
            position: absolute;
            background-repeat: no-repeat;
            background-position: center;
            top: 0px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 11;
            background-size: 60px;
        }

        .review-sliders .elementor-testimonial .elementor-testimonial__text {
            padding-top: 100px;
        }


        .review-sliders .elementor-main-swiper {
            width: 138vw !important;
            margin-left: -24vw;
            margin-right: -24vw;
        }

        .review-sliders .elementor-main-swiper .swiper-slide-next .elementor-testimonial__text,
        .review-sliders .elementor-main-swiper .swiper-slide-next span.elementor-testimonial__name {
            color: rgba(25, 40, 73, 1);
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container {
            display: flex;
            justify-content: start;
            gap: 60px 40px;
            flex-wrap: wrap;
            justify-content: center !important;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item {
            width: 31.25% !important;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a .category-image-wrapper {
            padding-bottom: 20px;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a .category-image-wrapper img {
            height: 100% !important;
            aspect-ratio: 1/1.24;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a h3.category-title {
            font-family: "SAMSUNG SHARP SANS", Sans-serif;
            font-size: 25px;
            font-weight: 700;
            text-transform: uppercase;
            line-height: 1em;
            color: var(--e-global-color-secondary);
            transition-duration: 0.3s;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container label {
            color: #000;
            font-family: "Suisse Intl";
            font-size: 20px;
            font-style: normal;
            font-weight: 400;
            line-height: normal;
            text-transform: uppercase;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container select {
            color: #000;
            font-family: "Suisse Intl";
            font-size: 20px;
            font-style: normal;
            font-weight: 400;
            line-height: normal;
            text-transform: uppercase;
            background: rgba(0, 0, 0, 0.05);
            border: none !important;
            padding: 10px !important;
        }

        .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container {
            margin-bottom: 40px !important;
        }


        /* ======= Responsive CSS: Start ======= */

        /*
            Elementor Breakpoint For Responsive Screen : 
            Mobile Portrait   : 767
            Mobile Landscape  : 1024
            Tablet Portrait   : 1200
            Tablet Landscape  : 1400
            Laptop            : 1600
            */

        @media screen and (min-width: 1600px) and (max-width: 1780px) {

            .footer-right-sec ul li a {
                font-size: 26px !important;
            }

            .key-service-sec {
                padding-right: 100px !important;
            }

            .story-sec {
                padding: 0 !important;
            }
        }

        @media screen and (min-width: 1600px) and (max-width: 1700px) {

            .text-anim h2 {
                font-size: 74px !important;
            }
        }

        @media screen and (max-width: 1780px) {}

        @media screen and (min-width: 1600px) and (max-width: 1680px) {

            .key-service-sec {
                padding-right: 60px !important;
            }
        }

        @media screen and (max-width: 1680px) {}

        @media screen and (max-width: 1599px) {

            .review-sliders .elementor-main-swiper {
                width: 140vw !important;
                margin-left: -20vw !important;
                margin-right: -20vw !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a h3.category-title {
                font-size: 22px !important;
            }
        }

        @media screen and (min-width: 1200px) and (max-width: 1399px) {
            .footer-right-sec {
                width: 80% !important;
            }

            .text-anim h2 {
                font-size: 58px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container {
                gap: 40px 30px !important;
            }

        }

        @media screen and (max-width: 1199px) {

            .contact-form .elementor-form-fields-wrapper .elementor-field-group input,
            .contact-form .elementor-form-fields-wrapper .elementor-field-group textarea {
                padding: 20px 20px !important;
            }

            .slider-heading h2 span>span:after {
                height: 30px !important;
                width: 20px !important;
                margin-left: 30px !important;
            }

            .slider-heading h2>span>span {
                text-indent: 30px !important;
            }

            .header-logo:after {
                width: calc(100% - 350px) !important;
                height: 100.9px !important;
                bottom: 1px !important;
            }

            .review-sliders .elementor-main-swiper {
                width: 140vw !important;
                margin-left: -18vw !important;
                margin-right: -18vw !important;
            }

            .review-sliders .elementor-testimonial .elementor-testimonial__text {
                padding-top: 80px !important;
            }

            .review-sliders .elementor-testimonial .elementor-testimonial__text:before {
                background-size: 50px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a h3.category-title {
                font-size: 20px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container {
                gap: 30px 30px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item {
                width: 31% !important;
            }
        }

        @media screen and (max-width: 1024px) {}

        @media screen and (max-width: 991px) {

            .contact-form button.elementor-button.elementor-size-sm {
                padding: 40px 21px 40px 21px !important;
            }

            .footer-logo a:after {
                width: calc(100% - 540px) !important;
                right: 20px !important;
            }

            .portfolio-category-post-sec .elementor-grid-item .elementor-post__text {
                flex-direction: column !important;
                gap: 5px;
                padding: 15px !important;
            }


            .portfolio-category-post-sec .elementor-grid-item .elementor-post__text h3.elementor-post__title {
                text-align: center;
            }

            .home-video .elementor-wrapper.elementor-open-inline {
                --video-aspect-ratio: 1.6 !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a h3.category-title {
                font-size: 18px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container select,
            .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container label {
                font-size: 18px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item {
                width: 30% !important;
            }
        }

        @media screen and (max-width: 767px) {

            .slider-heading h2>span>span {
                text-indent: 20px !important;
            }

            .slider-heading h2 span>span:after {
                margin-left: 20px !important;
                height: 20px !important;
            }

            .header-logo:after {
                width: calc(100% - 300px) !important;
                height: 100.5px !important;
                bottom: 0.5px !important;
            }

            .review-sliders .elementor-testimonial .elementor-testimonial__text {
                padding-top: 70px !important;
            }

            .review-sliders .elementor-testimonial .elementor-testimonial__text:before {
                background-size: 40px !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item {
                width: 47% !important;
            }
        }

        @media screen and (max-width: 575px) {

            .footer-right-sec nav ul {
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
            }

            .contact-form .elementor-form-fields-wrapper .elementor-field-group input,
            .contact-form .elementor-form-fields-wrapper .elementor-field-group textarea {
                padding: 15px 15px !important;
            }

            .contact-form .elementor-form-fields-wrapper .elementor-field-group {
                margin-bottom: 20px !important;
            }

            .footer-logo a:after {
                content: none !important;
            }

            br {
                display: none;
            }

            .services-img-sec .elementor-widget-image-box img {
                width: 100% !important;
            }

            .review-sliders .elementor-main-swiper {
                width: 100% !important;
                margin-left: 0vw !important;
                margin-right: 0vw !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item {
                width: 100% !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-filter-container {
                margin-bottom: 20px !important;
                text-align: center !important;
            }

            .portfolio-categories .portfolio-categories-wrapper .portfolio-categories-container .portfolio-category-item a h3.category-title {
                text-align: center;
            }

            .header-logo:after {
                content: none !important;
            }
        }

        /* ======= Responsive CSS: End ======= */