/* WÉ — parcours cinématique du hero (accueil)
   Deux états :
   - par défaut (sans JS, sans WebGL, ou « réduire les animations ») : un hero photo + un récit en blocs, entièrement lisible ;
   - .cine-on (ajouté par js/we-cine.js) : une scène collante de 100 svh, une caméra WebGL et une timeline GSAP pilotée par le scroll. */

.cine{--aub:#1B2A4A;--cream:#FFF8EF;--terra:#E9A23B;position:relative}
.cine-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cine .hero{isolation:auto}
.cine-frame{position:absolute;inset:0;overflow:hidden;background:#3a2a24}
.cine-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:46% 55%;filter:saturate(.94)}
.cine-gl{position:absolute;inset:0;width:100%;height:100%;display:none}
.cine-veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(27,42,74,.58),rgba(27,42,74,.18) 30%,rgba(27,42,74,0) 52%),linear-gradient(to top,rgba(27,42,74,.42),rgba(27,42,74,0) 34%)}
.cine .topbar{z-index:7}
.cine .menu{z-index:8}
.cine-shell{position:relative;z-index:2;display:flex;justify-content:center;width:100%;margin-top:auto}

/* ---------- état statique (repli) : le récit se lit comme une page ---------- */
.cine-story,.cine-end{margin:16px 16px 0;padding:clamp(28px,5vw,72px);border-radius:36px;background:var(--aub);color:var(--cream)}
.cine-story{display:grid;gap:clamp(28px,4vw,56px)}
.cine-end{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:center}
.cine-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:center}
.cine-copy--1{grid-template-columns:minmax(0,1fr)}
.cine-copy--right .cine-fig{order:2}
.cine-fig{margin:0;aspect-ratio:4/3;border-radius:24px;overflow:hidden;background:#3a2a24}
.cine-fig img{display:block;width:100%;height:100%;object-fit:cover}
.cine-copy--2 .cine-fig img{object-position:12% 80%}
.cine-kicker{display:flex;align-items:center;gap:12px;margin:0 0 14px;font:700 12px/1.2 'Plus Jakarta Sans','DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,248,239,.78)}
.cine-kicker::before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.cine-line{position:relative;margin:0;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(36px,5.4vw,88px);line-height:1.02;letter-spacing:-.02em;color:var(--cream)}
.cine-p{max-width:440px;margin:18px 0 0;font:500 clamp(16px,1.25vw,19px)/1.5 'DM Sans',system-ui,sans-serif;color:rgba(255,248,239,.84)}
.cine-end-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:30px}
.cine-ask-btn,.cine-ask{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 26px 0 20px;border:0;border-radius:999px;background:var(--terra);color:#fff;font:700 16px/1 'Plus Jakarta Sans','DM Sans',sans-serif;white-space:nowrap;cursor:pointer;box-shadow:0 14px 40px rgba(233,162,59,.32)}
.cine-ask-btn .i,.cine-ask .i{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cine-ask-btn:hover,.cine-ask:hover{background:#e44f30}
.cine-more{display:inline-flex;align-items:center;gap:8px;min-height:48px;color:var(--cream);font:600 15px 'Plus Jakarta Sans',sans-serif;text-decoration:none}
.cine-more .i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}
.cine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cine-card,.cine-slot{position:relative;display:block;aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:#3a2a24;color:#fff;text-decoration:none}
.cine-card img,.cine-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(.96)}
.cine-card::after,.cine-slot::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(27,42,74,.66),rgba(27,42,74,0) 52%);pointer-events:none}
.cine-card-cap{position:absolute;z-index:1;left:16px;right:16px;bottom:14px;display:flex;flex-direction:column;gap:2px}
.cine-card-cap b{font:500 clamp(20px,1.8vw,28px)/1.1 'Fraunces',Georgia,serif}
.cine-card-cap small{font:500 13px 'DM Sans',sans-serif;opacity:.85}
.cine-search-ui,.cine-ask,.cine-nav,.cine-cue{display:none}
@media (max-width:760px){
  .cine-story,.cine-end{margin:10px 10px 0;border-radius:28px}
  .cine-copy,.cine-end{grid-template-columns:minmax(0,1fr)}
  .cine-copy--right .cine-fig{order:0}
}

/* ================================================================
   MODE CINÉMA
   ================================================================ */
.cine.cine-on{height:calc(100vh * 5.4);height:calc(100svh * 5.4)}
.cine-on .cine-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--aub)}
.page:has(.cine-on){overflow:visible;overflow-x:clip}
.cine-on .hero{position:absolute;inset:0;margin:0;min-height:0;border-radius:0;background:transparent;overflow:visible}
.cine-on .cine-frame{clip-path:inset(var(--ins,16px) round var(--rad,36px));will-change:clip-path}
.cine-on .cine-gl{display:block;opacity:0;transition:opacity .9s ease}
.cine-on.gl-ready .cine-gl{opacity:1}
.cine-on .cine-veil{background:linear-gradient(to bottom,rgba(27,42,74,.5),rgba(27,42,74,0) 26%),linear-gradient(to top,rgba(27,42,74,.5),rgba(27,42,74,0) 38%)}
.cine-on .hero-body{z-index:2;padding-bottom:calc(44px + var(--off,0px))}
.cine-on.is-search:has(.dest-sug:not([hidden])) .cine-chips{opacity:0;pointer-events:none}
.cine-chips{transition:opacity .25s}
.cine-on .h1 .cine-w,.cine-on .sub .cine-in{display:inline-block}

