.opening-poster{max-width:var(--brand-container-wide);padding:clamp(2.5rem, 6vw, 5.5rem) var(--brand-gutter) 4rem;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(2rem,5vw,5rem);margin-inline:auto;display:grid}.opening-eyebrow{font-size:var(--brand-fs-caption);letter-spacing:.12em;text-transform:uppercase}.opening-date-wrap{width:fit-content;margin-block:2rem 2.5rem;position:relative}.opening-date{font-family:var(--brand-font-display);letter-spacing:-.065em;white-space:nowrap;font-size:clamp(6rem,12vw,11rem);line-height:.9}.opening-date-star{font-family:var(--brand-font-body);vertical-align:top;margin-left:.3em;font-size:.3em;display:inline-block;transform:rotate(12deg)}.opening-date-swoosh{width:88%;height:24px;position:absolute;bottom:-24px;left:0}.opening-headline{max-width:16ch;font-size:clamp(2rem,3.3vw,3.1rem)}.opening-lede{max-width:47ch;font-size:var(--brand-fs-body);margin-top:1.4rem}.opening-hero-link{border-bottom:1px solid;align-items:center;gap:2rem;min-height:48px;margin-top:1.5rem;font-weight:500;text-decoration:none;display:inline-flex}.opening-hero-link span{font-size:1.6rem}.opening-photo-layout{padding:1.5rem 1rem 2.5rem;position:relative}.opening-photo-print{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--brand-radius-sm);box-shadow:var(--brand-shadow-lg);padding:.8rem .8rem 0;rotate:3deg}.opening-photo-window{border-radius:45% 45% var(--brand-radius-xs) var(--brand-radius-xs);height:clamp(23rem,37vw,34rem);position:relative;overflow:hidden}.opening-photo-caption{font-size:var(--brand-fs-caption);letter-spacing:.1em;color:var(--brand-text-title);justify-content:space-between;gap:.5rem;padding:1rem .3rem;display:flex}.opening-sticker{background:var(--brand-invite-sticker);width:9rem;height:9rem;color:var(--brand-text-title);border:1px solid var(--brand-border-strong);border-radius:var(--brand-radius-pill);box-shadow:var(--brand-shadow-sm);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;font-size:.7rem;display:flex;position:absolute;bottom:5rem;left:-1rem;transform:rotate(-10deg)}.opening-sticker-hours{font-family:var(--brand-font-display);font-size:2.6rem;line-height:1.1}.opening-photo-spark{width:4rem;height:4rem;position:absolute;top:-.5rem;right:-.5rem}.opening-block{border-top:1px solid var(--brand-border)}.opening-block>div>header{max-width:44rem}.opening-block>div>div>p{max-width:65ch}.opening-block:has(.opening-reasons){padding-top:var(--brand-section-y)}.opening-tickets{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.opening-ticket{border:1px solid var(--brand-border);border-radius:var(--brand-radius-lg);background:var(--brand-surface);color:var(--brand-text-title);flex-direction:column;padding:1.2rem 1.5rem;display:flex;position:relative}.opening-ticket:nth-child(2){background:var(--brand-surface-invite-2);transform:rotate(-2deg)}.opening-ticket-label{font-size:var(--brand-fs-caption);color:var(--brand-accent-ink);letter-spacing:.1em;justify-content:space-between;display:flex}.opening-ticket-number{font-family:var(--brand-font-display);font-size:4.4rem;line-height:1.3}.opening-ticket-date{border-top:1px dashed var(--brand-border-strong);font-size:var(--brand-fs-body-sm);padding-top:.75rem}.opening-reasons{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}.opening-reason-number{font-family:var(--brand-font-display);color:var(--brand-accent-ink);margin-bottom:1.25rem;font-size:2.5rem;font-style:italic;display:block}.opening-request{border-top:1px solid var(--brand-border);scroll-margin-top:7rem}[lang|=zh] .opening-eyebrow,[lang|=zh] .opening-ticket-label{letter-spacing:0}@media (max-width:899px){.opening-poster{grid-template-columns:1fr;gap:2rem}.opening-date{font-size:clamp(6rem,20vw,10rem)}.opening-headline{max-width:none}.opening-photo-layout{justify-self:center;width:min(100%,34rem)}.opening-photo-window{height:clamp(22rem,65vw,30rem)}.opening-sticker{left:0}.opening-photo-spark{right:0}.opening-reasons{grid-template-columns:1fr;gap:2rem}}@media (max-width:480px){.opening-tickets{gap:.6rem}.opening-ticket{padding:1rem .7rem}.opening-ticket-number{font-size:3.2rem}.opening-ticket-label{font-size:.65rem}.opening-ticket-date{font-size:.75rem}.opening-photo-caption{font-size:.65rem}}
