/* =====================================================
   PROCORA Fruit3 — Components
   Buttons, search, CTAs, popup forms

   RFQ Popup Maker IDs — keep in sync with:
   fruit3/inc/procora-config.php
   PROCORA_RFQ_POPUP_ID (4665) → #popmake-4665
   PROCORA_RFQ_POPUP_THEME_ID (4658) → .pum-theme-4658

   Global `button` selector: deferred post–Go Live (KNOWN_ISSUES).
   ===================================================== */

/* --- 7. Global Button System --- */
.button,
.wp-block-button__link,
.woocommerce a.button,
button:not(.pswp__button):not(.procora-gallery-lightbox__close):not(.procora-gallery-lightbox__nav):not(.dgwt-wcas-search-submit):not(.pum-close):not(.procora-rfq-success__close):not(.procora-contact-success__close):not(.procora-rfq-btn):not(.procora-share-btn),
input[type="submit"] {
    background: linear-gradient(90deg, #17a2b8 0%, #20b3c2 50%, #1489c6 100%);
    color: #ffffff !important;
    border: none;
    border-radius: 10px;
    padding: 10px 22px;
    font-weight: 600;
    text-align: center;
    display: inline-block;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(20,137,198,0.35);
    transition: background .25s ease, box-shadow .25s ease, transform .25s ease;
    font-size: 15px !important;
    letter-spacing: 0.2px;
    line-height: 1.4;
}

.button:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
button:not(.pswp__button):not(.procora-gallery-lightbox__close):not(.procora-gallery-lightbox__nav):not(.dgwt-wcas-search-submit):not(.pum-close):not(.procora-rfq-success__close):not(.procora-contact-success__close):not(.procora-rfq-btn):not(.procora-share-btn):hover,
input[type="submit"]:hover {
    background: linear-gradient(90deg, #0e8fa4 0%, #149bb0 50%, #0b5fa5 100%);
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(20,137,198,0.45);
    transform: translateY(-2px);
}

.button:active,
.wp-block-button__link:active,
.woocommerce a.button:active,
button:not(.pswp__button):not(.procora-gallery-lightbox__close):not(.procora-gallery-lightbox__nav):not(.dgwt-wcas-search-submit):not(.pum-close):not(.procora-rfq-success__close):not(.procora-contact-success__close):not(.procora-rfq-btn):not(.procora-share-btn):active {
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(20,137,198,0.3);
}

.button.full,
.wp-block-button__link.full {
    width: 100%;
}

.button.small,
.wp-block-button__link.small {
    padding: 6px 14px;
    font-size: 13px;
}

.button.large,
.wp-block-button__link.large {
    padding: 14px 28px;
    font-size: 16px;
}

/* --- 14. Search Results --- */
.procora-search-summary {
    text-align: center;
    margin-bottom: 16px;
}

.procora-search-summary h1 {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    color: #0b3d63;
}

.procora-search-summary p {
    font-size: 16px;
    color: #666;
    margin-top: 8px;
}

.procora-search-cats {
    margin-bottom: 24px;
}

.procora-search-cats h2,
.procora-search-products h2 {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 12px;
    color: #0b3d63;
}

.procora-cat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 24px;
}

.procora-cat-card {
    display: flex;
    flex-direction: column;
    padding: 32px;
    border: 1px solid #e6e6e6;
    border-radius: 20px;
    background: #fff;
    text-decoration: none;
    transition: .25s;
}

.procora-cat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 40px rgba(0,0,0,.08);
}

.procora-cat-card .cat-title {
    font-size: 28px;
    font-weight: 700;
    color: #222;
    margin-bottom: 10px;
}

.procora-cat-card .cat-desc {
    color: #666;
    line-height: 1.7;
    margin-bottom: 25px;
}

.procora-cat-card .cat-link {
    margin-top: auto;
    color: #0A67AE;
    font-weight: 600;
}

.procora-search-products {
    margin-top: 40px;
}

.procora-search-breadcrumb {
    font-size: 13px;
    color: #888;
    margin-bottom: 25px;
}

