/* ============================================================
   L'HISPANIOLA — Thème Ghost
   Journal économique & financier · Haïti & Caraïbes
   Basé sur Source Theme v1.7.0
   ============================================================ */

/* 1. Variables & Fonts
/* ---------------------------------------------------------- */

:root {
    --haiti-blue:      #00209F;
    --haiti-blue-dark: #001580;
    --haiti-red:       #D21034;
    --haiti-red-dark:  #A50D28;
    --lh-black:        #1A1A1A;
    --lh-text:         #3D3D3D;
    --lh-meta:         #6B6B6B;
    --lh-bg:           #F5F5F0;
    --lh-bg-card:      #EBEBEB;
    --lh-border:       #D4D4D4;
    --lh-up:           #1A6B3A;
    --font-display:    'Cormorant Garamond', Georgia, serif;
    --font-body:       'Crimson Pro', Georgia, serif;
    --font-ui:         'DM Sans', -apple-system, sans-serif;

    /* Override Source theme variables */
    --font-serif:      'Cormorant Garamond', Georgia, serif;
    --font-sans:       'DM Sans', -apple-system, sans-serif;
    --color-primary-text:   var(--lh-text);
    --color-secondary-text: var(--lh-meta);
    --color-border:         rgba(0,0,0,0.1);
    --color-dark-border:    rgba(0,0,0,0.4);
}

body.lhispaniola {
    background-color: var(--lh-bg);
    font-family: var(--font-body);
    color: var(--lh-text);
}

body.lhispaniola h1,
body.lhispaniola h2,
body.lhispaniola h3,
body.lhispaniola h4,
body.lhispaniola h5 {
    font-family: var(--font-display);
    color: var(--lh-black);
}

/* 2. Ticker Bar
/* ---------------------------------------------------------- */

.lh-ticker-wrap {
    background: var(--lh-bg-card);
    border-bottom: 0.5px solid var(--lh-border);
    overflow: hidden;
    padding: 6px 0;
}

.lh-ticker-inner {
    display: flex;
    align-items: center;
    gap: 0;
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 var(--container-gap);
    overflow-x: auto;
    scrollbar-width: none;
    white-space: nowrap;
}

.lh-ticker-inner::-webkit-scrollbar { display: none; }

.lh-ticker-label {
    font-family: var(--font-ui);
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #fff;
    background: var(--haiti-blue);
    padding: 3px 10px;
    margin-right: 16px;
    flex-shrink: 0;
}

.lh-tick {
    font-family: var(--font-ui);
    font-size: 11px;
    color: var(--lh-text);
    padding: 0 14px;
    border-right: 0.5px solid var(--lh-border);
    flex-shrink: 0;
}

.lh-tick:last-child { border-right: none; }

.lh-tick strong {
    font-weight: 600;
    color: var(--lh-black);
}

.lh-tick em {
    font-style: normal;
    font-size: 10px;
    margin-left: 3px;
}

.up { color: var(--lh-up); }
.dn { color: var(--haiti-red); }

/* 3. Breaking News
/* ---------------------------------------------------------- */

.lh-breaking {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 7px var(--container-gap);
    border-bottom: 1.5px solid var(--haiti-blue);
    font-size: 13px;
}

.lh-breaking-label {
    background: var(--haiti-blue);
    color: #fff;
    font-family: var(--font-ui);
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    padding: 3px 10px;
    flex-shrink: 0;
}

.lh-breaking-text {
    font-family: var(--font-body);
    font-size: 14px;
    color: var(--lh-black);
}

/* 4. Navigation — L'Hispaniola
/* ---------------------------------------------------------- */

.lh-navigation {
    border-bottom: 2px solid var(--haiti-blue) !important;
    background: var(--lh-bg) !important;
    padding: 0 !important;
}

.lh-navigation .gh-navigation-inner {
    flex-direction: column;
    padding-top: 0;
    padding-bottom: 0;
}

/* Logo + tagline block */
.lh-navigation .gh-navigation-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 0 10px;
    gap: 4px;
    width: 100%;
    border-bottom: 0.5px solid var(--lh-border);
}

/* Flag bar above logo — intégrée dans le PNG du logo */
.lh-navigation .gh-navigation-brand::before {
    display: none;
}

.lh-logo {
    font-family: var(--font-display) !important;
    font-size: 5.4rem !important;
    font-weight: 600 !important;
    letter-spacing: -1px !important;
    color: var(--lh-black) !important;
    text-decoration: none !important;
    line-height: 1 !important;
}

.lh-logo-l {
    font-style: italic;
    font-weight: 400;
    color: var(--haiti-blue);
}

.lh-logo img {
    max-height: 60px;
    width: auto;
}

.lh-tagline {
    font-family: var(--font-ui);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--lh-meta);
    margin-top: 4px;
}

/* Nav menu row */
.lh-navigation .gh-navigation-menu {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0;
    border-top: none;
}

.lh-navigation .gh-navigation-menu .nav {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
}

.lh-navigation .gh-navigation-menu .nav li a {
    font-family: var(--font-ui);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--lh-black);
    padding: 10px 16px;
    display: block;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: color 0.15s, border-color 0.15s;
}

.lh-navigation .gh-navigation-menu .nav li a:hover,
.lh-navigation .gh-navigation-menu .nav li.nav-current a {
    color: var(--haiti-red);
    border-bottom-color: var(--haiti-red);
}

/* Actions (search + subscribe) */
.lh-navigation .gh-navigation-actions {
    position: absolute;
    right: var(--container-gap);
    top: 28px;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Fix: prevent ghost nav from overlapping ticker/breaking bar */
.lh-navigation {
    position: relative !important;
    top: auto !important;
}

/* Ensure viewport stacks correctly */
.gh-viewport {
    display: flex;
    flex-direction: column;
}

/* Fix nav menu overlapping blue data bar below */
.lh-navigation .gh-navigation-inner {
    position: relative;
}

.lh-signin {
    font-family: var(--font-ui);
    font-size: 11px;
    font-weight: 500;
    color: var(--lh-meta);
    text-decoration: none;
    letter-spacing: 0.04em;
}

.lh-btn-subscribe {
    background: var(--haiti-blue) !important;
    color: #fff !important;
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    padding: 5px 14px !important;
}

.lh-btn-subscribe:hover {
    background: var(--haiti-blue-dark) !important;
}

/* 5. Post Cards
/* ---------------------------------------------------------- */

.gh-card-tag {
    font-family: var(--font-ui) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--haiti-red) !important;
    margin-bottom: 6px !important;
}

