/* ─────────────────────────────────────────────────────────────────────────────
   LT Ecologie — main.css
   Palette : Vert #27AE60 | Jaune #F4D03F | Bleu #2980B9
   Base Bootstrap 5 + surcharges thème
───────────────────────────────────────────────────────────────────────────── */

/* ── Variables CSS ─────────────────────────────────────────────────────────── */
:root {
    --lte-green:       #27AE60;
    --lte-green-dark:  #1E8449;
    --lte-green-light: #f0faf4;
    --lte-yellow:      #F4D03F;
    --lte-yellow-dark: #D4AC0D;
    --lte-blue:        #2980B9;
    --lte-blue-dark:   #1A6FA8;
    --lte-blue-light:  #EBF5FB;
    --lte-dark:        #1A252F;
    --lte-dark-2:      #212F3C;
    --lte-gray:        #6B7280;
    --lte-light:       #F8F9FA;

    /* Surcharge Bootstrap primary */
    --bs-primary:     #27AE60;
    --bs-primary-rgb: 39, 174, 96;
    --bs-link-color:  #27AE60;
    --bs-link-hover-color: #1E8449;

    /* Gutters globaux */
    --bs-gutter-x: 2.5rem;
    --bs-gutter-y: 1.5rem;
}

/* ── Typographie & base ────────────────────────────────────────────────────── */
body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: var(--lte-dark);
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
}

a {
    color: var(--lte-green);
    transition: color .2s;
}

a:hover {
    color: var(--lte-green-dark);
}

img {
    max-width: 100%;
    height: auto;
}

/* ── Barre supérieure ──────────────────────────────────────────────────────── */
.lte-topbar {
    background: var(--lte-dark);
    font-size: .85rem;
}

.lte-topbar__link {
    color: rgba(255, 255, 255, .8);
    text-decoration: none;
    transition: color .2s;
    white-space: nowrap;
}

.lte-topbar__link:hover {
    color: var(--lte-yellow);
}

.lte-topbar__badge {
    color: var(--lte-yellow);
    font-weight: 600;
    font-size: .8rem;
}

/* ── Navbar ────────────────────────────────────────────────────────────────── */
.lte-navbar {
    background: #fff;
    box-shadow: 0 2px 16px rgba(0, 0, 0, .08);
    padding: .75rem 0;
    transition: box-shadow .3s;
}

.lte-navbar.scrolled {
    box-shadow: 0 4px 24px rgba(0, 0, 0, .12);
}

.lte-navbar .nav-link {
    color: var(--lte-dark);
    font-weight: 500;
    padding: .5rem 1rem;
    transition: color .2s;
}

.lte-navbar .nav-link:hover,
.lte-navbar .nav-link.active {
    color: var(--lte-green);
}

.lte-navbar .dropdown-menu {
    border: none;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .12);
    border-radius: .75rem;
    padding: .5rem;
    min-width: 220px;
}

.lte-navbar .dropdown-item {
    border-radius: .5rem;
    padding: .6rem 1rem;
    font-weight: 500;
    transition: background .15s, color .15s;
}

.lte-navbar .dropdown-item:hover {
    background: var(--lte-green-light);
    color: var(--lte-green);
}

.lte-navbar__brand-text {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--lte-green);
}

.lte-navbar__logo-img {
    height: 50px;
    width: auto;
}

/* ── Boutons ───────────────────────────────────────────────────────────────── */
.lte-btn-green {
    background: var(--lte-green);
    border-color: var(--lte-green);
    color: #fff;
    font-weight: 600;
    border-radius: .5rem;
    transition: background .2s, transform .15s, box-shadow .2s;
}

.lte-btn-green:hover {
    background: var(--lte-green-dark);
    border-color: var(--lte-green-dark);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(39, 174, 96, .35);
}

.lte-btn-yellow {
    background: var(--lte-yellow);
    border-color: var(--lte-yellow);
    color: var(--lte-dark);
    font-weight: 600;
    border-radius: .5rem;
    transition: background .2s, transform .15s, box-shadow .2s;
}

