.multiline{white-space:pre-line}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.brand-name strong{max-width:220px;font-size:16px}#formStatus{line-height:1.6}.submit:disabled{opacity:.6;cursor:wait}.scene-copy{max-width:min(700px,80%)}.scene-copy p{overflow-wrap:anywhere}.photo-note{max-width:40%;text-align:right}.image-credits p{overflow-wrap:anywhere}.gallery-empty{grid-column:1/-1}button:disabled{opacity:.5}@media(max-width:760px){.scene{height:auto;min-height:850px}.scene-copy{max-width:none;position:relative;left:auto;right:auto;bottom:auto;padding:290px 8% 150px}.scene-copy h2{overflow-wrap:anywhere}.brand-name strong{font-size:12px;max-width:140px}.photo-note{max-width:70%}.intro{height:990px}}
.hotspot{max-width:28%;text-align:left}.hotspot>span{flex-shrink:0}@media(max-width:760px){.hotspot{max-width:84%}}
.scene-copy .scene-discover{position:static;max-width:100%;display:inline-flex;margin-top:18px;padding:19px 26px;min-height:66px;font-size:17px;line-height:1.4;gap:16px;background:#103b2acc}
.scene-discover>span{width:34px;height:34px;font-size:24px}
@media(max-width:760px){.scene-copy .scene-discover{font-size:16px;padding:17px 20px;min-height:64px;gap:12px}}

/* Nouvelle ouverture animée, intégrée sans modifier le parcours existant. */
.opening-home.intro{height:100svh;min-height:660px;background-color:#10251e;background-position:center;background-size:cover}
.opening-frame{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#10251e}
.opening-seo{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.has-opening header .brand{min-height:72px;padding-left:0}
.has-opening header .logo-original,.has-opening.at-home header .logo-original{position:static;height:72px;width:auto;transform:none;transition:opacity .35s ease,visibility .35s ease}
.has-opening.at-home header .logo-original{opacity:0;visibility:hidden;pointer-events:none}
.has-opening:not(.at-home) header .logo-original{opacity:1;visibility:visible}
@media(max-width:760px){
 .opening-home.intro{height:100svh;min-height:620px}
 .has-opening header .brand{min-height:55px}
 .has-opening header .logo-original,.has-opening.at-home header .logo-original{height:55px}
}

/* Lien de contact dans la navigation principale et le menu. */
nav a.project,#menuLinks a[href="#contact"]{color:var(--bronze)}

/* Six-second opening; the rest of the site uses normal document scrolling. */
.opening-home.intro{height:100svh;min-height:0;overflow:hidden}
.opening-stage{position:relative;height:100%;width:100%;overflow:hidden}
.opening-home .opening-frame{position:absolute;inset:0;height:100%;pointer-events:none}
html.opening-playing,html.opening-playing body{overflow:hidden;overscroll-behavior:none}
html.opening-playing header,html.opening-playing .progress{pointer-events:none;visibility:hidden}
.opening-continue{position:absolute;z-index:3;right:5%;bottom:28px;padding:14px 20px;background:#103b2aeb;border:1px solid var(--bronze);border-radius:8px;color:#fff;font-size:14px}
html:not(.opening-finished) .opening-continue{visibility:hidden;pointer-events:none}
@media(max-width:760px){.opening-continue{bottom:22px;right:7%;font-size:13px}}