.gh-card-title {
    font-family: var(--font-display) !important;
    font-weight: 600 !important;
    color: var(--lh-black) !important;
    line-height: 1.2 !important;
}

.gh-card-title:hover {
    color: var(--haiti-blue) !important;
}

.gh-card-excerpt {
    font-family: var(--font-body) !important;
    font-weight: 300 !important;
    font-size: 1.4rem !important;
    color: var(--lh-meta) !important;
    line-height: 1.6 !important;
}

.gh-card-meta {
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    color: var(--lh-meta) !important;
}

.gh-card-author {
    font-weight: 500;
    color: var(--lh-text);
}

/* 6. Section titles / containers
/* ---------------------------------------------------------- */

.gh-container-title {
    font-family: var(--font-ui) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: var(--lh-meta) !important;
    border-bottom: 1.5px solid var(--haiti-blue) !important;
    padding-bottom: 6px !important;
    margin-bottom: 20px !important;
}

/* 7. Buttons
/* ---------------------------------------------------------- */

.gh-button {
    background: var(--haiti-blue) !important;
    color: #fff !important;
    border-radius: 0 !important;
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

.gh-button:hover {
    background: var(--haiti-blue-dark) !important;
}

/* 8. Post / Article
/* ---------------------------------------------------------- */

.gh-article-header .gh-article-tag {
    font-family: var(--font-ui) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: var(--haiti-red) !important;
}

.gh-article-title {
    font-family: var(--font-display) !important;
    font-size: clamp(3rem, 5vw, 5rem) !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    color: var(--lh-black) !important;
}

.gh-article-excerpt {
    font-family: var(--font-body) !important;
    font-size: 1.9rem !important;
    font-weight: 300 !important;
    color: var(--lh-meta) !important;
    line-height: 1.65 !important;
}

.gh-content {
    font-family: var(--font-body) !important;
    font-size: 1.8rem !important;
    line-height: 1.8 !important;
    color: var(--lh-text) !important;
}

/* Drop cap */
.gh-content.drop-cap > p:first-of-type::first-letter {
    font-family: var(--font-display) !important;
    font-size: 5.8rem !important;
    font-weight: 600 !important;
    float: left !important;
    line-height: 0.75 !important;
    margin: 8px 8px 0 0 !important;
    color: var(--haiti-blue) !important;
}

/* Paywall / members gate */
.gh-post-upgrade-cta {
    border-top: 2px solid var(--haiti-blue) !important;
}

.gh-post-upgrade-cta h2 {
    font-family: var(--font-display) !important;
    color: var(--lh-black) !important;
}

/* 9. Footer
/* ---------------------------------------------------------- */

.lh-footer {
    background: var(--lh-black) !important;
    border-top: 2px solid var(--haiti-blue) !important;
}

.lh-footer-signup {
    text-align: center;
    padding: 48px 0;
    border-bottom: 0.5px solid rgba(255,255,255,0.1);
}

.lh-footer-signup-title {
    font-family: var(--font-display) !important;
    font-size: 2.8rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    margin-bottom: 8px !important;
}

.lh-footer-signup-sub {
    font-family: var(--font-body) !important;
    font-size: 1.5rem !important;
    font-weight: 300 !important;
    color: rgba(255,255,255,0.6) !important;
    margin-bottom: 20px !important;
}

.lh-footer .gh-subscribe-input {
    border-radius: 0 !important;
    border-color: rgba(255,255,255,0.2) !important;
    background: rgba(255,255,255,0.08) !important;
    color: #fff !important;
}

.lh-footer .gh-subscribe-btn {
    background: var(--haiti-blue) !important;
    border-radius: 0 !important;
}

.lh-social a {
    color: rgba(255,255,255,0.5) !important;
}

.lh-social a:hover {
    color: #fff !important;
}

.lh-footer-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    flex-wrap: wrap;
    gap: 12px;
}

.lh-footer-logo {
    font-family: var(--font-display) !important;
    font-size: 2rem !important;
    font-weight: 600 !important;
    color: #fff !important;
}

.lh-flag-mini {
    display: flex;
}

.lh-flag-b {
    width: 18px;
    height: 12px;
    background: var(--haiti-blue);
    display: block;
}

.lh-flag-r {
    width: 18px;
    height: 12px;
    background: var(--haiti-red);
    display: block;
}

.lh-footer .gh-footer-menu a {
    color: rgba(255,255,255,0.5) !important;
    font-family: var(--font-ui) !important;
    font-size: 10px !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
}

.lh-footer .gh-footer-menu a:hover {
    color: #fff !important;
}

.lh-copyright {
    font-family: var(--font-ui);
    font-size: 10px;
    color: rgba(255,255,255,0.35);
    letter-spacing: 0.04em;
}

/* 10. Header Magazine layout
/* ---------------------------------------------------------- */

.gh-header.is-magazine .gh-card-title {
    font-size: clamp(1.6rem, 2vw, 2.2rem) !important;
}

.gh-header.is-magazine .gh-card-link:first-child .gh-card-title {
    font-size: clamp(2.2rem, 3vw, 3.2rem) !important;
}

/* 11. Sidebar about block
/* ---------------------------------------------------------- */

.gh-about-title {
    font-family: var(--font-display) !important;
    color: var(--lh-black) !important;
}

.gh-about-description {
    font-family: var(--font-body) !important;
    font-weight: 300 !important;
    color: var(--lh-meta) !important;
}

/* 12. Search
/* ---------------------------------------------------------- */

.gh-search-input {
    font-family: var(--font-display) !important;
}

/* 13. Accent / links
/* ---------------------------------------------------------- */

a {
    color: var(--haiti-blue);
}

a:hover {
    color: var(--haiti-blue-dark);
}

.gh-content a {
    color: var(--haiti-blue) !important;
    text-decoration: underline;
    text-decoration-color: rgba(0, 32, 159, 0.3);
}

