/**
 * CMR Common Modal Styles & Typography
 * Standardizes all modals across the website to match the exact design system:
 * 1. Strictly hides closed/hidden modals to prevent blank popups
 * 2. Centers active modals (Elementor Popups, Bootstrap Modals, Magnific Popup, Review Modals)
 * 3. Translucent dark overlay with backdrop-filter blur so background page is visible and blurred
 * 4. Page scroll locking while any modal is open
 * 5. Complete Instrument Sans Typography System
 * 6. Pixel-perfect 2-Column Split Free Report / Consultation Modal (Popup 7758)
 */

/* ==========================================================================
   1. Body & HTML Scroll Lock when Modal is Open
   ========================================================================== */
html.cmr-modal-open,
body.cmr-modal-open,
html.elementor-popup-modal-open,
body.elementor-popup-modal-open,
body.modal-open {
    overflow: hidden !important;
    overscroll-behavior: none !important;
}

/* ==========================================================================
   2. Strict Hide for Inactive / Closed Modals & Backdrops
   ========================================================================== */
.dialog-widget[style*="display: none"],
.dialog-widget[style*="display:none"],
.elementor-popup-modal[style*="display: none"],
.elementor-popup-modal[style*="display:none"],
.dialog-type-lightbox[style*="display: none"],
.dialog-type-lightbox[style*="display:none"],
.elementor-location-popup:not(.dialog-widget-content *):not(.dialog-message *),
.elementor-location-popup[style*="display: none"],
.elementor-location-popup[style*="display:none"],
.dialog-backdrop:not(.dialog-backdrop-active),
.modal:not(.show):not([style*="display: block"]),
.modal-backdrop:not(.show),
#cmr-review-modal-overlay:not(.cmr-open),
#cmr-review-modal[style*="display: none"],
#cmr-review-modal:not(.cmr-open):not([style*="display: flex"]):not([style*="display: block"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* ==========================================================================
   3. Active Elementor Popups & Lightboxes (Centered with Backdrop Blur)
   ========================================================================== */
.dialog-widget.dialog-type-lightbox:not([style*="display: none"]):not([style*="display:none"]),
.dialog-widget.dialog-lightbox-widget:not([style*="display: none"]):not([style*="display:none"]),
.elementor-popup-modal:not([style*="display: none"]):not([style*="display:none"]) {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100% !important;
    max-height: 100dvh !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(15, 23, 42, 0.5) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    z-index: 999999 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    padding: 20px 16px !important;
    box-sizing: border-box !important;
}

.dialog-backdrop.dialog-backdrop-active {
    display: block !important;
    background-color: rgba(15, 23, 42, 0.5) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 999998 !important;
}

/* Dialog Container Reset */
.dialog-widget.dialog-type-lightbox .dialog-widget-content,
.dialog-widget.dialog-lightbox-widget .dialog-widget-content,
.elementor-popup-modal .dialog-widget-content {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    margin: auto !important;
    max-height: none !important;
    max-width: 950px !important;
    width: 950px !important;
    overflow: visible !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.4) !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    border: none !important;
    height: auto !important;
    min-height: 0 !important;
}

.elementor-popup-modal .dialog-message,
.dialog-widget .dialog-message {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    height: auto !important;
    min-height: 0 !important;
}

/* Close Button (×) */
.dialog-close-button,
.dialog-lightbox-close-button {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 24px !important;
    color: #4b5563 !important;
    cursor: pointer !important;
    z-index: 1000 !important;
    background: transparent !important;
    border: none !important;
    line-height: 1 !important;
    transition: color 0.15s ease !important;
}

.dialog-close-button:hover,
.dialog-lightbox-close-button:hover {
    color: #000000 !important;
}

/* ==========================================================================
   4. Bootstrap Modals & Magnific Popup
   ========================================================================== */
.modal-backdrop.show {
    display: block !important;
    background-color: rgba(15, 23, 42, 0.5) !important;
    opacity: 1 !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 1050 !important;
}

.modal.show {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1055 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 30px 20px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
}

.modal.show::before,
.modal.show::after {
    content: '' !important;
    display: block !important;
    flex: 1 0 auto !important;
    min-height: 0 !important;
    pointer-events: none !important;
}

.modal-dialog {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
    flex-shrink: 0 !important;
    max-width: 600px;
    width: 100%;
}

.modal-content,
.modal-dialog,
.dialog-widget-content,
.elementor-popup-modal .dialog-widget-content,
.elementor-popup-modal .dialog-message,
.elementor-popup-modal .e-con,
.elementor-popup-modal .e-con-inner,
.elementor-popup-modal .elementor,
.mfp-content,
.mfp-content > *,
#cmr-review-modal-box,
.cmr-modal-content,
.cmr-review-modal-content {
    border-radius: 0 !important;
    border: none !important;
    box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.35) !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
}

.mfp-bg.mfp-ready {
    display: block !important;
    background: rgba(15, 23, 42, 0.5) !important;
    opacity: 1 !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    z-index: 100000 !important;
    position: fixed !important;
    inset: 0 !important;
}

.mfp-wrap.mfp-ready {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100001 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
}

/* ==========================================================================
   5. Typography System: Instrument Sans
   ========================================================================== */
.elementor-popup-modal,
.dialog-widget.dialog-type-lightbox,
.modal,
#cmr-review-modal-overlay,
#cmr-review-modal,
.mfp-wrap {
    font-family: 'Instrument Sans', sans-serif !important;
}

