/****************************
    Main.css
****************************/

/****************************
    HTML Styles and Utility Styles
****************************/

.page-template-location-template section {
    overflow: visible;
}

body {
    background-color: var(--base-2) !important;
}

.entry-content:not(:first-child),
.entry-summary:not(:first-child),
.page-content:not(:first-child) {
    margin-top: 0 !important;
}

.single-products .single_product_content a {
    color: var(--contrast, #000000);
}
.single-products .single_product_content a:hover {
    color: var(--primary);
}
.single-products .single_product_content a:visited {
    color: var(--primary-2);
}

::selection {
    background: #ffb7b7;
    color: var(--contrast, #000000);
}
::-moz-selection {
    background: #ffb7b7;
    color: var(--contrast, #000000);
}

.flexbox {
    display: flex;
    gap: 20px;
}
.flexbox.space-between { justify-content: space-between; }
.flexbox.space-around { justify-content: space-around; }
.flexbox.center { justify-content: center; }
.flexbox.start { justify-content: flex-start; }
.flexbox.end { justify-content: flex-end; }
.flexbox.align-center { align-items: center; }
.flexbox.align-start { align-items: flex-start; }
.flexbox.align-end { align-items: flex-end; }
.flexbox.align-stretch { align-items: stretch; }

/****************************
    Google Translate
****************************/

img.goog-te-gadget-icon {
    display: none !important;
}

div#google_translate_element {
    display: flex;
    align-items: center;
}

.goog-te-gadget-simple {
    padding: 10px 24px !important;
    border-radius: 50px;
    border: 3pt solid var(--primary, #911744);
    background: var(--base-2) !important;
    color: var(--primary, #911744) !important;
    transition:
        background 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.goog-te-gadget-simple .VIpgJd-ZVi9od-xl07Ob-lTBxed {
    color: var(--primary, #911744) !important;
}

/****************************
    Colors Styles
****************************/

.contrast_text {
    color: var(--contrast, #000000) !important;
}

/****************************
    Typography Styles
****************************/

h1 {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(2.75rem, 5vw, 4.5rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(2.695rem, 5vw, 4.545rem) !important;
    margin-bottom: 24px !important;
}

h2 {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(2.5rem, 5vw, 3.25rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(2.695rem, 5vw, 3.9rem) !important;
    margin-bottom: 24px;
}

h3,
h3.gsection_title {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(2rem, 5vw, 2.75rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(2.4rem, 5vw, 3.3rem) !important;
}

h4, h3.h4, h2.h4 {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(1.5rem, 5vw, 2.15rem) !important;
    font-style: normal;
    font-weight: 400;
    line-height: clamp(1.95rem, 5vw, 2.925rem) !important;
    margin-bottom: 24px;
}

h5, h3.h5 {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(1.25rem, 5vw, 1.75rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(1.75rem, 5vw, 2.45rem) !important;
    letter-spacing: -0.28px;
}

h3.h5.steps_tabs_heading {
    margin-top: 20px !important;
}

h6,
a.h6, h3.h6 {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(1.125rem, 5vw, 1.375rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(1.575rem, 5vw, 1.925rem) !important;
    margin-bottom: 24px;
}

p,
label,
.mec-event-list-modern .mec-event-description {
    font-family: var(--gp-font--poppins) !important;
    font-size: 1rem !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

p.hero_body_text {
    font-family: var(--gp-font--poppins) !important;
    font-size: clamp(1.124rem, 5vw, 1.125rem) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.bold_weight_font {
    font-weight: 700 !important;
}

span.tagline {
    font-family: var(--gp-font--poppins) !important;
    font-size: clamp(1.124rem, 5vw, 1.125rem) !important;
    font-weight: 600;
}

.service_impact span.large_text {
    font-size: clamp(2rem, 5vw, 2.8rem) !important;
    font-family: var(--gp-font--roboto) !important;
}

span.large_text {
    font-size: clamp(3.5rem, 5vw, 5rem) !important;
    font-family: var(--gp-font--roboto) !important;
}

.colored_grid span.large_text.card_heading {
    font-size: clamp(3.5rem, 5vw, 4.5rem) !important;
}

span.small_text {
    font-family: var(--gp-font--poppins) !important;
    font-size: 0.875rem !important;
    font-weight: 600;
    line-height: 1.313rem !important;
}

a.small_text {
    font-family: var(--gp-font--poppins) !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    line-height: 1.313rem !important;
    text-decoration: none !important;
}

a.small_text:hover {
    text-decoration: underline !important;
}

span.product_notice {
    font-family: var(--gp-font--poppins) !important;
    font-size: 0.875rem !important;
    font-weight: 400;
    line-height: 1.313rem !important;
}

span.tags {
    border-radius: 4px !important;
    border: 1px solid rgba(4, 9, 9, 0.15) !important;
    background: rgba(255, 255, 255, 0) !important;
    display: flex !important;
    padding: 4px 10px !important;
    align-items: flex-start !important;
}

span.product_carousel_header {
    font-family: var(--gp-font--poppins) !important;
    font-size: 1.125rem !important;
    line-height: 1.5rem;
}

span.product_carousel_header a {
    color: var(--contrast) !important;
    text-decoration: none !important;
}

span.product_carousel_header a:hover {
    text-decoration: underline !important;
}

span.tab {
    font-weight: 600;
}

.equipment h1.gb-text-3443c875 {
    font-size: clamp(2.3rem, 5vw, 4.5rem) !important;
    line-height: clamp(2.53rem, 5.5vw, 4.95rem) !important;
}

/****************************
    Table Styles
****************************/

tr:nth-child(1) {
    background: var(--primary, #911745);
}

thead {
    color: white;
}

/****************************
    Blog Styles
****************************/

.blog_header a {
    color: var(--primary) !important;
    font-weight: 700;
    margin-bottom: 8px;
    text-decoration: none;
}

.blog_header a:hover {
    text-decoration: underline;
}

.featured-blog-inner {
    column-gap: 48px;
    row-gap: 24px;
    align-items: center;
}

.featured-blog-image {
    width: 100%;
}

.featured-blog-image img {
    width: 100%;
    max-width: 640px;
    height: 426px;
    object-fit: cover;
}

.featured-blog-readmore {
    align-items: center;
    color: var(--primary);
    column-gap: 0.5em;
    display: inline-flex;
    position: relative;
    text-decoration: none;
    z-index: 1;
}

.featured-blog-content {
    width: 100%;
    max-width: 592px;
}

/****************************
    Container and Grid Styles
****************************/

.gb-container {
    width: 100%;
    max-width: 1280px;
    padding: 20px 30px;
}

.gb-container,
.single_container,
.flexbox_single,
.centered_flexed,
section,
main {
    overflow: visible !important;
}

section.centered_flexed,
footer.centered_flexed {
    display: flex;
    justify-content: center;
    width: 100%;
}

section.full_width_container .hero_content_box {
    max-width: 100% !important;
}

.border-container {
    border-top: var(--primary, #911746) 1px solid !important;
    padding-top: 42px;
    margin-bottom: 64px;
}

.img_border {
    border-radius: 8px !important;
}

.gb_spacing {
    padding-top: 120px;
    padding-bottom: 120px;
}

.carousel_img {
    aspect-ratio: 1/1 !important;
}

.faqs-centered .gb-element-f176210f {
    padding-bottom: 112px;
    padding-top: 112px;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
}

/****************************
    Post Styles
****************************/

.flexbox_single {
    display: flex;
    column-gap: 32px;
    row-gap: 32px;
    align-items: flex-start;
}

.single_sidebar {
    width: 100%;
    max-width: 30%;
    position: relative;
}

.single_content {
    width: 100%;
    max-width: 70%;
}

.sidebar-container {
    position: sticky;
    top: 80px;
}

.single_container {
    margin-top: 18px;
}

/*****************
    Left Side: Post Styles for Widget
*****************/

.single_container .single_content a {
    color: var(--contrast, #000000);
}
.single_container .single_content a:hover {
    color: var(--primary);
}
.single_container .single_content a:visited {
    color: var(--primary-2);
}

.single_container .single_content img {
    width: 100%;
    margin: 32px 0;
    border-radius: 8px;
}

.single_container .single_content h2 {
    margin-bottom: 24px;
}

.single_container .single_content h1,
.single_container .single_content h2,
.single_container .single_content h3,
.single_container .single_content h4,
.single_container .single_content h5 {
    color: var(--primary, #911745);
    margin: 24px 0;
    font-weight: 700;
}

.single_hero_option h1 {
    font-size: clamp(2.7rem, 5vw, 3.3rem) !important;
    line-height: clamp(2.745rem, 5vw, 3.345rem) !important;
}

.single_container .single_content h6 {
    font-weight: 700;
    margin-top: 20px;
    margin-bottom: 16px;
}

.single_container .single_content p {
    margin-bottom: 16px;
}

.single_content h6 {
    line-height: clamp(1.575rem, 5vw, 1.925rem) !important;
    letter-spacing: -0.18px !important;
}

/*****************
    Right Side: Post Styles for Widget
*****************/

span.share {
    font-size: clamp(1.125rem, 5vw, 1.375rem) !important;
    font-family: var(--gp-font--poppins) !important;
    font-weight: 600;
}

.single_box_container {
    background-color: var(--accent, #4abdac);
    padding: 32px;
    margin: 22px 0 20px 0;
}

.single_box_container a {
    color: var(--contrast, #000000) !important;
}

a.share-btn {
    text-decoration: none !important;
}

.share-buttons {
    display: flex;
    align-items: baseline;
    row-gap: 16px;
    flex-direction: column;
}

.share-label {
    font-weight: 600;
}

.share-btn:hover {
    opacity: 0.8;
}

.share-btn svg {
    width: 32px;
    height: 32px;
}

button.share-btn.copy-link {
    padding: 0 !important;
    background: transparent !important;
    color: transparent;
}

.share-btn:focus {
    outline: 2px solid #7b1648;
    outline-offset: 3px;
}

.share-btn:focus:not(:focus-visible) {
    outline: none;
}

.copy-link {
    position: relative;
}

.copy-link::after {
    content: "Copied!";
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background: #2e7d32;
    color: #fff;
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s;
}

.copy-link.copied {
    background: #2e7d32;
}

.copy-link.copied::after {
    opacity: 1;
}

/****************************
    Product Single Styles
****************************/

.key-features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 24px;
    row-gap: 16px;
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.key-feature-item {
    color: var(--base, #ffffff);
    display: flex;
    align-items: flex-start;
    column-gap: 16px;
}

.key-feature-item::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20.3479 7.56384L9.7479 18.1638C9.65402 18.2585 9.52622 18.3117 9.3929 18.3117C9.25958 18.3117 9.13178 18.2585 9.0379 18.1638L3.6479 12.7738C3.55324 12.68 3.5 12.5522 3.5 12.4188C3.5 12.2855 3.55324 12.1577 3.6479 12.0638L4.3479 11.3638C4.44178 11.2692 4.56958 11.2159 4.7029 11.2159C4.83622 11.2159 4.96402 11.2692 5.0579 11.3638L9.3879 15.6938L18.9379 6.14384C19.1357 5.95205 19.4501 5.95205 19.6479 6.14384L20.3479 6.85384C20.4426 6.94772 20.4958 7.07552 20.4958 7.20884C20.4958 7.34216 20.4426 7.46995 20.3479 7.56384Z' fill='white'/%3E%3C/svg%3E");
    flex-shrink: 0;
    margin-top: 1px;
}

/****************************
    Product Filter Styles
****************************/

.custom-filter-sidebar {
    display: flex;
    flex-direction: column;
    border-style: solid;
    border-color: var(--base-4);
    border-width: 0 1px 0 0;
    height: 100%;
}

.filter_label {
    border-bottom: 1px solid var(--base-4);
}

.filter_container_products {
    padding-right: 20px;
}

ul.category-filter-list {
    list-style: none;
    margin-left: 0;
}

ul.category-filter-list li {
    padding: 8px 0;
}

.ftri-checkbox-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ftri-checkbox-list li {
    margin-bottom: 10px;
}

.ftri-checkbox-label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 15px;
    color: #333;
    position: relative;
    user-select: none;
    line-height: 1.4;
}

.ftri-checkbox-label input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.ftri-checkbox-custom {
    width: 18px;
    height: 18px;
    min-width: 18px;
    border: 2px solid #ccc;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, background 0.15s;
    background: #fff;
}

.ftri-checkbox-label:hover .ftri-checkbox-custom {
    border-color: #911744;
}

.ftri-checkbox-label input:checked + .ftri-checkbox-custom {
    background: #911744;
    border-color: #911744;
}

.ftri-checkbox-label input:checked + .ftri-checkbox-custom::after {
    content: "";
    display: block;
    width: 5px;
    height: 9px;
    border: 2px solid #fff;
    border-top: none;
    border-left: none;
    transform: rotate(45deg) translateY(-1px);
}

.ftri-filter-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 20px;
    margin-top: 20px;
    border-top: 1px solid #e0e0e0;
}

.ftri-btn-clear {
    background: transparent;
    border: none;
    padding: 0;
    color: var(--contrast, #000000);
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.ftri-btn-clear:hover {
    text-decoration: underline;
}

.ftri-btn-apply {
    border-radius: 50px !important;
    border: 1px solid var(--primary);
    background: linear-gradient(104deg, var(--primary) 33.17%, var(--secondary) 87.02%) !important;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25) !important;
    transition: --primary 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: var(--base, #ffffff);
    text-decoration: none;
}

.ftri-btn-apply:hover {
    background: #7a1239;
}

.ftri-btn-apply:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.ftri-product-subtitle {
    display: block;
    font-size: 13px;
    color: #666;
    margin: 2px 0 6px;
}

.card_link {
    align-items: center;
    aspect-ratio: 1 / 1;
    background-color: var(--base);
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
    width: 100%;
    padding: 20px;
}

.carousel_item_product {
    height: 420px !important;
    position: relative;
}

.learn_more_container {
    position: absolute;
    bottom: 24px;
    width: 100%;
}

.swiper-slide-duplicate {
    pointer-events: none;
}

.slide-filtered {
    opacity: 0;
    pointer-events: none;
    width: 0 !important;
    margin: 0 !important;
}

.ftri-main-carousel .carousel_arrow_control_btn {
    display: none !important;
}

.ftri-main-carousel:has(.gb-carousel-item:not(.slide-filtered):not(.swiper-slide-duplicate) ~ .gb-carousel-item:not(.slide-filtered):not(.swiper-slide-duplicate) ~ .gb-carousel-item:not(.slide-filtered):not(.swiper-slide-duplicate)) .carousel_arrow_control_btn {
    display: flex !important;
}

/****************************
    Form Styles
****************************/

select.gfield_select {
    border-radius: 6px !important;
    border: 1px solid #cecfc6 !important;
    background: #f8f9f2 !important;
}

.gform_required_legend {
    display: none !important;
}

#find_a_location #zip-search-input {
    border-radius: 6px;
    border: 2px solid var(--Opacity-Neutral-Darkest-15, rgba(4, 9, 9, 0.15));
    background: rgba(255, 255, 255, 0.60) !important;
}

#find_a_location #zip-search-btn:hover {
    background-color: #911745 !important;
}

/****************************
    Query Styles
****************************/

.query_post_header a {
    color: var(--primary, #911745);
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    text-decoration: none;
}

/****************************
    Buttons Styles
****************************/

@property --primary {
    syntax: "<color>";
    inherits: false;
    initial-value: #911744;
}

@property --secondary {
    syntax: "<color>";
    inherits: false;
    initial-value: #4abdac;
}

.btn,
.gform_button,
.gform_previous_button,
.gform_next_button,
.goog-te-gadget-simple {
    font-family: var(--gp-font--poppins) !important;
    font-size: clamp(1.124rem, 5vw, 1.125rem) !important;
    font-weight: 500 !important;
    text-align: center;
    display: flex;
    justify-content: center;
    padding: 10px 24px;
    text-decoration: none;
    align-items: center;
}

.gradient_btn,
.gform_button,
.gform_next_button {
    border-radius: 50px !important;
    border: 1px solid var(--primary);
    background: linear-gradient(104deg, var(--primary) 33.17%, var(--secondary) 87.02%) !important;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25) !important;
    transition: --primary 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: var(--base, #ffffff);
    text-decoration: none;
}

.gradient_btn:hover,
.gform_button:hover,
.gform_next_button:hover {
    --primary: #4abdac;
}

.maroon a.gb-text.gb-text-c55125bb.gradient_btn.btn.smooth-scroll {
    border: 1px solid white;
}

.white_btn {
    border-radius: 50px;
    border: 3pt solid var(--primary, #911744);
    background: var(--base, #ffffff) !important;
    color: var(--primary, #911744) !important;
    transition:
        background 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.white_btn:hover {
    border-radius: 50px;
    border: 3pt solid var(--base, #ffffff) !important;
    color: var(--base, #ffffff) !important;
    background: var(--primary-2, #741236) !important;
}

.white_btn_content,
.gform_previous_button {
    border-radius: 50px !important;
    background: var(--base, #ffffff) !important;
    color: var(--contrast, #000000) !important;
    transition:
        background 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.white_btn_content:hover,
.white_btn_product:hover {
    border-radius: 50px;
    color: var(--base, #ffffff) !important;
    background: var(--primary-2, #741236) !important;
}

.white_btn_product {
    border-radius: 50px !important;
    background: var(--base, #ffffff) !important;
    color: var(--contrast-5, #d9d9d9) !important;
    border: 2px solid var(--contrast-5, #d9d9d9) !important;
    transition:
        background 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        color 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.carousel_arrow_control_btn {
    border-radius: 4px !important;
    border: 1px solid rgba(4, 9, 9, 0.15) !important;
    background-color: var(--primary, #911744);
}

.carousel_arrow_control_btn:is(:focus) {
    background-color: var(--primary, #911744) !important;
    color: #000000;
}

.carousel_arrow_control_btn:hover {
    border-radius: 4px !important;
    border: 1px solid rgba(4, 9, 9, 0.15) !important;
    background: var(--primary-2, #741236) !important;
}

span.gb-carousel-dot.is-active.is-active-main {
    background: var(--primary) !important;
    width: 8px !important;
    height: 8px !important;
}

span.gb-carousel-dot {
    width: 8px !important;
    height: 8px !important;
}

.wp-block-button.gradient_btn .wp-block-button__link,
.wp-block-button.white_btn .wp-block-button__link {
    all: unset !important;
    display: flex !important;
    cursor: pointer !important;
}

.wp-block-buttons > .wp-block-button.gradient_btn,
.wp-block-buttons > .wp-block-button.white_btn {
    display: flex !important;
    margin: 0 !important;
}

/****************************
    Accordion Styles
****************************/

.gb-accordion__item {
    background-color: var(--base, #ffffff);
    margin-bottom: 16px;
    border: 1px solid rgba(4, 9, 9, 0.15) !important;
    padding: 20px 24px;
    border-radius: 8px;
}

.gb-accordion__toggle {
    align-items: center;
    color: #000000;
    column-gap: 1em;
    display: flex;
    justify-content: space-between;
    text-align: left;
}

.gb-accordion__toggle .gb-text {
    font-family: var(--gp-font--poppins) !important;
    font-size: clamp(1.124rem, 5vw, 1.125rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: 150%;
}

.gb-accordion__toggle-icon svg {
    display: none;
}

.gb-accordion__toggle-icon-open::after,
.gb-accordion__toggle-icon-close::after {
    content: '';
    display: block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Crect width='256' height='256' fill='none'/%3E%3Cline x1='40' y1='128' x2='216' y2='128' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='16'/%3E%3Cline x1='128' y1='40' x2='128' y2='216' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='16'/%3E%3C/svg%3E");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    transition: transform 0.2s ease;
}

.gb-accordion__toggle-icon-close::after {
    transform: rotate(45deg);
    background-color: var(--primary, #911745);
}

.acf-accordion-wrapper {
    width: 100%;
}

.accordion_item {
    margin-bottom: 1em;
    transition: all 0.5s ease 0s;
    border-top: 1px solid var(--base-4);
    padding: 16px 0em;
}

.accordion_toggle {
    align-items: center;
    column-gap: 1em;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    text-align: left;
    cursor: pointer;
    user-select: none;
}

.accordion_toggle_icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    position: relative;
}

.accordion_toggle_icon::before {
    content: "";
    position: absolute;
    width: 0.55em;
    height: 0.55em;
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    transform: rotate(135deg);
    margin-top: -0.2em;
    transition: transform 0.3s ease, margin-top 0.3s ease;
}

.accordion_item--open .accordion_toggle_icon::before {
    transform: rotate(-45deg);
    margin-top: 0.2em;
}

.accordion_content {
    overflow: hidden;
    transition: all 0.35s ease;
}

.accordion_content[hidden] {
    display: none;
}

.accordion_content p {
    margin-top: 0.75em;
}

/****************************
    Steps / Tabs Styles
****************************/

#how-it-works .gb-tabs__item.gb-tabs__item-open {
    display: block;
    height: 380px;
}

.steps_container .gb-tabs__item-open {
    padding: 20px !important;
}

.steps_tabs_menu {
    justify-content: center;
}

div#gb-tab-menu-item-05466ba3 {
    border-top: 0;
    border-top-left-radius: 8px;
}

.gb-tabs__menu-item-ed2041fd {
    border-bottom: 0;
    border-bottom-left-radius: 8px;
}

.steps_container .steps_tabs_menu_item {
    background: #e2e2d7;
}

/****************************
    Board Styles
****************************/

.board_looper h3.h6 {
    margin-bottom: 0 !important;
}

/****************************
    Red Border Callout
****************************/

.red_border {
    border-radius: 8px;
    background-color: var(--primary);
    color: var(--base-2) !important;
    padding: 32px;
    margin-top: 40px;
}

.red_border h3 {
    color: var(--base-2) !important;
}

.red_border a:hover {
    color: var(--base-2) !important;
}

.red_border a:link {
    color: var(--base-2) !important;
}

.red_border a:visited,
.red_border a:active {
    color: white !important;
}

/****************************
    Free Equipment Content Box
****************************/

.free_equipment_content_box a.h6 {
    margin-bottom: 0 !important;
}

/****************************
    Video Container Product
****************************/

.video_container_product embed,
.video_container_product iframe,
.video_container_product object {
    max-width: 100%;
    height: 300px;
    margin-top: 30px;
}

/****************************
    Interactive Map Styles
****************************/

.map-region {
    cursor: pointer;
    transition: stroke 0.2s, stroke-width 0.2s;
}

.map-region:hover {
    stroke: #921945;
    stroke-width: 3;
}

svg path {
    pointer-events: all !important;
}

svg path[data-city] {
    pointer-events: all !important;
    cursor: pointer;
}

.map-popup {
    position: fixed;
    background: #ffffff;
    border-radius: 12px;
    padding: 12px 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
    width: 400px;
    max-width: calc(100vw - 60px);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s;
    z-index: 9999;
    box-sizing: border-box;
}

.map-popup.is-visible {
    opacity: 1;
}

#map-popup h5 {
    font-size: clamp(1.125rem, 5vw, 1.563rem) !important;
    font-weight: 700 !important;
    margin: 6px 0 6px !important;
    color: #1a1a1a !important;
    line-height: 1.3 !important;
}

.map-popup ul {
    list-style: none;
    padding: 0;
    margin: 8px 0 0;
}

.map-popup ul li {
    margin-bottom: 8px;
}

.map-popup ul li a,
.map-popup-link {
    color: #921945;
    font-weight: 600;
    text-decoration: none;
    font-size: 14px;
}

.map-popup ul li a:hover,
.map-popup-link:hover {
    text-decoration: underline;
}

.map-popup-icon {
    display: block;
    margin-bottom: 2px;
}

.map-pin {
    cursor: pointer;
}

.map-pin path,
.map-pin ellipse {
    transition: fill 0.2s ease, stroke 0.2s ease;
}

.map-pin:hover path,
.map-pin:hover ellipse,
.map-pin.is-active path,
.map-pin.is-active ellipse {
    fill: #c4235e;
    stroke: #c4245e;
}

/****************************
    Search Page Styles
****************************/

.search_hero {
    background-color: var(--primary, #911845);
    padding: 48px 30px;
}

.search_hero_inner {
    max-width: 1280px;
    margin: 0 auto;
}

.search_hero_label {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.875rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 12px;
    display: block;
}

.search_hero h1 {
    color: var(--base, #ffffff);
    margin-bottom: 32px !important;
}

.search_hero h1 span {
    color: var(--accent, #4abdac);
}

.search_form_wrapper {
    max-width: 680px;
}

.search_input_group {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 50px;
    padding: 6px 8px 6px 24px;
    gap: 12px;
    transition: border-color 0.25s ease, background 0.25s ease;
}

.search_input_group:focus-within {
    border-color: var(--accent, #4abdac);
    background: rgba(255, 255, 255, 0.15);
}

.search_input_group input[type="search"] {
    flex: 1;
    background: transparent !important;
    border: none !important;
    padding: 8px 0 !important;
    color: var(--base, #ffffff) !important;
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 1rem;
    outline: none;
    box-shadow: none !important;
}

.search_input_group input[type="search"]::placeholder {
    color: rgba(255, 255, 255, 0.55) !important;
}

.search_submit_btn {
    font-family: var(--gp-font--poppins, sans-serif) !important;
    font-size: 0.9375rem !important;
    font-weight: 500 !important;
    padding: 10px 24px;
    border-radius: 50px !important;
    background: var(--base, #ffffff) !important;
    color: var(--primary, #911845) !important;
    border: none;
    cursor: pointer;
    transition: background 0.25s ease, color 0.25s ease;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.search_submit_btn:hover {
    background: var(--accent, #4abdac) !important;
    color: var(--contrast, #000000) !important;
}

.search_results_section {
    padding: 64px 30px;
}

.search_results_inner {
    max-width: 1280px;
    margin: 0 auto;
}

.search_meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--primary, #911845);
    margin-bottom: 40px;
    flex-wrap: wrap;
    gap: 12px;
}

.search_count {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.9375rem;
    color: #555;
}

.search_count strong {
    color: var(--primary, #911845);
    font-weight: 700;
}

.search_results_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    margin-bottom: 64px;
}

.search_result_card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    transition: box-shadow 0.25s ease, transform 0.25s ease;
    text-decoration: none;
    color: inherit;
}

.search_result_card:hover {
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.13);
    transform: translateY(-3px);
    text-decoration: none;
    color: inherit;
}

.search_card_thumb {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--primary-2, #741236);
    position: relative;
}

.search_card_thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0 !important;
    transition: transform 0.35s ease;
}

.search_result_card:hover .search_card_thumb img {
    transform: scale(1.04);
}

.search_card_thumb_placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary, #911845), var(--primary-2, #741236));
}

.search_card_thumb_placeholder svg {
    opacity: 0.3;
}

.search_card_body {
    padding: 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.search_card_meta {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.search_card_type {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--base, #ffffff);
    background: var(--primary, #911845);
    padding: 3px 10px;
    border-radius: 4px;
}

.search_card_date {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.8125rem;
    color: #888;
}

.search_card_title {
    font-family: var(--gp-font--inter, sans-serif) !important;
    font-size: clamp(1rem, 2vw, 1.125rem) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: var(--contrast, #000000);
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.search_card_excerpt {
    font-family: var(--gp-font--poppins, sans-serif) !important;
    font-size: 0.875rem !important;
    line-height: 1.6 !important;
    color: #555;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.search_card_footer {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.07);
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--primary, #911845);
}

.search_card_footer svg {
    transition: transform 0.2s ease;
}

.search_result_card:hover .search_card_footer svg {
    transform: translateX(4px);
}

.search_no_results {
    text-align: center;
    padding: 80px 30px;
    max-width: 560px;
    margin: 0 auto;
}

.search_no_results_icon {
    width: 72px;
    height: 72px;
    background: rgba(145, 24, 69, 0.08);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
}

.search_no_results h2 {
    font-size: clamp(1.5rem, 4vw, 2rem) !important;
    margin-bottom: 12px !important;
}

.search_no_results p {
    color: #666;
    margin-bottom: 32px !important;
}

.search_suggestions {
    list-style: none;
    padding: 0;
    margin: 0 0 32px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}

.search_suggestions li a {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--primary, #911845);
    border: 1px solid rgba(145, 24, 69, 0.3);
    border-radius: 50px;
    padding: 6px 16px;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
    display: block;
}

.search_suggestions li a:hover {
    background: var(--primary, #911845);
    color: #fff;
    border-color: var(--primary, #911845);
}

.search_pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 40px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.search_pagination .page-numbers {
    font-family: var(--gp-font--poppins, sans-serif);
    font-size: 0.9375rem;
    font-weight: 500;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(0, 0, 0, 0.12);
    color: var(--contrast, #000000);
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.search_pagination .page-numbers:hover,
.search_pagination .page-numbers.current {
    background: var(--primary, #911845);
    color: #fff;
    border-color: var(--primary, #911845);
}

.search_pagination .page-numbers.dots {
    border: none;
    pointer-events: none;
}

/****************************
    Events Styles
****************************/

.single-mec-events .mec-event-content a {
    color: var(--contrast, #000000);
}

.single-mec-events .mec-event-content a:hover {
    color: var(--primary);
    text-decoration: underline;
}

.single-mec-events .mec-event-content a:visited {
    color: var(--primary-2);
    text-decoration: underline;
}

.mec-single-event .mec-event-meta [class*="mec-sl-"],
.mec-single-event .mec-event-meta svg,
.mec-single-event .mec-event-meta .mec-icon,
.mec-single-event [class*="mec-sl-"],
.mec-single-event svg.mec-icon,
.mec-wrap svg {
    display: none !important;
}

.mec-single-event-date .mec-events-meta-group,
.mec-single-event-date .mec-event-meta-label,
.mec-single-event-date h3,
.mec-single-event-date h4 {
    display: none !important;
}

.mec-single-event-date .mec-start-date-details,
.mec-single-event-date .mec-end-date-details {
    display: inline;
}

.mec-single-event-date,
.mec-single-event-address,
.mec-single-event-type {
    margin-bottom: 1rem;
}

.mec-single-event-date strong,
.mec-single-event-address strong,
.mec-single-event-type strong {
    display: block;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.25rem;
}

.mec-single-event-date p,
.mec-single-event-address p,
.mec-single-event-type p {
    margin: 0;
}

.mec-frontbox {
    border-radius: 6px;
}

.mec-single-event-organizer svg,
.mec-single-event-organizer [class*="mec-sl-"] {
    display: none !important;
}

.mec-single-event-organizer h3 {
    margin-bottom: 1rem;
}

.mec-single-event-organizer dl {
    margin: 0;
}

.mec-single-event-organizer dd {
    margin: 0 0 0.85rem 0;
    padding: 0;
}

.mec-single-event-organizer h6 {
    margin: 0 0 0.15rem 0;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.6;
}

.mec-organizer h6,
.mec-organizer-tel h6,
.mec-organizer-email h6,
.mec-organizer-url h6 {
    font-weight: 600;
}

.mec-organizer-tel a,
.mec-organizer-email a,
.mec-organizer-url a {
    word-break: break-all;
}

.mec-single-event-date dl,
.mec-single-event-date dd,
.mec-single-event-date dt {
    margin: 0 !important;
    padding: 0 !important;
}

.mec-single-event-date .mec-date,
.mec-single-event-date .mec-single-event-time {
    margin: 0 !important;
    padding: 0 !important;
}

.mec-single-event-date h3.mec-date,
.mec-single-event-date h3 {
    display: none !important;
}

.mec-single-event-date i.mec-sl-calendar,
.mec-single-event-date i[class*="mec-sl-"] {
    display: none !important;
}

.mec-single-event-date > div {
    padding: 0 !important;
    margin: 0 !important;
}

.mec-single-event-date {
    padding: 0 !important;
}

.mec-wrap p,
.mec-single-event-date {
    color: var(--contrast, #000000) !important;
}

a.event_link {
    color: var(--contrast, #000000) !important;
}

a.event_link:hover {
    text-decoration: underline !important;
}

article.row.mec-single-event.\30 {
    margin-top: 64px;
}

.mec-events-meta-group-booking .mec-booking-shortcode,
.mec-single-event .mec-events-meta-group-booking,
.mec-single-event .mec-frontbox {
    margin-bottom: 30px;
    padding: 24px;
    background: var(--accent, #4abdac) !important;
    border: 1px solid var(--accent, #4abdac) !important;
    color: var(--contrast, #000000) !important;
    border-radius: 8px !important;
}

.mec-single-event-organizer {
    padding: 0;
}

.mec-single-event .mec-single-event-organizer dd {
    padding-left: 0;
    margin-bottom: 10px;
    display: table;
}

.mec-single-event .mec-event-meta .mec-single-event-organizer .mec-events-single-section-title,
.mec-single-event .mec-event-meta dd.mec-organizer-tel a,
.mec-single-event .mec-event-meta dd.mec-organizer-email a,
.mec-single-event .mec-events-meta-date dd span,
.mec-single-event .mec-single-event-additional-organizers dd span,
.mec-single-event .mec-single-event-location dd span,
.mec-single-event .mec-single-event-organizer dd span {
    padding: 0;
    margin-top: 0;
    display: inline-block;
    color: var(--contrast, #000000) !important;
}

.mec-single-event .mec-event-meta h6,
.mec-single-event-sponsor span,
.mec-single-event .mec-event-meta dd.mec-organizer-email a {
    color: var(--contrast, #000000) !important;
    opacity: 1;
}

.dl_contact {
    flex-direction: column;
    row-gap: 16px;
}

.mec-event-list-modern .mec-event-article {
    display: flex !important;
    align-items: flex-start !important;
    position: relative;
    padding: 32px 0;
    border-top: none;
    background: transparent;
    gap: 32px;
}

.date_box {
    width: 100%;
    max-width: 112px;
}

.event_listing_heading_desciription {
    padding: 0;
}

.mec-event-list-modern .mec-event-date {
    display: flex;
    width: 100%;
    max-width: 112px;
    padding: 12px 4px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    border: var(--Stroke-Border-Width, 1px) solid rgba(4, 9, 9, 0.15);
    position: relative !important;
    top: auto !important;
    left: auto !important;
}

.mec-event-list-modern .col-md-2.col-sm-2 {
    top: 0 !important;
}

.mec-event-article .event-f {
    font-family: var(--gp-font--inter) !important;
    font-size: clamp(1.5rem, 5vw, 2.15rem) !important;
    font-style: normal;
    font-weight: 700 !important;
    line-height: clamp(1.95rem, 5vw, 2.925rem) !important;
    margin-bottom: 24px;
    letter-spacing: -0.36px !important;
}

.mec-event-list-modern .event-da {
    margin: 0 !important;
}

.mec-event-list-modern .mec-event-article:nth-child(3n + 1) .mec-event-date {
    background-color: var(--primary, #911745);
    color: var(--base-2, #f2f2e8) !important;
}

.mec-event-list-modern .mec-event-article:nth-child(3n + 2) .mec-event-date {
    background-color: var(--gold, #cfa14b);
}

.mec-event-list-modern .mec-event-article:nth-child(3n + 2) .event-da,
.mec-event-list-modern .mec-event-article:nth-child(3n + 3) .event-da {
    color: var(--contrast, #000000) !important;
}

.mec-event-article:nth-child(3n + 2) .event-f,
.mec-event-article:nth-child(3n + 3) .event-f {
    color: var(--primary, #911745) !important;
}

.mec-event-article:nth-child(3n + 2) .event-d.mec-color,
.mec-event-list-modern .mec-event-article:nth-child(3n + 3) .event-d.mec-color {
    color: var(--contrast, #000000) !important;
}

.mec-event-list-modern .mec-event-article:nth-child(3n + 3) .mec-event-date {
    background-color: var(--accent, #4abdac);
}

.mec-event-list-modern .mec-event-date .event-f {
    color: #fff;
    font-size: 0.85rem;
    font-weight: 500;
    text-transform: capitalize;
    margin: 0;
    padding: 0;
}

.mec-event-list-modern .event-d.mec-color {
    padding: 0;
}

.mec-event-list-modern .mec-event-date .event-d,
.event-da,
.event-d.mec-color {
    font-size: 1rem;
    color: inherit;
    font-family: var(--gp-font--poppins) !important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    text-transform: capitalize;
}

.mec-event-list-modern .mec-event-date .event-da {
    color: #fff;
    font-size: 0.85rem;
    font-weight: 400;
}

.mec-event-list-modern .col-md-10 {
    padding-left: 1.5rem;
    float: none !important;
    flex: 1;
    padding-top: 0;
    padding-bottom: 0;
}

.mec-event-list-modern .mec-event-title {
    margin: 0 !important;
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: capitalize;
    color: var(--primary, #911745);
    letter-spacing: -0.28px !important;
}

.mec-event-list-modern .mec-event-description {
    color: var(--contrast, #000000) !important;
    margin-bottom: 0 !important;
    margin-top: 16px !important;
}

.mec-event-list-modern .mec-event-title a {
    color: #7b1f3a;
    text-decoration: none;
}

.mec-event-list-modern .mec-event-title a:hover {
    text-decoration: underline;
}

.mec-event-list-modern .mec-event-loc-place {
    font-size: 0.95rem;
    color: #444;
    margin-bottom: 0.5rem;
    font-weight: 500;
}

.mec-event-list-modern .mec-event-article .col-md-2,
.mec-event-list-modern .mec-event-article .col-md-10 {
    padding-top: 0;
    padding-bottom: 0;
}

.mec-event-list-modern .mec-event-article svg,
.mec-event-list-modern .mec-event-article [class*="mec-sl-"] {
    display: none !important;
}

.mec-wrap .mec-clear:after,
.mec-wrap .mec-clear:before {
    content: none !important;
    display: none !important;
}

.mec-event-list-modern .col-md-2 {
    position: relative !important;
    float: none !important;
    flex-shrink: 0;
    width: 140px;
}

.mec-load-more-wrap {
    display: flex;
    margin-top: 32px;
}

.mec-load-more-button {
    display: flex;
    padding: 10px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    border: 1px solid rgba(4, 9, 9, 0.15);
    background: var(--primary, #911744);
    color: var(--base, #fff);
    font-family: var(--gp-font--poppins) !important;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    letter-spacing: -0.28px;
    text-transform: capitalize;
}

.mec-load-more-button:hover {
    background: var(--accent, #4abdac);
}

.mec-month-divider {
    display: none !important;
}

/****************************
    Sticky Header / Navigation
****************************/

@media screen and (max-width: 1200px) {
    #sticky-primary-menu li a {
        font-size: 0.875rem;
    }

    .sticky_buttons .btn {
        font-size: 0.875rem !important;
    }
}

/****************************
    Print Styles
****************************/

@media print {
    .sidebar-container,
    .single_sidebar,
    .teal-box,
    .sticky {
        position: relative !important;
        top: 0 !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
        inset: auto !important;
    }

    .flexbox_single,
    .single_container,
    .single_sidebar {
        overflow: visible !important;
        height: auto !important;
        min-height: auto !important;
    }

    .single_sidebar {
        margin-top: 0 !important;
        z-index: auto !important;
    }
}

/****************************
    Responsive Styles
****************************/

@media screen and (max-width: 1024px) {
    .search_results_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 900px) {
    .gb-element-20f515a3.flexbox.space-between {
        flex-direction: column-reverse !important;
    }

    .gb-element-08212205 {
        max-width: 100% !important;
        width: 100%;
    }

    .steps_tabs {
        flex-direction: column;
    }

    .steps_tabs_menu {
        width: 100%;
        max-width: 100%;
    }

    div#gb-tab-menu-item-05466ba3 {
        border-top: 0;
        border-top-left-radius: 0;
    }

    .gb-tabs__menu-item-ed2041fd {
        border-bottom: 1px solid rgba(0, 0, 0, 0.25);
        border-bottom-left-radius: 0;
    }
}

@media screen and (max-width: 768px) {
    .gb-container {
        padding-top: 64px;
        padding-bottom: 20px;
    }

    .key-features-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    section.hero_section_img {
        background-image: url(https://devftri.evokad.com/wp-content/uploads/2026/04/44.jpg) !important;
    }

    .gradient_btn {
        border: 1px solid var(--base, #ffffff);
    }

    .border-container {
        border-top: var(--primary, #911746) 1px solid !important;
        padding-top: 22px;
        margin-bottom: 22px;
    }

    .flexbox_single {
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }

    .single_box_container {
        margin: 0;
        margin-top: 18px;
    }

    .single_sidebar {
        max-width: 100%;
    }

    .single-container {
        position: relative !important;
        width: 100% !important;
        top: 0 !important;
    }

    .search_hero {
        padding: 36px 20px;
    }

    .search_results_section {
        padding: 40px 20px;
    }

    .search_results_grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .search_meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .search_form_wrapper {
        max-width: 100%;
    }

    .search_input_group {
        padding: 5px 6px 5px 18px;
    }

    .search_submit_btn {
        padding: 10px 18px;
        font-size: 0.875rem !important;
    }

    .mec-event-list-modern .mec-event-article {
        flex-wrap: wrap;
    }

    .mec-event-list-modern .mec-event-date,
    .date_box {
        width: 100% !important;
        max-width: 100% !important;
    }

    .zip-search-widget {
        flex-direction: column;
        width: 100% !important;
    }

    .zip-search-widget .gradient_btn {
        width: 100%;
    }

    .single_content {
        width: 100%;
        max-width: 100%;
    }

    .learn_more_container {
        position: relative !important;
        width: 100%;
        margin-top: 48px !important;
    }

    .carousel_item_product {
        height: auto;
        position: relative;
        width: 100% !important;
    }

    .map-popup {
        position: fixed !important;
        left: 16px !important;
        right: 16px !important;
        bottom: 24px !important;
        top: auto !important;
        width: auto !important;
        max-width: 100% !important;
        border-radius: 16px;
        padding: 18px 20px;
        box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.12);
    }

    .btn,
    .gform_button,
    .gform_previous_button,
    .gform_next_button {
        height: auto;
    }

    .featured-blog-image img {
        width: 100%;
        max-width: 640px;
        height: 222px;
    }
}