.entry-visible{overflow:hidden}
.invitation-entry{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:auto;background:#f8f6ee;color:#254b39;opacity:1;transition:opacity .38s ease,transform .38s ease}
.invitation-entry.entry-leaving{opacity:0;transform:scale(1.015);pointer-events:none}
.entry-layout{position:relative;width:min(100%,177.7778svh);aspect-ratio:16/9;flex-shrink:0}
.entry-film{position:absolute;inset:0;overflow:hidden}
.entry-video{display:block;width:100%;height:100%;object-fit:contain;background:#f8f6ee}
.entry-video.entry-poster{object-fit:contain;background:#f8f6ee url('assets/doves-entry-poster.webp') center/contain no-repeat}
.entry-video.entry-poster{visibility:hidden}
.entry-film:has(.entry-poster){background:url('assets/doves-entry-poster.webp') center/contain no-repeat}
.entry-skip{position:absolute;top:max(20px,env(safe-area-inset-top));right:max(24px,env(safe-area-inset-right));z-index:2;min-height:44px;padding:10px 18px;border:1px solid #b7a47980;border-radius:25px;background:#f8f6eeeb;color:#52634e;font:12px Manrope,Arial,sans-serif;letter-spacing:.3px}
.entry-skip span{margin-left:12px}
.entry-envelope{position:absolute;left:37%;top:36%;width:26%;height:28%;background:transparent;border-radius:6px;cursor:pointer}
.entry-open{position:absolute;left:40.7%;top:86.6%;width:18.6%;height:5.9%;min-height:44px;border-radius:50px;background:transparent;color:transparent;opacity:0;pointer-events:none}
.entry-open>span{color:transparent}
.entry-ready .entry-open{opacity:1;pointer-events:auto}
.entry-envelope:disabled{pointer-events:none}
.entry-open:focus-visible,.entry-envelope:focus-visible{outline:3px solid #b29753;outline-offset:5px}
.entry-message{display:none}
.entry-screen-reader{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){
  .invitation-entry{padding:76px 0 max(36px,env(safe-area-inset-bottom));align-items:center}
  .entry-layout{width:100%;max-width:540px;aspect-ratio:auto;display:flex;flex-direction:column;align-items:center;gap:0}
  .entry-film{position:relative;width:100%;aspect-ratio:1.8;flex:none}
  .entry-video{position:absolute;top:0;left:-25%;width:150%;height:auto;max-width:none;object-fit:initial}
  .entry-film:has(.entry-poster){background:url('assets/doves-entry-poster.webp') center top/150% auto no-repeat}
  .entry-video.entry-poster{visibility:hidden}
  .entry-envelope{left:21%;top:52%;width:58%;height:44%}
  .entry-message{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;padding:20px 24px 0;opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .7s ease}
  .entry-ready .entry-message{opacity:1;transform:none}
  .entry-rule{height:1px;width:46px;background:#bda765;margin:0 0 23px}
  .entry-message .entry-names{font:400 clamp(27px,7.5vw,39px)/1.2 Georgia,serif;margin:0;color:#254b39}
  .entry-names span{white-space:nowrap}
  .entry-message .entry-married{font:italic 23px/1.45 Georgia,serif;margin:16px 0 0;color:#53634d}
  .entry-message .entry-invited{font:18px/1.5 Georgia,serif;margin:16px 0 0;color:#687363}
  .entry-open{position:relative;left:auto;top:auto;width:min(280px,calc(100% - 64px));height:auto;min-height:56px;margin:30px 0 0;padding:15px 24px;background:#254b39;border:1px solid #bda765;color:#fffaf0;font:18px/1.4 Georgia,serif;transition:opacity .6s ease}
  .entry-open>span{color:inherit}
  .entry-skip{top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));font-size:11px}
}
@media(max-width:370px){.entry-message .entry-names{max-width:300px;font-size:27px}.entry-message{padding-top:12px}.entry-rule{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.invitation-entry,.entry-message,.entry-open{transition:none;transform:none}}
