/* Ogere Remo refinement pass 17 */

/* -------------------------------------------------------------------------
 * Welcome to Ogere Remo
 * ---------------------------------------------------------------------- */
body.page-id-20524 .ogere17-welcome-section {
    margin: 0 !important;
    padding-top: 3px !important;
    padding-bottom: 0 !important;
}

body.page-id-20524 .ogere17-welcome-section > .elementor-container {
    align-items: center !important;
}

body.page-id-20524 .ogere17-welcome-palace {
    width: 72% !important;
    max-width: 72% !important;
    margin: 0 auto !important;
}

body.page-id-20524 .ogere17-welcome-palace img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* Native Elementor spacer row creates the requested full-width blank band beneath
 * both Welcome columns. This is deliberate, not an empty orphan section. */
body.page-id-20524 .ogere17-welcome-bottom-row {
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
}

body.page-id-20524 .ogere17-welcome-bottom-row > .elementor-container,
body.page-id-20524 .ogere17-welcome-bottom-row .elementor-column,
body.page-id-20524 .ogere17-welcome-bottom-row .elementor-widget-wrap,
body.page-id-20524 .ogere17-welcome-bottom-row .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
}

body.page-id-20524 .ogere17-welcome-bottom-row .elementor-spacer-inner {
    height: 24px !important;
}

/* Restore the original image-style popup control, now locally hosted and appropriately sized. */
body.page-id-20524 .ogere17-welcome-video-col,
body.page-id-20524 .ogere17-welcome-video-col .elementor-widget-wrap {
    overflow: visible !important;
}

body.page-id-20524 .ogere17-welcome-video-icon {
    width: 38px !important;
    max-width: 38px !important;
    min-width: 38px !important;
    margin: 0 !important;
    overflow: visible !important;
}

body.page-id-20524 .ogere17-welcome-video-icon img {
    display: block !important;
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
    object-fit: contain !important;
}

/* -------------------------------------------------------------------------
 * Section-title consistency
 * ---------------------------------------------------------------------- */
body.page-id-20524 .ogere9-support-section .section-title-wrapper {
    margin: 0 auto 30px !important;
    padding: 0 !important;
    text-align: center !important;
}

