/* WESC GLOBAL COMPACT UI V1 */

/* HERO : moins massif, plus de photo visible */
.hero,
.hero-section,
.page-hero,
.hero-section-main {
    min-height: min(62vh, 590px) !important;
    padding-top: clamp(80px, 8vw, 115px) !important;
    padding-bottom: clamp(35px, 5vw, 65px) !important;
}

/* ENCADRE TEXTE */
.hero-content,
.hero-inner,
.hero-card,
.hero-text,
.hero-overlay-content {
    max-width: 760px !important;
}

/* TITRE PRINCIPAL */
#heroTitle,
.hero h1,
.hero-section h1,
.page-hero h1 {
    font-size: clamp(2.15rem, 4vw, 3.25rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.025em !important;
    margin-bottom: 14px !important;
}

/* TEXTE SOUS TITRE */
.hero p,
.hero-description,
.hero-subtitle,
.hero-lead {
    font-size: clamp(1rem, 1.35vw, 1.16rem) !important;
    line-height: 1.5 !important;
    margin-bottom: 18px !important;
}

/* BOUTONS */
.hero .btn,
.hero-actions a,
.hero-buttons a {
    font-size: .95rem !important;
    padding: 12px 19px !important;
}

/* BADGES : Verified / Worldwide / 0% commission */
.hero-badges,
.hero-features,
.trust-badges,
.hero-trust,
.hero-stats {
    gap: 9px 16px !important;
    margin-top: 16px !important;
}

.hero-badges *,
.hero-features *,
.trust-badges *,
.hero-trust *,
.hero-stats * {
    font-size: .84rem !important;
    line-height: 1.25 !important;
}

/* MOBILE */
@media (max-width: 768px) {

    .hero,
    .hero-section,
    .page-hero,
    .hero-section-main {
        min-height: 470px !important;
        padding-top: 78px !important;
        padding-bottom: 32px !important;
    }

    #heroTitle,
    .hero h1,
    .hero-section h1,
    .page-hero h1 {
        font-size: clamp(1.9rem, 9vw, 2.55rem) !important;
    }

    .hero p,
    .hero-description,
    .hero-subtitle,
    .hero-lead {
        font-size: .98rem !important;
        line-height: 1.45 !important;
    }

    .hero .btn,
    .hero-actions a,
    .hero-buttons a {
        padding: 11px 15px !important;
        font-size: .9rem !important;
    }
}

/* WESC HERO COMPACT V2 — priorité haute */

#heroTitle {
    font-size: clamp(2rem, 3.2vw, 2.85rem) !important;
    line-height: 1.05 !important;
    margin-bottom: 12px !important;
}

#heroTitle + p,
.hero-content > p,
.hero-text > p,
.hero-description,
.hero-subtitle {
    font-size: clamp(.98rem, 1.15vw, 1.08rem) !important;
    line-height: 1.45 !important;
    max-width: 720px !important;
    margin-bottom: 16px !important;
}

.hero-content,
.hero-text,
.hero-inner {
    max-width: 800px !important;
}

.hero-actions,
.hero-buttons {
    margin-top: 16px !important;
    gap: 10px !important;
}

.hero-actions a,
.hero-buttons a {
    padding: 11px 17px !important;
    font-size: .92rem !important;
}

.hero-features,
.hero-badges,
.hero-stats,
.hero-trust {
    margin-top: 14px !important;
    gap: 8px 14px !important;
}

.hero-features *,
.hero-badges *,
.hero-stats *,
.hero-trust * {
    font-size: .78rem !important;
}

@media (max-width:768px) {
    #heroTitle {
        font-size: clamp(1.75rem, 8vw, 2.25rem) !important;
    }

    #heroTitle + p,
    .hero-content > p,
    .hero-text > p {
        font-size: .94rem !important;
    }
}

/* WESC HERO COMPACT FINAL */
section:has(#heroTitle) {
    min-height: 0 !important;
    padding-top: clamp(75px,7vw,100px) !important;
    padding-bottom: clamp(28px,4vw,45px) !important;
}

#heroTitle {
    font-size: clamp(1.9rem,3vw,2.75rem) !important;
    line-height:1.05 !important;
    margin-bottom:10px !important;
}

section:has(#heroTitle) p {
    font-size:clamp(.92rem,1.05vw,1.04rem) !important;
    line-height:1.42 !important;
}

section:has(#heroTitle) a {
    font-size:.9rem !important;
}

section:has(#heroTitle) .hero-content,
section:has(#heroTitle) .hero-card,
section:has(#heroTitle) .hero-inner {
    max-width:760px !important;
    padding-top:22px !important;
    padding-bottom:22px !important;
}

@media(max-width:768px) {
    section:has(#heroTitle) {
        padding-top:70px !important;
        padding-bottom:24px !important;
    }

    #heroTitle {
        font-size:clamp(1.7rem,7.5vw,2.2rem) !important;
    }
}