.elementor-popup-modal *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect),
.dialog-widget.dialog-type-lightbox *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect),
.modal *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect),
#cmr-review-modal-overlay *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect),
#cmr-review-modal *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect),
.mfp-wrap *:not(i):not([class*="fa-"]):not([class*="fa"]):not([class*="fas"]):not([class*="far"]):not([class*="fab"]):not([class*="eicon"]):not([class*="bi-"]):not([class*="ri-"]):not(svg):not(path):not(circle):not(g):not(polygon):not(rect) {
    font-family: 'Instrument Sans', sans-serif !important;
}

/* Ensure FontAwesome and Icon fonts are preserved across all modals */
.elementor-popup-modal [class*="fa-"],
.elementor-popup-modal .fa,
.elementor-popup-modal .fas,
.elementor-popup-modal .far,
.elementor-popup-modal .fab,
.elementor-popup-modal .fa-solid,
.elementor-popup-modal .fa-regular,
.elementor-popup-modal .fa-brands,
.elementor-popup-modal i,
.elementor-popup-modal .elementor-icon-list-icon i,
.modal [class*="fa-"],
.modal .fa,
.modal .fas,
.modal .fa-solid {
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free', 'FontAwesome' !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

.elementor-popup-modal .fas,
.elementor-popup-modal .fa-solid,
.elementor-popup-modal i.fas {
    font-weight: 900 !important;
}

.elementor-popup-modal .far,
.elementor-popup-modal .fa-regular {
    font-weight: 400 !important;
}

.elementor-popup-modal .fab,
.elementor-popup-modal .fa-brands {
    font-family: 'Font Awesome 6 Brands', 'Font Awesome 5 Brands', 'FontAwesome' !important;
    font-weight: 400 !important;
}

/* ==========================================================================
   6. Split 2-Column Free Report / Consultation Modal (Popup 7758 & 7637)
   ========================================================================== */

/* Outer Popup Parent Container Reset */
.elementor-7758,
.elementor-7637,
.elementor-7832,
.elementor-7849,
.elementor-popup-modal[data-elementor-id="7758"],
.elementor-popup-modal[data-elementor-id="7637"],
.elementor-popup-modal[data-elementor-id="7832"],
.elementor-popup-modal[data-elementor-id="7849"],
.elementor-popup-modal .elementor-element-295b2c6,
.elementor-popup-modal .elementor-element-5c7df874,
.elementor-popup-modal .elementor-element-4dd37a6,
.elementor-popup-modal .elementor-element-2371b89,
.elementor-element.elementor-element-295b2c6,
.elementor-element.elementor-element-5c7df874,
.elementor-element.elementor-element-4dd37a6,
.elementor-element.elementor-element-2371b89 {
    padding: 0 !important;
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 950px !important;
    background: transparent !important;
    border: none !important;
    min-height: 0 !important;
    height: auto !important;
}

.elementor-7758 .e-con-inner,
.elementor-7637 .e-con-inner,
.elementor-7832 .e-con-inner,
.elementor-7849 .e-con-inner,
.elementor-popup-modal .e-con-inner,
.elementor-7758 .elementor-element-295b2c6 > .e-con-inner,
.elementor-7637 .elementor-element-5c7df874 > .e-con-inner,
.elementor-7832 .elementor-element-4dd37a6 > .e-con-inner,
.elementor-7849 .elementor-element-2371b89 > .e-con-inner,
.elementor-popup-modal[data-elementor-id="7758"] .elementor-element-295b2c6 > .e-con-inner,
.elementor-popup-modal[data-elementor-id="7637"] .elementor-element-5c7df874 > .e-con-inner,
.elementor-popup-modal[data-elementor-id="7832"] .elementor-element-4dd37a6 > .e-con-inner,
.elementor-popup-modal[data-elementor-id="7849"] .elementor-element-2371b89 > .e-con-inner {
    padding: 0 !important;
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 950px !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
    border: none !important;
    min-height: 0 !important;
    height: auto !important;
}

/* Flex Row Container holding Left & Right columns */
.elementor-7758 .elementor-element-1d1d0d3,
.elementor-7637 .elementor-element-2eeace2,
.elementor-7832 .elementor-element-d33c8e6,
.elementor-7849 .elementor-element-804d4ea,
.elementor-popup-modal .elementor-element-1d1d0d3,
.elementor-popup-modal .elementor-element-2eeace2,
.elementor-popup-modal .elementor-element-d33c8e6,
.elementor-popup-modal .elementor-element-804d4ea {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 950px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
    grid-template-columns: none !important;
    background: #ffffff !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.4) !important;
}

/* --- LEFT COLUMN: Deep Purple Side (All Modals) --- */
.elementor-7758 .elementor-element-fc8da81,
.elementor-7637 .elementor-element-5f053ae,
.elementor-7832 .elementor-element-2f9a6aa,
.elementor-7849 .elementor-element-3d97663,
.elementor-popup-modal .elementor-element-fc8da81,
.elementor-popup-modal .elementor-element-5f053ae,
.elementor-popup-modal .elementor-element-2f9a6aa,
.elementor-popup-modal .elementor-element-3d97663 {
    flex: 0 0 45% !important;
    width: 45% !important;
    max-width: 45% !important;
    padding: 30px 28px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background-color: #4318d1 !important;
    background: #4318d1 !important;
    color: #ffffff !important;
    align-self: stretch !important;
    border-radius: 0 !important;
    height: auto !important;
}

.elementor-7832 .elementor-element-ae8915e p,
.elementor-7849 .elementor-element-6ae161a p,
.elementor-popup-modal .elementor-element-2f9a6aa .elementor-element-ae8915e p,
.elementor-popup-modal .elementor-element-3d97663 .elementor-element-6ae161a p {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.8) !important;
    margin: 0 0 10px 0 !important;
}