body.page-id-20524 .ogere9-support-section .section-title {
    margin: 0 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

body.page-id-20524 .ogere9-support-section .title-separator {
    display: block !important;
    width: 38px !important;
    height: 2px !important;
    margin: 11px auto 14px !important;
}

body.page-id-20524 .ogere9-support-section .section-description {
    max-width: 850px !important;
    margin: 0 auto !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

/* Welcome from Ologere custom title: use a patterned separator matching the
 * visual language of the standard eGovenz section separators. */
body.page-id-20524 .ogere5-ologere-title {
    text-align: left !important;
}

body.page-id-20524 .ogere5-ologere-title > span {
    display: block !important;
    width: 38px !important;
    height: 2px !important;
    margin: 11px 0 14px !important;
    background:
        linear-gradient(
            90deg,
            #c69535 0 34%,
            transparent 34% 43%,
            #c69535 43% 57%,
            transparent 57% 66%,
            #c69535 66% 100%
        ) !important;
}

/* -------------------------------------------------------------------------
 * Support Ogere
 * ---------------------------------------------------------------------- */
@media (max-width: 767px) {
    body.page-id-20524 .ogere9-support-card .ogere5-support-icon {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 auto 12px !important;
    }
}

/* -------------------------------------------------------------------------
 * Upcoming Events
 * ---------------------------------------------------------------------- */
body.page-id-20524 .ogere17-events-button {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin-top: 28px !important;
    margin-bottom: 0 !important;
}

body.page-id-20524 .ogere17-events-button .elementor-widget-container,
body.page-id-20524 .ogere17-events-button .elementor-button-wrapper {
    width: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

@media (max-width: 767px) {
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent article,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-inner,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-inner,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-wrap,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-wrap,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-item,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-item {
        text-align: center !important;
    }

    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent h5,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-title,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-title,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent p,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-excerpt,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-excerpt,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .read-more,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-more,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .more-link {
        text-align: center !important;
    }

    /* Date-badge variants used by eGovenz. */
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-date,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-date,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .event-date-wrap,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .events-date-wrap,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .post-date,
    body.page-id-20524 .ogere15-events-section .elementor-widget-egovenzevent .date {
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        text-align: center !important;
    }
}

/* -------------------------------------------------------------------------
 * Security & Emergency
 * ---------------------------------------------------------------------- */
body.page-id-20524 .ogere17-security-section {
    margin: 0 !important;
    padding-bottom: 0 !important;
}

body.page-id-20524 .ogere17-security-grid {
    width: 94% !important;
    max-width: 1260px !important;
    margin: 28px auto 0 !important;
}

body.page-id-20524 .ogere17-security-grid > .elementor-container {
    align-items: stretch !important;
    justify-content: center !important;
}

body.page-id-20524 .ogere17-security-card {
    display: flex !important;
}

body.page-id-20524 .ogere17-security-card .elementor-widget-wrap {
    display: grid !important;
    grid-template-rows: 40px 52px !important;
    align-content: start !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 116px !important;
    padding: 15px 14px !important;
}

body.page-id-20524 .ogere17-security-card-title {
    display: flex !important;
    align-items: flex-start !important;
    margin: 0 !important;
}

body.page-id-20524 .ogere17-security-card-title h4 {
    width: 100% !important;
    margin: 0 !important;
    font-size: 12.4px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    color: #172033 !important;
}

body.page-id-20524 .ogere17-security-contact-list {
    display: grid !important;
    grid-template-rows: 24px 24px !important;
    align-content: start !important;
    margin: 0 !important;
}

body.page-id-20524 .ogere17-security-contact-list p {
    display: flex !important;
    align-items: center !important;
    min-height: 24px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    font-size: 11.2px !important;
    line-height: 1.35 !important;
}

body.page-id-20524 .ogere17-security-contact-list a,
body.page-id-20524 .ogere17-security-contact-list span {
    font-size: 11.2px !important;
    line-height: 1.35 !important;
}

body.page-id-20524 .ogere17-security-contact-list i,
body.page-id-20524 .ogere17-security-contact-list svg {
    flex: 0 0 auto !important;
    margin-right: 9px !important;
    font-size: 11.5px !important;
}

body.page-id-20524 .ogere17-contact-placeholder {
    visibility: hidden !important;
}

body.page-id-20524 .ogere17-security-button-row {
    margin: 0 !important;
    padding: 24px 0 42px !important;
}

body.page-id-20524 .ogere17-security-button-row > .elementor-container {
    min-height: 74px !important;
    align-items: center !important;
    justify-content: center !important;
}

/* -------------------------------------------------------------------------
 * Event single pages / forms
 * ---------------------------------------------------------------------- */
body.single-egovenz-events .site-content,
body.single-egovenz-events .content-area,
body.single-egovenz-events main,
body.single-egovenz-events article {
    max-width: 100% !important;
    overflow-x: hidden !important;
}

body.single-egovenz-events form,
body.single-egovenz-events .wpcf7,
body.single-egovenz-events .wpcf7-form,
body.single-egovenz-events .wpcf7-form-control-wrap,
body.single-egovenz-events .wpcf7-form-control {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

body.single-egovenz-events input,
body.single-egovenz-events textarea,
body.single-egovenz-events select {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* -------------------------------------------------------------------------
 * Mobile centring
 * ---------------------------------------------------------------------- */
@media (max-width: 767px) {
    body.page-id-20524 .ogere17-welcome-bottom-row .elementor-spacer-inner {
        height: 20px !important;
    }

    body.page-id-20524 .ogere17-welcome-palace {
        width: 82% !important;
        max-width: 82% !important;
        margin: 6px auto 0 !important;
    }

    body.page-id-20524 .ogere17-welcome-video-col {
        display: flex !important;
        justify-content: center !important;
        overflow: visible !important;
    }

    body.page-id-20524 .ogere17-welcome-video-icon {
        margin: 0 auto !important;
    }

    /* Centre standard section title/separator language. */
    body.page-id-20524 .section-title-wrapper,
    body.page-id-20524 .section-title-wrapper .section-title,
    body.page-id-20524 .section-title-wrapper .section-description {
        text-align: center !important;
    }

    body.page-id-20524 .section-title-wrapper .title-separator {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Ologere title, patterned separator and identity. */
    body.page-id-20524 .ogere5-ologere-title,
    body.page-id-20524 .ogere5-ologere-title h2,
    body.page-id-20524 .ogere6-ologere-identity,
    body.page-id-20524 .ogere6-ologere-identity h3,
    body.page-id-20524 .ogere6-ologere-identity p {
        text-align: center !important;
    }

    body.page-id-20524 .ogere5-ologere-title > span {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Support cards. */
    body.page-id-20524 .ogere9-support-card,
    body.page-id-20524 .ogere9-support-card h3,
    body.page-id-20524 .ogere9-support-card p,
    body.page-id-20524 .ogere9-support-card .ogere5-card-link {
        text-align: center !important;
    }

    /* Security cards: centre text, but keep row semantics and no overlap. */
    body.page-id-20524 .ogere17-security-grid {
        width: 92% !important;
        max-width: 92% !important;
        margin-top: 22px !important;
    }

    body.page-id-20524 .ogere17-security-card .elementor-widget-wrap {
        display: block !important;
        min-height: 0 !important;
        padding: 16px 14px !important;
    }

    body.page-id-20524 .ogere17-security-card-title,
    body.page-id-20524 .ogere17-security-card-title h4 {
        justify-content: center !important;
        text-align: center !important;
    }

    body.page-id-20524 .ogere17-security-card-title {
        min-height: 0 !important;
        margin-bottom: 8px !important;
    }

    body.page-id-20524 .ogere17-security-contact-list {
        display: block !important;
    }

    body.page-id-20524 .ogere17-security-contact-list p {
        justify-content: center !important;
        min-height: 22px !important;
        white-space: normal !important;
        text-align: center !important;
    }

    body.page-id-20524 .ogere17-contact-placeholder {
        display: none !important;
    }

    body.page-id-20524 .ogere17-security-button-row {
        padding-top: 20px !important;
        padding-bottom: 34px !important;
    }

    /* Event single pages: proper left/right breathing room. */
    body.single-egovenz-events .site-content > .container,
    body.single-egovenz-events .content-area > .container,
    body.single-egovenz-events main > .container,
    body.single-egovenz-events article,
    body.single-egovenz-events .entry-content {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box !important;
    }

    body.single-egovenz-events .wpcf7 {
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Across public mobile sections, centre principal text/widgets while preserving
     * left alignment for form inputs and tabular programme content. */
    body .elementor-widget-heading,
    body .elementor-widget-text-editor,
    body .elementor-widget-icon-list,
    body .elementor-widget-button,
    body .section-title-wrapper,
    body .section-description {
        text-align: center !important;
    }

    body form input,
    body form textarea,
    body form select,
    body table,
    body table th,
    body table td {
        text-align: left !important;
    }
}
