/* Character-led welcome, sharing the existing Maison du Poulet identity. */
.welcome .hero-copy{max-width:700px;top:51%}
.welcome h1{font-size:clamp(70px,7.5vw,128px);line-height:.94}
.welcome .hero-image{transform:none!important;object-position:68% center;opacity:1}
.welcome .shade{background:linear-gradient(90deg,#0e100be8 0%,#0e100bab 27%,#0e100b22 59%,transparent 78%),linear-gradient(0deg,#10100dbf,transparent 24%,transparent 78%,#10100d66)}
.welcome .chapter-title{font-size:clamp(76px,8vw,130px)}
.welcome .hero-description{max-width:330px}
.welcome .chapter-copy{top:35%}
@media(max-width:600px){
  .welcome .hero-copy{top:23%;transform:translateY(-15%)}
  .welcome h1{font-size:clamp(46px,13.4vw,77px);line-height:1}
  .welcome .hero-copy .eyebrow{margin-bottom:17px}
  .welcome .hero-description{font-size:15px;max-width:250px;margin:20px 0 24px}
  .welcome .shade{background:linear-gradient(90deg,#10100d9e,transparent),linear-gradient(0deg,#10100dc0,transparent 24%,#10100d1a 65%,#10100d55)}
  .welcome .chapter-copy{top:23%}
  .welcome .chapter-title{font-size:17vw}
}
@media(prefers-reduced-motion:reduce){.welcome .story{height:auto}.welcome .story-stage{position:relative}}

/* Explain the scroll-controlled opening before the visitor starts. */
.scroll-cue{display:flex;align-items:center;gap:13px;padding:10px 17px;border:1px solid #e8b92370;border-radius:8px;background:#10100de8;color:#fff8dd;letter-spacing:0;transition:opacity .35s,visibility .35s}
.scroll-cue strong{display:block;font-size:13px;font-weight:600;line-height:1.5}
.scroll-cue small{display:block;font-size:11px;color:#d8d4c4;line-height:1.5}
.scroll-cue-arrow{display:block;font-size:25px;color:var(--gold);animation:scroll-invitation 1.6s ease-in-out infinite}
.scroll-cue.is-complete{opacity:0;visibility:hidden}
@keyframes scroll-invitation{0%,100%{transform:translateY(-3px)}50%{transform:translateY(4px)}}
.story-static .scroll-cue{display:none}
@media(max-width:760px){.scroll-cue{padding:8px 12px;gap:10px}.scroll-cue strong{font-size:12px}.scroll-cue small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.scroll-cue{display:none}.scroll-cue-arrow{animation:none}}

/* Opening announcement: visible immediately, without covering the welcome controls. */
.opening-banner{position:absolute;z-index:3;top:112px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:14px;min-height:42px;padding:10px 20px;background:var(--gold);color:#10100d;font-size:13px;line-height:1.4;text-align:center}
.opening-banner strong{font-size:12px;letter-spacing:.12em}.opening-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}
.opening-notice{border:1px solid #e9b92466;border-left:3px solid var(--gold);padding:18px 22px;margin:0 0 36px;max-width:760px;line-height:1.7}.opening-notice strong{color:var(--gold)}.opening-hours-note{font-size:13px;color:var(--muted);margin:0 0 20px}
@media(max-width:760px){.opening-banner{top:var(--mobile-header,76px);gap:8px;min-height:42px;padding:10px 12px;font-size:11px}.opening-banner strong{font-size:10px;letter-spacing:.07em}.opening-dot{width:5px;height:5px}}
