.puppy-sticker{display:inline-block;width:120px;max-width:100%;line-height:0;flex:none;pointer-events:none;user-select:none}.puppy-sticker img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(1px 3px 1px #5c46380c)}.puppy-pair{display:inline-flex;justify-content:center;align-items:end;gap:3px;max-width:100%;pointer-events:none}.puppy-pair>.puppy-sticker:first-child{transform:rotate(-7deg)}.puppy-pair>.puppy-sticker:last-child{transform:rotate(6deg)}.hero-puppies{position:absolute;top:78px;left:50%;transform:translateX(-50%);width:760px;justify-content:space-between;z-index:-1}.hero-puppies .puppy-sticker{width:146px}.puppy-margin-note{display:flex;align-items:center;gap:24px;margin:-10px 0 27px;padding:0 24px 10px;border-bottom:1px dashed #cfc5b1}.puppy-margin-note p{font-family:var(--serif);font-size:17px;letter-spacing:1px;margin:9px 0 0;color:#927a67}.puppy-margin-note .eyebrow{font-size:8px;letter-spacing:1.6px}.album-companions .puppy-sticker{width:90px}.puppy-memory-postcard{display:flex;align-items:center;gap:24px;width:fit-content;max-width:100%;margin:45px auto 15px;padding:15px 30px 15px 10px;border-block:1px solid #d9d1c2;transform:rotate(-1deg)}.puppy-memory-postcard .puppy-sticker{width:110px}.puppy-memory-postcard p{font-family:var(--serif);font-size:15px;margin:9px 0}.puppy-memory-postcard .eyebrow{font-size:8px}.cinema-banner .cinema-banner-puppy{width:94px}.cinema-banner{gap:14px}.route-cinema .cinema-banner{width:350px;top:43px;padding:16px 18px}.empty-cinema-puppy{display:block;width:160px;margin:0 auto 16px}.birthday-puppy{position:absolute;width:130px;bottom:12px;right:12px;transform:rotate(8deg);z-index:2}.garden-puppy{position:absolute;width:170px;right:-7px;bottom:28px;transform:rotate(7deg);z-index:4}.letter-puppies{position:absolute;left:50%;top:150px;width:min(780px,92%);transform:translateX(-50%);justify-content:space-between}.letter-puppies .puppy-sticker{width:154px}.opened-letter-puppies{margin:8px auto 20px}.opened-letter-puppies .puppy-sticker{width:75px}.play-companions .puppy-sticker{width:110px}.question-puppies{margin:4px auto 8px}.question-puppies .puppy-sticker{width:100px}.game-puppy-cheer{display:block;width:120px;margin:0 auto 15px}.puppy-source-credit{display:block;font-size:9px;letter-spacing:.5px;color:var(--muted);text-align:center;padding:12px 0 18px}.puppy-source-credit a{text-underline-offset:3px;text-decoration:underline}@media (min-width:701px) and (max-width:1100px){.hero-puppies{width:650px;top:92px}.hero-puppies .puppy-sticker,.letter-puppies .puppy-sticker{width:115px}.route-cinema .cinema-banner{width:280px;padding:14px;top:40px}.cinema-banner .cinema-banner-puppy{width:70px}.route-cinema .cinema-banner p{font-size:18px}}@media (max-width:800px){.route-cinema .cinema-banner{position:static;width:100%;padding:22px 19px}.route-cinema .tmdb-attribution{order:4}}@media (max-width:700px){.hero-puppies{position:relative;left:auto;top:auto;transform:none;width:190px;margin:8px auto 0;z-index:1}.hero-puppies .puppy-sticker{width:90px}.route-home .tearoff-calendar{top:414px}.route-home .hero-side-note{top:415px}.puppy-margin-note{padding:0 0 14px;margin:-5px 0 22px;gap:12px}.puppy-margin-note .eyebrow{font-size:6px;letter-spacing:1px}.puppy-margin-note p{font-size:12px;letter-spacing:.5px;line-height:1.9;margin-top:6px}.album-companions .puppy-sticker{width:57px}.puppy-memory-postcard{gap:12px;padding:10px 2px}.puppy-memory-postcard .puppy-sticker{width:85px}.puppy-memory-postcard .eyebrow{font-size:6px}.puppy-memory-postcard p{font-size:12px}.cinema-banner .cinema-banner-puppy{width:74px}.cinema-banner{gap:10px}.birthday-puppy{width:112px;bottom:17px}.garden-puppy{width:135px;right:0;bottom:24px}.letter-puppies{position:relative;left:auto;top:auto;transform:none;width:180px;margin:12px auto 0}.letter-puppies .puppy-sticker{width:85px}.letters-stage .envelope{margin-top:36px}.play-companions .puppy-sticker,.question-puppies .puppy-sticker{width:85px}}@media (prefers-reduced-motion:reduce){.puppy-pair,.puppy-sticker{animation:none!important;transition:none!important}}.login-page{max-width:1240px;margin:auto;padding:36px 48px 24px}.login-brand{display:flex;gap:12px;align-items:center;font-family:var(--serif);font-size:19px;letter-spacing:.06em}.login-brand small{display:block;font:9px Segoe UI,sans-serif;letter-spacing:.22em;margin-top:7px;color:var(--green)}.login-spread{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:80px;padding:56px 0 62px}.login-story{position:relative}.login-story h1{font:500 clamp(64px,7.4vw,98px)/.95 Cormorant Garamond,var(--serif);letter-spacing:-.045em;margin:24px 0}.login-story h1 em{font-weight:400;color:var(--green)}.login-subtitle{font-family:var(--serif);font-size:19px;line-height:1.8;letter-spacing:.12em;margin-bottom:26px}.login-story-note{font-size:11px;letter-spacing:.08em;color:#787367;margin-top:28px}.login-envelope{isolation:isolate;position:relative;width:340px;height:178px;margin-left:16px;background:#e9ddc7;transform:rotate(-5deg);border:1px solid #dacdb4;box-shadow:0 18px 27px -18px #67534070,inset 0 0 30px #f7efdf}.login-envelope:before{content:"";position:absolute;inset:0;background:linear-gradient(151deg,transparent 49.7%,#d3c5ab 50%,transparent 50.5%),linear-gradient(29deg,transparent 49.7%,#d3c5ab 50%,transparent 50.5%)}.login-envelope:after{content:"";position:absolute;inset:0 0 auto;height:100px;background:#f1e6d3;clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 2px 1px #947f5a)}.envelope-seal{position:absolute;z-index:2;top:80px;left:144px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ad7470;color:#fae9dc;font:italic 13px var(--serif);border:3px double #c38a81;box-shadow:0 3px 4px #765a4140}.envelope-address{position:absolute;z-index:1;bottom:19px;left:24px;font:italic 18px Cormorant Garamond,var(--serif)}.login-envelope .botanical{width:95px;height:150px;position:absolute;right:-42px;top:25px;color:#7a8865;transform:rotate(34deg);z-index:-1}.login-envelope .postmark{position:absolute;right:0;top:8px;transform:scale(.55);transform-origin:right top;opacity:.6;z-index:2}.login-paper{position:relative;padding:48px 38px 34px;background:#fffcf5;border:1px solid #e4dfd3;box-shadow:0 16px 60px -30px #74634c50,6px 7px 0 -1px #f0e9db,6px 7px 0 0 #ddd5c7}.login-paper-tab{position:absolute;top:-13px;right:25px;padding:7px 17px;background:#dfb4a680;transform:rotate(5deg);font-size:9px;letter-spacing:.18em}.login-lock{color:var(--green);margin-bottom:22px}.login-paper h2{font:24px var(--serif);letter-spacing:.02em;margin:14px 0}.login-paper>.muted{font-size:12px;line-height:1.8}.login-form{margin-top:30px}.login-form input{background:#f8f6f0;min-height:46px}.login-remember{margin:-2px 0 0}.login-remember label{display:inline-flex;align-items:center;gap:9px;min-height:36px;cursor:pointer;font-size:12px;color:var(--ink)}.login-form .login-remember input{width:17px;height:17px;min-height:17px;flex-shrink:0;margin:0;padding:0;accent-color:var(--green);cursor:pointer}.login-remember p{margin:2px 0 0 26px;font-size:10px;line-height:1.8;color:#80796c}.login-submit{width:100%;margin-top:5px}.login-submit svg:last-child{margin-left:auto}.login-footnote{color:#80796c;font-size:11px;line-height:1.8}.login-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:21px;color:var(--green);font-size:9px;letter-spacing:.15em}.login-footer a{font-size:11px;letter-spacing:.05em}.account-notice{border-top:3px solid #a7b69c}.login-paper{animation:login-appear .6s ease both}@keyframes login-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (max-width:800px){.login-page{padding:28px 26px}.login-spread{gap:35px}.login-story h1{font-size:66px}.login-envelope{width:250px;margin-left:0}.envelope-seal{left:103px}.login-paper{padding:35px 26px}}@media (max-width:620px){.login-brand{font-size:16px;gap:8px}.login-brand svg{width:32px}.login-spread{grid-template-columns:1fr;gap:38px;padding:38px 0}.login-story h1{font-size:66px;margin:18px 0}.login-subtitle{font-size:16px;margin-bottom:0}.login-envelope{position:absolute;width:125px;height:85px;right:0;bottom:0;margin:0;transform:rotate(8deg)}.login-envelope:after{height:46px}.envelope-seal{width:25px;height:25px;top:37px;left:50px;font-size:8px}.envelope-address,.login-envelope .botanical,.login-envelope .postmark{display:none}.login-story-note{max-width:195px;font-size:10px;line-height:1.8}.login-paper{padding:30px 24px}.login-lock{margin-bottom:14px}.login-paper h2{font-size:22px}.login-footer{gap:14px;flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.login-paper{animation:none}}