.elementor-7758 .elementor-element-de500a4,
.elementor-popup-modal .elementor-element-de500a4 {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

/* Left Title (H2. Headline: SemiBold 600, 28px) */
.elementor-7758 .elementor-element-e5f2560 h2,
.elementor-7637 .elementor-element-f9d72d8 h2,
.elementor-7832 .elementor-element-7ccdac7 h2,
.elementor-7849 .elementor-element-6595cb8 h2,
.elementor-popup-modal .elementor-element-fc8da81 h2,
.elementor-popup-modal .elementor-element-5f053ae h2,
.elementor-popup-modal .elementor-element-2f9a6aa h2,
.elementor-popup-modal .elementor-element-3d97663 h2 {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    line-height: 36px !important;
    letter-spacing: -0.8px !important;
    color: #ffffff !important;
    margin: 0 0 12px 0 !important;
    text-transform: none !important;
}

/* Left Description Text */
.elementor-7758 .elementor-element-1938802,
.elementor-7637 .elementor-element-2edfb42,
.elementor-7832 .elementor-element-e81e06c p,
.elementor-7849 .elementor-element-ae96706 p,
.elementor-popup-modal .elementor-element-fc8da81 p,
.elementor-popup-modal .elementor-element-5f053ae p,
.elementor-popup-modal .elementor-element-2f9a6aa p,
.elementor-popup-modal .elementor-element-3d97663 p {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 22px !important;
    letter-spacing: 0px !important;
    color: rgba(255, 255, 255, 0.9) !important;
    margin: 0 0 18px 0 !important;
}

/* Left Bullet List with Icons */
.elementor-7758 .elementor-element-c1e30ed,
.elementor-7637 .elementor-element-32ec6cc,
.elementor-7637 .elementor-element-a35c3d8,
.elementor-7832 .elementor-element-2122c0a,
.elementor-7849 .elementor-element-bb13090,
.elementor-popup-modal .elementor-element-c1e30ed,
.elementor-popup-modal .elementor-element-de500a4,
.elementor-popup-modal .elementor-element-fc8da81 .elementor-widget {
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    background: transparent !important;
}

.elementor-7758 .elementor-element-c1e30ed .elementor-icon-list-items,
.elementor-7637 .elementor-element-32ec6cc .elementor-icon-list-items,
.elementor-7637 .elementor-element-a35c3d8 .elementor-icon-list-items,
.elementor-7832 .elementor-element-2122c0a .elementor-icon-list-items,
.elementor-7849 .elementor-element-bb13090 .elementor-icon-list-items,
.elementor-popup-modal .elementor-element-fc8da81 .elementor-icon-list-items,
.elementor-popup-modal .elementor-element-5f053ae .elementor-icon-list-items,
.elementor-popup-modal .elementor-element-2f9a6aa .elementor-icon-list-items,
.elementor-popup-modal .elementor-element-3d97663 .elementor-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.elementor-7758 .elementor-element-c1e30ed .elementor-icon-list-item,
.elementor-7637 .elementor-element-32ec6cc .elementor-icon-list-item,
.elementor-7637 .elementor-element-a35c3d8 .elementor-icon-list-item,
.elementor-7832 .elementor-element-2122c0a .elementor-icon-list-item,
.elementor-7849 .elementor-element-bb13090 .elementor-icon-list-item,
.elementor-popup-modal .elementor-element-fc8da81 .elementor-icon-list-item,
.elementor-popup-modal .elementor-element-5f053ae .elementor-icon-list-item,
.elementor-popup-modal .elementor-element-2f9a6aa .elementor-icon-list-item,
.elementor-popup-modal .elementor-element-3d97663 .elementor-icon-list-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-7758 .elementor-element-c1e30ed .elementor-icon-list-icon,
.elementor-7637 .elementor-element-32ec6cc .elementor-icon-list-icon,
.elementor-7637 .elementor-element-a35c3d8 .elementor-icon-list-icon,
.elementor-7832 .elementor-element-2122c0a .elementor-icon-list-icon,
.elementor-7849 .elementor-element-bb13090 .elementor-icon-list-icon,
.elementor-popup-modal .elementor-icon-list-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    flex-shrink: 0 !important;
    margin: 0 12px 0 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1 !important;
}

.elementor-popup-modal .elementor-icon-list-icon i,
.elementor-popup-modal .elementor-icon-list-icon [class*="fa-"],
.elementor-popup-modal .elementor-icon-list-icon .fa,
.elementor-popup-modal .elementor-icon-list-icon .fas,
.elementor-popup-modal .elementor-icon-list-icon .far {
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free', 'FontAwesome' !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-size: 16px !important;
    color: #ffffff !important;
    display: inline-block !important;
    line-height: 1 !important;
}

.elementor-popup-modal .elementor-icon-list-icon svg {
    display: inline-block !important;
    width: 16px !important;
    height: 16px !important;
    fill: #ffffff !important;
    color: #ffffff !important;
    vertical-align: middle !important;
}

