/* ==========================================================================
   ll-elles.css — Elles VTC (page 24964 et traductions), chargé seulement sur ces pages (inc/ll-elles.php)
   Base du site gardée (crème, or, signature dorée) + touche féminine : rose poudré pour les fonds,
   framboise / vieux rose profond pour les accents, filets, boutons et titres de section.
   Préfixe body.ll-elles:not(#e1):not(#e2) : poids de deux identifiants, plus fort que les styles
   en ligne de la page (body.page-id-24964 …) et que ll-sections.css / ll-gold.css (un identifiant).
   Contrastes (WCAG) : framboise #C2185B / blanc 5,9 ; #A8164F / rose poudré 5,9 ; #6F0F37 / rose 9+ ;
   blanc / #6F0F37 11,7 ; or clair #EDD49B / #4E0A27 9,5.
   ========================================================================== */

body.ll-elles {
	--e-cream: #FBF5EA;      /* fond de base du site */
	--e-rose-1: #FBF0F2;     /* rose très pâle */
	--e-rose-2: #F5E1E6;     /* rose poudré */
	--e-rose-3: #E9C6D0;     /* filets et séparations */
	--e-accent: #C2185B;     /* framboise du logo Elles : boutons, filets, pictos */
	--e-accent-ink: #A8164F; /* framboise lisible en petit texte */
	--e-deep: #6F0F37;       /* vieux rose profond : titres de section, grand bandeau */
	--e-night: #4E0A27;      /* prune : encadrés sombres, pied de page */
	--e-on-deep: #FBEAF0;
	--e-on-deep-muted: #EBCFD8;
	--e-muted: #5C464C;
	--e-gold-soft: #EDD49B;
}