/* récit superposé à la caméra */
.cine-on .cine-story{position:absolute;inset:0;z-index:3;display:block;margin:0;padding:0;border-radius:0;background:none;pointer-events:none}
.cine-on .cine-copy{position:absolute;left:clamp(24px,6vw,104px);bottom:clamp(96px,15vh,170px);display:block;max-width:min(720px,80vw)}
.cine-on .cine-copy--right{left:auto;right:clamp(24px,6vw,104px);text-align:right}
.cine-on .cine-copy--right .cine-kicker{justify-content:flex-end}
.cine-on .cine-copy--right .cine-p{margin-left:auto}
.cine-on .cine-fig{display:none}
.cine-on .cine-line{text-shadow:0 2px 30px rgba(27,42,74,.35)}
.cine-on .cine-line > span{display:block}
.cine-on .cine-echo{position:absolute;left:0;top:0;width:100%;color:transparent;-webkit-text-stroke:1px rgba(255,248,239,.55);text-shadow:none;visibility:hidden;pointer-events:none}
.cine-on .cine-p{text-shadow:0 1px 16px rgba(27,42,74,.5)}

/* scène 5 : comparateur */
.cine-on .cine-end{position:absolute;inset:0;z-index:3;margin:0;border-radius:0;background:none;padding:clamp(96px,13vh,140px) clamp(24px,6vw,104px) clamp(40px,7vh,80px);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);pointer-events:none}
.cine-on .cine-end a,.cine-on .cine-end button{pointer-events:auto}
.cine-on .cine-end .cine-line{font-size:clamp(38px,4.6vw,76px)}
.cine-on .cine-grid{justify-self:end;width:min(100%,calc((100svh - 230px) * .8))}
.cine-on .cine-slot{background:transparent}
.cine-on .cine-slot img,.cine-on .cine-slot::after{display:none}
.cine-on .cine-slot .cine-card-cap{text-shadow:0 1px 14px rgba(27,42,74,.6)}

