/* Pages événements v2 (privés, entreprises, festivals).
   Fichier statique, hors build Sass. Préfixe .v2- pour ne rien casser ailleurs. */

.v2-wrap{max-width:var(--container-max,1200px);margin:0 auto;padding-inline:var(--gutter,24px);box-sizing:border-box}
.v2-sec{padding-block:clamp(56px,8vw,88px)}
.v2-sec--alt{background:var(--bg-alt,#2D2721)}
.v2-h2{font-family:var(--font-serif);font-weight:600;font-size:clamp(2rem,4.6vw,3rem);line-height:1.05;margin:0 0 1.5rem}
.v2-h3{font-family:var(--font-sans);font-size:1.1rem;font-weight:600;color:var(--beige,#F4DDBE);margin:0 0 .5rem}
.v2-lead{font-size:1.0625rem;color:var(--fg-muted,#C7BEB0);max-width:46rem;margin:0 0 2rem;line-height:1.6}
.v2-eyebrow{margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.14em;font-size:.8125rem;font-weight:600;color:var(--accent,#E8A863)}
.v2-eyebrow--sombre{color:#8A3A22}
.v2-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}
.v2-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:28px;align-items:start}
.v2-pile{display:flex;flex-direction:column;gap:28px}
.v2-note{font-size:.875rem;margin:1.5rem 0 0}

.v2-hero,.v2-formules,.v2-detail,.v2-carrousel{font-variant-numeric:lining-nums}
/* Pas de césure automatique : « en-treprises » coupé dans un titre, c'est non. */
.v2-hero,.v2-sec,.v2-cta,.v2-hero *,.v2-sec *,.v2-cta *{-webkit-hyphens:manual;hyphens:manual;overflow-wrap:break-word}
h1,h2,h3,h4{-webkit-hyphens:manual;hyphens:manual}

/* Bandeau de tête */
.v2-hero{position:relative;min-height:clamp(520px,80vh,720px);display:flex;align-items:flex-end;overflow:hidden;background:var(--bg)}
.v2-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v2-hero__voile{position:relative;width:100%;padding:140px 0 56px;background:linear-gradient(180deg,rgba(26,22,19,.25) 0%,rgba(26,22,19,.6) 40%,rgba(26,22,19,.92) 100%)}
.v2-hero__titre{font-family:var(--font-serif);font-weight:600;font-size:clamp(2.25rem,6vw,4.5rem);line-height:1.04;max-width:54rem;margin:0;color:var(--fg);text-shadow:0 2px 16px rgba(0,0,0,.45)}
.v2-hero__intro{font-size:clamp(1.0625rem,1.6vw,1.1875rem);line-height:1.55;max-width:40rem;margin:1.25rem 0 0;color:var(--fg)}
.v2-hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.75rem}
.v2-hero__chips{display:flex;flex-wrap:wrap;gap:10px 28px;margin:1.75rem 0 0;padding:0;list-style:none;font-size:.875rem;color:var(--beige)}
.v2-hero .breadcrumb,.v2-hero nav[aria-label]{margin-bottom:1rem}

/* Bandeau de plats */
.v2-carrousel{padding-bottom:clamp(40px,6vw,64px)}
.v2-carrousel__entete{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}
.v2-carrousel__entete .v2-lead{margin-bottom:0}
.v2-carrousel__pause{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.v2-carrousel__bouton{cursor:pointer;min-height:44px}
.v2-carrousel__off{display:none}
.v2-carrousel__pause:checked ~ .v2-carrousel__entete .v2-carrousel__on{display:none}
.v2-carrousel__pause:checked ~ .v2-carrousel__entete .v2-carrousel__off{display:inline}
.v2-carrousel__pause:focus-visible ~ .v2-carrousel__entete .v2-carrousel__bouton{outline:3px solid var(--focus,#E8A863);outline-offset:3px}
.v2-marquee{overflow:hidden;padding:4px 0}
.v2-track{display:flex;gap:16px;width:max-content;padding-right:16px;animation:v2-defile 70s linear infinite}
.v2-marquee:hover .v2-track,.v2-carrousel__pause:checked ~ .v2-marquee .v2-track{animation-play-state:paused}
@keyframes v2-defile{to{transform:translateX(-50%)}}
.v2-slide{margin:0;width:clamp(200px,24vw,300px);flex:none}
.v2-slide__img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius-lg,12px)}
.v2-slide figcaption{margin-top:10px;font-size:.9375rem;line-height:1.4;color:var(--fg)}
.v2-slide strong{color:var(--beige)}
@media (prefers-reduced-motion:reduce){.v2-track{animation:none}.v2-marquee{overflow-x:auto}.v2-carrousel__bouton{display:none}}

/* Formules */
.v2-formules{background:var(--beige,#F4DDBE);color:#1A1613}
.v2-formules .v2-h2{color:#1A1613}
.v2-formules .v2-note{color:#4A3F37}
.v2-formules p,.v2-formules li,.v2-formules strong{color:#1A1613}
.v2-formules .v2-prix{color:#8A3A22}
.v2-formules .v2-fcard__accroche,.v2-formules .v2-note{color:#4A3F37}
.v2-fcard{background:#FFF8EE;border-radius:var(--radius-lg,12px);overflow:hidden;display:flex;flex-direction:column}
.v2-fcard--avant{outline:2px solid var(--accent-hot,#B84A2C)}
.v2-fcard__photo{position:relative;height:220px}
.v2-fcard__photo img{width:100%;height:100%;object-fit:cover;display:block}
.v2-badge{position:absolute;top:14px;left:14px;background:var(--accent-hot,#B84A2C);color:#FFF8EE;font-size:.8125rem;font-weight:600;padding:6px 12px;border-radius:4px}
.v2-fcard__corps{padding:26px;display:flex;flex-direction:column;gap:14px;flex:1}
.v2-fcard__nom{font-family:var(--font-serif);font-size:2rem;font-weight:600;margin:0;color:#1A1613}
.v2-fcard__tarif{margin:0;font-size:.9375rem}
.v2-prix{font-family:var(--font-serif);font-size:2.625rem;line-height:1;font-variant-numeric:lining-nums;font-weight:600;color:#8A3A22;margin:0}
.v2-fcard__accroche{margin:0;font-size:.9375rem;color:#4A3F37}
.v2-fcard__liste{margin:0;padding:0;list-style:none}
.v2-fcard__liste li{padding:9px 0;border-bottom:1px solid rgba(26,22,19,.15);font-size:.9375rem;line-height:1.45}
.v2-btn-sombre{margin-top:auto;align-self:flex-start;background:#1A1613;color:#F5EFE6;display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:4px;font-weight:600;text-decoration:none}
.v2-btn-sombre:hover,.v2-btn-sombre:focus-visible{background:var(--accent-hot,#B84A2C);color:#F5EFE6}
.v2-fpublic{background:#FFF8EE;border-radius:var(--radius-lg,12px);overflow:hidden;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.v2-fpublic__photo img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.v2-fpublic__corps{padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:18px}
.v2-fpublic__corps p{margin:0}
.v2-fpublic__prix{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}
.v2-fpublic__prix>div{background:var(--beige,#F4DDBE);border-radius:10px;padding:20px;font-size:.875rem;line-height:1.45}
.v2-fpublic__label{font-weight:600}
.v2-fpublic__modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;font-size:.875rem;line-height:1.5}
.v2-fpublic__modes>div{border:1px solid rgba(26,22,19,.2);border-radius:10px;padding:14px}

/* Infos pratiques (privés) */
.v2-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.v2-chips li{border:1px solid var(--border,#3D3733);border-radius:999px;padding:8px 14px;font-size:.875rem}
.v2-garanties{margin:0;padding:0;list-style:none;display:grid;gap:12px;font-size:.9375rem;line-height:1.5}
.v2-camion{background:var(--bg);border:1px solid var(--border,#3D3733);border-radius:var(--radius-lg,12px);overflow:hidden}
.v2-camion__img{width:100%;height:220px;object-fit:cover;display:block}
.v2-camion__corps{padding:24px}
.v2-specs{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;font-size:.875rem}
.v2-specs dt{color:#A89E92}
.v2-specs dd{margin:2px 0 0;font-weight:600}

/* Appel à l'action */
.v2-cta{position:relative;overflow:hidden;background:var(--bg)}
.v2-cta__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v2-cta__voile{position:relative;background:rgba(26,22,19,.82);padding-block:clamp(64px,9vw,96px)}
.v2-cta__corps{text-align:center}
.v2-cta__corps p{margin:0 auto 1.75rem;max-width:34rem;color:var(--beige);font-size:1.0625rem}

/* Détail des prestations */
.v2-card{background:var(--bg);border:1px solid var(--border,#3D3733);border-radius:var(--radius-lg,12px);padding:22px}
.v2-card p{margin:0;font-size:.9375rem;line-height:1.6;color:var(--fg-muted,#C7BEB0)}
.v2-card .v2-sur-demande{display:inline-block;margin:0 0 10px;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#1A1613;background:var(--accent,#E8A863);padding:4px 10px;border-radius:4px}

@media (max-width:700px){
	.v2-hero__voile{padding:120px 0 40px}
	.v2-fcard__corps{padding:20px}
	.v2-specs{grid-template-columns:1fr}
}
