.elementor-4557 .elementor-element.elementor-element-e2350a3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-4557 .elementor-element.elementor-element-e2350a3:not(.elementor-motion-effects-element-type-background), .elementor-4557 .elementor-element.elementor-element-e2350a3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(90deg, #01041F 0%, #002E73 100%);}.elementor-4557 .elementor-element.elementor-element-73533f2{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans Serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-4557 .elementor-element.elementor-element-dc08da9{text-align:center;}.elementor-4557 .elementor-element.elementor-element-dc08da9 .elementor-heading-title{font-family:"Playfair Display", Sans Serif;font-size:48px;font-weight:400;color:#FFFFFF;}.elementor-4557 .elementor-element.elementor-element-616eb50{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4557 .elementor-element.elementor-element-b78ef85{--display:flex;}.elementor-4557 .elementor-element.elementor-element-c29acee{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans Serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4557 .elementor-element.elementor-element-6cedc3c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:060px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-4557 .elementor-element.elementor-element-56d3015{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-4557 .elementor-element.elementor-element-f0dcc81 .elementor-heading-title{font-family:"Roboto", Sans Serif;font-weight:700;color:var( --e-global-color-text );}.elementor-4557 .elementor-element.elementor-element-3b9356b .elementor-wrapper{--video-aspect-ratio:1.77777;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-616eb50 *//* ==========================================================================
   BIMACME Project Insights — DUPLICATION-PROOF CSS
   ✅ Works with 2-column layout (video + text)
   ✅ Works with 1-column layout (text only / full width)
   Add class "bimacme-insights" to main Elementor container
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Outfit:wght@500;600;700;800&display=swap');

/* --- Design Variables --- */
.bimacme-insights {
    --macme-bg: #eef2f7;
    --macme-glass: rgba(255, 255, 255, 0.85);
    --macme-glass-hover: rgba(255, 255, 255, 0.97);
    --macme-border: rgba(0, 0, 0, 0.07);
    --macme-border-hover: rgba(14, 165, 233, 0.3);

    --macme-primary-grad: linear-gradient(135deg, #0ea5e9 0%, #2563eb 100%);
    --macme-secondary-grad: linear-gradient(135deg, #10b981 0%, #059669 100%);
    --macme-accent-blue: #0ea5e9;
    --macme-accent-green: #10b981;
    --macme-neon-glow: rgba(14, 165, 233, 0.15);

    --macme-text-main: #0f172a;
    --macme-text-muted: #475569;
    --macme-text-light: #64748b;

    --macme-font-heading: 'Outfit', sans-serif;
    --macme-font-body: 'Inter', sans-serif;
}

/* ==========================================================================
   SECTION WRAPPER
   ========================================================================== */

.elementor-element.bimacme-insights {
    background-color: var(--macme-bg) !important;
    background-image:
        radial-gradient(circle at 10% 20%, rgba(14, 165, 233, 0.06) 0%, transparent 40%),
        radial-gradient(circle at 90% 80%, rgba(37, 99, 235, 0.05) 0%, transparent 40%) !important;
    font-family: var(--macme-font-body) !important;
    padding: 60px 24px !important;
    overflow: hidden !important;
}

/* Inner wrapper — flex row by default */
.bimacme-insights > .e-con-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 28px !important;
    align-items: flex-start !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* ==========================================================================
   LAYOUT A — TWO COLUMNS (Video + Text)
   Left column = first child when there are 2 children
   ========================================================================== */

/* Left Column — only applies when it is NOT the only child */
.bimacme-insights > .e-con-inner > .e-con:first-child:not(:only-child) {
    flex: 0 0 42% !important;
    max-width: 42% !important;
    position: sticky !important;
    top: 100px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    box-sizing: border-box !important;
}

/* Right Column — only applies when it is NOT the only child */
.bimacme-insights > .e-con-inner > .e-con:last-child:not(:only-child) {
    flex: 1 !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* ==========================================================================
   LAYOUT B — SINGLE COLUMN (Text only, full width)
   Applies when there is only ONE child in .e-con-inner
   ========================================================================== */

.bimacme-insights > .e-con-inner > .e-con:only-child {
    flex: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
    top: auto !important;
}

/* Text editor card — full width when single column */
.bimacme-insights > .e-con-inner > .e-con:only-child [data-widget_type="text-editor.default"] {
    background: var(--macme-glass) !important;
    border: 1px solid var(--macme-border) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-radius: 14px !important;
    padding: 40px 48px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* ==========================================================================
   HEADING WIDGET — Left column title (2-column layout)
   ========================================================================== */

.bimacme-insights > .e-con-inner > .e-con:first-child:not(:only-child) [data-widget_type="heading.default"] .elementor-heading-title {
    font-family: var(--macme-font-heading) !important;
    font-size: 1.8rem !important;
    font-weight: 800 !important;
    color: var(--macme-text-main) !important;
    margin: 0 0 12px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    line-height: 1.25 !important;
}

/* Blue accent bar next to title */
.bimacme-insights > .e-con-inner > .e-con:first-child:not(:only-child) [data-widget_type="heading.default"] .elementor-heading-title::before {
    content: '' !important;
    display: inline-block !important;
    width: 5px !important;
    height: 26px !important;
    background: var(--macme-primary-grad) !important;
    border-radius: 4px !important;
    flex-shrink: 0 !important;
}

/* ==========================================================================
   VIDEO WIDGET
   ========================================================================== */

.bimacme-insights [data-widget_type="video.default"] {
    position: relative !important;
    width: 100% !important;
}

/* Glow halo behind video */
.bimacme-insights [data-widget_type="video.default"]::before {
    content: '' !important;
    position: absolute !important;
    inset: -5px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #0ea5e9, #2563eb) !important;
    z-index: 0 !important;
    opacity: 0.15 !important;
    filter: blur(12px) !important;
    transition: opacity 0.4s ease !important;
}

.bimacme-insights [data-widget_type="video.default"]:hover::before {
    opacity: 0.35 !important;
}

/* Video card border */
.bimacme-insights [data-widget_type="video.default"] .elementor-wrapper {
    position: relative !important;
    z-index: 1 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    border: 1.5px solid rgba(14, 165, 233, 0.3) !important;
    box-shadow:
        0 2px 12px rgba(0, 0, 0, 0.08),
        0 4px 20px rgba(14, 165, 233, 0.07) !important;
    background: #0f172a !important;
    transition: all 0.35s ease !important;
}

.bimacme-insights [data-widget_type="video.default"]:hover .elementor-wrapper {
    border-color: rgba(14, 165, 233, 0.6) !important;
    box-shadow:
        0 8px 30px rgba(0, 0, 0, 0.12),
        0 4px 16px rgba(14, 165, 233, 0.18) !important;
}

/* Video element */
.bimacme-insights [data-widget_type="video.default"] .elementor-video {
    width: 100% !important;
    height: auto !important;
    max-height: 280px !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 13px !important;
    transition: transform 0.4s ease !important;
}

.bimacme-insights [data-widget_type="video.default"]:hover .elementor-video {
    transform: scale(1.012) !important;
}

/* ==========================================================================
   TEXT EDITOR — Right column (2-column layout)
   ========================================================================== */

.bimacme-insights > .e-con-inner > .e-con:last-child:not(:only-child) [data-widget_type="text-editor.default"] {
    background: var(--macme-glass) !important;
    border: 1px solid var(--macme-border) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-radius: 14px !important;
    padding: 32px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* ==========================================================================
   RICH TEXT TYPOGRAPHY — Applies to ALL layouts
   ========================================================================== */

/* Paragraphs */
.bimacme-insights [data-widget_type="text-editor.default"] p {
    font-family: var(--macme-font-body) !important;
    font-size: 0.93rem !important;
    line-height: 1.75 !important;
    color: var(--macme-text-muted) !important;
    margin-bottom: 14px !important;
    margin-top: 0 !important;
}

/* H2 — The Challenge, Our Solution etc. */
.bimacme-insights [data-widget_type="text-editor.default"] h2 {
    font-family: var(--macme-font-heading) !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--macme-text-main) !important;
    margin-top: 28px !important;
    margin-bottom: 12px !important;
    padding-left: 14px !important;
    border-left: 4px solid #0ea5e9 !important;
    line-height: 1.3 !important;
    display: block !important;
}

/* H3 — Sub sections */
.bimacme-insights [data-widget_type="text-editor.default"] h3 {
    font-family: var(--macme-font-heading) !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: var(--macme-accent-blue) !important;
    margin-top: 22px !important;
    margin-bottom: 10px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.3 !important;
}

/* Dot before H3 */
.bimacme-insights [data-widget_type="text-editor.default"] h3::before {
    content: '' !important;
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: var(--macme-primary-grad) !important;
    flex-shrink: 0 !important;
}

/* Unordered + Ordered Lists */
.bimacme-insights [data-widget_type="text-editor.default"] ul,
.bimacme-insights [data-widget_type="text-editor.default"] ol {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    counter-reset: list-counter;
}

/* List Items */
.bimacme-insights [data-widget_type="text-editor.default"] ul li,
.bimacme-insights [data-widget_type="text-editor.default"] ol li {
    font-family: var(--macme-font-body) !important;
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    color: var(--macme-text-muted) !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 0 !important;
}

/* Bullet icon for ul */
.bimacme-insights [data-widget_type="text-editor.default"] ul li::before {
    content: '' !important;
    display: inline-flex !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    border-radius: 50% !important;
    border: 1.5px solid rgba(14, 165, 233, 0.35) !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
    background-color: rgba(14, 165, 233, 0.08) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ccircle cx='256' cy='256' r='96' fill='%230ea5e9'/%3E%3C/svg%3E") !important;
    background-size: 38% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* Links */
.bimacme-insights [data-widget_type="text-editor.default"] a {
    color: var(--macme-accent-blue) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    border-bottom: 1px solid rgba(14, 165, 233, 0.3) !important;
    transition: border-color 0.2s ease, color 0.2s ease !important;
}

.bimacme-insights [data-widget_type="text-editor.default"] a:hover {
    color: #2563eb !important;
    border-color: #2563eb !important;
}

/* Strong/Bold */
.bimacme-insights [data-widget_type="text-editor.default"] strong {
    color: var(--macme-text-main) !important;
    font-weight: 600 !important;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 1024px) {
    .bimacme-insights > .e-con-inner {
        flex-direction: column !important;
    }

    .bimacme-insights > .e-con-inner > .e-con:first-child:not(:only-child) {
        flex: none !important;
        max-width: 100% !important;
        width: 100% !important;
        position: relative !important;
        top: auto !important;
    }

    .bimacme-insights > .e-con-inner > .e-con:last-child:not(:only-child) {
        width: 100% !important;
    }

    .bimacme-insights > .e-con-inner > .e-con:only-child [data-widget_type="text-editor.default"] {
        padding: 24px 20px !important;
    }

    .bimacme-insights [data-widget_type="video.default"] .elementor-video {
        max-height: 220px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cedc3c *//* ==========================================================================
   BIMACME Video Widget — Modern Styled, Compact
   Targets: .elementor-element-05f6c09
   ========================================================================== */

/* --- Outer Video Container Wrapper --- */
.elementor-element-05f6c09 {
    max-width: 520px !important;        /* Controls max video width */
    width: 100% !important;
    margin: 0 auto !important;
    position: relative !important;
}

/* --- Glow Halo Behind Video (Premium Effect) --- */
.elementor-element-05f6c09::before {
    content: '' !important;
    position: absolute !important;
    inset: -6px !important;
    border-radius: 20px !important;
    background: linear-gradient(135deg, #0ea5e9, #2563eb, #10b981) !important;
    z-index: 0 !important;
    opacity: 0.25 !important;
    filter: blur(14px) !important;
    transition: opacity 0.4s ease !important;
}

.elementor-element-05f6c09:hover::before {
    opacity: 0.45 !important;
}

/* --- Video Inner Wrapper --- */
.elementor-element-05f6c09 .elementor-wrapper {
    position: relative !important;
    z-index: 1 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    border: 1.5px solid rgba(14, 165, 233, 0.35) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.06),
        0 8px 28px rgba(0, 0, 0, 0.14),
        0 2px 6px rgba(14, 165, 233, 0.1) !important;
    background: #0f172a !important;
    transition: box-shadow 0.4s ease, border-color 0.4s ease !important;
}

/* --- Hover — Border Glows Brighter --- */
.elementor-element-05f6c09:hover .elementor-wrapper {
    border-color: rgba(14, 165, 233, 0.65) !important;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.1),
        0 12px 36px rgba(0, 0, 0, 0.18),
        0 4px 14px rgba(14, 165, 233, 0.2) !important;
}

/* --- Video Element itself --- */
.elementor-element-05f6c09 .elementor-video {
    width: 100% !important;
    height: auto !important;
    max-height: 300px !important;     /* Keeps it compact vertically */
    display: block !important;
    object-fit: cover !important;
    border-radius: 13px !important;
    transition: transform 0.4s ease !important;
}

/* --- Subtle Scale on Hover --- */
.elementor-element-05f6c09:hover .elementor-video {
    transform: scale(1.015) !important;
}

/* --- Video Controls Bar Styling --- */
.elementor-element-05f6c09 video::-webkit-media-controls-panel {
    background: linear-gradient(to top, rgba(15, 23, 42, 0.85) 0%, transparent 100%) !important;
    border-radius: 0 0 13px 13px !important;
}

/* --- Top Left Badge Label (Optional — adds "CASE STUDY" label) --- */
.elementor-element-05f6c09 .elementor-wrapper::after {
    content: '● CASE STUDY' !important;
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    font-family: 'Outfit', 'Inter', sans-serif !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    background: rgba(14, 165, 233, 0.85) !important;
    padding: 4px 10px !important;
    border-radius: 30px !important;
    backdrop-filter: blur(6px) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

/* --- Responsive: Full width on mobile --- */
@media (max-width: 768px) {
    .elementor-element-05f6c09 {
        max-width: 100% !important;
    }
    .elementor-element-05f6c09 .elementor-video {
        max-height: 220px !important;
    }
}/* End custom CSS */