.opening{position:fixed;inset:0;z-index:500;background:#351221;color:#f8f7f3;visibility:hidden;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:35px var(--gutter) 32px;overflow:hidden}.intro-pending .opening{visibility:visible;pointer-events:auto}.intro-locked{overflow:hidden}.opening-top{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.opening-top>span{display:flex;align-items:center;gap:15px}.opening-top b{display:grid;place-items:center;border:1px solid #986674;width:42px;height:42px;font-family:var(--serif);font-size:23px;font-weight:400}.opening button{color:#eee2e5;background:transparent;border-bottom:1px solid #986674;font-size:12px;letter-spacing:.02em;text-transform:none;padding:10px 0;min-width:70px;min-height:44px}.opening-content{position:relative;padding-block:35px}.opening-content:before{content:'';position:absolute;right:0;top:50%;width:35%;height:1px;background:#754253;transform-origin:right;animation:opening-rule 1.4s ease both .5s}.opening-content .eyebrow{color:#c6aeaf;margin-bottom:22px;animation:opening-rise .7s both .1s}.opening-name{font-family:var(--serif);font-size:clamp(68px,10vw,160px);line-height:.91;letter-spacing:-.03em;position:relative;z-index:1}.opening-name span{display:block;overflow:hidden;padding-bottom:10px}.opening-name span i{display:block;font-style:normal;animation:opening-name .9s cubic-bezier(.16,1,.3,1) both .2s}.opening-name span:last-child i{color:#c3c3a8;font-style:italic;animation-delay:.4s}.opening-caption{font-size:clamp(17px,2vw,25px);margin-top:28px;color:#e4d5d8;animation:opening-rise .8s both .75s}.opening-bottom{display:flex;gap:35px;align-items:center;font-size:11px;color:#c5acb3}.opening-bottom .opening-track{height:1px;background:#754253;flex:1;position:relative;overflow:hidden}.opening-track:before{content:'';position:absolute;inset:0;background:#c3c3a8;transform-origin:left;animation:opening-rule 3.45s cubic-bezier(.4,0,.2,1) both}.opening.leaving{clip-path:inset(0 0 100% 0);transition:clip-path .65s cubic-bezier(.77,0,.175,1)}.opening.quiet *{animation:none!important}.opening.quiet.leaving{visibility:hidden}.intro-complete .hero h1{animation:opening-rise .85s both .1s}.intro-complete .hero-intro{animation:opening-rise .8s both .2s}.intro-complete .hero .actions{animation:opening-rise .8s both .3s}.intro-complete .hero-portrait{animation:opening-rise 1s both .15s}@keyframes opening-name{from{transform:translateY(115%)}to{transform:translateY(0)}}@keyframes opening-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes opening-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media(max-width:600px){.opening{padding-block:22px}.opening-top{font-size:9px}.opening-top>span{gap:10px}.opening-name{font-size:clamp(63px,17vw,95px)}.opening-content:before{width:20%;top:38%}.opening-content .eyebrow{font-size:10px}.opening-caption{font-size:18px;max-width:24ch}.opening-bottom{gap:18px;font-size:10px}.opening-bottom span:last-child{display:none}}

.intro-pending .opening.leaving{opacity:0;clip-path:inset(0 0 12% 0);transition:opacity 1.05s cubic-bezier(.3,0,.2,1),clip-path 1.1s cubic-bezier(.3,0,.2,1)!important}.intro-pending .opening.quiet.leaving{visibility:visible;clip-path:none;opacity:0;transition:opacity .95s ease!important}.opening-content .opening-caption{max-width:34ch}.intro-complete .hero h1,.intro-complete .hero-intro,.intro-complete .hero .actions,.intro-complete .hero-portrait{animation-delay:.35s}.opening-top button:focus:not(:focus-visible){outline:none}
