/* Two direct-manipulation layers, with the actual invitation underneath. */
.paper,.paper .content,.section-nav,.details-paper{animation:none!important;clip-path:none;transform:none;opacity:1}.fold-stage{display:none!important}
.entrance[hidden],.swipe-surface[hidden]{display:none!important}
body.entrance-active{overflow:hidden;overscroll-behavior:none;height:100dvh}
.entrance{position:fixed;inset:0;z-index:100;overflow:hidden;isolation:isolate;overscroll-behavior:none}
.swipe-surface{position:absolute;inset:0;touch-action:pinch-zoom;user-select:none;-webkit-user-select:none;cursor:grab;will-change:transform;transform:translate3d(0,0,0)}
.swipe-surface.dragging{cursor:grabbing}
.tartan-slide{z-index:2;background:#153e34 url('assets/tartan-background.webp') center/cover no-repeat;box-shadow:12px 0 40px #0005}
.cover-seal{position:absolute;top:38%;left:50%;width:clamp(170px,48vw,238px);height:auto;transform:translate(-50%,-50%);filter:drop-shadow(0 9px 11px #0006);pointer-events:none;-webkit-user-drag:none}
.swipe-hint{position:absolute;bottom:max(50px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);border:1px solid #fff4;border-radius:4px;background:#142b24e8;color:#fff3dc;min-height:64px;width:max-content;max-width:calc(100% - 40px);padding:14px 20px;font:500 1.125rem/1.5 'Cormorant Garamond',Georgia,serif;cursor:pointer;box-shadow:0 5px 18px #0002;text-align:center}
.swipe-hint>span:first-child{display:inline-block;margin-right:10px;font-family:Georgia,serif}.hint-detail{display:block;font-size:.875rem;color:#e3dbc9;letter-spacing:.03em}
.tartan-hint{top:62%;right:10px;bottom:auto;left:auto;transform:translateY(-50%);display:flex;align-items:center;gap:8px;min-height:58px;padding:10px 12px 10px 10px;border-color:#fff3;background:#112c25b8;text-align:left;line-height:1.15;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.tartan-hint .swipe-arrow{font:2rem/1 Georgia,serif;margin:0;color:#fff0ce}
.entrance button:focus-visible{outline:3px solid #ddbe8a;outline-offset:5px}
.photo-slide{z-index:1;background:transparent;display:grid;place-items:center;padding:24px 0 120px}
.instax-wrap{width:min(90vw,calc((100svh - 140px)*.6665),500px);filter:drop-shadow(4px 14px 14px #0005);pointer-events:none}
.instax-image{display:block;width:100%;height:auto;-webkit-user-drag:none}
.photo-hint{bottom:max(26px,env(safe-area-inset-bottom));background:#eee1c7f5;color:#493723;border-color:#967a5366}.photo-hint .hint-detail{color:#64523a}
.invitation{margin-top:max(74px,11svh)}
@media(min-width:800px){.instax-wrap{width:min(520px,calc((100svh - 100px)*.6665))}.photo-slide{padding-bottom:75px}.cover-seal{width:250px}.tartan-hint{top:55%;right:24px}}
@media(prefers-reduced-motion:no-preference){.cover-seal{animation:seal-arrive .8s cubic-bezier(.2,.7,.2,1) both}@keyframes seal-arrive{from{opacity:0;transform:translate(-50%,-50%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.swipe-hint>span:first-child{animation:swipe-cue 2s ease-in-out infinite}@keyframes swipe-cue{0%,100%{transform:translateX(0)}50%{transform:translateX(-7px)}}}
@media(prefers-reduced-motion:reduce){.swipe-hint>span:first-child{animation:none}.swipe-surface{will-change:auto}}
@media print{.entrance{display:none!important}body.entrance-active{overflow:visible;height:auto}}
