/* Le Séjour Parfait — en-tête vidéo plein écran (23/10/2026, MAJ 43).
   Vidéo en fond voilée de sombre, menu transparent en capitales espacées, bouton « Réserver » en contour,
   grand titre fin, sous-titre centré, trait de défilement. Pages : accueil (vidéo plage) et résidences (vidéo villa). */
:root{--lx-titre:"Marcellus","Quattrocento Sans",Georgia,serif;--lx-texte:"Quattrocento Sans","DM Sans",system-ui,sans-serif}

/* ---------- en-tête par-dessus la vidéo ---------- */
body.avec-lx .entete{position:fixed;left:0;right:0;top:0;transition:background .35s,box-shadow .35s,border-color .35s}
body.avec-lx .entete .entete-ligne{min-height:84px}
body.avec-lx .entete-nav{font-family:var(--lx-texte)}
body.avec-lx .entete-nav a:not(.bouton){font:400 13px/1 var(--lx-texte);letter-spacing:.2em;text-transform:uppercase}
body.avec-lx .entete-nav a.bouton{font:400 13px/1 var(--lx-texte);letter-spacing:.2em;text-transform:uppercase;background:transparent;border:1px solid currentColor;border-radius:0;padding:14px 26px;box-shadow:none}
body.avec-lx .entete:not(.defile){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:transparent}
body.avec-lx .entete:not(.defile) .entete-logo img{filter:brightness(0) invert(1)}
body.avec-lx .entete:not(.defile) .ui-maison{background:rgba(255,255,255,.14);color:#fff}
body.avec-lx .entete.defile{background:rgba(255,255,255,.96);box-shadow:0 10px 30px -22px rgba(0,0,0,.5)}
body.avec-lx .entete.defile .entete-nav a.bouton{color:var(--anthracite,#16202c)}
@media (min-width:901px){
  body.avec-lx .entete:not(.defile) .entete-nav a:not(.bouton){color:rgba(255,255,255,.92)}
  body.avec-lx .entete:not(.defile) .entete-nav a:not(.bouton):hover{color:#fff}
  body.avec-lx .entete:not(.defile) .entete-nav a.bouton{color:#fff}
  body.avec-lx .entete:not(.defile) .entete-nav a.bouton:hover{background:#fff;color:#111}
  body.avec-lx .entete.defile .entete-nav a.bouton:hover{background:var(--anthracite,#16202c);color:#fff}
}
@media (max-width:900px){
  body.avec-lx .entete .entete-ligne{min-height:66px}
  body.avec-lx .entete:not(.defile) .entete-burger{background:rgba(255,255,255,.16)}
  body.avec-lx .entete:not(.defile) .entete-burger span{background:#fff}
  body.avec-lx .entete-nav a.bouton{color:var(--anthracite,#16202c);margin-top:10px;text-align:center}
}

/* ---------- la vidéo ---------- */
.lx{position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;background:#0d1214;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;isolation:isolate}
.lx-media,.lx-media video,.lx-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.lx::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,12,14,.62) 0%,rgba(8,12,14,.42) 38%,rgba(8,12,14,.48) 70%,rgba(8,12,14,.72) 100%)}
.lx-kicker{position:absolute;left:0;right:0;top:calc(84px + 12px);font:400 13px/1 var(--lx-texte);letter-spacing:.42em;text-transform:uppercase;color:rgba(255,255,255,.88);padding:0 16px}
.lx h1{margin:0;padding:0 16px;font:400 clamp(52px,11.2vw,200px)/.95 var(--lx-titre);letter-spacing:.06em;text-transform:uppercase;color:#fff;text-shadow:0 8px 40px rgba(0,0,0,.25)}
.lx p{margin:clamp(26px,5vh,58px) auto 0;max-width:760px;padding:0 18px;font:400 clamp(18px,2.1vw,29px)/1.28 var(--lx-texte);color:rgba(255,255,255,.93)}
.lx-defiler{position:absolute;left:50%;bottom:28px;width:1px;height:62px;background:rgba(255,255,255,.35);overflow:hidden;transform:translateX(-50%)}
.lx-defiler::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#fff;animation:lx-trait 2.2s ease-in-out infinite}
@keyframes lx-trait{0%{top:-40%}70%,100%{top:100%}}
.lx-son{position:absolute;right:18px;bottom:22px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(0,0,0,.18);color:#fff;font-size:16px;cursor:pointer;display:none}
@media (max-width:900px){
  .lx{min-height:520px}
  .lx-kicker{top:calc(66px + 10px);font-size:11px;letter-spacing:.32em}
  .lx h1{font-size:clamp(46px,15vw,92px);line-height:1}
  .lx p{font-size:18px}
  .lx-defiler{bottom:calc(84px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){.lx-defiler::after{animation:none}}
.rs-tete .rs-titre{font:600 clamp(26px,3.2vw,38px)/1.1 var(--luxe,"Playfair Display",serif);color:var(--anthracite);margin:0 0 6px;letter-spacing:-.01em}
body.avec-lx .rs-tete{padding-top:clamp(22px,3vw,36px)}
/* corrections (MAJ 43) */
body.avec-lx .entete-nav a{white-space:nowrap}
@media (min-width:901px){
  body.avec-lx .entete-nav{gap:clamp(14px,1.6vw,30px)}
  body.avec-lx .entete-nav a:not(.bouton){letter-spacing:.16em;font-size:12.5px}
  body.avec-lx .entete:not(.defile) .entete-nav a:not(.bouton),body.avec-lx .entete:not(.defile) .entete-nav .lsp-nav-accueil,body.avec-lx .entete:not(.defile) .entete-nav a[aria-current="page"]{color:rgba(255,255,255,.9)!important}
  body.avec-lx .entete:not(.defile) .entete-nav a[aria-current="page"]{border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:4px}
}
@media (min-width:901px) and (max-width:1280px){body.avec-lx .entete-nav a:not(.bouton){letter-spacing:.1em;font-size:12px}body.avec-lx .entete-nav a.bouton{padding:12px 16px}}
.lx-defiler{appearance:none;-webkit-appearance:none;border:0;padding:0;margin:0;cursor:pointer;box-shadow:none;border-radius:0}
