.elementor-kit-7{--e-global-color-primary:#330D4E;--e-global-color-secondary:#330D4E;--e-global-color-text:#000000;--e-global-color-accent:#330D4E;--e-global-color-c3c951e:#FFFFFF;--e-global-typography-primary-font-family:"DM Sans";--e-global-typography-primary-font-size:40px;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:20px;--e-global-typography-accent-font-weight:500;font-family:"DM Sans", Sans-serif;font-size:20px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   UMM PREMIUM PRODUCT PAGE — REFINED VERSION
   WooCommerce + XStore + Elementor

   IMPORTANT:
   Remove the previous product-page CSS completely, then use
   this stylesheet as its replacement. Do not add it beneath
   the previous version.
========================================================= */

@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap");

:root {
    --umm-product-purple: #330d4e;
    --umm-product-purple-hover: #4a1670;
    --umm-product-purple-pale: #f5f1f7;
    --umm-product-ink: #17131a;
    --umm-product-text: #514b54;
    --umm-product-muted: #746e77;
    --umm-product-white: #ffffff;
    --umm-product-surface: #faf9fb;
    --umm-product-border: #e7e2e9;
    --umm-product-container: 1280px;
}

body.single-product,
body.single-product button,
body.single-product input,
body.single-product textarea,
body.single-product select {
    font-family: "DM Sans", sans-serif;
}

body.single-product *,
body.single-product *::before,
body.single-product *::after {
    box-sizing: border-box;
}

/* =========================================================
   TOP PRODUCT AREA
========================================================= */

body.single-product .elementor-element-6eb04183 {
    padding: 48px 24px 66px !important;
    background: var(--umm-product-white) !important;
    overflow: visible;
}

body.single-product
    .elementor-element-6eb04183
    > .elementor-container {
    display: flex;
    align-items: flex-start !important;
    width: 100%;
    max-width: var(--umm-product-container) !important;
    margin: 0 auto;
    gap: 40px !important;
}

body.single-product
    .elementor-element-6eb04183
    .elementor-column-gap-extended
    > .elementor-column
    > .elementor-element-populated {
    padding: 0 !important;
}

body.single-product .elementor-element-44340a2b {
    width: calc(56% - 20px) !important;
}

body.single-product .elementor-element-6f796b09 {
    width: calc(44% - 20px) !important;
}

/* =========================================================
   PRODUCT GALLERY
========================================================= */

body.single-product .elementor-element-5aadd846 {
    position: relative !important;
    top: auto !important;
    width: 100%;
    margin: 0 !important;
    padding: 8px !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 34px rgba(35, 9, 54, 0.07) !important;
}

body.single-product .woocommerce-product-gallery {
    width: 100% !important;
    margin: 0 !important;
}

body.single-product
    .woocommerce-product-gallery
    .woocommerce-product-gallery__image,
body.single-product
    .woocommerce-product-gallery
    .woocommerce-product-gallery__image
    a {
    display: block;
    overflow: hidden;
    border-radius: 8px !important;
}

body.single-product
    .woocommerce-product-gallery
    .woocommerce-product-gallery__image
    img {
    display: block;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    border-radius: 8px !important;
}

body.single-product
    .woocommerce-product-gallery
    .woocommerce-product-gallery__trigger {
    top: 22px !important;
    right: 22px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    color: var(--umm-product-purple) !important;
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 50% !important;
    box-shadow: 0 7px 20px rgba(35, 9, 54, 0.12);
}

body.single-product .thumbnails-list {
    gap: 9px !important;
    margin-top: 10px !important;
}

body.single-product .thumbnails-list img {
    border: 2px solid transparent !important;
    border-radius: 7px !important;
}

body.single-product .thumbnails-list .active-thumbnail img,
body.single-product .thumbnails-list img:hover {
    border-color: var(--umm-product-purple) !important;
}

/* =========================================================
   PRODUCT SUMMARY
========================================================= */

body.single-product
    .elementor-element-6f796b09
    > .elementor-widget-wrap {
    align-content: flex-start !important;
    padding: 34px 36px !important;
    background: var(--umm-product-surface) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.single-product .product_title {
    margin: 0 0 20px !important;
    color: var(--umm-product-ink) !important;
    font-size: clamp(40px, 4vw, 54px) !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: -2.2px !important;
}

body.single-product .product_title::before {
    content: "QUALITY USED MACHINERY";
    display: block;
    margin-bottom: 15px;
    color: var(--umm-product-purple);
    font-size: 11px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 1.7px;
}

body.single-product
    .elementor-widget-woocommerce-product-etheme_short_description {
    margin-bottom: 26px !important;
}

body.single-product
    .elementor-widget-woocommerce-product-etheme_short_description
    p {
    margin: 0 !important;
    color: var(--umm-product-text) !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
    font-weight: 400;
}

/* Remove Elementor spacing around the two action widgets. */

body.single-product .elementor-element-b1eb057,
body.single-product .elementor-element-ef0cf6c,
body.single-product .elementor-element-90be466,
body.single-product .elementor-element-3672f5a {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product
    .elementor-element-b1eb057
    > .e-con-inner,
body.single-product
    .elementor-element-ef0cf6c
    > .e-con-inner {
    width: 100%;
    max-width: none;
    padding: 0 !important;
}

body.single-product .elementor-element-a85540c,
body.single-product .elementor-element-e7c49e8 {
    width: 100% !important;
    margin: 0 !important;
}

/* Main enquiry button. */

body.single-product
    .elementor-element-a85540c
    .elementor-button,
body.single-product
    .elementor-element-a85540c
    .elementor-button:visited {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 54px;
    padding: 14px 20px !important;
    color: var(--umm-product-white) !important;
    background: var(--umm-product-purple) !important;
    border: 2px solid var(--umm-product-purple) !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    line-height: 1.25;
    font-weight: 700 !important;
    text-align: center;
    text-decoration: none !important;
    box-shadow: none !important;
    transition:
        background-color 0.22s ease,
        border-color 0.22s ease,
        transform 0.22s ease;
}

body.single-product
    .elementor-element-a85540c
    .elementor-button:hover,
body.single-product
    .elementor-element-a85540c
    .elementor-button:focus {
    color: var(--umm-product-white) !important;
    background: var(--umm-product-purple-hover) !important;
    border-color: var(--umm-product-purple-hover) !important;
    transform: translateY(-2px);
}

/* Backend-managed PDF shortcode. */

body.single-product .elementor-element-e7c49e8 {
    margin-top: 12px !important;
}

body.single-product
    .elementor-element-e7c49e8
    .elementor-shortcode {
    width: 100%;
}

body.single-product
    .elementor-element-e7c49e8
    a,
body.single-product
    .elementor-element-e7c49e8
    a:visited {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100% !important;
    min-height: 52px;
    padding: 13px 20px !important;
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-purple) !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    line-height: 1.25;
    font-weight: 700 !important;
    text-align: center;
    text-decoration: none !important;
    transition:
        color 0.22s ease,
        background-color 0.22s ease,
        transform 0.22s ease;
}

body.single-product
    .elementor-element-e7c49e8
    a::before {
    content: "↓";
    font-size: 17px;
    line-height: 1;
}

body.single-product
    .elementor-element-e7c49e8
    a:hover,
body.single-product
    .elementor-element-e7c49e8
    a:focus {
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-purple-pale) !important;
    transform: translateY(-2px);
}

/* Responsive PDF embeds from the shortcode plugin. */

body.single-product .elementor-element-e7c49e8 iframe,
body.single-product .elementor-element-e7c49e8 embed,
body.single-product .elementor-element-e7c49e8 object,
body.single-product .pdfemb-viewer {
    display: block;
    width: 100% !important;
    max-width: 100%;
    min-height: 600px;
    margin: 15px 0 0;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 8px;
}

/* Remove obsolete spacer widgets. */

body.single-product .elementor-element-4359ce40,
body.single-product .elementor-element-7bb8b75a {
    display: none !important;
}

/* Category and brand metadata. */

body.single-product .elementor-element-36f570b4 {
    width: 100% !important;
    margin: 25px 0 0 !important;
    padding: 20px 0 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid var(--umm-product-border) !important;
    border-radius: 0 !important;
}

body.single-product .product_meta {
    display: grid;
    gap: 8px;
}

body.single-product .product_meta > span {
    display: flex !important;
    align-items: baseline;
    gap: 8px;
    margin: 0 !important;
    color: var(--umm-product-muted) !important;
    font-size: 14px !important;
    line-height: 1.5;
    font-weight: 600;
}

body.single-product .product_meta a,
body.single-product .product_meta a:visited {
    color: var(--umm-product-purple) !important;
    font-weight: 700;
    text-decoration: none !important;
}

body.single-product .product_meta a:hover {
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

/* Sharing row. */

body.single-product .elementor-element-5fcf25ee {
    margin: 20px 12px 0 0 !important;
}

body.single-product .elementor-element-5fcf25ee h2 {
    margin: 0 !important;
    color: var(--umm-product-ink) !important;
    font-size: 13px !important;
    line-height: 34px !important;
    font-weight: 700 !important;
}

body.single-product .elementor-element-36d8f087 {
    margin-top: 20px !important;
}

body.single-product
    .elementor-element-36d8f087
    .elementor-share-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-purple-pale) !important;
    border-radius: 50% !important;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        transform 0.2s ease;
}

