/**
 * Edulia front (tenant) → design-system / IE token bridge.
 * Action blue for CTAs; brand red reserved for logo marks.
 */
:root {
    --edulia-primary: var(--ie-primary, #0066cc);
    --edulia-primary-hover: var(--ie-primary-hover, #0055aa);
    --edulia-brand: var(--ie-brand, var(--red, #a70000));
    --edulia-ink: var(--ie-ink, #1d1d1f);
    --edulia-muted: var(--ie-muted, #6e6e73);
    --edulia-line: var(--ie-line, #d2d2d7);
    --edulia-surface: var(--ie-surface, #ffffff);
    --edulia-wash: var(--ie-wash, #f5f5f7);
}

body {
    font-family: var(--ie-font, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
    color: var(--edulia-ink);
    background-color: var(--edulia-wash);
    text-shadow: none;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--edulia-ink);
}

/* Primary CTAs / site buttons */
.site_btn,
.site_btn:visited,
a.site_btn,
button.site_btn,
.btn_1,
.primary-btn,
.custome-button {
    color: #fff !important;
    background-color: var(--edulia-primary) !important;
    border-color: var(--edulia-primary) !important;
    border-radius: var(--ie-radius, 10px) !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.site_btn::after {
    background-color: var(--edulia-primary) !important;
}

.site_btn:hover,
.site_btn:focus-visible,
.btn_1:hover,
.primary-btn:hover {
    color: #fff !important;
    background-color: var(--edulia-primary-hover) !important;
    border-color: var(--edulia-primary-hover) !important;
}

/* Links & accents */
a:not(.site_btn):not(.btn):not(.nav-link):hover,
.heading_main a:hover,
.heading_sub a:hover,
.text-primary {
    color: var(--edulia-primary);
}

/* Forms */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
select,
textarea,
.form-control,
.input-control-input {
    border-color: var(--edulia-line) !important;
    border-radius: var(--ie-radius, 10px);
    font-family: inherit;
    box-shadow: none !important;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.form-control:focus-visible,
.input-control-input:focus-visible {
    outline: none !important;
    border-color: var(--edulia-primary) !important;
    box-shadow: 0 0 0 3px var(--ie-focus-ring, rgba(0, 102, 204, 0.22)) !important;
}

/* Header login CTA affinity */
.heading_sub_right a:hover,
.heading_main .nav-link:hover,
.heading_main .nav-link.active {
    color: var(--edulia-primary) !important;
}

.backtop {
    background-color: var(--edulia-primary) !important;
}

/* Focus-visible for interactive Edulia controls */
a:focus-visible,
button:focus-visible,
.site_btn:focus-visible,
.navbar-toggler:focus-visible {
    outline: 2px solid var(--edulia-primary);
    outline-offset: 2px;
}

/* Footer — Edulia / site */
.footer_area,
.footer-area,
footer.footer_section {
    background: var(--edulia-surface) !important;
    border-top: 1px solid var(--edulia-line);
    color: var(--edulia-ink);
    box-shadow: none !important;
}

.footer_area .f_title h4,
.footer-widget h4,
.footer_area a,
.footer-list a {
    color: var(--edulia-ink);
}

.footer_area a:hover,
.footer-list a:hover {
    color: var(--edulia-primary);
}

.copy_right_text,
.copyright_text,
.footer-area p {
    color: var(--edulia-muted);
}

.footer {
    background: var(--edulia-surface) !important;
    background-image: none !important;
    border-top: 1px solid var(--edulia-line);
    padding-top: 48px !important;
    padding-bottom: 0 !important;
    color: var(--edulia-ink);
}

.footer-item p {
    color: var(--edulia-muted) !important;
}

.footer-item h5 {
    color: var(--edulia-primary) !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.footer-item-links li a {
    color: var(--edulia-ink) !important;
}

.footer-item-links li a:hover {
    color: var(--edulia-primary) !important;
}

.footer_copyright {
    background: var(--edulia-wash) !important;
    color: var(--edulia-muted);
}
