﻿/* ═══════════════════════════════════════════════════════════════
   EI-THEME.CSS — Official Brand Theme
   Éducation internationale · Charte graphique officielle
   ═══════════════════════════════════════════════════════════════

   BRANDS:
     EI  = Éducation internationale
     DI  = Développement international
     AZ  = Échanges azimut
     QMA = Québec métiers d'avenir
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. CSS Custom Properties (Design Tokens) ────────────────── */
:root {
    /* ─── Éducation internationale & Développement international ─ */
    --ei-primary:          #fdc900;   /* Gold / Yellow           */
    --ei-secondary:        #4b4b4b;   /* Dark gray               */
    --ei-secondary-light:  #5e5e5f;   /* Medium gray             */
    --ei-tertiary-bg:      #f5f1f1;   /* Warm light gray         */
    --ei-tertiary-border:  #dfdfdf;   /* Border gray             */
    --ei-red:              #de2516;   /* Accent red              */
    --ei-green:            #93bf2d;   /* Accent green            */
    --ei-navy:             #192a52;   /* Deep navy               */

    /* ─── Échanges azimut ────────────────────────────────────── */
    --az-primary:          #93bf2d;   /* Green                   */
    --az-secondary:        #fdc900;   /* Gold                    */
    --az-secondary-dark:   #77852d;   /* Olive green             */

    /* ─── Québec métiers d'avenir ────────────────────────────── */
    --qma-primary:         #de2516;   /* Red                     */
    --qma-secondary:       #fdc900;   /* Gold                    */
    --qma-secondary-dark:  #b8241a;   /* Darker red              */

    /* ─── Shared neutrals ────────────────────────────────────── */
    --neutral-50:          #f5f1f1;   /* Lightest                */
    --neutral-200:         #dfdfdf;   /* Borders                 */
    --neutral-400:         #7c7c7d;   /* Muted text              */
    --neutral-600:         #5e5e5f;   /* Body text light         */
    --neutral-800:         #4b4b4b;   /* Body text               */

    /* ─── Semantic aliases ───────────────────────────────────── */
    --brand-gold:          var(--ei-primary);
    --brand-navy:          var(--ei-navy);
    --brand-red:           var(--qma-primary);
    --brand-green:         var(--az-primary);
    --bg-soft:             var(--neutral-50);
    --border-soft:         var(--neutral-200);
    --text-primary:        var(--neutral-800);
    --text-secondary:      var(--neutral-600);
    --text-muted:          var(--neutral-400);

    /* ─── Spacing scale ──────────────────────────────────────── */
    --space-xs:  .25rem;
    --space-sm:  .5rem;
    --space-md:  1rem;
    --space-lg:  1.5rem;
    --space-xl:  2rem;
    --space-2xl: 3rem;

    /* ─── Radius scale ───────────────────────────────────────── */
    --radius-sm:  8px;
    --radius-md:  12px;
    --radius-lg:  18px;
    --radius-xl:  24px;
    --radius-pill: 50px;

    /* ─── Shadows ────────────────────────────────────────────── */
    --shadow-sm:  0 2px 8px rgba(25,42,82,.06);
    --shadow-md:  0 6px 24px rgba(25,42,82,.08);
    --shadow-lg:  0 12px 40px rgba(25,42,82,.1);
    --shadow-xl:  0 20px 60px rgba(25,42,82,.14);

    /* ─── Transitions ────────────────────────────────────────── */
    --ease-out:   cubic-bezier(.22,1,.36,1);
    --transition: all .3s var(--ease-out);
}


/* ── 2. Typography ───────────────────────────────────────────── */

