@font-face{font-family:'Della Respira';src:url('assets/della-respira.ttf') format('truetype');font-display:swap;font-weight:400}@font-face{font-family:'Josefin Sans';src:url('assets/josefin-sans.ttf') format('truetype');font-display:swap;font-weight:400}@font-face{font-family:'Josefin Sans';src:url('assets/josefin-sans-semibold.ttf') format('truetype');font-display:swap;font-weight:600}
:root{--pine:#173d38;--snow:#f4f7f3;--ink:#242827;--pink:#efb8bf;--gold:#dfb856;--wine:#a73a49;--blue:#3731d4;--line:#b9cbc2;--display:'Della Respira',Georgia,serif;--sans:'Josefin Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px;scrollbar-color:var(--gold) var(--pine)}body{margin:0;background:var(--pine);color:var(--snow);font:400 18px/1.55 var(--sans)}::selection{background:var(--gold);color:var(--ink)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{opacity:.35;cursor:default}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400}p+p{margin-top:18px}svg{display:block;max-width:100%}svg path{stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}.skip{position:fixed;top:-90px;z-index:9;background:var(--gold);color:var(--ink);padding:12px}.skip:focus{top:0}.masthead{margin:0 5%;padding:24px 0;display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;border-bottom:1px solid #adc4b44d}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;width:max-content}.brand img{width:38px;height:40px;object-fit:contain}.brand span{font:24px/.85 var(--display);letter-spacing:-.03em}.masthead nav{display:flex;gap:30px;align-items:center}.masthead nav a{font-size:14px;text-decoration:none}.masthead nav a:hover{text-decoration:underline}.languages{justify-self:end;display:flex;gap:9px;align-items:center}.languages button{font-size:12px;padding:7px 5px;min-width:31px;border-bottom:1px solid transparent}.languages button[aria-pressed=true]{color:var(--gold);border-bottom-color:var(--gold)}.intro{max-width:1400px;margin:auto;padding:48px 7% 35px;display:grid;grid-template-columns:1.25fr 1fr;gap:12%;align-items:end}.intro h1{font-size:clamp(42px,5.5vw,77px);line-height:1.02;letter-spacing:-.035em}.intro h1 em{font-style:normal;color:var(--pink)}.subtitle{font-size:17px;margin-top:22px;color:var(--gold)}.invitation{max-width:400px;font-size:17px}.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:20px;padding:8px 0;border-bottom:1px solid;text-decoration:none;font-size:15px}.text-link svg,.button svg{width:29px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}.calendar{max-width:1260px;margin:auto;padding:0 5%}.calendar-meta{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--snow);padding:16px 0 0}.calendar-meta p{color:var(--gold)}.house{padding-top:6px;max-width:1060px;margin:0 auto}.roof{width:100%;height:auto;position:relative;z-index:1;overflow:visible}.house-body{background:#dce7df;color:var(--ink);margin:-9px 1.55% 0;padding:26px 5% 34px;position:relative;border:1.4px solid #242827;border-radius:1px 3px 2px 1px;isolation:isolate}.house-body:before{content:'';position:absolute;inset:7px 6px;border:1px solid #2428278c;pointer-events:none;transform:rotate(.13deg);z-index:-1}.house-name{font:clamp(17px,2.5vw,29px) var(--display);width:fit-content;max-width:100%;text-align:center;margin:0 auto 35px;padding:8px 20px;color:var(--pine);border-top:1px solid var(--pine);border-bottom:1px solid var(--pine);transform:rotate(-.5deg);overflow-wrap:anywhere}.windows{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 23px}.door{display:flex;flex-direction:column;align-items:center;text-decoration:none;min-width:0;transform:rotate(var(--tilt));color:var(--ink);padding:0 0 2px;transition:transform .3s cubic-bezier(.16,1,.3,1)}.door:hover{transform:rotate(0) translateY(-3px)}.door:focus-visible{outline-color:var(--wine);outline-offset:6px}.window-picture{display:block;position:relative;width:100%;aspect-ratio:160/180;isolation:isolate}.window-art{position:absolute;inset:16% 16% 23%;overflow:hidden;background:var(--snow)}.window-art>svg{width:100%;height:100%;object-fit:cover}.window-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.door-number{display:flex;align-items:center;justify-content:center;min-width:46px;min-height:42px;padding:1px 10px;background:#fff;color:#173d38;font:600 31px/1 var(--sans);font-variant-numeric:lining-nums tabular-nums;border:1px solid var(--pine);border-radius:2px 4px 2px 3px;margin-top:2px;box-shadow:1px 2px 3px #173d3810}.door:hover .door-number{background:var(--gold)}.house-base{height:15px;margin:29px -5% -18px}.house-base>path{vector-effect:non-scaling-stroke}.house-caption{text-align:center;font-size:13px;margin:21px 0 0;color:#c8d8cd}.idea{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding:75px 8%;max-width:1400px;margin:auto}.idea h2,.post-section h2,.share-section h2{font-size:clamp(29px,3.2vw,42px);line-height:1.25;letter-spacing:-.02em;max-width:16ch}.idea h2{color:var(--pink)}.idea>div{max-width:560px}.post-section{padding:60px 8%;display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center;background:#e6ede7;color:var(--pine)}.post-section h2{max-width:20ch;margin-bottom:20px}.post-section p{max-width:510px}.post-section .small{margin-top:17px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 20px;min-height:48px;background:var(--gold);color:var(--ink);font-size:15px;line-height:1.3;text-decoration:none;border:1px solid transparent;transition:background .2s}.button:hover{background:var(--pink)}.button.secondary{background:transparent;border-color:var(--pine);color:var(--pine)}.post-section .button{margin-top:25px}.post-drawing{transform:rotate(-5deg);max-width:420px;width:100%;justify-self:center;padding:10px}.share-section{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding:70px 8%;max-width:1400px;margin:auto}.share-section h2{color:var(--pink)}.share-section>div{max-width:520px}.directory{margin:0 8% 65px;max-width:1200px}.directory summary{font:24px var(--display);cursor:pointer;padding:15px 0;border-top:1px solid #adc4b44d}.directory details>p{max-width:650px;font-size:15px;margin:20px 0}.directory ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;gap:10px 30px}.directory li a{display:flex;align-items:baseline;gap:14px;font-size:15px;text-decoration:none;padding:8px 0}.directory li span{color:var(--gold);min-width:22px}.directory li i{font-style:normal;color:var(--pink)}footer{border-top:1px solid #adc4b44d;margin:0 5%;padding:30px 0;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:12px}footer>div{flex-shrink:0}footer>div a{font:25px var(--display);text-decoration:none;color:var(--pink)}footer .independent{max-width:300px;font-size:12px;color:#ccdad1}.small{font-size:13px;line-height:1.5}.toast{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#atelier,.mail-page,.share-page{background:var(--snow);color:var(--ink)}.back{display:inline-block;font-size:14px;padding:7px 0;border-bottom:1px solid;text-decoration:none;margin-bottom:32px;color:var(--pine)}.atelier-top{padding:30px 7% 40px;max-width:1400px;margin:auto}.artist-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;align-items:center}.artist-heading h1{font-size:clamp(35px,4.9vw,65px);line-height:1.18;letter-spacing:-.03em;overflow-wrap:anywhere;max-width:20ch}.artist-date{color:var(--wine);font-size:14px;margin-bottom:14px}.day-mark{font:600 54px/1 var(--sans);color:var(--pine);font-variant-numeric:lining-nums;padding:14px;border:1px solid var(--pine);min-width:86px;min-height:86px;display:flex;align-items:center;justify-content:center}.artist-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:42px 8%;background:#e5ece6}.artist-story article{max-width:580px}.artist-story h2,.experiment h2{font-size:31px;line-height:1.3;margin-bottom:20px}.artist-story article>p{font-size:18px;line-height:1.6}.source-link{display:inline-block;font-size:13px;margin-top:23px;color:var(--pine)}.artist-story article .mak-note{font-size:12px;margin-top:15px;line-height:1.5;max-width:55ch}.artist-figure{align-self:center;min-width:0;max-width:520px}.artist-figure>div{width:100%}.artist-figure svg{display:block;width:100%;height:auto}.artist-figure figcaption{font-size:14px;padding-top:14px;line-height:1.45}.artist-figure figcaption span{display:block;font-size:12px;color:var(--pine);margin-top:6px}.experiment{padding:50px 8% 55px;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;max-width:1500px;margin:auto}.experiment-copy>p{max-width:460px}.experiment-copy .small{margin-top:26px;color:var(--pine)}.interactive{min-width:0}.exercise-stage{width:100%;position:relative;background:#edf2ef;overflow:hidden}.exercise-stage>svg{width:100%;height:auto}.exercise-stage svg text{pointer-events:none}.rhythm-grid,.stamp-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.rhythm-grid button,.stamp-grid button{min-height:44px;background:transparent;position:relative}.rhythm-grid button:hover,.stamp-grid button:hover{background:#dfb85620}.rhythm-grid button:focus-visible,.stamp-grid button:focus-visible{outline:2px solid var(--pine);outline-offset:-4px}.stamp-grid button{cursor:crosshair}.exercise-controls{display:flex;flex-wrap:wrap;align-items:start;gap:17px 20px;margin-top:22px}.range-control{display:flex;flex-direction:column;width:100%;gap:6px;font-size:14px;line-height:1.4}.range-control>span{display:flex;justify-content:space-between;gap:10px}.range-control output{font-variant-numeric:tabular-nums}.range-control input{width:100%;accent-color:var(--pine);min-height:30px;margin:0;cursor:pointer}.select-control,.field-control{display:flex;flex-direction:column;gap:7px;flex:1 1 120px;min-width:0;font-size:14px}.select-control select,.field-control input{width:100%;min-height:43px;border:1px solid #9eafa4;background:#fff;color:var(--ink);padding:8px 10px;max-width:100%;border-radius:0;caret-color:var(--pine)}.field-control{flex-basis:100%}.check-control{display:flex;gap:10px;align-items:center;font-size:14px;line-height:1.35;min-height:35px}.check-control input{width:19px;height:19px;accent-color:var(--pine);flex-shrink:0}.swatches{display:flex;gap:13px;flex-wrap:wrap}.swatches button{background:var(--swatch);width:36px;height:36px;border:1px solid var(--ink);border-radius:50%}.swatches button[aria-pressed=true]{outline:2px solid var(--pine);outline-offset:4px}.small-button{font-size:14px;padding:9px 0;border-bottom:1px solid var(--pine);color:var(--pine);min-height:40px}.seams{display:grid;grid-template-columns:repeat(3,1fr);gap:9px 16px;width:100%}.memory-hidden{min-height:250px;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:var(--pine);color:var(--gold);font:80px var(--display)}.memory-question{border:0;padding:0;margin:0;width:100%;display:flex;gap:12px;flex-wrap:wrap}.memory-question legend{padding:15px 0;font-size:16px}.feedback{font-size:14px;color:var(--pine);width:100%;margin-top:10px}.room-controls{display:grid;grid-template-columns:repeat(4,1fr);width:100%;max-width:340px;gap:8px}.room-controls button{min-height:44px;border:1px solid var(--pine);background:#fff}.room-controls button[aria-pressed=true]{background:var(--gold)}.kitchen-order{width:100%}.kitchen-order>div{display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}.kitchen-order>div span{flex:1}.kitchen-order button{width:38px;height:35px;border:1px solid var(--line);color:var(--pine);font-size:19px}.story-output{padding:18px 22px;background:#fff;font:23px/1.5 var(--display);overflow-wrap:anywhere}.drawing-board{display:block;width:100%;height:auto;aspect-ratio:4/3;touch-action:none;cursor:crosshair}.line-count{font-variant-numeric:tabular-nums;font-size:14px}.result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}.reset-button{font-size:13px;text-decoration:underline;text-underline-offset:5px;min-height:40px;padding:4px 0;color:var(--pine)}.work-status{font-size:14px;line-height:1.5;min-height:22px;margin-top:15px;color:var(--wine)}.share-fallback{padding-top:18px;border-top:1px solid var(--line);font-size:14px}.share-fallback input{display:block;width:100%;padding:10px;background:#fff;border:1px solid var(--line);font-size:13px;margin-top:15px;color:var(--pine)}.atelier-end{margin:0 8%;padding:25px 0 40px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;color:var(--pine)}.mail-page,.share-page{padding:35px 8% 65px;min-height:70vh}.mail-page>h1,.share-page>h1{font-size:clamp(34px,4vw,52px);line-height:1.2;max-width:21ch;margin-bottom:25px}.mail-paper{max-width:640px;margin:35px auto;padding:40px;background:white;border:1px solid var(--line)}.mail-brand{font:25px var(--display);color:var(--pine)}.mail-date{font-size:13px;color:var(--wine);margin-top:23px}.mail-paper h2{font-size:30px;line-height:1.3;margin:20px 0}.mail-art{max-width:280px;margin:25px auto}.mail-art svg{width:100%;height:auto}.mail-paper .button{margin:25px 0}.mail-paper .small{border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.flow-note{max-width:640px;margin:20px auto}.share-form{max-width:680px;margin-top:30px}.share-form label{display:block;margin-bottom:10px}.share-form textarea{display:block;width:100%;min-height:180px;resize:vertical;padding:18px;background:#fff;border:1px solid var(--line);border-radius:0;caret-color:var(--pine);color:var(--ink)}.share-form .button{margin-top:22px}.share-form .small{margin-top:18px}
@media(min-width:1600px){.intro{padding-top:60px}.windows{gap:36px 30px}}
@media(max-width:950px){.masthead{gap:20px}.masthead nav{gap:20px}.intro{gap:8%;padding-left:6%;padding-right:6%}.intro h1{font-size:58px}.windows{gap:22px 16px}.house-body{padding-left:4%;padding-right:4%}.house-name{margin-bottom:26px}.door-number{font-size:29px;min-height:40px;min-width:43px}.artist-story,.experiment{gap:6%;padding-left:6%;padding-right:6%}.artist-story h2,.experiment h2{font-size:28px}.idea,.share-section{gap:8%;padding-left:7%;padding-right:7%}.directory ol{grid-template-columns:repeat(2,minmax(0,1fr))}.artist-heading h1{font-size:47px}}
@media(max-width:650px){body{font-size:17px}.masthead{margin:0 5%;padding:21px 0;grid-template-columns:1fr auto;gap:18px}.masthead nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:15px}.masthead nav a{font-size:14px}.languages{grid-column:2;grid-row:1}.brand span{font-size:22px}.brand img{width:32px;height:34px}.intro{padding:34px 6% 22px;grid-template-columns:1fr;gap:23px}.intro h1{font-size:49px;line-height:1.06}.subtitle{font-size:16px;line-height:1.5;margin-top:18px}.invitation{font-size:16px;max-width:100%}.text-link{font-size:14px;margin-top:14px}.calendar{padding:0 3%}.calendar-meta{padding:15px 3% 8px;flex-direction:column;gap:4px;font-size:12px}.house-body{padding:20px 4% 25px;margin-top:-6px}.house-name{font-size:18px;padding:8px 7px;margin-bottom:27px}.windows{grid-template-columns:repeat(4,minmax(0,1fr));gap:23px 14px}.door-number{font-size:29px;min-width:43px;min-height:40px;padding:2px 7px}.window-picture{aspect-ratio:150/180}.house-body:before{inset:5px 4px}.house-caption{font-size:12px;margin:20px 6% 0}.house-base{margin-top:25px}.idea,.share-section,.post-section{grid-template-columns:1fr;padding:43px 7%;gap:26px}.idea h2,.post-section h2,.share-section h2{font-size:31px;max-width:20ch}.post-drawing{width:76%;max-width:300px}.directory{margin:0 7% 45px}.directory summary{font-size:21px;line-height:1.4}.directory ol{grid-template-columns:1fr;gap:2px}.directory li a{font-size:15px}.directory li span{font-size:14px}footer{align-items:start;flex-wrap:wrap;padding:25px 0;font-size:12px;gap:20px}footer .independent{max-width:100%}.atelier-top{padding:25px 7% 30px}.artist-heading{gap:20px;align-items:start}.artist-heading h1{font-size:35px;line-height:1.2}.artist-date{font-size:12px;line-height:1.5;margin-bottom:12px}.day-mark{font-size:30px;min-width:51px;min-height:51px;padding:8px}.back{margin-bottom:28px;font-size:13px}.artist-story{grid-template-columns:1fr;padding:32px 7%;gap:29px}.artist-story h2,.experiment h2{font-size:27px}.artist-story article>p{font-size:17px;line-height:1.6}.artist-figure{max-width:430px;width:100%;justify-self:center}.artist-figure figcaption{font-size:13px}.experiment{grid-template-columns:1fr;padding:35px 7%;gap:28px}.experiment-copy .small{margin-top:18px}.result-actions{gap:12px}.result-actions .button{flex:1 1 130px;font-size:14px;padding:13px 12px;min-height:48px}.reset-button{flex-basis:100%;text-align:left}.seams{gap:6px 12px}.seams .check-control{font-size:13px}.atelier-end{margin:0 7%;font-size:13px;gap:15px}.artist-story :focus-visible,.experiment :focus-visible,.mail-page :focus-visible,.share-page :focus-visible{outline-color:var(--pine)}.mail-page,.share-page{padding:26px 7% 45px}.mail-page>h1,.share-page>h1{font-size:33px}.mail-paper{padding:25px 22px}.mail-paper h2{font-size:27px}.mail-paper p{font-size:16px}.mail-paper .small,.flow-note.small{font-size:12px}.flow-note{font-size:15px}.small{font-size:13px}}
@media(max-width:360px){.windows{gap:20px 8px}.door-number{min-width:39px;font-size:27px}.intro h1{font-size:44px}.house-name{font-size:16px}.artist-heading{gap:12px}.artist-heading h1{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.preview-toggle{display:inline-block;font-size:12px;margin-top:12px;color:#e1c87d}.preview-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:16px 0;font-size:13px;color:var(--gold)}.preview-controls label{display:flex;align-items:center;gap:12px}.preview-controls select{padding:6px 10px;background:var(--snow);color:var(--pine);border:1px solid var(--gold)}.door.locked:hover{transform:rotate(var(--tilt))}.door.locked .door-number{background:#eaf0e9}.window-light{position:absolute;width:6px;height:6px;bottom:11%;left:48%;background:var(--gold);border:1px solid #72552d;border-radius:50%}.door.available:hover .window-art{box-shadow:0 5px 14px #dfb85670}.door.opened .window-art{background:#f8edc8}.source-details{margin-top:24px;font-size:14px;color:var(--pine)}.source-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:5px}.source-details p{margin-top:14px}.source-details .source-link{margin-top:12px}.why{padding-bottom:15px}.masthead nav{flex-wrap:wrap}.house-name:before,.house-name:after{content:'✧';font-size:.7em;color:#7e5d25;display:inline-block;margin:0 10px}.available .door-number{border-bottom:3px solid #a57a34}

::view-transition-old(root){animation:atelier-out .16s ease-in both}::view-transition-new(root){animation:atelier-in .42s cubic-bezier(.16,1,.3,1) both}@keyframes atelier-out{to{opacity:0}}@keyframes atelier-in{from{opacity:0;clip-path:inset(2% 0 0)}to{opacity:1;clip-path:inset(0)}}

.artist-story{display:block;padding-top:32px;padding-bottom:32px}.artist-story article{max-width:76ch}.artist-story article>p{max-width:70ch}.drawing-credit{color:var(--pine);margin-top:12px;max-width:60ch}.experiment{padding-top:40px}

.house-name:before,.house-name:after{content:none}
