.hero .opening-film,.hero .opening-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.hero #original{display:none}.hero[data-state=original] #original{display:block}
.hero[data-state=cover] #motion,.hero[data-state=opening] #motion{visibility:hidden}
.hero>video{transform:translateZ(0);backface-visibility:hidden}
.hero .opening-poster{z-index:2}.hero [hidden]{display:none!important}
.opening-copy{position:absolute;z-index:3;top:37.7%;left:36%;right:36%;height:32%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#244c76;pointer-events:none;opacity:0}
.opening-copy .invitation-from{font:400 1.75cqw/1.5 Georgia,serif;letter-spacing:.10em;text-transform:uppercase;margin:0 0 2.6cqw}
.opening-copy .paper-names{display:flex;flex-direction:column;gap:.25cqw;align-items:center;font:400 var(--paper-name-size,7.1cqw)/1.05 Pinyon,Georgia,serif;width:100%;margin:0;overflow-wrap:anywhere}
.paper-names span{display:block;max-width:100%;overflow-wrap:anywhere}.paper-names em{font:italic 2.8cqw/1.3 Georgia,serif}.opening-copy .paper-occasion{font:400 1.8cqw/1.5 Georgia,serif;letter-spacing:.02em;margin:2.5cqw 0 0}
.opening-copy .paper-date{font:400 1.7cqw/1.6 Georgia,serif;letter-spacing:.08em;text-transform:uppercase;margin:2.2cqw 0 0}
.opening-copy.cover-copy{color:#fffaf0;text-shadow:0 1px 6px #113650cc;top:37.5%;height:31%}
.hero[data-state=cover] .cover-copy{opacity:1}
.cover-copy .paper-date{margin-top:2.3cqw}.cover-copy .invitation-from{font-size:1.75cqw}
.open-invitation{position:absolute;z-index:4;bottom:17%;left:50%;transform:translateX(-50%);border:1px solid #244c7644;border-radius:0;background:#fffaf1e8;padding:1.9cqw 3.4cqw;min-height:44px;white-space:nowrap;color:#244c76;cursor:pointer;font:400 max(12px,2cqw)/1.4 Georgia,serif;letter-spacing:.05em;box-shadow:0 3px 14px #56422912}
.open-invitation span{display:inline-block;margin-left:1cqw}.hero[data-state=opening] .paper-copy{opacity:var(--paper-copy,0)}
.hero[data-state=cover]>.wording,.hero[data-state=opening]>.wording,.hero[data-state=handoff]>.wording{opacity:var(--hero-copy,0)}
.hero[data-state=opening] .cover-copy{opacity:var(--cover-copy,0)}
.hero[data-state=opening] .open-invitation,.hero[data-state=handoff] .open-invitation{display:none}
.opening-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.opening-actions button{min-height:44px;border:1px solid #b5c2c8;padding:10px 14px;background:transparent;color:#244d69;cursor:pointer;font:12px Arial,sans-serif}.opening-actions button:first-child{background:#244d69;color:white;border-color:#244d69}
.fields select{width:100%;min-width:0;padding:12px 9px;border:1px solid #afbec5;background:#fffcf6;color:#294c61;font:16px Georgia,serif}.fields .occasion-field{grid-column:1/-1}
@media(max-width:450px){.opening-copy .invitation-from{font-size:2cqw}.opening-copy .paper-occasion{font-size:2cqw}.opening-copy .paper-date{font-size:1.9cqw}}