body.single-product
    .elementor-element-36d8f087
    .elementor-share-btn:hover {
    color: var(--umm-product-white) !important;
    background: var(--umm-product-purple) !important;
    transform: translateY(-2px);
}

/* =========================================================
   PRODUCT INFORMATION
========================================================= */

body.single-product .elementor-element-6e164d34 {
    padding: 58px 24px 82px !important;
    background: var(--umm-product-surface) !important;
}

body.single-product
    .elementor-element-6e164d34
    > .elementor-container {
    width: 100%;
    max-width: var(--umm-product-container) !important;
    margin: 0 auto;
}

body.single-product .woocommerce-tabs {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Compact tabs — no stretched dark blocks. */

body.single-product .woocommerce-tabs .tabs.wc-tabs {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    max-width: 100%;
    gap: 8px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow-x: auto;
}

body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab
    a,
body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab
    a:visited {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 20px !important;
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    line-height: 1.25;
    font-weight: 700 !important;
    white-space: nowrap;
    text-decoration: none !important;
    box-shadow: none !important;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease;
}

body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab:hover
    a {
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-purple-pale) !important;
    border-color: rgba(51, 13, 78, 0.25) !important;
}

body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab.active
    a,
body.single-product
    .woocommerce-tabs
    .tabs.wc-tabs
    .et-woocommerce-tab.active:hover
    a {
    color: var(--umm-product-white) !important;
    background: var(--umm-product-purple) !important;
    border-color: var(--umm-product-purple) !important;
}

body.single-product .woocommerce-Tabs-panel {
    margin: 0 !important;
    padding: 38px 40px !important;
    color: var(--umm-product-text) !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

body.single-product
    .woocommerce-Tabs-panel--description
    .elementor-widget-text-editor {
    max-width: 980px;
}

body.single-product .woocommerce-Tabs-panel--description,
body.single-product .woocommerce-Tabs-panel--description p {
    color: var(--umm-product-text) !important;
    font-size: 17px !important;
    line-height: 1.78 !important;
}

body.single-product .woocommerce-Tabs-panel--description p {
    margin: 0 0 21px !important;
}

/* =========================================================
   MACHINE SPECIFICATIONS
========================================================= */

body.single-product table.woocommerce-product-attributes {
    width: 100%;
    margin: 0 !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 8px;
    overflow: hidden;
}

body.single-product
    table.woocommerce-product-attributes
    tr:nth-child(odd) {
    background: var(--umm-product-surface) !important;
}

body.single-product
    table.woocommerce-product-attributes
    tr:nth-child(even) {
    background: var(--umm-product-white) !important;
}

body.single-product
    table.woocommerce-product-attributes
    th,
body.single-product
    table.woocommerce-product-attributes
    td {
    padding: 16px 20px !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--umm-product-border) !important;
    font-size: 15px !important;
    line-height: 1.55;
    text-align: left;
    vertical-align: top;
}

body.single-product
    table.woocommerce-product-attributes
    tr:last-child
    th,
body.single-product
    table.woocommerce-product-attributes
    tr:last-child
    td {
    border-bottom: 0 !important;
}

body.single-product
    table.woocommerce-product-attributes
    th {
    width: 31%;
    color: var(--umm-product-purple) !important;
    font-weight: 700 !important;
}

body.single-product
    table.woocommerce-product-attributes
    td {
    color: var(--umm-product-text) !important;
    font-weight: 500;
}

body.single-product
    table.woocommerce-product-attributes
    td
    p {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
}

/* =========================================================
   CUSTOM HTML FAQS
========================================================= */

body.single-product .machinery-faq {
    display: block !important;
    width: 100%;
    max-width: 1000px;
    margin: 0 !important;
}

body.single-product .machinery-faq h3 {
    margin: 34px 0 13px !important;
    padding: 0 !important;
    color: var(--umm-product-purple) !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: -0.4px;
}

body.single-product .machinery-faq h3:first-child {
    margin-top: 0 !important;
}

body.single-product .machinery-faq details {
    display: block !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    color: var(--umm-product-text) !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    overflow: hidden;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

body.single-product .machinery-faq details[open] {
    background: var(--umm-product-white) !important;
    border-color: rgba(51, 13, 78, 0.35) !important;
    box-shadow: 0 9px 24px rgba(51, 13, 78, 0.06) !important;
}

/* Explicit colours prevent XStore from making summaries black. */

body.single-product .machinery-faq summary,
body.single-product .machinery-faq summary:hover,
body.single-product .machinery-faq summary:focus {
    position: relative;
    display: flex !important;
    align-items: center;
    min-height: 62px;
    margin: 0 !important;
    padding: 16px 54px 16px 18px !important;
    color: var(--umm-product-ink) !important;
    background: var(--umm-product-white) !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    cursor: pointer;
    list-style: none !important;
    box-shadow: none !important;
}

body.single-product .machinery-faq summary:hover {
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-purple-pale) !important;
}

body.single-product
    .machinery-faq
    details[open]
    > summary {
    color: var(--umm-product-purple) !important;
    background: var(--umm-product-purple-pale) !important;
}

body.single-product
    .machinery-faq
    summary::-webkit-details-marker {
    display: none !important;
}

body.single-product .machinery-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    color: var(--umm-product-white) !important;
    background: var(--umm-product-purple) !important;
    border-radius: 50%;
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    transform: translateY(-50%);
    transition: transform 0.2s ease;
}

body.single-product
    .machinery-faq
    details[open]
    > summary::after {
    transform: translateY(-50%) rotate(45deg);
}

body.single-product .machinery-faq details > p {
    margin: 0 !important;
    padding: 0 18px 20px !important;
    color: var(--umm-product-text) !important;
    background: var(--umm-product-white) !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
}

/* =========================================================
   RELATED PRODUCTS
========================================================= */

body.single-product .related-products-title {
    margin: 0 0 30px !important;
    color: var(--umm-product-ink) !important;
    font-size: clamp(32px, 3vw, 42px) !important;
    line-height: 1.08 !important;
    font-weight: 700 !important;
    letter-spacing: -1.3px;
    text-align: center;
}