/* 14. Featured posts label
/* ---------------------------------------------------------- */

.gh-featured-label,
.gh-tag-label {
    font-family: var(--font-ui) !important;
    font-size: 9px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    background: var(--haiti-blue) !important;
    color: #fff !important;
    border-radius: 0 !important;
}

/* 15. Pagination
/* ---------------------------------------------------------- */

.gh-pagination a,
.gh-more a {
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: var(--haiti-blue) !important;
}

/* 16. CTA block
/* ---------------------------------------------------------- */

.gh-cta {
    border-top: 2px solid var(--haiti-blue) !important;
    border-bottom: 2px solid var(--haiti-blue) !important;
    background: var(--lh-bg-card) !important;
}

.gh-cta-title {
    font-family: var(--font-display) !important;
    color: var(--lh-black) !important;
}

/* 17. Mobile responsive
/* ---------------------------------------------------------- */

@media (max-width: 768px) {
    .lh-ticker-wrap { display: none; }
    .lh-breaking { padding: 6px 16px; font-size: 12px; }
    .lh-logo { font-size: 3.8rem !important; }
    .lh-tagline { font-size: 9px; }
    .lh-navigation .gh-navigation-actions { display: none; }
}

/* Logo image fix */
.lh-navigation .gh-navigation-brand {
    min-height: 80px;
}

.lh-navigation .gh-navigation-logo {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
}