.procora-search-breadcrumb a {
    color: #777;
    text-decoration: none;
}

.procora-search-breadcrumb a:hover {
    color: #15639a;
}

.procora-search-breadcrumb .sep {
    margin: 0 6px;
    color: #bbb;
}

/* --- Header product search (FiboSearch) --- */
/* No focus border highlight — keep same look as idle. */
.dgwt-wcas-style-pirx.dgwt-wcas-search-focused .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input,
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input:focus,
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input:focus-visible {
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}

.site-search .dgwt-wcas-search-submit {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-width: 0;
    width: auto;
    height: auto;
    font-size: inherit !important;
    letter-spacing: 0;
    line-height: 1;
    transform: none;
}

.site-search .dgwt-wcas-search-submit:hover,
.site-search .dgwt-wcas-search-submit:active {
    background: transparent !important;
    box-shadow: none !important;
    transform: none;
}

/* --- 15. RFQ, Call, LINE & Share CTAs --- */
.procora-cta {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin: 25px 0;
}

/* RFQ — excluded from global button selector; set gradient explicitly */
.procora-rfq-btn,
a.procora-rfq-btn,
button.procora-rfq-btn {
    width: 100%;
    height: 64px;
    border: none;
    border-radius: 14px;
    background: linear-gradient(90deg, #17a2b8 0%, #20b3c2 50%, #1489c6 100%);
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    line-height: 1.4 !important;
    box-shadow: 0 8px 20px rgba(20,137,198,.28);
    transition: .25s;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
}

.procora-rfq-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(20,137,198,.35);
}

.procora-rfq-btn .s-icon {
    display: inline-flex !important;
    align-items: center !important;
    margin-bottom: 0 !important;
}

/* Call + LINE side by side — total width matches RFQ */
.procora-cta__row {
    display: flex;
    gap: 12px;
    width: 100%;
    align-items: stretch;
}

.procora-call-btn,
.procora-line-btn {
    flex: 1 1 0;
    min-width: 0;
    height: 56px;
    border-radius: 14px;
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
    text-decoration: none;
    transition: .25s;
    margin: 0 !important;
    display: inline-flex !important;
    justify-content: center;
    align-items: center;
    gap: 6px;
    box-sizing: border-box;
}

.procora-call-btn {
    border: none;
    background: linear-gradient(90deg, #17a2b8 0%, #20b3c2 50%, #1489c6 100%);
    box-shadow: 0 8px 20px rgba(20,137,198,.28);
}

.procora-call-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(20,137,198,.35);
    color: #fff !important;
}

.procora-line-btn {
    background: #06c755;
    box-shadow: 0 8px 24px rgba(22,163,74,.20);
    max-width: none !important;
}

.procora-line-btn:hover {
    transform: translateY(-2px);
    background: #0cb350;
    color: #fff !important;
}

.procora-call-btn .s-icon,
.procora-line-btn .s-icon,
.procora-call-btn svg,
.procora-line-btn svg {
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0;
    margin-bottom: 0 !important;
}

.procora-cta__label--mobile {
    display: none;
}

.procora-cta__label--desktop {
    display: inline;
}

/* Share row — match product_meta “หมวดหมู่” label / link colors */
.procora-product-share {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.procora-product-share__label {
    font-size: 0.875em;
    font-weight: 400;
    color: #222;
    letter-spacing: 0.02em;
}

.procora-share-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 4px !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 6px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #095eb6 !important;
    cursor: pointer;
    line-height: 1 !important;
    font-size: inherit !important;
    letter-spacing: 0 !important;
    transform: none !important;
}

.procora-share-btn:hover,
.procora-share-btn:active {
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    color: #0b5fa5 !important;
}

.procora-share-btn svg {
    display: block;
    width: 20px;
    height: 20px;
    stroke: currentColor;
}

.procora-product-share__feedback {
    font-size: 13px;
    color: #0b5fa5;
}

@media (max-width: 767px) {
    .procora-cta__row {
        gap: 10px;
    }

    .procora-call-btn,
    .procora-line-btn {
        font-size: 18px !important;
        height: 52px;
    }

    .procora-cta__label--desktop {
        display: none;
    }

    .procora-cta__label--mobile {
        display: inline;
    }
}

