@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Mrs+Saint+Delafield&display=swap";.wish-cake{width:min(100%,360px);margin-inline:auto;color:#4b2b34;text-align:center}.wish-cake-art{width:100%;margin:0 auto 6px}.wish-cake-art>svg{display:block;width:100%;height:auto;overflow:visible}.wish-flame-wrap{opacity:1;transition:opacity .32s ease}.wish-flame{animation:wish-candle-flicker 2.3s ease-in-out infinite alternate}.wish-flame-wrap--1 .wish-flame{animation-delay:-1.2s;animation-duration:2.7s}.wish-cake--wished .wish-flame-wrap{opacity:0}.wish-cake-smoke{opacity:0;transform:translateY(0)}.wish-cake--wished .wish-cake-smoke{animation:wish-smoke-drift 1.5s ease-out both}.wish-message{min-height:62px;margin:0 4px 18px}.wish-message-title{margin:0 0 7px;font-family:var(--font-serif, Georgia, serif);font-size:clamp(19px,4.8vw,22px);font-weight:400;line-height:1.4;letter-spacing:-.02em}.wish-message-caption{margin:0;color:#866d71;font-size:12px;line-height:1.65}.wish-button{display:inline-flex;min-height:49px;align-items:center;justify-content:center;gap:25px;border:1px solid #8b3f51;border-radius:100px;padding:13px 24px;background:#8b3f51;color:#fbf6ec;font:inherit;font-size:13px;letter-spacing:.02em;cursor:pointer;transition:background-color .18s ease,transform .18s ease;-webkit-tap-highlight-color:transparent}.wish-button>svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.wish-button:focus-visible{outline:2px solid #ba9665;outline-offset:5px}.wish-button:active{transform:scale(.97)}.wish-cake--wished .wish-button{background:transparent;color:#8b3f51}@media(hover:hover){.wish-button:hover{background:#743144}.wish-cake--wished .wish-button:hover{background:#f4e8e3}}@keyframes wish-candle-flicker{0%,to{transform:rotate(-3deg) scaleX(.96)}50%{transform:rotate(3deg) scale(1.04,.96)}}@keyframes wish-smoke-drift{0%{opacity:0;transform:translateY(0)}20%{opacity:.7}to{opacity:0;transform:translateY(-20px)}}@media(prefers-reduced-motion:reduce){.wish-flame,.wish-cake--wished .wish-cake-smoke{animation:none}.wish-flame-wrap,.wish-button{transition:none}}.birthday-party-art{width:min(100%,490px);aspect-ratio:1;margin-inline:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.birthday-party-art>svg{display:block;width:100%;height:auto;overflow:visible}.birthday-party-balloon{transform-box:fill-box;transform-origin:50% 100%;animation:birthday-party-drift 7s ease-in-out infinite alternate}.birthday-party-balloon--two{animation-delay:-3s;animation-duration:8s}.birthday-party-balloon--three{animation-delay:-5s;animation-duration:9s}.birthday-party-balloon--four{animation-delay:-2s;animation-duration:6.5s}.birthday-party-numbers{animation:birthday-party-float 8s ease-in-out infinite alternate}@keyframes birthday-party-drift{0%{transform:translateY(2px) rotate(-.8deg)}to{transform:translateY(-4px) rotate(.8deg)}}@keyframes birthday-party-float{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.birthday-party-balloon,.birthday-party-numbers{animation:none}}.birthday-prelude{width:min(100%,440px);margin-inline:auto;padding:30px 27px 24px;border:1px solid #d8c3aa80;border-radius:180px 180px 14px 14px;background:linear-gradient(165deg,#fffaf3,#f7ecdf);color:#4b2b34;box-sizing:border-box;box-shadow:0 14px 45px #79504b04}.birthday-prelude-topline{display:flex;align-items:center;justify-content:center;gap:9px;max-width:300px;margin:20px auto 0;color:#9a7967;font-size:8px;font-weight:500;line-height:1.8;letter-spacing:1.15px;text-align:center}.birthday-prelude-topline>span{width:14px;height:1px;flex-shrink:0;background:#c5a47d}.birthday-prelude-illustration{width:min(100%,270px);margin:6px auto 15px}.birthday-prelude-illustration>svg{display:block;width:100%;height:auto;overflow:visible}.birthday-prelude-envelope{animation:birthday-prelude-float 5s ease-in-out infinite alternate}.birthday-prelude-letter{transform:translateY(0);transition:transform .65s cubic-bezier(.22,1,.36,1)}.birthday-prelude--ready .birthday-prelude-letter{transform:translateY(-9px)}.birthday-prelude-steps{display:grid;gap:9px}.birthday-prelude-step{display:flex;align-items:center;gap:12px;width:100%;min-height:75px;padding:12px 13px;border:1px solid #d9c8b77a;border-radius:7px;background:#fffcf760;color:inherit;font:inherit;text-align:left;transition:background-color .22s ease,border-color .22s ease,transform .22s ease;-webkit-tap-highlight-color:transparent}.birthday-prelude-step:disabled{opacity:1;cursor:default}.birthday-prelude-step--active{border-color:#b78887;background:#fffaf3;cursor:pointer;box-shadow:0 3px 12px #8f3c5205}.birthday-prelude-step--done{border-color:#d8c2b6;background:#f2e5dc}.birthday-prelude-step-icon{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;border:1px solid #b68c8273;border-radius:50%;color:#8f3c52;transition:background-color .22s ease,color .22s ease}.birthday-prelude-step--done .birthday-prelude-step-icon{border-color:#8f3c52;background:#8f3c52;color:#fff5e7}.birthday-prelude-step-copy{display:grid;min-width:0;gap:4px}.birthday-prelude-step-copy>span{font-family:var(--font-serif, Georgia, serif);font-size:18px;line-height:1.3;font-weight:400;letter-spacing:-.025em}.birthday-prelude-step-copy>small{color:#917575;font-size:10px;line-height:1.5}.birthday-prelude-step-tail{display:grid;width:16px;flex:0 0 16px;place-items:center;margin-left:auto;color:#a8857b;font-size:9px}.birthday-prelude-dot{width:4px;height:4px;border-radius:50%;background:#ad7f83}.birthday-prelude-bottom{display:flex;align-items:center;justify-content:center;min-height:65px;margin-top:14px}.birthday-prelude-hint{margin:0;color:#967d75;font-size:11px;line-height:1.6;text-align:center}.birthday-prelude-cta{display:flex;width:100%;min-height:49px;align-items:center;justify-content:center;gap:10px;border:1px solid #8f3c52;border-radius:100px;padding:13px 15px;background:#8f3c52;color:#fff7ea;font:inherit;font-size:12px;cursor:pointer;transition:background-color .18s ease;-webkit-tap-highlight-color:transparent}.birthday-prelude-cta>span{color:#e4bac1;font-family:var(--font-serif, Georgia, serif);font-size:14px;font-style:italic}.birthday-prelude-step:focus-visible,.birthday-prelude-cta:focus-visible{outline:2px solid #bd965c;outline-offset:4px}.birthday-prelude-countdown{display:flex;min-height:59px;align-items:center;justify-content:center;gap:23px;color:#8f3c52}.birthday-prelude-countdown>span{font-size:12px;line-height:1.5}.birthday-prelude-countdown>strong{display:block;width:31px;font-family:var(--font-serif, Georgia, serif);font-size:48px;font-weight:400;line-height:1;text-align:center;animation:birthday-prelude-count-in .5s cubic-bezier(.22,1,.36,1) both}.birthday-prelude-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:hover){.birthday-prelude-step--active:hover{background:#fdf1e6;transform:translate(2px)}.birthday-prelude-cta:hover{background:#783046}}@media(max-width:390px){.birthday-prelude{padding:22px 14px 16px}.birthday-prelude-topline{max-width:220px;font-size:7px;letter-spacing:.9px}.birthday-prelude-illustration{width:min(100%,220px);margin-bottom:9px}.birthday-prelude-step{gap:9px;min-height:74px;padding:12px 10px}.birthday-prelude-step-copy>span{font-size:16px}.birthday-prelude-step-copy>small{font-size:9px}.birthday-prelude-step-icon{width:31px;height:31px;flex-basis:31px}}@keyframes birthday-prelude-float{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@keyframes birthday-prelude-count-in{0%{opacity:0;transform:translateY(7px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.birthday-prelude-envelope,.birthday-prelude-countdown>strong{animation:none}.birthday-prelude-letter,.birthday-prelude-step,.birthday-prelude-step-icon,.birthday-prelude-cta{transition:none}.birthday-prelude-step--active:hover{transform:none}}:root{font-family:Be Vietnam Pro,sans-serif;color:#493a38;background:#f8f4ed;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper:#f8f4ed;--ink:#463337;--wine:#803d51;--muted:#867b70;--line:#ded6c9;--font-serif:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--wine);outline-offset:5px}h1:focus{outline:none}button{color:inherit}svg{flex-shrink:0}button{border:0}h1,h2,p{margin:0}button:disabled{opacity:.28}::selection{background:#e9cdd3;color:#5e2938}img{max-width:100%;display:block}.app{min-height:100svh;display:flex;flex-direction:column;overflow:hidden;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.025' filter='url(%23n)'/%3E%3C/svg%3E")}.site-header{width:100%;max-width:1440px;margin:0 auto;padding:27px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.wordmark{background:none;padding:0;white-space:nowrap;font-family:var(--font-serif);font-size:30px;font-weight:500;letter-spacing:-1.3px}.wordmark span{font-size:35px}.wordmark i{font-style:normal;color:var(--wine)}.chapter-nav{display:flex;align-items:center;gap:29px}.chapter-nav button{font-size:10px;background:none;padding:12px 0;position:relative;letter-spacing:.1px;color:var(--muted);white-space:nowrap}.chapter-nav button.active{color:var(--wine)}.chapter-nav button:after{content:"";position:absolute;bottom:2px;left:0;right:0;height:1px;background:var(--wine);transform:scaleX(0);transition:transform .25s}.chapter-nav button.active:after{transform:scaleX(1)}.nav-number{margin-right:7px;font-size:9px;opacity:.6}.sound-button{display:flex;align-items:center;gap:8px;background:transparent;font-size:10px;white-space:nowrap;padding:10px 12px;border:1px solid var(--line);border-radius:30px;min-height:40px}.sound-button.playing{border-color:#b99da1;color:var(--wine)}main{width:100%;flex:1}.scene{width:min(1120px,88%);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;column-gap:9%;padding-top:72px;padding-bottom:50px;min-height:650px}.scene-0{row-gap:65px;column-gap:4%;padding-top:78px;padding-bottom:30px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:9px;font-weight:500;letter-spacing:1.7px;color:var(--wine);line-height:1.8}.tiny-rule{width:25px;height:1px;background:var(--wine);display:inline-block;flex-shrink:0}.intro-copy h1{position:relative;font-family:var(--font-serif);font-size:clamp(78px,7.7vw,114px);font-weight:400;line-height:.99;letter-spacing:-4.7px;margin:25px 0 26px;color:var(--ink)}h1 em{font-weight:400;color:var(--wine)}.title-spark{display:inline-block;position:relative;left:18px;bottom:53px;color:#bc9362}.title-spark svg{width:37px;height:37px}.intro-description{font-size:12px;line-height:2.1;color:#82736a}.intro-description strong{font-weight:400;color:#574842}.birthday-date{display:flex;align-items:center;gap:12px;margin-top:26px}.birthday-date>span:first-child{font-family:var(--font-serif);font-size:46px;line-height:1;color:var(--wine)}.birthday-date>div{font-size:8px;line-height:2;letter-spacing:1.2px}.birthday-date b{font-weight:400;color:var(--muted);letter-spacing:1.6px}.birthday-date .date-divider{width:1px;height:33px;background:var(--line);margin:0 9px}.birthday-date p{font-family:var(--font-serif);font-style:italic;font-size:16px;color:#827466;line-height:1.35}.intro-actions{margin-top:32px;display:flex;align-items:center;gap:22px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:27px;border-radius:3px;color:#fff8ef;background:var(--wine);font-size:11px;padding:17px 22px;min-height:49px;transition:background .2s,transform .2s}.primary-button:hover{background:#6f2e42;transform:translateY(-2px)}.text-button{display:inline-flex;align-items:center;gap:9px;background:none;padding:8px 0;font-size:10px;min-height:40px}.quiet-start{font-size:10px;color:#877567;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c9b5a3}.sound-note{display:flex;gap:7px;align-items:center;font-size:9px;color:#9a8b7e;margin-top:14px}.cover-art{position:relative;min-height:490px;align-self:center}.cover-orbit{position:absolute;width:470px;height:470px;border:1px solid #e3d8c8;border-radius:50%;top:-8px;left:4px}.main-polaroid{position:absolute;background:#fffef9;width:326px;top:11px;left:115px;padding:13px 13px 17px;transform:rotate(8deg);box-shadow:0 20px 45px #493a3817,0 2px 8px #493a3814;z-index:2}.main-polaroid>img{height:340px;width:100%;object-fit:cover;object-position:center 52%}.polaroid-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#69564c;margin-top:20px}.polaroid-caption span{font-family:var(--font-serif);font-style:italic;font-size:19px;white-space:nowrap}.polaroid-caption svg{color:#ab7c84}.photo-tape{position:absolute;width:86px;height:28px;background:#d8c7a184;top:-13px;left:105px;transform:rotate(-3deg);clip-path:polygon(2% 0,100% 7%,96% 100%,0 91%);z-index:1}.back-polaroid{position:absolute;width:237px;padding:12px;background:#fffcf4;top:58px;left:0;transform:rotate(-13deg);box-shadow:0 8px 25px #46333712}.back-polaroid img{height:247px;width:100%;object-fit:cover}.back-polaroid span{display:block;font-family:var(--font-serif);font-style:italic;text-align:center;margin-top:15px;font-size:17px;color:#8a7e6d}.love-stamp{position:absolute;top:-21px;right:-6px;width:115px;height:115px;z-index:3;border:1px solid #aa6c76;border-radius:50%;color:#8f4d5a;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:11px;transform:rotate(16deg);background:#f8f4edec;outline:1px solid #aa6c7666;outline-offset:-6px}.love-stamp span{font-size:7px;letter-spacing:1.15px}.handwritten{font-family:var(--font-serif);font-style:italic;font-weight:400}.cover-note{position:absolute;left:15px;bottom:1px;font-size:23px;line-height:1.35;transform:rotate(-8deg);color:#9b7a62;z-index:3}.cover-photo-label{position:absolute;right:20px;bottom:-16px;font-size:7px;letter-spacing:1.7px;color:#948877}.journey-strip{grid-column:1/-1;display:flex;align-items:center;gap:25px;padding-top:25px;border-top:1px solid var(--line);font-size:9px;color:#806f60;letter-spacing:1px}.journey-label{color:#9a8b7e;font-size:8px;letter-spacing:1.5px;margin-right:auto}.journey-strip i{font-style:normal;letter-spacing:0;color:#574842;margin-left:9px;font-family:var(--font-serif);font-size:17px}.journey-line{height:1px;background:#cdbdaa;width:42px}.site-footer{padding:20px 6%;width:100%;max-width:1440px;margin:0 auto;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:77px}.demo-note{font-size:7px;letter-spacing:1.1px;color:#9b8b7d;white-space:nowrap}.demo-note span{padding:0 4px}.footer-sign{display:flex;align-items:center;gap:10px;font-family:var(--font-serif);font-style:italic;color:#978777;font-size:14px}.section-title{font-family:var(--font-serif);font-weight:400;font-size:73px;letter-spacing:-2.6px;line-height:1.08;margin:23px 0 27px;color:var(--ink)}.memory-selector{margin-top:35px;padding-left:4px}.memory-selector button{display:flex;align-items:center;gap:17px;position:relative;background:none;width:100%;padding:14px 0;text-align:left;font-size:11px;color:#93867b}.memory-selector button:not(:last-child):before{content:"";position:absolute;left:3px;top:27px;height:27px;width:1px;background:var(--line)}.memory-selector button.selected{color:var(--wine)}.timeline-dot{width:7px;height:7px;border-radius:50%;border:1px solid #bdaa98;background:var(--paper);z-index:1}.selected .timeline-dot{border-color:var(--wine);background:var(--wine);box-shadow:0 0 0 4px #803d510c}.timeline-year{font-size:10px;letter-spacing:1px;color:#ab9989}.memory-selector svg{margin-left:auto;margin-right:45px}.memory-intro{font-family:var(--font-serif);font-style:italic;font-size:19px;color:#9b8976;line-height:1.65;margin:25px 0 0 30px}.memory-stage{max-width:405px;width:100%;justify-self:center}.memory-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:7px;letter-spacing:1px;color:#a08b76;margin-bottom:18px;line-height:1.6}.flip-card{display:block;width:100%;height:365px;padding:0;perspective:1200px;background:none;text-align:center;transform:rotate(2deg);transition:transform .3s}.flip-card:hover{transform:rotate(0)}.flip-card-inner{display:block;position:relative;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.flip-card.is-flipped .flip-card-inner{transform:rotateY(180deg)}.flip-front,.flip-back{display:flex;position:absolute;inset:0;background:#fffcf6;padding:13px;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 12px 28px #45362912;flex-direction:column;align-items:center}.flip-front img{width:100%;height:275px;object-fit:cover}.memory-caption{font-size:23px;margin-top:13px;line-height:1.2}.flip-hint{display:flex;justify-content:center;align-items:center;gap:5px;font-family:Be Vietnam Pro,sans-serif;font-size:8px;color:#ac9b87;font-style:normal;margin-top:auto;padding-top:7px}.flip-back{transform:rotateY(180deg);padding:30px;justify-content:center;background:#f1e8da;color:var(--wine)}.back-label{font-size:7px;letter-spacing:1.4px;margin-top:17px}.back-note{font-family:var(--font-serif);font-size:23px;line-height:1.45;margin-top:24px;color:#745c50}.back-sign{font-size:25px;display:block;margin:20px 0 0}.flip-back .flip-hint{margin-top:25px}.memory-text{margin-top:30px;text-align:center}.memory-text h2{white-space:pre-line;font-size:26px;font-family:var(--font-serif);font-weight:500;line-height:1.2;color:#624545}.memory-text p{font-size:10px;line-height:1.85;color:#918173;max-width:360px;margin:13px auto 0}.album-controls{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:17px}.album-controls>span{font-size:10px;letter-spacing:1.4px;color:var(--wine)}.album-controls i{font-style:normal;color:#c4af98;padding:0 7px}.icon-button{display:flex;align-items:center;justify-content:center;width:37px;height:37px;border:1px solid var(--line);background:transparent;border-radius:50%;transition:background .2s}.icon-button:hover:enabled{background:#eadfd0}.scene-navigation{display:flex;align-items:center;gap:35px}.next-chapter{color:var(--wine)}.previous-chapter{color:#9a8979}.chapter-counter{font-size:9px;color:var(--wine);letter-spacing:1.2px}.chapter-counter span{color:#ad9b86}.reasons-intro>p,.wish-copy>p{font-size:12px;line-height:2.1;color:#928273;margin-top:15px}.love-scribble{display:flex;align-items:center;gap:20px;color:#b8898d;transform:rotate(-6deg);margin:35px 0 0 15px}.love-scribble span{font-size:27px;color:#977e65}.reasons-list{padding-top:13px}.small-label{display:block;font-size:8px;letter-spacing:1.4px;color:#ad9680;margin-bottom:22px}.reason{border-top:1px solid var(--line)}.reason:last-of-type{border-bottom:1px solid var(--line)}.reason>button{display:flex;align-items:center;text-align:left;gap:17px;width:100%;background:none;padding:26px 0;font-family:var(--font-serif);font-size:25px;line-height:1.2}.reason>button svg{margin-left:auto;color:#a78b73;transition:transform .25s}.reason-open>button{color:var(--wine)}.reason-open>button svg{transform:rotate(180deg)}.reason-number{font-family:Be Vietnam Pro,sans-serif;font-size:9px;color:#b8a48d;padding-right:7px}.reason>div{overflow:hidden}.reason p{font-size:11px;line-height:1.95;color:#938170;margin:0 16px 27px 42px}.reasons-postscript{font-size:22px;color:#a38b74;line-height:1.6;margin-top:29px}.birthday-sign{display:block;font-size:26px;color:#a58267;margin-top:22px}.letter-button{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;background:none;display:flex;align-items:center;gap:13px;margin-top:31px;max-width:390px;text-align:left;font-size:10px;line-height:1.8;color:var(--wine);width:100%}.letter-button>svg:last-child{margin-left:auto}.wish-stage{position:relative;align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:17px 0 0;min-height:470px}.cake-halo{position:absolute;top:11px;left:50%;transform:translate(-50%);border:1px solid #d9c6ac77;border-radius:50% 50% 0 0;width:360px;height:370px;border-bottom:0;z-index:0;background:#efe4d128}.wish-date{font-size:8px;letter-spacing:2.5px;color:#a68d73;margin-bottom:4px;z-index:1}.wish-footnote{display:flex;align-items:center;gap:8px;font-size:7px;letter-spacing:1.6px;color:#b2997c;margin-top:27px;z-index:1}.wish-stage>div:not(.cake-halo){z-index:1}.audio-error{font-size:11px;text-align:center;color:var(--wine);padding:10px 20px}.love-letter-dialog{position:fixed;padding:0;border:1px solid #d3bfaa;border-radius:3px;background:#fcf7ed;color:var(--ink);max-width:min(520px,calc(100% - 30px));max-height:85svh;box-shadow:0 30px 100px #362b3245}.love-letter-dialog::backdrop{background:#39272d75;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.letter-close{position:absolute;right:16px;top:16px;z-index:2}.letter-paper{padding:48px 40px 35px;display:flex;align-items:center;flex-direction:column;text-align:center}.letter-paper>.eyebrow{font-size:8px;letter-spacing:2px}.letter-paper>svg{color:#a87580;margin:24px 0 10px}.letter-paper h2{font-family:var(--font-serif);font-size:40px;font-weight:500;line-height:1.2;margin-bottom:20px}.letter-paper>p{font-size:12px;line-height:2;text-align:left;align-self:stretch;margin-bottom:14px;color:#876e5c}.letter-sign{font-size:24px;color:var(--wine);line-height:1.5;margin:10px 0 18px}.letter-paper .letter-demo{font-size:9px;text-align:center;color:#b39c84;line-height:1.7}.letter-paper>.primary-button{margin-top:8px;gap:14px}@media(min-width:1450px){.scene{padding-top:90px;min-height:730px}.scene-0{row-gap:70px}.intro-copy h1{font-size:119px}.cover-art{transform:scale(1.08)}.site-header{border-bottom:0}.site-footer{border-top:0}.scene-1,.scene-2,.scene-3{padding-top:95px}}@media(max-width:1100px){.site-header{padding:22px 5%;gap:16px}.chapter-nav{gap:17px}.chapter-nav button{font-size:9px}.sound-button span{display:none}.scene{width:88%;column-gap:6%;padding-top:58px}.scene-0{column-gap:2%}.intro-copy h1{font-size:87px}.cover-art{transform:scale(.86);transform-origin:center left;width:490px}.cover-orbit{width:445px;height:445px}.section-title{font-size:64px}.scene-navigation{gap:22px}.intro-description{font-size:11px}.journey-strip{gap:19px}.journey-line{width:25px}.reason>button{font-size:22px}.memory-selector svg{margin-right:10px}.title-spark{left:10px}.scene-1{column-gap:8%}}@media(max-width:800px){.site-header{padding:20px 6% 14px;flex-wrap:wrap;gap:13px}.wordmark{font-size:25px}.wordmark span{font-size:31px}.sound-button{margin-left:auto;min-height:36px;padding:8px 11px}.sound-button span{display:block}.chapter-nav{order:3;width:100%;justify-content:space-between;gap:10px;margin-top:1px}.chapter-nav button{font-size:9px;padding:10px 0;min-height:37px}.nav-number{font-size:8px;margin-right:5px}.scene{grid-template-columns:1fr;padding-top:37px;width:88%;row-gap:35px;min-height:0;padding-bottom:36px}.scene-0{row-gap:28px}.intro-copy{max-width:480px;margin:auto;width:100%}.intro-copy h1{font-size:91px;letter-spacing:-4px;margin:20px 0 23px}.eyebrow{font-size:8px;letter-spacing:1.2px}.intro-description{font-size:11px}.title-spark{bottom:50px;left:16px}.birthday-date{margin-top:24px}.intro-actions{margin-top:25px;gap:23px}.cover-art{transform:none;width:430px;max-width:100%;height:462px;min-height:0;justify-self:center;margin:15px auto 0}.main-polaroid{width:285px;left:92px;top:22px;padding:11px 11px 16px}.main-polaroid>img{height:295px}.polaroid-caption span{font-size:17px}.back-polaroid{width:216px;left:8px;top:53px}.back-polaroid img{height:235px}.cover-orbit{width:390px;height:390px;top:10px;left:10px}.love-stamp{width:98px;height:98px;right:-5px;top:-3px;gap:9px}.love-stamp span{font-size:6px;letter-spacing:1px}.love-stamp svg{width:21px}.cover-note{font-size:23px;bottom:17px;left:10px}.cover-photo-label{bottom:-4px;right:0;font-size:6px}.journey-strip{justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:0;padding-top:23px}.journey-label{width:100%;font-size:7px;margin-bottom:2px}.journey-strip>span:not(.journey-label){font-size:8px;letter-spacing:.5px}.journey-strip i{font-size:16px;margin-left:5px}.journey-line{display:none}.site-footer{flex-direction:column;padding:21px 6%;gap:18px}.demo-note{order:2;font-size:6px;letter-spacing:1px}.footer-sign{order:1}.section-title{font-size:63px;margin:20px 0;letter-spacing:-2px}.memory-copy{display:contents}.memory-copy .eyebrow,.memory-copy .section-title{margin-bottom:0}.memory-copy .section-title{margin-top:-18px}.memory-selector{display:flex;overflow-x:auto;gap:14px;margin-top:-10px;padding:8px 3px 14px;scrollbar-width:thin;border-bottom:1px solid var(--line)}.memory-selector button{width:auto;flex-shrink:0;flex-direction:column;gap:8px;font-size:9px;padding:0 5px}.memory-selector button:before{display:none}.memory-selector svg{display:none}.timeline-dot{display:none}.timeline-year{font-size:9px}.memory-selector .selected{position:relative}.memory-selector .selected:after{content:"";height:1px;background:var(--wine);left:3px;right:3px;position:absolute;bottom:-14px}.memory-intro{display:none}.memory-stage{max-width:405px;margin-top:-12px}.memory-meta{font-size:6px;margin-bottom:15px}.flip-card{height:367px;transform:rotate(1deg)}.flip-front img{height:278px}.memory-text{margin-top:25px}.memory-text h2{font-size:27px}.memory-text p{font-size:10px}.album-controls{margin-top:14px}.scene-navigation{width:100%;justify-content:space-between;gap:12px}.scene-navigation .text-button{font-size:9px}.chapter-counter{font-size:8px}.reasons-intro>p,.wish-copy>p{font-size:11px}.love-scribble{margin-top:24px}.love-scribble svg{width:47px}.love-scribble span{font-size:24px}.reasons-list{padding-top:0}.reason>button{font-size:24px;padding:23px 0}.reasons-postscript{font-size:21px}.scene-3{gap:27px}.birthday-sign{font-size:25px}.letter-button{margin-top:24px}.wish-stage{min-height:430px;padding-top:12px}.cake-halo{max-width:100%;height:340px;width:340px}.wish-date{margin-bottom:0}.wish-footnote{margin-top:18px}}@media(max-width:390px){.chapter-nav button{font-size:8px}.nav-number{display:none}.intro-copy h1{font-size:80px;letter-spacing:-3px}.title-spark{left:7px;bottom:40px}.title-spark svg{width:28px;height:28px}.intro-description{font-size:10px}.eyebrow{font-size:7px;letter-spacing:1px}.cover-art{height:397px;margin-top:11px}.main-polaroid{width:240px;left:57px;top:20px}.main-polaroid>img{height:255px}.polaroid-caption span{font-size:14px}.back-polaroid{width:188px;left:2px;top:49px}.back-polaroid img{height:195px}.cover-orbit{width:295px;height:315px;left:0;top:18px}.love-stamp{width:85px;height:85px;right:-3px;top:1px;gap:7px}.love-stamp span{font-size:5px}.cover-note{font-size:20px;bottom:12px}.cover-photo-label{bottom:-9px;font-size:5px;letter-spacing:1.2px}.journey-strip{margin-top:6px}.journey-strip i{font-size:14px}.primary-button{font-size:10px;padding:16px 18px;gap:18px}.intro-actions{gap:17px}.quiet-start{font-size:9px}.birthday-date{gap:9px}.birthday-date p{font-size:14px}.birthday-date .date-divider{margin:0 5px}.section-title{font-size:57px}.flip-card{height:329px}.flip-front img{height:240px}.memory-caption{font-size:21px}.back-note{font-size:20px}.back-label{font-size:6px}.flip-back{padding:25px}.memory-meta{letter-spacing:.7px}.scene-navigation .text-button{font-size:8px;gap:6px}.previous-chapter span{display:none}.reason>button{font-size:21px;gap:12px}.reason p{margin-left:32px}.letter-paper{padding:44px 25px 30px}.letter-paper h2{font-size:33px}.letter-paper>p{font-size:11px}.letter-sign{font-size:21px}.demo-note{font-size:5.7px;letter-spacing:.7px}}@media(max-width:800px){.scene{grid-template-columns:minmax(0,1fr)}.scene>*{min-width:0}.cover-art{width:100%;max-width:430px}.main-polaroid{left:18%;width:72%}.main-polaroid>img{height:280px}.cover-orbit{width:94%;height:360px;left:3%}.back-polaroid{width:57%}.back-polaroid img{height:220px}.love-stamp{right:0}.intro-description,.reasons-intro>p,.wish-copy>p{font-size:13px;line-height:1.9}.memory-text p,.reason p{font-size:12px;line-height:1.9}.primary-button,.wish-button{font-size:12px}.quiet-start,.text-button{font-size:11px}.chapter-nav button{font-size:10px;min-height:42px}.memory-selector button{font-size:10px;min-height:44px}.sound-button{min-height:44px}.icon-button{width:44px;height:44px}.memory-meta{font-size:7px}.flip-hint{font-size:9px}.letter-button{font-size:11px;min-height:64px}.scene-navigation .text-button{font-size:10px}.letter-paper>p{font-size:13px}}@media(max-width:390px){.cover-art{height:399px}.main-polaroid>img{height:252px}.back-polaroid img{height:195px}.cover-orbit{height:325px}.chapter-nav button{font-size:9px}.intro-description{font-size:12px}.eyebrow{font-size:7px}.scene-navigation .text-button{font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.flip-card-inner{transition:none}.primary-button:hover{transform:none}}.birthday-app{--wine:#8f3c52;background-color:#fbf4ec}.birthday-app .site-header{border-bottom-color:#e8d6ca}.birthday-app .wordmark{font-style:italic}.birthday-app .chapter-nav{gap:24px}.birthday-app .primary-button{background:#8f3c52;border-radius:30px;padding-inline:25px}.birthday-app .primary-button:hover{background:#792d42}.birthday-app .scene{min-height:660px}.birthday-app .party-hero{padding-top:48px;row-gap:37px;column-gap:6%}.party-hero .intro-copy h1{font-size:88px;letter-spacing:-3px;line-height:.99;margin:22px 0}.birthday-greeting{display:block}.party-hero .intro-description{font-size:12px;line-height:1.9}.party-hero .intro-actions{gap:18px;margin-top:26px}.party-hero .quiet-start{font-size:9px}.party-hero .birthday-date{margin-top:22px}.party-hero .birthday-date>span:first-child{font-size:42px}.party-hero .intro-copy .eyebrow{letter-spacing:1.5px;font-size:8px}.party-art-wrap{min-width:0;align-self:center;position:relative}.birthday-art-caption{display:flex;flex-direction:column;text-align:center;gap:12px;position:relative;margin-top:-26px;padding-left:12px}.birthday-art-caption .handwritten{font-size:27px;color:#a07766;transform:rotate(-4deg)}.birthday-art-caption>span:last-child{font-size:7px;color:#a38a76;letter-spacing:2.1px;margin-top:4px}.party-strip{grid-column:1/-1;display:flex;align-items:center;gap:28px;border-top:1px solid #e2cfc0;padding-top:24px;color:#a88b73}.party-strip>span:first-child{display:flex;align-items:center;gap:10px;font-size:7px;letter-spacing:1.4px;margin-right:auto;color:#9c6570}.party-strip>span:nth-child(2){font-size:11px;line-height:1.7;color:#9f826b}.party-strip i{font-family:var(--font-serif);font-size:18px;color:#785c51;margin-left:6px}.birthday-app .prelude-scene{padding-top:60px;align-items:center}.prelude-copy>p{font-size:12px;line-height:2.1;color:#957b6a}.prelude-dedication{display:block;font-size:29px;color:#a77769;margin-top:30px;transform:rotate(-4deg);transform-origin:left}.birthday-app .cake-scene{padding-top:60px}.cake-scene .wish-stage{padding-top:0;min-height:490px}.cake-scene .cake-halo{background:#f3dfcf55;border-color:#dcbaa666}.birthday-song-caption{display:flex;align-items:center;gap:11px;margin-top:23px;color:#a47762}.birthday-song-caption span{font-size:8px;letter-spacing:1.5px}.birthday-song-caption p{font-size:9px;line-height:1.8;color:#b19680;margin-top:5px}.birthday-app .cake-scene .letter-button{margin-top:25px}.gift-copy>p{font-size:12px;line-height:2.1;color:#957b6a;margin-top:15px}.gift-dedication{font-size:29px;color:#a77769;margin-top:30px;transform:rotate(-5deg);transform-origin:left}.keepsake-link{margin-top:38px;border-top:1px solid #e2cfc0;padding-top:18px;color:#9e7f6b;font-size:10px;line-height:1.8}.gift-stage{align-self:center;min-height:440px;display:flex;align-items:center;justify-content:center;min-width:0;width:100%}.wrapped-gift{width:100%;text-align:center;padding-top:10px}.wrapped-gift>.small-label{font-size:7px;letter-spacing:1.5px;margin-bottom:0}.gift-box-button{display:flex;flex-direction:column;align-items:center;background:transparent;margin:auto;width:100%;max-width:370px;padding:18px 15px 10px;border-radius:8px}.gift-box-art{position:relative;width:280px;max-width:100%;height:270px;display:block;transition:transform .3s}.gift-box-button:hover .gift-box-art{transform:translateY(-6px) rotate(-2deg)}.gift-box-base{position:absolute;left:13%;top:102px;width:74%;height:153px;background:#e0b0af;border:1px solid #c99294;box-shadow:inset -15px 0 #cda09e55,0 17px 25px #7e47531a;border-radius:0 0 4px 4px}.gift-box-base:after{content:"";position:absolute;inset:15px;border:1px solid #efd0c688}.gift-box-lid{position:absolute;left:9%;width:82%;height:39px;top:78px;background:#e9bcbb;border:1px solid #c99294;z-index:2;box-shadow:0 4px 8px #8d485922;border-radius:3px}.gift-box-ribbon{position:absolute;left:44%;width:13%;height:177px;top:78px;background:#8f3c52;z-index:3;box-shadow:inset 3px 0 #aa576377,inset -3px 0 #6b223377}.gift-bow{position:absolute;width:74px;height:44px;top:36px;border:11px solid #8f3c52;z-index:4}.gift-bow-left{left:26%;border-radius:75% 70% 0;transform:rotate(22deg)}.gift-bow-right{left:48%;border-radius:70% 75% 70% 0;transform:rotate(-22deg)}.gift-box-tag{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:absolute;width:64px;height:90px;top:111px;left:60%;background:#fbf0d9;color:#9a7160;font-family:var(--font-serif);font-size:18px;font-style:italic;z-index:5;transform:rotate(13deg);box-shadow:0 3px 6px #5f394614}.gift-box-tag:before{content:"";position:absolute;width:1px;height:38px;left:50%;top:-31px;background:#bd965c;transform:rotate(10deg)}.gift-spark{position:absolute;color:#bd965c;font-family:Georgia,serif;font-size:45px;line-height:1;top:38px;left:0}.gift-spark-two{left:auto;right:-7px;top:166px;font-size:30px}.gift-open-label{display:flex;align-items:center;justify-content:center;gap:20px;color:#8f3c52;font-size:12px;background:#8f3c5209;border:1px solid #cfa9ac;border-radius:30px;padding:14px 24px;margin-top:17px}.gift-whisper{display:block;font-size:24px;color:#ad8771;margin-top:12px;transform:rotate(-4deg)}.birthday-gift-reveal{width:100%;padding-top:2px}.birthday-gift-reveal>.eyebrow{margin-bottom:12px;font-size:8px;letter-spacing:1px}.birthday-wish-note{display:flex;gap:19px;padding:23px 0;border-bottom:1px solid #e2cfc0}.birthday-wish-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:45px;height:45px;border-radius:50%;background:#edd7d259;color:#a5646c;margin-top:7px}.birthday-wish-note .small-label{font-size:6px;letter-spacing:1.4px;margin-bottom:5px;color:#b19882}.birthday-wish-note h2{font-family:var(--font-serif);font-weight:500;font-size:29px;color:#80525a;margin:0 0 6px;line-height:1.15}.birthday-wish-note p{font-size:11px;line-height:1.9;color:#977d6b;max-width:310px}.gift-letter-cta{margin-top:26px;gap:14px}.birthday-app .album-scene{padding-top:60px}.birthday-app .love-letter-dialog{background:#fcf3e9}@media(min-width:1450px){.birthday-app .party-hero{padding-top:60px;row-gap:50px}.party-hero .intro-copy h1{font-size:98px}}@media(max-width:1100px){.party-hero .intro-copy h1{font-size:79px}.birthday-app .chapter-nav{gap:17px}.party-art-wrap{margin-inline:-18px}.birthday-art-caption{margin-top:-15px}.birthday-art-caption .handwritten{font-size:24px}.birthday-app .party-hero{column-gap:3%}.party-hero .intro-actions{gap:12px;flex-wrap:wrap}.birthday-app .primary-button{font-size:10px}.gift-box-art{width:260px}.birthday-wish-note h2{font-size:26px}}@media(max-width:800px){.birthday-app .scene{min-height:0;grid-template-columns:minmax(0,1fr)}.birthday-app .party-hero{padding-top:30px;row-gap:20px;padding-bottom:28px}.party-hero .intro-copy h1{font-size:73px;line-height:1.01;letter-spacing:-2.5px;margin:19px 0 22px}.party-hero .intro-copy .eyebrow{font-size:7px;letter-spacing:1px}.party-hero .intro-description{font-size:12px;line-height:1.9}.party-hero .intro-actions{flex-wrap:nowrap;gap:15px;margin-top:25px}.birthday-app .primary-button{font-size:11px;padding-inline:21px}.party-hero .quiet-start{font-size:9px;white-space:nowrap}.birthday-app .chapter-nav{gap:8px;justify-content:space-between}.birthday-app .chapter-nav button{font-size:9px;min-height:44px}.birthday-app .nav-number{display:none}.birthday-app .sound-button{font-size:9px;padding:9px 11px}.party-art-wrap{width:100%;max-width:400px;justify-self:center;margin:-12px 0 10px}.birthday-art-caption{margin-top:-19px;padding-left:0;gap:8px}.birthday-art-caption .handwritten{font-size:25px}.birthday-art-caption>span:last-child{font-size:6px;letter-spacing:1.6px}.party-strip{gap:14px;flex-wrap:wrap;padding-top:23px}.party-strip>span:first-child{width:100%;font-size:6px;letter-spacing:1px}.party-strip>span:nth-child(2){font-size:10px;max-width:90%}.party-strip i{font-size:16px;margin-left:0;display:block}.party-strip>svg{margin-left:auto}.birthday-app .prelude-scene,.birthday-app .cake-scene,.birthday-app .gift-scene,.birthday-app .album-scene{padding-top:36px}.birthday-app .prelude-scene{row-gap:26px}.prelude-copy .section-title{font-size:55px;line-height:1.04;margin:18px 0}.prelude-copy .section-title br:last-child{display:none}.prelude-copy>p{font-size:12px;line-height:1.9}.prelude-dedication{font-size:24px;margin-top:18px}.cake-scene .wish-stage{min-height:410px;padding-top:0}.birthday-song-caption p{font-size:10px}.birthday-song-caption span{font-size:8px}.gift-copy>p{font-size:13px;line-height:1.9}.gift-dedication{font-size:26px;margin-top:22px}.keepsake-link{margin-top:25px;font-size:10px;min-height:49px}.gift-stage{min-height:380px;padding-top:0}.gift-box-art{width:270px}.gift-box-button{padding-inline:8px}.birthday-gift-reveal{padding-top:8px}.birthday-gift-reveal>.eyebrow{font-size:7px;letter-spacing:.7px}.birthday-wish-note{gap:15px;padding:21px 0}.birthday-wish-note h2{font-size:27px}.birthday-wish-note p{font-size:12px}.birthday-wish-note .small-label{font-size:7px}.gift-letter-cta{width:100%;max-width:330px}}@media(max-width:360px){.party-hero .intro-copy h1{font-size:64px}.party-hero .intro-description{font-size:11px}.party-hero .intro-actions{flex-wrap:wrap;gap:8px}.party-hero .quiet-start{padding-inline:7px}.birthday-app .chapter-nav button{font-size:9px}.birthday-wish-note h2{font-size:24px}.gift-box-art{width:245px}.birthday-app .sound-button{font-size:8px;gap:5px}.birthday-art-caption .handwritten{font-size:22px}.gift-copy .section-title{font-size:51px}}@media(prefers-reduced-motion:reduce){.gift-box-button:hover .gift-box-art{transform:none}}.birthday-app{overflow-x:clip;overflow-y:visible}@supports (padding: env(safe-area-inset-top)){.birthday-app .site-header{padding-top:max(20px,env(safe-area-inset-top));padding-left:max(6%,env(safe-area-inset-left));padding-right:max(6%,env(safe-area-inset-right))}.birthday-app .site-footer{padding-bottom:max(20px,env(safe-area-inset-bottom));padding-left:max(6%,env(safe-area-inset-left));padding-right:max(6%,env(safe-area-inset-right))}}@media(max-width:600px){.birthday-app{min-height:100svh}.birthday-app .site-header{flex-shrink:0;padding:max(8px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) 0 max(22px,env(safe-area-inset-left));column-gap:12px;row-gap:0}.birthday-app .wordmark,.birthday-app .sound-button{min-height:44px}.birthday-app .chapter-nav{margin-top:0;gap:8px}.birthday-app .chapter-nav button{min-height:44px;min-width:44px;font-size:10px;padding-block:8px}.birthday-app .chapter-nav button:after{bottom:0}.birthday-app main{display:flex;flex:1 0 auto}.birthday-app .scene{width:calc(100% - 44px);min-height:0;padding:12px 0;gap:14px;align-content:center;grid-template-columns:minmax(0,1fr)}.birthday-app .site-footer{flex-shrink:0;min-height:0;padding:4px max(22px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));gap:2px}.birthday-app .scene-navigation{gap:10px}.birthday-app .scene-navigation .text-button{min-height:44px;font-size:10px}.birthday-app .previous-chapter span{display:none}.birthday-app .previous-chapter{min-width:44px}.birthday-app .demo-note{font-size:6px;line-height:1.8;letter-spacing:.7px}.birthday-app .footer-sign{font-size:13px;min-height:22px}.birthday-app .eyebrow{justify-content:center;font-size:7px;letter-spacing:1px}.birthday-app .party-hero{row-gap:10px;text-align:center}.party-hero .intro-copy{display:contents}.party-hero .intro-copy>.eyebrow{order:1}.party-hero .intro-copy h1{order:2;font-size:clamp(52px,14vw,64px);line-height:1;letter-spacing:-2px;margin:0}.party-hero .birthday-greeting{font-size:.55em;letter-spacing:-.7px;line-height:1.25;margin-bottom:6px}.birthday-greeting br{display:none}.party-hero .party-art-wrap{order:3;width:clamp(148px,calc(100svh - 550px),270px);max-width:78%;margin:0 auto}.party-hero .birthday-art-caption,.party-hero .party-strip,.party-hero .sound-note{display:none}.party-hero .intro-description{order:4;font-size:12px;line-height:1.7}.party-hero .birthday-date{order:5;margin:2px auto;gap:10px;text-align:left}.party-hero .birthday-date>span:first-child{font-size:34px}.party-hero .birthday-date p{font-size:15px}.party-hero .birthday-date .date-divider{height:28px;margin-inline:5px}.party-hero .intro-actions{order:6;flex-direction:column;flex-wrap:nowrap;width:100%;gap:0;margin:2px 0 0}.party-hero .primary-button{width:100%;max-width:330px;min-height:49px;font-size:13px}.party-hero .quiet-start{font-size:11px;min-height:44px}.birthday-app .prelude-scene{gap:8px}.prelude-copy,.wish-copy,.gift-copy{text-align:center}.birthday-app .section-title{font-size:clamp(39px,10.8vw,48px);letter-spacing:-1.5px;line-height:1.04;margin:9px 0}.section-title em br{display:none}.prelude-copy>p,.cake-scene .wish-copy>p,.gift-copy>p{font-size:12px;line-height:1.65;margin-top:8px}.prelude-dedication{display:none}.birthday-prelude{padding:12px 15px 10px;border-radius:80px 80px 14px 14px}.birthday-prelude-topline{margin:0 auto;font-size:7px;letter-spacing:.6px}.birthday-prelude-illustration{width:clamp(106px,calc(22svh - 40px),158px);margin:0 auto 6px}.birthday-prelude-steps{gap:7px}.birthday-prelude-step{min-height:62px;padding:8px 10px;gap:10px}.birthday-prelude-step-copy>span{font-size:18px}.birthday-prelude-step-copy>small{font-size:10px}.birthday-prelude-step-icon{width:31px;height:31px;flex-basis:31px}.birthday-prelude-bottom{min-height:52px;margin-top:8px}.birthday-prelude-countdown{min-height:49px}.birthday-app .cake-scene{row-gap:10px}.cake-scene .wish-copy{display:contents}.cake-scene .wish-copy>.eyebrow{order:1}.cake-scene .section-title{order:2;text-align:center;margin:0}.cake-scene .wish-copy>p{order:3;text-align:center;margin:0}.cake-scene .birthday-sign,.cake-scene .birthday-song-caption{display:none}.cake-scene .wish-stage{order:4;min-height:0;padding:0}.cake-scene .wish-date,.cake-scene .wish-footnote{display:none}.cake-scene .cake-halo{width:min(100%,280px);height:clamp(175px,31svh,270px);top:0}.cake-scene .wish-cake{width:100%}.cake-scene .wish-cake-art{width:clamp(206px,calc(52svh - 165px),325px);max-width:100%}.cake-scene .wish-message{min-height:52px;margin-bottom:12px}.cake-scene .wish-message-title{font-size:21px}.cake-scene .wish-message-caption{font-size:12px}.cake-scene .wish-button{width:100%;max-width:330px}.birthday-app .cake-scene .letter-button{order:5;margin:0;padding:8px 0;min-height:44px;border-bottom:0;font-size:11px}.birthday-app .gift-scene{gap:10px}.gift-copy{display:contents}.gift-copy>.eyebrow{order:1}.gift-copy .section-title{order:2;text-align:center;margin:0}.gift-copy>p{order:3;text-align:center;margin:0}.gift-copy>p br{display:none}.gift-dedication{display:none}.gift-scene .gift-stage{order:4;min-height:0}.gift-copy .keepsake-link{order:5;justify-content:center;margin:0;padding:4px 0;min-height:44px}.wrapped-gift{padding-top:6px}.wrapped-gift>.small-label{font-size:7px;letter-spacing:.8px}.gift-box-button{padding:0 8px}.gift-box-art{zoom:.8}.gift-open-label{margin-top:0;min-height:49px;width:100%;max-width:330px}.gift-whisper{font-size:21px;margin-top:7px}.birthday-gift-reveal{padding-top:0}.birthday-gift-reveal>.eyebrow{margin-bottom:2px}.birthday-wish-note{padding:12px 0;gap:12px}.birthday-wish-note h2{font-size:26px}.birthday-wish-note p{font-size:12px;line-height:1.65}.birthday-wish-note .small-label{display:none}.birthday-wish-icon{width:34px;height:34px}.gift-letter-cta{max-width:none;margin-top:14px;min-height:49px}.gift-scene:has(.gift-stage-open) .gift-copy>p{display:none}.gift-scene:has(.gift-stage-open) .section-title{font-size:36px}.birthday-app .love-letter-dialog{max-height:calc(100svh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)));overflow-y:auto}.letter-close{width:44px;height:44px}.letter-paper{padding:50px 24px 26px}.letter-paper h2{font-size:34px}.letter-paper>p{font-size:13px}}@media(max-width:360px){.birthday-app .chapter-nav button,.birthday-app .scene-navigation .text-button{font-size:9px}.birthday-prelude-step-copy>span{font-size:16px}}