/* bouton flottant + chapitres */
.cine-on .cine-ask{position:absolute;z-index:5;left:50%;bottom:28px;display:inline-flex;translate:-50% 0!important;visibility:hidden;background:rgba(255,248,239,.94);color:var(--aub);box-shadow:0 14px 40px rgba(12,20,38,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.cine-on .cine-ask .i{stroke:var(--terra)}
.cine-on .cine-ask:hover{background:#fff}
.cine-on .cine-nav{position:absolute;z-index:4;right:clamp(20px,2.4vw,40px);top:96px;display:block;visibility:hidden}
.cine-nav ol{display:grid;gap:2px;margin:0;padding:0;list-style:none}
.cine-nav button{display:flex;align-items:center;justify-content:flex-end;gap:10px;width:100%;min-height:28px;padding:0;border:0;background:none;color:rgba(255,248,239,.55);font:600 11px/1 'Plus Jakarta Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:color .3s}
.cine-nav button i{font-style:normal;opacity:.7}
.cine-nav button::after{content:"";width:14px;height:1px;background:currentColor;transition:width .4s}
.cine-nav li.on button{color:var(--cream)}
.cine-nav li.on button::after{width:34px;background:var(--terra)}

/* ---------- mode recherche : « Où partez-vous ? » ---------- */
.cine-on .cine-search-ui{position:absolute;inset:0;z-index:5;display:block;pointer-events:none}
.cine-on .cine-search-ui[hidden]{display:none}
.cine-search-title{position:absolute;left:24px;right:24px;top:calc(46% - var(--sh,84px) / 2 - 24px);translate:0 -100%!important;margin:0;text-align:center;font:500 clamp(44px,6.4vw,104px)/1 'Fraunces',Georgia,serif;letter-spacing:-.02em;color:var(--cream);text-shadow:0 4px 40px rgba(27,42,74,.4)}
.cine-chips{position:absolute;left:24px;right:24px;top:calc(46% + var(--sh,84px) / 2 + 26px);display:flex;flex-wrap:wrap;justify-content:center;gap:10px;pointer-events:auto}
.cine-chip{min-height:44px;padding:0 18px;border:1px solid rgba(255,248,239,.55);border-radius:999px;background:rgba(27,42,74,.28);color:var(--cream);font:600 15px 'Plus Jakarta Sans',sans-serif;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .25s,border-color .25s}
.cine-chip:hover,.cine-chip:focus-visible{background:rgba(255,248,239,.18);border-color:var(--cream)}
.cine-close{position:absolute;top:96px;right:clamp(16px,3vw,40px);display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid rgba(255,248,239,.5);border-radius:50%;background:rgba(27,42,74,.3);color:var(--cream);cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cine-close .i{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.cine-on.is-search .hero-body{position:static}
.cine-on.is-search .cine-shell{position:absolute;z-index:6;left:50%;top:46%;width:min(980px,calc(100% - 32px));margin:0;translate:-50% -50%!important;opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important}
.cine-on.is-search .cine-shell .search{box-shadow:0 30px 90px rgba(12,20,38,.45)}
.cine-on.is-search .cine-story,.cine-on.is-search .cine-end,.cine-on.is-search .cine-ask,.cine-on.is-search .cine-nav,.cine-on.is-search .hero-body > .h1,.cine-on.is-search .hero-body > .sub{opacity:0!important;visibility:hidden!important}

/* voile de transition vers les offres (hors de #app : survit au changement de page) */
#we-veil{position:fixed;inset:0;z-index:9998;background:#FFF4E6;opacity:0;pointer-events:none;transition:opacity .75s ease}
#we-veil.on{opacity:1;transition:none}

@media (max-width:960px){
  .cine-on .cine-nav{display:none}
}
@media (max-width:760px){
  .cine-on .cine-copy,.cine-on .cine-copy--right{left:20px;right:20px;bottom:104px;text-align:left;max-width:none}
  .cine-on .cine-copy--right .cine-kicker{justify-content:flex-start}
  .cine-on .cine-copy--right .cine-p{margin-left:0}
  .cine-on .cine-line{font-size:clamp(34px,10.5vw,48px)}
  .cine-on .cine-p{font-size:15px;max-width:330px}
  .cine-on .cine-end{grid-template-columns:minmax(0,1fr);align-content:start;gap:22px;padding:92px 20px 24px}
  .cine-on .cine-end .cine-line{font-size:clamp(32px,9vw,42px)}
  .cine-on .cine-end .cine-p{display:none}
  .cine-on .cine-end-actions{margin-top:18px}
  .cine-on .cine-grid{justify-self:stretch;width:min(100%,calc(100svh - 400px));gap:10px}
  .cine-on .cine-card,.cine-on .cine-slot{aspect-ratio:1/1;border-radius:18px}
  .cine-on .cine-card-cap{left:12px;bottom:10px}
  .cine-on .cine-card-cap small{display:none}
  .cine-on .cine-ask{bottom:20px;min-height:52px}
  .cine-on .hero-body{padding-top:96px;padding-bottom:calc(20px + var(--off,0px))}
  .cine-on .h1{font-size:clamp(42px,12vw,56px)}
  .cine-on .sub{margin:12px 0 20px}
  .cine-search-title{top:84px;translate:none!important;font-size:clamp(34px,10vw,46px)}
  .cine-on.is-search .cine-shell{top:150px;translate:-50% 0!important}
  .cine-chips{top:calc(150px + var(--sh,280px) + 44px)}
  .cine-close{top:auto;bottom:calc(24px + var(--off,0px));right:auto;left:50%;translate:-50% 0!important;width:52px;height:52px}
}

/* moteur de secours (sans WebGL) */
.cine-dom{position:absolute;inset:0;overflow:hidden;background:var(--aub)}
.cine-dom-img{position:absolute;left:0;top:0;max-width:none;visibility:hidden;will-change:transform,opacity,filter;pointer-events:none}
.cine-dom-fx,.cine-dom-dark{position:absolute;inset:0;z-index:5;opacity:0;pointer-events:none}
.cine-dom-fx{background:#FFF4E6}
.cine-dom-dark{background:radial-gradient(ellipse at center,rgba(27,42,74,.35),rgba(12,20,38,.9))}
.cine-on.dom-mode .cine-gl{display:none}

/* indicateur de défilement */
.cine-on .cine-cue{position:absolute;z-index:4;left:clamp(20px,2.4vw,40px);bottom:calc(32px + var(--off,0px));display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--cream);font:700 11px/1 'Plus Jakarta Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;pointer-events:none}
.cine-cue span{writing-mode:vertical-rl;transform:rotate(180deg)}
.cine-cue i{position:relative;width:1px;height:56px;overflow:hidden;background:rgba(255,248,239,.3)}
.cine-cue i::after{content:"";position:absolute;left:0;top:-50%;width:1px;height:50%;background:var(--cream);animation:cine-cue 1.8s cubic-bezier(.6,0,.3,1) infinite}
@keyframes cine-cue{to{top:100%}}
@media (max-width:760px){.cine-on .cine-cue{display:none}}
.cine-on .cine-frame{background:var(--aub)}
.cine-on .cine-poster{transition:opacity .9s ease .3s}
.cine-on.gl-ready .cine-poster{opacity:0}

/* ================================================================
   LANGAGE CINÉMA SUR TOUT LE SITE (js/we-cine-site.js)
   ================================================================ */
#we-shutter{position:fixed;inset:0;z-index:9997;opacity:0;pointer-events:none;background:rgba(250,248,243,.9);-webkit-backdrop-filter:blur(var(--b,0px));backdrop-filter:blur(var(--b,0px))}
.we-w{display:inline-block;will-change:transform}
.we-cine-site .lp-body .city-band{min-height:clamp(300px,56vh,580px);padding:clamp(26px,4vw,48px)}
.we-cine-site .lp-body .city-band h1,.we-cine-site .lp-body .city-band h2{font-size:clamp(48px,8vw,112px);letter-spacing:-.02em;line-height:.95}
.we-cine-site .city-band .city-country{letter-spacing:.16em;text-transform:uppercase;font-size:12px}
.lp-body .city-band>.we-cam{position:absolute;inset:-8%;z-index:0;background:inherit;background-size:cover;will-change:transform,filter;pointer-events:none}
.lp-body .city-band::before{z-index:1}
.lp-body .city-band>*:not(.we-cam){z-index:2}
.we-cine-site .dgal figure img,.we-cine-site .dest img{will-change:transform}

/* ================================================================
   VERSION APPLICATION (js/we-app.js)
   ================================================================ */
.we-tabs{display:none}
@media (max-width:760px){
  .we-tabs{position:fixed;z-index:9990;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:64px;padding:0 4px;border-radius:24px;background:rgba(27,42,74,.86);box-shadow:0 14px 40px rgba(12,20,38,.35),inset 0 0 0 1px rgba(255,248,239,.08);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}
  .we-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;border:0;border-radius:18px;background:none;color:rgba(255,248,239,.68);font:600 10.5px/1 'Plus Jakarta Sans','DM Sans',sans-serif;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s}
  .we-tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .we-tab svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
  .we-tab.on{color:#FFF8EF}
  .we-tab.on svg{stroke:#E9A23B;transform:translateY(-1px)}
  .we-tab--search svg{width:26px;height:26px;padding:4px;border-radius:50%;background:#E9A23B;stroke:#fff;box-sizing:content-box;margin-top:-6px;box-shadow:0 6px 18px rgba(233,162,59,.45)}
  .we-tab:active svg{transform:scale(.9)}
  body{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  /* le hero laisse la place à la barre */
  .cine-on .cine-ask{display:none!important}
  .cine-on .hero-body{padding-bottom:calc(96px + var(--off,0px))}
  .cine-on .cine-copy,.cine-on .cine-copy--right{bottom:118px}
  .cine-on .cine-end{padding-bottom:96px}
  .cine-on .cine-grid{width:min(100%,calc(100svh - 480px))}
  .cine-close{bottom:calc(100px + var(--off,0px))}
  .cine-on.is-search ~ .we-tabs{opacity:.4}
}
/* appli installée : plein écran sous la barre d'état */
[data-app="standalone"] body{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}
[data-app="standalone"] .beta{padding-top:calc(10px + env(safe-area-inset-top,0px))}
[data-app="standalone"] .cine-on .topbar,[data-app="standalone"] .lp-top{padding-top:max(18px,calc(env(safe-area-inset-top,0px) + 6px))}
@media (display-mode:standalone){
  .we-tabs{position:fixed;z-index:9990;left:50%;width:min(520px,calc(100% - 20px));translate:-50% 0!important;bottom:calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:64px;border-radius:24px;background:rgba(27,42,74,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
}

/* proposition d'installation */
.we-sheet{position:fixed;z-index:9995;left:10px;right:10px;bottom:calc(84px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px 14px;align-items:center;padding:16px;border-radius:22px;background:#FFF8EF;color:#1B2A4A;box-shadow:0 20px 60px rgba(12,20,38,.35);transform:translateY(130%);opacity:0;transition:transform .45s cubic-bezier(.2,.9,.2,1),opacity .3s}
.we-sheet.on{transform:none;opacity:1}
.we-sheet img{border-radius:12px}
.we-sheet b{font:700 16px/1.2 'Plus Jakarta Sans',sans-serif}
.we-sheet p{margin:4px 0 0;font:500 14px/1.4 'DM Sans',sans-serif;color:#3A4459}
.we-sheet-act{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}
.we-sheet-act button{min-height:44px;padding:0 18px;border:0;border-radius:999px;font:700 14px 'Plus Jakarta Sans',sans-serif;cursor:pointer}
.we-sheet-go{background:#E9A23B;color:#fff}
.we-sheet-no{background:transparent;color:#1B2A4A}

/* petits téléphones (hauteur réduite) : le hero tient au-dessus de la barre d'onglets */
@media (max-width:760px) and (max-height:800px){
  .cine-on .hero-body{padding-top:80px}
  .cine-on .h1{font-size:clamp(36px,11vw,44px)}
  .cine-on .sub{margin:8px 0 0;font-size:15px}
  .cine-on .search{margin-top:16px;gap:7px}
  .cine-on .seg{padding:8px 16px;border-radius:16px}
  .cine-on .search-btn{height:52px}
  .cine-on .search-btn .lab{font-size:19px}
  .cine-on .cine-copy,.cine-on .cine-copy--right{bottom:104px}
  .cine-on .cine-line{font-size:clamp(30px,9.5vw,40px)}
}
/* bandeau cookies : au-dessus de la barre d'onglets */
@media (max-width:760px){
  .cookies{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:380px){ .we-tab{font-size:9.5px;letter-spacing:-.01em} .we-tabs{left:6px;right:6px;padding:0 2px} }

/* ================================================================
   HERO « HUBLOT » (nouvelle direction)
   ================================================================ */
.cine--sky{--sky:#F7F2EA;--green:#123B2F;--jost:'Jost','DM Sans',system-ui,sans-serif}
.cine--sky .hero{background:#140d0f}
.cine--sky .cine-frame{background:#140d0f}
.cine--sky .cine-poster{object-position:59% 50%;filter:none}
.cine--sky .cine-veil{background:linear-gradient(90deg,rgba(12,8,9,.74) 0%,rgba(12,8,9,.42) 34%,rgba(12,8,9,0) 58%),linear-gradient(0deg,rgba(12,8,9,.72) 0%,rgba(12,8,9,0) 36%),linear-gradient(180deg,rgba(12,8,9,.5) 0%,rgba(12,8,9,0) 18%)}
.cine--sky .links a{font-family:var(--jost);font-weight:400;font-size:15.5px;letter-spacing:.01em}
.cine--sky .links{gap:clamp(18px,3vw,52px)}
.cine--sky .top-cta{font-family:var(--jost);font-weight:500;font-size:15px;background:#fff;color:#1b1214;padding:0 24px;min-height:48px}
.cine--sky .sky-find .i{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.cine--sky .menu a{font-family:var(--jost)}

/* colonne de gauche : logo, accroche, recherche */
.cine--sky .hero-body{align-items:flex-start;justify-content:flex-start;text-align:left;padding:clamp(16px,5vh,64px) 24px calc(clamp(120px,19vh,190px) + 88px) clamp(24px,8.3vw,140px);max-width:820px}
.cine--sky .sky-title{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(8px,1.4vh,16px);margin:0;font:inherit;text-shadow:none}
.cine--sky .sky-logo{display:block;width:clamp(180px,min(22vw,36vh),360px);height:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.35))}
.cine--sky .sky-tag{display:block;font-family:var(--jost);font-weight:300;font-size:clamp(26px,2.9vw,44px);line-height:1;letter-spacing:.26em;text-transform:uppercase;color:var(--sky)}
.cine--sky .sky-sub{max-width:470px;margin:clamp(14px,2.4vh,26px) 0 clamp(18px,3vh,30px);font-family:var(--jost);font-weight:400;font-size:clamp(12px,.95vw,14px);line-height:1.9;letter-spacing:.2em;text-transform:uppercase;color:var(--sky);text-shadow:0 1px 14px rgba(0,0,0,.4)}
.cine--sky .cine-shell{justify-content:flex-start;margin-top:0}
.cine--sky .search{width:min(700px,100%);padding:8px 8px 8px 22px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.cine--sky .seg label{font-family:var(--jost);font-weight:500;font-size:15px;color:#1b1214}
.cine--sky .seg input,.cine--sky .seg .gs output{font-family:var(--jost)}
.cine--sky .search-btn{background:#E9A23B!important;color:#1B2A4A!important;width:62px;height:62px}
.cine--sky .search-btn:hover{background:#C0841F!important}

/* bandeau des 5 régions */
.sky-rail{position:absolute;z-index:3;left:0;right:0;bottom:clamp(18px,4.5vh,48px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(14px,2vw,32px);padding:0 clamp(16px,3vw,48px)}
.sky-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:clamp(10px,1.1vw,18px);height:clamp(120px,19vh,190px)}
.sky-card{position:relative;display:block;overflow:hidden;border-radius:10px;color:#fff;text-decoration:none;box-shadow:0 14px 34px rgba(0,0,0,.35);transition:transform .45s cubic-bezier(.2,.9,.2,1),box-shadow .45s}
.sky-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.9,.2,1)}
.sky-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,0) 48%)}
.sky-card span{position:absolute;z-index:1;left:14px;bottom:13px;font:500 clamp(12px,1vw,15px)/1 var(--jost);letter-spacing:.08em;text-transform:uppercase}
.sky-card .i{position:absolute;z-index:1;right:14px;bottom:10px;width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s}

.sky-card.on{outline:2px solid rgba(255,255,255,.85);outline-offset:3px}

.sky-count{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--sky);font:400 13px/1 var(--jost);letter-spacing:.08em}
.sky-count > span{display:flex;align-items:center;gap:10px}
.sky-count i{display:none}
.sky-count > span::after{content:"";width:38px;height:1px;background:currentColor;opacity:.8}
.sky-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(247,242,234,.85);border-radius:50%;background:transparent;color:var(--sky);cursor:pointer;transition:background .25s}
.sky-arrow:hover{background:rgba(255,255,255,.14)}
.sky-arrow .i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sky-count--end .sky-arrow .i{transform:rotate(180deg)}
.sky-words{position:absolute;z-index:3;right:clamp(20px,3.4vw,56px);top:46%;display:flex;flex-direction:column;align-items:flex-end;gap:10px;color:var(--sky);font:400 13px/1 var(--jost);letter-spacing:.3em;text-transform:uppercase;pointer-events:none}
.sky-words i{display:block;width:1px;height:54px;margin-top:10px;background:currentColor;opacity:.8}

/* récit des régions */
.cine--sky .cine-kicker,.cine--sky .cine-nav button{font-family:var(--jost)}
.cine-go{display:inline-flex;align-items:center;gap:10px;margin-top:22px;min-height:48px;padding:0 22px;border-radius:999px;background:rgba(255,255,255,.94);color:#1b1214;font:500 15px var(--jost);text-decoration:none;pointer-events:auto}
.cine-go .i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.cine-go:hover{background:#fff}
.cine-on .cine-copy--right .cine-go{margin-left:auto}

/* état statique (sans animations) */
.cine--sky:not(.cine-on) .hero{min-height:max(720px,92vh)}
.cine--sky:not(.cine-on) .hero-body{flex-grow:1}

@media (max-width:1100px) and (min-width:761px){
  .sky-words{display:none}
  .cine--sky .search{grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) minmax(0,1fr) auto}
}
@media (max-height:780px) and (min-width:761px){
  .cine--sky .sky-sub{display:none}
  .cine--sky .hero-body{padding-top:8px}
}
@media (max-width:760px){
  .cine--sky .hero-body{justify-content:flex-end;padding:96px 20px calc(var(--off,0px) + 104px + 118px + 22px);max-width:none}
  .cine--sky .sky-logo{width:min(46vw,190px)}
  .cine--sky .sky-tag{font-size:clamp(20px,6.4vw,28px);letter-spacing:.22em}
  .cine--sky .sky-sub{display:none}
  .cine--sky .sky-title{margin-bottom:18px}
  /* recherche compacte : destination + bouton ; le reste s'ouvre en mode recherche */
  .cine--sky:not(.is-search) .search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0;padding:6px 6px 6px 8px;border-radius:999px;background:#fff;box-shadow:0 14px 40px rgba(0,0,0,.35)}
  .cine--sky:not(.is-search) .seg{padding:4px 12px;background:transparent}
  .cine--sky:not(.is-search) .seg:nth-child(2),.cine--sky:not(.is-search) .seg:nth-child(3){display:none}
  .cine--sky:not(.is-search) .search-btn{width:52px;height:52px;border-radius:50%}
  .cine--sky:not(.is-search) .search-btn .ic{display:block}
  .cine--sky:not(.is-search) .search-btn .lab{display:none}
  .sky-rail{bottom:calc(96px + env(safe-area-inset-bottom,0px) + var(--off,0px));grid-template-columns:minmax(0,1fr);padding:0}
  .sky-count{display:none}
  .sky-cards{grid-auto-columns:40%;height:118px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 20px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .sky-cards::-webkit-scrollbar{display:none}
  .sky-card{scroll-snap-align:start;border-radius:12px}
  .sky-card:hover,.sky-card.on{transform:none}
  .sky-words{display:none}
  .cine--sky:not(.cine-on) .hero{min-height:calc(100svh - 20px)}
  .cine--sky:not(.cine-on) .hero-body{padding-bottom:160px}
  .cine--sky:not(.cine-on) .sky-rail{bottom:20px}
}

.cine--sky.cine-on{height:calc(100vh * 6.5);height:calc(100svh * 6.5)}

.cine--sky .cine-cue{display:none!important}
@media (max-width:760px){
  /* le bas du cadrage « hublot » se fond dans la cabine sombre */
  .cine--sky.cine-on .cine-frame::after{content:"";position:absolute;left:0;right:0;top:calc(100vw / .95 - 150px);height:152px;background:linear-gradient(rgba(18,12,13,0),#120c0d);opacity:var(--mrect,1);pointer-events:none}
  .cine--sky .cine-veil{background:linear-gradient(180deg,rgba(12,8,9,.55) 0%,rgba(12,8,9,0) 22%)}
}
@media (max-width:760px){
  .cine--sky.cine-on .cine-poster{height:calc(100vw / .95);object-position:59.5% 50%;opacity:var(--mrect,1)}
}
@media (min-width:761px){ .cine--sky .cine-copy--1{grid-template-columns:minmax(0,1fr) minmax(0,1fr)} }

/* ================================================================
   ACCUEIL « INTERFACE SIMPLE » (maquette hublot, sans parcours)
   ================================================================ */
.cine--sky.sky-static .hero{margin:0;border-radius:0;min-height:max(680px,100svh)}
.cine--sky.sky-static .hero-body{padding-top:clamp(16px,6vh,80px)}
@media (max-width:760px){
  .cine--sky.sky-static .hero{min-height:100svh}
  .cine--sky.sky-static .cine-poster{object-position:59.5% 50%}
  .cine--sky.sky-static .cine-veil{background:linear-gradient(180deg,rgba(12,8,9,.45) 0%,rgba(12,8,9,0) 24%),linear-gradient(0deg,rgba(12,8,9,.88) 0%,rgba(12,8,9,.45) 45%,rgba(12,8,9,0) 65%)}
  .cine--sky.sky-static .hero-body{padding:96px 20px calc(96px + 118px + 22px + env(safe-area-inset-bottom,0px));justify-content:flex-end}
  .cine--sky.sky-static .sky-rail{bottom:calc(96px + env(safe-area-inset-bottom,0px))}
}

/* ================================================================
   INTERFACE SIMPLE — fidèle à la maquette, sans effets
   ================================================================ */
html{scroll-behavior:auto!important}
.sky-card,.sky-card img,.sky-card .i{transition:none!important}
.cine--sky .sky-card.on{outline:2px solid rgba(255,255,255,.9);outline-offset:3px}
/* en-tête : logo | menu, aligné à gauche comme la maquette */
.cine--sky .topbar{justify-content:flex-start;gap:0;padding:26px clamp(20px,4.4vw,72px)}
.cine--sky .topbar .brand img{height:clamp(44px,4.4vw,64px)}
.cine--sky .links{position:relative;margin-left:clamp(20px,2.2vw,36px);padding-left:clamp(20px,2.4vw,44px);gap:clamp(18px,3.2vw,54px)}
.cine--sky .links::before{content:"";position:absolute;left:0;top:50%;width:1px;height:34px;background:rgba(255,255,255,.75);transform:translateY(-50%)}
.cine--sky .topbar .icons{margin-left:auto;align-items:center;gap:10px}
/* recherche : Destination ⌄ | Dates ⌄ | Voyageurs ⌄ | (loupe) */
@media (min-width:761px){
  .cine--sky .search{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1.1fr) auto;width:min(690px,100%);padding:8px 8px 8px 14px;border-radius:999px;background:#fff}
  .cine--sky .seg{gap:12px;padding:10px 20px;cursor:pointer;border-left:1px solid #ddd5cd}
  .cine--sky .seg:first-child{border-left:0}
  .cine--sky .seg > .i{width:26px;height:26px;stroke:#1b1214;stroke-width:1.6;flex:none}
  .cine--sky .seg::after{content:"";flex:none;width:8px;height:8px;margin:-4px 0 0 auto;border-right:1.7px solid #1b1214;border-bottom:1.7px solid #1b1214;transform:rotate(45deg)}
  .cine--sky .seg label{font:400 17px/1.2 var(--jost);color:#1b1214;cursor:pointer}
  .cine--sky .seg:first-child label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cine--sky #destination{font:400 17px/1.2 var(--jost);color:#1b1214}
  .cine--sky #destination::placeholder{color:#1b1214;opacity:1}
  .cine--sky .seg-pop .dr,.cine--sky .seg-pop .gs{position:absolute;z-index:30;left:0;top:calc(100% + 16px);display:none;align-items:center;gap:10px;min-width:max-content;padding:14px 18px;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.3)}
  .cine--sky .seg-pop.open .dr,.cine--sky .seg-pop.open .gs{display:flex}
  .cine--sky .search-btn{width:64px;height:64px}
  .cine--sky .search-btn .i{width:26px;height:26px}
}
/* mobile : pilule compacte, elle se déplie au toucher (dates, voyageurs) */
@media (max-width:760px){
  .cine--sky .search.expanded{display:flex!important;flex-direction:column;gap:8px;padding:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .cine--sky .search.expanded .seg{display:flex!important;padding:10px 16px!important;border-radius:18px;background:#fff!important}
  .cine--sky .search.expanded .seg-pop .dr,.cine--sky .search.expanded .seg-pop .gs{display:flex}
  .cine--sky .search.expanded .search-btn{width:100%!important;height:54px!important;border-radius:999px!important}
  .cine--sky .search.expanded .search-btn .ic{display:none!important}
  .cine--sky .search.expanded .search-btn .lab{display:inline-flex!important}
  .cine--sky .search.expanded ~ * {display:none}
  .cine--sky .topbar{padding:18px 20px}
}
@media (max-width:760px){ .cine--sky .search:not(.expanded) .seg:first-child label{display:none} .cine--sky #destination{font:400 16px/1.2 var(--jost);color:#1b1214} .cine--sky .search:not(.expanded) #destination::placeholder{color:#1b1214;opacity:1} }

/* ====== Pages « Où dormir » ====== */
.lp-body h2.od-h{margin:34px 0 14px;font-size:24px}
.lp-body .od-hoods{grid-template-columns:repeat(2,minmax(0,1fr))}
.lp-body .od-hoods .hood{display:flex;flex-direction:column}
.lp-body .hood p.ideal{margin:12px 0 0;padding-top:10px;border-top:1px dashed rgba(27,42,74,.14);font-size:14px;color:#3A4459}
.lp-body .hood p.ideal span{display:inline-block;margin-right:4px;padding:3px 9px;border-radius:999px;background:#F7EEDD;color:#7E4D06;font-weight:700;font-size:12px;letter-spacing:.02em}
.lp-body .od-tip{display:flex;gap:14px;align-items:flex-start;margin:4px 0 26px;padding:18px 20px;border-radius:20px;background:#F1E6D8}
.lp-body .od-tip svg{flex:none;width:28px;height:28px;fill:none;stroke:#7E4D06;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lp-body .od-tip h3{margin:0 0 4px;font-size:16px}.lp-body .od-tip p{margin:0;font-size:15.5px;line-height:1.55}
.lp-body .od-soon{position:relative;overflow:hidden;padding:clamp(24px,4vw,40px);border-radius:28px;color:#FAF8F3;background:radial-gradient(70% 90% at 100% 0,rgba(233,162,59,.38),transparent 60%),#1B2A4A}
.lp-body .od-soon .od-eye{margin:0 0 10px;font:700 12px/1 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#E9A23B}
.lp-body .od-soon h2{margin:0;color:#FAF8F3;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(26px,3.4vw,38px);line-height:1.1}
.lp-body .od-soon p:not(.od-eye){margin:12px 0 0;max-width:56ch;font-size:16px;line-height:1.55;color:rgba(250,248,243,.86)}
.lp-body a.od-cta{display:inline-flex;align-items:center;gap:10px;min-height:48px;margin-top:20px;padding:0 24px;border-radius:999px;background:#E9A23B;color:#1B2A4A;font:700 15px/1 'Plus Jakarta Sans',system-ui,sans-serif;text-decoration:none}
.lp-body a.od-cta svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:760px){.lp-body .od-hoods{grid-template-columns:minmax(0,1fr)}}