.lte-btn-yellow:hover {
    background: var(--lte-yellow-dark);
    border-color: var(--lte-yellow-dark);
    color: var(--lte-dark);
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(244, 208, 63, .4);
}

.lte-btn-blue {
    background: var(--lte-blue);
    border-color: var(--lte-blue);
    color: #fff;
    font-weight: 600;
    border-radius: .5rem;
    transition: background .2s, transform .15s, box-shadow .2s;
}

.lte-btn-blue:hover {
    background: var(--lte-blue-dark);
    border-color: var(--lte-blue-dark);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(41, 128, 185, .35);
}

.lte-btn-outline-green {
    background: transparent;
    border: 2px solid var(--lte-green);
    color: var(--lte-green);
    font-weight: 600;
    border-radius: .5rem;
    transition: all .2s;
}

.lte-btn-outline-green:hover {
    background: var(--lte-green);
    color: #fff;
    transform: translateY(-1px);
}

.lte-btn-outline-white {
    background: transparent;
    border: 2px solid rgba(255, 255, 255, .7);
    color: #fff;
    font-weight: 600;
    border-radius: .5rem;
    transition: all .2s;
}

.lte-btn-outline-white:hover {
    background: rgba(255, 255, 255, .15);
    border-color: #fff;
    color: #fff;
}

/* ── Hero ──────────────────────────────────────────────────────────────────── */
.lte-hero {
    position: relative;
    min-height: 90vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background-image: var(--hero-bg, none);
    background-size: cover;
    background-position: center;
}

.lte-hero--gradient {
    background: #015F9D;
}

.lte-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(1, 95, 157, .55);
    z-index: 1;
}

.lte-hero__inner {
    position: relative;
    z-index: 2;
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.lte-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: transparent;
    border: 1px solid var(--lte-yellow);
    color: var(--lte-yellow);
    padding: .35rem .9rem;
    border-radius: 2rem;
    font-size: .85rem;
    font-weight: 600;
}

.lte-hero__title {
    color: #fff;
    text-shadow: 0 2px 8px rgba(0,0,0,.3);
    line-height: 1.2;
}

.lte-hero__brand-h1 {
    color: rgba(255, 255, 255, .7);
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.lte-hero__title strong {
    color: var(--lte-yellow);
}

.lte-hero__subtitle {
    color: rgba(255, 255, 255, .85);
}

.lte-hero__trust li {
    color: rgba(255, 255, 255, .9);
    font-size: .9rem;
}

.lte-hero__card {
    border-radius: 1rem;
    background: #fff;
}

.lte-step-num {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--lte-green);
    color: #fff;
    font-weight: 700;
    font-size: .85rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lte-hero__scroll {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    color: rgba(255,255,255,.6);
    font-size: 1.5rem;
    animation: lte-bounce 2s infinite;
    text-decoration: none;
}

@keyframes lte-bounce {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50%       { transform: translateX(-50%) translateY(8px); }
}

/* ── Stats ─────────────────────────────────────────────────────────────────── */
.lte-stats {
    background: var(--lte-dark);
}

.lte-stat-num {
    font-size: 2rem;
    color: #fff;
}

.lte-stat-label {
    color: #fff;
    font-size: .9rem;
    margin-top: .25rem;
}

/* ── Section kicker ────────────────────────────────────────────────────────── */
.lte-section-kicker {
    display: inline-block;
    background: var(--lte-green-light);
    color: var(--lte-green);
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .35rem .9rem;
    border-radius: 2rem;
}

.lte-section-kicker--light {
    background: rgba(255,255,255,.15);
    color: rgba(255,255,255,.9);
}
.lte-section-kicker--yellow {
    background: var(--lte-yellow);
    color: var(--lte-dark);
}

/* ── Services ──────────────────────────────────────────────────────────────── */
.lte-service-card {
    border-radius: .75rem;
    transition: transform .2s, box-shadow .2s;
}

.lte-service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,.12) !important;
}

