:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-in-out:cubic-bezier(.65,0,.35,1)}
.beginning{padding-top:64px;padding-bottom:54px}.section{padding-top:48px;padding-bottom:48px}.photo-break img{aspect-ratio:3/2;object-fit:cover}.family{margin-top:35px}.family .relation{margin-left:4px}.invitation-copy{line-height:1.7}.transport-row{padding-top:25px;padding-bottom:25px}.calendar{padding:12px 0;margin-top:24px}.calendar .wedding{box-shadow:0 0 0 5px #24241e0c}.calendar.in-view .wedding{animation:date-settle .85s var(--ease-out) .15s both}.actions a,.actions button{transition:background-color .25s,transform .25s}.actions a:active{transform:scale(.96)}.actions a:hover,.actions button:hover{background:#ede8db}.photo-break{overflow:hidden}.album-help{margin-bottom:0!important}.quick-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}.transport dt{font-size:21px}.original-map{background:#faf7ed}.live-title{line-height:1.3}.live-meta{line-height:1.65}
@keyframes date-settle{from{transform:scale(.85);opacity:.4}to{transform:scale(1);opacity:1}}
button,a{-webkit-tap-highlight-color:transparent}button{transition:transform .22s var(--ease-out),background-color .22s,opacity .22s}button:active{transform:scale(.965)}
.living-scene .portrait{transition:opacity 3.6s var(--ease-in-out),filter 3.8s var(--ease-in-out)}.living-scene .drawing{transition:opacity 3.6s var(--ease-in-out)}
body.opened .live-card.show-drawing .living-scene>img.portrait,body.opened .live-card.show-drawing .living-scene>img.drawing{transition:opacity 1.15s var(--ease-out),filter 1.15s var(--ease-out)!important}
.scene-controls{height:58px;position:relative;display:grid;place-items:center}.scene-controls .open-hint{display:block!important;position:absolute;inset:0;height:58px;display:flex!important;align-items:center;justify-content:center;padding:0;transition:opacity .45s;visibility:visible}.opened .scene-controls .open-hint{opacity:0;pointer-events:none;visibility:hidden}.scene-controls .blend-toggle{display:block;position:relative;margin:0;opacity:0;visibility:hidden;transform:translateY(6px);animation:none!important;transition:opacity .65s ease,transform .65s var(--ease-out);min-height:40px}.opened .scene-controls .blend-toggle{visibility:visible;opacity:1;transform:none;transition-delay:2.8s}.opened .live-meta{margin-top:18px}.live-meta{margin-top:18px}
.motion-item{opacity:0;transform:translate3d(0,14px,0);transition:opacity .85s ease var(--stagger,0ms),transform 1s var(--ease-out) var(--stagger,0ms)}.motion-item.in-view{opacity:1;transform:none}.dots.motion-item{transform:scaleX(.88)}.dots.in-view{transform:scaleX(1)}
.album-open{overflow:hidden;isolation:isolate}.album-main{position:relative}.album-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.album-open>span{z-index:2}.album-strip button{transition:opacity .3s, border-color .3s,transform .4s var(--ease-out)}.album-strip button[aria-current=true]{transform:translateY(-2px)}
.quick-nav{isolation:isolate;transition:box-shadow .4s;gap:0}.opened .quick-nav{animation:nav-in .75s var(--ease-out) .9s both}.quick-nav a{position:relative;z-index:1;border:0!important;transition:color .3s}.nav-marker{position:absolute;z-index:0;top:8px;height:44px;background:#e7e3d7;border-radius:25px;left:0;transition:transform .5s var(--ease-out),width .5s var(--ease-out),opacity .25s;pointer-events:none}.quick-nav a[aria-current=true]{color:#161710}.reading-progress{opacity:.55;height:2px}
dialog{overflow:visible;max-width:100vw;max-height:100dvh}dialog::backdrop{background:#171711e8;backdrop-filter:blur(7px)}.viewer>img{max-height:75dvh;max-width:92vw;transform-origin:center;touch-action:pan-y}.viewer-controls,.close-viewer{transition:opacity .2s}.viewer-opening .viewer-controls,.viewer-opening .close-viewer{opacity:0}.viewer-controls button,.close-viewer{background:#ffffff12;backdrop-filter:blur(8px)}body.viewer-open{overflow:hidden;overscroll-behavior:none}.copy-status{transition:opacity .25s;min-height:26px}
@keyframes nav-in{from{opacity:0;transform:translate(-50%,12px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.motion-item{opacity:1;transform:none}.scene-controls .blend-toggle{transition-delay:0s}.opened .quick-nav{opacity:1;transform:translateX(-50%)}}
