/*
 * The BrightPath Foundation - Global Design Overrides
 * Standardizing design aesthetics for launch: flat square buttons and unified typography
 */

/* 1. Global Paragraph layout overrides for legibility */
body :not(.et-l--header):not(.et-l--footer):not(.bp-footer):not(.bp-pre-footer) p,
body :not(.et-l--header):not(.et-l--footer):not(.bp-footer):not(.bp-pre-footer) .pa-blog-load-more p,
body :not(.et-l--header):not(.et-l--footer):not(.bp-footer):not(.bp-pre-footer) .et_pb_text p {
    font-size: 15.5px !important;
    line-height: 1.7 !important;
    margin-bottom: 24px !important;
}

/* Enforce the elegant charcoal color ONLY on standard light layouts */
body :not(.et-l--header):not(.et-l--footer):not(.bp-footer):not(.bp-pre-footer) p {
    color: #4a5568; /* Respects dark backgrounds naturally */
}

/* Guarantee white/light text readability inside the custom footer, pre-footer, dark layouts, and video sections */
.bp-footer,
.bp-footer p,
.bp-footer span,
.bp-footer a,
.bp-footer-newsletter-label,
.bp-pre-footer,
.bp-pre-footer p,
.bp-pre-footer h5,
.bp-pre-footer a,
.et-l--footer,
.et-l--footer p,
.et-l--footer span,
.et-l--footer a,
.et_pb_bg_layout_dark,
.et_pb_bg_layout_dark p,
.et_pb_bg_layout_dark span,
.et_pb_bg_layout_dark a,
.et_pb_section_video_bg p,
[class*="dark-bg"] p,
[class*="dark-layout"] p {
    color: #ffffff !important;
}

/* 2. Global Button overrides to enforce flat square design formatting with maximum specificity */
body :not(.et-l--header) .et_pb_button,
body :not(.et-l--header) .btn,
body :not(.et-l--header) button,
body :not(.et-l--header) input[type="submit"],
body :not(.et-l--header) input[type="button"],
body :not(.et-l--header) [class*="btn"],
body :not(.et-l--header) [class*="button"],
#page-container :not(.et-l--header) .et_pb_button,
#page-container :not(.et-l--header) .btn,
#page-container :not(.et-l--header) button,
#page-container :not(.et-l--header) [class*="btn"],
#page-container :not(.et-l--header) [class*="button"],
#et-boc :not(.et-l--header) .et_pb_button,
#et-boc :not(.et-l--header) .btn,
#et-boc :not(.et-l--header) button,
#et-boc :not(.et-l--header) [class*="btn"],
#et-boc :not(.et-l--header) [class*="button"],
.et-db #et-boc .et-l :not(.et-l--header) .et_pb_button,
.et_pb_module :not(.et-l--header) .et_pb_button,
.et_pb_button_module_wrapper :not(.et-l--header) .et_pb_button {
    border-radius: 0px !important; /* Flat square border corners */
    border: none !important; /* Remove borders completely for flat design */
    padding: 14px 28px !important; /* Uniform spacious padding matching Barrigel template */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    vertical-align: middle !important;
    font-weight: 700 !important;
    text-transform: capitalize !important; /* Standard presentation casing */
    transition: all 0.2s ease-in-out !important;
}

/* Maintain original colors on hover, but keep square shape and apply light opacity change */
body :not(.et-l--header) .et_pb_button:hover,
body :not(.et-l--header) .btn:hover,
body :not(.et-l--header) button:hover,
body :not(.et-l--header) input[type="submit"]:hover,
body :not(.et-l--header) input[type="button"]:hover,
body :not(.et-l--header) [class*="btn"]:hover,
body :not(.et-l--header) [class*="button"]:hover,
#page-container :not(.et-l--header) .et_pb_button:hover,
#page-container :not(.et-l--header) .btn:hover,
#page-container :not(.et-l--header) button:hover,
#page-container :not(.et-l--header) [class*="btn"]:hover,
#page-container :not(.et-l--header) [class*="button"]:hover,
#et-boc :not(.et-l--header) .et_pb_button:hover,
#et-boc :not(.et-l--header) .btn:hover,
#et-boc :not(.et-l--header) button:hover,
#et-boc :not(.et-l--header) [class*="btn"]:hover,
#et-boc :not(.et-l--header) [class*="button"]:hover {
    border-radius: 0px !important;
    border: none !important;
    opacity: 0.82 !important; /* Professional opacity fade */
}