.elementor-popup-modal .elementor-icon-list-icon svg path,
.elementor-popup-modal .elementor-icon-list-icon svg circle,
.elementor-popup-modal .elementor-icon-list-icon svg g {
    fill: #ffffff !important;
}

/* Fallback icons if icon list item has empty icon container */
.elementor-popup-modal .elementor-icon-list-item:nth-child(1) .elementor-icon-list-icon:empty::before {
    content: "\f201" !important; /* fa-chart-line */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    color: #ffffff !important;
    display: block !important;
}

.elementor-popup-modal .elementor-icon-list-item:nth-child(2) .elementor-icon-list-icon:empty::before {
    content: "\f0c0" !important; /* fa-users */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    color: #ffffff !important;
    display: block !important;
}

.elementor-popup-modal .elementor-icon-list-item:nth-child(3) .elementor-icon-list-icon:empty::before {
    content: "\f1ad" !important; /* fa-building */
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    color: #ffffff !important;
    display: block !important;
}

.elementor-7637 .elementor-element-7dfe0ab,
.elementor-7637 .elementor-element-a19596a {
    display: none !important;
}

.elementor-7758 .elementor-element-c1e30ed .elementor-icon-list-text,
.elementor-7637 .elementor-element-32ec6cc .elementor-icon-list-text,
.elementor-7637 .elementor-element-a35c3d8 .elementor-icon-list-text,
.elementor-7832 .elementor-element-2122c0a .elementor-icon-list-text,
.elementor-7849 .elementor-element-bb13090 .elementor-icon-list-text,
.elementor-popup-modal .elementor-element-fc8da81 .elementor-icon-list-text,
.elementor-popup-modal .elementor-element-5f053ae .elementor-icon-list-text,
.elementor-popup-modal .elementor-element-2f9a6aa .elementor-icon-list-text,
.elementor-popup-modal .elementor-element-3d97663 .elementor-icon-list-text {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

/* Left Bottom Note (Trusted by 10,000+) */
.elementor-7832 .elementor-element-f7bc24a .elementor-icon-list-text,
.elementor-7849 .elementor-element-fcfa559 .elementor-icon-list-text {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.85) !important;
    white-space: normal !important;
}

/* --- RIGHT COLUMN: White Form Side --- */
.elementor-7758 .elementor-element-5609af6,
.elementor-7637 .elementor-element-49c9d22,
.elementor-7832 .elementor-element-a26a79a,
.elementor-7849 .elementor-element-2123f86,
.elementor-popup-modal .elementor-element-5609af6,
.elementor-popup-modal .elementor-element-49c9d22,
.elementor-popup-modal .elementor-element-a26a79a,
.elementor-popup-modal .elementor-element-2123f86 {
    flex: 0 0 55% !important;
    width: 55% !important;
    max-width: 55% !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    padding: 26px 32px 22px 32px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Right Title: Get Your Free Report / Request a Consultation / Subscribe to Insights */
.elementor-7758 .elementor-element-b034026 h2,
.elementor-7637 .elementor-element-c26c6d0 h2,
.elementor-7637 .elementor-element-dae68e3 h2,
.elementor-7832 .elementor-element-112e4d5 h2,
.elementor-7849 .elementor-element-004d71c h2,
.elementor-popup-modal .elementor-element-5609af6 h2,
.elementor-popup-modal .elementor-element-49c9d22 h2,
.elementor-popup-modal .elementor-element-a26a79a h2,
.elementor-popup-modal .elementor-element-2123f86 h2 {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    line-height: 32px !important;
    letter-spacing: -0.2px !important;
    color: #111827 !important;
    margin: 0 0 4px 0 !important;
    text-transform: none !important;
}

/* Subscription Form Specifics */
.custom-subscribe-form .subscription-heading {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    color: #4b5563 !important;
    margin: 8px 0 6px 0 !important;
}

.custom-subscribe-form .subscription-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
    cursor: pointer !important;
}

.custom-subscribe-form .subscription-item input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: #582cd7 !important;
    margin: 2px 0 0 0 !important;
    flex-shrink: 0 !important;
    cursor: pointer !important;
}

.custom-subscribe-form .subscription-content .title {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    line-height: 1.2 !important;
}

.custom-subscribe-form .subscription-content .desc {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    color: #6b7280 !important;
    margin-top: 2px !important;
    line-height: 1.3 !important;
}

.custom-subscribe-form .spam-note,
.custom-subscribe-form .subscription-note {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 11.5px !important;
    color: #6b7280 !important;
    text-align: center !important;
    margin-top: 8px !important;
}

/* Right Subtitle Text */
.elementor-7637 .elementor-element-25b17e4 p,
.elementor-7637 .elementor-element-a2e6f47,
.elementor-popup-modal .elementor-element-49c9d22 p.sub-desc,
.elementor-popup-modal .elementor-element-49c9d22 .elementor-widget-text-editor p {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
    margin: 0 0 12px 0 !important;
}

