/* Full-width film, original gold emblem and a still, readable foreground. */
.opening{min-height:690px;min-height:clamp(640px,calc(100svh - 100px),880px);align-items:center;background:#0a0a0a}
.opening-film{inset:0;width:100%;height:100%;max-width:none}
.opening-film video,.opening-loop-cover{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:none}
.opening-loop-cover{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s ease;z-index:1}
.opening-film.loop-transition .opening-loop-cover{opacity:1}
.opening-film .film-control{z-index:3;bottom:94px;right:5%}
.opening-veil{background:linear-gradient(90deg,#0a0a0a 0%,rgba(10,10,10,.99) 27%,rgba(10,10,10,.94) 38%,rgba(10,10,10,.78) 49%,rgba(10,10,10,.4) 58%,rgba(10,10,10,.08) 68%,transparent 79%),linear-gradient(0deg,#0a0a0a,transparent 25%,transparent 85%,#0a0a0a30)}
.opening .grain{display:none}
.opening-copy{width:48%;max-width:700px;padding:38px 0 76px 6%;pointer-events:none}
.opening-brand{display:flex;flex-direction:row;align-items:center;gap:22px;margin:0 0 24px;perspective:700px}
.opening-brand .eyebrow{margin:0;font-size:14px;letter-spacing:.14em}
.opening-mark{display:block;width:76px;height:74px;flex:none;transform-origin:50% 50%;animation:artch-mark-turn 8s cubic-bezier(.35,0,.25,1) both}
.opening-mark svg{display:block;width:100%;height:100%;overflow:visible}
.opening h1{font-size:clamp(58px,6.1vw,96px);line-height:1.06;margin:0 0 22px}
.opening .intro{font-size:16px;line-height:1.8;margin-bottom:22px;max-width:360px}
.opening-copy .book{pointer-events:auto;font-size:14px;min-height:49px;gap:25px;padding:14px 22px}
.opening .location{font-size:14px;margin:16px 0 0}
.opening-foot{left:6%;right:12%;bottom:25px;font-size:12px;line-height:1.5}
@keyframes artch-mark-turn{0%{opacity:0;transform:rotateY(0deg)}12%{opacity:1}100%{opacity:1;transform:rotateY(360deg)}}
@media(max-width:900px){.opening{min-height:650px}.opening-copy{width:55%}.opening h1{font-size:clamp(54px,7vw,70px)}}
@media(max-width:700px){
.opening{display:flex;align-items:center;min-height:620px;padding-top:0;overflow:hidden}
.opening-film{inset:0;height:100%;width:100%;max-width:none}
.opening-film video,.opening-loop-cover{object-fit:cover;object-position:43% center}
.opening-film .film-control{top:auto;bottom:94px;right:6%;width:40px;height:40px}
.opening-veil{inset:0;height:100%;background:linear-gradient(90deg,#0a0a0a 0%,rgba(10,10,10,.96) 23%,rgba(10,10,10,.87) 42%,rgba(10,10,10,.64) 57%,rgba(10,10,10,.18) 77%,transparent 94%),linear-gradient(0deg,#0a0a0a,transparent 30%,transparent 86%,#0a0a0a50)}
.opening-copy{width:77%;max-width:none;padding:46px 0 96px 6%;text-align:left}
.opening-brand{position:relative;gap:15px;margin:0 0 25px;min-height:0;padding-left:0}
.opening-mark{position:static;width:55px;height:54px;flex:none}
.opening-brand .eyebrow{font-size:14px;max-width:none}
.opening h1{font-size:clamp(36px,10.8vw,70px);line-height:1.1;margin:0 0 25px}
.opening .intro{font-size:16px;line-height:1.75;margin-bottom:21px;max-width:215px}
.opening .location{font-size:14px;margin-top:14px}
.opening-copy .book{display:none}
.opening-foot{position:absolute;left:6%;right:23%;bottom:26px;margin:0;padding:0;font-size:12px}
.opening-foot span{max-width:250px}
}
@media(prefers-reduced-motion:reduce){.opening-mark{animation:none;transform:none;opacity:1}.opening-loop-cover{display:none;transition:none}}