body.single-product .related-products-title span::before {
    content: "EXPLORE MORE";
    display: block;
    margin-bottom: 11px;
    color: var(--umm-product-purple);
    font-size: 11px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 1.7px;
}

body.single-product
    .etheme-elementor-swiper-entry
    .swiper-slide
    .product {
    height: 100%;
    padding: 8px 8px 19px !important;
    background: var(--umm-product-white) !important;
    border: 1px solid var(--umm-product-border) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    overflow: hidden;
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;
}

body.single-product
    .etheme-elementor-swiper-entry
    .swiper-slide
    .product:hover {
    border-color: rgba(51, 13, 78, 0.28) !important;
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(35, 9, 54, 0.08) !important;
}

body.single-product
    .etheme-elementor-swiper-entry
    .product-image-wrapper,
body.single-product
    .etheme-elementor-swiper-entry
    .product-content-image {
    overflow: hidden;
    border-radius: 7px !important;
}

body.single-product
    .etheme-elementor-swiper-entry
    .product-content-image
    img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

body.single-product
    .etheme-elementor-swiper-entry
    .product-details {
    padding: 16px 7px 0 !important;
}

body.single-product
    .etheme-elementor-swiper-entry
    .products-page-cats,
body.single-product
    .etheme-elementor-swiper-entry
    .products-page-cats
    a {
    color: var(--umm-product-purple) !important;
    font-size: 11px !important;
    line-height: 1.4;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.65px;
}

body.single-product
    .etheme-elementor-swiper-entry
    .product-title,
