:root{color-scheme:light;--ink:#213c48;--green:#284e46;--cream:#faf6ee;--clay:#a54f39;--gold:#e8c87b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.65 system-ui,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a.button,summary{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #a54f39;outline-offset:4px}h1,h2,h3{line-height:1.12;margin:.3em 0 .65em}h1,h2{font-family:Georgia,serif;font-weight:500}h1{font-size:clamp(42px,6.5vw,78px);letter-spacing:-.04em}h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.025em}h3{font-size:23px}.nav{max-width:1240px;margin:auto;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.nav img{display:block;width:130px;height:auto}.nav nav{display:flex;gap:28px;flex-wrap:wrap;font-size:15px}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}main{max-width:1240px;margin:auto;padding:0 30px}.hero{padding:65px 0 70px;max-width:900px}.eyebrow{font:700 12px/1.5 system-ui;letter-spacing:.17em;color:var(--clay)}.lead{max-width:690px;font-size:22px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;border:2px solid var(--green);padding:13px 24px;border-radius:30px;text-decoration:none;font-weight:650;min-height:48px}.text-link{display:inline-block;margin:15px 24px}.small{font-size:14px}.studio{background:white;padding:30px;border-radius:28px;box-shadow:0 14px 55px #213c480b}.section-heading{display:flex;align-items:end;gap:40px;justify-content:space-between}.section-heading>p{max-width:350px;font-size:15px}.tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:22px 0}label{display:block;font-size:14px;font-weight:600}select{display:block;padding:11px 35px 11px 12px;border:1px solid #a5b4ae;border-radius:8px;background:white;color:var(--ink);max-width:100%;margin-top:5px}.secondary{padding:11px 16px;background:transparent;color:var(--green);border:1px solid #a5b4ae;border-radius:10px;min-height:48px}.picture{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:15px;background:#ede9de}.picture>img{width:100%;height:100%;object-fit:contain;display:block}.window{position:absolute;border:1px dashed #fff9;background:transparent;color:#192e3d;padding:0;border-radius:4px;overflow:hidden;min-width:0;min-height:0}.window:hover,.window:focus-visible{border:3px solid var(--gold);z-index:2}.number{position:absolute;top:7px;left:7px;display:grid;place-items:center;background:#fff8e9ed;width:32px;height:32px;border-radius:50%;font-size:15px;font-weight:750;box-shadow:0 2px 8px #0002}.window.open .number{background:#284e46;color:white}.patch{position:absolute;inset:0;background-repeat:no-repeat;animation:reveal .5s ease-out}#plain-calendar{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}#plain-calendar[hidden]{display:none}.plain-door{min-height:90px;border:1px solid #9eb2a6;border-radius:8px;background:#f7f4ec;font-weight:700;color:var(--green)}.plain-door.open{background:#dfe8dd}.photo-options{padding:24px;background:#f3f5ec;border-radius:14px;margin-top:24px}.photo-options input{display:block;margin:8px 0 20px;font-size:14px;max-width:100%}summary{font-weight:650}.together{padding:80px 0 55px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.feature-grid article{border-top:1px solid #cbd3c8;padding-top:25px}.santa-feature{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding:35px;background:#e6ecdf;border-radius:26px}.santa-feature img{width:100%;border-radius:16px}.next{max-width:700px;text-align:center;margin:75px auto}footer{max-width:1240px;padding:25px 30px;margin:auto;display:flex;gap:25px;flex-wrap:wrap;font-size:13px;border-top:1px solid #d8dfd3}dialog{border:0;border-radius:20px;padding:28px;width:min(640px,calc(100% - 24px));max-height:92dvh;overflow:auto;color:var(--ink);background:var(--cream)}dialog::backdrop{background:#132a36b3}dialog h2{font-size:34px}#activity-picture{width:min(100%,350px);background-repeat:no-repeat;margin:auto;border-radius:16px}audio{width:100%;margin:12px 0}#instruction{font-size:20px}video{width:100%;max-height:75vh;background:#192e3d;border-radius:18px}.story-main{max-width:1000px;margin:35px auto}.story-main .lead{font-size:19px}.story-links{display:flex;gap:25px;flex-wrap:wrap}body[data-look=subtle] .picture{display:none}body[data-look=subtle] .santa-feature>img{display:none}body[data-look=subtle] .santa-feature{grid-template-columns:1fr}.window[hidden],#activity-picture[hidden]{display:none}@keyframes reveal{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:650px){.nav{padding:18px}.nav nav{font-size:12px;gap:12px}.nav img{width:100px}main{padding:0 16px}.hero{padding:40px 0}.lead{font-size:19px}.text-link{margin:14px 0;display:block}.studio{padding:16px;border-radius:18px}.section-heading{display:block}.feature-grid,.santa-feature{grid-template-columns:1fr}.feature-grid{gap:20px}.santa-feature{padding:20px;gap:25px}.together{padding-top:50px}#plain-calendar{grid-template-columns:repeat(4,1fr);gap:8px}.plain-door{min-height:65px}.number{width:25px;height:25px;top:3px;left:3px;font-size:12px}.tools{gap:8px}.tools button{font-size:13px}.next{margin:50px auto}.photo-options{padding:16px}.nav nav a:first-child{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.patch{animation:none}}
/* Guide hero picture under the lead (scripts/website/build-guide-heroes.py). */
.guide-hero{margin:1.5rem 0 2rem;max-width:712px}.guide-hero img{display:block;width:100%;height:auto;border-radius:16px;background:#FBF5E9}@media print{.guide-hero{display:none}}