/* Right Subtag: ⚡ Instant access. No waiting. */
.elementor-7758 .elementor-element-770f953 .elementor-icon-list-items,
.elementor-popup-modal .elementor-element-5609af6 .elementor-icon-list-items {
    display: flex !important;
    align-items: center !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.elementor-7758 .elementor-element-770f953 .elementor-icon-list-item,
.elementor-popup-modal .elementor-element-5609af6 .elementor-icon-list-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.elementor-7758 .elementor-element-770f953 .elementor-icon-list-icon,
.elementor-popup-modal .elementor-element-5609af6 .elementor-icon-list-icon {
    display: inline-flex !important;
    align-items: center !important;
    color: #6366f1 !important;
    font-size: 14px !important;
    margin: 0 !important;
}

.elementor-7758 .elementor-element-770f953 .elementor-icon-list-icon i::before,
.elementor-popup-modal .elementor-element-5609af6 .elementor-icon-list-icon i::before {
    content: "\f0e7" !important;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    color: #6366f1 !important;
}

.elementor-7758 .elementor-element-770f953 .elementor-icon-list-text,
.elementor-popup-modal .elementor-element-5609af6 .elementor-icon-list-text {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
}

/* --- Form Fields & Labels Gaping --- */
.custom-report-form,
.custom-consultation-form,
.custom-subscribe-form,
.elementor-element-42f4ebe form,
.elementor-7849 form,
.elementor-7832 form,
.elementor-7637 form,
.elementor-7758 form,
.elementor-popup-modal form {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.custom-report-form p,
.custom-consultation-form p,
.custom-subscribe-form p,
.elementor-element-42f4ebe form p,
.elementor-7849 form p,
.elementor-7832 form p,
.elementor-7637 form p,
.elementor-7758 form p,
.elementor-popup-modal form p {
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
}

.custom-report-form label,
.custom-consultation-form label,
.custom-subscribe-form label,
.elementor-element-42f4ebe label,
.elementor-7849 label,
.elementor-7832 label,
.elementor-7637 label,
.elementor-7758 label,
.elementor-popup-modal label {
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin: 0 0 3px 0 !important;
    display: block !important;
    line-height: 1.2 !important;
}

.custom-report-form input[type="text"],
.custom-report-form input[type="email"],
.custom-report-form input[type="tel"],
.custom-consultation-form input[type="text"],
.custom-consultation-form input[type="email"],
.custom-consultation-form input[type="tel"],
.custom-subscribe-form input[type="text"],
.custom-subscribe-form input[type="email"],
.custom-subscribe-form input[type="tel"],
.elementor-element-42f4ebe input[type="text"],
.elementor-element-42f4ebe input[type="email"],
.elementor-element-42f4ebe input[type="tel"],
.elementor-7849 input[type="text"],
.elementor-7849 input[type="email"],
.elementor-7832 input[type="text"],
.elementor-7832 input[type="email"],
.elementor-7637 input[type="text"],
.elementor-7637 input[type="email"],
.elementor-7758 input[type="text"],
.elementor-7758 input[type="email"],
.elementor-popup-modal input[type="text"],
.elementor-popup-modal input[type="email"],
.elementor-popup-modal input[type="tel"] {
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    border: 1.5px solid #d1d5db !important;
    border-radius: 8px !important;
    padding: 0 14px !important;
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13.5px !important;
    color: #111827 !important;
    background: #ffffff !important;
    outline: none !important;
    box-sizing: border-box !important;
    margin: 0 0 2px 0 !important;
    margin-top: 0 !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.custom-report-form textarea,
.custom-consultation-form textarea,
.custom-subscribe-form textarea,
.elementor-element-42f4ebe textarea,
.elementor-element-052bc23 textarea,
.elementor-popup-modal textarea {
    width: 100% !important;
    height: 56px !important;
    min-height: 48px !important;
    border: 1.5px solid #d1d5db !important;
    border-radius: 8px !important;
    padding: 8px 14px !important;
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13.5px !important;
    color: #111827 !important;
    background: #ffffff !important;
    outline: none !important;
    box-sizing: border-box !important;
    margin: 0 0 2px 0 !important;
    resize: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.custom-report-form input:focus,
.elementor-element-42f4ebe input:focus,
.elementor-element-052bc23 input:focus,
.elementor-popup-modal input:focus,
.custom-report-form textarea:focus,
.elementor-element-42f4ebe textarea:focus,
.elementor-element-052bc23 textarea:focus,
.elementor-popup-modal textarea:focus {
    border-color: #582cd7 !important;
    box-shadow: 0 0 0 3px rgba(88, 44, 215, 0.1) !important;
}

.cmr-input-error,
.custom-report-form input.cmr-input-error,
.custom-report-form textarea.cmr-input-error,
.elementor-popup-modal input.cmr-input-error,
.elementor-popup-modal textarea.cmr-input-error,
.wpcf7-form input.cmr-input-error,
.wpcf7-form textarea.cmr-input-error,
input.cmr-input-error,
textarea.cmr-input-error {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18) !important;
}

.cmr-req-star {
    color: #ef4444 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 1 !important;
    margin-left: 3px !important;
    display: inline !important;
}

/* Hide extra validation error message boxes and tips */
.wpcf7-response-output.wpcf7-validation-errors,
.wpcf7-not-valid-tip,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    display: none !important;
}

/* CMR Modal Form Success State */
.cmr-form-success-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 30px 20px !important;
    width: 100% !important;
    min-height: 280px !important;
    box-sizing: border-box !important;
    animation: cmrFadeIn 0.35s ease-in-out !important;
    background: transparent !important;
    color: #111827 !important;
}

.cmr-form-success-icon {
    width: 60px !important;
    height: 60px !important;
    background: #ecfdf5 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 18px auto !important;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.2) !important;
    flex-shrink: 0 !important;
}

.cmr-form-success-icon svg {
    width: 32px !important;
    height: 32px !important;
    stroke: #10b981 !important;
    stroke-width: 3 !important;
}

.cmr-form-success-wrapper h3 {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin: 0 0 10px 0 !important;
    font-family: 'Instrument Sans', sans-serif !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

.cmr-form-success-wrapper p {
    font-size: 14px !important;
    color: #4b5563 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    max-width: 320px !important;
    font-family: 'Instrument Sans', sans-serif !important;
    text-align: center !important;
}

.cmr-form-success-close-btn {
    display: none !important;
}

@keyframes cmrFadeIn {
    from { opacity: 0; transform: scale(0.96); }
    to { opacity: 1; transform: scale(1); }
}

.custom-report-form input::placeholder,
.elementor-element-42f4ebe input::placeholder,
.elementor-element-052bc23 input::placeholder,
.elementor-popup-modal input::placeholder,
.custom-report-form textarea::placeholder,
.elementor-element-42f4ebe textarea::placeholder,
.elementor-element-052bc23 textarea::placeholder,
.elementor-popup-modal textarea::placeholder {
    color: #9ca3af !important;
    font-size: 13px !important;
    font-weight: 400 !important;
}

/* Modal Form Submit Buttons */
.custom-report-form input[type="submit"],
.custom-consultation-form input[type="submit"],
.custom-subscribe-form input[type="submit"],
.custom-subscribe-form button[type="submit"],
.custom-subscribe-form button,
.elementor-element-42f4ebe input[type="submit"],
.elementor-7849 input[type="submit"],
.elementor-7849 button,
.elementor-7832 input[type="submit"],
.elementor-7832 button,
.elementor-7637 input[type="submit"],
.elementor-7637 button,
.elementor-7758 input[type="submit"],
.elementor-7758 button,
.elementor-popup-modal input[type="submit"],
.elementor-popup-modal button[type="submit"],
.elementor-popup-modal .wpcf7-submit,
.cmr-form input[type="submit"],
.cmr-form button[type="submit"] {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    background-color: #6A42E5 !important;
    background: linear-gradient(135deg, #6A42E5 0%, #4B2DBF 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    margin-top: 10px !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    transition: all 0.2s ease, transform 0.1s ease !important;
    box-shadow: 0 4px 14px rgba(106, 66, 229, 0.3) !important;
    padding: 0 !important;
}

.custom-report-form input[type="submit"]:hover,
.custom-consultation-form input[type="submit"]:hover,
.custom-subscribe-form input[type="submit"]:hover,
.custom-subscribe-form button[type="submit"]:hover,
.custom-subscribe-form button:hover,
.elementor-element-42f4ebe input[type="submit"]:hover,
.elementor-7849 input[type="submit"]:hover,
.elementor-7832 input[type="submit"]:hover,
.elementor-7637 input[type="submit"]:hover,
.elementor-7758 input[type="submit"]:hover,
.elementor-popup-modal input[type="submit"]:hover,
.elementor-popup-modal button[type="submit"]:hover,
.cmr-form input[type="submit"]:hover,
.cmr-form button[type="submit"]:hover {
    background-color: #582cd7 !important;
    background: linear-gradient(135deg, #582cd7 0%, #3e1fa8 100%) !important;
    box-shadow: 0 6px 20px rgba(106, 66, 229, 0.45) !important;
    transform: translateY(-1px) !important;
}

/* Privacy & Terms Checkbox */
.custom-report-form .privacy-check,
.custom-consultation-form .privacy-check,
.elementor-element-42f4ebe .privacy-check,
.elementor-popup-modal .privacy-check {
    margin-top: 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-family: 'Instrument Sans', sans-serif !important;
    font-size: 13px !important;
    color: #4b5563 !important;
    line-height: 1.4 !important;
}

.custom-report-form .privacy-check .wpcf7-list-item,
.custom-consultation-form .privacy-check .wpcf7-list-item,
.elementor-element-42f4ebe .privacy-check .wpcf7-list-item,
.elementor-popup-modal .privacy-check .wpcf7-list-item {
    margin: 0 !important;
}

.custom-report-form .privacy-check .wpcf7-list-item label,
.custom-consultation-form .privacy-check .wpcf7-list-item label,
.elementor-element-42f4ebe .privacy-check .wpcf7-list-item label,
.elementor-popup-modal .privacy-check .wpcf7-list-item label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
    margin: 0 !important;
    cursor: pointer !important;
}

.custom-report-form .privacy-check input[type="checkbox"],
.custom-consultation-form .privacy-check input[type="checkbox"],
.elementor-element-42f4ebe .privacy-check input[type="checkbox"],
.elementor-popup-modal .privacy-check input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: #4318d1 !important;
    cursor: pointer !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.custom-report-form .privacy-check a,
.custom-consultation-form .privacy-check a,
.elementor-element-42f4ebe .privacy-check a,
.elementor-popup-modal .privacy-check a {
    color: #111827 !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
}

/* ==========================================================================
   7. All Screens Responsive System (Tablets, iPads, Mobile Phones)
   ========================================================================== */

/* --- Tablet / iPad (max-width: 1024px) --- */
@media (max-width: 1024px) {
    .dialog-widget.dialog-type-lightbox .dialog-widget-content,
    .dialog-widget.dialog-lightbox-widget .dialog-widget-content,
    .elementor-popup-modal .dialog-widget-content,
    .elementor-7758 .e-con-inner,
    .elementor-7637 .e-con-inner,
    .elementor-popup-modal .e-con-inner {
        max-width: 92vw !important;
        width: 92vw !important;
        margin: 15px auto 25px auto !important;
    }

    .elementor-7758 .elementor-element-fc8da81,
    .elementor-7637 .elementor-element-5f053ae,
    .elementor-popup-modal .elementor-element-fc8da81,
    .elementor-popup-modal .elementor-element-5f053ae {
        padding: 24px 22px !important;
        flex: 0 0 45% !important;
        width: 45% !important;
        max-width: 45% !important;
    }

    .elementor-7758 .elementor-element-e5f2560 h2,
    .elementor-7637 .elementor-element-f9d72d8 h2,
    .elementor-popup-modal .elementor-element-fc8da81 h2,
    .elementor-popup-modal .elementor-element-5f053ae h2 {
        font-size: 24px !important;
        line-height: 30px !important;
        margin-bottom: 10px !important;
    }

    .elementor-7758 .elementor-element-5609af6,
    .elementor-7637 .elementor-element-49c9d22,
    .elementor-popup-modal .elementor-element-5609af6,
    .elementor-popup-modal .elementor-element-49c9d22 {
        padding: 22px 24px 18px 24px !important;
        flex: 0 0 55% !important;
        width: 55% !important;
        max-width: 55% !important;
    }

    .elementor-7758 .elementor-element-b034026 h2,
    .elementor-7637 .elementor-element-c26c6d0 h2,
    .elementor-popup-modal .elementor-element-5609af6 h2,
    .elementor-popup-modal .elementor-popup-modal .elementor-element-49c9d22 h2 {
        font-size: 24px !important;
        line-height: 30px !important;
    }
}

/* --- Mobile Devices (max-width: 767px) --- */
@media (max-width: 767px) {
    /* 1. Default Open State: Centered Vertically & Horizontally with Smooth Bi-directional Scroll */
    .dialog-widget.dialog-type-lightbox,
    .dialog-widget.dialog-lightbox-widget,
    .elementor-popup-modal,
    .modal,
    #cmr-review-modal-overlay {
        padding: 20px 14px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-items: center !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        transition: padding 0.25s ease !important;
    }

    .dialog-widget.dialog-type-lightbox .dialog-widget-content,
    .dialog-widget.dialog-lightbox-widget .dialog-widget-content,
    .elementor-popup-modal .dialog-widget-content,
    .elementor-7758 .e-con-inner,
    .elementor-7637 .e-con-inner,
    .elementor-7832 .e-con-inner,
    .elementor-7849 .e-con-inner,
    .elementor-popup-modal .e-con-inner {
        width: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        margin: 0 auto !important;
        flex-shrink: 0 !important;
        transition: transform 0.25s ease, margin 0.25s ease !important;
    }

    /* 2. Active Input / Keyboard Focused State: Shifts up above keyboard */
    .dialog-widget.dialog-type-lightbox.cmr-keyboard-active,
    .dialog-widget.dialog-lightbox-widget.cmr-keyboard-active,
    .elementor-popup-modal.cmr-keyboard-active,
    .modal.cmr-keyboard-active,
    #cmr-review-modal-overlay.cmr-keyboard-active,
    body.cmr-keyboard-active .dialog-widget.dialog-type-lightbox,
    body.cmr-keyboard-active .elementor-popup-modal,
    body.cmr-keyboard-active .modal,
    body.cmr-keyboard-active #cmr-review-modal-overlay {
        padding-top: 15px !important;
        padding-bottom: 300px !important;
    }

    body.cmr-keyboard-active .dialog-widget.dialog-type-lightbox .dialog-widget-content,
    body.cmr-keyboard-active .dialog-widget.dialog-lightbox-widget .dialog-widget-content,
    body.cmr-keyboard-active .elementor-popup-modal .dialog-widget-content,
    .cmr-keyboard-active .dialog-widget-content {
        margin-top: 10px !important;
        margin-bottom: auto !important;
        max-height: none !important;
    }

    /* Stack and container setup on mobile */
    .elementor-7758 .elementor-element-1d1d0d3,
    .elementor-7637 .elementor-element-2eeace2,
    .elementor-7832 .elementor-element-d33c8e6,
    .elementor-7849 .elementor-element-804d4ea,
    .elementor-popup-modal .elementor-element-1d1d0d3,
    .elementor-popup-modal .elementor-element-2eeace2,
    .elementor-popup-modal .elementor-element-d33c8e6,
    .elementor-popup-modal .elementor-element-804d4ea {
        flex-direction: column !important;
        height: auto !important;
        min-height: auto !important;
        border-radius: 0 !important;
    }

    /* Hide Purple / Left Column completely on Mobile (Applies to ALL 2-Column Popups) */
    .elementor-7758 .elementor-element-fc8da81,
    .elementor-7637 .elementor-element-5f053ae,
    .elementor-7832 .elementor-element-2f9a6aa,
    .elementor-7849 .elementor-element-3d97663,
    .elementor-popup-modal .elementor-element-fc8da81,
    .elementor-popup-modal .elementor-element-5f053ae,
    .elementor-popup-modal .elementor-element-2f9a6aa,
    .elementor-popup-modal .elementor-element-3d97663,
    .elementor-popup-modal .elementor-element-1d1d0d3 > .elementor-element:first-child,
    .elementor-popup-modal .elementor-element-2eeace2 > .elementor-element:first-child,
    .elementor-popup-modal .elementor-element-d33c8e6 > .elementor-element:first-child,
    .elementor-popup-modal .elementor-element-804d4ea > .elementor-element:first-child {
        display: none !important;
    }

    /* Full Width White Form Column on Mobile (Applies to ALL 2-Column Popups) */
    .elementor-7758 .elementor-element-5609af6,
    .elementor-7637 .elementor-element-49c9d22,
    .elementor-7832 .elementor-element-a26a79a,
    .elementor-7849 .elementor-element-2123f86,
    .elementor-popup-modal .elementor-element-5609af6,
    .elementor-popup-modal .elementor-element-49c9d22,
    .elementor-popup-modal .elementor-element-a26a79a,
    .elementor-popup-modal .elementor-element-2123f86,
    .elementor-popup-modal .elementor-element-1d1d0d3 > .elementor-element:last-child,
    .elementor-popup-modal .elementor-element-2eeace2 > .elementor-element:last-child,
    .elementor-popup-modal .elementor-element-d33c8e6 > .elementor-element:last-child,
    .elementor-popup-modal .elementor-element-804d4ea > .elementor-element:last-child {
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
        padding: 32px 24px 28px 24px !important;
        border-radius: 0 !important;
    }

    .elementor-7758 .elementor-element-b034026 h2,
    .elementor-7637 .elementor-element-c26c6d0 h2,
    .elementor-7832 .elementor-element-112e4d5 h2,
    .elementor-7849 .elementor-element-004d71c h2,
    .elementor-popup-modal .elementor-element-5609af6 h2,
    .elementor-popup-modal .elementor-element-49c9d22 h2,
    .elementor-popup-modal .elementor-element-a26a79a h2,
    .elementor-popup-modal .elementor-element-2123f86 h2 {
        font-size: 26px !important;
        line-height: 32px !important;
        margin-bottom: 6px !important;
    }

    .custom-report-form p,
    .elementor-element-42f4ebe form p,
    .elementor-element-052bc23 form p,
    .elementor-popup-modal form p {
        margin: 0 0 16px 0 !important;
    }

    .custom-report-form label,
    .elementor-element-42f4ebe label,
    .elementor-element-052bc23 label,
    .elementor-popup-modal label {
        font-size: 14px !important;
        margin-bottom: 6px !important;
    }

    .custom-report-form input[type="text"],
    .custom-report-form input[type="email"],
    .custom-report-form input[type="tel"],
    .elementor-element-42f4ebe input[type="text"],
    .elementor-element-42f4ebe input[type="email"],
    .elementor-element-42f4ebe input[type="tel"],
    .elementor-element-052bc23 input[type="text"],
    .elementor-element-052bc23 input[type="email"],
    .elementor-element-052bc23 input[type="tel"],
    .elementor-popup-modal input[type="text"],
    .elementor-popup-modal input[type="email"],
    .elementor-popup-modal input[type="tel"] {
        height: 48px !important;
        font-size: 14px !important;
        padding: 0 16px !important;
        border-radius: 10px !important;
    }

    .custom-report-form textarea,
    .elementor-element-42f4ebe textarea,
    .elementor-element-052bc23 textarea,
    .elementor-popup-modal textarea {
        height: 70px !important;
        min-height: 65px !important;
        font-size: 14px !important;
        padding: 12px 16px !important;
        border-radius: 10px !important;
    }

    .custom-report-form input[type="submit"],
    .elementor-element-42f4ebe input[type="submit"],
    .elementor-element-052bc23 input[type="submit"],
    .elementor-popup-modal input[type="submit"],
    .elementor-popup-modal button[type="submit"] {
        height: 50px !important;
        font-size: 15px !important;
        margin-top: 8px !important;
    }

    /* Close Button on Mobile */
    .dialog-close-button,
    .dialog-lightbox-close-button {
        top: 14px !important;
        right: 14px !important;
        width: 32px !important;
        height: 32px !important;
        background: transparent !important;
        color: #4b5563 !important;
        border-radius: 50% !important;
        font-size: 22px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        z-index: 1000 !important;
    }
}

/* --- Small Mobile (max-width: 480px) --- */
@media (max-width: 480px) {
    .elementor-7758 .elementor-element-5609af6,
    .elementor-7637 .elementor-element-49c9d22,
    .elementor-7832 .elementor-element-a26a79a,
    .elementor-7849 .elementor-element-2123f86,
    .elementor-popup-modal .elementor-element-5609af6,
    .elementor-popup-modal .elementor-element-49c9d22,
    .elementor-popup-modal .elementor-element-a26a79a,
    .elementor-popup-modal .elementor-element-2123f86 {
        padding: 26px 18px 24px 18px !important;
    }

    .elementor-7758 .elementor-element-b034026 h2,
    .elementor-7637 .elementor-element-c26c6d0 h2,
    .elementor-7832 .elementor-element-112e4d5 h2,
    .elementor-7849 .elementor-element-004d71c h2,
    .elementor-popup-modal .elementor-element-5609af6 h2,
    .elementor-popup-modal .elementor-element-49c9d22 h2,
    .elementor-popup-modal .elementor-element-a26a79a h2,
    .elementor-popup-modal .elementor-element-2123f86 h2 {
        font-size: 22px !important;
        line-height: 28px !important;
    }
}
