/*
   Premium stabilization layer for home header/menu/hero.
   This file is loaded last to override legacy styles from main.css and brand-refresh.css.
*/

:root {
    --premium-ink-900: #071a32;
    --premium-ink-800: #0d2d57;
    --premium-ink-700: #164274;
    --premium-gold-500: #f4c66f;
    --premium-gold-400: #ffe7a1;
    --premium-red-700: #851027;
    --premium-red-600: #a21632;
    --premium-surface-0: #ffffff;
    --premium-surface-1: #f4f8ff;
    --premium-ring: rgba(16, 75, 132, 0.36);
    --premium-header-shadow: 0 10px 26px rgba(8, 27, 53, 0.1);
    --premium-hero-shadow: 0 22px 54px rgba(4, 18, 39, 0.24);
    --premium-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

body.ladha-brand-refresh .header,
body.page-home .header {
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(12, 44, 84, 0.14) !important;
    box-shadow: var(--premium-header-shadow) !important;
    backdrop-filter: blur(12px);
}

body.ladha-brand-refresh .header.is-compact,
body.page-home .header.is-compact {
    box-shadow: 0 14px 30px rgba(8, 27, 53, 0.14) !important;
}

body.ladha-brand-refresh .header .navbar .container,
body.page-home .header .navbar .container {
    position: relative;
    height: 78px !important;
    min-height: 78px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    align-items: center !important;
    gap: 0.9rem;
}

body.ladha-brand-refresh .header .logo,
body.page-home .header .logo {
    display: inline-flex;
    align-items: center;
    min-height: 100%;
}

body.ladha-brand-refresh .header .logo img,
body.page-home .header .logo img {
    height: 54px !important;
    width: auto;
}

body.ladha-brand-refresh .header .nav-menu,
body.page-home .header .nav-menu {
    display: flex;
    align-items: center;
    gap: 0.22rem;
    margin: 0;
    padding: 0;
}

body.ladha-brand-refresh .header .nav-menu > li,
body.page-home .header .nav-menu > li {
    position: relative;
    display: inline-flex;
    align-items: center;
}

body.ladha-brand-refresh .header .nav-menu > li > a,
body.page-home .header .nav-menu > li > a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    color: #13365f !important;
    font-size: clamp(0.84rem, 1.04vw, 0.93rem);
    font-weight: 600;
    border-radius: 999px;
    padding: 0.5rem 0.78rem;
    transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

body.ladha-brand-refresh .header .nav-menu > li > a::before,
body.page-home .header .nav-menu > li > a::before {
    display: none !important;
}

body.ladha-brand-refresh .header .nav-menu > li > a:hover,
body.ladha-brand-refresh .header .nav-menu > li > a:focus-visible,
body.page-home .header .nav-menu > li > a:hover,
body.page-home .header .nav-menu > li > a:focus-visible {
    background: var(--premium-surface-1);
    color: #0a568f !important;
    transform: translateY(-1px);
}

body.ladha-brand-refresh .header .dropdown-menu,
body.page-home .header .dropdown-menu {
    margin-top: 0.6rem;
    border: 1px solid rgba(17, 53, 91, 0.12);
    border-radius: 14px;
    box-shadow: 0 14px 28px rgba(6, 23, 45, 0.12);
}

body.ladha-brand-refresh .header .dropdown-menu li a,
body.page-home .header .dropdown-menu li a {
    border-radius: 0;
    color: #173b66 !important;
}

body.ladha-brand-refresh .header .dropdown-menu li a:hover,
body.page-home .header .dropdown-menu li a:hover {
    background: #f2f7ff;
    color: #0a5b99 !important;
}

/*
   Donation button hard reset to avoid conflicting legacy overlays.
   Requested behavior:
   - base: yellow button with blue text
   - hover/focus: dark red overlay with white text
*/
body.ladha-brand-refresh .header .btn-donation,
body.page-home .header .btn-donation {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 42px;
    border-radius: 999px !important;
    padding: 0.58rem 1.05rem !important;
    font-size: clamp(0.8rem, 0.95vw, 0.9rem);
    letter-spacing: 0.01em;
    font-weight: 700 !important;
    text-transform: uppercase;
    color: #0e325e !important;
    background-image: linear-gradient(135deg, var(--premium-gold-400) 0%, var(--premium-gold-500) 58%, #ffdf87 100%) !important;
    border: 1px solid rgba(12, 47, 91, 0.2) !important;
    box-shadow: 0 8px 18px rgba(8, 27, 53, 0.16) !important;
    transition: color 180ms ease, transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.ladha-brand-refresh .header .btn-donation::before,
body.ladha-brand-refresh .header .btn-donation::after,
body.page-home .header .btn-donation::before,
body.page-home .header .btn-donation::after {
    content: none !important;
    display: none !important;
}

body.ladha-brand-refresh .header .btn-donation:hover,
body.ladha-brand-refresh .header .btn-donation:focus-visible,
body.page-home .header .btn-donation:hover,
body.page-home .header .btn-donation:focus-visible {
    color: #ffffff !important;
    background-image: linear-gradient(135deg, var(--premium-red-700) 0%, var(--premium-red-600) 100%) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    box-shadow: 0 12px 24px rgba(133, 16, 39, 0.3) !important;
    transform: translateY(-1px);
}

body.ladha-brand-refresh .header .btn-donation:focus-visible,
body.page-home .header .btn-donation:focus-visible {
    outline: 2px solid var(--premium-ring);
    outline-offset: 2px;
}

/* Hero premium baseline */
body.page-home .hero {
    width: min(1320px, calc(100% - 1.5rem));
    margin: 0.8rem auto 1.1rem;
    border-radius: 28px;
    border: 1px solid rgba(158, 209, 255, 0.24) !important;
    overflow: hidden;
    box-shadow: var(--premium-hero-shadow);
    background:
        radial-gradient(74% 56% at 10% 0%, rgba(128, 197, 255, 0.23), rgba(128, 197, 255, 0) 63%),
        radial-gradient(64% 50% at 92% 16%, rgba(244, 198, 111, 0.2), rgba(244, 198, 111, 0) 68%),
        linear-gradient(160deg, #071c35 0%, #0f3564 54%, #1b4c84 100%) !important;
}

body.page-home .hero::before {
    content: '' !important;
    display: block !important;
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background:
        linear-gradient(180deg, rgba(5, 16, 34, 0.08), rgba(5, 16, 34, 0.18)),
        radial-gradient(circle at 20% 18%, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0) 38%);
}

body.page-home .hero::after {
    content: '' !important;
    display: block !important;
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(42% 34% at 86% 20%, rgba(249, 160, 132, 0.08), rgba(249, 160, 132, 0)),
        radial-gradient(48% 38% at 14% 84%, rgba(132, 198, 255, 0.12), rgba(132, 198, 255, 0));
}

body.page-home .hero .particle-canvas,
body.page-home .hero .hero-parallax-layer {
    display: block !important;
    pointer-events: none;
}

body.page-home .hero .particle-canvas {
    z-index: 1;
    opacity: 0.18;
}

body.page-home .hero .hero-parallax-layer {
    z-index: 1;
    opacity: 0.85;
}

body.page-home .hero-slider {
    position: relative;
    z-index: 2;
    height: clamp(540px, 69svh, 740px) !important;
}

body.page-home .hero-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center !important;
    justify-content: center !important;
    padding: clamp(1rem, 3vw, 2.2rem) clamp(1rem, 3vw, 2.3rem) clamp(3.1rem, 5.2vw, 4.4rem) !important;
    background: transparent !important;
    background-image: none !important;
}

body.page-home .hero-slide::before,
body.page-home .hero-slide::after,
body.page-home .hero-overlay,
body.page-home .hero-pager,
body.page-home .hero-pager-caption,
body.page-home .hero-badge,
body.page-home .visual-bg,
body.page-home .visual-circle,
body.page-home .visual-square,
body.page-home .visual-line {
    content: none !important;
    display: none !important;
}

body.page-home .hero-content,
body.page-home .hero-slide.slide-project .hero-content,
body.page-home .hero-slide.slide-join .hero-content {
    position: relative;
    z-index: 3;
    width: min(980px, calc(100% - 0.8rem)) !important;
    min-height: clamp(250px, 36svh, 360px) !important;
    margin: 0 auto !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.32rem;
    opacity: 1 !important;
    transform: none !important;
}

body.page-home .hero-kicker {
    margin: 0 auto 0.9rem !important;
    padding: 0.38rem 0.9rem;
    border-radius: 999px;
    border: 1px solid rgba(200, 229, 255, 0.48);
    background: rgba(7, 24, 47, 0.3);
    color: #d7ebff;
    font-size: 0.72rem;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    font-weight: 700;
}

body.page-home .hero h2.hero-title {
    display: block !important;
    position: static !important;
    left: auto !important;
    transform: none !important;
    background: none !important;
    -webkit-text-fill-color: #f8fbff !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
}

body.page-home .hero h2.hero-title::after {
    content: none !important;
    display: none !important;
}

body.page-home .hero-title,
body.page-home .hero-card-title,
body.page-home .hero-impact .hero-title,
body.page-home .slide-main .hero-title,
body.page-home .hero-slide.slide-project .hero-title,
body.page-home .hero-slide.slide-join .hero-title {
    max-width: 18ch !important;
    margin: 0 auto 0.95rem !important;
    color: #f8fbff !important;
    text-align: center !important;
    font-weight: 720 !important;
    font-size: clamp(1.95rem, 5.1vw, 3.9rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.015em !important;
    text-shadow: none !important;
    text-wrap: balance;
}

body.page-home .hero-slide.slide-main .hero-title {
    max-width: 17ch !important;
    font-size: clamp(2.05rem, 5.2vw, 4rem) !important;
    letter-spacing: -0.012em !important;
}

body.page-home .hero-subtitle,
body.page-home .hero-card-text,
body.page-home .hero-impact .hero-subtitle,
body.page-home .hero-slide.slide-project .hero-subtitle,
body.page-home .hero-slide.slide-join .hero-subtitle,
body.page-home .hero-slide.slide-main .hero-subtitle {
    max-width: 62ch !important;
    margin: 0 auto !important;
    color: #e7f2ff !important;
    text-align: center !important;
    font-size: clamp(1rem, 1.3vw, 1.17rem) !important;
    line-height: 1.62 !important;
    text-shadow: none !important;
}

/* CTA hard reset: remove legacy ripple overlays */
body.page-home .hero .hero-buttons .btn::before,
body.page-home .hero .hero-buttons .btn::after,
body.page-home .hero .hero-card-actions .btn::before,
body.page-home .hero .hero-card-actions .btn::after {
    content: none !important;
    display: none !important;
}

body.page-home .hero-buttons,
body.page-home .hero-card-actions,
body.page-home .hero-slide.slide-project .hero-buttons,
body.page-home .hero-slide.slide-join .hero-buttons {
    margin-top: 1.18rem !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.72rem !important;
}

body.page-home .hero-buttons .btn,
body.page-home .hero-card-actions .btn {
    min-height: 46px !important;
    padding: 0.7rem 1.2rem !important;
    border-radius: 999px !important;
    font-size: 0.93rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em;
    transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, color 180ms ease;
}

body.page-home .hero-buttons .btn-primary,
body.page-home .hero-card-actions .btn-primary {
    color: #071f3e !important;
    background: linear-gradient(135deg, #ffe7a1 0%, #f4c66f 58%, #ffd97d 100%) !important;
    border: 1px solid rgba(7, 31, 62, 0.22) !important;
    box-shadow: 0 9px 20px rgba(4, 25, 54, 0.22) !important;
}

body.page-home .hero-buttons .btn-primary:hover,
body.page-home .hero-buttons .btn-primary:focus-visible,
body.page-home .hero-card-actions .btn-primary:hover,
body.page-home .hero-card-actions .btn-primary:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(4, 25, 54, 0.28) !important;
    filter: saturate(1.04);
}

body.page-home .hero-buttons .btn-secondary,
body.page-home .hero-card-actions .btn-secondary {
    color: #ffffff !important;
    background: rgba(12, 43, 80, 0.52) !important;
    border: 1px solid rgba(214, 233, 255, 0.45) !important;
}

body.page-home .hero-buttons .btn-secondary:hover,
body.page-home .hero-buttons .btn-secondary:focus-visible,
body.page-home .hero-card-actions .btn-secondary:hover,
body.page-home .hero-card-actions .btn-secondary:focus-visible {
    transform: translateY(-2px);
    background: rgba(12, 43, 80, 0.7) !important;
}

body.page-home .hero .btn:focus-visible,
body.page-home .hero .slider-nav:focus-visible,
body.page-home .hero .slide-indicator:focus-visible {
    outline: 2px solid rgba(255, 226, 159, 0.92);
    outline-offset: 2px;
}

/* Keep classic left/right navigation controls visible */
body.page-home .hero .slider-nav {
    display: flex !important;
    position: absolute;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    border: 1px solid rgba(13, 45, 84, 0.24);
    background: rgba(255, 255, 255, 0.92);
    color: #103768;
    box-shadow: 0 8px 18px rgba(7, 28, 60, 0.2);
    z-index: 8;
}

body.page-home .hero .slider-nav:hover,
body.page-home .hero .slider-nav:focus-visible {
    background: #ffffff;
    color: #0a3c73;
    transform: translateY(-50%) scale(1.04) !important;
}

body.page-home .hero .prev-slide {
    left: 1rem !important;
    right: auto !important;
}

body.page-home .hero .next-slide {
    right: 1rem !important;
    left: auto !important;
}

body.page-home .hero .slide-indicators {
    display: flex !important;
    position: absolute;
    left: 50%;
    right: auto;
    bottom: 0.95rem;
    transform: translateX(-50%);
    gap: 0.45rem;
    padding: 0.34rem 0.42rem;
    border-radius: 999px;
    border: 1px solid rgba(188, 222, 255, 0.34);
    background: rgba(6, 20, 40, 0.44);
    z-index: 8;
}

body.page-home .hero .slide-indicator {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    border: 1px solid rgba(202, 233, 255, 0.48);
    background: rgba(188, 227, 255, 0.28);
}

body.page-home .hero .slide-indicator.active {
    width: 24px;
    height: 9px;
    background: linear-gradient(90deg, #9ed8ff, #f4c66f 70%);
}

@media (max-width: 1080px) {
    body.menu-open {
        overflow: hidden;
    }

    body.ladha-brand-refresh .header .navbar .container,
    body.page-home .header .navbar .container {
        height: 72px !important;
        min-height: 72px !important;
    }

    body.ladha-brand-refresh .header .logo img,
    body.page-home .header .logo img {
        height: 48px !important;
    }

    body.ladha-brand-refresh .header .menu-toggle,
    body.page-home .header .menu-toggle {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        border-radius: 12px;
        border: 1px solid rgba(16, 58, 106, 0.22);
        background: #f6f9ff;
    }

    body.ladha-brand-refresh .header .menu-toggle span,
    body.page-home .header .menu-toggle span {
        background: #164274;
    }

    body.ladha-brand-refresh .header .nav-menu,
    body.page-home .header .nav-menu {
        position: absolute;
        top: calc(100% + 0.5rem);
        left: 0.7rem;
        right: 0.7rem;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.3rem;
        padding: 0.7rem;
        border: 1px solid rgba(17, 54, 93, 0.14);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 14px 26px rgba(7, 21, 42, 0.14);
        transform: translateY(-8px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
        max-height: calc(100svh - 100px);
        overflow: auto;
        z-index: 30;
    }

    body.ladha-brand-refresh .header .nav-menu.active,
    body.page-home .header .nav-menu.active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    body.ladha-brand-refresh .header .nav-menu > li,
    body.page-home .header .nav-menu > li {
        width: 100%;
        display: flex;
    }

    body.ladha-brand-refresh .header .nav-menu > li > a,
    body.page-home .header .nav-menu > li > a,
    body.ladha-brand-refresh .header .btn-donation,
    body.page-home .header .btn-donation {
        width: 100%;
        justify-content: center;
    }

    body.ladha-brand-refresh .header .has-dropdown:hover .dropdown-menu,
    body.page-home .header .has-dropdown:hover .dropdown-menu {
        opacity: 0;
        visibility: hidden;
        transform: translateY(-8px);
    }

    body.ladha-brand-refresh .header .dropdown-menu,
    body.page-home .header .dropdown-menu {
        position: static;
        margin-top: 0.25rem;
        border-radius: 12px;
        border: 1px solid rgba(17, 54, 93, 0.12);
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        display: none;
    }

    body.ladha-brand-refresh .header .has-dropdown.active .dropdown-menu,
    body.page-home .header .has-dropdown.active .dropdown-menu {
        display: block;
    }

    body.page-home .hero-slider {
        height: clamp(520px, 67svh, 680px) !important;
    }

    body.page-home .hero .slider-nav {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 760px) {
    body.page-home .hero {
        width: min(100%, calc(100% - 1rem));
        margin: 0.55rem auto 0.85rem;
        border-radius: 20px;
    }

    body.page-home .hero-slide {
        padding: 0.95rem 0.85rem 3.8rem !important;
    }

    body.page-home .hero-content {
        width: min(100%, calc(100% - 0.4rem)) !important;
        min-height: auto !important;
    }

    body.page-home .hero-title,
    body.page-home .hero-slide.slide-main .hero-title {
        max-width: 100% !important;
        font-size: clamp(1.55rem, 7.2vw, 2.45rem) !important;
    }

    body.page-home .hero-subtitle,
    body.page-home .hero-slide.slide-main .hero-subtitle {
        font-size: 0.98rem !important;
    }

    body.page-home .hero .prev-slide {
        left: 0.55rem !important;
    }

    body.page-home .hero .next-slide {
        right: 0.55rem !important;
    }

    body.page-home .hero .slide-indicators {
        bottom: 0.72rem;
    }
}

/*
   Fallback lock: apply core premium hero behavior using .hero-home marker
   even if body.page-home is absent.
*/
body.ladha-brand-refresh .hero.hero-home {
    width: min(1320px, calc(100% - 1.5rem));
    margin: 0.8rem auto 1.1rem;
    border-radius: 28px;
    border: 1px solid rgba(158, 209, 255, 0.24) !important;
    overflow: hidden;
    box-shadow: var(--premium-hero-shadow);
    background:
        radial-gradient(74% 56% at 10% 0%, rgba(128, 197, 255, 0.23), rgba(128, 197, 255, 0) 63%),
        radial-gradient(64% 50% at 92% 16%, rgba(244, 198, 111, 0.2), rgba(244, 198, 111, 0) 68%),
        linear-gradient(160deg, #071c35 0%, #0f3564 54%, #1b4c84 100%) !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-slider {
    height: clamp(540px, 69svh, 740px) !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-slide {
    align-items: center !important;
    justify-content: center !important;
    padding: clamp(1rem, 3vw, 2.2rem) clamp(1rem, 3vw, 2.3rem) clamp(3.1rem, 5.2vw, 4.4rem) !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-content {
    width: min(980px, calc(100% - 0.8rem)) !important;
    min-height: clamp(250px, 36svh, 360px) !important;
    margin: 0 auto !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.32rem;
}

body.ladha-brand-refresh .hero.hero-home .hero-title,
body.ladha-brand-refresh .hero.hero-home .hero-card-title,
body.ladha-brand-refresh .hero.hero-home .hero-impact .hero-title {
    max-width: 18ch !important;
    margin: 0 auto 0.95rem !important;
    color: #f8fbff !important;
    text-align: center !important;
    font-size: clamp(1.95rem, 5.1vw, 3.9rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.015em !important;
    text-shadow: none !important;
}

body.ladha-brand-refresh .hero.hero-home .slide-main .hero-title {
    max-width: 17ch !important;
    font-size: clamp(2.05rem, 5.2vw, 4rem) !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-subtitle,
body.ladha-brand-refresh .hero.hero-home .hero-card-text,
body.ladha-brand-refresh .hero.hero-home .hero-impact .hero-subtitle {
    max-width: 62ch !important;
    margin: 0 auto !important;
    color: #e7f2ff !important;
    text-align: center !important;
    font-size: clamp(1rem, 1.3vw, 1.17rem) !important;
    line-height: 1.62 !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-buttons,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions {
    margin-top: 1.18rem !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0.72rem !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-buttons .btn,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions .btn {
    min-height: 46px !important;
    padding: 0.7rem 1.2rem !important;
    border-radius: 999px !important;
    font-size: 0.93rem !important;
    font-weight: 700 !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-buttons .btn::before,
body.ladha-brand-refresh .hero.hero-home .hero-buttons .btn::after,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions .btn::before,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions .btn::after {
    content: none !important;
    display: none !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-buttons .btn-primary,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions .btn-primary {
    color: #071f3e !important;
    background: linear-gradient(135deg, #ffe7a1 0%, #f4c66f 58%, #ffd97d 100%) !important;
    border: 1px solid rgba(7, 31, 62, 0.22) !important;
    box-shadow: 0 9px 20px rgba(4, 25, 54, 0.22) !important;
}

body.ladha-brand-refresh .hero.hero-home .hero-buttons .btn-secondary,
body.ladha-brand-refresh .hero.hero-home .hero-card-actions .btn-secondary {
    color: #ffffff !important;
    background: rgba(12, 43, 80, 0.52) !important;
    border: 1px solid rgba(214, 233, 255, 0.45) !important;
}

body.ladha-brand-refresh .hero.hero-home .slider-nav {
    display: flex !important;
    position: absolute;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    border: 1px solid rgba(13, 45, 84, 0.24);
    background: rgba(255, 255, 255, 0.92);
    color: #103768;
    z-index: 8;
}

body.ladha-brand-refresh .hero.hero-home .prev-slide {
    left: 1rem !important;
    right: auto !important;
}

body.ladha-brand-refresh .hero.hero-home .next-slide {
    right: 1rem !important;
    left: auto !important;
}

body.ladha-brand-refresh .hero.hero-home .slide-indicators {
    display: flex !important;
    position: absolute;
    left: 50%;
    right: auto;
    bottom: 0.95rem;
    transform: translateX(-50%);
    gap: 0.45rem;
    padding: 0.34rem 0.42rem;
    border-radius: 999px;
    border: 1px solid rgba(188, 222, 255, 0.34);
    background: rgba(6, 20, 40, 0.44);
    z-index: 8;
}

body.ladha-brand-refresh .hero.hero-home .slide-indicator {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    border: 1px solid rgba(202, 233, 255, 0.48);
    background: rgba(188, 227, 255, 0.28);
}

body.ladha-brand-refresh .hero.hero-home .slide-indicator.active {
    width: 24px;
    height: 9px;
    background: linear-gradient(90deg, #9ed8ff, #f4c66f 70%);
}


/* ====== RECONSTRUCTION FINALE (couche cascade, blocs finaux secteurs/transparence) ====== */

    body.ladha-brand-refresh .header .btn-donation,
    body.page-home .header .btn-donation,
    body.ladha-brand-refresh .header .btn-donation:hover,
    body.page-home .header .btn-donation:hover,
    body.ladha-brand-refresh .header .btn-donation:focus-visible,
    body.page-home .header .btn-donation:focus-visible,
    body.ladha-brand-refresh .header .btn-donation:active,
    body.page-home .header .btn-donation:active {
        color: #0e325e !important;
        background: transparent !important;
        background-image: linear-gradient(135deg, var(--premium-gold-400) 0%, var(--premium-gold-500) 58%, #ffdf87 100%) !important;
        border-color: rgba(12, 47, 91, 0.2) !important;
        box-shadow: 0 8px 18px rgba(8, 27, 53, 0.16) !important;
        filter: none !important;
        transform: none !important;
    }

    body.ladha-brand-refresh .header .nav-menu.active .btn-donation,
    body.page-home .header .nav-menu.active .btn-donation,
    body.ladha-brand-refresh .header .nav-menu.active .btn-donation:hover,
    body.page-home .header .nav-menu.active .btn-donation:hover,
    body.ladha-brand-refresh .header .nav-menu.active .btn-donation:focus-visible,
    body.page-home .header .nav-menu.active .btn-donation:focus-visible,
    body.ladha-brand-refresh .header .nav-menu.active .btn-donation:active,
    body.page-home .header .nav-menu.active .btn-donation:active {
        color: #ffffff !important;
        background: #c6283b !important;
        background-image: none !important;
        border-color: #c6283b !important;
        box-shadow: none !important;
        filter: none !important;
        transform: none !important;
    }

    body.ladha-brand-refresh .header .nav-menu.active .btn-donation::before,
    body.ladha-brand-refresh .header .nav-menu.active .btn-donation::after,
    body.page-home .header .nav-menu.active .btn-donation::before,
    body.page-home .header .nav-menu.active .btn-donation::after {
        content: none !important;
        display: none !important;
    }

    body.ladha-brand-refresh .header .nav-menu.active .btn-donation,
    body.ladha-brand-refresh .header .nav-menu.active .btn-donation *,
    body.page-home .header .nav-menu.active .btn-donation,
    body.page-home .header .nav-menu.active .btn-donation * {
        color: #ffffff !important;
    }

body.page-home .header .nav-menu.active li > a.btn-donation *,
body.page-home .header .nav-menu.active li > a.btn-donation * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Home visual enhancement: sector cards sit on hero edge without modifying hero itself. */
body.page-home .sectors-section {
    margin-top: -130px;
    padding-top: 0 !important;
    position: relative;
    z-index: 6;
    background: linear-gradient(180deg, transparent 0, #f8f9fa 170px, #ffffff 100%) !important;
}

body.page-home .sectors-section::before {
    display: none !important;
}

body.page-home .sectors-section .section-header-center {
    display: none;
}

body.page-home .sectors-section .sectors-tabs {
    margin-top: 0 !important;
    position: relative;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

body.page-home .sectors-section .sectors-tabs .tab-btn {
    min-height: 180px;
    padding: 34px 18px;
    border: none !important;
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(10, 26, 52, 0.25) !important;
    transform: none;
}

body.page-home .sectors-section .sectors-tabs .tab-btn i,
body.page-home .sectors-section .sectors-tabs .tab-btn h3 {
    color: #ffffff !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(1) {
    background: #4ea4df !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(2) {
    background: #ff7a45 !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(3) {
    background: #f0c93f !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(4) {
    background: #dc143c !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover,
body.page-home .sectors-section .sectors-tabs .tab-btn.active {
    transform: translateY(-5px);
    box-shadow: 0 16px 34px rgba(10, 26, 52, 0.3) !important;
}

body.page-home .sectors-section .sectors-content {
    margin-top: 36px;
}

@media (max-width: 992px) {
    body.page-home .sectors-section {
        margin-top: -90px;
        background: linear-gradient(180deg, transparent 0, #f8f9fa 120px, #ffffff 100%) !important;
    }

    body.page-home .sectors-section .sectors-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    body.page-home .sectors-section {
        margin-top: 0;
        padding-top: 20px !important;
        background: #f8f9fa !important;
    }

    body.page-home .sectors-section .sectors-tabs {
        grid-template-columns: 1fr;
    }
}

/* Home visual enhancement: institutional premium sectors section. */
body.page-home .sectors-section {
    --sector-active: #0072bc;
    --sector-active-rgb: 0, 114, 188;
    margin-top: -258px;
    padding-top: 0 !important;
    position: relative;
    z-index: 6;
    background: linear-gradient(180deg, transparent 0, #f2f6fa 158px, #ffffff 100%) !important;
}

body.page-home .sectors-section::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.85) 190px, #ffffff 100%),
        radial-gradient(52% 34% at 12% 20%, rgba(0, 114, 188, 0.1), rgba(0, 114, 188, 0));
}

body.page-home .sectors-section .container {
    position: relative;
    z-index: 2;
}

body.page-home .sectors-section .section-header-center {
    display: block;
    text-align: center;
    margin: 0 auto 20px;
    max-width: 920px;
}

body.page-home .sectors-section .section-header-center h2 {
    margin: 0;
    color: #0f2f4e;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-weight: 700;
    font-size: clamp(1.7rem, 2.55vw, 2.45rem);
    letter-spacing: -0.015em;
    line-height: 1.2;
}

body.page-home .sectors-section .section-header-center h2::after {
    content: '';
    display: block;
    width: 70px;
    height: 3px;
    margin: 14px auto 0;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(var(--sector-active-rgb), 0.25), rgba(var(--sector-active-rgb), 0.95));
}

body.page-home .sectors-section .sectors-tabs {
    margin-top: 0 !important;
    position: relative;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

body.page-home .sectors-section .sectors-tabs .tab-btn {
    --tab-color: #0072bc;
    --tab-color-rgb: 0, 114, 188;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 144px;
    padding: 16px 16px 14px;
    border: 1px solid rgba(15, 47, 78, 0.16) !important;
    border-top: 4px solid var(--tab-color) !important;
    border-radius: 14px;
    box-shadow: 0 8px 20px rgba(10, 22, 40, 0.08) !important;
    background: #ffffff !important;
    transform: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
    gap: 0.62rem;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

body.page-home .sectors-section .sectors-tabs .tab-btn::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0;
    background: linear-gradient(145deg, rgba(var(--tab-color-rgb), 0.08), rgba(var(--tab-color-rgb), 0.02));
    transition: opacity 180ms ease;
}

body.page-home .sectors-section .sectors-tabs .tab-btn::after {
    content: '';
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 9px;
    height: 3px;
    border-radius: 999px;
    background: rgba(var(--tab-color-rgb), 0.22);
    transform: scaleX(0.5);
    transform-origin: left center;
    opacity: 0;
    transition: transform 180ms ease, opacity 180ms ease;
}

body.page-home .sectors-section .sectors-tabs .tab-btn i,
body.page-home .sectors-section .sectors-tabs .tab-btn h3 {
    position: relative;
    z-index: 1;
}

body.page-home .sectors-section .sectors-tabs .tab-btn i {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: var(--tab-color) !important;
    background: rgba(var(--tab-color-rgb), 0.12);
    border: 1px solid rgba(var(--tab-color-rgb), 0.2);
}

body.page-home .sectors-section .sectors-tabs .tab-btn h3 {
    margin: 0;
    color: #13253e !important;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-size: clamp(0.98rem, 1.05vw, 1.1rem);
    font-weight: 650;
    line-height: 1.28;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible {
    transform: translateY(-3px);
    border-color: rgba(var(--tab-color-rgb), 0.46) !important;
    box-shadow: 0 14px 24px rgba(10, 22, 40, 0.12) !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover::before,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible::before {
    opacity: 1;
}

body.page-home .sectors-section .sectors-tabs .tab-btn.active {
    border-color: rgba(var(--tab-color-rgb), 0.68) !important;
    box-shadow: 0 0 0 2px rgba(var(--tab-color-rgb), 0.24), 0 16px 28px rgba(10, 22, 40, 0.14) !important;
    background: linear-gradient(165deg, #ffffff 0%, rgba(var(--tab-color-rgb), 0.1) 100%) !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn.active::before,
body.page-home .sectors-section .sectors-tabs .tab-btn.active::after {
    opacity: 1;
}

body.page-home .sectors-section .sectors-tabs .tab-btn.active::after {
    transform: scaleX(1);
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(1) {
    --tab-color: #0072bc;
    --tab-color-rgb: 0, 114, 188;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(2) {
    --tab-color: #2e7d32;
    --tab-color-rgb: 46, 125, 50;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(3) {
    --tab-color: #8a1f63;
    --tab-color-rgb: 138, 31, 99;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(4) {
    --tab-color: #c53030;
    --tab-color-rgb: 197, 48, 48;
}

body.page-home .sectors-section .sectors-content {
    margin-top: 16px;
    position: relative;
    background: #ffffff;
    border: 1px solid rgba(15, 47, 78, 0.14);
    border-radius: 20px;
    padding: clamp(1.05rem, 2vw, 1.8rem);
    box-shadow: 0 14px 28px rgba(10, 22, 40, 0.1), 0 3px 10px rgba(10, 22, 40, 0.06);
    overflow: hidden;
}

body.page-home .sectors-section .sectors-content::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, rgba(var(--sector-active-rgb), 0.95), rgba(var(--sector-active-rgb), 0.42));
}

body.page-home .sectors-section .sector-tab-content {
    display: none;
    opacity: 0;
    transform: translateY(6px);
}

body.page-home .sectors-section .sector-tab-content.active {
    display: block;
    opacity: 1;
    transform: translateY(0);
    animation: premiumSectorReveal 220ms ease;
}

body.page-home .sectors-section .sector-details {
    display: grid;
    gap: 0.95rem;
    text-align: left !important;
}

body.page-home .sectors-section .sector-icon-large {
    width: 62px;
    height: 62px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.55rem;
    color: var(--sector-active);
    background: rgba(var(--sector-active-rgb), 0.12);
    border: 1px solid rgba(var(--sector-active-rgb), 0.28);
    box-shadow: none;
    margin-bottom: 4px;
}

body.page-home .sectors-section .sector-description {
    margin: 0;
    color: #304a63;
    font-size: clamp(0.98rem, 1.02vw, 1.05rem);
    line-height: 1.72;
    text-align: left;
}

body.page-home .sectors-section .sector-subtitle {
    margin: 0.2rem 0 0;
    color: #12395c;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-size: 1.02rem;
    letter-spacing: 0.01em;
}

body.page-home .sectors-section .axes-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

body.page-home .sectors-section .axe-card-flip {
    width: 100% !important;
    min-width: 0 !important;
    height: auto;
    perspective: none;
    cursor: default;
    outline: none;
}

body.page-home .sectors-section .axe-card-inner {
    position: static;
    width: 100%;
    height: auto;
    transform: none !important;
}

body.page-home .sectors-section .axe-card-front {
    display: none !important;
}

body.page-home .sectors-section .axe-card-back {
    position: relative;
    inset: auto;
    transform: none;
    border-radius: 14px;
    border: 1px solid rgba(15, 47, 78, 0.14);
    box-shadow: 0 7px 18px rgba(10, 22, 40, 0.08);
    padding: 16px;
    min-height: 174px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.62rem;
    background: linear-gradient(165deg, #ffffff 0%, #f8fbfe 100%);
}

body.page-home .sectors-section .axe-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sector-active);
    background: rgba(var(--sector-active-rgb), 0.11);
    border: 1px solid rgba(var(--sector-active-rgb), 0.25);
    box-shadow: none;
}

body.page-home .sectors-section .axe-card-back h5 {
    margin: 0;
    color: #1d3854;
    font-size: 0.98rem;
    line-height: 1.35;
}

body.page-home .sectors-section .axe-card-back p {
    margin: 0;
    color: #3a526b;
    font-size: 0.92rem;
    line-height: 1.58;
    opacity: 1;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-back {
    transform: translateY(-2px);
    border-color: rgba(var(--sector-active-rgb), 0.38);
    box-shadow: 0 10px 20px rgba(10, 22, 40, 0.1);
}

body.page-home .sectors-section .sector-ctas {
    margin-top: 0.35rem;
    padding-top: 0.8rem;
    border-top: 1px solid rgba(15, 47, 78, 0.14);
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

body.page-home .sectors-section .sector-ctas .btn {
    min-height: 44px;
    border-radius: 999px;
    padding: 0.62rem 1rem;
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

body.page-home .sectors-section .sector-ctas .btn-primary {
    color: #ffffff;
    background: linear-gradient(145deg, rgba(var(--sector-active-rgb), 0.95) 0%, rgba(var(--sector-active-rgb), 0.82) 100%);
    border: 1px solid rgba(var(--sector-active-rgb), 0.82);
    box-shadow: 0 7px 18px rgba(var(--sector-active-rgb), 0.28);
}

body.page-home .sectors-section .sector-ctas .btn-outline {
    color: #1b3f62;
    background: #ffffff;
    border: 1px solid rgba(27, 63, 98, 0.28);
}

body.page-home .sectors-section .sector-ctas .btn-primary:hover,
body.page-home .sectors-section .sector-ctas .btn-primary:focus-visible,
body.page-home .sectors-section .sector-ctas .btn-outline:hover,
body.page-home .sectors-section .sector-ctas .btn-outline:focus-visible {
    transform: translateY(-1px);
}

body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible,
body.page-home .sectors-section .sector-ctas .btn:focus-visible {
    outline: 2px solid rgba(15, 58, 97, 0.62);
    outline-offset: 2px;
}

body.page-home .sectors-section .section-header-center h2 {
    margin: 0;
    color: #0f2f4e !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    -webkit-text-fill-color: #0f2f4e !important;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-weight: 700;
    font-size: clamp(1.7rem, 2.55vw, 2.45rem);
    letter-spacing: -0.015em;
    line-height: 1.2;

body.page-home .sectors-section .sector-details {
    display: grid;
    gap: 0.95rem;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
}

body.page-home .sectors-section .sector-icon-large {
    width: 62px;

    color: var(--sector-active);
    background: rgba(var(--sector-active-rgb), 0.12);
    border: 1px solid rgba(var(--sector-active-rgb), 0.28);
    transform: none !important;
    box-shadow: none;
    margin-bottom: 4px;
}

body.page-home .sectors-section .sector-icon-large i {
    width: auto !important;
    height: auto !important;
    font-size: 1.5rem !important;
    line-height: 1 !important;
    color: var(--sector-active) !important;
}

body.page-home .sectors-section .sector-description {
    margin: 0;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    color: #304a63;
    font-size: clamp(0.98rem, 1.02vw, 1.05rem);
    line-height: 1.72;
    text-align: left;
}

body.page-home .sectors-section .sector-subtitle {
    margin: 0.2rem 0 0;
    width: auto !important;
    max-width: none !important;
    text-align: left !important;
    color: #12395c;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-size: 1.02rem;
    letter-spacing: 0.01em;
}

    color: var(--sector-active);
    background: rgba(var(--sector-active-rgb), 0.11);
    border: 1px solid rgba(var(--sector-active-rgb), 0.25);
    box-shadow: none !important;
    transform: none !important;
}

body.page-home .sectors-section .axe-icon i {
    color: var(--sector-active) !important;
    font-size: 1rem !important;
    line-height: 1 !important;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-icon,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-icon {
    box-shadow: none !important;
    transform: none !important;
}

body.page-home .sectors-section .sector-icon-large i {
    width: auto !important;
    height: auto !important;
    font-size: 1.5rem !important;
    line-height: 1 !important;
    color: var(--sector-active) !important;
    background: none !important;
    -webkit-text-fill-color: var(--sector-active) !important;
    -webkit-background-clip: border-box !important;
}

body.page-home .sectors-section .section-header-center {
    display: none !important;
    text-align: center;
    margin: 0 auto 20px;
    max-width: 920px;
}

body.page-home .sectors-section .sectors-tabs {
    margin-top: 0 !important;
    position: relative;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

body.page-home .sectors-section .sectors-tabs .tab-btn h3 {
    margin: 0;
    color: var(--tab-color) !important;
    font-family: 'Bricolage Grotesque', 'Outfit', sans-serif;
    font-size: clamp(0.98rem, 1.05vw, 1.1rem);
    font-weight: 650;
    line-height: 1.28;
    transition: color 180ms ease;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover h3,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible h3,
body.page-home .sectors-section .sectors-tabs .tab-btn.active h3 {
    color: #111827 !important;
}

body.page-home .sectors-section .axes-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

body.page-home .sectors-section .axe-card-flip {
    width: 100% !important;
    min-width: 0 !important;
    height: 206px;
    position: relative;
    perspective: none;
    cursor: pointer;
    outline: none;
}

body.page-home .sectors-section .axe-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transform: none !important;
    isolation: isolate;
}

body.page-home .sectors-section .axe-card-inner::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 14px;
    background: linear-gradient(160deg, rgba(var(--sector-active-rgb), 0.16), rgba(var(--sector-active-rgb), 0.08));
    opacity: 0;
    transition: opacity 320ms cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 0;
}

body.page-home .sectors-section .axe-card-front,
body.page-home .sectors-section .axe-card-back {
    position: absolute;
    inset: 0;
    border-radius: 14px;
    border: 1px solid rgba(15, 47, 78, 0.14);
    box-shadow: 0 7px 18px rgba(10, 22, 40, 0.08);
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.62rem;
    transition: opacity 320ms cubic-bezier(0.22, 1, 0.36, 1), transform 320ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 240ms ease, border-color 240ms ease;
    z-index: 1;
}

body.page-home .sectors-section .axe-card-front {
    opacity: 1;
    transform: translateY(0);
    background: #ffffff;
}

body.page-home .sectors-section .axe-card-back {
    opacity: 0;
    transform: translateY(8px);
    pointer-events: none;
    background: linear-gradient(165deg, #ffffff 0%, rgba(var(--sector-active-rgb), 0.08) 100%);
}

body.page-home .sectors-section .axe-card-back h5 {
    display: none !important;
}

body.page-home .sectors-section .axe-card-front h5 {
    margin: 0;
    color: #1d3854;
    font-size: 0.98rem;
    line-height: 1.35;
}

body.page-home .sectors-section .axe-card-back p {
    margin: 0;
    color: #3a526b;
    font-size: 0.92rem;
    line-height: 1.58;
    opacity: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-inner::before,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-inner::before,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-inner::before {
    opacity: 1;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-front,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-front,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-front {
    opacity: 0;
    transform: translateY(-8px);
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-back,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-back,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-back {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    border-color: rgba(var(--sector-active-rgb), 0.38);
    box-shadow: 0 12px 24px rgba(10, 22, 40, 0.12);
}

body.page-home .sectors-section .axe-card-front {
    opacity: 1 !important;
    transform: translateY(0) !important;
    background: #ffffff !important;
}

body.page-home .sectors-section .axe-card-back {
    opacity: 0 !important;
    transform: translateY(8px) !important;
    pointer-events: none;
    background: linear-gradient(165deg, #ffffff 0%, rgba(var(--sector-active-rgb), 0.08) 100%) !important;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-inner::before,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-inner::before,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-inner::before {
    opacity: 1 !important;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-front,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-front,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-front {
    opacity: 0 !important;
    transform: translateY(-8px) !important;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-back,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-back,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-back {
    opacity: 1 !important;
    pointer-events: auto;
    transform: translateY(0) !important;
    border-color: rgba(var(--sector-active-rgb), 0.38);
    box-shadow: 0 12px 24px rgba(10, 22, 40, 0.12);
}

body.page-home .sectors-section .sectors-tabs {
    margin-top: 0 !important;
    position: relative;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

    min-height: 162px;
    padding: 18px 16px 16px;
    width: 100%;
    max-width: 292px;
    justify-self: center;
    border: 1px solid rgba(15, 47, 78, 0.16) !important;

body.page-home .sectors-section .axes-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    justify-items: center;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

body.page-home .sectors-section .axe-card-flip {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 372px;
    height: 226px;
    justify-self: center;
    position: relative;
    perspective: none;
    cursor: pointer;
    outline: none;
}

    padding: 18px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;

/* HOME TRANSPARENCY SMALL DOT FIX START */
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-text::before,
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-text::after,
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-title::before,
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-title::after,
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-subtitle::before,
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-subtitle::after {
    content: none !important;
    display: none !important;
}
/* HOME TRANSPARENCY SMALL DOT FIX END */

/* HOME TRANSPARENCY SMALL DOT FIX END */

/* HOME TRANSPARENCY INNER PILL REMOVAL START */
body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-text {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}
/* HOME TRANSPARENCY INNER PILL REMOVAL END */

body.page-home main .sectors-section ~ .transparency-section .credentials-card .credential-badge .badge-text {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}
/* HOME TRANSPARENCY INNER PILL REMOVAL END */

/* HOME SCROLL FLUIDITY TRANSIENT MODE START */
body.page-home.is-scrolling .partners-scroll-content,
body.page-home.is-scrolling .top-bar::before {
    animation-play-state: paused !important;
}

body.page-home.is-scrolling main :is(
    .carousel-3d-item,
    .carousel-card,
    .sector-tab-content,
    .sectors-tabs .tab-btn,
    .axe-card-front,
    .axe-card-back,
    .project-card,
    .news-card,
    .pillar,
    .animate-on-scroll,
    [data-reveal]
) {
    transition-duration: 0ms !important;
}
/* HOME SCROLL FLUIDITY TRANSIENT MODE END */



/* ====== PASSE DE NETTOYAGE POST-RECONSTRUCTION (réparation vues cassées) ====== */
/* 1. Masquer le titre de section (demande utilisateur du 3 juin: pas de titre) */
body.page-home .sectors-section .section-header-center,
body.page-home .sectors-section .section-header,
body.page-home .sectors-section > .container > h2,
body.page-home .sectors-section .section-header-center h2 {
    display: none !important;
}

/* 2. Onglet actif lisible: remplissage couleur secteur + texte/icône blancs */
body.page-home .sectors-section .sectors-tabs .tab-btn.active {
    background: rgb(var(--tab-color-rgb)) !important;
    background-image: none !important;
    border-color: rgb(var(--tab-color-rgb)) !important;
}
body.page-home .sectors-section .sectors-tabs .tab-btn.active h3,
body.page-home .sectors-section .sectors-tabs .tab-btn.active i,
body.page-home .sectors-section .sectors-tabs .tab-btn.active .tab-icon,
body.page-home .sectors-section .sectors-tabs .tab-btn.active .tab-icon i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* 3. Sous-titre 'Axes stratégiques' contrasté */
body.page-home .sectors-section .sector-subtitle {
    color: #0f2f4e !important;
    opacity: 1 !important;
}

/* 4. Correctif final: base plus sure + overlap profond reserve aux grands desktops */
body.page-home .sectors-section {
    margin-top: -130px !important;
}

@media (min-width: 1200px) {
    body.page-home .sectors-section {
        margin-top: -258px !important;
    }
}

@media (max-width: 768px) {
    body.page-home .sectors-section {
        margin-top: 0 !important;
        padding-top: 20px !important;
    }
}

/* =====================================================================
   LAD'HA — HOME : SCHEMA SECTIONS CLAIRES PREMIUM
   Chaque section possede son propre fond clair harmonieux (rythme visuel),
   texte fonce lisible, 2 bandes de marque (stats / rejoindre) en bleu.
   Sections pleine largeur + container responsive. Cartes blanches restaurees.
   (Remplace l'ancien schema "canvas sombre + cartes glass".)
   ===================================================================== */
:root {
    --ink: #13294b;
    --ink-soft: #46597a;
    --brand-blue: #0072bc;
    --brand-blue-d: #024a7d;
    --accent-gold: #f4c66f;
    --accent-red: #c0392b;
    --sec-white: #ffffff;
    --sec-mist: #f5f9fe;
    --sec-cloud: #eaf2fb;
    --sec-warm: #fbf8f3;
    --panel-border: #e4edf8;
    --card-shadow: 0 18px 44px rgba(16, 40, 78, 0.10);
    --card-radius: 20px;
}

/* 1) CANVAS GLOBAL — clair (aucune bande sombre derriere les sections) */
html,
body {
    background-color: #ffffff;
}

body.page-home,
body.ladha-brand-refresh.page-home {
    background-color: #ffffff !important;
    background-image: linear-gradient(180deg, #ffffff 0%, #f5f9fe 100%) !important;
    background-attachment: fixed !important;
    background-repeat: no-repeat !important;
    overflow-x: hidden !important;
    color: var(--ink);
}

body.page-home #main-content {
    background: transparent !important;
    overflow-x: clip !important;
}

/* 2) SECTIONS pleine largeur + container responsive centre */
body.page-home #main-content > section {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

body.page-home #main-content > section > .container {
    max-width: min(1280px, 100% - 3rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.page-home #main-content > section:not(.hero) {
    padding-top: clamp(2.6rem, 5vw, 4.6rem) !important;
    padding-bottom: clamp(2.6rem, 5vw, 4.6rem) !important;
}

/* 3) FONDS PAR SECTION — palette claire alternee + 2 bandes de marque */
body.page-home .vision-section {
    background: var(--sec-mist) !important;
}

body.page-home .approach-section {
    background: var(--sec-white) !important;
}

body.page-home .projects-section {
    background: var(--sec-cloud) !important;
}

body.page-home .impact-section {
    background: var(--sec-warm) !important;
}

body.page-home .transparency-section {
    background: var(--sec-mist) !important;
}

body.page-home .partners-section {
    background: var(--sec-white) !important;
}

body.page-home .news-section-white,
body.page-home #actualites {
    background: var(--sec-cloud) !important;
}

/* Stats — bandeau clair distinct (cartes blanches + chiffres rouges) */
body.page-home .stats-section {
    background: linear-gradient(135deg, #eaf3fc 0%, #f5f9fe 100%) !important;
}

/* Section Rejoindre — fond clair (cartes blanches lisibles) */
body.page-home .join-section {
    background: linear-gradient(135deg, #eef5fd 0%, #e6f0fb 100%) !important;
}

/* 4) TEXTE — sections claires : titres fonces, paragraphes adoucis */
body.page-home .vision-section :where(h1, h2, h3, h4, h5),
body.page-home .approach-section :where(h1, h2, h3, h4, h5),
body.page-home .projects-section :where(h1, h2, h3, h4, h5),
body.page-home .impact-section :where(h1, h2, h3, h4, h5),
body.page-home .transparency-section :where(h1, h2, h3, h4, h5),
body.page-home .partners-section :where(h1, h2, h3, h4, h5),
body.page-home .news-section-white :where(h1, h2, h3, h4, h5),
body.page-home #actualites :where(h1, h2, h3, h4, h5),
body.page-home .sectors-section :where(h1, h2, h3, h4, h5),
body.page-home .join-section :where(h1, h2, h3, h4, h5) {
    color: var(--ink) !important;
    -webkit-text-fill-color: var(--ink) !important;
}

body.page-home .vision-section > .container > p,
body.page-home .approach-section > .container > p,
body.page-home .projects-section > .container > p,
body.page-home .impact-section > .container > p,
body.page-home .transparency-section > .container > p,
body.page-home .partners-section > .container > p,
body.page-home .news-section-white > .container > p,
body.page-home #actualites > .container > p,
body.page-home .sectors-section > .container > p,
body.page-home .join-section > .container > p {
    color: var(--ink-soft) !important;
}

/* 5) STATS — bandeau clair : titres + libelles fonces, chiffres rouges conserves
   (.stat-number garde son degrade rouge, non cible ici) */
body.page-home .stats-section :where(h1, h2, h3, h4, h5),
body.page-home .stats-section :where(.stat-label, p, span, li) {
    color: var(--ink) !important;
    -webkit-text-fill-color: var(--ink) !important;
}

/* 6) CARTES BLANCHES restaurees (texte fonce, ombre premium) */
body.page-home .impact-section .story-card,
body.page-home .transparency-section .allocation-card,
body.page-home .transparency-section .credentials-card,
body.page-home .transparency-section .credential-card,
body.page-home .news-section-white .news-card,
body.page-home #actualites .news-card,
body.page-home .approach-section .axe-card-front,
body.page-home .approach-section .axe-card-back {
    background: #ffffff !important;
    border: 1px solid var(--panel-border) !important;
    box-shadow: var(--card-shadow) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

body.page-home .impact-section .story-card :where(h1, h2, h3, h4, h5),
body.page-home .transparency-section .allocation-card :where(h1, h2, h3, h4, h5),
body.page-home .transparency-section .credentials-card :where(h1, h2, h3, h4, h5),
body.page-home #actualites .news-card :where(h1, h2, h3, h4, h5),
body.page-home .approach-section .axe-card-front :where(h1, h2, h3, h4, h5),
body.page-home .approach-section .axe-card-back :where(h1, h2, h3, h4, h5) {
    color: var(--ink) !important;
    -webkit-text-fill-color: var(--ink) !important;
}

body.page-home .impact-section .story-card :where(p, span, li),
body.page-home .transparency-section .allocation-card :where(p, span, li),
body.page-home .transparency-section .credentials-card :where(p, span, li),
body.page-home #actualites .news-card :where(p, span, li),
body.page-home .approach-section .axe-card-front :where(p, span, li),
body.page-home .approach-section .axe-card-back :where(p, span, li),
body.page-home .join-section .join-card :where(p, span, li) {
    color: var(--ink-soft) !important;
}

/* 6-bis) PILIERS VISION — cartes blanches a texte fonce */
body.page-home .vision-section .vision-pillars .pillar :where(h1, h2, h3, h4, h5) {
    color: var(--ink) !important;
    -webkit-text-fill-color: var(--ink) !important;
}

body.page-home .vision-section .vision-pillars .pillar :where(p, span, li) {
    color: var(--ink-soft) !important;
    -webkit-text-fill-color: var(--ink-soft) !important;
}

body.page-home .vision-section .vision-pillars .pillar a:not(.btn) {
    color: var(--brand-blue) !important;
    -webkit-text-fill-color: var(--brand-blue) !important;
}

/* 7) NOS SECTEURS — panneau clair pont juste apres le hero */
body.page-home .sectors-section {
    background: linear-gradient(180deg, #ffffff 0%, var(--sec-mist) 100%) !important;
    margin-top: -90px !important;
    position: relative;
    z-index: 6;
}

body.page-home .sectors-section > .container {
    background: #ffffff !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 26px !important;
    box-shadow: 0 30px 70px rgba(8, 28, 60, 0.18) !important;
    padding: clamp(2rem, 3.4vw, 3.2rem) clamp(1.4rem, 2.6vw, 2.4rem) !important;
}

/* Liaison douce hero (sombre) -> secteurs (clair) */
body.page-home .hero.hero-home::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 160px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(6, 24, 47, 0) 0%, rgba(6, 24, 47, 0.35) 65%, rgba(6, 24, 47, 0.62) 100%);
    z-index: 2;
}

@media (min-width: 1200px) {
    body.page-home .sectors-section {
        margin-top: -120px !important;
    }
}

@media (max-width: 992px) {
    body.page-home .sectors-section {
        margin-top: -60px !important;
    }
}

@media (max-width: 768px) {
    body.page-home .sectors-section {
        margin-top: -34px !important;
        padding-top: 0 !important;
    }

    body.page-home #main-content > section > .container {
        max-width: calc(100% - 1.4rem) !important;
    }
}

/* 8) VISIBILITE — neutralise les etats caches par timing JS */
body.page-home .animate-on-scroll,
body.page-home [data-reveal] {
    opacity: 1 !important;
    transform: none !important;
}

/* Progressive enhancement onglets secteurs */
body.page-home .sectors-section .sector-tab-content {
    display: block;
}

body.page-home.js .sectors-section .sector-tab-content {
    display: none;
}

body.page-home.js .sectors-section .sector-tab-content.active {
    display: block;
}

/* 9) HERO full-bleed (aucun encadrement) */
body.page-home .hero.hero-home {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    border-radius: 0 !important;
    position: relative;
}

body.page-home .hero.hero-home .hero-slider {
    min-height: clamp(540px, 70svh, 720px) !important;
    height: clamp(540px, 70svh, 720px) !important;
}


/* =====================================================================
   LAD'HA — SECTEURS & HERO : REFONTE FINALE AUTORITAIRE (9 juin)
   Resout: (1) espace hero/menu, (2) onglets colores par defaut + inversion
   au survol/actif + contour couleur secteur, (3) contenu direct sans double
   container, (4) cartes axes visibles par defaut.
   Place en fin de fichier => gagne la cascade sur tous les blocs precedents.
   ===================================================================== */

/* (1) HERO — supprime l'espace entre le menu et les slides */
body.page-home .hero.hero-home {
    padding-top: 0 !important;
}

/* (2) ONGLETS SECTEURS — remplis de leur couleur par defaut, texte blanc */
body.page-home .sectors-section .sectors-tabs .tab-btn {
    --sector-color: #0072bc;
    --sector-rgb: 0, 114, 188;
    background: var(--sector-color) !important;
    background-image: none !important;
    border: 1px solid var(--sector-color) !important;
    border-top: 4px solid var(--sector-color) !important;
    box-shadow: 0 10px 24px rgba(10, 22, 40, 0.16) !important;
    transform: none;
}

body.page-home .sectors-section .sectors-tabs .tab-btn::before,
body.page-home .sectors-section .sectors-tabs .tab-btn::after {
    opacity: 0 !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn i,
body.page-home .sectors-section .sectors-tabs .tab-btn h3 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn i {
    background: rgba(255, 255, 255, 0.18) !important;
    border: 1px solid rgba(255, 255, 255, 0.34) !important;
}

/* Couleur propre a chaque secteur */
body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(1) {
    --sector-color: #0072bc;
    --sector-rgb: 0, 114, 188;
    background: #0072bc !important;
    border-color: #0072bc !important;
    border-top-color: #0072bc !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(2) {
    --sector-color: #2e7d32;
    --sector-rgb: 46, 125, 50;
    background: #2e7d32 !important;
    border-color: #2e7d32 !important;
    border-top-color: #2e7d32 !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(3) {
    --sector-color: #8e44ad;
    --sector-rgb: 142, 68, 173;
    background: #8e44ad !important;
    border-color: #8e44ad !important;
    border-top-color: #8e44ad !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:nth-child(4) {
    --sector-color: #c0392b;
    --sector-rgb: 192, 57, 43;
    background: #c0392b !important;
    border-color: #c0392b !important;
    border-top-color: #c0392b !important;
}

/* Survol / selection -> inversion : fond blanc + texte/icone couleur secteur */
body.page-home .sectors-section .sectors-tabs .tab-btn:hover,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible,
body.page-home .sectors-section .sectors-tabs .tab-btn.active {
    background: #ffffff !important;
    background-image: none !important;
    border-color: var(--sector-color) !important;
    box-shadow: 0 0 0 2px rgba(var(--sector-rgb), 0.28), 0 16px 30px rgba(10, 22, 40, 0.16) !important;
    transform: translateY(-3px) !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover i,
body.page-home .sectors-section .sectors-tabs .tab-btn:hover h3,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible i,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible h3,
body.page-home .sectors-section .sectors-tabs .tab-btn.active i,
body.page-home .sectors-section .sectors-tabs .tab-btn.active h3 {
    color: var(--sector-color) !important;
    -webkit-text-fill-color: var(--sector-color) !important;
}

body.page-home .sectors-section .sectors-tabs .tab-btn:hover i,
body.page-home .sectors-section .sectors-tabs .tab-btn:focus-visible i,
body.page-home .sectors-section .sectors-tabs .tab-btn.active i {
    background: rgba(var(--sector-rgb), 0.12) !important;
    border: 1px solid rgba(var(--sector-rgb), 0.30) !important;
}

/* (3) CONTENU DIRECT — neutralise le double container */
body.page-home .sectors-section > .container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.page-home .sectors-section .sectors-content {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    margin-top: 22px !important;
}

body.page-home .sectors-section .sectors-content::before {
    display: none !important;
}

/* Contour de la zone de contenu = couleur du secteur actif (CSS :has, sans JS) */
body.page-home .sectors-section .sector-tab-content.active {
    --active-rgb: 0, 114, 188;
    display: block;
    border: 1px solid rgba(var(--active-rgb), 0.32) !important;
    border-top: 4px solid rgb(var(--active-rgb)) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 16px 34px rgba(10, 22, 40, 0.09) !important;
    padding: clamp(1.2rem, 2.2vw, 2rem) !important;
}

body.page-home .sectors-section .sectors-content:has(> .sector-tab-content:nth-of-type(1).active) {
    --active-rgb: 0, 114, 188;
}

body.page-home .sectors-section .sectors-content:has(> .sector-tab-content:nth-of-type(2).active) {
    --active-rgb: 46, 125, 50;
}

body.page-home .sectors-section .sectors-content:has(> .sector-tab-content:nth-of-type(3).active) {
    --active-rgb: 142, 68, 173;
}

body.page-home .sectors-section .sectors-content:has(> .sector-tab-content:nth-of-type(4).active) {
    --active-rgb: 192, 57, 43;
}

/* Accent icone + sous-titre alignes sur le secteur actif */
body.page-home .sectors-section .sector-tab-content.active .sector-icon-large {
    color: rgb(var(--active-rgb)) !important;
    background: rgba(var(--active-rgb), 0.12) !important;
    border: 1px solid rgba(var(--active-rgb), 0.28) !important;
}

/* (4) CARTES AXES — visibles par defaut (carte statique, plus de flip cache) */
body.page-home .sectors-section .axe-card-flip {
    perspective: none !important;
    height: auto !important;
    cursor: default !important;
}

body.page-home .sectors-section .axe-card-inner {
    position: static !important;
    transform: none !important;
    height: auto !important;
}

body.page-home .sectors-section .axe-card-inner::before {
    display: none !important;
}

body.page-home .sectors-section .axe-card-front {
    display: none !important;
}

body.page-home .sectors-section .axe-card-back {
    position: relative !important;
    inset: auto !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
    display: flex !important;
    background: linear-gradient(165deg, #ffffff 0%, rgba(var(--active-rgb, 0, 114, 188), 0.07) 100%) !important;
    border: 1px solid rgba(var(--active-rgb, 0, 114, 188), 0.20) !important;
    box-shadow: 0 8px 18px rgba(10, 22, 40, 0.08) !important;
}

body.page-home .sectors-section .axe-card-back .axe-icon {
    color: rgb(var(--active-rgb, 0, 114, 188)) !important;
    background: rgba(var(--active-rgb, 0, 114, 188), 0.12) !important;
    border: 1px solid rgba(var(--active-rgb, 0, 114, 188), 0.26) !important;
}

/* Neutralise les bascules au survol (tout reste visible) */
body.page-home .sectors-section .axe-card-flip:hover .axe-card-front,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-front,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-front {
    display: none !important;
}

body.page-home .sectors-section .axe-card-flip:hover .axe-card-back,
body.page-home .sectors-section .axe-card-flip:focus-within .axe-card-back,
body.page-home .sectors-section .axe-card-flip.is-flipped .axe-card-back {
    opacity: 1 !important;
    transform: translateY(-2px) !important;
    pointer-events: auto !important;
}


/* (3b) APLATIR les sous-conteneurs internes : un seul panneau, contenu direct */
body.page-home .sectors-section .sector-details {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    gap: 0.9rem !important;
}

body.page-home .sectors-section .sector-description {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* (4b) Icones d'axes : retire le halo rouge + l'animation pulse (suit le secteur) */
body.page-home .sectors-section .axe-icon {
    box-shadow: none !important;
    animation: none !important;
}


/* =====================================================================
   LAD'HA — HERO : COUCHE PREMIUM REMONTEE SOUS LE MENU (9 juin)
   Le contenu du hero etait centre verticalement (align-items:center),
   ce qui laissait une bande bleue vide entre le menu et le contenu.
   Correctif simple : on remonte la couche premium (le contenu) en haut
   du slide, juste sous le menu => plus d'espace bleu non couvert.
   Specificite renforcee pour battre body.ladha-brand-refresh ... .hero-slide.
   ===================================================================== */
body.ladha-brand-refresh.page-home .hero.hero-home .hero-slide {
    align-items: center !important;
    justify-content: center !important;
    padding: clamp(1rem, 3vw, 2.2rem) clamp(1rem, 3vw, 2.3rem) clamp(2rem, 4vw, 3.2rem) !important;
}

body.ladha-brand-refresh.page-home .hero.hero-home .hero-slide .hero-content {
    justify-content: center !important;
    min-height: 0 !important;
}


/* =====================================================================
   LAD'HA — HERO : FOND UNIQUE HOMOGENE (9 juin, suppression de la couture)
   Probleme reel : plusieurs couches de fond se superposaient (glows radiaux
   du .hero, .hero::before, .hero::after assombrissant le bas, 2 couches
   parallax) creant une LIGNE horizontale nette (couture) qui coupait le hero
   en deux teintes de bleu. Solution : UN seul fond degrade continu sur le
   hero, et neutralisation de TOUS les overlays partiels. Zero couture.
   Bloc final => gagne la cascade.
   ===================================================================== */
body.ladha-brand-refresh.page-home .hero.hero-home {
    background: linear-gradient(180deg, #143257 0%, #102c50 52%, #0d2748 100%) !important;
}

/* Neutralise les overlays partiels qui creaient la couture */
body.ladha-brand-refresh.page-home .hero.hero-home::before,
body.ladha-brand-refresh.page-home .hero.hero-home::after {
    background: none !important;
    background-image: none !important;
    display: none !important;
    content: none !important;
}

body.ladha-brand-refresh.page-home .hero.hero-home .hero-parallax-layer,
body.ladha-brand-refresh.page-home .hero.hero-home .particle-canvas {
    background: none !important;
    background-image: none !important;
    opacity: 0 !important;
}
