.elementor-3625 .elementor-element.elementor-element-0c10f1e{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-0c10f1e:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-0c10f1e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-164ce18 );}.elementor-3625 .elementor-element.elementor-element-0c10f1e, .elementor-3625 .elementor-element.elementor-element-0c10f1e::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-d37f23d{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-d37f23d:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-d37f23d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-54b216b );}.elementor-3625 .elementor-element.elementor-element-d37f23d, .elementor-3625 .elementor-element.elementor-element-d37f23d::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-fe0703d{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-fe0703d:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-fe0703d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-164ce18 );}.elementor-3625 .elementor-element.elementor-element-fe0703d, .elementor-3625 .elementor-element.elementor-element-fe0703d::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-a803cbf{--spacer-size:30px;}.elementor-3625 .elementor-element.elementor-element-1ad7bee{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-1ad7bee:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-1ad7bee > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-54b216b );}.elementor-3625 .elementor-element.elementor-element-1ad7bee, .elementor-3625 .elementor-element.elementor-element-1ad7bee::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-9339587{--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;--gap:0px 0px;--background-transition:0.3s;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3625 .elementor-element.elementor-element-9339587:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-9339587 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-3625 .elementor-element.elementor-element-9339587, .elementor-3625 .elementor-element.elementor-element-9339587::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-63d9f8f{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-63d9f8f:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-63d9f8f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-164ce18 );}.elementor-3625 .elementor-element.elementor-element-63d9f8f, .elementor-3625 .elementor-element.elementor-element-63d9f8f::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-bc2cbe6{--spacer-size:100px;}.elementor-3625 .elementor-element.elementor-element-6adb4d4{text-align:center;}.elementor-3625 .elementor-element.elementor-element-6adb4d4 .elementor-heading-title{color:var( --e-global-color-0f3dcf8 );}.elementor-3625 .elementor-element.elementor-element-488216d > .elementor-widget-container{padding:0px 200px 0px 200px;}.elementor-3625 .elementor-element.elementor-element-488216d{text-align:center;color:var( --e-global-color-secondary );}.elementor-3625 .elementor-element.elementor-element-1dc1cc1{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-1dc1cc1:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-1dc1cc1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-164ce18 );}.elementor-3625 .elementor-element.elementor-element-1dc1cc1, .elementor-3625 .elementor-element.elementor-element-1dc1cc1::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-7b44e30{--spacer-size:50px;}.elementor-3625 .elementor-element.elementor-element-5154318{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-5154318:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-5154318 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-3625 .elementor-element.elementor-element-5154318, .elementor-3625 .elementor-element.elementor-element-5154318::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-0c3b2ae{--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;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-0c3b2ae:not(.elementor-motion-effects-element-type-background), .elementor-3625 .elementor-element.elementor-element-0c3b2ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-cf9c1f8 );}.elementor-3625 .elementor-element.elementor-element-0c3b2ae, .elementor-3625 .elementor-element.elementor-element-0c3b2ae::before{--border-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-b8582c8{--spacer-size:50px;}.elementor-3625 .elementor-element.elementor-element-54245ed{text-align:center;}.elementor-3625 .elementor-element.elementor-element-54245ed .elementor-heading-title{color:var( --e-global-color-astglobalcolor5 );}.elementor-3625 .elementor-element.elementor-element-f5185e2 > .elementor-widget-container{padding:0px 250px 0px 250px;}.elementor-3625 .elementor-element.elementor-element-f5185e2{text-align:center;}.elementor-3625 .elementor-element.elementor-element-f5185e2 .elementor-heading-title{color:var( --e-global-color-astglobalcolor5 );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3625 .elementor-element.elementor-element-f176ef7{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-ac225e5{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--background-transition:0.3s;}.elementor-3625 .elementor-element.elementor-element-ac225e5.e-con{--order:99999 /* order end hack */;}.elementor-3625 .elementor-element.elementor-element-63e500a.elementor-element{--align-self:center;}.elementor-3625 .elementor-element.elementor-element-63e500a .elementor-button{fill:var( --e-global-color-0f3dcf8 );color:var( --e-global-color-0f3dcf8 );background-color:var( --e-global-color-164ce18 );border-radius:10px 10px 10px 10px;}.elementor-3625 .elementor-element.elementor-element-48c2633.elementor-element{--align-self:center;}.elementor-3625 .elementor-element.elementor-element-48c2633 .elementor-button{fill:var( --e-global-color-astglobalcolor5 );color:var( --e-global-color-astglobalcolor5 );background-color:var( --e-global-color-c97b822 );border-style:solid;border-color:var( --e-global-color-astglobalcolor5 );border-radius:10px 10px 10px 10px;}.elementor-3625 .elementor-element.elementor-element-c117c17{--spacer-size:50px;}@media(max-width:1024px){.elementor-3625 .elementor-element.elementor-element-f176ef7{--grid-auto-flow:row;}.elementor-3625 .elementor-element.elementor-element-ac225e5{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-3625 .elementor-element.elementor-element-488216d > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-3625 .elementor-element.elementor-element-f5185e2 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-3625 .elementor-element.elementor-element-f176ef7{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-3625 .elementor-element.elementor-element-ac225e5{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--justify-items:center;}.elementor-3625 .elementor-element.elementor-element-ac225e5.e-con{--flex-grow:1;--flex-shrink:0;}}/* Start custom CSS for html, class: .elementor-element-cf81519 *//* ==============================
   1. Main Container & Typography
   Reuses and expands on previous styles
   ============================== */
.poms-flow-section {
    width: 100%;
    margin: 60px auto;
    font-family: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
    color: #1d1d1f;
    text-align: center;
}

.poms-header-wrap {
    margin-bottom: 70px;
}

/* Updated H2 style with overriding protection */
h2.custom-highlight-heading {
    font-family: -apple-system, BlinkMacSystemFont, "Inter", sans-serif !important;
    font-size: 38px !important; 
    font-weight: 700 !important; 
    color: #1d1d1f !important; 
    text-align: center !important;
    letter-spacing: -0.025em !important; 
    line-height: 1.25 !important; 
    max-width: 800px !important;
    margin: 20px auto !important; 
}

/* Matching description style */
.poms-sub-description {
    font-size: 20px;
    line-height: 1.6;
    color: #86868b; /* Lighter text color */
    max-width: 700px;
    margin: 0 auto;
    font-weight: 400;
}

/* Responsive adjustment for mobile screens */
@media (max-width: 768px) {
    h2.custom-highlight-heading { font-size: 28px !important; }
    .poms-sub-description { font-size: 17px; padding: 0 20px; }
    .poms-flow-section { margin: 40px auto; }
}

/* ==============================
   2. Diagram Styling
   ============================== */
.poms-flow-diagram {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
}

/* Global Box Styles */
.diagram-step .flow-box {
    background: #fff;
    border: 1px solid #d2d2d7;
    border-radius: 14px;
    padding: 20px 30px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    transition: all 0.3s ease;
}

.diagram-step .flow-box:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    border-color: #0071e3;
}

.step-label {
    font-size: 13px;
    text-transform: uppercase;
    color: #86868b;
    margin-bottom: 5px;
    letter-spacing: 0.1em;
}

.step-main {
    font-size: 22px;
    font-weight: 600;
    color: #1d1d1f;
}

/* Input Step Details */
.icon-indicator {
    display: block;
    width: 10px;
    height: 10px;
    background: #e1e1e1;
    border-radius: 50%;
    margin-top: 10px;
}
.icon-indicator.success { background: #34c759; } /* Live green indicator */

/* Raw Data Stream Details */
.flow-box.transparent {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    padding: 0;
}
.data-packets {
    color: #86868b;
    font-family: monospace;
    font-size: 14px;
    opacity: 0.5;
    margin-bottom: 10px;
    letter-spacing: 0.3em;
}

/* Arrows */
.flow-arrow {
    margin: 15px 0;
    opacity: 0.4;
}
.flow-arrow svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: #1d1d1f;
}

/* THE CORE: POMS Hub */
.flow-box.poms-hub {
    background: #1d1d1f; /* Dark central processor appearance */
    color: #fff;
    border: none;
}
.flow-box.poms-hub .step-main { color: #fff; font-size: 26px; }
.step-tagline { font-size: 16px; color: #f5f5f7; opacity: 0.8; margin-top: 5px; }

/* ==============================
   3. Output Grid Styling
   ============================== */
.output-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    width: 100%;
}

.output-box {
    background: #fff;
    border: 1px solid #d2d2d7;
    border-radius: 16px;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all 0.3s ease;
    cursor: default;
    box-shadow: 0 2px 6px rgba(0,0,0,0.03);
}

.output-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    border-color: #0071e3;
}

.box-icon {
    width: 48px;
    height: 48px;
    background: #f5f5f7;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border: 1px solid transparent;
}
.output-box:hover .box-icon {
    border-color: rgba(0, 113, 227, 0.2);
}

.box-icon svg {
    width: 24px;
    height: 24px;
    stroke: #0071e3; /* SaaS brand blue accent */
    fill: none;
}

.output-box h3 {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 10px 0;
    color: #1d1d1f;
}

.output-box p {
    font-size: 15px;
    line-height: 1.5;
    color: #86868b;
    margin: 0;
}

/* Responsiveness for the output grid */
@media (max-width: 768px) {
    .output-grid {
        grid-template-columns: 1fr; /* Stacks on mobile */
        gap: 15px;
    }
    .output-box { padding: 25px 20px; }
}

/* ==============================
   4. Sequence Animation (Triggered on Scroll)
   ============================== */

/* Keyframe Animations */
@keyframes pomsFadeIn {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes pomsArrowAppear {
    from { opacity: 0; transform: scaleY(0); }
    to { opacity: 1; transform: scaleY(1); }
}

/* Initial State: Invisible, waiting for scroll */
#pomsFlow .diagram-step,
#pomsFlow .flow-arrow,
#pomsFlow .output-grid .output-box {
    opacity: 0;
}

#pomsFlow .flow-arrow {
    transform-origin: top;
    transform: scaleY(0);
}

/* --- Trigger Animations ONLY when .animate-active is added by JS --- */
#pomsFlow.animate-active .diagram-step {
    animation: pomsFadeIn 0.6s ease forwards;
}

#pomsFlow.animate-active .flow-arrow {
    animation: pomsArrowAppear 0.5s ease forwards;
}

#pomsFlow.animate-active .output-grid .output-box {
    animation: pomsFadeIn 0.5s ease forwards;
}

/* The Delay Sequence */
#pomsFlow.animate-active .step-input { animation-delay: 0.1s; }
#pomsFlow.animate-active .arrow-1 { animation-delay: 0.6s; }
#pomsFlow.animate-active .step-raw-data { animation-delay: 1.1s; }
#pomsFlow.animate-active .arrow-2 { animation-delay: 1.6s; }
#pomsFlow.animate-active .step-poms-core { animation-delay: 2.1s; }
#pomsFlow.animate-active .arrow-3 { animation-delay: 2.6s; }

/* Staggered load for the final grid */
#pomsFlow.animate-active .output-grid .auto-tables { animation-delay: 3.1s; }
#pomsFlow.animate-active .output-grid .live-monitoring { animation-delay: 3.3s; }
#pomsFlow.animate-active .output-grid .excel-reports { animation-delay: 3.5s; }/* End custom CSS */
/* Start custom CSS */@media (max-width: 768px) {
    .site-primary-footer-wrap {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Fix Astra footer margin causing horizontal overflow */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    margin-left: 0 !important;
    margin-right: 0 !important;
}/* End custom CSS */