/* --- 16. RFQ Popup (Popup Maker + CF7) --- */
#popmake-4665.pum-container {
    opacity: 1 !important;
    background-color: #ffffff !important;
    padding: 18px 26px 18px !important;
    box-shadow: 0px 10px 40px rgba(13, 79, 130, 0.25) !important;
    max-height: calc(100dvh - 16px);
    max-height: calc(100vh - 16px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.pum-container {
    opacity: 1 !important;
    background-color: #ffffff !important;
    box-shadow: 0px 10px 40px rgba(13, 79, 130, 0.25) !important;
}

.pum-container h1,
.pum-container h2,
.pum-container h3,
.pum-container label,
.pum-container .wpcf7-form {
    color: #111111 !important;
    opacity: 1 !important;
}

.pum-container p[style*="color: red"],
.pum-container p[style*="color:red"],
.pum-container span[style*="color: red"],
.pum-container span[style*="color:red"] {
    color: #e53e3e !important;
    opacity: 1 !important;
}

.pum-container .wpcf7-form p {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
    line-height: 1.3 !important;
}

#popmake-4665 .pum-content h1,
#popmake-4665 .pum-content h2,
#popmake-4665 .pum-content h3 {
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
}

#popmake-4665 .pum-content > p {
    margin: 0 0 8px !important;
    line-height: 1.4 !important;
    font-size: 14px !important;
}

.pum-container label {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    font-weight: 400 !important;
    display: block !important;
    line-height: 1.35 !important;
    font-size: 15px !important;
}

.pum-container .wpcf7-form br {
    display: none;
}

.form-row-twin {
    display: flex !important;
    width: 100% !important;
    gap: 12px !important;
    margin-bottom: 8px !important;
    align-items: flex-start !important;
    box-sizing: border-box !important;
}

.form-col-left,
.form-col-right {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

.form-col-left .wpcf7-form-control-wrap,
.form-col-right .wpcf7-form-control-wrap,
.form-col-left input,
.form-col-right input {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.pum-container input[type="text"],
.pum-container input[type="email"],
.pum-container input[type="tel"] {
    background-color: #ffffff !important;
    border: 1px solid #cccccc !important;
    color: #333333 !important;
    width: 100% !important;
    margin-top: 3px !important;
    margin-bottom: 0 !important;
    opacity: 1 !important;
    padding: 8px 12px !important;
    line-height: 1.4 !important;
    font-size: 15px !important;
}

.pum-container textarea {
    background-color: #ffffff !important;
    border: 1px solid #cccccc !important;
    color: #333333 !important;
    width: 100% !important;
    margin-top: 3px !important;
    margin-bottom: 0 !important;
    opacity: 1 !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 8px 12px !important;
    line-height: 1.4 !important;
    font-size: 15px !important;
    resize: none !important;
}

.pum-container .wpcf7-form-control-wrap {
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    width: 100% !important;
}

.pum-container input::placeholder,
.pum-container textarea::placeholder {
    color: #a0aec0 !important;
    opacity: 1 !important;
}

.pum-container input[type="submit"] {
    display: block !important;
    margin: 14px auto 0 auto !important;
    padding: 10px 24px !important;
    font-size: 16px !important;
}

.pum-container .wpcf7-form-control-wrap[class*="product-name"] textarea {
    height: 52px !important;
    min-height: 52px !important;
    line-height: 1.4 !important;
    font-size: 15px !important;
    resize: none !important;
}

.pum-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    font-size: 26px !important;
    font-weight: 400 !important;
    text-align: center !important;
    transform: none !important;
    background: #0e7bbf !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

.pum-close:hover {
    transform: none !important;
    background: #0b5fa5 !important;
}

html.pum-open,
html.pum-open-overlay,
html.procora-rfq-scroll-lock,
html:has(#popmake-4665.popmake-active) {
    overflow: hidden !important;
    overscroll-behavior: none;
    padding-right: 0 !important;
}

html.pum-open body,
html.pum-open-overlay body,
html.procora-rfq-scroll-lock body,
html:has(#popmake-4665.popmake-active) body {
    overflow: hidden !important;
    overscroll-behavior: none;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

body.procora-rfq-scroll-lock {
    position: fixed !important;
    width: 100% !important;
    left: 0;
    right: 0;
}

.pum-overlay,
html.pum-open .pum-overlay {
    overflow: hidden !important;
}

#popmake-4665 .wpcf7-response-output {
    display: none !important;
}

#popmake-4665.is-rfq-sent .wpcf7-form,
#popmake-4665.is-rfq-sent .pum-content > :not(.procora-rfq-success) {
    display: none !important;
}

#popmake-4665.is-rfq-sent > .pum-close {
    display: none !important;
}