.lh-navigation .gh-navigation-logo img {
    display: block !important;
    max-height: 50px !important;
    height: 50px !important;
    width: auto !important;
    max-width: 300px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Fix: override Ghost fixed height on navigation */
.lh-navigation.gh-navigation {
    height: auto !important;
}

/* Fix: stacked layout needs full width menu row */
.lh-navigation.is-stacked .gh-navigation-inner,
.lh-navigation .gh-navigation-inner {
    grid-auto-flow: row !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    padding: 0 var(--container-gap) !important;
}

/* The secondary blue bar — hide if it's a duplicate nav */
.gh-navigation ~ .gh-navigation {
    display: none;
}

/* Hide Ghost secondary navigation bar — nous utilisons notre propre ticker */
.gh-navigation-secondary,
nav.gh-navigation-secondary,
.gh-footer-menu ~ .gh-navigation {
    display: none !important;
}

/* Fix: the blue bar below nav is secondary nav rendered by source theme */
.gh-navigation + div[class*="gh-"],
.lh-navigation ~ .gh-navigation {
    display: none !important;
}

/* Restyle the secondary nav bar to match our design */
.gh-navigation .gh-navigation-menu ~ .gh-navigation-menu,
.gh-navigation-secondary-menu {
    background: var(--haiti-blue);
    width: 100%;
}

.gh-navigation .gh-navigation-menu ~ .gh-navigation-menu .nav li a {
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    padding: 8px 16px !important;
    border-bottom: none !important;
}

.gh-navigation .gh-navigation-menu ~ .gh-navigation-menu .nav li a:hover {
    color: rgba(255,255,255,0.7) !important;
    border-bottom: none !important;
}

/* Ticker option B — sujets chauds */
.lh-tick-link {
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 400;
}

.lh-tick-link:hover {
    text-decoration: underline !important;
    color: rgba(255,255,255,0.85) !important;
}

.lh-tick-sep {
    color: rgba(255,255,255,0.4);
    padding: 0 8px;
    flex-shrink: 0;
}

/* Subnav bar — secondary navigation styled */
.lh-subnav {
    width: 100%;
    background: var(--haiti-blue);
    padding: 0;
}

.lh-subnav .nav {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0 var(--container-gap);
    gap: 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.lh-subnav .nav::-webkit-scrollbar { display: none; }

.lh-subnav .nav li a {
    font-family: var(--font-ui) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.06em !important;
    color: rgba(255,255,255,0.9) !important;
    padding: 9px 16px !important;
    display: block !important;
    text-decoration: none !important;
    white-space: nowrap;
    border-bottom: none !important;
    text-transform: none !important;
}

.lh-subnav .nav li a:hover {
    color: #fff !important;
    background: rgba(255,255,255,0.1) !important;
    border-bottom: none !important;
}

/* Masquer l'ancienne barre fantôme lh-ticker */
.lh-ticker {
    display: none !important;
}

/* Fix subnav full width */
.lh-subnav {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    background: var(--haiti-blue) !important;
}

.lh-subnav .nav {
    max-width: var(--container-width) !important;
    margin: 0 auto !important;
    padding: 0 var(--container-gap) !important;
}

/* Ticker top bar — rouge haïtien */
.lh-ticker-wrap {
    background: #D21034 !important;
    border-bottom: none !important;
}

.lh-ticker-label {
    background: #fff !important;
    color: #D21034 !important;
}

.lh-tick {
    border-right-color: rgba(255,255,255,0.25) !important;
    color: rgba(255,255,255,0.9) !important;
}

.lh-tick strong {
    color: #fff !important;
}

.lh-tick-link {
    color: #fff !important;
}

.lh-tick-sep {
    color: rgba(255,255,255,0.4) !important;
}

.up { color: #90EE90 !important; }
.dn { color: #FFD0D0 !important; }

/* Force ticker text white on red background */
.lh-ticker-wrap * {
    color: #fff !important;
}

.lh-ticker-label {
    background: rgba(255,255,255,0.2) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.4) !important;
}

/* Restaurer ticker — fond sombre, données financières */
.lh-ticker-wrap {
    background: #1A1A1A !important;
    border-bottom: none !important;
}

.lh-ticker-label {
    background: var(--haiti-blue) !important;
    color: #fff !important;
    border: none !important;
}

.lh-ticker-wrap * {
    color: rgba(255,255,255,0.85) !important;
}

.lh-ticker-wrap strong {
    color: #fff !important;
    font-weight: 600 !important;
}

.lh-ticker-wrap .up { color: #6EE79A !important; }
.lh-ticker-wrap .dn { color: #FF9999 !important; }

.lh-tick {
    border-right: 0.5px solid rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.7) !important;
}

/* Option 3 — Label FLASH en rouge */
.lh-breaking-label {
    background: var(--haiti-red) !important;
    color: #fff !important;
}

/* Option 4 — Catégories articles en rouge */
.gh-card-tag {
    color: var(--haiti-red) !important;
}

.gh-article-tag,
.gh-card-tag,
.kg-tag,
.post-tag {
    color: var(--haiti-red) !important;
}

/* Alignement logo et tagline */
.lh-navigation .gh-navigation-brand {
    align-items: center !important;
}

.lh-navigation .gh-navigation-logo {
    display: block !important;
    text-align: center !important;
}

.lh-navigation .gh-navigation-logo img {
    margin: 0 auto !important;
}

.lh-tagline {
    text-align: center !important;
    width: 100% !important;
    letter-spacing: 0.18em !important;
}

/* Footer logo fix — taille correcte */
.lh-footer-logo img {
    max-height: 40px !important;
    width: auto !important;
    display: block !important;
    filter: brightness(0) invert(1) !important;
}

.lh-footer-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    padding: 16px 0 !important;
}

/* Social links footer */
.lh-social {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    padding: 20px 0 !important;
}

.lh-social a svg {
    width: 24px !important;
    height: 24px !important;
    fill: rgba(255,255,255,0.5) !important;
}

.lh-social a:hover svg {
    fill: #fff !important;
}

/* Responsive — mobile */
@media (max-width: 768px) {
    .lh-ticker-wrap { display: none !important; }
    .lh-breaking { font-size: 12px !important; padding: 6px 16px !important; }

    .lh-navigation .gh-navigation-brand {
        padding: 14px 0 8px !important;
    }

    .lh-logo {
        font-size: 3.2rem !important;
    }

    .lh-tagline { 
        font-size: 8px !important;
        letter-spacing: 0.12em !important;
    }

    /* [neutralise — gere par la section NAVIGATION MOBILE PROPRE] */

    .lh-navigation .gh-navigation-menu .nav li a {
        font-size: 10px !important;
        padding: 6px 10px !important;
    }

    .lh-navigation .gh-navigation-actions {
        display: none !important;
    }

    .lh-subnav {
        display: none !important;
    }

    .lh-footer-bar {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    .lh-copyright {
        font-size: 9px !important;
        text-align: center !important;
    }

    .gh-navigation-members {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .lh-logo { font-size: 2.8rem !important; }
    .lh-breaking { display: none !important; }
}

/* Footer logo — texte blanc sur fond sombre */
.lh-footer-logo {
    font-family: var(--font-display) !important;
    font-size: 2.2rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    letter-spacing: -0.5px !important;
}

.lh-footer-logo .lh-logo-l {
    font-style: italic !important;
    font-weight: 400 !important;
    color: #6AADFF !important;
}

/* Footer bar layout */
.lh-footer-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    padding: 20px 0 12px !important;
    border-top: 0.5px solid rgba(255,255,255,0.1) !important;
}

/* Footer nav links */
.lh-footer .gh-footer-menu a,
.gh-footer-menu a {
    color: rgba(255,255,255,0.5) !important;
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

.lh-footer .gh-footer-menu a:hover {
    color: #fff !important;
}

/* Copyright */
.lh-copyright {
    font-size: 11px !important;
    color: rgba(255,255,255,0.3) !important;
    font-family: var(--font-ui) !important;
}

/* Social icons */
.lh-social {
    display: flex !important;
    justify-content: center !important;
    padding: 16px 0 !important;
    gap: 20px !important;
    border-bottom: 0.5px solid rgba(255,255,255,0.08) !important;
}

.lh-social svg {
    fill: rgba(255,255,255,0.4) !important;
    width: 22px !important;
    height: 22px !important;
}

.lh-social a:hover svg {
    fill: #fff !important;
}

/* Responsive mobile */
@media (max-width: 768px) {
    .lh-ticker-wrap { display: none !important; }
    .lh-breaking { font-size: 12px !important; padding: 6px 16px !important; }
    .lh-logo { font-size: 3.2rem !important; }
    .lh-tagline { font-size: 8px !important; letter-spacing: 0.1em !important; }
    .lh-navigation .gh-navigation-actions { display: none !important; }
    .lh-subnav { display: none !important; }
    .lh-footer-bar { flex-direction: column !important; align-items: center !important; text-align: center !important; }
    .lh-copyright { text-align: center !important; }
}

@media (max-width: 480px) {
    .lh-logo { font-size: 2.6rem !important; }
    .lh-breaking { display: none !important; }
    .lh-navigation .gh-navigation-menu .nav li a { font-size: 10px !important; padding: 6px 8px !important; }
}

/* ============================================
   FIX MOBILE — overflow et marges
   ============================================ */

html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
}

.gh-viewport {
    overflow-x: hidden !important;
    width: 100% !important;
}

/* Fix subnav overflow sur mobile */
.lh-subnav {
    overflow-x: hidden !important;
}

/* Fix lh-ticker-wrap overflow */
.lh-ticker-wrap {
    overflow-x: hidden !important;
}

/* Fix navigation overflow */
.lh-navigation .gh-navigation-inner {
    overflow-x: hidden !important;
}

@media (max-width: 900px) {

    /* Masquer la barre bleue subnav */
    .lh-subnav { display: none !important; }

    /* Fix textes coupés à gauche */
    .gh-inner {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Navigation centrée */
    /* [neutralise — gere par la section NAVIGATION MOBILE PROPRE] */

    .lh-navigation .gh-navigation-menu .nav li a {
        font-size: 11px !important;
        padding: 7px 10px !important;
    }

    /* Articles en liste sur mobile */
    .gh-container.is-grid .gh-feed {
        display: flex !important;
        flex-direction: column !important;
    }

    /* Footer logo complet */
    .lh-footer-logo {
        font-size: 2rem !important;
    }

    /* Footer centré */
    .lh-footer-bar {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 10px !important;
    }

    .gh-footer-menu .nav {
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .lh-copyright {
        text-align: center !important;
        font-size: 10px !important;
    }

    /* Newsletter footer */
    .lh-footer-signup {
        text-align: center !important;
        padding: 32px 16px !important;
    }

    .gh-subscribe-form {
        flex-direction: column !important;
        gap: 10px !important;
    }
}

/* Burger menu visible sur mobile */
.gh-burger {
    display: flex !important;
    color: var(--lh-black) !important;
}

.gh-burger svg {
    color: var(--lh-black) !important;
    fill: var(--lh-black) !important;
    width: 24px !important;
    height: 24px !important;
}

@media (max-width: 900px) {

    /* Burger visible */
    .gh-burger {
        display: flex !important;
        position: absolute !important;
        right: 16px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 100 !important;
        background: none !important;
        border: none !important;
        padding: 8px !important;
        cursor: pointer !important;
    }

    .gh-burger svg,
    .gh-burger path,
    .gh-burger line,
    .gh-burger rect {
        stroke: #1A1A1A !important;
        fill: none !important;
    }

    /* Navigation brand relative pour positionner le burger */
    .lh-navigation .gh-navigation-brand {
        position: relative !important;
        padding-right: 50px !important;
    }

    /* Tagline sous le logo sur mobile */
    .lh-navigation .gh-navigation-brand {
        flex-direction: column !important;
        align-items: center !important;
    }

    .lh-tagline {
        display: block !important;
        text-align: center !important;
        width: 100% !important;
        margin-top: 2px !important;
    }

    /* Logo centré */
    .lh-navigation .gh-navigation-logo {
        text-align: center !important;
    }
}

/* Desktop — cacher le burger */
@media (min-width: 901px) {
    .gh-burger {
        display: none !important;
    }
}

/* Mobile — burger visible et noir */
@media (max-width: 900px) {
    .gh-burger {
        display: flex !important;
        position: absolute !important;
        right: 16px !important;
        top: 16px !important;
        z-index: 200 !important;
        background: none !important;
        border: none !important;
        padding: 8px !important;
        cursor: pointer !important;
        color: #1A1A1A !important;
    }

    .gh-burger svg {
        width: 28px !important;
        height: 28px !important;
        color: #1A1A1A !important;
    }

    .gh-burger svg path,
    .gh-burger svg line,
    .gh-burger svg rect,
    .gh-burger svg circle {
        stroke: #1A1A1A !important;
    }

    /* [neutralise — la barre horizontale est geree par la section NAVIGATION MOBILE PROPRE] */
}

/* ============================================
   FIX BURGER MENU — correction complète
   ============================================ */

/* Annuler nos overrides précédents qui cassaient le burger */

/* =====================================================================
   ============  NAVIGATION MOBILE — SECTION UNIQUE PROPRE  ============
   Remplace toutes les anciennes regles mobiles contradictoires.
   Comportement : en-tete compact (loupe / logo / burger) + barre de
   rubriques horizontale defilante + burger qui ouvre les actions.
   JS existant : bascule la classe .is-open sur #gh-navigation.
   ===================================================================== */
@media (max-width: 767px) {

    /* ---- Conteneur ---- */
    #gh-navigation:not(.is-open) { height: auto !important; }
    #gh-navigation:not(.is-open) .gh-navigation-inner {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
        height: auto !important;
        gap: 0 !important;
        row-gap: 0 !important;
        padding: 0 !important;
    }
    /* En ouvert : le inner s'etire pour permettre le scroll du panneau */
    #gh-navigation.is-open .gh-navigation-inner {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
        height: auto !important;
        min-height: 100% !important;
        overflow: visible !important;
        gap: 0 !important;
        row-gap: 0 !important;
        padding: 0 !important;
    }
    /* Brand en is-open : pas de marge sous le logo */
    #gh-navigation.is-open .gh-navigation-brand {
        min-height: 48px !important;
        margin: 0 !important;
        padding: 8px 12px !important;
        border-bottom: 1px solid var(--lh-border) !important;
    }

    /* ---- Ligne 1 : en-tete compact (loupe | logo | burger) ---- */
    #gh-navigation .gh-navigation-brand {
        display: grid !important;
        grid-template-columns: 48px 1fr 48px !important;
        align-items: center !important;
        justify-items: stretch !important;
        width: 100% !important;
        min-height: 48px !important;
        padding: 2px 12px !important;
        margin: 0 !important;
        gap: 0 !important;
        border-bottom: none !important;
        position: relative !important;
    }
    /* Loupe : colonne 1, a gauche */
    #gh-navigation .gh-navigation-brand .gh-search {
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        justify-self: start !important;
        align-self: center !important;
        height: 44px !important;
        width: 44px !important;
        order: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        color: var(--lh-black) !important;
    }
    #gh-navigation .gh-navigation-brand .gh-search svg {
        width: 24px !important;
        height: 24px !important;
        stroke: var(--lh-black) !important;
        color: var(--lh-black) !important;
    }
    #gh-navigation .gh-navigation-brand .gh-search svg path,
    #gh-navigation .gh-navigation-brand .gh-search svg line,
    #gh-navigation .gh-navigation-brand .gh-search svg circle {
        stroke: var(--lh-black) !important;
    }
    /* Logo : colonne 2, centre */
    #gh-navigation .gh-navigation-brand .gh-navigation-logo.lh-logo {
        grid-column: 2 !important;
        justify-self: center !important;
        text-align: center !important;
        margin: 0 !important;
        order: 0 !important;
    }
    #gh-navigation .lh-logo {
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: center !important;
        font-size: 1.9rem !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    #gh-navigation .lh-logo img { max-height: 30px !important; width: auto !important; }
    /* Burger : colonne 3, a droite */
    #gh-navigation .gh-navigation-brand .gh-burger {
        grid-column: 3 !important;
        grid-row: 1 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        transform: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        justify-self: end !important;
        align-self: center !important;
        height: 44px !important;
        width: 44px !important;
        order: 0 !important;
        margin: 0 !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        color: var(--lh-black) !important;
    }
    #gh-navigation .gh-burger svg { width: 28px !important; height: 28px !important; }
    #gh-navigation .gh-burger svg line,
    #gh-navigation .gh-burger svg path,
    #gh-navigation .gh-burger svg rect {
        stroke: var(--lh-black) !important;
        stroke-width: 2.2 !important;
    }
    /* Tagline masquee en mobile (place precieuse) */
    #gh-navigation .lh-tagline { display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }

    /* ---- Ligne 2 : barre de rubriques horizontale defilante ---- */
    /* Le menu principal est affiche en permanence, en ligne, defilable au doigt */
    #gh-navigation .gh-navigation-menu {
        display: block !important;
        position: static !important;
        visibility: visible !important;
        opacity: 1 !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        margin-top: 0 !important;
        padding: 0 !important;
        border-bottom: 2px solid var(--haiti-blue) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }
    #gh-navigation .gh-navigation-menu::-webkit-scrollbar { display: none !important; }
    #gh-navigation .gh-navigation-menu .nav {
        display: inline-flex !important;
        flex-direction: row !important;
        opacity: 1 !important;
        visibility: visible !important;
        position: static !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        width: max-content !important;
        margin: 0 !important;
        padding: 0 4px !important;
        list-style: none !important;
        gap: 0 !important;
    }
    #gh-navigation .gh-navigation-menu .nav li {
        flex: 0 0 auto !important;
        margin: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        transition: none !important;
        transition-delay: 0s !important;
    }
    #gh-navigation .gh-navigation-menu .nav li a {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        padding: 12px 13px !important;
        font-family: var(--font-ui) !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        color: var(--lh-black) !important;
        white-space: nowrap !important;
        border-bottom: 2px solid transparent !important;
    }
    #gh-navigation .gh-navigation-menu .nav li.nav-current a,
    #gh-navigation .gh-navigation-menu .nav li a:hover {
        color: var(--haiti-red) !important;
    }

    /* ---- Sous-nav (indicateurs) : masque, doublon du ticker ---- */
    #gh-navigation .lh-subnav,
    #gh-navigation.is-open .lh-subnav,
    .is-open#gh-navigation .lh-subnav { display: none !important; }

    /* ---- Actions (Se connecter / S'abonner) : cachees, ouvertes par le burger ---- */
    #gh-navigation .gh-navigation-actions {
        display: none !important;
    }
    #gh-navigation.is-open .gh-navigation-actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 14px !important;
        width: 100% !important;
        padding: 24px !important;
        margin: 0 !important;
        background: var(--lh-bg) !important;
        border-top: 1px solid var(--lh-border) !important;
        position: static !important;   /* annule le sticky bottom du theme -> suit la liste */
        bottom: auto !important;
    }
    /* Loupe en double dans les actions : masquee */
    #gh-navigation.is-open .gh-navigation-actions .gh-search { display: none !important; }
    #gh-navigation.is-open .gh-navigation-actions .lh-signin {
        font-size: 17px !important;
        color: var(--lh-black) !important;
        text-decoration: none !important;
    }
    #gh-navigation.is-open .gh-navigation-actions .gh-navigation-members {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }

    /* ============================================================
       MENU BURGER RICHE (is-open) — titre + description par rubrique
       facon The Economist. La barre horizontale (fermee) reste intacte.
       ============================================================ */

    /* CRITIQUE : restaurer le position:fixed natif du theme en is-open.
       .lh-navigation{position:relative!important} le cassait, empechant le scroll. */
    #gh-navigation.lh-navigation.is-open,
    .is-open#gh-navigation.lh-navigation {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        overflow-y: scroll !important;
        -webkit-overflow-scrolling: touch !important;
        z-index: 3999999 !important;
    }

    /* Quand le burger est ouvert : la barre devient un panneau vertical plein ecran */
    /* On laisse le theme Source gerer l'ouverture plein ecran nativement.
       On ne fait que styler le menu vertical, SANS toucher au positionnement. */
    /* Le theme Source gere deja le scroll natif (.is-open#gh-navigation:
       height:100%; overflow-y:scroll; position:fixed). On ne le contrarie pas.
       On s'assure juste qu'aucun enfant ne tronque la hauteur. */
    #gh-navigation.is-open .gh-navigation-menu {
        position: static !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        border-bottom: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    /* La liste passe en colonne verticale */
    #gh-navigation.is-open .gh-navigation-menu .nav {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        padding: 0 !important;
    }
    #gh-navigation.is-open .gh-navigation-menu .nav li {
        width: 100% !important;
        border-bottom: 1px solid var(--lh-border) !important;
    }
    /* Masquer tout li vide ou sans lien = separateur fantome */
    #gh-navigation.is-open .gh-navigation-menu .nav li:empty {
        display: none !important;
        border: none !important;
        height: 0 !important;
    }
    /* Le dernier li : pas de bordure orpheline */
    #gh-navigation.is-open .gh-navigation-menu .nav li:last-child {
        border-bottom: none !important;
    }
    /* Le menu ouvert ne doit pas avoir de hauteur excedentaire apres le dernier li */
    #gh-navigation.is-open .gh-navigation-menu .nav {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    /* Chaque lien : titre serif, plus de description en dessous via ::after */
    #gh-navigation.is-open .gh-navigation-menu .nav li a,
    #gh-navigation.is-open.has-accent-color .gh-navigation-menu .nav li a,
    .is-open#gh-navigation .gh-navigation-menu .nav li a {
        display: block !important;
        padding: 16px 24px 6px !important;
        font-family: var(--font-display) !important;
        font-size: 22px !important;
        font-weight: 600 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        color: #060D3B !important;          /* bleu nuit, FORCE contre has-accent-color #fff */
        border-bottom: none !important;
        white-space: normal !important;
    }
    /* La description : injectee via ::after, propre a chaque rubrique */
    #gh-navigation.is-open .gh-navigation-menu .nav li a::after {
        display: block !important;
        margin-top: 3px !important;
        padding-bottom: 12px !important;
        font-family: var(--font-ui) !important;
        font-size: 13px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        color: #6B6B6B !important;
        line-height: 1.4 !important;
        white-space: normal !important;
    }
    /* Descriptions par rubrique (mappees sur les classes Ghost) */
    #gh-navigation.is-open .nav-donnees a::after      { content: "Indicateurs et tableau de bord économique"; }
    #gh-navigation.is-open .nav-tech-ia a::after      { content: "Innovation et transformation numérique"; }
    #gh-navigation.is-open .nav-diaspora a::after     { content: "Investir au pays depuis l'étranger"; }
    #gh-navigation.is-open .nav-marches a::after      { content: "Bourse, devises et matières premières"; }
    #gh-navigation.is-open .nav-entreprises a::after  { content: "Acteurs et stratégies du privé haïtien"; }
    #gh-navigation.is-open .nav-economie a::after     { content: "Macroéconomie et politiques publiques"; }
    #gh-navigation.is-open .nav-finance a::after      { content: "Banque, crédit et financement"; }
    #gh-navigation.is-open .nav-opinions a::after     { content: "Analyses et tribunes"; }
    #gh-navigation.is-open .nav-opportunites a::after { content: "Où investir, secteur par secteur"; }
    /* Hover/courant : titre en rouge */
    #gh-navigation.is-open .gh-navigation-menu .nav li a:hover,
    #gh-navigation.is-open .gh-navigation-menu .nav li.nav-current a {
        color: var(--haiti-red) !important;
    }
    /* Les actions (Se connecter/S'abonner) viennent SOUS le menu, dans le meme panneau */
    /* actions : le theme Source les place deja en sticky bottom, on ne touche pas au position */
}

