/* Phone-first illustrated plaza and December 1 theatre. */
body{background:#102c38;color:#f9e7c8;background-image:radial-gradient(ellipse at 50% 0,#37536366,transparent 65%);--night:#102c38;--gold:#e9bd78;--scene-accent:#d87783}
header,main,footer{max-width:1320px}
header{padding:34px 22px 12px;border:0;color:#f9e7c8}
.brand{font-size:35px}.masthead{font-size:8px;letter-spacing:2px}.year{font-size:11px;color:#e9bd78}
.brand:after{background:#f9e7c8}.christmas-lights{height:22px;opacity:.8}.christmas-lights i{height:10px;width:6px}
main{padding:0 12px}.hero{position:relative;display:block;min-height:650px;padding:33px 18px 0;margin:0;isolation:isolate;overflow:hidden;border:1px solid #e9bd782b;border-radius:160px 160px 8px 8px;background:#203c4d}
.world-sky{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 38%,#986b6b44,transparent 66%),linear-gradient(#152e40,#476071);z-index:-3}
.hero-copy{position:relative;z-index:3;text-align:center}
.edition{display:inline-block;background:none;border:0;box-shadow:none;color:#efce98;font-size:8px;font-weight:500;letter-spacing:2.2px;transform:none;padding:0}
h1{font:normal clamp(38px,11vw,58px)/1.05 Georgia,serif;text-transform:none;letter-spacing:-1.8px;margin:16px 0}
h1 em{font:italic 1em Georgia,serif;letter-spacing:-1.8px;color:#efb2ac;text-transform:none}
.intro{color:#f5e5d5be;font-size:12px;line-height:1.7;margin:0 auto;max-width:31ch}.intro br{display:initial}
.primary{gap:18px;justify-content:center;background:#f4dfb5;color:#253d43;border:1px solid #f9e7c8;border-radius:40px;box-shadow:0 6px 24px #061a2933;font-size:12px;font-weight:600;min-height:48px;width:auto;padding:12px 20px;letter-spacing:.2px}
.hero .primary{margin-top:20px}.primary span{font-size:18px}.primary:hover{background:#fff0d3}
.plaza-art{position:absolute;inset:160px -60% 0;z-index:-2;background:url('plaza.svg') center bottom/auto 100% no-repeat;pointer-events:none;mask-image:linear-gradient(transparent,#000 24%)}
.world-glow{position:absolute;inset:35% 0 0;background:radial-gradient(ellipse at 51% 72%,#f6b85a55,transparent 58%);opacity:calc(.08 + var(--world-opened,0)*.035);pointer-events:none;transition:opacity 1.4s;mix-blend-mode:screen;z-index:0}
.world-stars{position:absolute;inset:0;pointer-events:none;z-index:1}.world-stars i{position:absolute;background:#ffe3a1;width:4px;height:4px;border-radius:50%;opacity:0;box-shadow:0 0 10px 3px #ffd68188;transition:opacity 1s}.world-stars i.is-lit{opacity:1;animation:star-breathe 4s ease-in-out infinite alternate}
.world-garland{position:absolute;bottom:23%;left:12%;width:76%;text-align:center;color:#f2d496;letter-spacing:8px;font-size:14px;opacity:0;transform:translateY(-10px);transition:opacity 1.2s,transform 1.2s;pointer-events:none}
body[data-world-stage="1"] .world-garland,body[data-world-stage="2"] .world-garland,body[data-world-stage="3"] .world-garland,body[data-world-stage="4"] .world-garland,body[data-world-stage="5"] .world-garland,body[data-world-stage="6"] .world-garland{opacity:1;transform:none}
body[data-world-stage="2"] .plaza-art,body[data-world-stage="3"] .plaza-art,body[data-world-stage="4"] .plaza-art,body[data-world-stage="5"] .plaza-art,body[data-world-stage="6"] .plaza-art{filter:brightness(1.1) saturate(1.1)}
body[data-world-stage="4"] .world-garland,body[data-world-stage="5"] .world-garland,body[data-world-stage="6"] .world-garland{filter:drop-shadow(0 0 8px #ffcc76);font-size:20px}
.hero-cupido{position:absolute;right:10px;bottom:51px;display:flex;align-items:center;z-index:2;pointer-events:none}.hero-cupido img{width:118px;height:auto;filter:drop-shadow(0 10px 6px #061a2944);animation:cupido-float 5s ease-in-out infinite}.hero-cupido span{display:none;font:italic 15px/1.4 Georgia;color:#ffebc8}.hero-cupido i{font:9px Arial;color:#f4cc92}
.world-caption{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;gap:5px;text-align:center;padding:15px 10px;background:linear-gradient(transparent,#102c38e6);color:#f9e7c8}.world-progress{font-size:10px;letter-spacing:.3px}.world-hint{font:italic 11px Georgia;color:#e2b98a}
.world-details{position:absolute;inset:0;pointer-events:none;z-index:1}.world-details>*{opacity:0;transition:opacity 1.2s,translate 1.2s;translate:0 10px}.world-lantern{position:absolute;width:15px;height:24px;border-radius:4px 4px 7px 7px;background:#ffe3a1;border:2px solid #bd8659;box-shadow:0 0 22px 8px #ffce7355;bottom:24%;left:13%}.world-lantern:before{content:'';position:absolute;bottom:100%;left:5px;height:90px;width:1px;background:#ddbb8c}.lantern-two{left:auto;right:17%;bottom:36%}.world-couple{position:absolute;width:90px;height:auto;left:20%;bottom:9%}.world-gifts{position:absolute;right:12%;bottom:11%;display:flex;gap:3px;align-items:end}.world-gifts i{display:block;width:20px;height:23px;background:linear-gradient(90deg,transparent 42%,#f7d194 42% 56%,transparent 56%),#c4677a;border:1px solid #f4d4a6}.world-gifts i:nth-child(2){height:32px;background-color:#518b85}.world-gifts i:nth-child(3){width:25px;height:17px;background-color:#c59056}.world-finale-star{position:absolute;right:30%;top:37%;font-size:60px;color:#ffe1a1;text-shadow:0 0 22px #ffda8a}
body:not([data-world-stage="0"]) .lantern-one{opacity:1;translate:0 0}
body:is([data-world-stage="3"],[data-world-stage="4"],[data-world-stage="5"],[data-world-stage="6"]) .lantern-two{opacity:1;translate:0 0}
body:is([data-world-stage="4"],[data-world-stage="5"],[data-world-stage="6"]) .world-couple{opacity:1;translate:0 0}
body:is([data-world-stage="5"],[data-world-stage="6"]) .world-gifts{opacity:1;translate:0 0}
body[data-world-stage="6"] .world-finale-star{opacity:1;translate:0 0}
body[data-theme="rosa"] .world-sky{background:linear-gradient(#33263f,#795769)}body[data-theme="talavera"] .world-sky{background:linear-gradient(#142b46,#3d6883)}body[data-theme="noche"] .world-sky{background:linear-gradient(#0c1d32,#293d5c)}body[data-theme="posada"] .world-sky{background:linear-gradient(#302d42,#927064)}body[data-theme="cielo"] .world-sky{background:radial-gradient(ellipse at top,#61548155,transparent),linear-gradient(#1d254b,#575378)}
.world-egg{position:absolute;border:0;background:none;color:#ffdc88;min-width:48px;min-height:48px;padding:7px;z-index:4;border-radius:50%;filter:drop-shadow(0 0 7px #ffd17a44)}.world-egg:focus-visible{outline-color:#ffdf9a}.world-egg svg{width:100%;height:100%}.egg-bell{left:47%;bottom:32%;width:48px;height:48px}.egg-cat{left:12%;bottom:13%;width:64px;height:60px;color:#edba89}
.egg-message{position:absolute;left:16px;right:16px;bottom:6%;margin:0;text-align:center;font:italic 13px/1.4 Georgia;color:#ffeac5;text-shadow:0 2px 6px #071a24;pointer-events:none;z-index:5;min-height:20px}
.world-comet{position:absolute;top:38%;left:12%;width:90px;height:2px;background:linear-gradient(90deg,transparent,#fff0c3);transform:rotate(-22deg);opacity:0;pointer-events:none;z-index:3}
.atmosphere-bar{margin:18px 8px 0;border:0;color:#d5c8b4;font-size:8px;letter-spacing:1px}.atmosphere-bar b{font-size:10px;font-weight:400}.atmosphere-bar button{border:1px solid #f3d3a63b;color:#ebd9bd;font-size:10px;min-height:44px;border-radius:22px}
.calendar{padding:32px 8px 20px}.calendar-heading{gap:12px;align-items:center}.calendar-heading h2{font:normal 31px/1.1 Georgia,serif;text-transform:none;letter-spacing:-1px;color:#ffebcb;margin:8px 0}.calendar .eyebrow{color:#d9ac7c;font-size:8px;letter-spacing:2px}.month{font-size:8px;color:#d9be94;border-left:1px solid #d9be9455;padding-left:13px}.month b{font-size:19px}.calendar-intro{font-size:11px;color:#d7c8b5;line-height:1.7}.preview-note{color:#a4b4b4;font-size:10px;line-height:1.7}.local-preview{color:#ccb993;font-size:10px;margin:8px 0;min-height:44px}.local-preview select{background:#1d3b48;color:#f8e4c3;border-color:#e9bd7844;font-size:10px}.local-preview input{accent-color:#e9bd78}
.doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px;margin-top:24px;padding:8px 0}
.door,.door.ready{position:relative;min-height:97px;border:5px solid #d29d78;border-bottom-width:7px;border-radius:45px 45px 2px 2px;box-shadow:0 5px 0 #071b2666,inset 0 0 0 2px #492a3533;background:#915563;color:#f8e6cb;font:normal 27px Georgia,serif;isolation:isolate;transition:transform .3s,filter .3s}
.door:before{inset:7px 5px 5px;border:1px solid #f5ddba33;border-radius:35px 35px 0 0;opacity:1}.door:after{content:'';position:absolute;right:9px;top:61%;width:4px;height:4px;border-radius:50%;background:#efc68b;box-shadow:0 0 5px #efc68b44}.door-symbol{display:none}
.door:nth-child(6n+2),.door:nth-child(2).ready{background:#3d6e74;border-color:#86a59b;color:#ffead0}.door:nth-child(6n+3),.door:nth-child(3).ready{background:#b07553;border-color:#dfba8c;color:#ffead0;border-radius:45px 45px 2px 2px}.door:nth-child(6n+4),.door:nth-child(4).ready{background:#9f526e;border-color:#d59a9b;color:#ffead0}.door:nth-child(6n+5){background:#54726a;border-color:#a3af94;color:#ffead0}.door:nth-child(6n){background:#6a6687;border-color:#a6a0b3;color:#ffead0}.door:nth-child(7n){background:#75555a;border-color:#b49387;color:#ffead0}.door:last-child{background:#80513e;border:5px solid #d7b16f;color:#ffead0}
.door:disabled{opacity:.7;filter:saturate(.65)}.door.ready{outline:0;box-shadow:0 0 30px #efbc5844,0 5px 0 #071b2666,inset 0 0 22px #f8c36166}.door.ready:hover{transform:translateY(-4px);box-shadow:0 0 35px #efbc5866}.door.opened{background:#dba864!important;color:#293f43!important;box-shadow:0 0 28px #efbc5855}.door.opened:after{content:'✦';top:auto;bottom:6px;right:4px;left:auto;padding:0;width:12px;height:14px;background:none;font-size:12px;color:#284651}
.calendar-footnote{color:#cbb397;font-size:13px}.calendar-footnote span{color:#eea5a6}footer{margin:12px 20px 0;padding:28px 0 max(28px,env(safe-area-inset-bottom));border-top:1px solid #dfb58133;color:#d2bd9e}footer>span:first-child{color:#adbaa9;font-size:8px}footer p{font-size:18px}.footer-heart{color:#e8a5a0}
/* A portrait stage: artwork stays visible while the dialogue changes. */
dialog.story-mode{background:#183442;color:#f7e5c8;border:1px solid #d9b17966;border-radius:22px;box-shadow:0 24px 100px #020d16aa;padding:16px 14px 14px;width:calc(100% - 16px);max-width:740px;max-height:calc(100dvh - 16px);overflow-x:hidden}
dialog.story-mode::backdrop{background:#061922d9;backdrop-filter:blur(6px)}
.story-mode .close{background:#1a3548;color:#efd3a4;border:1px solid #e6be7844;border-radius:50%;width:40px;height:40px;min-height:40px;top:10px;right:10px;font-size:25px;z-index:8}
.story-mode #day-label{color:#e1b782;font-size:8px;letter-spacing:2px;margin:4px 44px 8px 0}
.story-mode h2{font:normal 23px/1.1 Georgia;letter-spacing:-.5px;margin:6px 44px 14px 0;color:#ffe7c2}
.cupido-intro{text-align:center;padding:0}.story-stage{position:relative;height:230px;overflow:hidden;border-radius:100px 100px 6px 6px;background:#284c60 url('plaza.svg') 50% 80%/auto 340px no-repeat;isolation:isolate;box-shadow:inset 0 -30px 40px #0d29377a}
.story-stage:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 45px #071e2c55;pointer-events:none}
.story-cupido{position:absolute;width:155px;height:auto;left:calc(50% - 78px);bottom:4px;z-index:2;filter:drop-shadow(0 7px 5px #0b233a55);animation:character-enter .7s cubic-bezier(.2,.7,.2,1) both,cupido-float 4s .7s ease-in-out infinite}
.story-couple{position:absolute;width:102px;height:auto;bottom:1px;right:0;opacity:0;transform:translateX(40px);transition:opacity .6s,transform .6s;z-index:1}
.story-stage[data-step="2"] .story-couple,.story-stage[data-step="3"] .story-couple{opacity:1;transform:none}.story-stage[data-step="2"] .story-cupido,.story-stage[data-step="3"] .story-cupido{left:8%;width:140px;transition:left .6s,width .6s}
.story-stamp{position:absolute;left:12px;top:17px;font-size:7px;font-weight:bold;letter-spacing:1.5px;color:#fce5b9;text-align:left;line-height:1.8;transform:rotate(-8deg);z-index:3}.story-stamp span{display:block;font:italic 16px Georgia;color:#e9bb83}
.scene-heart{position:absolute;right:14%;top:30px;z-index:4;width:64px;height:64px;border:0;background:none;color:#e9b967;filter:drop-shadow(0 0 13px #fbdc8e88);font-size:54px;line-height:1;pointer-events:none;transition:transform .5s,opacity .5s}
.scene-heart .heart-left,.scene-heart .heart-right{position:absolute;inset:0;transition:transform .9s cubic-bezier(.2,.8,.2,1);pointer-events:none}.heart-left{clip-path:polygon(0 0,50% 0,44% 35%,58% 54%,45% 71%,50% 100%,0 100%)}.heart-right{clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%,45% 71%,58% 54%,44% 35%)}
.story-stage[data-step="1"] .scene-heart .heart-left{transform:translate(-8px,8px) rotate(-22deg)}.story-stage[data-step="1"] .scene-heart .heart-right{transform:translate(7px,40px) rotate(24deg)}
.scene-piece{position:absolute;right:19%;top:80px;z-index:5;min-width:58px;min-height:58px;width:66px;height:66px;padding:0;border:0;background:transparent;color:#ffd98c;font-size:60px;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 0 12px #ffe5aa)}
.scene-piece span{display:block;pointer-events:none;animation:piece-float 2s ease-in-out infinite alternate;clip-path:polygon(45% 0,100% 0,100% 100%,45% 100%,38% 70%,55% 52%,40% 33%)}
.piece-target{position:absolute;left:20px;bottom:18px;z-index:4;border:1px dashed #ffe3a1;min-width:70px;min-height:48px;padding:8px;border-radius:12px;color:#ffe3a1;background:#102c38cc;font-size:10px;line-height:1.4}.piece-target span{display:block;font-size:20px}.scene-instruction{position:absolute;bottom:0;left:0;right:0;z-index:6;padding:8px;background:#102c38d9;color:#ffe7b9;font-size:10px;pointer-events:none}
.story-stage [hidden]{display:none!important}.story-stage[data-step="1"] .story-cupido{left:0;width:140px}.story-stage[data-step="1"] .scene-heart .heart-right{opacity:0}
.story-mode [hidden]{display:none!important}.story-stage:not([data-step="0"]) .scene-heart .heart-right{opacity:0}
.cupido-name{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1.4px;font-weight:500;color:#e3bc8d;margin:14px 0 8px;text-align:left}.cupido-counter{font-size:9px;color:#cbb796;letter-spacing:1px;margin:0}
.cupido-dialogue{font:normal 15px/1.65 Georgia,serif;color:#f7e5cc;margin:0;text-align:left;min-height:80px;overflow-wrap:anywhere}
.story-controls{display:flex;flex-direction:column;gap:2px}.cupido-intro .cupido-next{min-height:48px;margin:15px 0 4px;padding:12px 16px;width:100%;font-size:12px}.cupido-skip{font-size:10px;min-height:44px;color:#d3bc99}
.story-mode #back{display:block;color:#c6b89f;font-size:10px;min-height:44px;margin:6px auto 0}.story-mode #back:hover,.cupido-skip:hover{color:#ffedc8}.story-mode .primary{color:#253d43}
.story-mode button:focus-visible,.story-mode .letter:focus-visible{outline-color:#f7d798;outline-offset:3px}
.letter-scene{position:relative;text-align:center;padding:20px 0 0;background:radial-gradient(ellipse at center,#e5b56b22,transparent 70%);border-radius:14px}
.letter-scene .story-cupido{position:relative;left:auto;bottom:auto;width:105px;margin:-10px 0 -8px;animation:cupido-float 4s infinite}.letter-invitation{font:italic 14px Georgia;color:#e2c298;margin:4px 0 18px}
.story-mode .envelope{position:relative;display:block;width:220px;height:140px;margin:15px auto 22px;border:1px solid #dfba80;background:linear-gradient(145deg,#f2d7a9,#d4ac79);border-radius:4px;color:#a04355;box-shadow:0 16px 35px #061a2988;transform:rotate(-5deg);font-size:27px;animation:envelope-enter .7s ease both}
.story-mode .envelope:before{content:'';position:absolute;inset:0;background:#f8e5bd;clip-path:polygon(0 0,100% 0,50% 59%);filter:drop-shadow(0 2px 2px #76543544)}.envelope-seal{position:relative;display:inline-grid;place-items:center;z-index:1;width:44px;height:44px;border-radius:50%;background:#a44457;color:#f6d8a0;font-size:21px;box-shadow:0 2px 5px #41252e66}.envelope-address{position:absolute;bottom:13px;left:0;right:0;font:italic 13px Georgia;color:#705044}.envelope-hint{font-size:10px;letter-spacing:1px;color:#c9b797}.story-mode .sample-label{font-size:9px;color:#b6afa1}
.story-mode .letter{position:relative;background:#f6e5c4;color:#483842;font:italic 22px/1.7 Georgia;min-height:160px;padding:40px 20px;margin:20px 4px;border-radius:2px;box-shadow:0 12px 30px #071b2655;animation:letter-unfold .7s ease both;overflow-wrap:anywhere}.story-mode .letter:before{content:'PARA ADRIANA';display:block;font:8px Arial;letter-spacing:3px;color:#9c6b61;margin-bottom:20px}
.story-mode .heart-keepsake{border:1px solid #deb57555;background:radial-gradient(ellipse at 50% 15%,#be8c4433,transparent 75%);color:#f6dfb9;border-radius:16px;margin-top:22px;padding:24px 15px;animation:keepsake-enter .8s ease both}.story-mode .heart-keepsake h3{font:normal 23px/1.15 Georgia;color:#f5d49b}.story-mode .heart-keepsake p{font-size:12px;line-height:1.7}.story-mode .heart-fragment{color:#efc77f;filter:drop-shadow(0 0 15px #f6c46788);animation:piece-float 3s ease-in-out infinite alternate}.story-mode .heart-keepsake .keepsake-status{font-size:9px;color:#c4baa2}
@keyframes cupido-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes character-enter{from{opacity:0;translate:0 35px}to{opacity:1;translate:0 0}}
@keyframes piece-float{from{translate:0 0;rotate:-4deg}to{translate:0 -6px;rotate:5deg}}
@keyframes envelope-enter{from{opacity:0;translate:0 25px;rotate:-8deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes letter-unfold{from{opacity:0;transform:translateY(25px) scaleY(.8)}to{opacity:1;transform:none}}
@keyframes keepsake-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes star-breathe{from{filter:brightness(.7)}to{filter:brightness(1.5)}}
@media(min-width:600px){main{padding:0 24px}.hero{min-height:790px;padding-top:54px;border-radius:260px 260px 8px 8px}h1{font-size:74px}.intro{font-size:14px}.hero .primary{font-size:13px}.plaza-art{inset:150px -10% 0}.hero-cupido{right:12%;bottom:65px}.hero-cupido img{width:170px}.hero-cupido span{display:block}.egg-bell{left:59%;bottom:36%}.egg-cat{left:24%;bottom:14%}.world-caption{padding:21px;gap:8px}.world-progress{font-size:12px}.world-hint{font-size:13px}.egg-message{bottom:8%;font-size:15px}.calendar{padding:50px 30px 35px}.calendar-heading h2{font-size:46px}.calendar-intro{font-size:13px}.preview-note{font-size:11px}.doors{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 20px}.door,.door.ready{min-height:145px;font-size:42px;border-radius:65px 65px 2px 2px!important}.door:before{border-radius:55px 55px 0 0}.atmosphere-bar{margin:24px 30px 0}dialog.story-mode{padding:22px 28px;max-width:640px}.story-mode h2{font-size:30px}.story-stage{height:320px;background-size:auto 480px}.story-cupido{width:220px;left:calc(50% - 110px)}.story-couple{width:150px;right:24px}.story-stage[data-step="1"] .story-cupido{width:210px;left:15%}.story-stage[data-step="2"] .story-cupido,.story-stage[data-step="3"] .story-cupido{width:210px;left:13%}.scene-heart{right:21%;top:45px;font-size:70px;width:80px;height:80px}.scene-piece{top:108px;right:24%;font-size:72px;width:80px;height:80px}.piece-target{left:34px;bottom:28px}.scene-instruction{font-size:11px}.cupido-dialogue{font-size:18px;min-height:90px}.cupido-name{font-size:10px}.story-controls{flex-direction:row;align-items:center;gap:16px}.cupido-intro .cupido-next{flex:1;width:auto}.cupido-skip{max-width:160px}.story-mode #back{margin-top:12px}}
@media(min-width:1050px){.hero{min-height:760px;border-radius:12px;padding:70px 62px}.hero-copy{text-align:left;max-width:550px}.intro{margin:0;font-size:15px}.edition{font-size:10px}h1{font-size:85px}.plaza-art{inset:0 -10% 0 15%;background-size:auto 100%;opacity:.95}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#142f41 8%,#142f41d9 30%,transparent 65%);z-index:-1;pointer-events:none}.hero .primary{margin-top:26px}.hero-cupido{right:10%;bottom:58px}.hero-cupido img{width:210px}.egg-star{top:21%;left:70%}.egg-bell{left:73%;bottom:37%}.egg-cat{left:49%;bottom:16%}.world-caption{align-items:flex-start;padding:28px 62px}.egg-message{left:40%;bottom:4%;right:6%}.world-garland{left:42%;width:50%;bottom:25%}.calendar{padding-inline:62px}.doors{grid-template-columns:repeat(8,minmax(0,1fr));gap:26px}.door,.door.ready{min-height:145px}.atmosphere-bar{margin-inline:62px}footer{margin-inline:auto;padding:40px 62px}.world-hint{font-size:12px}.world-progress{font-size:13px}}
@media(max-height:700px) and (max-width:599px){dialog.story-mode{padding-top:12px}.story-mode h2{font-size:20px;margin-bottom:8px}.story-stage{height:180px;background-size:auto 285px}.story-cupido{width:125px;left:calc(50% - 62px)}.story-stage[data-step="1"] .story-cupido,.story-stage[data-step="2"] .story-cupido,.story-stage[data-step="3"] .story-cupido{width:120px}.story-couple{width:85px}.scene-heart{top:15px}.scene-piece{top:63px}.cupido-name{margin:9px 0 5px}.cupido-dialogue{font-size:13px;min-height:65px}.cupido-intro .cupido-next{margin-top:10px}.story-mode #back{margin-top:0}.story-stamp{font-size:6px}.story-stamp span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.world-stars i,.hero-cupido img,.story-cupido,.scene-piece,.story-mode .envelope,.story-mode .letter,.story-mode .heart-keepsake,.story-mode .heart-fragment{animation:none!important}*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* The office is one painted scene; targets align with objects in that scene. */
.story-mode .office-stage{height:auto;aspect-ratio:3/2;border-radius:6px;background:#584634;box-shadow:none}
.office-stage:after{display:none}
.story-office{display:block;width:100%;height:100%;object-fit:contain}
.office-stage .scene-piece{left:44%;right:auto;top:58%;width:20%;height:29%;min-width:48px;min-height:48px;font-size:0;filter:none}
.office-stage .scene-piece span{display:none}
.office-stage .scene-piece:focus-visible{outline:3px dashed #ffe3a1;outline-offset:-4px;border-radius:50%}
.office-stage .piece-target{left:8px;bottom:29px;min-height:44px;min-width:0;padding:7px 9px;font-size:10px;border:1px solid #ffe3a1;border-radius:5px}
.office-stage .piece-target span{display:none}
.office-stage .scene-instruction{font-size:10px;padding:6px}
.letter-office{display:block;width:100%;max-width:340px;height:auto;aspect-ratio:3/2;margin:0 auto 14px;border-radius:6px}
