/* A Christmas evening: the illustration sets the scene; light and small interactions bring it alive. */
.festive-theme{--paper:#fff6e6;--ink:#28453a;--red:#b34536;--line:#d6c7ab;background:var(--paper)}
.festive-theme::before{opacity:.035;z-index:8}
.festive-header{position:absolute;z-index:5;left:50%;top:0;transform:translateX(-50%);color:#fff6df;border-color:#f8deb735;padding-block:29px}
.festive-header .wordmark{font-size:25px;text-shadow:0 2px 8px #001c14}
.festive-header .wordmark b{color:#f7ca71;text-shadow:0 0 18px #ffb73688}
.festive-header .edition{font-size:9px;letter-spacing:1px;color:#f1dbb8}
.festive-header nav{align-items:center;gap:24px}
.festive-header nav a:hover{color:#ffdb9a;border-color:#ffdb9a}
.music-toggle{display:flex;align-items:center;gap:9px;min-height:41px;padding:8px 15px;border:1px solid #f5dba85c;border-radius:30px;background:#0d2929a8;color:#fff0d0;font-size:11px;cursor:pointer}
.music-toggle>span:first-child{font-size:20px;line-height:1;color:#f6d089}
.music-toggle[aria-pressed=true]{background:#8656299e;box-shadow:0 0 22px #f8bc3825}
.christmas-world{position:relative;isolation:isolate;background:#102f2b;min-height:830px;overflow:hidden;color:#fff5df}
.family-backdrop{position:absolute;inset:0;z-index:-3}
.family-backdrop img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.family-backdrop::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#08241c77 0%,#09271d30 32%,transparent 57%),linear-gradient(0deg,#102f2b 0%,#102f2b80 9%,transparent 25%),linear-gradient(180deg,#061f2180,transparent 22%)}
.christmas-copy{position:relative;z-index:2;padding-top:205px;padding-bottom:118px;pointer-events:none}
.christmas-copy>*{pointer-events:auto;max-width:365px}
.christmas-eyebrow{font:9px/1.8 'Courier New',monospace;letter-spacing:1.8px;color:#f5d192;margin-bottom:22px}
.christmas-copy h1{font:normal 78px/.98 var(--serif);letter-spacing:-3px;color:#fff5da;text-shadow:0 2px 20px #05251d60;margin:0 0 25px}
.christmas-copy h1>span{display:block;font-size:40px;letter-spacing:-1px;line-height:1.2;margin-bottom:6px}
.christmas-copy h1 em{display:block;color:#f4ce82;font-weight:normal}
.christmas-intro{font:21px/1.5 var(--serif);color:#fff5de;margin-bottom:14px}
.christmas-description{max-width:295px;font-size:13px;line-height:1.8;color:#e1e9dc}
.christmas-button{display:inline-flex;align-items:center;gap:26px;padding:15px 24px;margin-top:26px;border:1px solid #edab76;border-radius:6px;background:#b44835;color:#fff9e9;box-shadow:0 0 32px #ffba4a2b,inset 0 0 0 3px #c86a4640;font-size:14px;transition:transform .25s,box-shadow .25s}
.christmas-button>span{font-size:29px;line-height:1;color:#ffdf9d}
.christmas-button:hover{transform:translateY(-3px);box-shadow:0 0 42px #ffc96f55,inset 0 0 0 3px #d8865d4d}
.hero-wish{font-size:25px;color:#f3d7a8;margin-top:22px;transform:rotate(-3deg);line-height:1.2}
.hero-bottom{position:absolute;z-index:3;bottom:29px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:center;gap:15px}
.hero-bottom>span{font:8px/1.4 'Courier New',monospace;letter-spacing:1px;color:#e0d6b5}
.motion-toggle{background:#0b2925a8;color:#e3dbbe;border:1px solid #e3dbbe4a;border-radius:20px;padding:8px 13px;font-size:10px;min-height:35px}
.motion-toggle[hidden]{display:none}
.fairy-lights{position:absolute;inset:0;pointer-events:none;z-index:-1}
.fairy-lights i{position:absolute;left:var(--x);top:var(--y);width:5px;height:5px;border-radius:50%;background:#fff1be;box-shadow:0 0 8px 3px #ffd279,0 0 28px 10px #e7a92f50;animation:christmas-glow 4.2s ease-in-out infinite;animation-delay:var(--delay)}
.window-snow{position:absolute;z-index:-2;left:37%;top:9%;width:49%;height:39%;overflow:hidden;pointer-events:none;transform:translateZ(0);mask-image:linear-gradient(transparent,#000 15%,#000 75%,transparent)}
.window-snow i{position:absolute;top:-10px;left:var(--x);width:var(--size);height:var(--size);border-radius:50%;background:#eff7ef;opacity:.7;animation:snow-fall var(--duration) linear infinite;animation-delay:var(--delay)}
@keyframes christmas-glow{0%,100%{opacity:.35;transform:scale(.65)}50%{opacity:.95;transform:scale(1.18)}}
@keyframes snow-fall{from{transform:translate3d(0,-10px,0)}to{transform:translate3d(28px,380px,0)}}
.magic-shelf{background:radial-gradient(ellipse at 50% 55%,#31554855,transparent 65%),#102f2b;color:#fff6df;position:relative;isolation:isolate;padding:18px 0 55px}
.magic-shelf::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:9px;background:radial-gradient(circle at 7px 9px,var(--paper) 7px,transparent 7.5px) 0 0/14px 10px repeat-x}
.shelf-heading{text-align:center;margin-bottom:30px}
.shelf-heading>p{font:8px/1.7 'Courier New',monospace;letter-spacing:1.6px;color:#d8c79c}
.shelf-heading h2{font-size:42px;letter-spacing:-1.3px;margin:13px 0}
.shelf-heading h2 em{color:#efc981}
.shelf-heading .handwritten{display:block;font-size:28px;color:#e5c69b;transform:rotate(-3deg)}
.window-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;max-width:880px;margin:auto}
.magic-window{display:block;padding:0;border:0;background:transparent;color:#fff0d2;min-width:0;perspective:900px;text-align:center}
.window-panel{display:block;position:relative;width:100%;aspect-ratio:1;border:3px solid #caac79;box-shadow:0 7px 18px #001b18b0,0 0 30px #f7ca6120;transition:box-shadow .25s;overflow:hidden;border-radius:5px}
.window-back{display:block;position:absolute;inset:0;background:var(--paper)}
.window-back img{width:100%;height:100%;object-fit:cover}
.window-front{display:block;position:absolute;inset:0;background:var(--paper);transform-origin:0 50%;backface-visibility:hidden;transition:transform .85s cubic-bezier(.3,.7,.25,1),opacity .5s .25s;z-index:1}










.window-caption{display:block;min-height:42px;padding-top:13px;font:21px/1.2 Caveat,cursive}
.window-caption>span{font:16px Arial;margin-left:3px}
.magic-window:hover .window-panel{box-shadow:0 8px 22px #001b18,0 0 30px #f5cf625c}
.magic-window:not(.unwrapped):hover .window-front{transform:rotateY(-12deg)}
.magic-window.unwrapped .window-front{transform:rotateY(-110deg);opacity:0;pointer-events:none}
.magic-window.unwrapped .window-panel{border-color:#f4d494;box-shadow:0 0 22px #fbd77966}
.unwrap-sparkle{position:absolute;left:40%;top:35%;z-index:3;font-size:60px;line-height:1;color:#ffe4a1;opacity:0;pointer-events:none}
.unwrapped .unwrap-sparkle{animation:unwrap-glow .9s ease-out both}
@keyframes unwrap-glow{0%{opacity:0;transform:scale(.2) rotate(-25deg)}30%{opacity:1}100%{opacity:0;transform:scale(3.4) rotate(40deg)}}
.unwrap-instruction{text-align:center;color:#d1d8c2;font-size:10px;margin-top:15px}
.shelf-star{position:absolute;font-size:80px;color:#cbb06e;opacity:.65;pointer-events:none;z-index:-1}
.shelf-star-left{left:3%;top:42%;transform:rotate(-15deg)}
.shelf-star-right{right:4%;top:21%;font-size:50px;transform:rotate(12deg)}
.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}
.festive-theme .first-four{position:relative}
.festive-theme .first-four::before{content:'✧';position:absolute;top:32px;right:12%;color:#c0933f;font-size:43px;transform:rotate(-10deg)}
.festive-theme .spread-heading h2 em{color:#b34536}
.festive-theme .cocoa-picture{box-shadow:0 8px 35px #b07c2925}
.festive-theme .cocoa-picture::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 40px #f9c97730;pointer-events:none}
.festive-theme .snow-story{background:#dcebe6}
.festive-theme .song-story{background:#9c342c;background-image:radial-gradient(ellipse at 75% 20%,#d488442b,transparent 65%)}
.festive-theme .song-story h2 em,.festive-theme .song-aside>.handwritten{color:#ffda91}
.festive-theme .song-label .chapter-number{color:#e6b76b}
.festive-theme .song-doodle{color:#ffd78e}
.festive-theme .unopened{background:#183d33;color:#fff0cf;border-color:#31584b;position:relative}
.festive-theme .unopened-heading h2 em{color:#e9c37d}
.festive-theme .unopened-heading>p{color:#d8e0cc}
.festive-theme .day-closed{border-color:#fff1d6;box-shadow:0 4px 12px #051e174d}
.festive-theme .calendar-caption>.handwritten{color:#efc989}
.festive-theme .tree-scene{background:radial-gradient(ellipse at 50% 30%,#fbdf8b60,transparent 60%),#dce4cc;box-shadow:0 12px 50px #b5984925;border-color:#fffdf1}
.festive-theme .tree-scene::before{content:'✦';position:absolute;top:54px;left:calc(50% - 20px);font-size:42px;line-height:1;color:#ffdc78;text-shadow:0 0 12px #ffcc66,0 0 40px #ffa824;z-index:2;pointer-events:none;animation:christmas-glow 4s ease-in-out infinite}
.festive-theme .tree-scribble{color:#795431}
.festive-theme .footer{border-top:2px solid #d7ae67;position:relative}
.festive-theme .footer-top{padding-block:40px}
.festive-theme .footer-top .handwritten{font-size:40px;color:#a44231}
.festive-theme .footer .ink-button{background:#b34536;color:#fff6df;box-shadow:0 0 25px #c7934630;border-color:#b34536}
.festive-theme dialog{border-color:#fff0cf;box-shadow:0 0 0 1px #d3b16d,0 0 70px #e7bc5855,0 20px 100px #001e18b3;background:#fff6e6}
.festive-theme dialog::backdrop{background:#06271de6;backdrop-filter:blur(6px)}
.festive-theme dialog[open]{animation:gift-arrives .28s ease-out}
@keyframes gift-arrives{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
.motion-paused .fairy-lights i,.motion-paused .window-snow i,.motion-paused .tree-scene::before,.page-hidden .fairy-lights i,.page-hidden .window-snow i,.page-hidden .tree-scene::before{animation-play-state:paused}
@media(min-width:1500px){.christmas-world{min-height:900px}.christmas-copy{padding-top:230px}.christmas-copy h1{font-size:86px}.christmas-copy>*{max-width:400px}.christmas-copy .christmas-description{max-width:310px}}
@media(max-width:1100px){.christmas-world{min-height:790px}.christmas-copy{padding-top:190px}.christmas-copy h1{font-size:68px}.christmas-copy h1>span{font-size:36px}.christmas-copy>*{max-width:320px}.christmas-intro{font-size:19px}.christmas-copy .christmas-description{max-width:265px;font-size:12px}.hero-wish{font-size:23px}.shelf-star-left{font-size:50px;left:1%}.shelf-star-right{font-size:40px;right:1%}.window-grid{max-width:800px;gap:24px}}
@media(max-width:800px){.festive-header .edition{display:none}.festive-header .wordmark{font-size:23px}.festive-header nav{gap:19px}.festive-header nav a{font-size:11px}.music-toggle{font-size:10px;padding-inline:12px}.christmas-world{min-height:770px}.christmas-copy{padding-top:180px}.christmas-copy h1{font-size:62px}.christmas-copy h1>span{font-size:33px}.christmas-copy>*{max-width:290px}.christmas-copy .christmas-description{max-width:230px}.family-backdrop img{object-position:58% 50%}.family-backdrop::after{background:linear-gradient(90deg,#08241cba,transparent 74%),linear-gradient(0deg,#102f2b,transparent 24%)}.window-snow{left:30%;width:55%}.window-grid{gap:18px}.window-caption{font-size:19px}.shelf-heading h2{font-size:35px}.shelf-heading .handwritten{font-size:25px}.shelf-heading>p{font-size:7px;letter-spacing:1.1px}.shelf-star{display:none}.festive-theme .tree-scene::before{top:70px;left:calc(50% - 15px);font-size:32px}.festive-theme .footer-top .handwritten{font-size:31px}}
@media(max-width:580px){.festive-header{padding-block:22px;border-color:#eed9ad45}.festive-header .wordmark{font-size:22px}.festive-header .wordmark b{font-size:32px;right:-33px}.festive-header nav>a{display:none}.music-toggle{font-size:10px;gap:6px;padding:7px 11px;min-height:38px}.christmas-world{min-height:0;padding-bottom:64px}.family-backdrop{height:440px;bottom:auto}.family-backdrop img{object-position:83% 45%;object-fit:cover}.family-backdrop::after{background:linear-gradient(0deg,#102f2b 0%,#102f2b05 35%),linear-gradient(180deg,#051b2280,transparent 25%)}.christmas-copy{padding-top:394px;padding-bottom:24px;text-align:center}.christmas-copy>*{max-width:none}.christmas-eyebrow{font-size:7px;letter-spacing:1.3px;margin-bottom:16px}.christmas-copy h1{font-size:62px;letter-spacing:-2px;line-height:1;margin-bottom:19px}.christmas-copy h1>span{font-size:29px;letter-spacing:-.7px;margin-bottom:4px}.christmas-intro{font-size:19px;line-height:1.45;margin-bottom:12px}.christmas-copy .christmas-description{max-width:285px;margin:auto;font-size:12px}.christmas-button{margin-top:22px;font-size:13px;padding:13px 23px;gap:22px}.hero-wish{font-size:24px;margin-top:21px}.hero-bottom{bottom:22px;gap:10px}.hero-bottom>span{font-size:6px;letter-spacing:.6px;max-width:150px}.motion-toggle{font-size:8px;padding:7px 10px;min-height:31px}.fairy-lights{height:410px}.window-snow{left:5%;top:75px;width:79%;height:135px}.magic-shelf{padding-top:25px;padding-bottom:38px}.shelf-heading{margin-bottom:26px}.shelf-heading>p{font-size:6px;max-width:260px;margin:auto;letter-spacing:1.1px}.shelf-heading h2{font-size:33px;line-height:1.12;margin:12px 0}.shelf-heading h2 em{display:block}.shelf-heading .handwritten{font-size:25px}.window-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px;max-width:350px}.window-caption{font-size:19px;min-height:38px;padding-top:10px}.window-panel{border-width:2px}.unwrap-instruction{font-size:9px;margin-top:12px}.festive-theme .first-four::before{right:5%;top:25px;font-size:31px}.festive-theme .spread-heading h2{font-size:37px}.festive-theme .tree-scene::before{top:49px;left:calc(50% - 16px);font-size:33px}.festive-theme .footer-top .handwritten{font-size:32px}.festive-theme .footer-top{padding-block:30px}}
@media(max-width:350px){.christmas-copy h1{font-size:55px}.hero-wish{font-size:21px}.window-caption{font-size:17px}.shelf-heading h2{font-size:30px}.family-backdrop img{object-position:82% 50%}}
@media(prefers-reduced-motion:reduce){.fairy-lights i,.window-snow i,.festive-theme .tree-scene::before,.unwrapped .unwrap-sparkle,.festive-theme dialog[open]{animation:none!important}.window-snow i{top:calc(var(--x) * .8)}.fairy-lights i{opacity:.7}.unwrap-sparkle{display:none}.window-front{transition:none!important}}

/* Fewer words, readable at a glance. */
.festive-theme p,.festive-theme .text-button,.festive-theme summary,.festive-theme .next-day{font-size:16px;line-height:1.6}
.festive-theme .music-toggle{font-size:14px;min-height:44px}
.festive-header nav>a{font-size:15px}
.christmas-world{min-height:710px}
.christmas-copy{padding-top:235px;padding-bottom:160px}
.christmas-copy h1{font-size:76px;line-height:1.04;margin-bottom:24px}
.christmas-copy .christmas-description{font-size:18px;max-width:350px;line-height:1.55}
.christmas-button{font-size:16px;gap:20px;margin-top:28px}
.hero-bottom>span{font:13px/1.5 Arial,sans-serif;letter-spacing:0}
.motion-toggle{font-size:13px;min-height:40px}
.fairy-lights i{box-shadow:0 0 6px 2px #ffd279,0 0 14px 4px #e7a92f30}
.shelf-heading{margin-bottom:28px}.shelf-heading h2{font-size:42px}
.magic-shelf{padding-top:15px;padding-bottom:40px}
.window-caption{font:16px/1.5 Arial,sans-serif;min-height:38px}
.festive-theme .unwrap-instruction{font-size:14px;margin-top:16px}
.festive-theme .first-four{padding-block:65px}
.spread-heading{display:block;margin-bottom:35px}
.festive-theme .spread-heading h2{font-size:42px}
.activity-spread{gap:65px;grid-template-columns:1.1fr 1fr}
.chapter-line{margin-bottom:20px}.festive-theme .chapter-line p{font:14px/1.5 Arial,sans-serif}
.chapter-line>span,.snow-story .chapter-line>span{font-size:58px}
.story-caption{display:block;margin-top:24px}.story-caption h3{font-size:34px;margin-bottom:14px}
.snow-story{margin-top:65px;padding:26px 28px 30px}.snow-story h3{font-size:40px;margin-bottom:24px}
.snow-paper{width:58%;max-width:230px;margin:20px auto 28px}
.song-story{padding-block:45px}.song-inner{grid-template-columns:85px 1fr 320px;gap:32px}
.song-label{gap:16px}.song-label .chapter-number{font-size:70px}.song-label>span:last-child{font:14px/1.5 Arial,sans-serif}
.song-story h2{font-size:60px}.song-aside .moon-picture{width:135px}
.song-doodle{display:none}
.bird-story{padding-block:65px;gap:80px}.bird-portrait{padding-bottom:10px}.bird-portrait .postcard{padding-bottom:9px;max-width:290px}
.bird-copy h2{font-size:44px;margin-block:20px}.bird-copy>p{max-width:370px}
.unopened{padding-block:42px 32px}.unopened-heading{display:block;margin-bottom:30px}.unopened-heading h2{font-size:40px}
.festive-theme .calendar-caption{font-size:15px;margin-top:24px;color:#e4dfca}
.tree-spread{padding-block:65px;gap:70px}.tree-letter h2{font-size:44px;margin-top:0}.tree-letter{padding-left:20px}
.tree-label{font:13px/1.4 Arial,sans-serif;top:18px}
.faq{gap:60px;padding-block:15px 50px}.faq h2{font-size:36px;margin-top:15px}
.festive-theme details p{font-size:15px}.festive-theme .dialog-copy>p:not(.eyebrow){font-size:16px;margin-bottom:24px}
.dialog-copy .eyebrow{font-size:13px}.dialog-material{margin-top:0}
.festive-theme .footer-top .handwritten{font-size:36px}.footer-bottom>span,.footer-bottom>a:last-child{font:12px/1.5 Arial,sans-serif}
@media(max-width:1100px){.christmas-copy h1{font-size:66px}.christmas-copy .christmas-description{max-width:290px;font-size:17px}.activity-spread{gap:40px}.song-inner{grid-template-columns:70px 1fr 280px;gap:25px}.song-story h2{font-size:50px}}
@media(max-width:800px){.christmas-copy h1{font-size:58px}.christmas-copy .christmas-description{max-width:260px}.activity-spread{gap:30px}.snow-story{padding-inline:20px}.snow-paper{width:75%}.song-inner{grid-template-columns:1fr 1fr}.song-label{grid-column:1/-1;flex-direction:row;align-items:center}.song-story h2{font-size:48px}.song-aside{max-width:none}.bird-story{gap:30px}.bird-copy h2{font-size:38px}.tree-label{font-size:11px}.tree-spread{gap:30px}}
@media(max-width:580px){.christmas-world{min-height:0;padding-bottom:66px}.christmas-copy{padding-top:400px;padding-bottom:25px}.christmas-copy h1{font-size:58px;margin-bottom:18px}.christmas-copy .christmas-description{font-size:17px;max-width:320px}.christmas-button{font-size:16px;margin-top:23px}.hero-bottom>span{font-size:11px;max-width:155px}.motion-toggle{font-size:12px;padding:7px 10px}.festive-theme .music-toggle{font-size:12px;padding-inline:10px}.shelf-heading h2{font-size:35px}.festive-theme .unwrap-instruction{font-size:14px}.window-caption{font-size:15px}.festive-theme .first-four{padding-block:42px}.festive-theme .spread-heading h2{font-size:35px}.activity-spread{grid-template-columns:1fr;gap:35px}.story-caption{display:block}.story-caption h3{font-size:32px}.chapter-line>span,.snow-story .chapter-line>span{font-size:50px}.snow-story{margin-top:0;padding:25px}.snow-story h3{font-size:36px}.snow-paper{width:62%;margin:24px auto 28px;transform:rotate(-5deg)}.song-inner{grid-template-columns:1fr;gap:22px}.song-label{grid-column:auto}.song-story h2{font-size:44px}.song-aside{display:grid;grid-template-columns:105px 1fr;gap:15px 22px}.song-aside .moon-picture{width:105px;grid-column:1;grid-row:1/3;margin:0}.song-aside>p{grid-column:2;grid-row:1}.song-aside .text-button{grid-column:2;grid-row:2;font-size:15px}.bird-story{padding-block:45px;gap:30px}.bird-portrait{width:82%;padding:10px 10px 0}.bird-copy h2{font-size:38px}.unopened-heading h2{font-size:35px}.tree-spread{padding-block:45px;gap:30px}.tree-letter{padding-left:0}.tree-letter h2{font-size:39px}.tree-letter>p:not(.handwritten){max-width:none}.tree-label{font-size:12px}.faq{gap:20px;padding-bottom:35px}.faq h2{font-size:34px}.footer-bottom>a:last-child{font-size:11px}.festive-theme .footer-top .handwritten{font-size:32px}.dialog-copy{padding-top:20px}.dialog-copy .eyebrow{font-size:13px}}

/* Keep the new painted scene matte and close to the app palette. */
.family-backdrop::after{background:linear-gradient(0deg,#102f2b 0%,#102f2b50 8%,transparent 24%),linear-gradient(180deg,#061f2135,transparent 18%)}
@media(max-width:800px) and (min-width:581px){.family-backdrop::after{background:linear-gradient(90deg,#102f2b55,transparent 60%),linear-gradient(0deg,#102f2b,transparent 25%)}}
@media(max-width:580px){.family-backdrop::after{background:linear-gradient(0deg,#102f2b 0%,transparent 30%),linear-gradient(180deg,#061f2145,transparent 20%)}}
.festive-theme .tree-letter>p:not(.handwritten){font-size:16px}
.song-label>span:last-child{white-space:nowrap}

/* Store-first landing page for the upcoming app update. */
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px;margin-top:28px}
.app-store-button{display:inline-flex;align-items:center;gap:14px;padding:12px 20px 12px 16px;min-height:66px;background:#151a16;color:#fff;border:1px solid #f3e5cc;border-radius:10px;box-shadow:0 5px 16px #08241c30;transition:transform .2s,background .2s;font-family:Arial,Helvetica,sans-serif;line-height:1.1;letter-spacing:0;text-align:left}
.app-store-button:hover{background:#29342c;transform:translateY(-2px)}
.store-overline{display:block;font-size:12px;margin-bottom:4px;white-space:nowrap}.app-store-button strong{display:block;font-size:25px;font-weight:500;white-space:nowrap}
.store-arrow{font-size:32px;line-height:1;border-bottom:2px solid currentColor;padding-bottom:3px}
.preview-link{font-size:15px;color:#fff2cd;border-bottom:1px solid #e0cfa16b;padding-bottom:3px}.preview-link span{margin-left:8px}
.christmas-copy{padding-top:210px;padding-bottom:120px}.christmas-world{min-height:730px}.hero-bottom{bottom:24px;justify-content:flex-start}
.calendar-facts{background:#102f2b;color:#fff2d5;padding:10px 0 35px}.facts-row{display:grid;grid-template-columns:repeat(3,1fr);max-width:900px;text-align:center}
.festive-theme .facts-row p{display:flex;flex-direction:column;align-items:center;gap:8px;border-right:1px solid #e2ce9b40}.facts-row p:last-child{border:0}.facts-row strong{font:normal 56px/1 Georgia,serif;color:#f3ce82}.facts-row span{font-size:17px;line-height:1.4}
.magic-shelf{padding-top:10px}.shelf-heading h2{font-size:36px}.first-four{border-bottom:1px solid #d6c7ab70}
.printable-gallery{padding:55px 0 45px;background:#dfe9e2}.printable-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:32px}.printable-heading h2{font-size:44px;letter-spacing:-1.5px}.printable-heading h2 em{color:#a34332}.printable-heading p{max-width:260px}
.printable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 40px;max-width:960px;margin:auto}.printable-grid figure{margin:0;min-width:0}.preview-sheet{position:relative;background:#fffdf4;box-shadow:0 5px 12px #29413420;transform:rotate(-2deg);border:6px solid #fffdf4;max-width:245px;margin:auto}.printable-grid figure:nth-child(2n) .preview-sheet{transform:rotate(2deg)}
.preview-sheet img{width:100%;height:auto;aspect-ratio:382/540;object-fit:contain}.preview-stamp{position:absolute;bottom:12%;left:50%;transform:translateX(-50%) rotate(-14deg);font:13px/1.4 Arial,sans-serif;letter-spacing:3px;color:#28453a80;border:1px solid #28453a50;padding:6px 14px;background:#ffffffa0;pointer-events:none}
.printable-grid figcaption{text-align:center;margin-top:18px;font-size:17px;color:#28453a}.festive-theme .printable-note{text-align:center;font-size:14px;margin-top:30px;color:#53695d}
@media(max-width:800px){.christmas-copy{padding-top:200px}.printable-heading{align-items:flex-start;flex-direction:column;gap:16px}.printable-heading p{max-width:none}.printable-grid{gap:28px 25px}.facts-row strong{font-size:48px}.facts-row span{font-size:16px}.preview-stamp{font-size:10px;letter-spacing:2px;padding:4px 8px}.printable-grid figcaption{font-size:15px}}
@media(max-width:580px){.christmas-world{min-height:0;padding-bottom:58px}.christmas-copy{padding-top:400px;padding-bottom:25px}.hero-actions{align-items:center;margin-top:24px;gap:17px}.christmas-copy .hero-actions{max-width:none}.hero-bottom{bottom:18px;justify-content:center}.hero-bottom>span{font-size:12px;max-width:none}.app-store-button{min-height:64px}.calendar-facts{padding:15px 0 32px}.facts-row{width:calc(100% - 24px)}.facts-row strong{font-size:42px}.facts-row span{font-size:14px;max-width:90px}.festive-theme .facts-row p{gap:9px}.shelf-heading h2{font-size:33px}.printable-gallery{padding-block:38px}.printable-heading{gap:14px;margin-bottom:28px}.printable-heading h2{font-size:36px}.printable-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.preview-sheet{border-width:4px}.printable-grid figcaption{font-size:15px;line-height:1.3;margin-top:14px}.festive-theme .printable-note{font-size:14px;max-width:300px;margin-inline:auto}.footer-top{align-items:flex-start}}

/* Original closed-window artwork from the app, without added gift wrapping. */
.window-front img{display:block;width:100%;height:100%;object-fit:cover}
.window-panel{border:4px solid #fff1d6;border-radius:1px}
@media(max-width:580px){.window-panel{border-width:3px}}

/* Screenshots stay uncropped and scroll as a gallery on every screen size. */
.festive-theme .maker-credit{padding-top:24px;text-align:center;font-size:14px}
.maker-credit a{text-decoration:underline;text-underline-offset:4px}
.maker-credit a:hover{color:var(--red)}
.app-screens{padding-block:60px 35px}
.app-screens-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.app-screens-heading h2{font-size:44px;letter-spacing:-1.5px}
.app-screens-heading h2 em{color:var(--red)}
.app-screens-heading p{margin-top:14px}
.app-screens-controls{display:flex;gap:10px}
.app-screens-controls[hidden]{display:none}
.app-screens-controls button{width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:transparent;font-size:24px;line-height:1}
.app-screens-controls button:disabled{opacity:.3;cursor:default}
.app-screens-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:2px 2px 18px;scrollbar-color:#a98b61 #e9dfcd;scrollbar-width:thin}
.app-screens-track:focus-visible{outline:3px solid #237592;outline-offset:6px}
.app-screen{margin:0;min-width:0;scroll-snap-align:start}
.app-screen img{width:100%;height:auto;border-radius:12px}
.app-screen figcaption{text-align:center;font-size:15px;line-height:1.4;margin-top:14px}
@media(max-width:800px){.app-screens-track{grid-auto-columns:calc((100% - 20px)/2);gap:20px}}
@media(max-width:580px){.app-screens{padding-block:38px 20px}.app-screens-heading{gap:12px;margin-bottom:22px;align-items:center}.app-screens-heading h2{font-size:35px}.app-screens-heading p{font-size:14px;max-width:190px}.app-screens-controls{gap:6px}.app-screens-track{grid-auto-columns:86%;gap:16px}.app-screen figcaption{font-size:14px}}