/* ---------- Bandeau titre (photo) ---------- */
body.ll-elles:not(#e1):not(#e2) .ll5-phero::after {
	background: linear-gradient(90deg, rgba(78, 10, 39, .72) 0%, rgba(78, 10, 39, .34) 52%, rgba(78, 10, 39, .04) 100%);
}
body.ll-elles:not(#e1):not(#e2) .ll5-phero h1 {
	background: linear-gradient(105deg, #F2C9D3 0%, #FCE8ED 32%, #F6DDB0 52%, #EFC3CF 74%, #E2A8B8 100%);
	-webkit-background-clip: text; background-clip: text; color: transparent !important; -webkit-text-fill-color: transparent;
}
body.ll-elles:not(#e1):not(#e2) .ll5-phero .ll5-btn--book,
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.btn-gold, .btn-pink) {
	background: var(--e-accent) !important; color: #fff !important; border: 0 !important;
	box-shadow: inset 0 0 0 4px var(--e-accent), inset 0 0 0 5px rgba(237, 212, 155, .8), 0 10px 22px -14px rgba(78, 10, 39, .8) !important;
	transition: background-color .25s, box-shadow .25s, transform .25s !important;
}
body.ll-elles:not(#e1):not(#e2) .ll5-phero .ll5-btn--book::before { border-color: transparent; }
body.ll-elles:not(#e1):not(#e2) .ll5-phero .ll5-btn--book:hover,
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.btn-gold, .btn-pink):hover {
	background: var(--e-deep) !important;
	box-shadow: inset 0 0 0 4px var(--e-deep), inset 0 0 0 5px rgba(237, 212, 155, .9), 0 14px 26px -14px rgba(78, 10, 39, .9) !important;
}
body.ll-elles:not(#e1):not(#e2) .ll5-phero .ll5-btn--quote,
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .btn-light {
	background: #fff !important; color: var(--e-accent-ink) !important; border: 0 !important;
	box-shadow: inset 0 0 0 1.5px var(--e-accent), inset 0 0 0 4px #fff, inset 0 0 0 5px var(--e-rose-3) !important;
}
body.ll-elles:not(#e1):not(#e2) .ll5-phero .ll5-btn--quote:hover,
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .btn-light:hover {
	background: var(--e-rose-1) !important;
	box-shadow: inset 0 0 0 1.5px var(--e-accent), inset 0 0 0 4px var(--e-rose-1), inset 0 0 0 5px var(--e-accent) !important;
}

/* ---------- Fonds des sections : crème et rose poudré en alternance ---------- */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout { background: var(--e-cream) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.hero, .journeys, .booking) { background: var(--e-rose-1) !important; background-image: none !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.commitments, .contact) { background: var(--e-rose-2) !important; background-image: none !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.intro, .fleet, .area, .faq) { background: var(--e-cream) !important; background-image: none !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport { background: var(--e-deep) !important; background-image: none !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero::after { background: none !important; }

/* Bloc de réservation Fare Bookings inséré dans la page : sur rose poudré, collé aux sections voisines */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .ll5-book {
	margin: 0 !important; padding: clamp(64px, 7vw, 96px) 0 !important; background: var(--e-rose-2) !important;
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .ll5-book__title::after { background: var(--e-accent); margin-left: auto; margin-right: auto; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .ll5-call { border-left-color: var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .ll5-call svg { background: var(--e-accent); color: #fff; }

/* ---------- Titres, libellés, filets ---------- */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.intro, .fleet, .journeys, .area, .booking, .faq, .contact) h2 { color: var(--e-deep) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.kicker, .eyebrow, .vehicle-label, .journey-num) { color: var(--e-accent-ink) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.intro, .fleet, .journeys, .area, .airport, .contact) h2::after,
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.booking-head, .faq-head) h2::after {
	content: ""; display: block; width: 64px; height: 2px; margin-top: 22px; background: var(--e-accent);
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .faq-head h2::after { margin-left: auto; margin-right: auto; }
@media (min-width: 761px) { body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .booking-head h2::after { margin-left: auto; margin-right: auto; } }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport h2::after { background: var(--e-gold-soft); }

/* Héros du contenu */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero h1 { color: var(--ll5-ink, #2A0F18) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero h1 em { color: var(--e-accent) !important; -webkit-text-fill-color: var(--e-accent); }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .client-slogan-main { color: var(--e-accent-ink) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .client-slogan-signature { color: var(--e-muted) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .client-slogan-signature strong { color: var(--e-deep) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero-frame { box-shadow: 0 0 0 1px var(--e-rose-3), 18px 18px 0 0 var(--e-rose-2) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.hero-card, .trust-strip, .booking-info) {
	background: var(--e-night) !important; background-color: var(--e-night) !important; color: var(--e-on-deep) !important;
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero-card { border-left: 4px solid var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.hero-card small, .trust-item span) { color: var(--e-gold-soft) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .trust-strip { border-bottom: 3px solid var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .trust-item { border-color: rgba(235, 207, 216, .18) !important; }

/* Encadré coordonnées, cartes d'engagement, véhicules, étapes, contact : filet framboise en tête */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .intro-note { background: var(--e-rose-1) !important; border-left: 3px solid var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.value-card, .step, .contact-card, .vehicle) {
	background: #fff !important; border: 0 !important; border-top: 3px solid var(--e-accent) !important; border-radius: 2px !important; box-shadow: none !important;
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .cards-three { gap: 18px !important; box-shadow: none !important; }
/* Photos refaites (02/11/2026, tour 2) : la chauffeure, la cliente et la portière ouverte restent dans le cadrage vertical des cartes */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .vehicle-sedan img { object-position: 30% 60% !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .vehicle-black-sedan img { object-position: 52% 60% !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .vehicle-van img { object-position: 40% 60% !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero-frame img { object-position: 22% 50% !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport-media img { object-position: 52% 50% !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-icon { background: var(--e-rose-2) !important; color: var(--e-accent) !important; }
/* Pictogrammes des 3 cartes d'engagement : icônes Lucide (licence ISC, assets/icons/lucide/) en masque CSS,
   à la place des caractères ◇ ◌ ◷ du contenu (texte masqué, contenu inchangé). */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-icon {
	position: relative; font-size: 0 !important; line-height: 0 !important; color: transparent !important;
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-icon::before {
	content: ""; position: absolute; inset: 0; margin: auto; width: 26px; height: 26px; background: var(--e-accent);
	-webkit-mask: center / contain no-repeat; mask: center / contain no-repeat;
}
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-card:nth-child(1) .value-icon::before { -webkit-mask-image: url("../icons/lucide/calendar-check.svg"); mask-image: url("../icons/lucide/calendar-check.svg"); }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-card:nth-child(2) .value-icon::before { -webkit-mask-image: url("../icons/lucide/route.svg"); mask-image: url("../icons/lucide/route.svg"); }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .value-card:nth-child(3) .value-icon::before { -webkit-mask-image: url("../icons/lucide/shield-check.svg"); mask-image: url("../icons/lucide/shield-check.svg"); }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .step::before { background: var(--e-accent) !important; color: #fff !important; }

/* Grand bandeau aéroports (vieux rose profond) */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport :is(h2, li) { color: #fff !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport .kicker { color: var(--e-gold-soft) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport-detail h3 { color: var(--e-gold-soft) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.airport-copy > p:not(.kicker), .airport-detail p) { color: var(--e-on-deep-muted) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.airport-list li, .airport-bottom, .airport-detail) { border-color: rgba(235, 207, 216, .22) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport-media img { box-shadow: 14px 14px 0 0 rgba(194, 24, 91, .55); }

/* Trajets : grille sur fond rose, cases blanches et rose poudré */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .journey-grid { border-color: var(--e-rose-3) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .journey { background: #fff !important; border-color: var(--e-rose-3) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.journey:nth-child(2), .journey:nth-child(3)) { background: var(--e-rose-2) !important; }
@media (max-width: 760px) {
	body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .journey:nth-child(3) { background: #fff !important; }
	body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .journey:nth-child(even) { background: var(--e-rose-2) !important; }
}

/* FAQ */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .faq-list { border-top: 3px solid var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .faq details { border-bottom-color: var(--e-rose-3) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .faq details[open] summary { color: var(--e-deep) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .faq summary::after { color: var(--e-accent) !important; }

/* Contact */
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .contact-row { border-top-color: var(--e-rose-3) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout :is(.contact-row span, .contact-note) { color: var(--e-muted) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .contact-row::after { color: var(--e-accent) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .contact-row:hover strong { color: var(--e-accent-ink) !important; }

/* ---------- Pied de page et boutons flottants (ces pages seulement) ---------- */
body.ll-elles:not(#e1):not(#e2) .ll5-foot { background: var(--e-night); }
body.ll-elles:not(#e1):not(#e2) .ll5-float__quote,
body.ll-elles:not(#e1):not(#e2) .ll5-mbar__call,
body.ll-elles:not(#e1):not(#e2) .ll5-totop {
	background: var(--e-accent) !important; color: #fff !important; border-color: rgba(237, 212, 155, .75) !important;
}
body.ll-elles:not(#e1):not(#e2) .ll5-float__quote:hover,
body.ll-elles:not(#e1):not(#e2) .ll5-totop:hover { background: var(--e-deep) !important; }

body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .booking-info p { color: var(--e-on-deep-muted) !important; }
body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .booking-info strong { color: #fff !important; }

/* ---------- Téléphone ---------- */
@media (max-width: 760px) {
	/* Titres de section centrés sous 600 px (styles de la page) : leur filet aussi */
	@media (max-width: 600px) { body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout h2::after { margin-left: auto !important; margin-right: auto !important; } }
	body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .hero-frame { box-shadow: 0 0 0 1px var(--e-rose-3), 8px 8px 0 0 var(--e-rose-2) !important; }
	body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .airport-media img { box-shadow: 8px 8px 0 0 rgba(194, 24, 91, .55); }
}
/* Bandeau titre sur rose poudré */
@media (max-width: 600px) {
	body.ll-elles:not(#e1):not(#e2) .ll5-phero__copy { background: var(--e-rose-2); border-top: 3px solid var(--e-accent); border-image: none; }
	body.ll-elles:not(#e1):not(#e2) .ll5-phero h1 {
		background: linear-gradient(105deg, #6F0F37 0%, #A8164F 45%, #C2185B 60%, #6F0F37 100%);
		-webkit-background-clip: text; background-clip: text; filter: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.ll-elles:not(#e1):not(#e2) .elles-vtc-layout .btn { transition: none !important; }
}

/* Titre du formulaire de réservation en ligne (« chauffeuse femme » en commentaire), en grand et bien lisible. */
body.ll-elles:not(#e1):not(#e2) .ll5-book__title--elles { font-size: clamp(34px, 4vw, 54px) !important; line-height: 1.1 !important; color: var(--e-deep) !important; max-width: none; margin-left: auto !important; margin-right: auto !important; }
@media (max-width: 600px) { body.ll-elles:not(#e1):not(#e2) .ll5-book__title--elles { font-size: 32px !important; } }
body.ll-elles:not(#e1):not(#e2) .ll5-book__kicker { margin: 0 0 12px; font: 700 13px/1.2 var(--ll5-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--e-accent-ink); text-align: center; }
/* Encadré « Important » juste au-dessus du formulaire Fare Bookings. */
body.ll-elles:not(#e1):not(#e2) .ll5-book__elles { max-width: 860px; margin: 0 auto clamp(28px, 4vw, 44px); padding: clamp(22px, 3vw, 34px) clamp(22px, 4vw, 44px); background: var(--e-accent); color: #fff; border-radius: 4px; text-align: center; box-shadow: 0 14px 36px rgba(110, 15, 55, .18); }
body.ll-elles:not(#e1):not(#e2) .ll5-book__elles p { margin: 0; color: #fff !important; }
body.ll-elles:not(#e1):not(#e2) .ll5-book__elles-lead { font: 600 clamp(26px, 3vw, 36px)/1.15 var(--ll5-serif) !important; margin-bottom: 12px !important; }
body.ll-elles:not(#e1):not(#e2) .ll5-book__elles-text { font: 500 clamp(17px, 1.6vw, 20px)/1.6 var(--ll5-sans) !important; }
body.ll-elles:not(#e1):not(#e2) .ll5-book__elles strong { font-weight: 800; color: #fff; }