/* Desktop : la barre horizontale mobile n'a aucun effet (menu desktop normal) */


/* Fix espace vide — alignement colonnes grille */
.gh-header.is-magazine .gh-header-inner {
    align-items: start !important;
}

.gh-header.is-magazine .gh-header-inner > div {
    align-self: start !important;
}

.gh-header.is-magazine .gh-header-left,
.gh-header.is-magazine .gh-header-right {
    align-self: start !important;
}

.gh-container.is-grid .gh-feed {
    align-items: start !important;
}

/* ============================================
   FOOTER — amélioration complète
   ============================================ */

/* Réduire l'espace avant le footer */
.gh-footer.lh-footer {
    margin-top: 48px !important;
}

/* Section newsletter */
.lh-footer-signup {
    padding: 56px 0 !important;
    border-bottom: 0.5px solid rgba(255,255,255,0.1) !important;
    margin-bottom: 0 !important;
}

.lh-footer-signup-title {
    font-family: var(--font-display) !important;
    font-size: 3.2rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.5px !important;
}

.lh-footer-signup-sub {
    font-family: var(--font-body) !important;
    font-size: 1.6rem !important;
    font-weight: 300 !important;
    color: rgba(255,255,255,0.55) !important;
    margin-bottom: 28px !important;
    max-width: 480px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Formulaire newsletter */
.lh-footer .gh-form {
    max-width: 480px !important;
    background: rgba(255,255,255,0.08) !important;
    border-radius: 0 !important;
    border: 0.5px solid rgba(255,255,255,0.2) !important;
}

.lh-footer .gh-form-input {
    color: #fff !important;
    font-family: var(--font-ui) !important;
}

.lh-footer .gh-form .gh-button {
    background: var(--haiti-blue) !important;
    border-radius: 0 !important;
    font-family: var(--font-ui) !important;
    font-size: 1.2rem !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

/* Réseaux sociaux */
.lh-social {
    padding: 24px 0 !important;
    border-bottom: 0.5px solid rgba(255,255,255,0.08) !important;
}

/* Footer bar */
.lh-footer-bar {
    padding: 24px 0 !important;
    margin-bottom: 0 !important;
    border-top: none !important;
}

/* Logo footer */
.lh-footer-logo {
    font-size: 2.4rem !important;
}

/* Liens footer */
.gh-footer-menu .nav {
    gap: 6px 24px !important;
}

/* Supprimer espace vide en bas du footer */
.gh-footer-signup {
    margin-bottom: 0 !important;
}

.gh-footer-bar {
    margin-bottom: 0 !important;
}

/* Espace entre derniers articles et footer */
.gh-container:last-of-type {
    margin-bottom: 0 !important;
}

/* ============================================
   FOOTER — style Economist 4 colonnes
   ============================================ */

.lh-footer {
    margin-top: 48px !important;
    background: #111 !important;
    border-top: 2px solid var(--haiti-blue) !important;
}

/* Newsletter horizontale */
.lh-footer-newsletter {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 36px 0;
    border-bottom: 0.5px solid rgba(255,255,255,0.1);
}

.lh-footer-nl-left {
    flex: 1;
}

.lh-footer-nl-title {
    font-family: var(--font-display);
    font-size: 2.4rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 6px;
    letter-spacing: -0.5px;
}

.lh-footer-nl-sub {
    font-family: var(--font-body);
    font-size: 1.5rem;
    font-weight: 300;
    color: rgba(255,255,255,0.5);
    line-height: 1.5;
}

.lh-footer-nl-right {
    flex: 1;
    max-width: 440px;
}

.lh-footer .gh-form {
    background: rgba(255,255,255,0.08) !important;
    border: 0.5px solid rgba(255,255,255,0.2) !important;
    border-radius: 0 !important;
    height: 50px !important;
}

.lh-footer .gh-form-input {
    color: #fff !important;
    font-family: var(--font-ui) !important;
}

.lh-footer .gh-form-input::placeholder {
    color: rgba(255,255,255,0.4) !important;
}

.lh-footer .gh-form .gh-button {
    background: var(--haiti-blue) !important;
    border-radius: 0 !important;
    font-family: var(--font-ui) !important;
    font-size: 11px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    min-width: 110px !important;
}

/* 4 colonnes */
.lh-footer-cols {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    padding: 40px 0;
    border-bottom: 0.5px solid rgba(255,255,255,0.1);
}

.lh-footer-col-title {
    font-family: var(--font-ui);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.4);
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 0.5px solid rgba(255,255,255,0.1);
}

.lh-footer-col-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lh-footer-col-links a {
    font-family: var(--font-ui);
    font-size: 13px;
    color: rgba(255,255,255,0.6) !important;
    text-decoration: none !important;
    transition: color 0.15s;
}

.lh-footer-col-links a:hover {
    color: #fff !important;
}

/* Colonne sociale */
.lh-footer-social-col {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lh-footer-social-link {
    font-family: var(--font-ui);
    font-size: 13px;
    color: rgba(255,255,255,0.6) !important;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    gap: 8px;
}

.lh-footer-social-link svg {
    width: 16px;
    height: 16px;
    fill: rgba(255,255,255,0.6);
}

.lh-footer-social-link:hover {
    color: #fff !important;
}

.lh-footer-social-link:hover svg {
    fill: #fff;
}

/* Footer bottom */
.lh-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    gap: 20px;
    flex-wrap: wrap;
}

.lh-footer-logo {
    font-family: var(--font-display) !important;
    font-size: 2rem !important;
    font-weight: 600 !important;
    color: #fff !important;
}

.lh-footer-logo .lh-logo-l {
    font-style: italic;
    font-weight: 400;
    color: #6AADFF;
}

.lh-footer-legal {
    display: flex;
    gap: 20px;
}

.lh-footer-legal a {
    font-family: var(--font-ui);
    font-size: 11px;
    color: rgba(255,255,255,0.35) !important;
    text-decoration: none !important;
    letter-spacing: 0.04em;
}

.lh-footer-legal a:hover {
    color: rgba(255,255,255,0.7) !important;
}

.lh-copyright {
    font-family: var(--font-ui);
    font-size: 11px;
    color: rgba(255,255,255,0.25) !important;
    text-align: right;
}

@media (max-width: 900px) {
    .lh-footer-newsletter {
        flex-direction: column;
        gap: 20px;
    }
    .lh-footer-nl-right {
        max-width: 100%;
        width: 100%;
    }
    .lh-footer-cols {
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
    }
    .lh-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    .lh-copyright { text-align: left; }
}

/* Footer — textes plus blancs */
.lh-footer-col-links a {
    color: rgba(255,255,255,0.85) !important;
}

.lh-footer-col-links a:hover {
    color: #fff !important;
}

.lh-footer-social-link {
    color: rgba(255,255,255,0.85) !important;
}

.lh-footer-social-link svg {
    fill: rgba(255,255,255,0.85) !important;
}

.lh-footer-col-title {
    color: rgba(255,255,255,0.55) !important;
}

.lh-footer-legal a {
    color: rgba(255,255,255,0.6) !important;
}

.lh-copyright {
    color: rgba(255,255,255,0.45) !important;
}

/* ============================================
   STICKY HEADER — barre compacte au scroll
   ============================================ */

.lh-sticky-bar {
    position: fixed;
    top: -70px;
    left: 0;
    right: 0;
    height: 56px;
    background: #fff;
    border-bottom: 2px solid var(--haiti-blue);
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 var(--container-gap);
    transition: top 0.3s ease;
}

.lh-sticky-bar.is-visible {
    top: 0;
}

.lh-sticky-logo {
    font-family: var(--font-display);
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--lh-black);
    text-decoration: none;
    letter-spacing: -0.5px;
    line-height: 1;
}

