:root{--ink:#3e2d39;--muted:#65505d;--rose:#714b63;--gold:#ac8750;--paper:#fffaf2;--line:#dac8c6;--ease:cubic-bezier(.22,.68,.18,1);--quick:180ms;--standard:550ms;--slow:1100ms;font-family:'DM Sans',sans-serif;color:var(--ink);background:#f6ebe7;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;height:100%;overflow:hidden}button,input,textarea,a{-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9c7292;outline-offset:4px}button{border:0;background:none}h1,h2,h3,p{margin:0}h1,h2,h3,.handwriting{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(55px,6.5vw,100px);line-height:.99;letter-spacing:-.055em}h2{font-size:clamp(40px,4.5vw,65px);line-height:1.02;letter-spacing:-.04em}h1 em,h2 em{font-weight:400;color:var(--rose)}h3{font-size:36px}p{font-size:14px;line-height:1.8}strong{font-weight:500}.eyebrow{font-size:9px;line-height:1.7;letter-spacing:.24em;font-weight:500;text-transform:uppercase;color:#8b6f58}h1:focus,h2:focus{outline:none}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:49px;padding:13px 23px;border-radius:28px;font-size:12px;line-height:1.5;transition:transform var(--quick),background var(--quick),box-shadow var(--quick)}.primary{background:var(--rose);color:#fffdf8;box-shadow:0 7px 22px #794e6a17}.primary:hover{background:#735065;transform:translateY(-2px);box-shadow:0 9px 23px #794e6a27}.primary:active{transform:scale(.98)}.secondary{border:1px solid var(--line);background:#fffdf6b0}.secondary:hover{background:#fffdf6}.text-button{display:inline-block;padding:10px 3px;font-size:11px;line-height:1.6;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b59aab80}.text-button:hover{text-decoration-color:currentColor}.tiny-note{font-size:10px;color:var(--muted)}
.masthead{height:80px;position:fixed;z-index:40;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:linear-gradient(#fcf7f1ed,#fcf7f100)}.wordmark{display:flex;align-items:center;gap:9px;font-size:22px;color:var(--gold);padding:8px 0}.wordmark span{font:italic 30px 'Cormorant Garamond',serif;color:#6e4c5d;letter-spacing:-1px}.wordmark small{font-family:'Cormorant Garamond';font-size:15px;border-left:1px solid #cbb7b0;padding-left:12px;margin-left:3px;color:#a78a6b}.top-actions{display:flex;align-items:center;gap:10px}.sound-button{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;min-height:38px;min-width:38px;padding:8px 11px;border:1px solid #b69c9545;border-radius:24px;background:#fff9ef99}.sound-button>span:first-child{font-size:17px}.sound-button[aria-pressed=true]{background:#876073;color:white;border-color:#876073}.skip-story{margin-left:10px;font-size:11px;min-height:40px}.skip-story span{margin-left:10px;font-size:16px}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:white;padding:15px}.skip-link:focus{top:10px}
#journey{height:100%;position:relative;background:radial-gradient(ellipse at 73% 48%,#f0d9f0aa,transparent 47%),linear-gradient(120deg,#faf4e9,#f5e5ea);overflow:hidden}.scene{position:absolute;inset:80px 0 82px;display:flex;align-items:safe center;justify-content:safe center;opacity:0;visibility:hidden;transform:translateY(18px) scale(.985);transition:opacity .6s var(--ease),transform .8s var(--ease),visibility .6s;pointer-events:none;z-index:5;padding:25px 7vw;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c4a2b4 transparent}.scene.active{opacity:1;visibility:visible;transform:none;pointer-events:auto}.scene>*{flex-shrink:0}.ambient{position:fixed;inset:0;pointer-events:none;z-index:12;opacity:.7}.ambient span{position:absolute;color:#b69761;font-size:15px;animation:float 8s ease-in-out infinite}.ambient span:after{content:'✧'}.ambient span:nth-child(1){left:9%;top:23%;animation-delay:-2s}.ambient span:nth-child(2){left:44%;top:15%;font-size:10px;animation-delay:-4s}.ambient span:nth-child(3){left:91%;top:32%;font-size:19px;animation-delay:-6s}.ambient span:nth-child(4){left:76%;top:86%;font-size:10px;animation-delay:-1s}.ambient span:nth-child(5){left:30%;top:84%;font-size:12px;animation-delay:-3s}.ambient span:nth-child(6){left:5%;top:68%;font-size:10px;animation-delay:-7s}.ambient span:nth-child(7){left:85%;top:13%;font-size:8px;animation-delay:-5s}
.intro-copy{width:48%;max-width:600px;z-index:4}.intro-copy .eyebrow{margin-bottom:28px}.intro-description{margin:27px 0;color:var(--muted);font-size:13px}.intro-copy .tiny-note{margin-top:15px}.gift-stage{width:48%;max-width:570px;aspect-ratio:1;position:relative;isolation:isolate;overflow:visible;border:0;padding:0;transition:transform 1.6s var(--ease)}.gift-split{position:absolute;inset:0;display:block;filter:drop-shadow(0 22px 27px #975a6a10);transition:transform 1.3s var(--ease),opacity .8s}.gift-split img{width:100%;height:100%;object-fit:contain}.gift-base{clip-path:polygon(0 51.2%,100% 51.2%,100% 100%,0 100%);z-index:2}.gift-lid{clip-path:polygon(0 0,100% 0,100% 51.4%,0 51.4%);z-index:3}.gift-stage:hover .gift-lid{transform:translateY(-5px) rotate(-1deg)}.gift-halo{position:absolute;inset:-5%;background:radial-gradient(ellipse,#ffedbd70,transparent 65%);border-radius:50%;animation:glow 6s ease-in-out infinite}.gift-shadow{position:absolute;left:13%;right:8%;bottom:0;height:6%;background:#764a5c20;filter:blur(15px);border-radius:100%}.gift-inner-light{position:absolute;left:14%;width:72%;top:48%;height:17%;background:#fff8cd;border-radius:50%;box-shadow:0 0 40px #fff3bd;opacity:0;transition:opacity .5s,transform 1.3s}.gift-label{position:absolute;right:0;top:61%;background:#fff8e5;border:1px solid #d1b779;width:85px;height:112px;box-shadow:3px 5px 14px #6a4a5020;transform:rotate(14deg);z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.gift-label span{font-size:8px;letter-spacing:2px}.gift-label strong{font:40px 'Cormorant Garamond';color:#b08b4f}.gift-label small{font:italic 13px 'Cormorant Garamond'}.orbit-star{position:absolute;font:38px 'Cormorant Garamond';color:#b08b4f;animation:float 7s ease-in-out infinite}.star-one{left:0;top:26%}.star-two{right:6%;top:8%;font-size:20px;animation-delay:-3s}.star-three{right:3%;bottom:0;animation-delay:-5s}.scene-caption{position:absolute;bottom:6px;font-size:8px;letter-spacing:.3em;color:#9e8289}.opening .gift-lid{transform:translateY(-30%) rotate(-13deg)}.opening .gift-inner-light{opacity:1;transform:scale(1.4)}.opening .gift-stage{transform:scale(1.15)}.portal-flash{position:absolute;left:69%;top:50%;width:100px;height:100px;border-radius:50%;background:radial-gradient(ellipse,#fff8e9 30%,#fff1dcb0 55%,transparent 70%);transform:translate(-50%,-50%) scale(0);z-index:20;pointer-events:none}.opening .portal-flash{animation:enterPortal 1.8s .3s var(--ease) forwards}
.book-heading{position:absolute;top:12px;left:0;right:0;text-align:center;z-index:3}.book-heading h2{font-size:clamp(35px,4vw,52px);margin-top:9px}.book-stage{position:absolute;top:30%;height:54%;width:min(70vw,800px);perspective:1400px;isolation:isolate}.book-pages{position:absolute;inset:0;transform:scale(.55) rotateX(12deg);opacity:.35;transition:transform 1.5s var(--ease),opacity 1s}.book-pages img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 15px #8b627e33)}.book-cover{position:absolute;left:29%;top:0;width:43%;height:98%;background:linear-gradient(120deg,#ad7b99,#d6b2c2 48%,#a37392);border:1px solid #c79c6f;border-radius:4px 12px 12px 4px;box-shadow:inset 7px 0 10px #60375830,6px 5px 0 #f4e8cd,9px 8px 0 #baa07d,20px 25px 36px #73576f2c;transform:rotateY(-14deg) rotateZ(-4deg);transform-origin:left;transition:transform 1.4s var(--ease),opacity 1s;backface-visibility:hidden}.cover-frame{border:1px solid #f5dca5;position:absolute;inset:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff3d9;gap:11px}.cover-frame:before{content:'';position:absolute;inset:5px;border:1px solid #f5dca555;pointer-events:none}.cover-frame small{font-size:8px;letter-spacing:.22em}.cover-frame strong{font:italic clamp(32px,4.5vw,65px) 'Cormorant Garamond'}.cover-frame em{font:italic 24px/1.1 'Cormorant Garamond'}.cover-star{font-size:30px}.cover-divider{font-size:12px}.book-action{position:absolute;bottom:29px}.book-note{position:absolute;bottom:2px;font-size:10px;color:var(--muted)}.book-opening .book-cover,.book-open .book-cover{transform:rotateY(-158deg) rotateZ(-4deg);opacity:0}.book-opening .book-pages,.book-open .book-pages{transform:scale(1) rotateX(0);opacity:1}.book-open .book-heading{opacity:.6}.book-entering .book-pages{transform:scale(3) translate(-11%,14%);opacity:0;transition:transform 1.5s var(--ease),opacity 1.4s}
.world{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity 1s var(--ease);z-index:1;background:#ead5e6}.world-art{position:absolute;inset:0;background:url('/art/castle-world.png') center 48%/cover no-repeat;transform:scale(var(--world-scale,1));transform-origin:50% 42%;will-change:transform;transition:filter 1s,transform 1.8s var(--ease)}.world-shade{position:absolute;inset:0;background:linear-gradient(#fff5e899,transparent 35%,transparent 65%,#f8f0e8dd);transition:background 1s}.cloud{position:absolute;background:#fff6fa99;filter:blur(35px);border-radius:50%;width:40%;height:25%;bottom:-4%;transition:transform 3s var(--ease),opacity 2s}.cloud-left{left:-15%;transform:translateX(calc(var(--walk,0)*-30%))}.cloud-right{right:-15%;transform:translateX(calc(var(--walk,0)*30%))}body[data-scene="2"] .world,body[data-scene="3"] .world,body[data-scene="4"] .world,body[data-scene="5"] .world,body[data-scene="6"] .world,body[data-scene="7"] .world,body[data-scene="8"] .world{opacity:1}.walking .world-art{transition:filter 1s;transform:scale(var(--world-scale,1))}body[data-scene="3"] .world-art{filter:blur(1px)}body[data-scene="4"] .world-art,body[data-scene="5"] .world-art,body[data-scene="6"] .world-art,body[data-scene="7"] .world-art,body[data-scene="8"] .world-art{filter:blur(4px) saturate(.75)}body[data-scene="4"] .world-shade,body[data-scene="5"] .world-shade,body[data-scene="6"] .world-shade,body[data-scene="7"] .world-shade,body[data-scene="8"] .world-shade{background:#f8ede8a3}.path-heading{position:absolute;top:12px;text-align:center;filter:drop-shadow(0 1px 8px #fff6e9)}.path-heading h2{margin-top:10px;font-size:clamp(38px,4.6vw,65px)}.path-bottom{position:absolute;bottom:10px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:12px}.path-bottom p{font-size:12px;background:#fff8efba;padding:4px 16px;border-radius:20px}.path-bottom .text-button{font-size:10px;background:#fff8ef99;border-radius:20px;padding:4px 14px}.walking .path-heading{opacity:0;transform:translateY(-20px);transition:all 1s}.walking .path-bottom{opacity:.9}.walking .path-bottom .primary{opacity:.5}.story-card{background:#fffaf2ed;box-shadow:0 18px 60px #69464a0d;border:1px solid #fffdf2;border-radius:6px;padding:42px 44px;position:relative;max-width:520px}.story-card:after{content:'';position:absolute;inset:8px;border:1px solid #bd9e7230;border-radius:3px;pointer-events:none}.story-card .eyebrow{margin-bottom:16px}.story-card>p:not(.eyebrow){margin-top:20px}.story-card>.primary{margin-top:25px}.story-card>.text-button{display:table;margin:15px auto 0}.olesya{object-fit:contain;filter:drop-shadow(0 15px 12px #805d6a12)}.welcome-olesya{height:min(95%,700px);width:43%;object-position:bottom}.welcome-card{margin-left:30px;width:46%;max-width:460px}.welcome-card p{font-size:13px}.handwriting{font-size:25px!important;font-style:italic;color:#92718a}.paper-star{position:absolute;right:32px;top:27px;color:#b18d51;font-size:23px}.details-scene{gap:9vw}.date-card,.location-card{width:49%;max-width:510px;padding:32px 40px}.date-card h2,.location-card h2{font-size:clamp(36px,3.5vw,53px)}.date-layout{display:flex;align-items:center;gap:22px;margin:18px 0;border-block:1px solid #ddcbbd;padding:14px 0}.date-number{font:100px/.95 'Cormorant Garamond';color:#a98264;letter-spacing:-.07em}.date-layout strong{font-size:10px;letter-spacing:.25em}.date-layout p{font:25px 'Cormorant Garamond';margin:4px 0 7px}.date-layout span:not(.date-number){font-size:12px}.date-layout small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.countdown-block>.eyebrow{font-size:8px;margin-bottom:9px;letter-spacing:.15em}.countdown{display:flex;align-items:center;justify-content:space-between;gap:10px}.countdown span{display:flex;flex-direction:column;align-items:center}.countdown b{font:34px 'Cormorant Garamond';font-variant-numeric:tabular-nums}.countdown small{font-size:8px;color:var(--muted)}.countdown i{font:20px 'Cormorant Garamond';color:#ba9ca6}.date-card>.primary{width:100%;margin-top:22px}.date-card>.text-button{margin-top:9px}.date-side{width:28%;position:relative;text-align:center;align-self:center}.outline-five{font:300px/.9 'Cormorant Garamond';color:#ab7b9780;position:absolute;top:-180px;left:0;right:0;z-index:-1;opacity:.5}.date-side p,.location-side p{font:42px/1.1 'Cormorant Garamond';letter-spacing:-.03em}.date-side p em,.location-side p em{color:#8b647b}.location-side{width:30%;text-align:center}.location-side>span{font:100px 'Cormorant Garamond';color:#b8945c;display:block;margin-bottom:15px}.venue{font-family:'Cormorant Garamond';font-size:29px;line-height:1.05!important}.location-card>.venue+ p{margin-top:8px;font-size:11px}.location-card>.primary{margin-top:18px}.access-ticket{border-top:1px dashed #c9b29b;margin-top:25px;padding-top:17px}.access-ticket>.eyebrow{font-size:8px}.pin-line{display:flex;align-items:center;gap:20px}.pin-line strong{font:42px 'Cormorant Garamond';letter-spacing:.12em;color:#9a7955}.copy-button{font-size:9px;border:1px solid #d7c2b4;border-radius:20px;padding:7px 12px}.access-ticket>p{font-size:10px;line-height:1.65;max-width:270px}.gifts-scene{gap:5vw}.gifts-art{width:42%;max-width:450px;position:relative}.gifts-art img{width:100%;height:auto;filter:drop-shadow(0 20px 20px #9b66802a);animation:float 8s ease-in-out infinite}.gifts-art>span{position:absolute;bottom:-10px;right:25px;font:italic 26px 'Cormorant Garamond';color:#8d687c;transform:rotate(-8deg)}.gifts-card{width:48%;max-width:510px}.gifts-card p{font-size:14px;max-width:350px}
.rsvp-scene{gap:7vw;align-items:center}.rsvp-intro{width:37%;max-width:460px;align-self:center;position:relative;height:95%;display:flex;flex-direction:column;align-items:center;text-align:center}.rsvp-intro h2{font-size:clamp(38px,4vw,58px);margin:12px 0 15px}.rsvp-intro>img{width:100%;min-height:0;flex:1;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 15px 15px #96778325)}.form-card{width:49%;max-width:490px;padding:25px 33px}.form-card>h3{font-size:32px}.form-card>p:not(.error){font-size:10px;margin:4px 0 14px;line-height:1.6}.form-card>label,.counts>div{display:block;font-size:10px;margin:12px 0 5px}.optional{font-size:9px;color:var(--muted);font-weight:400;margin-left:5px}input:not([type=radio]):not([type=checkbox]),textarea{border:1px solid #dbc7c6;border-radius:5px;background:#fffefa99;padding:10px 12px;color:var(--ink);font-size:12px;width:100%;resize:vertical;min-height:39px}input::placeholder,textarea::placeholder{color:#9d8891;font-size:10px}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.attendance{display:flex;border:0;padding:0;gap:8px;margin:12px 0 0}.attendance label{flex:1;font-size:10px;position:relative;cursor:pointer}.attendance input{position:absolute;opacity:0;width:100%;height:100%;margin:0;inset:0;cursor:pointer}.attendance label span{display:block;border:1px solid #d5c1c3;border-radius:4px;padding:10px 4px;text-align:center}.attendance input:checked+span{background:#f1e3ed;border-color:#a67c99}.attendance input:focus-visible+span{outline:3px solid #9c7292;outline-offset:3px}.counts{display:flex;gap:20px}.counts>div{flex:1;margin-top:12px}.stepper{display:flex;align-items:center;border:1px solid #dbc7c6;border-radius:5px;background:#fffefa99;margin-top:6px}.stepper button{width:40px;height:35px;flex-shrink:0;font-size:15px}.stepper input[type=number]{padding:3px;width:100%;height:30px;min-height:30px;border:0;background:transparent;text-align:center;font-size:11px}.counts.disabled{opacity:.4;pointer-events:none}#phone-help{font-size:9px;line-height:1.5;color:var(--muted);display:block;margin-top:5px}.form-card>.consent{display:flex;align-items:flex-start;gap:6px;font-size:9px;line-height:1.5;margin-top:9px}.consent input{accent-color:var(--rose);margin:1px 0 0;width:14px;height:14px;flex-shrink:0}.honeypot{display:none!important}.form-card>.primary{width:100%;margin-top:14px;min-height:43px;padding:10px;font-size:11px}.form-card>.privacy-note{font-size:8px!important;text-align:center;margin:8px 0 0!important}.error{color:#a14051;font-size:11px;line-height:1.5;margin-top:6px}.error:empty{display:none}.pass-card{text-align:center;max-width:530px;padding:28px 43px}.pass-star{font-size:28px;color:var(--gold);display:block;margin-bottom:12px}.pass-card h2{font-size:48px}.pass-card>p{font-size:13px}.pass-date{margin-top:18px;border-top:1px solid #dfcdb9;padding-top:18px;letter-spacing:.13em;font-size:10px}.pass-date span{display:block;font-size:10px;letter-spacing:0;margin-top:7px}.pass-date+p{font-size:12px;margin-top:6px}.pass-pin{margin:15px 0}.pass-pin small{font-size:8px;letter-spacing:.2em;display:block}.pass-pin strong{display:block;font:41px 'Cormorant Garamond';letter-spacing:.18em;color:#9b7851}.pass-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.pass-actions>*{font-size:10px;min-height:43px;padding:11px 18px}.pass-card>.text-button{margin-top:5px}#share-pass{display:block;margin:10px auto 0;font-size:10px}
.journey-footer{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;height:82px;padding:0 5vw;background:linear-gradient(#faf3ea00,#faf3eaf0 60%)}.back-button{font-size:11px;display:flex;align-items:center;gap:10px;min-height:40px;min-width:70px}.back-button:disabled{opacity:0;pointer-events:none}.chapters{display:flex;align-items:center;gap:24px;position:absolute;left:50%;transform:translateX(-50%)}.chapters button{display:flex;align-items:center;flex-direction:column;gap:7px;min-width:42px;min-height:44px;justify-content:center;position:relative;padding:5px 0}.chapters button:not(:last-child):after{content:'';width:39px;height:1px;background:#b89eab55;position:absolute;top:16px;left:34px}.chapters span{width:5px;height:5px;border-radius:50%;background:#c1a7af;transition:transform .3s,background .3s}.chapters small{font-size:8px;color:#866b78;white-space:nowrap}.chapters button[aria-current=step] span{transform:scale(1.5);background:#876073;box-shadow:0 0 0 4px #c69eaf26}.chapters button[aria-current=step] small{color:#684256}.footer-date{font-size:9px;letter-spacing:.25em;color:#8f7480}.toast{position:fixed;bottom:95px;left:50%;transform:translate(-50%,15px);background:#614b5bee;color:white;border-radius:25px;padding:12px 22px;font-size:11px;z-index:70;opacity:0;pointer-events:none;transition:all .3s;width:max-content;max-width:90vw;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{background:#fff9ef;color:var(--ink);border:1px solid #dfc8b3;border-radius:8px;box-shadow:0 30px 80px #59415635;padding:45px;max-width:520px;width:calc(100% - 34px);text-align:center}dialog::backdrop{background:#52435466;backdrop-filter:blur(6px)}dialog h2{font-size:40px;margin:16px 0}dialog p{font-size:12px;margin-bottom:22px}dialog .primary,dialog .secondary{width:100%;margin-top:10px}dialog .tiny-note{margin:15px 0 0;font-size:10px}.dialog-close{position:absolute;right:12px;top:8px;font-size:26px;padding:5px 10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.no-script{position:fixed;inset:0;background:#fff9ee;z-index:100;padding:40px}.no-script h1{font-size:40px;margin-bottom:20px}
@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-9px) rotate(1deg)}}@keyframes glow{0%,100%{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1.04)}}@keyframes enterPortal{0%{transform:translate(-50%,-50%) scale(0);opacity:0}35%{transform:translate(-50%,-50%) scale(2);opacity:1}72%{transform:translate(-50%,-50%) scale(28);opacity:1}100%{transform:translate(-50%,-50%) scale(35);opacity:0}}
@media(min-width:1500px){.scene{padding-inline:max(7vw,calc((100vw - 1300px)/2))}}
@media(max-height:800px) and (min-width:761px){.scene{inset:66px 0 66px;padding-top:10px;padding-bottom:10px}.masthead{height:66px}.journey-footer{height:66px}.story-card{padding:24px 30px}.welcome-card h2{font-size:50px}.date-card h2,.location-card h2{font-size:40px}.date-layout{margin:12px 0;padding:9px 0}.date-number{font-size:75px}.story-card .eyebrow{margin-bottom:10px}.date-card>.primary{margin-top:15px}.form-card{padding:16px 26px}.form-card>p:not(.error){margin:2px 0 8px}.form-card>label,.counts>div{margin-top:8px}.form-card .primary{margin-top:8px}.form-card input:not([type=radio]):not([type=checkbox]){min-height:33px;padding-block:7px}.form-card h3{font-size:29px}.form-card textarea{min-height:43px;height:43px}.form-card .counts input{height:29px;min-height:29px!important}.pass-card h2{font-size:40px}.pass-card .pass-star{margin-bottom:5px}.pass-card>p{margin-top:10px!important}.pass-card{padding:20px 35px}.pass-pin{margin:10px 0}.book-heading h2{font-size:38px}}
@media(max-width:760px){.masthead{height:66px;padding:0 22px}.wordmark span{font-size:26px}.wordmark small{font-size:12px;padding-left:9px}.wordmark{gap:7px}.top-actions{gap:6px}.sound-button{min-width:34px;min-height:34px;padding:6px}.sound-label{display:none}.skip-story{font-size:9px;margin-left:4px}.skip-story span{margin-left:3px}.scene{inset:66px 0 73px;padding:15px 22px;flex-direction:column;justify-content:center;gap:0}.scene.active{transform:none}#scene-0{justify-content:flex-start;text-align:center;padding-top:19px}.intro-copy{width:100%;max-width:460px;display:contents}.intro-copy .eyebrow{font-size:7px;letter-spacing:.2em;margin-bottom:12px;order:0}h1{font-size:clamp(43px,10.5vw,64px);line-height:1.01;letter-spacing:-.04em}.intro-copy h1{order:1}.intro-description{order:2;font-size:10px;line-height:1.7;margin:12px 0 0}.gift-stage{order:3;flex:1;min-height:130px;max-height:46%;width:80%;max-width:330px;aspect-ratio:1;margin:10px 0}.gift-split{aspect-ratio:1;height:100%;width:auto;max-width:100%;left:50%;transform:translateX(-50%)}.gift-stage:hover .gift-lid{transform:translateX(-50%)}.gift-label{width:56px;height:76px;top:57%;right:0}.gift-label strong{font-size:29px}.gift-label span{font-size:6px}.gift-label small{font-size:10px}.star-one{left:-10px}.intro-copy>.primary{order:4;min-height:44px;font-size:11px;margin-top:3px;padding-inline:24px}.intro-copy>.tiny-note{order:5;font-size:8px;margin-top:9px}.scene-caption{display:none}.opening .gift-lid{transform:translate(-50%,-29%) rotate(-13deg)}.portal-flash{left:50%;top:57%}.orbit-star{font-size:27px}.book-heading{top:12px}.book-heading h2{font-size:36px}.book-heading .eyebrow{font-size:8px}.book-stage{top:34%;height:46%;width:95vw}.book-cover{width:51%;left:25%;height:95%}.cover-frame{inset:9px;gap:9px}.cover-frame strong{font-size:43px}.cover-frame small{font-size:6px}.cover-frame em{font-size:21px}.cover-star{font-size:24px}.book-action{bottom:32px;min-height:43px;font-size:10px}.book-note{font-size:8px;bottom:5px}.book-pages{inset:-10% -2%}.book-entering .book-pages{transform:scale(3.8) translate(-12%,12%)}.world-art{background-size:auto 100%;background-position:50% 50%}.path-heading{top:20px}.path-heading .eyebrow{font-size:7px}.path-heading h2{font-size:42px;margin-top:10px}.path-bottom{bottom:14px;gap:10px;width:100%;padding:0 20px}.path-bottom p{font-size:10px;max-width:300px}.path-bottom .primary{font-size:11px}.path-bottom .text-button{font-size:9px}.world-shade{background:linear-gradient(#fff5e8aa,transparent 40%,transparent 65%,#f8f0e8ee)}.castle-scene{justify-content:flex-end}.welcome-olesya{position:absolute;left:4%;bottom:37%;height:61%;width:70%;object-position:center bottom;z-index:0}.welcome-card{width:100%;max-width:400px;margin:0;padding:25px 28px;z-index:2}.welcome-card h2{font-size:43px}.welcome-card h2 br{display:none}.welcome-card .eyebrow{font-size:7px;margin-bottom:10px}.welcome-card p{font-size:11px;margin-top:10px!important}.welcome-card .handwriting{font-size:22px!important;margin-top:6px!important}.welcome-card>.primary{margin-top:15px;width:100%;font-size:10px;min-height:44px}.paper-star{top:20px;right:22px;font-size:21px}.details-scene{justify-content:center}.date-card,.location-card{width:100%;max-width:420px;padding:30px 28px}.story-card .eyebrow{font-size:7px}.date-card h2,.location-card h2{font-size:42px}.date-side,.location-side{display:none}.date-layout{margin:17px 0}.date-number{font-size:88px}.date-layout p{font-size:25px}.countdown b{font-size:34px}.countdown-block>.eyebrow{font-size:7px}.date-card>.primary{min-height:44px;font-size:11px}.date-card>.text-button{font-size:10px}.location-card .venue{font-size:27px;margin-top:17px!important}.location-card>.primary{min-height:44px;font-size:11px}.location-card>.text-button{font-size:10px}.access-ticket{margin-top:22px;padding-top:16px}.pin-line strong{font-size:40px}.gifts-scene{justify-content:flex-end}.gifts-art{width:56%;max-width:250px;position:absolute;top:1%;right:8%}.gifts-art>span{display:none}.gifts-card{width:100%;padding:27px 28px;max-width:420px;z-index:2}.gifts-card h2{font-size:44px}.gifts-card p{font-size:12px}.gifts-card>.primary{font-size:10px;min-height:44px;width:100%}.gifts-card>.handwriting{font-size:24px!important}.rsvp-scene{display:block;padding:15px 20px 25px;overflow-y:auto;overscroll-behavior:contain}.rsvp-intro{width:100%;height:auto;max-width:420px;margin:0 auto;text-align:center}.rsvp-intro .eyebrow{font-size:7px}.rsvp-intro h2{font-size:34px;line-height:1.03;margin:10px 0 20px}.rsvp-intro h2 br{display:none}.rsvp-intro>img{display:none}.form-card{width:100%;max-width:420px;margin:auto;padding:24px}.form-card h3{font-size:31px}.form-card>p:not(.error){font-size:11px}.form-card>label,.counts>div{font-size:11px;margin-top:15px}input:not([type=radio]):not([type=checkbox]),textarea{font-size:16px;min-height:43px;padding:10px}input::placeholder,textarea::placeholder{font-size:11px}.form-card .consent{font-size:10px}.attendance label{font-size:10px}.attendance label span{padding:11px 3px}.stepper button{height:39px;width:42px}.stepper input[type=number]{height:37px;min-height:37px;font-size:13px}#phone-help{font-size:10px}.form-card>.primary{min-height:46px;font-size:11px}.form-card>.privacy-note{font-size:9px!important}.pass-scene{padding-block:15px}.pass-card{padding:22px;width:100%;max-width:420px}.pass-card h2{font-size:39px}.pass-star{font-size:24px;margin-bottom:10px}.pass-card>p{font-size:12px;margin-top:12px!important}.pass-date{font-size:8px;margin-top:12px;padding-top:13px}.pass-pin{margin:11px 0}.pass-pin strong{font-size:37px}.pass-actions{gap:8px}.pass-actions>*{font-size:10px;padding-inline:13px;min-height:42px}.pass-card>.text-button{font-size:9px}.journey-footer{height:73px;padding:0 18px;align-items:center}.chapters{gap:11px}.chapters button{min-width:28px;min-height:45px}.chapters button:not(:last-child):after{width:20px;left:25px;top:17px}.chapters small{font-size:6px}.back-button{min-width:24px;padding:6px 0;font-size:20px;justify-content:center}.back-button span{display:none}.footer-date{font-size:7px;letter-spacing:0;width:38px;text-align:right}.toast{bottom:80px}.ambient span:nth-child(2){left:36%;top:13%}dialog{padding:35px 23px}dialog h2{font-size:35px}dialog p{font-size:11px}dialog>.eyebrow{font-size:7px}}
@media(max-width:760px) and (max-height:720px){.scene{inset:60px 0 62px}.masthead{height:60px}.journey-footer{height:62px}#scene-0{padding-top:8px}.intro-copy .eyebrow{margin-bottom:7px}h1{font-size:43px}.intro-description{font-size:9px;margin-top:9px}.gift-stage{max-height:42%;margin-block:5px}.intro-copy .tiny-note{margin-top:7px}.intro-copy>.primary{min-height:39px}.book-heading h2{font-size:31px}.book-stage{top:32%;height:43%}.book-action{bottom:27px;min-height:40px}.cover-frame{gap:5px}.cover-frame em{font-size:18px}.cover-frame strong{font-size:36px}.date-card,.location-card{padding:22px 25px}.date-card h2,.location-card h2{font-size:36px}.date-layout{padding:10px 0;margin:12px 0}.date-number{font-size:70px}.date-card>.primary{margin-top:15px}.countdown b{font-size:29px}.location-card .venue{font-size:23px}.location-card>.primary{margin-top:13px}.access-ticket{margin-top:15px;padding-top:12px}.pin-line strong{font-size:34px}.gifts-card{padding:22px 24px}.gifts-card h2{font-size:38px}.gifts-card>p{margin-top:14px!important}.gifts-card>.primary{margin-top:16px}.gifts-art{width:44%;top:-3%}.welcome-card{padding:22px}.welcome-card h2{font-size:38px}.welcome-olesya{bottom:41%;height:57%}.pass-card{padding:17px 22px}.pass-card h2{font-size:33px}.pass-card .eyebrow{margin-bottom:8px}.pass-star{margin-bottom:7px;font-size:21px}.pass-card>p{margin-top:9px!important}.pass-pin{margin:8px 0}.pass-date{margin-top:9px;padding-top:9px}.pass-pin strong{font-size:32px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.gift-stage:hover .gift-lid{transform:none}.world-art{will-change:auto}.scene{transform:none!important}.book-entering .book-pages{transform:scale(1)!important}.ambient{display:none}}

/* Keep overflowing scenes scrollable from their first line on short screens. */
.scene{align-items:safe center;justify-content:safe center}
@media(max-width:760px){#scene-0{justify-content:flex-start}.castle-scene,.gifts-scene{justify-content:safe flex-end}.details-scene{justify-content:safe center}.counts>div>label{display:block}}

@media(max-width:380px){.footer-date{visibility:hidden}.date-layout{gap:15px}.date-layout p{font-size:22px}.date-layout>div{min-width:0}}
