:root{--cream:#faf6ee;--paper:#fffdf8;--honey:#e9bc62;--gold:#bf8a36;--dark:#3d4831;--sage:#7d8a63;--pink:#e9bbbf;--ink:#55513c;--serif:'DM Serif Display',Georgia,serif;--script:'Great Vibes','Brush Script MT',cursive;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dark);font-family:var(--sans);background:var(--cream)}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #8aab86;outline-offset:5px}img{display:block;max-width:100%}.page-noise{pointer-events:none;position:fixed;inset:0;z-index:60;opacity:.065;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.sound-toggle{position:fixed;z-index:51;right:clamp(16px,3vw,42px);top:20px;display:flex;gap:9px;align-items:center;border:1px solid #d7c9ad;border-radius:50px;padding:9px 15px;background:#fffbf1e8;color:#76664b;font-size:11px;letter-spacing:.07em;backdrop-filter:blur(9px);box-shadow:0 8px 22px #8e7b5524}.sound-icon{font-size:17px;color:#ba8a44}
.intro{isolation:isolate;position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,#fffdf8bb,#faf5e4bb),url('art/gingham-page.jpg') center / 380px auto;transition:opacity .75s ease,filter .75s ease}.intro:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,#fffefa 0%,#fffdf8cc 24%,transparent 72%);pointer-events:none}.intro-content{position:relative;z-index:4;width:min(93vw,760px);display:flex;flex-direction:column;align-items:center;text-align:center;padding:70px 0 62px}.eyebrow,.story-kicker,.mini-kicker,.paper-overline,.the-question-small,.signature-kicker{font-size:10px;letter-spacing:.24em;font-weight:700;color:#8f946b}.eyebrow{margin:3px 0 0}.intro-title{font:clamp(67px,10vw,111px)/1.05 var(--script);color:#b98738;margin:30px 0 5px;font-weight:400;white-space:nowrap}.title-dot{color:#d8a94f}.little-heart{font:32px var(--serif);display:inline-block;position:relative;top:-34px;margin-left:8px;color:#d9ac66}.intro-subtitle{font:italic clamp(16px,2.5vw,21px)/1.55 var(--serif);color:#80775c;margin:3px 0 22px}.fade-drop{animation:dropIn 1s ease backwards}.intro-title{animation-delay:.12s}.intro-subtitle{animation-delay:.24s}.intro-corner{position:absolute;z-index:1;color:#dfc891;opacity:.5;font-size:43px}.intro-corner-a{top:9%;left:10%}.intro-corner-b{bottom:9%;right:12%}.intro-cloud{position:absolute;width:clamp(115px,16vw,240px);opacity:.74;pointer-events:none}.cloud-left{top:21%;left:6%;animation:cloudFloat 8s ease-in-out infinite}.cloud-right{bottom:17%;right:3%;animation:cloudFloat 10s ease-in-out -3s infinite}.intro-butterfly{position:absolute;left:19%;bottom:27%;width:65px;animation:flutter 6s ease-in-out infinite}.intro-bee{position:absolute;top:26%;right:17%;width:112px;animation:beeDrift 7s ease-in-out infinite}.intro-ground{position:absolute;bottom:-30px;left:0;right:0;height:65px;background:radial-gradient(ellipse at center,#e6dcbf33,transparent 65%)}
.envelope-button{width:clamp(282px,55vw,460px);height:clamp(252px,42vw,350px);position:relative;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 16px 16px #97734118);-webkit-tap-highlight-color:transparent;perspective:900px;transition:transform .35s}.envelope-button:hover{transform:translateY(-5px)}.env-shadow{position:absolute;bottom:8px;left:13%;right:13%;height:30px;border-radius:50%;background:#8f765148;filter:blur(18px)}.envelope{display:block;position:absolute;width:83%;height:65%;left:8.5%;top:24%;perspective:1100px;filter:drop-shadow(0 6px 7px #a97b3138)}.envelope-back{position:absolute;inset:0;border-radius:8px 8px 4px 4px;background:#f7ca75;border:2px solid #e3b562}.envelope-inner{position:absolute;inset:4px 5px 0;background:repeating-linear-gradient(0deg,transparent 0 16px,#e9d6b446 16px 31px),repeating-linear-gradient(90deg,#fff9e9 0 16px,#e9d6b449 16px 31px);clip-path:polygon(0 0,100% 0,50% 64%);opacity:.7}.env-letter{position:absolute;z-index:2;left:10%;top:12%;width:80%;height:82%;background:linear-gradient(145deg,#fffefa,#fff3df);box-shadow:0 -3px 10px #73571e25;border-radius:5px 5px 0 0;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:translateY(5%);transition:transform 1.1s cubic-bezier(.14,.8,.15,1) .45s;overflow:hidden}.env-letter:after{content:"";position:absolute;inset:10px;border:1px solid #e2c994}.letter-star{font-size:25px;color:#dcb35e}.letter-mini{font:italic 15px var(--serif);color:#8b8a69}.letter-name{font:47px/1.2 var(--script);color:#bb8a3f}.letter-heart{font-size:18px;color:#d4a955}.envelope-front{position:absolute;z-index:3;inset:0;clip-path:polygon(0 9%,50% 58%,100% 9%,100% 100%,0 100%);background:linear-gradient(155deg,#f9df9d,#f5c76d 75%);border-radius:4px;pointer-events:none}.envelope-front:after{content:"";position:absolute;inset:0;clip-path:polygon(0 100%,50% 47%,100% 100%);background:#f8d58b}.envelope-flap{position:absolute;z-index:5;inset:0;clip-path:polygon(0 0,100% 0,50% 62%);background:linear-gradient(150deg,#ffe4a0,#eab958);transform-origin:top;backface-visibility:hidden;transition:transform 1s cubic-bezier(.28,.07,.18,.97);filter:drop-shadow(0px 5px 2px #98733c22)}.wax-seal{position:absolute;z-index:6;left:50%;top:53%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#e9bc68,#be8737);border:2px solid #ab782f;box-shadow:inset 0 0 0 4px #e3b35d,0 2px 5px #7b5b3244;color:#fff1ce;font:24px var(--serif);display:grid;place-items:center;transition:opacity .3s,transform .6s}.env-bear{position:absolute;z-index:9;width:37%;bottom:0;left:-12%;transform:rotate(-7deg);animation:bearBreathe 4s ease-in-out infinite}.env-piglet{position:absolute;z-index:9;width:21%;bottom:1%;right:-11%;transform:rotate(10deg);animation:bob 3.5s ease-in-out infinite}.env-bee{position:absolute;z-index:9;width:15%;top:7%;right:0;animation:beeDrift 5s ease-in-out infinite}.opening-hint{font-size:11px;letter-spacing:.23em;color:#6e764b;font-weight:700;margin-top:21px;animation:pulse 2.7s ease-in-out infinite}.hint-spark{color:#d6ae6b;margin:0 8px;font-size:17px}.intro-footer{position:relative;margin:46px 0 0;font-size:9px;font-weight:600;letter-spacing:.2em;color:#9a937f}.intro-footer span{color:#cf9e51;font-size:16px}.intro.opening .envelope-button{pointer-events:none;transform:scale(1.035)}.intro.opening .envelope-flap{transform:rotateX(175deg);z-index:1}.intro.opening .wax-seal{opacity:0;transform:translate(-50%,-75%) scale(.4)}.intro.opening .env-letter{transform:translateY(-85%)}.intro.opening .opening-hint{animation:none}.intro.opening .hint-copy{font-size:0}.intro.opening .hint-copy:after{content:'A LITTLE MAGIC IS ON ITS WAY…';font-size:11px}
.story{position:relative;display:none;background:linear-gradient(180deg,#fffdfa,#fff8ec 32%,#faf5e9 100%);min-height:100svh;overflow:hidden}.story.visible{display:block;animation:storyReveal .8s ease both}.story-backdrop{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0%,#fffdf7aa 12%,#fffdf7aa 88%,transparent 100%),url('art/gingham-page.jpg') center top / 470px auto;opacity:.29}.story>*:not(.story-backdrop){position:relative}.top-nav{height:90px;max-width:1090px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.monogram{text-decoration:none;color:#c69b5b;font:45px var(--script)}.monogram span{font:20px var(--sans)}.nav-tag{letter-spacing:.21em;font-size:10px;font-weight:700;color:#87906b}.replay{border:1px solid #decfae;border-radius:30px;padding:10px 17px;background:#fff8eb90;color:#827047;font-size:12px}.story-heading{text-align:center;max-width:690px;margin:39px auto 0;padding:0 24px}.story-kicker{color:#9b956e;font-size:10px}.story-heading h2,.chapter h2,.answer-panel h2{font:clamp(35px,6.2vw,65px)/1.13 var(--serif);margin:22px 0 13px;font-weight:400}.story-heading em,.chapter h2 em,.answer-panel h2 em{font:1.2em var(--script);color:#c39246;white-space:nowrap}.story-heading-copy{font:italic 18px/1.6 var(--serif);color:#85806d;max-width:510px;margin:0 auto}.illustrated-hero{position:relative;max-width:900px;height:clamp(245px,41vw,390px);margin:15px auto 0}.hero-tree{position:absolute;width:42%;left:8%;bottom:0;transform-origin:bottom}.hero-bear{position:absolute;width:27%;bottom:0;left:32%;filter:drop-shadow(0 5px 5px #99875914)}.hero-piglet{position:absolute;width:14%;right:20%;bottom:7%}.hero-cloud{position:absolute;z-index:1;width:20%;opacity:.87}.hero-cloud-a{left:3%;top:12%}.hero-cloud-b{right:12%;top:4%;width:16%}.hero-bee{position:absolute;right:22%;top:18%;width:19%}.hero-butterfly{position:absolute;left:54%;top:12%;width:13%}.floating-stars span{position:absolute;color:#e9cc8d;font-size:20px;animation:pulse 3.5s infinite}.floating-stars span:nth-child(1){top:180px;left:10%}.floating-stars span:nth-child(2){top:420px;right:12%}.floating-stars span:nth-child(3){top:880px;left:13%}.floating-stars span:nth-child(4){top:1100px;right:8%}
.letter-section{max-width:1120px;margin:-1px auto 0;position:relative!important;min-height:760px;padding:32px 20px 35px;display:flex;justify-content:center;align-items:center}.letter-watermark{position:absolute;top:2%;left:10%;font:180px var(--script);color:#f0e4d0;opacity:.35}.paper-back{width:min(570px,100%);position:relative;z-index:4;padding:12px;background:#e5d3ae;background-image:linear-gradient(45deg,#fff5e9aa 25%,transparent 25%),linear-gradient(-45deg,#fff5e9aa 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#fff5e9aa 75%),linear-gradient(-45deg,transparent 75%,#fff5e9aa 75%);background-size:32px 32px;background-position:0 0,0 16px,16px -16px,-16px 0;box-shadow:0 18px 40px #977e502c,0 3px 8px #b9a27d16}.paper-edge{padding:8px;background:#fffef9}.paper{position:relative;min-height:655px;border:1px solid #e6d6b9;padding:35px 45px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;background:radial-gradient(ellipse at 50% 47%,#fffdfa,#fffefb 70%)}.paper-top-ornament{color:#d7b376;letter-spacing:8px;font-size:14px}.paper-top-ornament span{font-size:24px}.paper-overline{font-size:9px;margin:20px 0 12px}.dear{font:43px/1.1 var(--script);color:#c38e44;margin:13px 0 15px}.paper-prose{font:16px/1.75 var(--serif);color:#575e46;margin:8px 0;max-width:390px}.heart-divider{display:flex;align-items:center;gap:13px;margin:23px auto 11px;color:#d1a95a}.heart-divider span{height:1px;width:64px;background:#d9ba80}.the-question-small{font-size:9px;margin:8px 0}.paper h3{font:clamp(35px,5vw,48px)/1.17 var(--serif);font-weight:400;color:#3b5034;margin:13px 0 15px}.paper h3 em{font:1.36em var(--script);color:#c08c3d}.last-prose{margin:0}.signature-kicker{font-size:9px;margin:24px 0 0}.signature{font:46px/1.05 var(--script);color:#b98b44;margin:12px 0 0}.paper-bottom-ornament{font-size:25px;color:#dcb46a}.letter-accent,.letter-bear,.letter-bees,.letter-piglet{position:absolute!important;pointer-events:none}.accent-cloud{width:170px;top:2%;right:5%;opacity:.8}.accent-butterfly{width:95px;left:10%;top:17%}.letter-bear{width:215px;right:0;bottom:2%;z-index:6}.letter-bees{width:155px;left:2%;bottom:20%}.letter-piglet{width:115px;left:7%;bottom:1%;z-index:6}.bunting-scene{max-width:650px;margin:3px auto 10px}.bunting-scene img{width:100%}.chapter{text-align:center;max-width:850px;margin:55px auto 0;padding:0 20px}.mini-kicker{font-size:10px}.chapter h2{margin:17px 0}.chapter>p:not(.mini-kicker){font:17px/1.7 var(--serif);color:#777763;max-width:570px;margin:0 auto}.book-scene{position:relative;max-width:530px;margin:18px auto 35px;height:360px}.book-art{position:absolute;width:82%;left:8%;bottom:8%}.book-words{position:absolute;z-index:2;left:15%;bottom:33%;width:67%;pointer-events:none;color:#c79247;transform:rotate(-1deg);display:flex;flex-direction:column;font:clamp(36px,5.5vw,62px)/.95 var(--script)}.book-words strong{font-weight:400;font-size:.85em}.book-piglet{position:absolute;z-index:4;width:20%;right:-1%;bottom:2%}.book-cloud{position:absolute;left:0;top:5%;width:27%;opacity:.75}.book-butterfly{position:absolute;right:5%;top:1%;width:22%}.answer-section{position:relative!important;max-width:1050px;margin:75px auto 0;padding:0 20px}.answer-panel{max-width:620px;margin:0 auto;padding:67px 32px 57px;text-align:center;position:relative;background:#fffdf7;border:1px solid #e9d9b9;outline:8px solid #f0e5d0;box-shadow:0 19px 55px #a28a5e23}.answer-panel:before,.answer-panel:after{position:absolute;font-size:25px;color:#dcbf89;content:'✧'}.answer-panel:before{top:22px;left:26px}.answer-panel:after{bottom:22px;right:26px}.answer-panel h2{margin:10px 0}.answer-panel>p:not(.mini-kicker){font:17px/1.75 var(--serif);color:#81806c;max-width:420px;margin:0 auto}.answer-cloud{position:absolute;width:150px;top:-85px;right:-70px;opacity:.8}.answer-buttons{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px}.yes-button{background:#b88a48;color:white;border:0;border-radius:50px;padding:16px 32px;box-shadow:0 7px 0 #a17b44,0 18px 24px #b88a482e;font-size:15px;font-weight:700;transition:transform .2s,box-shadow .2s}.yes-button:hover{transform:translateY(-3px);box-shadow:0 10px 0 #a17b44,0 22px 24px #b88a4838}.yes-button span{padding-left:9px;color:#ffe6ae}.again-button,.share-button{background:transparent;border:1px solid #dfd3ba;border-radius:50px;padding:16px 24px;color:#8c7957;font-size:13px}.yes-message{animation:popIn .65s both}.yes-message[hidden]{display:none}.yes-heart{font-size:59px;color:#deaa85;animation:beat 1.2s infinite}.yes-message h3{font:30px/1.3 var(--serif);font-weight:400;margin:2px auto 5px}.yes-message p{font:italic 18px var(--serif);color:#8b866c}.share-button{margin-top:13px}.friends-scene{max-width:840px;height:290px;position:relative;margin:15px auto 0}.friends-grass{position:absolute;width:72%;left:14%;bottom:0}.friends-tiger{position:absolute;width:26%;left:16%;bottom:7%}.friends-bear{position:absolute;width:32%;right:16%;bottom:4%}.friends-balloon{position:absolute;width:20%;left:48%;bottom:26%}.friends-bee{position:absolute;width:16%;right:16%;top:2%}footer{text-align:center;padding:30px 20px 70px;background:#f1dfbb82;color:#7c795e}footer .footer-heart{font-size:36px;color:#bf9152}footer p{font:italic 18px var(--serif);margin:4px 0}.footer-small{font:10px var(--sans);letter-spacing:.19em;margin:17px 0!important}.footer-replay{border:0;background:transparent;color:#926e3e;text-decoration:underline;text-underline-offset:4px;font-size:12px;margin-top:17px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s,transform 1.1s cubic-bezier(.2,.75,.2,1)}.reveal.in-view{opacity:1;transform:translateY(0)}.sway.in-view{transform:rotate(-1deg)}.confetti-layer{position:fixed;inset:0;z-index:90;pointer-events:none;overflow:hidden}.confetti{position:absolute;top:-5vh;animation:confettiFall var(--duration) linear forwards;opacity:.95;will-change:transform}.hidden-once-open{display:none!important}
@keyframes dropIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes cloudFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(20px,-10px)}}@keyframes flutter{0%,100%{transform:translate(0,0) rotate(-7deg)}25%{transform:translate(20px,-10px) rotate(15deg)}60%{transform:translate(-12px,8px) rotate(-12deg)}}@keyframes beeDrift{0%,100%{transform:translate(0,0) rotate(-8deg)}25%{transform:translate(15px,-15px) rotate(5deg)}65%{transform:translate(-8px,6px) rotate(-4deg)}}@keyframes bearBreathe{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-5px)}}@keyframes bob{0%,100%{transform:rotate(10deg) translateY(0)}50%{transform:rotate(6deg) translateY(-10px)}}@keyframes pulse{0%,100%{opacity:.65}50%{opacity:1}}@keyframes storyReveal{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes beat{50%{transform:scale(1.14)}}@keyframes confettiFall{to{transform:translate(var(--sway),110vh) rotate(var(--rotation));opacity:0}}.float-slow{animation:cloudFloat 7s ease-in-out infinite}.float-fast{animation:cloudFloat 5s ease-in-out infinite}.flutter{animation:flutter 5s ease-in-out infinite}.bee-drift{animation:beeDrift 5s ease-in-out infinite}.bounce-gently{animation:bob 4s ease-in-out infinite}
@media(max-width:700px){.sound-toggle{top:12px;right:12px;padding:8px 10px}.sound-label{display:none}.intro-title{font-size:clamp(60px,13vw,88px)}.intro-subtitle{max-width:300px}.intro-content{padding:90px 0 50px}.intro-cloud{width:105px}.cloud-left{top:13%;left:-30px}.cloud-right{bottom:13%;right:-30px}.intro-bee{top:23%;right:4%;width:75px}.intro-butterfly{bottom:20%;left:4%;width:45px}.intro-footer{margin-top:30px;font-size:8px}.opening-hint{letter-spacing:.1em;font-size:10px}.top-nav{height:70px;padding:0 16px}.nav-tag{font-size:8px}.story-heading{margin-top:35px}.story-heading h2{font-size:clamp(37px,9vw,49px)}.story-heading-copy{font-size:16px}.illustrated-hero{height:280px;max-width:460px}.hero-tree{width:66%;left:-8%;bottom:0}.hero-bear{width:43%;left:36%;bottom:0}.hero-piglet{width:25%;right:-2%;bottom:6%}.hero-cloud-a{left:0;top:6%;width:27%}.hero-cloud-b{right:1%;width:23%}.hero-bee{width:24%;top:20%;right:12%}.hero-butterfly{width:18%;left:54%}.letter-section{min-height:0;padding:15px 16px 50px}.paper-back{width:min(470px,100%);padding:8px}.paper-edge{padding:6px}.paper{padding:26px 19px 24px;min-height:590px}.paper-overline,.the-question-small{font-size:8px;letter-spacing:.13em}.dear{font-size:40px}.paper-prose{font-size:15px;line-height:1.64}.paper h3{font-size:35px}.signature{font-size:42px}.letter-bear{width:30%;right:-5%;bottom:-25px}.letter-piglet{width:16%;left:-2%;bottom:0}.letter-bees{width:18%;left:0;bottom:50%}.accent-cloud{width:95px;right:-10px;top:-30px}.accent-butterfly{width:55px;left:-10px;top:25%}.bunting-scene{margin-top:20px}.chapter{margin-top:30px}.chapter h2{font-size:40px}.chapter>p:not(.mini-kicker){font-size:16px}.book-scene{height:275px}.book-art{width:94%;left:2%;bottom:7%}.book-words{left:13%;bottom:31%;width:73%;font-size:clamp(33px,10vw,50px)}.book-piglet{width:24%;right:-5%}.answer-section{margin-top:55px}.answer-panel{padding:50px 18px 42px}.answer-cloud{width:100px;right:-15px;top:-55px}.answer-panel h2{font-size:42px}.answer-panel>p:not(.mini-kicker){font-size:16px}.yes-button,.again-button{padding:13px 21px}.friends-scene{height:230px}.friends-grass{width:95%;left:2%}.friends-tiger{width:32%;left:4%}.friends-bear{width:43%;right:4%}.friends-balloon{width:25%;left:46%;bottom:21%}.friends-bee{width:20%;right:3%}}
@media(max-width:380px){.paper{padding:22px 12px}.paper-prose{font-size:14px}.paper h3{font-size:32px}.opening-hint{font-size:9px}.intro-title{font-size:60px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Optional personal message after accepting */
.message-card{margin:28px auto 0;max-width:460px;padding:25px 23px 20px;border:1px solid #ead5b0;border-radius:17px;background:linear-gradient(155deg,#fffdfa,#fbf3e4);box-shadow:0 12px 35px #99794715;text-align:left}
.message-card label{display:block;color:#6c724d;font:23px/1.25 var(--serif)}
.message-card label span{font:12px var(--sans);color:#9d998a}
.message-card>p:not(.send-hint){font:14px/1.5 var(--sans);color:#908b78;margin:9px 0 13px}
.message-card textarea{width:100%;resize:vertical;min-height:105px;border:1px solid #e3d5bd;background:#fffefa;border-radius:10px;padding:13px 14px;color:#52513f;line-height:1.6;font:15px var(--sans);outline-offset:3px}
.message-card textarea:focus{outline:2px solid #d7b478;border-color:#d7b478}
.message-card small{display:block;text-align:right;font:11px var(--sans);color:#9a947f;margin-top:5px}
.message-button{border:0;border-radius:30px;margin-top:10px;background:#87976e;color:white;font:600 13px var(--sans);padding:13px 21px;transition:background .2s,transform .2s}
.message-button:hover{background:#73845c;transform:translateY(-2px)}
.message-card .send-hint{font:12px/1.6 var(--sans);color:#90866e;margin:14px 0 0}
@media(max-width:480px){.message-card{padding:19px 15px}.message-card label{font-size:21px}}

/* VERSION 4 · PERSONALIZED GOLDEN TICKET */
.ticket-teaser{font-size:10px;letter-spacing:.17em;color:#a0804c;font-weight:700;margin:0 0 12px;text-transform:uppercase;max-width:92vw;text-align:center}.ticket-spark{color:#ddb76a;padding:0 4px}.ticket-interlude[hidden]{display:none!important}.ticket-interlude{position:relative;isolation:isolate;min-height:100svh;display:grid;place-items:center;overflow:hidden;padding:86px 20px 65px;background:linear-gradient(#fffdf9b0,#fff8e6c6),url('art/gingham-page.jpg') center / 380px}.ticket-interlude:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,#fffef8 2%,transparent 70%);z-index:-1}.ticket-stage{position:relative;z-index:2;width:min(100%,630px);display:flex;align-items:center;flex-direction:column;text-align:center}.ticket-small-label{font-size:10px;letter-spacing:.23em;color:#948667;font-weight:700;margin:0 0 27px}.golden-ticket{width:100%;position:relative;padding:15px;filter:drop-shadow(0 15px 24px #8b724040);border-radius:24px;background:linear-gradient(138deg,#d4a457,#fce3a3 18%,#b9853b 46%,#f8db90 73%,#b78a43);transform:translateY(60px) rotate(-5deg) scale(.83);opacity:0;transition:transform 1s cubic-bezier(.22,1,.26,1),opacity .8s}.ticket-visible .golden-ticket{transform:translateY(0) rotate(-1deg) scale(1);opacity:1}.ticket-inner{background:repeating-linear-gradient(90deg,#fffcf3 0 23px,#fff8e8 23px 46px);border:2px dashed #d3ae6f;border-radius:15px;min-height:375px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 25px;position:relative}.ticket-inner:before,.ticket-inner:after{content:'✦';position:absolute;color:#cea25e;font-size:24px;top:17px}.ticket-inner:before{left:21px}.ticket-inner:after{right:21px}.ticket-stars{color:#cda65e;letter-spacing:12px;font-size:17px}.ticket-above{letter-spacing:.22em;color:#8e875c;font-size:10px;font-weight:700;margin:22px 0 0}.ticket-number{position:absolute;right:22px;bottom:15px;font-size:9px;letter-spacing:.12em;color:#b59a6b}.golden-ticket h2{font:clamp(32px,6vw,55px)/1.18 var(--serif);font-weight:400;color:#46523a;margin:18px 0 0}.golden-ticket h2 span{display:block;color:#bf8736;font:1.3em/1.1 var(--script);padding-top:5px}.ticket-heart{color:#d8aa54;font-size:37px;margin:9px 0 1px}.ticket-words{font:italic 18px/1.6 var(--serif);color:#7d795d;margin:0 auto;max-width:390px}.ticket-signed{font:29px var(--script);color:#bc8c46;margin-top:21px}.ticket-continue{background:#ae8140;color:#fff9ec;border:0;border-radius:99px;padding:16px 26px;margin-top:34px;box-shadow:0 7px 0 #8d693c,0 16px 29px #a7844555;font-weight:700;letter-spacing:.02em;opacity:0;transform:translateY(15px);transition:opacity .7s .5s,transform .7s .5s}.ticket-visible .ticket-continue{opacity:1;transform:translateY(0)}.ticket-continue:hover{filter:brightness(1.05)}.ticket-continue span{margin-left:10px;color:#ffda91}.ticket-hint{font:italic 15px var(--serif);color:#a39679;margin:25px 0 0}.ticket-cloud{position:absolute;max-width:220px;opacity:.8;animation:cloudFloat 9s ease-in-out infinite}.ticket-cloud-left{left:4%;top:15%;width:17%}.ticket-cloud-right{right:4%;bottom:13%;width:18%;animation-delay:-3s}.ticket-flying-bee{position:absolute;right:11%;top:13%;width:130px;animation:beeDrift 7s ease-in-out infinite}.response-status{font-size:12px!important;line-height:1.6!important;min-height:1em;margin:12px auto 0!important;max-width:370px;color:#847350!important}.answer-buttons[hidden]{display:none}.message-button:disabled{opacity:.65;cursor:default}@media(max-width:600px){.ticket-interlude{padding:100px 18px 45px}.ticket-inner{padding:36px 16px;min-height:345px}.ticket-words{font-size:16px}.ticket-cloud{width:105px}.ticket-flying-bee{width:80px;right:0}.ticket-small-label{font-size:9px}.ticket-above{font-size:8px}.ticket-teaser{font-size:9px;letter-spacing:.08em}}

/* V5: ticket is the first scene, accessible even before any click. */
.ticket-active .intro { display:none; }
.ticket-active .story { display:none; }
.golden-ticket h2 { max-width:480px; font-size:clamp(28px,5.4vw,47px); line-height:1.28; }
.golden-ticket h2 span { font-size:1.08em; line-height:1.15; }
@media (max-width:600px){ .golden-ticket h2{font-size:clamp(26px,7vw,39px)}.golden-ticket h2 span{font-size:1.05em;} }