.lh-sticky-logo em {
    font-style: italic;
    font-weight: 400;
    color: var(--haiti-blue);
}

.lh-sticky-nav {
    display: flex;
    gap: 0;
    align-items: center;
}

.lh-sticky-nav a {
    font-family: var(--font-ui);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--lh-black);
    padding: 0 14px;
    text-decoration: none;
    border-right: 0.5px solid var(--lh-border);
}

.lh-sticky-nav a:last-child {
    border-right: none;
}

.lh-sticky-nav a:hover {
    color: var(--haiti-red);
}

.lh-sticky-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}

.lh-sticky-subscribe {
    background: var(--haiti-blue);
    color: #fff !important;
    font-family: var(--font-ui);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 7px 16px;
    text-decoration: none !important;
    transition: background 0.15s;
}

.lh-sticky-subscribe:hover {
    background: var(--haiti-blue-dark) !important;
}

.lh-sticky-login {
    font-family: var(--font-ui);
    font-size: 11px;
    color: var(--lh-meta) !important;
    text-decoration: none !important;
    letter-spacing: 0.04em;
}

@media (max-width: 900px) {
    .lh-sticky-nav { display: none; }
}

@media (max-width: 767px) {
    .lh-sticky-bar { display: none; }
}

/* ============================================
   Ticker défilant — page d'accueil
   ============================================ */