.lte-service-icon {
    width: 64px;
    height: 64px;
    background: var(--lte-green-light);
    border-radius: .75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Page header ───────────────────────────────────────────────────────────── */
.lte-page-header {
    background: #015F9D;
}

.lte-page-header .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255,255,255,.4);
}

/* ── Témoignages ───────────────────────────────────────────────────────────── */
.lte-testimonial {
    border-radius: .75rem;
    transition: transform .2s, box-shadow .2s;
}

.lte-testimonial:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,.1) !important;
}

/* ── FAQ Accordion ─────────────────────────────────────────────────────────── */
.lte-accordion .accordion-button {
    background: #fff;
    color: var(--lte-dark);
    border-radius: .5rem !important;
}

.lte-accordion .accordion-button:not(.collapsed) {
    background: var(--lte-green-light);
    color: var(--lte-green);
    box-shadow: none;
}

.lte-accordion .accordion-button::after {
    filter: none;
}

.lte-accordion .accordion-button:not(.collapsed)::after {
    filter: invert(40%) sepia(100%) saturate(400%) hue-rotate(100deg);
}

.lte-accordion .accordion-item {
    border-radius: .5rem !important;
    overflow: hidden;
}

/* ── Contact — Layout Split ────────────────────────────────────────────────── */
.lte-contact {
    display: block;
}

.lte-contact__grid {
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    min-height: 600px;
}

@media (max-width: 991px) {
    .lte-contact__grid {
        grid-template-columns: 1fr;
    }
}

/* Panneau gauche */
.lte-contact__aside {
    background: #015F9D;
    padding: 4rem 3rem;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.lte-contact__intro {
    color: rgba(255,255,255,.8);
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 2.5rem;
}

.lte-contact__intro strong {
    color: var(--lte-yellow);
}

/* Infos de contact */
.lte-contact__infos {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin-bottom: 2.5rem;
}

.lte-contact__info-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    text-decoration: none;
    padding: .9rem 1rem;
    border-radius: .75rem;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.1);
    transition: background .2s, border-color .2s;
}

a.lte-contact__info-item:hover {
    background: rgba(255,255,255,.14);
    border-color: rgba(255,255,255,.25);
}