body.single-product
    .etheme-elementor-swiper-entry
    .product-title
    a {
    color: var(--umm-product-ink) !important;
    font-size: 17px !important;
    line-height: 1.3;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

body.single-product a:focus-visible,
body.single-product button:focus-visible,
body.single-product summary:focus-visible {
    outline: 3px solid rgba(51, 13, 78, 0.32) !important;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    body.single-product *,
    body.single-product *::before,
    body.single-product *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media only screen and (max-width: 1024px) {
    body.single-product .elementor-element-6eb04183 {
        padding: 38px 22px 54px !important;
    }

    body.single-product
        .elementor-element-6eb04183
        > .elementor-container {
        gap: 28px !important;
    }

    body.single-product .elementor-element-44340a2b,
    body.single-product .elementor-element-6f796b09 {
        width: calc(50% - 14px) !important;
    }

    body.single-product
        .elementor-element-6f796b09
        > .elementor-widget-wrap {
        padding: 28px !important;
    }

    body.single-product .product_title {
        font-size: 42px !important;
        letter-spacing: -1.8px !important;
    }

    body.single-product
        .elementor-widget-woocommerce-product-etheme_short_description
        p {
        font-size: 15px !important;
        line-height: 1.62 !important;
    }

    body.single-product .elementor-element-6e164d34 {
        padding: 48px 22px 66px !important;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media only screen and (max-width: 767px) {
    body.single-product .elementor-element-6eb04183 {
        padding: 24px 15px 44px !important;
    }

    body.single-product
        .elementor-element-6eb04183
        > .elementor-container {
        display: flex !important;
        flex-direction: column;
        gap: 18px !important;
    }

    body.single-product .elementor-element-44340a2b,
    body.single-product .elementor-element-6f796b09 {
        width: 100% !important;
    }

    body.single-product .elementor-element-5aadd846 {
        padding: 6px !important;
        border-radius: 10px !important;
    }

    body.single-product
        .elementor-element-6f796b09
        > .elementor-widget-wrap {
        padding: 27px 20px !important;
        border-radius: 10px !important;
    }

    body.single-product .product_title {
        margin-bottom: 17px !important;
        font-size: 37px !important;
        letter-spacing: -1.5px !important;
    }

    body.single-product .product_title::before {
        margin-bottom: 12px;
        font-size: 10px;
        letter-spacing: 1.35px;
    }

    body.single-product
        .elementor-widget-woocommerce-product-etheme_short_description
        p {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }

    body.single-product
        .elementor-element-a85540c
        .elementor-button,
    body.single-product
        .elementor-element-e7c49e8
        a {
        min-height: 52px;
        padding: 13px 15px !important;
        font-size: 14px !important;
    }

    body.single-product
        .elementor-element-e7c49e8
        iframe,
    body.single-product
        .elementor-element-e7c49e8
        embed,
    body.single-product
        .elementor-element-e7c49e8
        object,
    body.single-product .pdfemb-viewer {
        min-height: 420px;
    }

    body.single-product .elementor-element-6e164d34 {
        padding: 38px 15px 54px !important;
    }

    body.single-product .woocommerce-tabs .tabs.wc-tabs {
        display: flex !important;
        width: 100% !important;
        padding-bottom: 5px !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.single-product
        .woocommerce-tabs
        .tabs.wc-tabs
        .et-woocommerce-tab
        a {
        min-height: 43px;
        padding: 10px 15px !important;
        font-size: 13px !important;
    }

    body.single-product .woocommerce-Tabs-panel {
        padding: 26px 20px !important;
        border-radius: 8px !important;
    }

    body.single-product
        .woocommerce-Tabs-panel--description,
    body.single-product
        .woocommerce-Tabs-panel--description
        p {
        font-size: 15px !important;
        line-height: 1.7 !important;
    }

    body.single-product
        table.woocommerce-product-attributes
        th,
    body.single-product
        table.woocommerce-product-attributes
        td {
        padding: 13px 11px !important;
        font-size: 13px !important;
    }

    body.single-product
        table.woocommerce-product-attributes
        th {
        width: 40%;
    }

    body.single-product .machinery-faq h3 {
        margin-top: 28px !important;
        font-size: 20px !important;
    }

    body.single-product .machinery-faq summary,
    body.single-product .machinery-faq summary:hover,
    body.single-product .machinery-faq summary:focus {
        min-height: 58px;
        padding: 14px 49px 14px 14px !important;
        font-size: 14px !important;
    }

    body.single-product .machinery-faq summary::after {
        right: 13px;
        width: 25px;
        height: 25px;
    }

    body.single-product .machinery-faq details > p {
        padding: 0 14px 17px !important;
        font-size: 14px !important;
        line-height: 1.66 !important;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media only screen and (max-width: 430px) {
    body.single-product
        .elementor-element-6f796b09
        > .elementor-widget-wrap {
        padding: 24px 17px !important;
    }

    body.single-product .product_title {
        font-size: 34px !important;
    }

    body.single-product .product_meta > span {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }
}

/* =========================================================
   UMM PREMIUM SHOP / MACHINERY ARCHIVE — REFINED V2
   WooCommerce + XStore + Elementor

   Paste into Elementor Site Settings > Custom CSS.
   This stylesheet only affects shop and product archives.
========================================================= */

:root {
    --umm-shop-purple: #330d4e;
    --umm-shop-purple-hover: #4a1670;
    --umm-shop-purple-pale: #f5f1f7;
    --umm-shop-ink: #17131a;
    --umm-shop-text: #514b54;
    --umm-shop-muted: #756f78;
    --umm-shop-white: #ffffff;
    --umm-shop-surface: #faf9fb;
    --umm-shop-border: #e7e2e9;
    --umm-shop-container: 1280px;
}

body.woocommerce-shop,
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_brand,
body.woocommerce-shop button,
body.woocommerce-shop input,
body.woocommerce-shop select {
    font-family: "DM Sans", sans-serif;
}

body.woocommerce-shop *,
body.woocommerce-shop *::before,
body.woocommerce-shop *::after,
body.post-type-archive-product *,
body.post-type-archive-product *::before,
body.post-type-archive-product *::after {
    box-sizing: border-box;
}

body.woocommerce-shop,
body.post-type-archive-product {
    color: var(--umm-shop-ink);
    background: var(--umm-shop-surface);
}

/* =========================================================
   PAGE TITLE / BREADCRUMB
========================================================= */

body.woocommerce-shop .page-heading,
body.post-type-archive-product .page-heading,
body.tax-product_cat .page-heading,
body.tax-product_brand .page-heading {
    padding: 0 24px !important;
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border: 0 !important;
}

body.woocommerce-shop .page-heading > .container,
body.post-type-archive-product .page-heading > .container,
body.tax-product_cat .page-heading > .container,
body.tax-product_brand .page-heading > .container {
    width: 100%;
    max-width: var(--umm-shop-container) !important;
    margin: 0 auto;
    padding: 0 !important;
}

body.woocommerce-shop .page-heading .row,
body.post-type-archive-product .page-heading .row,
body.tax-product_cat .page-heading .row,
body.tax-product_brand .page-heading .row {
    min-height: 88px;
}

body.woocommerce-shop .woocommerce-breadcrumb,
body.post-type-archive-product .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-breadcrumb,
body.tax-product_brand .woocommerce-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.76) !important;
    font-size: 15px !important;
    line-height: 1.3;
    font-weight: 500;
}

body.woocommerce-shop .woocommerce-breadcrumb a,
body.post-type-archive-product .woocommerce-breadcrumb a,
body.tax-product_cat .woocommerce-breadcrumb a,
body.tax-product_brand .woocommerce-breadcrumb a {
    color: rgba(255, 255, 255, 0.76) !important;
    text-decoration: none !important;
}

body.woocommerce-shop .woocommerce-breadcrumb a:hover,
body.post-type-archive-product .woocommerce-breadcrumb a:hover,
body.tax-product_cat .woocommerce-breadcrumb a:hover,
body.tax-product_brand .woocommerce-breadcrumb a:hover {
    color: var(--umm-shop-white) !important;
}

body.woocommerce-shop .woocommerce-breadcrumb .title,
body.post-type-archive-product .woocommerce-breadcrumb .title,
body.tax-product_cat .woocommerce-breadcrumb .title,
body.tax-product_brand .woocommerce-breadcrumb .title {
    margin: 0 !important;
    color: var(--umm-shop-white) !important;
    font-size: 22px !important;
    line-height: 1.2;
    font-weight: 700 !important;
    letter-spacing: -0.4px;
}

body.woocommerce-shop .page-heading .back-history,
body.post-type-archive-product .page-heading .back-history,
body.tax-product_cat .page-heading .back-history,
body.tax-product_brand .page-heading .back-history {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none !important;
    transition:
        color 0.2s ease,
        transform 0.2s ease;
}

body.woocommerce-shop .page-heading .back-history:hover,
body.post-type-archive-product .page-heading .back-history:hover,
body.tax-product_cat .page-heading .back-history:hover,
body.tax-product_brand .page-heading .back-history:hover {
    color: var(--umm-shop-white) !important;
    transform: translateX(-3px);
}

/* =========================================================
   MAIN SHOP LAYOUT
========================================================= */

body.woocommerce-shop .elementor-element-7c5401cb,
body.post-type-archive-product .elementor-element-7c5401cb {
    padding: 54px 24px 88px !important;
    background: var(--umm-shop-surface) !important;
}

body.woocommerce-shop
    .elementor-element-7c5401cb
    > .elementor-container,
body.post-type-archive-product
    .elementor-element-7c5401cb
    > .elementor-container {
    align-items: flex-start !important;
    width: 100%;
    max-width: var(--umm-shop-container) !important;
    margin: 0 auto;
    gap: 32px !important;
}

body.woocommerce-shop
    .elementor-element-7c5401cb
    .elementor-column-gap-custom
    > .elementor-column
    > .elementor-element-populated,
body.post-type-archive-product
    .elementor-element-7c5401cb
    .elementor-column-gap-custom
    > .elementor-column
    > .elementor-element-populated {
    padding: 0 !important;
}

body.woocommerce-shop .elementor-element-30425cbd,
body.post-type-archive-product .elementor-element-30425cbd {
    width: calc(25% - 16px) !important;
}

body.woocommerce-shop .elementor-element-3075e657,
body.post-type-archive-product .elementor-element-3075e657 {
    width: calc(75% - 16px) !important;
}

/* =========================================================
   DESKTOP FILTER SIDEBAR
========================================================= */

body.woocommerce-shop .elementor-element-510540b4,
body.post-type-archive-product .elementor-element-510540b4 {
    position: sticky;
    top: 104px;
    width: 100%;
}

body.woocommerce-shop
    .elementor-element-510540b4
    .etheme-elementor-sidebar,
body.post-type-archive-product
    .elementor-element-510540b4
    .etheme-elementor-sidebar {
    padding: 26px 24px;
    background: var(--umm-shop-white);
    border: 1px solid var(--umm-shop-border);
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(35, 9, 54, 0.055);
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget {
    margin: 0 !important;
    padding: 0 0 25px !important;
    background: transparent !important;
    border: 0 !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    + .sidebar-widget,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    + .sidebar-widget {
    margin-top: 25px !important;
    padding-top: 25px !important;
    border-top: 1px solid var(--umm-shop-border) !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget:last-child,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget:last-child {
    padding-bottom: 0 !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .widget-title,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .widget-title {
    margin: 0 0 18px !important;
    padding: 0 !important;
    color: var(--umm-shop-ink) !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 17px !important;
    line-height: 1.3;
    font-weight: 700 !important;
    letter-spacing: -0.2px;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .widget-title::after,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .widget-title::after {
    color: var(--umm-shop-purple) !important;
}

/* Category search. */

body.woocommerce-shop .etheme-widget_local_search-wrapper,
body.post-type-archive-product .etheme-widget_local_search-wrapper {
    position: relative;
    display: flex;
    width: 100%;
    margin: 0 0 14px !important;
}

body.woocommerce-shop .etheme-widget_local_search,
body.post-type-archive-product .etheme-widget_local_search {
    width: 100% !important;
    height: 44px !important;
    padding: 0 46px 0 14px !important;
    color: var(--umm-shop-ink) !important;
    background: var(--umm-shop-surface) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    outline: 0;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

body.woocommerce-shop .etheme-widget_local_search:focus,
body.post-type-archive-product
    .etheme-widget_local_search:focus {
    border-color: rgba(51, 13, 78, 0.5) !important;
    box-shadow: 0 0 0 3px rgba(51, 13, 78, 0.08);
}

body.woocommerce-shop
    .etheme-widget_local_search-wrapper
    .buttons-wrapper,
body.post-type-archive-product
    .etheme-widget_local_search-wrapper
    .buttons-wrapper {
    position: absolute !important;
    top: 0;
    right: 0;
    height: 44px;
}

body.woocommerce-shop
    .etheme-widget_local_search-wrapper
    .search-button,
body.post-type-archive-product
    .etheme-widget_local_search-wrapper
    .search-button {
    width: 42px !important;
    height: 44px !important;
    padding: 0 !important;
    color: var(--umm-shop-purple) !important;
    background: transparent !important;
    border: 0 !important;
}

body.woocommerce-shop
    .etheme-widget_local_search-message,
body.post-type-archive-product
    .etheme-widget_local_search-message {
    padding: 9px 0 0;
    color: var(--umm-shop-muted) !important;
    font-size: 12px !important;
    line-height: 1.45;
}

/* Filter choices. */

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    ul,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li {
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a {
    position: relative;
    display: flex !important;
    align-items: center;
    min-height: 38px;
    padding: 6px 4px 6px 17px !important;
    color: var(--umm-shop-text) !important;
    background: transparent !important;
    border-radius: 0;
    font-size: 14px !important;
    line-height: 1.35;
    font-weight: 500;
    text-decoration: none !important;
    transition:
        color 0.2s ease,
        background-color 0.2s ease;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::before,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 1px;
    width: 6px;
    height: 6px;
    background: #d8d0dc;
    border: 0;
    border-radius: 50%;
    transform: translateY(-50%);
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover {
    color: var(--umm-shop-purple) !important;
    background: transparent !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover::before,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover::before {
    background: var(--umm-shop-purple);
    border: 0;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a {
    color: var(--umm-shop-purple) !important;
    background: transparent !important;
    font-weight: 700;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a::before,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a::before {
    background: var(--umm-shop-purple);
    border: 0;
    box-shadow: 0 0 0 3px rgba(51, 13, 78, 0.1);
}

/* Final filter treatment: clean typography, no ticks or faux checkboxes. */

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li::before,
body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li::after,
body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::before,
body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::after,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li::before,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li::after,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::before,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a::after {
    content: none !important;
    display: none !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a {
    padding-left: 1px !important;
    background: transparent !important;
    text-decoration: none !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li
    a:hover {
    color: var(--umm-shop-purple) !important;
    background: transparent !important;
    font-weight: 600;
    text-decoration: none !important;
}

body.woocommerce-shop
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a,
body.post-type-archive-product
    .etheme-elementor-sidebar
    .sidebar-widget
    li.current-cat
    a {
    color: var(--umm-shop-purple) !important;
    background: transparent !important;
    font-weight: 700;
}

/* =========================================================
   SHOP TOOLBAR
========================================================= */

body.woocommerce-shop .elementor-element-162e70bd,
body.post-type-archive-product .elementor-element-162e70bd {
    margin: 0 0 22px !important;
    padding: 10px 12px !important;
    background: var(--umm-shop-white) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-radius: 10px !important;
}

body.woocommerce-shop
    .elementor-element-162e70bd
    > .elementor-container,
body.post-type-archive-product
    .elementor-element-162e70bd
    > .elementor-container {
    align-items: center;
}

body.woocommerce-shop
    .elementor-element-162e70bd
    .elementor-widget-wrap,
body.post-type-archive-product
    .elementor-element-162e70bd
    .elementor-widget-wrap {
    align-items: center;
    padding: 0 !important;
}

body.woocommerce-shop .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering {
    margin: 0 !important;
}

body.woocommerce-shop .woocommerce-ordering select,
body.post-type-archive-product .woocommerce-ordering select,
body.woocommerce-shop .products-per-page select,
body.post-type-archive-product .products-per-page select {
    min-width: 176px;
    height: 42px !important;
    padding: 0 38px 0 13px !important;
    color: var(--umm-shop-ink) !important;
    background-color: var(--umm-shop-white) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600;
    outline: 0;
}

body.woocommerce-shop .products-per-page,
body.post-type-archive-product .products-per-page {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--umm-shop-text);
    font-size: 13px;
    font-weight: 600;
}

body.woocommerce-shop .products-per-page select,
body.post-type-archive-product .products-per-page select {
    min-width: 80px;
}

body.woocommerce-shop .etheme-elementor-grid-list-switcher,
body.post-type-archive-product
    .etheme-elementor-grid-list-switcher {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: 10px;
}

body.woocommerce-shop
    .etheme-elementor-grid-list-switcher
    .switcher-wrapper,
body.post-type-archive-product
    .etheme-elementor-grid-list-switcher
    .switcher-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.woocommerce-shop
    .etheme-elementor-grid-list-switcher
    a,
body.post-type-archive-product
    .etheme-elementor-grid-list-switcher
    a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    color: var(--umm-shop-muted) !important;
    background: var(--umm-shop-white);
    border: 1px solid var(--umm-shop-border);
    border-radius: 6px;
    text-decoration: none !important;
}

body.woocommerce-shop
    .etheme-elementor-grid-list-switcher
    .switcher-active
    a,
body.post-type-archive-product
    .etheme-elementor-grid-list-switcher
    .switcher-active
    a,
body.woocommerce-shop
    .etheme-elementor-grid-list-switcher
    a:hover,
body.post-type-archive-product
    .etheme-elementor-grid-list-switcher
    a:hover {
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border-color: var(--umm-shop-purple) !important;
}

/* =========================================================
   PRODUCT GRID
========================================================= */

body.woocommerce-shop .etheme-product-grid,
body.post-type-archive-product .etheme-product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100%;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    align-items: start !important;
}

body.woocommerce-shop .etheme-product-grid-item,
body.post-type-archive-product .etheme-product-grid-item {
    position: relative;
    display: flex !important;
    flex-direction: column;
    min-width: 0;
    height: auto !important;
    min-height: 0 !important;
    align-self: start;
    margin: 0 !important;
    padding: 8px 8px 18px !important;
    background: var(--umm-shop-white) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: hidden;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

body.woocommerce-shop .etheme-product-grid-item:hover,
body.post-type-archive-product .etheme-product-grid-item:hover {
    border-color: rgba(51, 13, 78, 0.27) !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(35, 9, 54, 0.07) !important;
}

body.woocommerce-shop .etheme-product-grid-image,
body.post-type-archive-product .etheme-product-grid-image {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: var(--umm-shop-white) !important;
    border-radius: 8px !important;
}

body.woocommerce-shop .etheme-product-grid-image a,
body.post-type-archive-product .etheme-product-grid-image a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: clamp(235px, 22vw, 290px) !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    padding: 12px !important;
    overflow: hidden;
}

body.woocommerce-shop .etheme-product-grid-image img,
body.post-type-archive-product .etheme-product-grid-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center;
    transition: opacity 0.25s ease;
}

body.woocommerce-shop
    .etheme-product-grid-item:hover
    .etheme-product-grid-image
    img,
body.post-type-archive-product
    .etheme-product-grid-item:hover
    .etheme-product-grid-image
    img {
    transform: none !important;
    opacity: 0.96;
}

body.woocommerce-shop .etheme-product-grid-content,
body.post-type-archive-product .etheme-product-grid-content {
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 20px 12px 0 !important;
    text-align: center;
}

body.woocommerce-shop .etheme-product-grid-title,
body.post-type-archive-product .etheme-product-grid-title {
    margin: 0 0 8px !important;
    padding: 0 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: -0.45px;
}

body.woocommerce-shop .etheme-product-grid-title a,
body.post-type-archive-product .etheme-product-grid-title a,
body.woocommerce-shop .etheme-product-grid-title a:visited,
body.post-type-archive-product .etheme-product-grid-title a:visited {
    color: var(--umm-shop-ink) !important;
    text-decoration: none !important;
}

body.woocommerce-shop .etheme-product-grid-title a:hover,
body.post-type-archive-product
    .etheme-product-grid-title
    a:hover {
    color: var(--umm-shop-purple) !important;
}

body.woocommerce-shop .products-page-brands,
body.post-type-archive-product .products-page-brands {
    margin: 0 0 18px !important;
}

body.woocommerce-shop .products-page-brands a,
body.post-type-archive-product .products-page-brands a,
body.woocommerce-shop .products-page-brands a:visited,
body.post-type-archive-product .products-page-brands a:visited {
    color: var(--umm-shop-purple) !important;
    font-size: 12px !important;
    line-height: 1.4;
    font-weight: 700 !important;
    letter-spacing: 0.65px;
    text-transform: uppercase;
    text-decoration: none !important;
}

body.woocommerce-shop
    .etheme-product-grid-content
    .show-product,
body.post-type-archive-product
    .etheme-product-grid-content
    .show-product {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    margin: 16px 0 0 !important;
    padding: 12px 18px !important;
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border: 2px solid var(--umm-shop-purple) !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    line-height: 1.2;
    font-weight: 700 !important;
    letter-spacing: 0.75px;
    text-transform: uppercase;
    text-decoration: none !important;
    box-shadow: none !important;
    transition:
        background-color 0.22s ease,
        border-color 0.22s ease,
        transform 0.22s ease;
}

body.woocommerce-shop
    .etheme-product-grid-content
    .show-product:hover,
body.post-type-archive-product
    .etheme-product-grid-content
    .show-product:hover {
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple-hover) !important;
    border-color: var(--umm-shop-purple-hover) !important;
    transform: translateY(-2px);
}

/* =========================================================
   PAGINATION / EMPTY RESULTS
========================================================= */

body.woocommerce-shop .woocommerce-pagination,
body.post-type-archive-product .woocommerce-pagination {
    margin: 40px 0 0 !important;
}

body.woocommerce-shop .woocommerce-pagination ul,
body.post-type-archive-product .woocommerce-pagination ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.woocommerce-shop .woocommerce-pagination li,
body.post-type-archive-product .woocommerce-pagination li {
    margin: 0 !important;
    border: 0 !important;
}

body.woocommerce-shop .woocommerce-pagination a,
body.woocommerce-shop .woocommerce-pagination span,
body.post-type-archive-product .woocommerce-pagination a,
body.post-type-archive-product .woocommerce-pagination span {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 10px !important;
    color: var(--umm-shop-purple) !important;
    background: var(--umm-shop-white) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-radius: 6px !important;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none !important;
}

body.woocommerce-shop .woocommerce-pagination .current,
body.post-type-archive-product
    .woocommerce-pagination
    .current,
body.woocommerce-shop .woocommerce-pagination a:hover,
body.post-type-archive-product
    .woocommerce-pagination
    a:hover {
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border-color: var(--umm-shop-purple) !important;
}

body.woocommerce-shop .woocommerce-info,
body.post-type-archive-product .woocommerce-info {
    padding: 24px !important;
    color: var(--umm-shop-text) !important;
    background: var(--umm-shop-white) !important;
    border: 1px solid var(--umm-shop-border) !important;
    border-top: 3px solid var(--umm-shop-purple) !important;
    border-radius: 8px;
}

/* =========================================================
   MOBILE FILTER DRAWER
========================================================= */

body.woocommerce-shop
    .etheme-elementor-off-canvas__toggle_button,
body.post-type-archive-product
    .etheme-elementor-off-canvas__toggle_button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 46px;
    padding: 11px 18px !important;
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border: 2px solid var(--umm-shop-purple) !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.woocommerce-shop
    .etheme-elementor-off-canvas__toggle_button::after,
body.post-type-archive-product
    .etheme-elementor-off-canvas__toggle_button::after {
    content: "Filter machinery";
}

body.woocommerce-shop
    .etheme-elementor-off-canvas__main,
body.post-type-archive-product
    .etheme-elementor-off-canvas__main {
    width: min(88vw, 380px) !important;
    padding: 58px 24px 28px !important;
    background: var(--umm-shop-white) !important;
}

body.woocommerce-shop
    .etheme-elementor-off-canvas__close-button,
body.post-type-archive-product
    .etheme-elementor-off-canvas__close-button {
    top: 17px !important;
    right: 17px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    color: var(--umm-shop-white) !important;
    background: var(--umm-shop-purple) !important;
    border-radius: 50%;
}

body.woocommerce-shop
    .etheme-elementor-off-canvas_content
    .etheme-elementor-sidebar,
body.post-type-archive-product
    .etheme-elementor-off-canvas_content
    .etheme-elementor-sidebar {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

body.woocommerce-shop a:focus-visible,
body.woocommerce-shop button:focus-visible,
body.woocommerce-shop input:focus-visible,
body.woocommerce-shop select:focus-visible,
body.post-type-archive-product a:focus-visible,
body.post-type-archive-product button:focus-visible,
body.post-type-archive-product input:focus-visible,
body.post-type-archive-product select:focus-visible {
    outline: 3px solid rgba(51, 13, 78, 0.3) !important;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-shop *,
    body.woocommerce-shop *::before,
    body.woocommerce-shop *::after,
    body.post-type-archive-product *,
    body.post-type-archive-product *::before,
    body.post-type-archive-product *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media only screen and (max-width: 1024px) {
    body.woocommerce-shop .elementor-element-7c5401cb,
    body.post-type-archive-product .elementor-element-7c5401cb {
        padding: 42px 22px 70px !important;
    }

    body.woocommerce-shop .elementor-element-30425cbd,
    body.post-type-archive-product .elementor-element-30425cbd {
        display: none !important;
    }

    body.woocommerce-shop .elementor-element-3075e657,
    body.post-type-archive-product .elementor-element-3075e657 {
        width: 100% !important;
    }

    body.woocommerce-shop .etheme-product-grid,
    body.post-type-archive-product .etheme-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 20px !important;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media only screen and (max-width: 767px) {
    body.woocommerce-shop .page-heading,
    body.post-type-archive-product .page-heading,
    body.tax-product_cat .page-heading,
    body.tax-product_brand .page-heading {
        padding: 0 16px !important;
    }

    body.woocommerce-shop .page-heading .row,
    body.post-type-archive-product .page-heading .row,
    body.tax-product_cat .page-heading .row,
    body.tax-product_brand .page-heading .row {
        min-height: 72px;
    }

    body.woocommerce-shop .page-heading .back-history,
    body.post-type-archive-product .page-heading .back-history,
    body.tax-product_cat .page-heading .back-history,
    body.tax-product_brand .page-heading .back-history {
        display: none !important;
    }

    body.woocommerce-shop .woocommerce-breadcrumb,
    body.post-type-archive-product .woocommerce-breadcrumb,
    body.tax-product_cat .woocommerce-breadcrumb,
    body.tax-product_brand .woocommerce-breadcrumb {
        font-size: 13px !important;
    }

    body.woocommerce-shop .woocommerce-breadcrumb .title,
    body.post-type-archive-product .woocommerce-breadcrumb .title,
    body.tax-product_cat .woocommerce-breadcrumb .title,
    body.tax-product_brand .woocommerce-breadcrumb .title {
        font-size: 19px !important;
    }

    body.woocommerce-shop .elementor-element-7c5401cb,
    body.post-type-archive-product .elementor-element-7c5401cb {
        padding: 30px 15px 56px !important;
    }

    body.woocommerce-shop .elementor-element-162e70bd,
    body.post-type-archive-product .elementor-element-162e70bd {
        margin-bottom: 16px !important;
        padding: 9px !important;
    }

    body.woocommerce-shop
        .elementor-element-162e70bd
        > .elementor-container,
    body.post-type-archive-product
        .elementor-element-162e70bd
        > .elementor-container {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 9px;
    }

    body.woocommerce-shop
        .elementor-element-162e70bd
        .elementor-column,
    body.post-type-archive-product
        .elementor-element-162e70bd
        .elementor-column {
        width: auto !important;
    }

    body.woocommerce-shop .woocommerce-ordering,
    body.post-type-archive-product .woocommerce-ordering,
    body.woocommerce-shop .woocommerce-ordering select,
    body.post-type-archive-product .woocommerce-ordering select {
        width: 100% !important;
    }

    body.woocommerce-shop .products-per-page,
    body.post-type-archive-product .products-per-page {
        justify-content: flex-end;
        width: auto;
    }

    body.woocommerce-shop .etheme-product-grid,
    body.post-type-archive-product .etheme-product-grid {
        grid-template-columns: 1fr !important;
        gap: 17px !important;
    }

    body.woocommerce-shop .etheme-product-grid-item,
    body.post-type-archive-product .etheme-product-grid-item {
        padding: 6px 6px 15px !important;
        border-radius: 10px !important;
    }

    body.woocommerce-shop
        .elementor-element-693749f2,
    body.post-type-archive-product
        .elementor-element-693749f2 {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100% !important;
        margin: 0 0 14px !important;
        transform: none !important;
    }

    body.woocommerce-shop
        .elementor-element-693749f2
        .etheme-elementor-off-canvas__toggle,
    body.post-type-archive-product
        .elementor-element-693749f2
        .etheme-elementor-off-canvas__toggle {
        position: static !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100%;
        transform: none !important;
    }

    body.woocommerce-shop
        .elementor-element-693749f2
        .etheme-elementor-off-canvas__toggle_button,
    body.post-type-archive-product
        .elementor-element-693749f2
        .etheme-elementor-off-canvas__toggle_button {
        width: 100%;
    }

    body.woocommerce-shop .etheme-product-grid-content,
    body.post-type-archive-product .etheme-product-grid-content {
        padding: 17px 10px 0 !important;
    }

    body.woocommerce-shop .etheme-product-grid-title,
    body.post-type-archive-product .etheme-product-grid-title {
        font-size: 20px !important;
    }

    body.woocommerce-shop
        .etheme-product-grid-content
        .show-product,
    body.post-type-archive-product
        .etheme-product-grid-content
        .show-product {
        min-height: 46px;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media only screen and (max-width: 430px) {
    body.woocommerce-shop .products-per-page .mob-hide,
    body.post-type-archive-product
        .products-per-page
        .mob-hide {
        display: none !important;
    }

    body.woocommerce-shop .etheme-product-grid-image a,
    body.post-type-archive-product
        .etheme-product-grid-image
        a {
        height: 215px !important;
        aspect-ratio: auto !important;
        padding: 10px !important;
    }
}
/* =========================================================
   UMM PREMIUM CONTACT PAGE — CLIENT GUIDE LAYOUT

   Elementor classes:

   Outer page container:  umm-contact-page-shell
   Main two-column grid:  umm-contact-main-grid
   Left form container:   umm-contact-form-card
   Existing CF7 widget:   umm-contact-form-widget
========================================================= */

.umm-contact-page-shell {
    --umm-purple: #330d4e;
    --umm-purple-dark: #240837;
    --umm-purple-hover: #4a1769;
    --umm-white: #ffffff;
    --umm-ink: #18151b;
    --umm-copy: #514b55;
    --umm-surface: #f7f5f8;
    --umm-border: #e6dfe9;
    --umm-container: 1280px;

    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding: 0 !important;
    color: var(--umm-ink);
    background: var(--umm-surface);
    overflow: hidden;
}

.umm-contact-page-shell,
.umm-contact-page-shell * {
    box-sizing: border-box;
    font-family: "DM Sans", sans-serif;
}

/* =========================================================
   PAGE HEADING
========================================================= */

.umm-contact-page-heading {
    width: min(calc(100% - 64px), 820px);
    margin: 0 auto;
    padding: 75px 0 47px;
    text-align: center;
}

.umm-contact-page-heading__eyebrow {
    display: inline-block;
    margin: 0 0 14px;
    color: var(--umm-purple);
    font-size: 12px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.umm-contact-page-heading h1 {
    margin: 0;
    color: var(--umm-ink);
    font-size: clamp(44px, 4.8vw, 68px);
    line-height: 1;
    font-weight: 700;
    letter-spacing: -2.7px;
}

.umm-contact-page-heading p {
    max-width: 680px;
    margin: 21px auto 0;
    color: var(--umm-copy);
    font-size: 17px;
    line-height: 1.72;
}

/* =========================================================
   MAIN GRID
========================================================= */

.umm-contact-main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.18fr) minmax(390px, 0.82fr) !important;
    gap: 28px !important;
    align-items: stretch !important;
    width: min(calc(100% - 64px), var(--umm-container)) !important;
    max-width: var(--umm-container) !important;
    margin: 0 auto !important;
    padding: 0 0 100px !important;
}

.umm-contact-main-grid > * {
    min-width: 0;
}

/* =========================================================
   FORM CARD
========================================================= */

.umm-contact-form-card {
    position: relative;
    height: 100%;
    padding: 48px 48px 44px !important;
    background: var(--umm-white) !important;
    border: 1px solid var(--umm-border) !important;
    border-radius: 12px !important;
    box-shadow: 0 22px 58px rgba(31, 17, 37, 0.09) !important;
    overflow: hidden;
}

.umm-contact-form-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 5px;
    background: var(--umm-purple);
}

.umm-contact-form-heading {
    margin-bottom: 31px;
}

.umm-contact-form-heading__eyebrow {
    display: inline-block;
    margin-bottom: 11px;
    color: var(--umm-purple);
    font-size: 11px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.umm-contact-form-heading h2 {
    margin: 0 0 12px;
    color: var(--umm-ink);
    font-size: clamp(31px, 3vw, 42px);
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: -1.4px;
}

.umm-contact-form-heading p {
    max-width: 620px;
    margin: 0;
    color: var(--umm-copy);
    font-size: 15px;
    line-height: 1.65;
}

/* =========================================================
   ACCESSIBLE CONTACT FORM 7
========================================================= */

.umm-contact-form-widget,
.umm-contact-form-widget .elementor-widget-container,
.umm-contact-form-widget .pp-contact-form,
.umm-contact-form-widget .wpcf7 {
    width: 100%;
}

.umm-contact-form-widget .wpcf7 form,
.umm-contact-form-widget .wpcf7 form p {
    margin: 0;
}

.umm-contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.umm-contact-field {
    min-width: 0;
}

.umm-contact-field--full {
    grid-column: 1 / -1;
}

.umm-contact-form-widget label {
    display: block;
    margin: 0 0 8px;
    color: var(--umm-ink);
    font-size: 14px;
    line-height: 1.35;
    font-weight: 700;
}

.umm-contact-required {
    color: var(--umm-purple);
}

.umm-contact-form-widget .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.umm-contact-form-widget input[type="text"],
.umm-contact-form-widget input[type="email"],
.umm-contact-form-widget input[type="tel"],
.umm-contact-form-widget textarea {
    display: block;
    width: 100%;
    min-height: 55px;
    margin: 0 !important;
    padding: 14px 16px !important;
    color: var(--umm-ink) !important;
    background: #fdfcfe !important;
    border: 1px solid #d5cadb !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    outline: none;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.umm-contact-form-widget textarea {
    min-height: 190px;
    resize: vertical;
}

.umm-contact-form-widget input::placeholder,
.umm-contact-form-widget textarea::placeholder {
    color: #8d8391;
    opacity: 1;
}

.umm-contact-form-widget input[type="text"]:hover,
.umm-contact-form-widget input[type="email"]:hover,
.umm-contact-form-widget input[type="tel"]:hover,
.umm-contact-form-widget textarea:hover {
    border-color: #a997b2 !important;
}

.umm-contact-form-widget input[type="text"]:focus,
.umm-contact-form-widget input[type="email"]:focus,
.umm-contact-form-widget input[type="tel"]:focus,
.umm-contact-form-widget textarea:focus {
    background: var(--umm-white) !important;
    border-color: var(--umm-purple) !important;
    box-shadow: 0 0 0 3px rgba(51, 13, 78, 0.11) !important;
}

.umm-contact-form-submit {
    margin-top: 22px;
}

.umm-contact-form-widget input[type="submit"],
.umm-contact-form-widget button[type="submit"] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 57px !important;
    margin: 0 !important;
    padding: 16px 26px !important;
    color: var(--umm-white) !important;
    background: var(--umm-purple) !important;
    border: 2px solid var(--umm-purple) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer;
    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.umm-contact-form-widget input[type="submit"]:hover,
.umm-contact-form-widget input[type="submit"]:focus,
.umm-contact-form-widget button[type="submit"]:hover,
.umm-contact-form-widget button[type="submit"]:focus {
    color: var(--umm-white) !important;
    background: var(--umm-purple-hover) !important;
    border-color: var(--umm-purple-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 13px 26px rgba(51, 13, 78, 0.2) !important;
}

.umm-contact-form-widget .wpcf7-spinner {
    display: block;
    margin: 14px auto 0;
}

.umm-contact-form-widget .wpcf7-not-valid-tip {
    margin-top: 7px;
    color: #a51d2d;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;
}

.umm-contact-form-widget .wpcf7-response-output {
    margin: 20px 0 0 !important;
    padding: 13px 15px !important;
    color: var(--umm-ink);
    background: var(--umm-surface);
    border: 1px solid var(--umm-border) !important;
    border-left: 4px solid var(--umm-purple) !important;
    border-radius: 5px;
    font-size: 14px;
    line-height: 1.55;
}

.umm-contact-form-widget form.sent .wpcf7-response-output {
    background: #f1f8f3;
    border-color: #b8d9c0 !important;
    border-left-color: #28783e !important;
}

.umm-contact-form-widget form.invalid .wpcf7-response-output,
.umm-contact-form-widget form.failed .wpcf7-response-output {
    background: #fff5f5;
    border-color: #e5b9be !important;
    border-left-color: #a51d2d !important;
}

/* =========================================================
   CONTACT INFORMATION PANEL
========================================================= */

.umm-contact-info-panel {
    position: relative;
    height: 100%;
    padding: 48px 42px;
    color: var(--umm-white);
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(255, 255, 255, 0.12),
            transparent 36%
        ),
        var(--umm-purple);
    border-radius: 12px;
    box-shadow: 0 22px 58px rgba(36, 8, 55, 0.18);
    overflow: hidden;
}

.umm-contact-info-panel__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 11px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.umm-contact-info-panel__eyebrow::before {
    content: "";
    width: 25px;
    height: 2px;
    background: currentColor;
}

.umm-contact-info-panel h2 {
    margin: 0 0 14px;
    color: var(--umm-white);
    font-size: clamp(30px, 3vw, 40px);
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: -1.3px;
}

.umm-contact-info-panel__lead {
    margin: 0 0 30px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    line-height: 1.65;
}

.umm-contact-info-list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.umm-contact-info-item {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
    align-items: flex-start;
    padding: 19px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.umm-contact-info-item:last-child {
    border-bottom: 0;
}

.umm-contact-info-item__icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    color: var(--umm-white);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-radius: 8px;
}

.umm-contact-info-item__icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.umm-contact-info-item__content {
    min-width: 0;
}

.umm-contact-info-item__content strong {
    display: block;
    margin: 1px 0 5px;
    color: var(--umm-white);
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
}

.umm-contact-info-item__content span,
.umm-contact-info-item__content address,
.umm-contact-info-item__content a,
.umm-contact-info-item__content a:visited {
    display: block;
    margin: 0;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px;
    line-height: 1.58;
    font-style: normal;
    font-weight: 500;
    text-decoration: none !important;
    overflow-wrap: anywhere;
}

.umm-contact-info-item__content a:hover,
.umm-contact-info-item__content a:focus {
    color: var(--umm-white) !important;
    text-decoration: underline !important;
    text-underline-offset: 4px;
}

.umm-contact-info-panel__note {
    margin: 24px 0 0;
    padding: 15px 17px;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 7px;
    font-size: 13px;
    line-height: 1.55;
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

.umm-contact-page-shell a:focus-visible,
.umm-contact-page-shell input:focus-visible,
.umm-contact-page-shell textarea:focus-visible {
    outline: 3px solid rgba(111, 67, 139, 0.45);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .umm-contact-page-shell *,
    .umm-contact-page-shell *::before,
    .umm-contact-page-shell *::after {
        transition-duration: 0.01ms !important;
    }
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {
    .umm-contact-main-grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.72fr) !important;
    }

    .umm-contact-form-card {
        padding: 42px 36px 38px !important;
    }

    .umm-contact-info-panel {
        padding: 42px 32px;
    }
}

@media (max-width: 850px) {
    .umm-contact-page-heading {
        padding: 58px 0 37px;
    }

    .umm-contact-main-grid {
        grid-template-columns: 1fr !important;
        width: min(calc(100% - 40px), var(--umm-container)) !important;
        gap: 22px !important;
        padding-bottom: 75px !important;
    }

    /*
     * The form remains first on mobile, matching the client's request
     * that it is immediately accessible near the top of the page.
     */
    .umm-contact-form-card {
        order: 1;
    }

    .umm-contact-info-panel {
        order: 2;
    }
}

@media (max-width: 650px) {
    .umm-contact-page-heading {
        width: min(calc(100% - 40px), 820px);
    }

    .umm-contact-page-heading h1 {
        font-size: 42px;
        letter-spacing: -1.7px;
    }

    .umm-contact-form-grid {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .umm-contact-field--full {
        grid-column: auto;
    }

    .umm-contact-form-widget textarea {
        min-height: 160px;
    }
}

@media (max-width: 430px) {
    .umm-contact-page-heading,
    .umm-contact-main-grid {
        width: min(calc(100% - 30px), var(--umm-container)) !important;
    }

    .umm-contact-page-heading {
        padding-top: 48px;
    }

    .umm-contact-page-heading h1 {
        font-size: 37px;
    }

    .umm-contact-page-heading p {
        font-size: 15px;
    }

    .umm-contact-form-card {
        padding: 37px 20px 24px !important;
        border-radius: 9px !important;
    }

    .umm-contact-form-heading h2 {
        font-size: 31px;
    }

    .umm-contact-info-panel {
        padding: 36px 22px;
        border-radius: 9px;
    }
}
.umm-contact-main-grid > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    justify-self: stretch !important;
    align-self: stretch !important;
}

.umm-contact-main-grid > .elementor-element,
.umm-contact-main-grid > .e-con {
    width: 100% !important;
    max-width: none !important;
    --width: 100% !important;
}

.umm-contact-main-grid > .elementor-widget-html,
.umm-contact-main-grid > .elementor-widget-html > .elementor-widget-container,
.umm-contact-main-grid .umm-contact-form-card,
.umm-contact-main-grid .umm-contact-info-panel {
    width: 100% !important;
    max-width: none !important;
    height: 100%;
}
/* Elementor boxed Grid correction */

.umm-contact-main-grid {
    display: block !important;
}

.umm-contact-main-grid > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1.18fr) minmax(390px, 0.82fr) !important;
    gap: 28px !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    width: 100% !important;
    max-width: none !important;
}

.umm-contact-main-grid > .e-con-inner > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    align-self: stretch !important;
    justify-self: stretch !important;
}

@media (max-width: 1050px) {
    .umm-contact-main-grid > .e-con-inner {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 0.72fr) !important;
    }
}

@media (max-width: 850px) {
    .umm-contact-main-grid > .e-con-inner {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
}@media (max-width: 850px) {
    .umm-contact-main-grid > .e-con-inner > .umm-contact-form-card {
        order: 1 !important;
    }

    .umm-contact-main-grid > .e-con-inner > .elementor-widget-html {
        order: 2 !important;
    }
}/* End custom CSS */