.lh-ticker-wrap {
    overflow: hidden !important;
}

.lh-ticker-scroll {
    display: flex !important;
    width: max-content !important;
    animation: lh-ticker-scroll 40s linear infinite !important;
    white-space: nowrap !important;
}

.lh-ticker-scroll:hover {
    animation-play-state: paused !important;
}

@keyframes lh-ticker-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ---- NAV SECONDAIRE DANS LE BURGER MOBILE ---- */
.lh-burger-secondary {
    display: none; /* caché par défaut, visible seulement dans le burger ouvert */
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid rgba(6,13,59,0.12);
}
.lh-burger-secondary-head {
    font-family: var(--font-ui, 'DM Sans', sans-serif);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--lh-meta, #6B6B6B);
    padding: 0 18px 10px;
}
.lh-burger-secondary ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.lh-burger-secondary ul li a {
    display: block;
    padding: 10px 18px;
    font-family: var(--font-ui, 'DM Sans', sans-serif);
    font-size: 14px;
    font-weight: 500;
    color: var(--lh-black, #060D3B) !important;
    text-decoration: none;
    border-bottom: 1px solid rgba(6,13,59,0.07);
}
.lh-burger-secondary ul li a:hover {
    color: var(--haiti-blue, #00209F) !important;
}
.lh-burger-account {
    display: none;
    padding: 20px 18px 0;
}
.lh-burger-account .lh-btn-subscribe {
    width: 100%;
    text-align: center;
    display: block;
}

/* Afficher dans le burger ouvert uniquement */
#gh-navigation.is-open .lh-burger-secondary,
#gh-navigation.is-open .lh-burger-account {
    display: block;
}

/* Forcer couleur correcte liens nav secondaire burger (neutraliser has-accent-color) */
#gh-navigation.is-open .lh-burger-secondary ul li a,
#gh-navigation.is-open .lh-burger-secondary ul li a:visited,
#gh-navigation.is-open.has-accent-color .lh-burger-secondary ul li a,
#gh-navigation.is-open.has-accent-color .lh-burger-secondary ul li a:visited,
.is-open#gh-navigation .lh-burger-secondary ul li a {
    color: #060D3B !important;
    font-family: var(--font-ui, 'DM Sans', sans-serif) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}
#gh-navigation.is-open .lh-burger-secondary ul li a:hover,
#gh-navigation.is-open.has-accent-color .lh-burger-secondary ul li a:hover {
    color: var(--haiti-blue, #00209F) !important;
}