#popmake-4665.is-rfq-sent.pum-container {
    overflow: visible;
    max-height: none;
    padding: 28px 24px !important;
}

.procora-rfq-success {
    display: none;
    text-align: center;
    padding: 8px 12px 4px;
}

#popmake-4665.is-rfq-sent .procora-rfq-success {
    display: block;
}

.procora-rfq-success__message {
    margin: 0 0 20px;
    font-size: 22px;
    font-weight: 700;
    color: #111111 !important;
    opacity: 1 !important;
    line-height: 1.4;
    -webkit-text-fill-color: #111111;
}

#popmake-4665 .procora-rfq-success .procora-rfq-success__message {
    color: #111111 !important;
    opacity: 1 !important;
    font-weight: 700 !important;
}

.procora-rfq-success__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 140px;
    height: 48px;
    padding: 0 28px;
    border: none;
    border-radius: 10px;
    background: linear-gradient(90deg, #17a2b8 0%, #20b3c2 50%, #1489c6 100%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(20, 137, 198, 0.35);
    transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.procora-rfq-success__close:hover {
    background: linear-gradient(90deg, #0e8fa4 0%, #149bb0 50%, #0b5fa5 100%);
    box-shadow: 0 10px 24px rgba(20, 137, 198, 0.45);
    transform: translateY(-2px);
}

#popmake-4665 .pum-content {
    padding-bottom: 0 !important;
}

#popmake-4665 .pum-theme-4658 .pum-content,
#popmake-4665 .wpcf7-form {
    margin-bottom: 0;
}

#popmake-4665 .wpcf7-spinner {
    display: none;
}

/* --- 17. Inline [s_icon] + Contact page CF7 --- */

/*
 * Keep icon→text gap tight.
 * Avoid flex+gap on content paragraphs: HTML spaces become extra flex items.
 * Footer uses flex + align-items for vertical centering (gap only; no svg margin inside wrapper).
 */
.procora-inline-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 0;
    margin: 0 5px 0 0;
}

.procora-inline-icon svg {
    display: block;
    width: 1.15em;
    height: 1.15em;
    margin: 0 !important;
    flex-shrink: 0;
}

/* Call button only — flex is fine (no stray text nodes between icon and label spans) */
.entry-content .wp-block-button__link:has(.procora-inline-icon),
.entry-content .wp-block-button__link:has(svg.feather) {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.entry-content .wp-block-button__link .procora-inline-icon {
    margin-right: 0;
}

.entry-content .wp-block-button__link .procora-inline-icon svg {
    width: 1.15em;
    height: 1.15em;
}

/* Fallback only when SVG is a direct child (no .procora-inline-icon wrapper) */
.entry-content .wp-block-column p > svg.feather,
.entry-content .wp-block-button__link > svg.feather {
    display: inline-block;
    vertical-align: middle;
    width: 1.15em;
    height: 1.15em;
    margin: 0 5px 0 0;
    position: relative;
    top: 0.05em;
}

/* Footer: keep text-align (center) — do NOT use flex on <p>
   (flex breaks Gutenberg/Customizer text-align: center) */
.site-footer .procora-inline-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 0;
    margin: 0 6px 0 0;
}

.site-footer .procora-inline-icon svg {
    width: 16px;
    height: 16px;
    margin: 0 !important;
}

