/* The winter paper theatre: original linework, a single inhabited house, a quiet night. */
:root{--night:#142f34;--pine:#173d38;--snow:#f3f3ea;--night-text:#e9e9df;--gold:#e4c17d;--pink:#d6b0bc}
body{background:var(--night);color:var(--night-text)}.masthead{position:relative;z-index:3;padding:20px 0;margin:0 4%;border-bottom-color:#bdcdc22b;grid-template-columns:1fr auto 1fr}.brand img{width:33px;height:35px}.brand span{font-size:22px}.masthead nav a{font-size:13px}.languages button{font-size:12px}.experience-cover{position:relative;display:grid;grid-template-columns:minmax(270px,.8fr) minmax(0,1.55fr);align-items:center;max-width:1600px;margin:0 auto;min-height:calc(100svh - 83px);padding:14px 4% 25px;isolation:isolate}.experience-cover:before{content:'';position:absolute;inset:0 -4vw;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 72% 66%,#788b6b24 0,transparent 58%),linear-gradient(180deg,#142f34,#142f34 70%,#1b393c)}.intro{display:block;margin:0;padding:0 0 0 4%;align-self:center;max-width:430px;position:relative;z-index:2}.intro h1{font-size:clamp(43px,4.7vw,72px);line-height:1.15;letter-spacing:-.035em}.intro h1 em{color:var(--pink)}.subtitle{font-size:17px;line-height:1.5;color:var(--gold);max-width:26ch;margin-top:25px}.invitation{font-size:16px;line-height:1.65;max-width:30ch;margin-top:25px}.intro .text-link{font-size:14px;color:var(--snow);gap:15px;line-height:1.4;margin-top:24px;padding-bottom:10px}.cover-note{font-size:11px;line-height:1.6;color:#bacdc6;margin-top:22px!important;max-width:30ch}.cover-controls{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:52px}.cover-controls button{font-size:11px;padding:8px 0;text-decoration:underline;text-underline-offset:5px;color:#c5d5ca;min-height:36px}.cover-controls button:hover{color:var(--gold)}.calendar{width:100%;padding:0;max-width:none;margin:0;min-width:0;position:relative}.calendar-meta{font-size:11px;justify-content:center;gap:13px;padding:5px 10px 0;position:relative;z-index:2;flex-wrap:wrap}.calendar-meta span{color:var(--gold)}.calendar-meta p{color:#c5d4ca;max-width:40ch}.scene-stage{position:relative;isolation:isolate;padding:25px 11% 50px;perspective:1600px;overflow:clip;min-height:490px}.night-sky{position:absolute;inset:0;z-index:-3;pointer-events:none}.sky-ornaments{width:100%;height:100%;object-fit:contain}.house-plane{position:relative;z-index:0;transform-origin:50% 75%;transition:transform .75s cubic-bezier(.16,1,.3,1)}.house{width:100%;max-width:560px;padding:0;margin:0 auto;filter:drop-shadow(12px 20px 18px #041e2760)}.roof{height:auto;position:relative;z-index:2}.house-body{background:#d9e2d9;padding:13px 5.5% 0;margin:-10px 1.55% 0;box-shadow:inset 12px 0 20px #173d3817,inset -4px 0 0 #81988b;overflow:visible}.house-body:before{inset:5px 5px 0;z-index:-1;border-color:#243f3777}.house-name{font-size:clamp(15px,1.55vw,22px);line-height:1.4;padding:5px 7px;margin-bottom:20px;letter-spacing:-.025em;max-width:100%;border-color:#294d4470}.windows{grid-template-columns:repeat(6,minmax(0,1fr));gap:15px 14px}.door{transition:transform .3s ease;perspective:500px;padding-bottom:1px}.door:hover{transform:rotate(0)}.window-picture{aspect-ratio:160/175;perspective:450px}.window-recess{position:absolute;inset:15% 15% 23%;display:block;background:#e9bd73;box-shadow:inset 3px 4px 5px #3b332c80;perspective:450px;overflow:visible}.window-art{inset:0;background:radial-gradient(ellipse at 50% 75%,#f2d79e,#bd8b57);overflow:hidden;box-shadow:inset 0 2px 7px #34372d70}.window-art>svg{width:100%;height:100%;object-fit:cover}.shutter{position:absolute;top:0;bottom:0;width:50%;display:block;backface-visibility:hidden;transition:transform .65s cubic-bezier(.16,1,.3,1);transform-style:preserve-3d;z-index:2}.shutter svg{height:100%;width:100%}.shutter-left{left:0;transform-origin:0 50%}.shutter-right{right:0;transform-origin:100% 50%}.door.available:hover .shutter-left,.door.available:focus-visible .shutter-left{transform:rotateY(-24deg)}.door.available:hover .shutter-right,.door.available:focus-visible .shutter-right{transform:rotateY(24deg)}.door.opened .shutter-left{transform:rotateY(-108deg)}.door.opened .shutter-right{transform:rotateY(108deg)}.door.opened:hover .shutter-left{transform:rotateY(-112deg)}.door.opened:hover .shutter-right{transform:rotateY(112deg)}.door.available:hover .window-art{box-shadow:inset 0 2px 6px #34372d50}.door-number{font-size:26px;line-height:1;min-width:36px;min-height:32px;padding:2px 6px;background:#edf0e7;margin-top:0;border-color:#315147;border-width:.8px;box-shadow:none}.door.locked .door-number{background:#dce5dc;color:#315147}.door.available .door-number{border-bottom:2px solid #ae8650}.door.today .door-number{background:#e8c88c;color:#203a34;border-color:#203a34}.door:hover .door-number{background:#e8c88c}.house-entrance{width:100%;height:auto;margin-top:12px}.house-base{height:7px;margin:0 -5% -3px;width:110%;max-width:110%}.house-caption{font-size:11px;line-height:1.4;margin:0 11%;color:#c0d1c6;text-align:center}.winter-ground{position:absolute;bottom:14px;left:0;right:0;height:90px;z-index:-1;pointer-events:none}.winter-ground svg{width:100%;height:100%}.winter-tree{position:absolute;z-index:1;bottom:18px;left:1.5%;width:18%;max-width:128px;height:auto;pointer-events:none;filter:drop-shadow(4px 7px 4px #172e3140)}.snowfall{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;opacity:.65}.preview-toggle{display:block;width:max-content;margin:16px auto 0;font-size:10px;color:#bdcfc4}.preview-controls{justify-content:center;font-size:11px;padding:12px 6% 0;gap:8px 17px;margin:0}.preview-controls select{min-height:30px;font-size:12px;padding:3px 8px;background:#cfded3}.preview-controls strong{font-weight:400;color:#e8c88c}.idea{padding:80px 8%;border-top:1px solid #adc4b42b;gap:12%}.idea.why{padding-top:76px;padding-bottom:76px}.idea h2{font-size:36px;max-width:14ch}.idea p{font-size:17px;line-height:1.7}.post-section{background:#dce5db;padding-top:70px;padding-bottom:70px}.share-section{padding-top:80px;padding-bottom:80px}.directory{margin-bottom:70px}.directory summary{font-size:22px}.artist-story{background:#e2e8df;padding:30px 7%}.artist-story article{max-width:76ch}.artist-story h2{font-size:27px;margin-bottom:14px}.artist-story article>p{font-size:17px;line-height:1.7}.atelier-top{padding-top:24px;padding-bottom:29px}.artist-heading h1{font-size:clamp(35px,4.7vw,64px)}.artist-date{font-size:12px}.day-mark{font-size:42px;min-height:68px;min-width:68px}.experiment{padding:42px 7% 52px;grid-template-columns:.8fr 1.2fr;gap:9%}.experiment h2{font-size:29px}.exercise-stage{border:1px solid #98ad9d66;background:#edf1e9}.source-details{margin-top:17px}.entrance-layer{position:fixed;inset:0;z-index:100;pointer-events:none;isolation:isolate}.entrance-shade{position:absolute;inset:0;background:#102c32f5;opacity:0}.entrance-window{position:absolute;transform-origin:center;perspective:500px;background:#e8c88c;box-shadow:0 12px 40px #091e2960;border:1px solid #d6bd87}.entrance-art{position:absolute;inset:0;overflow:hidden}.entrance-art svg{width:100%;height:100%;object-fit:cover}.entering-room{cursor:progress}.entering-room .scene-stage{pointer-events:none}::view-transition-old(root),::view-transition-new(root){animation:none}
@media(min-width:1500px){.house{max-width:610px}.scene-stage{padding-top:20px;padding-bottom:65px}.intro{max-width:470px}.intro h1{font-size:77px}.winter-tree{max-width:145px}.experience-cover{padding-top:20px;padding-bottom:35px}}
@media(min-width:901px) and (max-height:800px){.house{max-width:470px}.scene-stage{padding-top:10px;padding-bottom:43px}.house-name{margin-bottom:13px;font-size:17px}.windows{gap:10px 13px}.door-number{font-size:24px;min-height:28px;min-width:32px}.house-body{padding-top:10px}.experience-cover{padding-top:12px;padding-bottom:18px}.cover-controls{margin-top:30px}.winter-tree{max-width:100px}.calendar-meta{font-size:10px}.intro h1{font-size:clamp(43px,4.6vw,64px)}}
@media(max-width:1100px) and (min-width:901px){.experience-cover{grid-template-columns:.85fr 1.4fr;padding-left:3%;padding-right:3%}.intro{padding-left:3%}.intro h1{font-size:48px}.scene-stage{padding-left:7%;padding-right:7%}.windows{gap:12px 9px}.door-number{font-size:24px}.house-name{font-size:17px}.invitation{font-size:15px}.cover-note{font-size:10px}.winter-tree{left:0;width:16%}}
@media(max-width:900px){.experience-cover{display:block;padding:35px 0 25px;min-height:0}.intro{padding:0 7%;max-width:650px;margin:0 auto}.intro h1{font-size:clamp(44px,7.8vw,67px);line-height:1.1}.intro h1 br{display:none}.intro h1 em{display:block}.subtitle{max-width:100%;margin-top:20px;font-size:16px}.invitation{max-width:43ch;margin-top:17px;font-size:16px;line-height:1.6}.intro .text-link{margin-top:16px}.cover-note{max-width:100%;margin-top:15px!important}.cover-controls{margin-top:18px;gap:20px}.calendar{margin-top:30px}.calendar-meta{font-size:11px;padding:0 7%;justify-content:flex-start;gap:6px 15px;max-width:650px;margin:auto}.scene-stage{padding:12px 10% 50px;max-width:760px;margin:auto;min-height:0}.house{max-width:540px}.house-name{font-size:20px}.winter-tree{max-width:115px;left:2%}.preview-controls{padding-top:16px}.idea,.idea.why{padding:50px 7%;gap:28px}.idea h2{font-size:32px}.idea p{font-size:16px}.house-caption{margin:0 8%;font-size:11px}.masthead nav{gap:22px}.masthead nav a{font-size:12px}.experiment{gap:7%}}
@media(max-width:650px){.masthead{padding:18px 0;gap:18px;grid-template-columns:1fr auto}.masthead nav{margin-top:4px;justify-content:flex-start;gap:24px}.masthead nav a{font-size:12px}.brand span{font-size:21px}.experience-cover{padding-top:29px}.intro h1{font-size:45px;max-width:12ch;line-height:1.1}.subtitle{font-size:15px;max-width:28ch}.invitation{font-size:15px;margin-top:17px}.cover-controls{gap:22px;margin-top:16px}.cover-controls button{font-size:11px}.calendar{margin-top:27px}.calendar-meta{font-size:10px;gap:4px;flex-direction:column}.scene-stage{padding:8px 6.5% 43px}.house{max-width:440px}.house-name{font-size:17px;padding:5px 0;margin-bottom:18px}.house-body{padding:14px 4.5% 0;margin-top:-6px}.windows{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 14px}.window-picture{aspect-ratio:160/165}.door-number{font-size:27px;min-width:36px;min-height:32px;margin-top:1px}.house-entrance{margin-top:14px}.house-caption{font-size:10px;max-width:32ch;margin:0 auto}.winter-tree{left:0;width:16%;max-width:75px;bottom:16px}.winter-ground{height:67px;bottom:12px}.sky-ornaments{object-fit:cover;opacity:.75}.snowfall{opacity:.5}.preview-toggle{margin-top:15px;font-size:10px}.preview-controls{gap:8px 15px;padding:15px 7% 0}.idea,.idea.why{display:block;padding:44px 7%}.idea h2{font-size:29px;max-width:100%;margin-bottom:24px}.idea p{font-size:16px}.post-section,.share-section{padding:44px 7%}.post-section h2,.share-section h2{font-size:29px}.directory{margin-bottom:45px}.artist-heading h1{font-size:35px}.day-mark{font-size:30px;min-height:49px;min-width:49px}.artist-story{padding:27px 7%}.artist-story h2{font-size:25px}.artist-story article>p{font-size:16px;line-height:1.7}.experiment{display:grid;grid-template-columns:1fr;padding:31px 7% 42px;gap:26px}.experiment-copy>p{font-size:16px}.experiment h2{font-size:26px}.source-details{font-size:13px}.atelier-top{padding:24px 7% 28px}.drawing-credit{font-size:11px}.result-actions{margin-top:20px}.back{margin-bottom:24px}}
@media(max-width:360px){.intro h1{font-size:40px}.scene-stage{padding-left:5%;padding-right:5%}.windows{gap:17px 10px}.house-name{font-size:15px}.door-number{font-size:25px}}
@media(prefers-reduced-motion:reduce){.house-plane,.shutter{transition:none!important}.snowfall{opacity:.25}.door.available:hover .shutter-left,.door.available:focus-visible .shutter-left,.door.available:hover .shutter-right,.door.available:focus-visible .shutter-right{transform:none}.door.opened .shutter-left{transform:rotateY(-108deg)}.door.opened .shutter-right{transform:rotateY(108deg)}}.motion-paused .house-plane,.motion-paused .shutter{transition:none}.motion-paused .door:hover{transform:rotate(var(--tilt))}
/* Two slow invitations at the current day, then a steady lit plaque. */
.door.today .door-number{animation:today-light 1.8s ease-in-out 2}@keyframes today-light{0%,100%{background:#e8c88c}50%{background:#fff1cb}}.motion-paused .door.today .door-number{animation:none}@media(prefers-reduced-motion:reduce){.door.today .door-number{animation:none}}
.experience-cover:before{left:0;right:0}.door.locked .window-art{background:#263e3b}.door.locked .window-recess{background:#263e3b}
@media(min-width:901px) and (max-height:800px){.house{max-width:450px}.window-picture{aspect-ratio:160/135}.house-name{line-height:1.1;padding:4px 5px;margin-bottom:13px}.house-entrance{height:30px;margin-top:10px}.scene-stage{padding-top:0;padding-bottom:31px}.house-body{padding-top:10px}.calendar-meta{padding-top:0}.experience-cover{padding-top:9px;padding-bottom:14px}.cover-controls{margin-top:25px}.intro .invitation{margin-top:22px}.intro .subtitle{margin-top:20px}}

.facade-star{position:absolute;top:-2px;width:25px;height:48px;pointer-events:none}.star-left{left:9%}.star-right{right:9%;height:40px}@media(max-width:650px){.facade-star{width:20px;height:43px;top:-1px}.star-left{left:7%}.star-right{right:7%;height:37px}}
/* One facade, three continuous folds. The colour is part of the paper architecture. */
.scene-stage{perspective:1500px;overflow:visible}.house-plane{transform:perspective(1500px) rotateY(-5deg) rotateX(2deg);transform-origin:50% 70%}.house{filter:drop-shadow(18px 24px 14px #071d2b70)}.house-body{background:#e4e9df;box-shadow:inset -4px 0 0 #83958b;padding-left:4%;padding-right:4%}.windows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;perspective:1100px;position:relative}.facade-leaf{position:relative;min-width:0;background:#e4e9df;transform-style:preserve-3d;padding:7px 7px 12px}.leaf-0{transform:rotateY(-10deg);transform-origin:right center;border-right:1px solid #50695788}.leaf-1{background:#e9ece4;box-shadow:inset 4px 0 9px #1838311a}.leaf-2{transform:rotateY(12deg);transform-origin:left center;border-left:1px solid #50695788;box-shadow:inset 7px 0 11px #18383119}.leaf-windows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 13px;position:relative;z-index:1}.facade-wash{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.window-recess{inset:15% 15% 23%;background:#e9bd73}.shutter svg{filter:none}.door-number{background:#f5f5ec;color:#193e33!important;border-color:#315147!important;font-size:26px}.door.today .door-number{background:#ebc984}.door.locked .door-number{color:#315147!important}.window-picture{aspect-ratio:160/180}.house-name{background:#edf0e6;position:relative;padding-left:12px;padding-right:12px}.house-entrance{margin-top:7px}.winter-ground{height:85px;left:7%;right:7%;bottom:18px}.scene-stage:after{content:'';position:absolute;left:17%;right:15%;bottom:42px;height:28px;background:#071e29;filter:blur(18px);opacity:.35;z-index:-1}.entrance-window{overflow:visible;transform-style:preserve-3d}.entrance-art{border:1px solid #aeb9a9;backface-visibility:hidden}.room-wing{position:absolute;top:0;height:100%;width:32%;background:#e0e6db;border:1px solid #879c89;backface-visibility:hidden}.room-left{right:100%;transform-origin:right center;background:linear-gradient(90deg,#b9c7b8,#e8e9db)}.room-right{left:100%;transform-origin:left center;background:linear-gradient(90deg,#e3e4d5,#a6b8aa)}.room-floor{position:absolute;top:100%;left:-15%;width:130%;height:35%;transform-origin:center top;background:#d7c3b6;border:1px solid #8f9e8c;backface-visibility:hidden}.entrance-window>.shutter{z-index:3}.facade-star{z-index:3}.calendar-meta,.house-caption,.preview-controls,.preview-toggle{position:relative;z-index:3}
@media(min-width:901px) and (max-height:800px){.house{max-width:450px}.window-picture{aspect-ratio:160/155}.leaf-windows{gap:10px 9px}.facade-leaf{padding:4px 5px 7px}.door-number{font-size:24px}.house-name{margin-bottom:8px}.house-entrance{height:27px;margin-top:6px}.scene-stage{padding-bottom:28px}.house-body{padding-top:8px}}
@media(max-width:900px){.house-plane{transform:perspective(1500px) rotateY(-3deg)}.leaf-windows{gap:16px 13px}}
@media(max-width:650px){.scene-stage{overflow:clip;padding-left:6%;padding-right:6%}.windows{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px 13px;background:#e3e8de}.facade-leaf,.leaf-windows{display:contents}.facade-wash{display:none}.windows:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#d5a5b3 0 25%,#e3e8de 25% 50%,#3847ac 50% 75%,#e3e8de 75%);opacity:.6;z-index:0;pointer-events:none}.door{position:relative;z-index:1}.window-picture{aspect-ratio:160/180}.door-number{font-size:27px}.house-body{padding-left:4.5%;padding-right:4.5%}.house-plane{transform:none}.house{filter:drop-shadow(8px 14px 10px #071d2b60)}.winter-ground{left:0;right:0;bottom:17px;height:55px}.scene-stage:after{bottom:40px}.house-name{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.house-plane{transform:none}}

.mobile-facade-wash{display:none}@media(max-width:650px){.windows:before{content:none}.mobile-facade-wash{display:block;position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}}
/* Keep the paper object in view in the desktop app's narrow side panel. */
@media(min-width:651px) and (max-width:900px){.experience-cover{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.5fr);gap:10px;align-items:center;padding:20px 4% 25px;min-height:calc(100svh - 79px)}.intro{padding:0;max-width:100%;margin:0}.intro h1{font-size:42px;line-height:1.13}.intro h1 br{display:block}.intro h1 em{display:block}.intro .subtitle{font-size:14px;line-height:1.5;margin-top:20px;max-width:23ch}.intro .invitation{font-size:14px;line-height:1.6;margin-top:20px;max-width:25ch}.intro .text-link{font-size:12px;gap:10px;line-height:1.45;margin-top:18px}.intro .text-link svg{width:23px}.cover-note{font-size:10px;margin-top:17px!important}.cover-controls{gap:5px 16px;margin-top:25px}.cover-controls button{font-size:10px}.calendar{margin-top:0}.calendar-meta{font-size:9px;line-height:1.5;padding:0;justify-content:center;max-width:100%;gap:3px 10px}.scene-stage{padding:0 2% 25px}.house{max-width:440px}.house-name{font-size:15px;padding:4px 7px;line-height:1.1;margin-bottom:8px}.house-body{padding-top:9px}.leaf-windows{gap:11px 7px}.facade-leaf{padding:4px 4px 7px}.window-picture{aspect-ratio:160/160}.door-number{font-size:24px;min-width:31px;min-height:29px;padding:2px 4px}.house-entrance{height:28px;margin-top:7px}.house-caption{font-size:10px;margin:0 4%;max-width:100%}.winter-ground{left:0;right:0;height:55px;bottom:17px}.facade-star{width:19px;height:37px}.star-right{height:32px}.preview-controls{font-size:10px;padding:12px 0 0;gap:7px 10px}.preview-toggle{font-size:10px;margin-top:12px}}
/* The opened paper object remains the setting for its text and activity. */
.atelier-setting{background:var(--night);padding:26px 4% 55px;overflow:clip}.atelier-setting #atelier{position:relative;max-width:1250px;margin:0 auto;background:#edf0e7;box-shadow:12px 20px 30px #061e2855;isolation:isolate}.atelier-setting #atelier:before,.atelier-setting #atelier:after{content:'';position:absolute;top:9px;bottom:9px;width:16px;background:#bfcbbc;border:1px solid #879b89;z-index:-1}.atelier-setting #atelier:before{right:100%;transform:skewY(-18deg);transform-origin:right}.atelier-setting #atelier:after{left:100%;transform:skewY(18deg);transform-origin:left}.atelier-top{padding:24px 4% 22px}.atelier-top .back{margin-bottom:18px}.artist-heading h1{font-size:clamp(30px,3.6vw,49px)}.artist-date{margin-bottom:10px}.day-mark{font-size:34px;min-height:55px;min-width:55px}.room-content{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:auto 1fr;gap:25px 6%;padding:26px 4% 35px;border-top:1px solid #b5c4b8}.room-content .artist-story{grid-column:1;grid-row:1;background:transparent;padding:0}.room-content .artist-story h2{font-size:25px}.room-content .artist-story article>p{font-size:16px;line-height:1.65}.room-content .experiment{display:contents}.room-content .experiment-copy{grid-column:1;grid-row:2;align-self:start}.room-content .experiment-copy h2{font-size:23px;margin-bottom:15px}.room-content .experiment-copy>p{font-size:16px;line-height:1.6}.room-content .experiment-copy .small{font-size:11px;margin-top:19px}.room-content .interactive{grid-column:2;grid-row:1/3;align-self:start}.room-content .source-details{font-size:12px}.room-content .artist-story .mak-note{font-size:11px}.room-content .exercise-stage{background:#e7ece1}.room-content .result-actions .button{font-size:13px;padding:12px 15px;min-height:43px}.atelier-end{margin-left:4%;margin-right:4%}.room-handoff .interactive{animation:room-tools-in .7s ease both}@keyframes room-tools-in{from{opacity:.4}to{opacity:1}}
.intro h1{font-size:clamp(57px,6.1vw,88px);line-height:1.04;letter-spacing:-.04em}.intro h1 em{display:block}.intro{max-width:460px}.intro .subtitle{margin-top:30px}.intro .invitation{margin-top:24px}
@media(min-width:1500px){.intro h1{font-size:90px}.intro{max-width:490px}}
@media(min-width:901px) and (max-height:800px){.intro h1{font-size:clamp(56px,5.7vw,77px)}.intro .subtitle{margin-top:24px}.intro .invitation{margin-top:19px}.cover-controls{margin-top:21px}}
@media(min-width:651px) and (max-width:900px){.intro h1{font-size:54px;line-height:1.03}.intro .subtitle{margin-top:23px}.intro .invitation{margin-top:18px}.atelier-setting{padding-left:3%;padding-right:3%}.room-content{gap:24px 5%}.room-content .artist-story h2{font-size:23px}.room-content .artist-story article>p,.room-content .experiment-copy>p{font-size:15px}.artist-heading h1{font-size:36px}.room-content .result-actions{gap:10px}.room-content .result-actions .button{padding:11px;font-size:12px}.room-content .result-actions .reset-button{font-size:12px}}
@media(max-width:650px){.intro h1{font-size:clamp(49px,13.8vw,69px);line-height:1.03;max-width:100%}.intro .subtitle{margin-top:24px}.intro .invitation{margin-top:18px}.atelier-setting{padding:18px 4% 35px}.atelier-setting #atelier:before,.atelier-setting #atelier:after{width:8px}.atelier-top{padding:20px 6% 24px}.artist-heading h1{font-size:31px;line-height:1.15}.artist-heading{gap:15px}.day-mark{min-width:42px;min-height:42px;font-size:27px}.room-content{display:block;padding:25px 6% 30px}.room-content .artist-story article>p{font-size:15px}.room-content .experiment{display:block;margin-top:26px;padding:0}.room-content .experiment-copy>p{font-size:15px}.room-content .interactive{margin-top:25px}.room-content .result-actions .button{flex:1 1 110px}.atelier-end{margin:0 6%;font-size:12px}.atelier-top .back{font-size:12px;margin-bottom:20px}.room-handoff .interactive{animation:none}}
@media(prefers-reduced-motion:reduce){.room-handoff .interactive{animation:none}}
/* Persistent atelier: wall text and live working surface inhabit one drawn room. */
.atelier-setting{padding:17px 3% 35px;perspective:1400px}.atelier-setting #atelier{background:transparent;max-width:1370px;min-height:calc(100svh - 120px);box-shadow:none;padding:30px 5% 65px}.atelier-setting #atelier:before,.atelier-setting #atelier:after{content:none}.atelier-interior{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.atelier-top{padding:8px 2% 24px}.atelier-top .back{margin-bottom:17px}.room-content{padding:20px 2% 30px;border:0;gap:28px 7%}.room-content .artist-story{background:#eef1e6;padding:20px 22px;align-self:start;box-shadow:2px 5px 8px #18383115}.room-content .artist-story h2{font-size:24px}.room-content .artist-story article>p{font-size:15px}.room-content .experiment-copy{padding:0 10px}.room-content .interactive{padding-top:0}.room-content .exercise-stage{border:0;box-shadow:3px 8px 13px #2b3a3026;background:#f0f2e8}.room-content .drawing-credit{font-size:10px}.room-content .result-actions{gap:10px;margin-top:20px}.room-content .result-actions .button{background:#254f45;color:#f3f3ea;border-color:#254f45}.room-content .result-actions .button.secondary{background:#e8ebe0;color:#254f45}.atelier-end{margin:0 2%;padding-top:18px;padding-bottom:15px;border-top-color:#76907e}.artist-heading h1{font-size:clamp(32px,4vw,54px);line-height:1.1}.artist-date{font-size:11px}.room-content .experiment-copy h2{font-size:25px}.day-mark{background:#e5e9df}
@media(min-width:651px) and (max-width:900px){.atelier-setting{padding:14px 2% 30px}.atelier-setting #atelier{padding:27px 5% 55px}.room-content{gap:23px 5%;padding-top:12px}.room-content .artist-story{padding:15px}.room-content .artist-story h2{font-size:21px}.room-content .artist-story article>p,.room-content .experiment-copy>p{font-size:14px}.room-content .experiment-copy{padding:0 5px}.artist-heading h1{font-size:35px}.atelier-top{padding-bottom:15px}.room-content .result-actions .button{font-size:12px}}
@media(max-width:650px){.atelier-setting{padding:12px 2% 25px}.atelier-setting #atelier{padding:20px 5% 50px}.atelier-top{padding:7px 2% 22px}.artist-heading h1{font-size:30px}.room-content{padding:14px 2% 23px}.room-content .artist-story{padding:17px}.room-content .artist-story h2{font-size:23px}.room-content .artist-story article>p{font-size:15px}.room-content .experiment-copy{padding:0 5px}.room-content .experiment-copy h2{font-size:24px}.room-content .interactive{margin-top:21px}.atelier-end{margin:0 2%}.atelier-interior{opacity:1}.day-mark{font-size:26px}.artist-heading{gap:12px}}
@media(min-width:651px) and (max-height:800px){.atelier-setting #atelier{padding-top:18px;padding-bottom:40px}.atelier-top{padding-bottom:13px}.atelier-top .back{margin-bottom:10px}.artist-date{margin-bottom:6px}.room-content{padding-top:13px}.room-content .exercise-stage{max-width:min(100%,calc((100svh - 390px)*1.3333));margin:0 auto}.room-content .result-actions{margin-top:16px}.room-content .work-status{margin-top:8px;min-height:14px}}

.atelier-interior{height:calc(100% - var(--atelier-floor-depth,110px))}.atelier-floor{position:absolute;left:0;bottom:0;width:100%;height:var(--atelier-floor-depth,110px);z-index:-1;pointer-events:none}
#artist-title:focus{outline:none}#artist-title:focus-visible{outline:none}
/* The house is the main experience; the title introduces it rather than sharing its stage. */
.experience-cover{display:block;padding:25px 4% 45px;max-width:1600px;min-height:0}.intro{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:auto auto;gap:18px 10%;max-width:1210px;width:100%;margin:0 auto;padding:18px 3% 30px;align-items:end}.intro>div:first-child{grid-row:1/3;min-width:0}.intro h1{font-size:clamp(55px,5.5vw,83px);line-height:1.05;max-width:none}.intro h1 br{display:block}.intro h1 em{display:block}.intro .subtitle{font-size:17px;max-width:38ch;margin-top:20px}.intro .invitation{font-size:16px;line-height:1.6;max-width:39ch;margin-top:0}.intro .text-link{font-size:14px;margin-top:17px}.intro .cover-note{font-size:11px;max-width:100%;margin-top:17px!important}.cover-controls{grid-column:2;grid-row:2;margin:0;gap:18px}.cover-controls button{font-size:11px}.calendar{margin:10px auto 0;max-width:1300px}.calendar-meta{font-size:12px;justify-content:center;gap:15px;padding:5px 4% 0}.scene-stage{padding:18px 15% 66px;max-width:none;margin:0;min-height:0}.house{max-width:820px;width:100%}.house-body{padding-top:22px;padding-left:4%;padding-right:4%}.house-name{font-size:28px;line-height:1.25;padding:7px 18px;margin-bottom:23px}.facade-leaf{padding:10px 10px 15px}.leaf-windows{gap:25px 19px}.window-picture{aspect-ratio:160/180}.door-number{font-size:34px;min-width:48px;min-height:41px;padding:3px 8px}.house-entrance{height:auto;margin-top:14px}.facade-star{width:32px;height:62px}.star-right{height:54px}.winter-ground{left:8%;right:8%;bottom:28px;height:100px}.scene-stage:after{bottom:64px}.house-caption{font-size:13px;margin:0 auto;max-width:50ch}.preview-controls{font-size:12px;padding-top:19px}.preview-toggle{font-size:11px;margin-top:18px}
@media(min-width:651px) and (max-width:900px){.experience-cover{padding-top:22px;padding-left:4%;padding-right:4%}.intro{grid-template-columns:1.1fr 1fr;padding:10px 2% 25px;gap:15px 7%}.intro h1{font-size:54px}.intro .subtitle{font-size:15px;margin-top:17px}.intro .invitation{font-size:14px;max-width:100%}.intro .text-link{font-size:12px}.intro .cover-note{font-size:10px}.cover-controls{gap:16px}.calendar{margin-top:15px}.calendar-meta{font-size:11px;max-width:100%;justify-content:center}.scene-stage{padding:12px 6% 54px}.house{max-width:720px}.house-name{font-size:25px;margin-bottom:20px;padding:6px 14px}.house-body{padding-top:20px}.leaf-windows{gap:20px 14px}.facade-leaf{padding:7px 8px 12px}.door-number{font-size:31px;min-width:43px;min-height:38px}.window-picture{aspect-ratio:160/180}.house-entrance{height:auto;margin-top:12px}.facade-star{width:28px;height:55px}.star-right{height:47px}.house-caption{font-size:12px;max-width:42ch}.winter-ground{left:0;right:0;height:80px;bottom:23px}}
@media(max-width:650px){.experience-cover{padding:22px 0 30px}.intro{display:block;padding:0 7% 18px;width:100%}.intro h1{font-size:clamp(46px,12.5vw,64px);line-height:1.03}.intro .subtitle{font-size:15px;line-height:1.5;max-width:30ch;margin-top:17px}.intro .invitation{font-size:14px;line-height:1.55;margin-top:17px;max-width:100%}.intro .text-link{font-size:13px;margin-top:14px}.intro .cover-note{font-size:10px;margin-top:13px!important}.cover-controls{display:flex;margin-top:12px;gap:22px}.cover-controls button{font-size:10px}.calendar{margin-top:14px}.calendar-meta{font-size:10px;padding:0 7%;gap:4px;justify-content:flex-start}.scene-stage{padding:9px 3% 39px;overflow:clip}.house{max-width:none}.house-body{padding:15px 4.5% 0}.house-name{font-size:18px;line-height:1.3;margin-bottom:20px;padding:5px 8px}.windows{gap:20px 15px}.window-picture{aspect-ratio:160/180}.door-number{font-size:29px;min-width:39px;min-height:35px;padding:2px 6px}.house-entrance{margin-top:15px;height:auto}.facade-star{width:22px;height:44px}.star-right{height:38px}.winter-ground{left:0;right:0;bottom:16px;height:55px}.house-caption{font-size:10px;max-width:32ch;margin:0 auto}.preview-controls{font-size:11px;padding-top:15px}.preview-toggle{font-size:10px;margin-top:15px}}

.facade-star{transform-origin:50% 0;animation:paper-star-sway 5.5s ease-in-out infinite alternate;animation-play-state:paused}.star-right{animation-delay:-2.4s;animation-duration:6.8s}.atmosphere-playing .facade-star{animation-play-state:running}@keyframes paper-star-sway{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}.scene-stage .door.today .door-number{animation:none}@media(prefers-reduced-motion:reduce){.facade-star{animation:none!important}}.motion-paused .facade-star{animation-play-state:paused!important}

.door.locked .door-number{background:#f5f5ec}

/* The entire calendar occupies the first screen, sized to the available height. */
body[data-view="home"] .masthead{padding:10px 0}.experience-cover{padding:8px 3% 25px}.intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:5px 0 8px;max-width:1300px}.intro>div:first-child{display:flex;align-items:baseline;gap:24px}.intro h1{font-size:clamp(27px,3vw,43px);line-height:1.12;white-space:nowrap}.intro h1 br{display:none}.intro h1 em{display:inline}.intro h1 em:before{content:' '}.intro .subtitle{font-size:13px;line-height:1.4;margin:0;max-width:25ch}.intro .invitation{display:none}.cover-controls{margin:0;flex-shrink:0;gap:15px}.cover-controls button{font-size:10px;min-height:32px}.calendar{margin:0 auto;max-width:1400px}.calendar-meta{padding:0;gap:12px;font-size:10px;line-height:1.4}.calendar-meta p{margin:0}.scene-stage{padding:4px 0 20px;overflow:clip}.house{max-width:none}.house-plane{transform:none}.house-body{padding-top:10px}.house-name{font-size:23px;line-height:1.15;margin-bottom:10px;padding:4px 10px}.facade-leaf{padding:4px 7px 7px}.leaf-windows{gap:9px 12px}.window-picture{aspect-ratio:160/110}.door-number{font-size:27px;min-width:38px;min-height:32px;padding:2px 5px}.house-entrance{height:32px;margin-top:7px}.facade-star{width:23px;height:43px}.star-right{height:37px}.house-caption{font-size:10px;line-height:1.4}.winter-ground{bottom:8px;height:55px}.scene-stage:after{bottom:18px}.preview-controls{padding-top:12px;font-size:10px}
@media(max-width:650px){body[data-view="home"] .masthead{padding:8px 0;gap:8px}.masthead nav{margin-top:0;gap:20px}.masthead .brand img{width:25px;height:28px}.masthead .brand span{font-size:17px}.experience-cover{padding:6px 2% 22px}.intro{display:block;padding:3px 4% 6px}.intro>div:first-child{display:block}.intro h1{font-size:clamp(25px,7vw,36px)}.intro .subtitle{font-size:11px;max-width:100%;margin-top:5px}.cover-controls{margin-top:3px;gap:20px}.cover-controls button{font-size:10px;min-height:27px;padding:3px 0}.calendar-meta{display:flex;flex-direction:row;justify-content:center;gap:7px;padding:0 4%;font-size:9px}.calendar-meta p{max-width:28ch}.scene-stage{padding:4px 0 17px}.house-body{padding:9px 4% 0}.house-name{font-size:17px;margin-bottom:10px}.windows{gap:8px 11px}.window-picture{aspect-ratio:160/95}.door-number{font-size:25px;min-width:33px;min-height:29px}.house-entrance{height:27px;margin-top:7px}.house-caption{font-size:9px;max-width:100%}.facade-star{width:18px;height:35px}.star-right{height:30px}}

/* The ceiling has a fixed architectural depth, independent of story length. */
.atelier-setting #atelier{--ceiling-depth:48px;padding-top:calc(var(--ceiling-depth) + 22px)}.atelier-ceiling{position:absolute;top:0;left:0;width:100%;height:var(--ceiling-depth);z-index:-1;pointer-events:none}.atelier-interior{top:var(--ceiling-depth);height:calc(100% - var(--atelier-floor-depth,110px) - var(--ceiling-depth))}.atelier-top{padding-top:0}.atelier-top .back{margin-bottom:20px}.artist-date{line-height:1.5}.artist-heading>div{min-width:0}.artist-heading h1{overflow-wrap:break-word}
@media(max-width:650px){.atelier-setting #atelier{--ceiling-depth:30px;padding-top:48px}.atelier-top .back{margin-bottom:18px}}
@media(max-width:650px) and (max-height:740px){.windows{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px 7px}.window-picture{aspect-ratio:160/150}.door-number{font-size:23px;min-width:29px;min-height:27px;padding:2px 3px}.house-name{font-size:16px}.house-body{padding-left:3%;padding-right:3%}.intro .subtitle{font-size:10px}.calendar-meta p{max-width:30ch}}

.intro{position:relative;display:block;text-align:center;padding:4px 100px 9px}.intro>div:first-child{display:block}.intro h1{font-size:clamp(27px,3.1vw,44px);letter-spacing:-.025em}.intro .subtitle{font-size:12px;max-width:none;margin:6px 0 0;line-height:1.4}.cover-controls{position:absolute;right:0;top:12px;display:block;margin:0}.cover-controls button{font-size:10px}.calendar-meta{font-size:10px}
@media(max-width:650px){.intro{padding:5px 3% 8px}.intro h1{font-size:clamp(25px,7.1vw,36px)}.intro .subtitle{font-size:11px;margin-top:5px}.cover-controls{position:static;margin-top:3px}.cover-controls button{min-height:24px;padding:3px 0}.calendar-meta{font-size:9px}}

.snowfall{opacity:.9}@media(prefers-reduced-motion:reduce){.snowfall{opacity:.4}}

/* Authored window-to-room passage: retain the selected frame until it leaves the viewport. */
.passage-layer{overflow:hidden}.passage-camera{position:absolute;transform-origin:50% 50%;perspective:700px;background:var(--passage-wall);isolation:isolate;box-shadow:inset 0 0 9px #192b3370}.passage-frame{position:absolute;inset:-24% -22% -38%;z-index:3;pointer-events:none}.passage-frame .window-frame{width:100%;height:100%}.passage-camera>.shutter{z-index:4}.passage-depth{position:absolute;inset:0;overflow:hidden;background:var(--passage-wall)}.passage-back{position:absolute;inset:22% 24%;background:var(--passage-wall);border:1px solid #34473d66}.passage-wall{position:absolute;top:0;bottom:0;width:25%;background:var(--passage-side)}.passage-left{left:0;clip-path:polygon(0 0,100% 22%,100% 78%,0 100%)}.passage-right{right:0;clip-path:polygon(0 22%,100% 0,100% 100%,0 78%)}.passage-ceiling{position:absolute;inset:0 0 78%;background:var(--passage-side);clip-path:polygon(0 0,100% 0,76% 100%,24% 100%)}.passage-floor{position:absolute;inset:78% 0 0;background:var(--passage-floor);clip-path:polygon(24% 0,76% 0,100% 100%,0 100%)}.passage-glimpse{position:absolute;inset:24% 29%;opacity:.4}.passage-glimpse .room-material{position:static;width:100%;height:100%;animation:none}
/* Every atelier has its own material, shared readable surfaces and controls. */
.atelier-setting{background:var(--night)}.room-material{position:absolute;left:.6%;top:calc(var(--ceiling-depth) + 16px);width:3%;height:min(55%,360px);pointer-events:none;opacity:.58;z-index:0}.room-content .artist-story{background:color-mix(in srgb,var(--room-wall) 30%,#fffdf5);box-shadow:3px 7px 14px #152e3020}.room-content .exercise-stage{background:color-mix(in srgb,var(--room-wall) 40%,#fffdf5);box-shadow:5px 10px 18px #18352c26}.day-mark{background:var(--room-wall);border-color:var(--room-accent)}.room-content .experiment-copy h2,.artist-date{color:var(--room-accent)}.room-content .result-actions .button{background:var(--room-accent);border-color:var(--room-accent);color:#fffdf5}.room-content .result-actions .button.secondary{background:#f2f0e5;color:#25483f;border-color:#25483f}.room-content .source-link,.room-content .source-details{color:#25483f}.room-handoff .room-material{animation:material-arrival 1.4s cubic-bezier(.16,1,.3,1) both}@keyframes material-arrival{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:.58;clip-path:inset(0)}}
[data-room="botanical"] .room-material{filter:drop-shadow(2px 3px 1px #28456f35)}[data-room="wire"] .room-material{width:3.6%;left:.25%}[data-room="stitch"] .room-material{opacity:.75}[data-room="light"] .room-material{width:3.5%;opacity:.8}[data-room="porcelain"] .exercise-stage{box-shadow:3px 8px 16px #3d5b4b30}[data-room="charcoal"] .artist-story{background:#f2ebdc}[data-room="paper"] .artist-story{background:#f6eedb}[data-room="clay"] .artist-story{background:#f6e9df}[data-room="line"] .room-material{opacity:.38}
@media(max-width:650px){.room-material{width:3%;left:.3%;height:240px}.artist-heading h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.room-handoff .room-material{animation:none}.room-handoff .interactive{animation:none}}

.room-material{opacity:.8;left:.4%;width:3.5%}.room-material path{stroke-linecap:round}.atelier-setting[data-room="botanical"] .room-material{animation:botanical-light 1.8s ease-out both}.atelier-setting[data-room="wire"] .room-material{animation:wire-settle 1.8s ease-out both;transform-origin:50% 0}.atelier-setting[data-room="fold"] .room-material{animation:fold-settle 1.4s cubic-bezier(.16,1,.3,1) both;transform-origin:left}.atelier-setting[data-room="light"] .room-material{animation:light-arrival 1.8s ease-out both}.atelier-setting[data-room="stitch"] .room-material path{stroke-dasharray:50;animation:thread-arrival 1.6s ease-out both}.atelier-setting[data-room="clay"] .room-material{animation:clay-settle 1.4s ease-out both}.atelier-setting[data-room="colour"] .room-material{animation:colour-arrival 1.5s ease-out both}
@keyframes botanical-light{from{opacity:0;filter:brightness(2)}to{opacity:.8;filter:brightness(1)}}@keyframes wire-settle{0%{transform:rotate(-5deg);opacity:0}50%{transform:rotate(2deg);opacity:.8}100%{transform:rotate(0);opacity:.8}}@keyframes fold-settle{from{transform:perspective(500px) rotateY(-65deg);opacity:.2}to{transform:perspective(500px) rotateY(0);opacity:.8}}@keyframes light-arrival{from{opacity:0;transform:translateY(-20px)}to{opacity:.8;transform:translateY(0)}}@keyframes thread-arrival{from{stroke-dashoffset:50;opacity:.2}to{stroke-dashoffset:0;opacity:1}}@keyframes clay-settle{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:.8}}@keyframes colour-arrival{from{filter:saturate(0);opacity:.2}to{filter:saturate(1);opacity:.8}}
@media(prefers-reduced-motion:reduce){.atelier-setting .room-material,.atelier-setting .room-material path{animation:none!important}}

.artist-story .artist-detail{margin-top:15px}.read-more{display:block;font-size:13px;line-height:1.55;color:#25483f;text-decoration:underline;text-underline-offset:4px;margin-top:20px;overflow-wrap:anywhere}.read-more:hover{color:#7d3c50}.read-more:focus-visible{outline:2px solid #25483f;outline-offset:5px}.room-content .source-details{margin-top:15px;font-size:11px}.room-content .experiment-copy{padding-top:6px}.room-content .experiment-copy>p:first-child{margin-top:0}.room-content .artist-story .mak-note{margin-top:16px}
/* The activity is the first thing to read beside the working surface. */
.room-content .experiment-copy{grid-column:1;grid-row:1;padding:21px 22px;background:#f8f5e9;align-self:start;box-shadow:2px 5px 10px #193b3018}.room-content .experiment-copy>p:first-child{font-size:19px;line-height:1.6;color:#213e35;font-weight:400;margin:0}.room-content .experiment-copy .small{font-size:11px;line-height:1.5;margin-top:18px}.room-content .artist-story{grid-column:1;grid-row:2;align-self:start}.room-content .interactive{grid-column:2;grid-row:1/3}.room-content{grid-template-rows:auto 1fr;row-gap:27px}
@media(min-width:651px) and (max-width:900px){.room-content .experiment-copy{padding:18px}.room-content .experiment-copy>p:first-child{font-size:17px;line-height:1.6}}
@media(max-width:650px){.room-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:25px}.room-content .experiment{display:contents}.room-content .experiment-copy{grid-column:1;grid-row:1;padding:18px}.room-content .experiment-copy>p:first-child{font-size:18px;line-height:1.6}.room-content .interactive{grid-column:1;grid-row:2;margin-top:0}.room-content .artist-story{grid-column:1;grid-row:3}.room-content .artist-story article>p{font-size:15px}}
/* Pastel pigment on winter-blue paper. The texture is authored, deterministic and local. */
:root{--night:#30435b;--pine:#294c49;--snow:#f4f1e8;--night-text:#f1eee5;--gold:#e4c482;--pink:#e0b7bd}
body{background:#30435b;color:var(--night-text)}.experience-cover:before{background:#30435b url('assets/pastel-tooth.svg') repeat;background-size:192px}.masthead{border-color:#aebcce40}.intro h1{color:#f4f0e7}.intro h1 em{color:#e0b7bd}.intro .subtitle,.calendar-meta span{color:#edd6a6}.cover-controls button,.house-caption{color:#e1e5e7}.masthead nav a,.languages button{color:#f1eee5}.scene-stage{isolation:isolate}.house{filter:drop-shadow(11px 17px 12px #15263c55)}.house-body{background:#bec8bd url('assets/pastel-tooth.svg');background-size:145px;box-shadow:inset -3px 0 0 #9baaa2}.facade-leaf{background:#c5ccc0 url('assets/pastel-tooth.svg');background-size:145px}.leaf-0{border-right-color:#7d8f8b55}.leaf-1{background-color:#c1c9c4;box-shadow:inset 5px 0 15px #677e8420}.leaf-2{background-color:#bdc8c8;border-left-color:#7c8e9855;box-shadow:inset 7px 0 13px #677c9026}.facade-wash{opacity:.55}.house-name{background:#e8e7db url('assets/pastel-tooth.svg');border-color:#778d8c70;color:#334b50;box-shadow:none}.door-number,.door.locked .door-number{background:#f1f0e4;color:#29464b!important;border-color:#6a827c!important;box-shadow:1px 2px 2px #506c6720}.door.available .door-number{border-bottom-color:#c09e68}.door.today .door-number{background:#e5c58c}.door:hover .door-number{background:#e7cc9e}.window-art{background:#dec48f}.door.locked .window-art,.door.locked .window-recess{background:#526473}.windows{background:transparent}.house-caption{font-size:11px}.sky-ornaments{opacity:.6}.snowfall{opacity:.82}.meteor-sky{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.winter-ground{opacity:.85}.scene-stage:after{background:#1f3149;opacity:.25}
.atelier-setting{background:#30435b url('assets/pastel-tooth.svg');background-size:210px}.room-content .experiment-copy{background:#f2f0e5 url('assets/pastel-tooth.svg');background-size:170px;box-shadow:2px 5px 12px #233d3a20}.room-content .artist-story{background-color:#f0f0e5;background-image:url('assets/pastel-tooth.svg');background-size:160px}.room-content .exercise-stage{box-shadow:4px 8px 15px #273d3e25}.room-content .experiment-copy>p:first-child{font-size:19px;line-height:1.55}.room-content .artist-story article>p{line-height:1.65}.range-control input{accent-color:var(--room-accent,#48675e)}.learning-note{margin:19px 0 0;padding:15px 0 0;border-top:1px solid #647d704d;font-size:15px;line-height:1.6;color:#29473d;max-width:65ch}.learning-note[hidden]{display:none}.room-content .experiment-copy .small{font-size:11px}.read-more{font-size:13px}.share-section,.idea{border-color:#b8c6cc33}.post-section{background:#d3d8cd url('assets/pastel-tooth.svg');background-size:160px}.share-section a{color:#ead2a5}.button{border-radius:1px}.source-details>summary{min-height:28px}
@media(max-width:650px){.windows{background:#c5ccc2 url('assets/pastel-tooth.svg');background-size:140px}.mobile-facade-wash{opacity:.5}.house{filter:drop-shadow(6px 10px 9px #142a3e55)}.room-content .experiment-copy>p:first-child{font-size:18px}.learning-note{font-size:14px}.intro .subtitle{font-size:11px}.house-caption{font-size:10px}}
/* Keep the sky quiet; pigment grain belongs mainly to the drawn object. */
.experience-cover:before{background-image:linear-gradient(#30435be8,#30435be8),url('assets/pastel-tooth.svg')}.facade-wash{opacity:1}.mobile-facade-wash{opacity:.75}

.intro h1{font-size:clamp(31px,3.8vw,49px);letter-spacing:-.035em}.intro h1 em{color:#efe9e2}.intro .subtitle{color:#dac6a6}.house-body,.leaf-1{background-color:#c0c7ca}.facade-leaf{background-color:#c3c9c8}.leaf-0{background-color:#c8c7c7}.leaf-2{background-color:#bac4cc}.house-name{background-color:#e4e3dc}.house .door-number{border-width:.7px}.room-content .artist-story{box-shadow:2px 5px 12px #1b2f3618}.room-content .artist-story h2{font-size:24px;line-height:1.2}.room-content .experiment-copy{box-shadow:none}.learning-note{border-top-color:#6c7c7040}
@media(max-width:650px){.intro h1{font-size:clamp(27px,7.3vw,37px)}.windows{background-color:#c2c8ca}.room-content .artist-story h2{font-size:24px}}

.atelier-setting{background-image:linear-gradient(#30435be8,#30435be8),url('assets/pastel-tooth.svg')}

/* The approved December-night drawing is the working calendar, not a separate illustration. */
:root{--night:#101d36;--night-text:#eee9df}body{background:#101d36}.experience-cover:before{background:#101d36}.atelier-setting{background:#101d36 url('assets/pastel-tooth.svg') repeat}.scene-stage:after,.winter-ground{display:none}.scene-stage{padding:0 0 10px}.night-house{position:relative;aspect-ratio:4/5;background:none;max-width:none!important;filter:none!important;container-type:inline-size;isolation:isolate;transform:none}.night-house .pastel-house{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.night-house .door{position:absolute;display:block;padding:0;margin:0;min-width:0;min-height:0;transform:rotate(var(--tilt,0rad));transform-origin:50% 0;opacity:0;z-index:2;background:none;border:0;box-shadow:none;overflow:visible}.night-house.painted .door{opacity:1}.night-house .window-picture{position:absolute;inset:0 0 auto;height:var(--aperture);width:100%;aspect-ratio:auto;display:block;overflow:visible;filter:none}.night-house .window-recess{position:absolute;inset:0;background:transparent!important;overflow:visible;perspective:400px}.night-house .window-art{position:absolute;inset:0;background:transparent;box-shadow:none;overflow:hidden}.night-house .window-art svg{width:100%;height:100%;object-fit:cover}.night-house .shutter{position:absolute;top:0;bottom:0;width:50%;height:100%;opacity:.93}.night-house .shutter svg{width:100%;height:100%;display:block}.night-house .window-frame{display:none}.night-house .door-number,.night-house .door.locked .door-number{position:absolute;top:calc(var(--aperture) + 1.3cqw);left:50%;transform:translateX(-50%);font-size:4.5cqw;line-height:1;min-width:5.7cqw;min-height:0;padding:.3cqw .6cqw;color:#f6edda!important;background:#17283be8;border:0!important;border-radius:35% 30% 40% 25%;box-shadow:none;white-space:nowrap;margin:0}.night-house .door.today .door-number{background:#f2d198;color:#14243d!important}.night-house .door:hover .door-number,.night-house .door:focus-visible .door-number{background:#e9c785;color:#14243d!important}.night-house .door:focus-visible{outline:2px solid #ffe1a1;outline-offset:7px}.night-house .door.opened .window-art{background:#e4ca9c}.night-house .door.locked{filter:none;opacity:1}.night-house .door.locked .window-picture{filter:brightness(.8)}.night-house .door[data-day="5"]:not(.opened) .shutter,.night-house .door[data-day="9"]:not(.opened) .shutter,.night-house .door[data-day="17"]:not(.opened) .shutter{width:38%}.house-caption{color:#d5dbdf}.intro h1 em{color:#f0dfc5}.scene-stage .snowfall{opacity:.55}.atelier-setting #atelier{background:color-mix(in srgb,var(--room-wall) 90%,#e6ddca);background-image:url('assets/pastel-tooth.svg');background-size:160px}.room-content .experiment-copy{background:#f1e7d4 url('assets/pastel-tooth.svg');background-size:150px}.room-content .artist-story{background:#ece5d8 url('assets/pastel-tooth.svg');background-size:150px}.room-content .exercise-stage{background:#f1ebdf;box-shadow:3px 8px 15px #101d3628}.room-content .experiment-copy>p:first-child{color:#20364b}.read-more,.room-content .source-link,.room-content .source-details{color:#28425a}.atelier-top .back{color:#254159}.artist-heading h1{color:#1b3046}.passage-layer .shutter{opacity:.97}.passage-layer .window-frame{display:block}.passage-frame{inset:-3% -3% -2%}.post-section{background:#bbc7ca url('assets/pastel-tooth.svg')}.preview-controls{color:#e0e5e8}
@media(max-width:650px){.night-house .door-number{font-size:4.7cqw}.night-house .door:focus-visible{outline-offset:3px}.intro h1{font-size:clamp(25px,7.3vw,37px)}.scene-stage{padding:0 0 6px}.night-house .door{touch-action:manipulation}}

/* A lit room has one uninterrupted pane and one pair of slightly open shutters. */
.night-house .door[data-day="5"]:not(.opened) .shutter,.night-house .door[data-day="9"]:not(.opened) .shutter,.night-house .door[data-day="17"]:not(.opened) .shutter{width:14%;opacity:1}.night-house .shutter{opacity:1}

/* Closed shutters: a thin warm seam, never a visible yellow pane. */
.night-house .door[data-day="5"]:not(.opened) .shutter,.night-house .door[data-day="9"]:not(.opened) .shutter,.night-house .door[data-day="17"]:not(.opened) .shutter{width:51%;opacity:1}.night-house .shutter-left{left:-.5%}.night-house .shutter-right{right:-.5%}

.scene-stage .snowfall{opacity:1}.sky-ornaments{opacity:.85}

/* Inside the same winter house: a real window, warm plaster and pigment at the edges. */
.atelier-setting{padding-top:30px;background:#101d36}.atelier-setting #atelier{background-color:#e7dfcc;box-shadow:9px 18px 28px #07122266}.atelier-setting #atelier:before,.atelier-setting #atelier:after{background:#31485f;border-color:#6c7885}.atelier-top{display:grid;grid-template-columns:minmax(0,1fr) clamp(80px,13vw,140px);gap:0 32px;position:relative;padding-bottom:30px;background:linear-gradient(115deg,transparent 30%,#e9cb8e24 75%,#edcf964d)}.atelier-top>.back{grid-column:1/-1;justify-self:start;position:relative;z-index:1}.atelier-top .artist-heading{grid-column:1;align-self:center;gap:20px}.room-winter-window{grid-column:2;grid-row:2;width:100%;height:auto;max-height:172px;align-self:center;filter:drop-shadow(3px 6px 4px #182b4025)}.atelier-top:before{content:'';position:absolute;left:0;top:16%;width:10px;height:72%;background:var(--room-accent);opacity:.32;clip-path:polygon(12% 2%,89% 0,76% 34%,100% 59%,68% 99%,0 96%,24% 61%,4% 31%);pointer-events:none}.artist-heading h1{font-size:clamp(30px,3.8vw,52px);line-height:1.15}.day-mark{background:color-mix(in srgb,var(--room-accent) 15%,#ede2ca);border:0;color:var(--room-accent);min-width:52px;min-height:52px}.room-content{position:relative;border-top:1px solid #b7a68966;padding-top:30px}.room-content .experiment-copy{background:#f5e9d1 url('assets/pastel-tooth.svg');background-size:160px;border:0;padding:24px}.room-content .artist-story{background:color-mix(in srgb,var(--room-wall) 20%,#f6efdf);background-image:url('assets/pastel-tooth.svg');background-size:170px;box-shadow:none}.room-content .exercise-stage{background:#f5efdf;box-shadow:4px 9px 18px #192d4030}.room-content .interactive{position:relative}.room-content .drawing-credit{color:#3d4a4e}.atelier-end{position:relative;border-color:#8c79634d}.atelier-floor{opacity:.9}.atelier-interior{opacity:.78}.atelier-ceiling{filter:saturate(1.2) brightness(.86)}.room-material{opacity:.65!important}.room-content .result-actions .button{background:#294563;border-color:#294563;color:#fff4df}.room-content .result-actions .button.secondary{background:#eee2ca;border-color:#294563;color:#294563}.room-content .experiment-copy>p:first-child{line-height:1.6;color:#243951}.learning-note{color:#29435b}.atelier-top .back{color:#29435b}.atelier-setting .artist-date{color:#573f3d}
@media(max-width:650px){.atelier-setting{padding-top:18px}.atelier-top{grid-template-columns:minmax(0,1fr) 70px;gap:0 15px;padding-bottom:24px}.atelier-top .artist-heading{align-items:start;gap:10px}.artist-heading h1{font-size:29px}.day-mark{display:none}.room-content .experiment-copy{padding:20px}.room-winter-window{align-self:start;margin-top:20px}.room-content{padding-top:24px}.atelier-top:before{width:5px}.room-material{opacity:.45!important}}
.atelier-top .back{margin-bottom:12px}.room-winter-window{max-height:116px;justify-self:end}.atelier-top{padding-bottom:22px}.atelier-top .artist-heading{min-height:116px}@media(max-width:650px){.room-winter-window{max-height:100px;margin-top:12px}.atelier-top .artist-heading{min-height:100px}.atelier-top .back{margin-bottom:10px}}
.public-space-stage{touch-action:pan-y}.public-space-stage svg{display:block;width:100%;height:auto;max-height:none}.public-space-stage [data-object]{cursor:grab;touch-action:none;outline:none}.public-space-stage [data-object]:active{cursor:grabbing}.public-space-stage [data-object]:focus-visible{filter:drop-shadow(0 0 2px #294563)}.public-space-controls{display:grid;gap:20px;margin-top:20px}.space-add,.space-actions{display:flex;flex-wrap:wrap;gap:10px}.space-add button,.space-actions button{min-height:42px}.public-space-hint{font-size:13px;line-height:1.6;color:#29435b;margin:16px 0}.space-editors{display:grid;gap:13px}.space-editors[hidden]{display:none}.space-limit:empty{display:none}.space-limit{margin:0;color:#29435b}.space-editors .range-control{margin:0}.public-space-controls button:disabled{opacity:.45;cursor:default}
.seam-hotspots{position:absolute;inset:0;pointer-events:none}.seam-hotspots button{position:absolute;width:7%;height:23%;background:transparent;border:1px dashed #45614b66;pointer-events:auto;cursor:pointer;padding:0}.seam-hotspots button[aria-pressed="true"]{border-color:transparent}.seam-hotspots button:hover,.seam-hotspots button:focus-visible{outline:2px solid #294563;outline-offset:2px}.floorplan-hotspots{position:absolute;left:15.75%;top:15%;width:69%;height:70%;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr)}.floorplan-hotspots button{background:transparent;border:0;cursor:pointer;padding:0}.floorplan-hotspots button:hover,.floorplan-hotspots button:focus-visible{outline:2px solid #294563;outline-offset:-4px}
.memory-room-stage{touch-action:none;cursor:crosshair}.memory-room-stage svg{display:block;width:100%;height:auto}.memory-room-controls{display:grid;gap:18px;margin-top:20px}.memory-tools{display:flex;flex-wrap:wrap;gap:9px}.memory-tools button{min-height:42px}.memory-tools button[aria-pressed="true"]{background:#294563;color:#fff3dc;border-color:#294563}.memory-room-hint{font-size:13px;line-height:1.6;color:#29435b;margin-top:15px}.memory-undo:disabled{opacity:.4;cursor:default}
.memory-tools button,.space-add button,.space-actions button{padding:10px 13px;min-height:44px;border:1px solid #6f7f88;background:#f1e7d3;line-height:1.3}.memory-tools button[aria-pressed="true"]{background:#294563;color:#fff3dc}.memory-room-controls input,.public-space-controls input,.public-space-controls select{min-width:0;max-width:100%}.storage-note{font-size:11px;line-height:1.6;color:#40505b;margin-top:16px;max-width:62ch}
@media(max-width:650px){.atelier-top{grid-template-columns:minmax(0,1fr) 58px;gap:0 12px;padding-bottom:18px}.atelier-top .artist-heading{min-height:84px}.room-winter-window{max-height:84px;margin-top:10px}.room-content .experiment-copy{padding:18px}.room-content .experiment-copy>p:first-child{font-size:17px;line-height:1.5}.room-content{gap:20px;padding-left:5%;padding-right:5%}.memory-room-controls,.public-space-controls{gap:18px}.memory-tools,.space-add,.space-actions{gap:9px}.memory-tools button,.space-add button,.space-actions button{flex:1 1 auto;font-size:13px}.memory-room-controls .field-control,.public-space-controls .select-control{line-height:1.5}.storage-note{font-size:11px}}
#workspace[data-exercise="memory-floorplan"]>.memory-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;gap:7px}#workspace[data-exercise="memory-floorplan"]>.memory-tools button{padding:9px 5px;font-size:13px;min-width:0}
/* Wider bays, not wider windows: the painter keeps openings and entrance proportional. */
.night-house{--house-spread:1;aspect-ratio:calc(.8 * var(--house-spread));perspective:1300px}.night-house .pastel-house{opacity:0}.night-house.painted .pastel-house{opacity:1}.garland-lights{position:absolute;inset:0;pointer-events:none;z-index:3}.garland-lights i{position:absolute;width:3px;height:4px;margin-left:-1.5px;border-radius:50%;background:#ffebba;box-shadow:0 0 5px 2px #ffdf9a85,0 0 15px 5px #efbd6440;animation:garland-glow 3.7s ease-in-out infinite;animation-delay:var(--glow-delay)}@keyframes garland-glow{0%,100%{opacity:.55}50%{opacity:1;box-shadow:0 0 7px 3px #ffe5a6b0,0 0 18px 7px #efbd6455}}.night-house .door:is([data-day="5"],[data-day="9"],[data-day="17"]):not(.opened) .window-picture:before,.night-house .door:is([data-day="5"],[data-day="9"],[data-day="17"]):not(.opened) .window-picture:after{content:'';position:absolute;left:3%;right:3%;height:1px;background:#efce8e;box-shadow:0 0 5px 1px #eac17e88;pointer-events:none;z-index:0}.night-house .door:is([data-day="5"],[data-day="9"],[data-day="17"]):not(.opened) .window-picture:before{top:-1px}.night-house .door:is([data-day="5"],[data-day="9"],[data-day="17"]):not(.opened) .window-picture:after{bottom:-1px}.house-fold{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;z-index:4;backface-visibility:hidden;pointer-events:none}.house-fold canvas{position:absolute;top:0;width:200%;height:100%}.fold-left{left:0;transform-origin:100% 50%}.fold-right{right:0;transform-origin:0 50%}.fold-left canvas{left:0}.fold-right canvas{right:0}.house-unfolding>.pastel-house,.house-unfolding>.door,.house-unfolding>.garland-lights{visibility:hidden}.house-unfolding>.house-fold{visibility:visible}.atmosphere-playing .garland-lights i{animation-play-state:running}.garland-lights i{animation-play-state:paused}@media(min-width:651px) and (max-width:900px){.night-house{--house-spread:1.18}}@media(min-width:901px){.night-house{--house-spread:1.45}.night-house .door-number{font-size:calc(4.5cqw / var(--house-spread));top:calc(var(--aperture) + .9cqw);min-width:calc(5.7cqw / var(--house-spread));padding:.2cqw .45cqw}}
@media(prefers-reduced-motion:reduce){.garland-lights i{animation:none!important}}

@media(max-width:650px){.night-house .door:after{content:"";position:absolute;inset:-3px -5px;background:transparent}}
.door-number svg{display:block;height:1em;width:auto;overflow:visible}.night-house .door-number{line-height:1;padding-top:.35cqw;padding-bottom:.35cqw}.idea.why{background:#253e57;position:relative}.idea.why h2{color:#e6b2b2;max-width:16ch}.idea.why p{color:#f0e9da}.idea.why p+p{color:#e3cda3}.share-section h2{color:#e8b8ba}.masthead nav a:last-child{color:#ecd5a1}
.direct-share{display:flex;flex-wrap:wrap;gap:12px}.direct-share [hidden]{display:none}.direct-share .button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none}.share-form{max-width:700px}.email-share-form{display:grid;gap:13px;margin:24px 0;padding:24px 0;border-top:1px solid #adc0cc55;border-bottom:1px solid #adc0cc55}.email-share-form input{width:100%;min-width:0;min-height:46px;padding:11px 14px;background:#f2eddf;color:#23394f;border:1px solid #a8b7ba;border-radius:0}.email-share-form .button{justify-self:start}.share-page .small{font-size:13px;line-height:1.6;color:#e1d8c6}.share-page .share-form>label{font-size:15px}.share-page .button{background:#e8c68e;color:#19324c;border-color:#e8c68e}.share-page .button.secondary{background:#f0e8d8;color:#253e57;border-color:#f0e8d8}.share-page textarea{max-width:100%;min-width:0}.share-page h1{color:#e5b5b7}@media(max-width:650px){.direct-share .button{flex:1 1 130px}.email-share-form .button{width:100%;justify-self:stretch}.email-share-form{padding:20px 0;margin:17px 0}}
.share-page .small{color:#40566a}.share-page h1{color:#8c4e65}.email-share-form{border-color:#98a7b266}.share-page .share-form>label,.email-share-form>label{color:#29435b}
.calendar-share-icon{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:7px;color:#edd3a2;border:0}.calendar-share-icon svg,.calendar-share-link svg{width:23px;height:23px;flex:none}.calendar-share-icon:hover{color:#fff3d9}.calendar-share-icon:focus-visible{outline:2px solid #ecd09c;outline-offset:3px}.calendar-share-link{display:inline-flex;align-items:center;gap:12px;text-align:left;font:inherit}.masthead nav{align-items:center}.calendar-share-link svg{stroke:none}