.lte-contact__info-icon {
    width: 40px;
    height: 40px;
    border-radius: .5rem;
    background: rgba(255,255,255,.12);
    color: var(--lte-yellow);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.lte-contact__info-label {
    display: block;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: rgba(255,255,255,.5);
    margin-bottom: .2rem;
}

.lte-contact__info-value {
    display: block;
    color: #fff;
    font-size: .95rem;
    font-weight: 500;
}

/* Badge RGE */
.lte-contact__rge {
    display: flex;
    align-items: flex-start;
    gap: .9rem;
    padding: 1rem 1.1rem;
    border-radius: .75rem;
    background: rgba(244,208,63,.1);
    border: 1px solid rgba(244,208,63,.3);
    margin-bottom: 1.5rem;
}

.lte-contact__rge-icon {
    font-size: 1.6rem;
    color: var(--lte-yellow);
    flex-shrink: 0;
    margin-top: .1rem;
}

.lte-contact__rge strong {
    display: block;
    color: var(--lte-yellow);
    font-size: .9rem;
    margin-bottom: .2rem;
}

.lte-contact__rge span {
    color: rgba(255,255,255,.7);
    font-size: .82rem;
    line-height: 1.5;
}

/* Aides */
.lte-contact__aides {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.lte-contact__aide-badge {
    background: rgba(255,255,255,.1);
    color: rgba(255,255,255,.85);
    border: 1px solid rgba(255,255,255,.15);
    font-size: .75rem;
    font-weight: 600;
    padding: .3rem .75rem;
    border-radius: 2rem;
}

/* Panneau droit : formulaire */
.lte-contact__form-wrap {
    background: #fff;
    padding: 4rem 3rem;
}

@media (max-width: 767px) {
    .lte-contact__aside,
    .lte-contact__form-wrap {
        padding: 2.5rem 1.5rem;
    }
}

/* Champs du formulaire (fond blanc) */
.lte-form__input--light {
    border: 1.5px solid #d1d5db;
    border-radius: .5rem;
    padding: .75rem 1rem;
    font-size: .95rem;
    color: var(--lte-dark);
    background: #f9fafb;
    transition: border-color .2s, box-shadow .2s, background .2s;
}

.lte-form__input--light:focus {
    border-color: #015F9D;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(1, 95, 157, .15);
    outline: none;
}

.lte-form__input--light::placeholder {
    color: #9ca3af;
}

/* Bouton submit du formulaire */
.lte-btn-primary-contact {
    background: #015F9D;
    border-color: #015F9D;
    color: #fff;
    font-weight: 600;
    border-radius: .5rem;
    transition: background .2s, transform .15s, box-shadow .2s;
}

.lte-btn-primary-contact:hover {
    background: #014f85;
    border-color: #014f85;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(1, 95, 157, .35);
}

/* Focus visible WCAG — navigation clavier */
.lte-btn-primary-contact:focus-visible,
.lte-form__input--light:focus-visible,
.lte-contact__info-item:focus-visible {
    outline: 3px solid var(--lte-yellow);
    outline-offset: 2px;
}

/* ── Contact — (ancien style sombre, conservé pour compatibilité) ────────── */
.lte-bg-dark {
    background: var(--lte-dark);
}

.lte-contact-icon {
    width: 44px;
    height: 44px;
    border-radius: .5rem;
    background: rgba(39, 174, 96, .15);
    color: var(--lte-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.lte-form__input {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.15);
    color: #fff;
    border-radius: .5rem;
    padding: .75rem 1rem;
    transition: border-color .2s, background .2s;
}

.lte-form__input::placeholder {
    color: rgba(255,255,255,.35);
}

.lte-form__input:focus {
    background: rgba(255,255,255,.1);
    border-color: var(--lte-green);
    color: #fff;
    box-shadow: 0 0 0 .25rem rgba(39, 174, 96, .25);
}

/* ── Pré-footer CTA ────────────────────────────────────────────────────────── */
.lte-prefooter-cta {
    background: #015F9D;
}

/* ── Footer ────────────────────────────────────────────────────────────────── */
.lte-footer {
    background: var(--lte-dark-2);
    color: rgba(255,255,255,.75);
}

.lte-footer__brand-text {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--lte-green);
}

.lte-footer__tagline {
    font-size: .9rem;
    color: rgba(255,255,255,.6);
    line-height: 1.6;
}

.lte-footer__col-title {
    font-weight: 700;
    color: #fff;
    font-size: .85rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.lte-footer__links li {
    margin-bottom: .6rem;
}

.lte-footer__links a {
    color: rgba(255,255,255,.65);
    text-decoration: none;
    font-size: .9rem;
    transition: color .2s;
}

.lte-footer__links a:hover {
    color: var(--lte-yellow);
}

.lte-footer__contact-item {
    color: rgba(255,255,255,.7);
    text-decoration: none;
    font-size: .9rem;
    transition: color .2s;
}

.lte-footer__contact-item:hover {
    color: var(--lte-yellow);
}

.lte-footer__bottom {
    border-top: 1px solid rgba(255,255,255,.08);
    color: rgba(255,255,255,.45);
    font-size: .85rem;
}

.lte-footer__bottom a {
    color: rgba(255,255,255,.55);
    text-decoration: none;
    transition: color .2s;
}

.lte-footer__bottom a:hover {
    color: var(--lte-yellow);
}

/* ── Badges ────────────────────────────────────────────────────────────────── */
.lte-badge-green {
    background: var(--lte-green);
    color: #fff;
}

.lte-badge-blue {
    background: var(--lte-blue);
    color: #fff;
}

.lte-badge-yellow {
    background: var(--lte-yellow);
}

/* ── Fonds de section ──────────────────────────────────────────────────────── */
.lte-bg-light-green {
    background: var(--lte-green-light);
}

.lte-bg-light-blue {
    background: var(--lte-blue-light);
}

.lte-bg-green {
    background: var(--lte-green);
}

/* ── Contenu WP (prose) ────────────────────────────────────────────────────── */
.lte-page-content.prose p {
    color: var(--lte-gray);
    line-height: 1.8;
    margin-bottom: 1.2rem;
}

.lte-page-content.prose h2 {
    font-size: 1.5rem;
    margin-top: 2rem;
    color: var(--lte-dark);
}

.lte-page-content.prose ul {
    padding-left: 1.5rem;
    color: var(--lte-gray);
}

/* ── Blog ──────────────────────────────────────────────────────────────────── */
.lte-post-card__img {
    height: 200px;
    object-fit: cover;
}

.lte-post-card {
    border-radius: .75rem;
    overflow: hidden;
    transition: transform .2s, box-shadow .2s;
}

.lte-post-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,.1) !important;
}

/* ── Pagination ────────────────────────────────────────────────────────────── */
.pagination .page-link {
    color: var(--lte-green);
    border-color: #dee2e6;
    border-radius: .5rem;
}

.pagination .page-item.active .page-link {
    background-color: var(--lte-green);
    border-color: var(--lte-green);
}

/* ── Contact icon (page contact) ───────────────────────────────────────────── */
.lte-contact-icon.bg-success {
    background: var(--lte-green-light) !important;
    color: var(--lte-green);
}

/* ── Animations scroll ─────────────────────────────────────────────────────── */
[data-lte-fade="up"] {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .5s ease, transform .5s ease;
}

[data-lte-fade="up"].lte-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ── 404 ───────────────────────────────────────────────────────────────────── */
.lte-404__number {
    font-size: clamp(6rem, 20vw, 12rem);
    font-weight: 900;
    color: rgba(255, 255, 255, .1);
    line-height: 1;
    margin-bottom: 1rem;
    letter-spacing: -.02em;
}

/* ── Carte Leaflet — Agences ───────────────────────────────────────────────── */
.lte-map {
    z-index: 0;
}

.lte-marker {
    width: 36px;
    height: 36px;
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(0,0,0,.25);
}

.lte-marker i {
    transform: rotate(45deg);
    font-size: 1rem;
}

.lte-marker--agence {
    background: var(--lte-green);
    color: #fff;
}

.lte-marker--siege {
    width: 40px;
    height: 40px;
    background: var(--lte-yellow);
    color: var(--lte-dark);
}

.lte-agences-list {
    scrollbar-width: thin;
    scrollbar-color: var(--lte-green) #f0f0f0;
}

.lte-agence-list-item {
    display: block;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    padding: .75rem 1rem;
    text-decoration: none;
    color: inherit;
    transition: all .15s;
    cursor: pointer;
}

.lte-agence-list-item:hover {
    border-color: var(--lte-green);
    background: var(--lte-green-light);
}

.lte-agence-list-item--active {
    border-color: var(--lte-green) !important;
    background: var(--lte-green-light) !important;
    box-shadow: 0 0 0 2px rgba(39,174,96,.2);
}

.lte-agence-list-item--principal {
    border-color: var(--lte-yellow);
}

.lte-dep-badge {
    width: 36px;
    height: 36px;
    border-radius: .4rem;
    background: #015F9D;
    color: #fff;
    font-size: .75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.lte-dep-badge--lg {
    width: 44px;
    height: 44px;
    font-size: .9rem;
    border-radius: .5rem;
}

/* ── Agences ───────────────────────────────────────────────────────────────── */
.lte-agence-card {
    border-radius: .75rem;
    transition: transform .2s, box-shadow .2s;
}

.lte-agence-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(0,0,0,.1) !important;
}

.lte-agence-card--principal {
    border: 2px solid var(--lte-yellow) !important;
}

.lte-agence-icon {
    width: 40px;
    height: 40px;
    border-radius: .5rem;
    background: var(--lte-green-light);
    color: var(--lte-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.lte-agence-stat {
    padding: 1.25rem;
    background: #fff;
    border-radius: .75rem;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
}

.lte-agence-stat__num {
    font-size: 2rem;
    font-weight: 800;
    color: var(--lte-green);
}

.lte-agence-stat__label {
    font-size: .85rem;
    color: var(--lte-gray);
    margin-top: .2rem;
}

/* ── Responsive ────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .lte-hero {
        min-height: 100dvh;
    }

    .lte-hero__title {
        font-size: 2rem;
    }
}

/* ── Page Produits ──────────────────────────────────────────────────────────── */

/* Icône produit (dans la section) */
.lte-prod-icon-wrap {
    width: 72px;
    height: 72px;
    border-radius: 1rem;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    flex-shrink: 0;
}

/* Stat produit */
.lte-prod-stat {
    background: #fff;
    border: 1px solid #e5e7eb;
}

.lte-prod-stat__value {
    font-size: clamp(1.4rem, 3vw, 2rem);
    line-height: 1.1;
}

.lte-prod-stat__label {
    font-size: .8rem;
    line-height: 1.3;
}

/* Check avantage */
.lte-prod-check {
    width: 36px;
    height: 36px;
    border-radius: .5rem;
    background: #fffbeb;
    color: var(--lte-yellow-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
}

/* Étapes */
.lte-prod-step__num {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--lte-yellow);
    color: var(--lte-dark);
    font-size: .8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Aide card */
.lte-aide-card {
    background: #fff;
}

.lte-aide-card:hover {
    background: #fffdf0;
}

/* Section alternée */
.lte-prod-section--alt {
    background: #fff;
}

/* Scroll margin pour la nav sticky */
.lte-prod-section {
    scroll-margin-top: 145px;
}

/* ── Page produit détail ────────────────────────────────────────────────────── */
.lte-prod-header {
    background-size: cover;
    background-position: center;
}

.lte-prod-header__icon {
    width: 64px;
    height: 64px;
    border-radius: 1rem;
    background: rgba(255,255,255,.15);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: #fff;
    flex-shrink: 0;
}

.lte-aide-big {
    transition: transform .2s, box-shadow .2s;
}

.lte-aide-big:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(0,0,0,.08) !important;
}

.lte-prodpicker__card .lte-section-kicker,
.lte-prod-section .lte-section-kicker {
    background: transparent !important;
    padding-left: 0;
    padding-right: 0;
}
.lte-prodpicker__card {
    background: var(--pick-bg, #f8f9fa);
    border: 2px solid transparent;
    border-radius: 1rem;
    padding: 2rem 1.5rem;
    transition: transform .2s, box-shadow .2s, border-color .2s;
}

.lte-prodpicker__card:hover {
    transform: translateY(-5px);
    box-shadow: 0 16px 40px rgba(0,0,0,.1);
    border-color: var(--pick-border, #ccc);
}

.lte-prodpicker__icon {
    width: 64px;
    height: 64px;
    border-radius: 1rem;
    background: var(--pick-icon-bg, rgba(0,0,0,.06));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: var(--pick-color, var(--lte-green));
}

.lte-prodpicker__desc {
    line-height: 1.5;
}

.lte-prodpicker__cta {
    font-size: .9rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
}

/* FAQ accordéon produit */
.lte-prod-faq .accordion-item {
    border-radius: .6rem !important;
    overflow: hidden;
    background: #fff;
}

.lte-prod-faq__btn {
    font-weight: 500;
    font-size: .95rem;
    background: #f8f9fa;
    color: var(--lte-dark);
    border-radius: .6rem !important;
    box-shadow: none !important;
}

.lte-prod-faq__btn:not(.collapsed) {
    background: var(--lte-green-light);
    color: var(--lte-green-dark);
    border-radius: .6rem .6rem 0 0 !important;
}

.lte-prod-faq__btn::after {
    filter: none;
}

.lte-prod-faq .accordion-body {
    background: var(--lte-green-light);
    border-radius: 0 0 .6rem .6rem;
    font-size: .9rem;
}

@media (max-width: 768px) {
    .lte-prodnav__link {
        padding: .75rem 1rem;
        font-size: .82rem;
    }
    .lte-prodnav__link .lte-prodnav__icon {
        width: 26px;
        height: 26px;
        font-size: .85rem;
    }
}