/* ─ Proxima Nova Condensed (Primary body – replaces Arial Nova) ─ */
@font-face {
    font-family: 'Proxima Nova Condensed';
    src: url('/fonts/Proxima Nova Condensed Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Proxima Nova Condensed';
    src: url('/fonts/Proxima Nova Condensed Semibold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Proxima Nova Condensed';
    src: url('/fonts/Proxima Nova Condensed Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ─ Fira Sans Condensed (Secondary / Headings) ──────────────── */
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fira Sans Condensed';
    src: url('/fonts/FiraSansCondensed-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ─ FAIRE SprigSans (Display / Special) ─────────────────────── */
@font-face {
    font-family: 'SprigSans';
    src: url('/fonts/FAIRE-SprigSans-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SprigSans';
    src: url('/fonts/FAIRE-SprigSans-RegularItalic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'SprigSans';
    src: url('/fonts/FAIRE-SprigSans-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'SprigSans';
    src: url('/fonts/FAIRE-SprigSans-MediumItalic.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* ─ Protest Strike (Accent / Display headlines) ─────────────── */
@font-face {
    font-family: 'Protest Strike';
    src: url('/fonts/ProtestStrike-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* ─ Minion Pro (Serif – formal / editorial) ─────────────────── */
@font-face {
    font-family: 'Minion Pro';
    src: url('/fonts/MinionPro-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-body:    'Proxima Nova Condensed', 'Fira Sans Condensed', 'Arial Narrow', Arial, sans-serif;
    --font-heading: 'Fira Sans Condensed', 'Proxima Nova Condensed', 'Arial Narrow', Arial, sans-serif;
    --font-accent:  'Protest Strike', 'SprigSans', 'Arial Black', Arial, sans-serif;
    --font-display: 'SprigSans', 'Proxima Nova Condensed', sans-serif;
    --font-serif:   'Minion Pro', Georgia, 'Times New Roman', serif;
}

body {
    font-family: var(--font-body);
}
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
}


/* ── 3. Brand Color Utility Classes ──────────────────────────── */

/* ─ Background gradients (for icons, badges, banners) ───────── */
.bg-ei         { background: var(--ei-primary) !important; color: var(--ei-navy) !important; }
.bg-ei-grad    { background: linear-gradient(135deg, var(--ei-primary), #ffe066) !important; color: var(--ei-navy) !important; }
.bg-ei-navy    { background: var(--ei-navy) !important; color: #fff !important; }
.bg-navy-grad  { background: linear-gradient(135deg, var(--ei-navy), #2a4073) !important; color: #fff !important; }

.bg-qma        { background: var(--qma-primary) !important; color: #fff !important; }
.bg-qma-grad   { background: linear-gradient(135deg, var(--qma-primary), var(--qma-secondary-dark)) !important; color: #fff !important; }

.bg-az         { background: var(--az-primary) !important; color: #fff !important; }
.bg-az-grad    { background: linear-gradient(135deg, var(--az-primary), var(--az-secondary-dark)) !important; color: #fff !important; }

.bg-di-grad    { background: linear-gradient(135deg, var(--ei-navy), #2a4073) !important; color: #fff !important; }

.bg-gold       { background: var(--brand-gold) !important; color: var(--ei-navy) !important; }
.bg-gold-grad  { background: linear-gradient(135deg, var(--brand-gold), #ffe066) !important; color: var(--ei-navy) !important; }

/* ─ Text colors ─────────────────────────────────────────────── */
.text-ei       { color: var(--ei-primary) !important; }
.text-navy     { color: var(--ei-navy) !important; }
.text-qma      { color: var(--qma-primary) !important; }
.text-az       { color: var(--az-primary) !important; }
.text-gold     { color: var(--brand-gold) !important; }
.text-brand    { color: var(--text-primary) !important; }
.text-muted-ei { color: var(--text-secondary) !important; }

/* ─ Border accents ──────────────────────────────────────────── */
.border-ei     { border-color: var(--ei-primary) !important; }
.border-qma    { border-color: var(--qma-primary) !important; }
.border-az     { border-color: var(--az-primary) !important; }
.border-navy   { border-color: var(--ei-navy) !important; }


/* ── 4. Reusable Card Component ──────────────────────────────── */
.ei-card {
    background: #fff;
    border-radius: var(--radius-lg);
    border: 1px solid rgba(0,0,0,.05);
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
    overflow: hidden;
}
.ei-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
}

/* Card with colored top accent bar */
.ei-card[data-accent]::before {
    content: '';
    display: block;
    height: 4px;
    transition: height .3s var(--ease-out);
}
.ei-card:hover[data-accent]::before { height: 6px; }
.ei-card[data-accent="ei"]::before  { background: linear-gradient(90deg, var(--ei-primary), #ffe066); }
.ei-card[data-accent="qma"]::before { background: linear-gradient(90deg, var(--qma-primary), var(--qma-secondary-dark)); }
.ei-card[data-accent="az"]::before  { background: linear-gradient(90deg, var(--az-primary), var(--az-secondary-dark)); }
.ei-card[data-accent="di"]::before  { background: linear-gradient(90deg, var(--ei-navy), #2a4073); }


/* ── 5. Icon Badge Component ─────────────────────────────────── */
.ei-icon-badge {
    width: 52px;
    height: 52px;
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    flex-shrink: 0;
}
.ei-icon-badge.size-sm { width: 40px; height: 40px; font-size: 1.1rem; border-radius: var(--radius-sm); }
.ei-icon-badge.size-lg { width: 64px; height: 64px; font-size: 1.7rem; border-radius: 16px; }


/* ── 6. Button Variants ──────────────────────────────────────── */
.btn-ei {
    background: var(--ei-primary);
    color: var(--ei-navy);
    border: none;
    border-radius: var(--radius-pill);
    font-weight: 700;
    padding: .6rem 1.8rem;
    transition: var(--transition);
}
.btn-ei:hover {
    background: #e5b700;
    color: var(--ei-navy);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(253,201,0,.35);
}
.btn-qma {
    background: var(--qma-primary);
    color: #fff;
    border: none;
    border-radius: var(--radius-pill);
    font-weight: 700;
    padding: .6rem 1.8rem;
    transition: var(--transition);
}
.btn-qma:hover {
    background: var(--qma-secondary-dark);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(222,37,22,.3);
}
.btn-az {
    background: var(--az-primary);
    color: #fff;
    border: none;
    border-radius: var(--radius-pill);
    font-weight: 700;
    padding: .6rem 1.8rem;
    transition: var(--transition);
}
.btn-az:hover {
    background: var(--az-secondary-dark);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(147,191,45,.35);
}
.btn-navy {
    background: var(--ei-navy);
    color: #fff;
    border: none;
    border-radius: var(--radius-pill);
    font-weight: 700;
    padding: .6rem 1.8rem;
    transition: var(--transition);
}
.btn-navy:hover {
    background: #2a4073;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(25,42,82,.3);
}
.btn-outline-ei {
    background: transparent;
    color: var(--ei-primary);
    border: 2px solid var(--ei-primary);
    border-radius: var(--radius-pill);
    font-weight: 700;
    padding: .55rem 1.7rem;
    transition: var(--transition);
}
.btn-outline-ei:hover {
    background: var(--ei-primary);
    color: var(--ei-navy);
    transform: translateY(-2px);
}


/* ── 7. Alert / Status Badge ─────────────────────────────────── */
.badge-ei  { background: rgba(253,201,0,.15); color: #b58f00; }
.badge-qma { background: rgba(222,37,22,.12); color: var(--qma-primary); }
.badge-az  { background: rgba(147,191,45,.15); color: var(--az-secondary-dark); }
.badge-di  { background: rgba(25,42,82,.1);    color: var(--ei-navy); }


/* ── 8. Section / Page Titles ────────────────────────────────── */
.ei-section-title {
    font-family: var(--font-heading);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--ei-navy);
    margin-bottom: .35rem;
}
.ei-section-subtitle {
    font-family: var(--font-body);
    color: var(--text-secondary);
    font-size: .95rem;
    margin-bottom: 2rem;
}


/* ── 9. Hero / Banner Gradient Presets ───────────────────────── */
.hero-grad-ei  { background: linear-gradient(135deg, var(--ei-navy) 0%, #2a4073 40%, var(--ei-primary) 100%); }
.hero-grad-qma { background: linear-gradient(135deg, var(--qma-primary) 0%, var(--qma-secondary-dark) 50%, var(--brand-gold) 100%); }
.hero-grad-az  { background: linear-gradient(135deg, var(--az-primary) 0%, var(--az-secondary-dark) 50%, var(--brand-gold) 100%); }
.hero-grad-all { background: linear-gradient(135deg, var(--ei-navy) 0%, var(--qma-primary) 35%, var(--brand-gold) 65%, var(--az-primary) 100%); }


/* ── 10. Form Controls (themed) ──────────────────────────────── */
.form-control.ei-input,
.form-select.ei-input {
    border-radius: var(--radius-md);
    border: 1.5px solid var(--neutral-200);
    padding: .65rem 1rem;
    font-size: .9rem;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.form-control.ei-input:focus,
.form-select.ei-input:focus {
    border-color: var(--ei-primary);
    box-shadow: 0 0 0 3px rgba(253,201,0,.2);
}


/* ── 11. Link / Quick-Link Component ─────────────────────────── */
.ei-quick-link {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.25rem;
    background: #fff;
    border-radius: var(--radius-md);
    border: 1px solid rgba(0,0,0,.05);
    text-decoration: none;
    color: var(--ei-navy);
    font-weight: 600;
    font-size: .92rem;
    transition: var(--transition);
    box-shadow: var(--shadow-sm);
}
.ei-quick-link:hover {
    background: var(--bg-soft);
    transform: translateX(6px);
    box-shadow: var(--shadow-md);
    color: var(--ei-navy);
}
.ei-quick-link:hover .ei-icon-badge {
    transform: scale(1.08);
}


/* ── 12. Animations ──────────────────────────────────────────── */
.ei-fade-up {
    opacity: 0;
    transform: translateY(25px);
    transition: opacity .6s var(--ease-out), transform .6s var(--ease-out);
}
.ei-fade-up.visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes ei-pulse {
    0%   { opacity: .7; transform: scale(1); }
    100% { opacity: 1;  transform: scale(1.05); }
}
@keyframes ei-float {
    0%, 100% { transform: translateY(0) rotate(0); }
    50%      { transform: translateY(-25px) rotate(6deg); }
}


/* ── 13. Responsive helpers ──────────────────────────────────── */
@media (max-width: 768px) {
    .ei-section-title { font-size: 1.3rem; }
    .ei-icon-badge.size-lg { width: 52px; height: 52px; font-size: 1.4rem; }
}


/* ── 14. Base / Reset (merged from site.css) ─────────────────── */
html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}
@media (min-width: 768px) {
    html { font-size: 16px; }
}
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus,
.form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 .1rem #fff, 0 0 0 .25rem var(--ei-primary);
}


/* ── 15. Layout helpers (merged from _Layout.cshtml.css) ─────── */
.border-top  { border-top: 1px solid var(--border-soft); }
.border-bottom { border-bottom: 1px solid var(--border-soft); }
.box-shadow  { box-shadow: var(--shadow-sm); }
button.accept-policy { font-size: 1rem; line-height: inherit; }


/* ── 16. NiceAdmin Brand Overrides ───────────────────────────── */
/* Override NiceAdmin's default #4154f1 / #012970 accent colors
   with EI brand palette. Do NOT edit assets/css/style.css directly. */

/* ─ Links ────────────────────────────────────────────────────── */
a {
    color: var(--ei-navy);
}
a:hover {
    color: var(--ei-primary);
}

/* ─ Page title ───────────────────────────────────────────────── */
.pagetitle h1 {
    color: var(--ei-navy);
}

/* ─ Back-to-top ──────────────────────────────────────────────── */
.back-to-top {
    background: var(--ei-navy);
}
.back-to-top:hover {
    background: var(--ei-primary);
    color: var(--ei-navy);
}

/* ─ Cards ────────────────────────────────────────────────────── */
.card-title {
    color: var(--ei-navy);
}

/* ─ Accordion ────────────────────────────────────────────────── */
.accordion-button:not(.collapsed) {
    color: var(--ei-navy);
}
.accordion-flush .accordion-button:not(.collapsed) {
    color: var(--ei-navy);
}

/* ─ Bordered tabs ────────────────────────────────────────────── */
.nav-tabs-bordered .nav-link:hover,
.nav-tabs-bordered .nav-link:focus {
    color: var(--ei-navy);
}
.nav-tabs-bordered .nav-link.active {
    color: var(--ei-navy);
    border-bottom-color: var(--ei-primary);
}

/* ─ Header ───────────────────────────────────────────────────── */
.header .logo span {
    color: var(--ei-navy);
}
.header .toggle-sidebar-btn {
    color: var(--ei-navy);
}
.header .search-form input {
    color: var(--ei-navy);
}
.header .search-form button i {
    color: var(--ei-navy);
}
.header-nav .nav-icon {
    color: var(--ei-navy);
}
.header-nav .nav-profile {
    color: var(--ei-navy);
}

/* ─ Sidebar ──────────────────────────────────────────────────── */
.sidebar-nav .nav-link {
    color: var(--ei-navy);
    background: rgba(253, 201, 0, .08);
}
.sidebar-nav .nav-link i {
    color: var(--ei-navy);
}
.sidebar-nav .nav-link.collapsed {
    color: var(--ei-navy);
}
.sidebar-nav .nav-link:hover {
    color: var(--ei-navy);
    background: rgba(253, 201, 0, .12);
}
.sidebar-nav .nav-link:hover i {
    color: var(--ei-navy);
}
.sidebar-nav .nav-content a {
    color: var(--ei-navy);
}
.sidebar-nav .nav-content a:hover,
.sidebar-nav .nav-content a.active {
    color: var(--ei-primary);
}
.sidebar-nav .nav-content a.active i {
    background-color: var(--ei-primary);
}

/* ─ Buttons ──────────────────────────────────────────────────── */
.btn-primary {
    background-color: var(--ei-navy);
    border-color: var(--ei-navy);
    color: #fff;
}
.btn-primary:hover {
    background-color: #2a4073;
    border-color: #2a4073;
    color: #fff;
}
.btn-outline-primary {
    color: var(--ei-navy);
    border-color: var(--ei-navy);
}
.btn-outline-primary:hover {
    background-color: var(--ei-navy);
    border-color: var(--ei-navy);
    color: #fff;
}

/* ─ Nav pills ────────────────────────────────────────────────── */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: var(--ei-navy);
    border-color: var(--ei-navy);
    color: #fff;
}

/* ─ Breadcrumbs ──────────────────────────────────────────────── */
.breadcrumb a {
    color: var(--ei-navy);
}

/* ─ Dropdowns ────────────────────────────────────────────────── */
.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--ei-navy);
}

/* ─ Pagination ───────────────────────────────────────────────── */
.page-link {
    color: var(--ei-navy);
}
.page-item.active .page-link {
    background-color: var(--ei-navy);
    border-color: var(--ei-navy);
}

/* ─ Dashboard ────────────────────────────────────────────────── */
.dashboard .filter .icon:hover,
.dashboard .filter .icon:focus {
    color: var(--ei-navy);
}
.dashboard .info-card h6 {
    color: var(--ei-navy);
}
.dashboard .sales-card .card-icon {
    color: var(--ei-navy);
    background: rgba(25, 42, 82, .08);
}
.dashboard .news h4 a {
    color: var(--ei-navy);
}
.dashboard .news h4 a:hover {
    color: var(--ei-primary);
}

/* ─ Contact / forms ──────────────────────────────────────────── */
.contact .info-box i {
    color: var(--ei-navy);
}
.contact .info-box h3 {
    color: var(--ei-navy);
}
.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
    border-color: var(--ei-navy);
}
.contact .php-email-form button[type=submit] {
    background: var(--ei-navy);
}
.contact .php-email-form button[type=submit]:hover {
    background: #2a4073;
}

/* ─ FAQ ──────────────────────────────────────────────────────── */
.faq .basic h6 {
    color: var(--ei-navy);
}

/* ─ Error 404 ────────────────────────────────────────────────── */
.error-404 h1 {
    color: var(--ei-navy);
}
.error-404 h2 {
    color: var(--ei-navy);
}

/* ─ Profile ──────────────────────────────────────────────────── */
.profile .profile-overview .card-title {
    color: var(--ei-navy);
}
.profile .profile-overview .label {
    color: rgba(25, 42, 82, .6);
}
.profile .profile-edit label {
    color: rgba(25, 42, 82, .6);
}
.profile .profile-card .social-links a {
    color: rgba(25, 42, 82, .5);
}
.profile .profile-card .social-links a:hover {
    color: var(--ei-navy);
}

/* ─ Icons list ───────────────────────────────────────────────── */
.iconslist .icon {
    color: var(--ei-navy);
}

/* ─ Footer ───────────────────────────────────────────────────── */
.footer {
    border-top: 1px solid var(--border-soft);
}
.footer .copyright,
.footer .credits {
    color: var(--ei-navy);
}

/* ─ Spinner ──────────────────────────────────────────────────── */
.spinner-border.text-primary {
    color: var(--ei-navy) !important;
}