.site-footer p > svg.feather {
    display: inline-block;
    vertical-align: middle;
    width: 16px;
    height: 16px;
    margin: 0 6px 0 0;
}

/* Tighter CF7 field spacing on Contact page */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form p {
    margin-top: 0;
    margin-bottom: 8px;
    line-height: 1.3;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form label {
    display: block;
    margin: 0 0 2px;
    line-height: 1.35;
    font-weight: 400;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form br {
    display: none;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="text"],
.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="email"],
.wp-block-contact-form-7-contact-form-selector .wpcf7-form input[type="tel"],
.wp-block-contact-form-7-contact-form-selector .wpcf7-form select,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-top: 2px;
    margin-bottom: 0;
}

/* Additional details — roughly half the default tall CF7 textarea */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form textarea,
.wp-block-contact-form-7-contact-form-selector textarea.wpcf7-textarea {
    height: 88px !important;
    min-height: 88px !important;
    resize: vertical;
}

/* Hide default CF7 success box on Contact page (custom overlay handles success) */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form.sent .wpcf7-response-output,
.wp-block-contact-form-7-contact-form-selector .wpcf7-response-output.wpcf7-mail-sent-ok {
    display: none !important;
}

/* Contact columns — product-card frame */
.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) {
    gap: 24px !important;
    align-items: stretch;
}

.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) > .wp-block-column {
    background: #ffffff;
    border: 1px solid rgba(13, 79, 130, 0.14);
    border-radius: 16px;
    box-shadow: 0 10px 24px rgba(13, 79, 130, 0.12);
    padding: 24px;
    box-sizing: border-box;
}

/* Tighten heading → body gap in Contact left column */
.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) > .wp-block-column:first-child .wp-block-heading {
    margin-top: 0.55em;
    margin-bottom: 0.12em;
    line-height: 1.3;
}

.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) > .wp-block-column:first-child .wp-block-heading:first-child {
    margin-top: 0;
}

.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) > .wp-block-column:first-child p {
    margin-top: 0;
    margin-bottom: 0.55em;
}

.wp-block-columns:has(.wp-block-contact-form-7-contact-form-selector) > .wp-block-column:first-child .wp-block-heading + p {
    margin-top: 0;
    margin-bottom: 0.7em;
}

/* --- 18. Contact form success overlay (RFQ-style) --- */
.procora-contact-success-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(11, 61, 99, 0.45);
    box-sizing: border-box;
}

.procora-contact-success-overlay[hidden] {
    display: none !important;
}

.procora-contact-success {
    width: 100%;
    max-width: 420px;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 16px 40px rgba(11, 61, 99, 0.28);
    padding: 32px 28px 28px;
    text-align: center;
    box-sizing: border-box;
}

.procora-contact-success__message {
    margin: 0 0 22px;
}

.procora-contact-success__title {
    margin: 0 0 8px;
    font-size: 22px;
    font-weight: 700;
    color: #111111;
    line-height: 1.35;
}

.procora-contact-success__sub {
    margin: 0;
    font-size: 16px;
    font-weight: 400;
    color: #333333;
    line-height: 1.45;
}

.procora-contact-success__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 140px;
    height: 48px;
    padding: 0 28px;
    border: none;
    border-radius: 10px;
    background: linear-gradient(90deg, #17a2b8 0%, #20b3c2 50%, #1489c6 100%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(20, 137, 198, 0.35);
    transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.procora-contact-success__close:hover {
    background: linear-gradient(90deg, #0e8fa4 0%, #149bb0 50%, #0b5fa5 100%);
    box-shadow: 0 10px 24px rgba(20, 137, 198, 0.45);
    transform: translateY(-2px);
}

html.procora-contact-scroll-lock,
html.procora-contact-scroll-lock body {
    overflow: hidden !important;
    overscroll-behavior: none;
}

body.procora-contact-scroll-lock {
    position: fixed !important;
    width: 100% !important;
    left: 0;
    right: 0;
}

@media (max-width: 767px) {
    .wp-block-contact-form-7-contact-form-selector .form-row-twin {
        flex-direction: column;
        gap: 8px;
    }
}
