:root{--ink:#f3eadb;--paper:#d9cbb7;--muted:#ad9f8b;--night:#070907;--forest:#101a13;--forest2:#18251c;--plum:#2b1727;--maroon:#522426;--ember:#dda04e;--brass:#cbb076;--line:rgba(241,234,220,.16);--glass:rgba(8,12,9,.8);--shadow:0 24px 80px rgba(0,0,0,.5)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 85% 0,rgba(82,36,38,.25),transparent 34rem),linear-gradient(#0b0f0c,#080a08);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.65}a{color:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--ink);color:#15120e;padding:.7rem 1rem}.skip:focus{top:1rem}
.site-header{position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,4rem);background:linear-gradient(180deg,rgba(4,6,4,.97),rgba(4,6,4,.5));backdrop-filter:blur(9px);border-bottom:1px solid transparent}.wordmark{text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:1rem}.ember{color:var(--ember);margin-right:.45rem}.nav{display:flex;gap:1.1rem;align-items:center}.nav a{text-decoration:none;color:var(--paper);font-size:.9rem}.nav a:hover,.nav a:focus-visible{color:#fff}.nav .neighbor-link{border:1px solid var(--line);padding:.38rem .65rem}.menu{display:none;border:1px solid var(--line);background:rgba(0,0,0,.25);color:var(--ink);padding:.48rem .75rem}
.hero{min-height:100svh;position:relative;display:grid;align-items:end;overflow:hidden}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06) 15%,rgba(0,0,0,.22) 50%,rgba(4,7,5,.97) 100%),linear-gradient(90deg,rgba(0,0,0,.48),transparent 62%)}.hero-copy{position:relative;z-index:2;max-width:52rem;padding:10rem clamp(1.4rem,7vw,7rem) 7rem;text-shadow:0 2px 20px rgba(0,0,0,.75)}.kicker{color:var(--brass);text-transform:uppercase;letter-spacing:.18em;font-size:.75rem}.hero h1{font-size:clamp(3.2rem,8vw,7.3rem);font-weight:500;line-height:.92;margin:.2rem 0 1rem;max-width:11ch}.hero p.lead{font-size:clamp(1.15rem,2.2vw,1.5rem);max-width:35rem}.button,.text-link{display:inline-block;margin-top:1rem;text-decoration:none;border:1px solid rgba(241,234,220,.55);padding:.82rem 1.1rem;background:rgba(12,18,13,.72);box-shadow:0 8px 30px rgba(0,0,0,.35)}.button:hover,.button:focus-visible,.text-link:hover,.text-link:focus-visible{background:var(--ink);color:#17120e}.subtle{color:var(--muted)}
.section{padding:clamp(4.7rem,9vw,8.5rem) clamp(1.2rem,7vw,7rem);border-top:1px solid var(--line)}.narrow{max-width:52rem;margin:0 auto}.section h2{font-size:clamp(2.3rem,5vw,4.6rem);line-height:1.05;font-weight:500;margin:.35rem 0 1.4rem}.section .lead{font-size:clamp(1.18rem,2.3vw,1.6rem);color:var(--paper)}blockquote{margin:2.8rem 0 0;padding:1rem 0 1rem 1.8rem;border-left:2px solid var(--ember);font-size:1.3rem;color:var(--paper)}
.room-grid,.resident-grid{max-width:1200px;margin:2.5rem auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.room-card,.resident-card{min-height:19rem;padding:2rem;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.95),rgba(10,13,10,.96));box-shadow:var(--shadow)}.room-card:nth-child(2n),.resident-card:nth-child(2n){background:linear-gradient(145deg,rgba(82,36,38,.58),rgba(10,13,10,.96))}.room-card:nth-child(3n),.resident-card:nth-child(3n){background:linear-gradient(145deg,rgba(43,23,39,.78),rgba(10,13,10,.96))}.room-card h3,.resident-card h3{font-size:2rem;font-weight:500;margin:.35rem 0}.room-card p,.resident-card p{color:var(--paper);max-width:34rem}.room-card a{color:var(--brass);text-decoration:none;margin-top:auto;padding-top:1rem}.room-number{color:var(--brass);letter-spacing:.18em;font-size:.72rem}.resident-card{min-height:15rem;justify-content:flex-start}.resident-role{color:var(--brass);font-style:italic}
.split{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,6vw,5rem);align-items:center}.art-frame img{width:100%;display:block;border:1px solid var(--line);box-shadow:var(--shadow)}.paper{background:#d8c9ab;color:#251a14;padding:clamp(1.6rem,4vw,3rem);box-shadow:var(--shadow);transform:rotate(.2deg)}.paper h3{font-size:2rem;font-weight:500;margin:.2rem 0 1rem}.paper .kicker{color:#6d4527}.paper a{color:#5d3024;font-weight:bold}.paper ul{padding-left:1.2rem}.paper li{margin:.55rem 0}.management-note{margin-top:2rem;padding:1rem 1.1rem;background:#f0e4c9;border:1px dashed #6d4527;transform:rotate(-.5deg);font-family:'Courier New',monospace}.feather{font-size:1.5rem}
.map-stage{position:relative;max-width:1200px;margin:2.4rem auto 0}.map-stage img{display:block;width:100%;border:1px solid var(--line);box-shadow:var(--shadow)}.map-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1rem}.map-card{padding:1.25rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.96),rgba(10,13,10,.96));text-decoration:none}.map-card strong{display:block;font-size:1.18rem;font-weight:500}.map-card span{display:block;color:var(--muted);font-size:.92rem;margin-top:.25rem}
.seed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1100px;margin:2.5rem auto 0}.seed{padding:1.5rem;border:1px solid var(--line);background:linear-gradient(150deg,rgba(26,42,31,.95),rgba(10,13,10,.95));min-height:13rem}.seed h3{font-size:1.5rem;margin:.3rem 0}.seed .stage{color:var(--brass);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}.seed p{color:var(--paper)}
.note-strip{max-width:900px;margin:2rem auto 0;text-align:center;padding:1.5rem;border:1px solid var(--line);background:rgba(82,36,38,.28);font-style:italic}.page-hero{min-height:72svh}.page-hero h1{max-width:13ch}.journal-list{max-width:850px;margin:2.5rem auto 0}.journal-entry{padding:2rem 0;border-top:1px solid var(--line)}.journal-entry h3{font-size:2rem;font-weight:500;margin:.3rem 0}.journal-entry p{color:var(--paper)}.incident{border-left:2px solid var(--brass);padding-left:1.5rem}.form-card{max-width:720px;margin:2.5rem auto 0;padding:clamp(1.5rem,5vw,3rem);border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.95),rgba(10,13,10,.97));box-shadow:var(--shadow)}label{display:block;margin-bottom:.45rem;color:var(--paper)}input{width:100%;padding:.9rem 1rem;background:#0b0f0c;color:var(--ink);border:1px solid var(--line);font:inherit}button.button{color:var(--ink);font:inherit;cursor:pointer}.small{font-size:.88rem;color:var(--muted)}
.footer{padding:3.5rem clamp(1.2rem,7vw,7rem);display:grid;grid-template-columns:1fr auto;gap:2rem;background:#050705;border-top:1px solid var(--line);color:var(--muted)}.footer strong{display:block;color:var(--ink);font-size:1.2rem;font-weight:500}.footer-links{display:flex;flex-direction:column;text-align:right}.credit{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1rem;font-size:.82rem}
@media(max-width:900px){.map-actions{grid-template-columns:repeat(2,1fr)}}@media(max-width:780px){.menu{display:block}.nav{display:none;position:absolute;top:100%;right:1rem;flex-direction:column;align-items:stretch;min-width:14rem;background:rgba(5,7,5,.98);border:1px solid var(--line);padding:1rem}.nav.open{display:flex}.hero{min-height:92svh}.hero-copy{padding-bottom:4.8rem}.map-actions,.seed-grid,.room-grid,.resident-grid,.split{grid-template-columns:1fr}.footer{grid-template-columns:1fr}.footer-links{text-align:left}.credit{grid-column:1}.page-hero{min-height:68svh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Residents — illustrated household cards */
.residents-intro{text-align:center}.residents-intro h2{max-width:18ch;margin-left:auto;margin-right:auto}.resident-grid-art{max-width:1400px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.resident-card-art{padding:0;overflow:hidden;min-height:0;justify-content:flex-start;background:linear-gradient(180deg,rgba(22,34,26,.98),rgba(7,10,8,.99))}.resident-card-art:nth-child(2n),.resident-card-art:nth-child(3n){background:linear-gradient(180deg,rgba(27,38,29,.98),rgba(7,10,8,.99))}.resident-portrait{display:block;aspect-ratio:4/5;overflow:hidden;border-bottom:1px solid var(--line);background:#0b0f0c}.resident-portrait img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s ease,filter .8s ease}.resident-card-art:hover .resident-portrait img{transform:scale(1.025);filter:brightness(1.06)}.resident-copy{padding:1.5rem 1.6rem 1.8rem}.resident-card-art h3{font-size:clamp(1.8rem,3vw,2.35rem);color:var(--ink)}.resident-card-art .resident-role{text-transform:uppercase;letter-spacing:.12em;font-style:normal;font-size:.7rem;margin:0;color:var(--brass)}.resident-card-art .resident-copy>p:last-child{margin-bottom:0}.resident-note{font-size:.78rem;line-height:1.45;color:#251a14;margin-top:1.5rem}.residents-footer span{display:block}
@media(max-width:1100px){.resident-grid-art{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.resident-grid-art{grid-template-columns:1fr}.resident-card-art{max-width:34rem;margin-inline:auto;width:100%}}

/* The Library */
.library-page{background:radial-gradient(circle at 70% 8%,rgba(221,160,78,.12),transparent 30rem),linear-gradient(#080b08,#050705)}
.library-hero{min-height:94svh;position:relative;display:grid;align-items:end;overflow:hidden;padding:8rem clamp(1.4rem,7vw,7rem) 6rem;background:
linear-gradient(90deg,rgba(4,6,4,.95),rgba(4,6,4,.2) 58%,rgba(4,6,4,.75)),
repeating-linear-gradient(90deg,#16130f 0 5px,#201a13 5px 9px,#100e0b 9px 13px)}
.library-hero:before,.library-hero:after{content:'';position:absolute;bottom:0;width:26%;height:70%;background:repeating-linear-gradient(0deg,#17140f 0 8px,#211a12 8px 11px,#0b0b08 11px 14px);border:1px solid rgba(203,176,118,.18);box-shadow:inset 0 0 80px #000,0 0 80px #000}
.library-hero:before{left:0}.library-hero:after{right:0}.library-hero-copy{position:relative;z-index:4;max-width:43rem;margin-left:clamp(0rem,24vw,22rem);text-shadow:0 2px 24px #000}.library-hero h1{font-size:clamp(4rem,10vw,8rem);line-height:.9;font-weight:500;margin:.25rem 0 1rem}.library-hero .lead{font-size:clamp(1.35rem,2.5vw,1.9rem);color:var(--paper)}
.library-window{position:absolute;z-index:2;top:13%;left:34%;width:31%;height:44%;border:16px solid #17120e;box-shadow:0 0 0 2px #3e3020,0 25px 80px #000,inset 0 0 80px #000;background:linear-gradient(#192936,#334047 55%,#1b211e)}.library-window:before,.library-window:after{content:'';position:absolute;background:#17120e;z-index:2}.library-window:before{left:48%;top:0;width:4%;height:100%}.library-window:after{top:48%;left:0;height:4%;width:100%}.rain{position:absolute;width:1px;height:46%;background:linear-gradient(transparent,rgba(233,239,241,.75),transparent);transform:rotate(14deg);animation:libraryRain 2.6s linear infinite}.rain-one{left:20%;top:-15%}.rain-two{left:56%;top:-35%;animation-delay:.8s}.rain-three{left:78%;top:-5%;animation-delay:1.5s}@keyframes libraryRain{to{transform:translate(70px,190px) rotate(14deg)}}
.library-lantern{position:absolute;z-index:5;top:13%;left:18%;width:78px;height:130px;border:4px solid #503c24;border-radius:40% 40% 18% 18%;background:radial-gradient(circle,#fff2b0 0,#dfa44f 25%,rgba(221,160,78,.2) 62%,transparent 64%);box-shadow:0 0 40px #dda04e,0 0 120px rgba(221,160,78,.38)}.library-lantern:before{content:'';position:absolute;left:18px;top:-35px;width:34px;height:32px;border:4px solid #503c24;border-bottom:0;border-radius:50% 50% 0 0}.library-fireplace{position:absolute;z-index:3;bottom:0;left:30%;width:20%;height:27%;background:#120d09;border:18px solid #2b2118;border-bottom:0;box-shadow:0 0 80px rgba(221,160,78,.25)}.flame{position:absolute;left:35%;bottom:5%;width:30%;height:55%;border-radius:50% 50% 48% 48%;background:radial-gradient(circle at 50% 75%,#fff7bd,#f0a43b 45%,#7d271b 72%,transparent 74%);filter:drop-shadow(0 0 18px #e58a28);animation:firePulse 1.8s ease-in-out infinite alternate}@keyframes firePulse{to{transform:scale(.9,1.07) translateY(-3px);filter:drop-shadow(0 0 28px #e58a28)}}
.library-section{background:radial-gradient(circle at 50% 25%,rgba(221,160,78,.09),transparent 40rem)}.library-shelf{max-width:1180px;margin:3rem auto 0;padding:2.2rem 2rem .75rem;display:flex;align-items:flex-end;justify-content:center;gap:.65rem;min-height:25rem;background:linear-gradient(#17120e,#21180f);border:18px solid #2c2117;border-bottom-width:30px;box-shadow:inset 0 0 70px #000,var(--shadow)}.shelf-book{appearance:none;border:1px solid rgba(255,255,255,.17);color:var(--ink);font:inherit;width:13%;min-width:105px;height:18rem;padding:1.1rem .7rem;display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;cursor:pointer;box-shadow:inset 0 0 20px rgba(0,0,0,.4),4px 6px 8px rgba(0,0,0,.45);transition:transform .3s ease,filter .3s ease}.shelf-book:hover,.shelf-book:focus-visible,.shelf-book.selected{transform:translateY(-18px);filter:brightness(1.15)}.shelf-book span{color:var(--brass);font-size:.75rem;letter-spacing:.18em}.shelf-book strong{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:500;font-size:1.15rem;letter-spacing:.05em}.shelf-book small{color:var(--paper);font-size:.72rem}.book-green{background:linear-gradient(90deg,#172b20,#254331,#172b20)}.book-plum{background:linear-gradient(90deg,#2a1728,#4b2946,#2a1728)}.book-maroon{background:linear-gradient(90deg,#482123,#6d3533,#482123)}.book-gold{background:linear-gradient(90deg,#67512b,#9b7b3e,#67512b)}.book-forest{background:linear-gradient(90deg,#102018,#234131,#102018)}.book-night{background:linear-gradient(90deg,#171b31,#2b3153,#171b31)}
.reading-table{max-width:980px;margin:3rem auto 0;min-height:25rem;padding:clamp(2rem,6vw,5rem);color:#2b1d13;background:linear-gradient(105deg,#cfbd98,#eadbb8 48%,#d1bf98 52%,#eadbb8);box-shadow:var(--shadow);position:relative}.reading-table:after{content:'';position:absolute;top:4%;bottom:4%;left:50%;width:2px;background:rgba(83,55,32,.18);box-shadow:0 0 18px rgba(83,55,32,.25)}.open-volume{display:none;max-width:38rem;margin:auto}.open-volume.active{display:block}.open-volume h3{font-size:clamp(2rem,4vw,3.4rem);font-weight:500;margin:.25rem 0 1rem}.open-volume .kicker{color:#714825}.open-volume blockquote{color:#543a28;border-color:#9b642c}.open-volume .text-link{color:#3b2418;border-color:#5b3c27;background:rgba(255,255,255,.25)}.journal-preview{margin:1.5rem 0 0}.journal-preview img{display:block;width:100%;max-height:28rem;object-fit:contain;border:1px solid rgba(60,40,24,.3)}.journal-preview figcaption{font-size:.82rem;color:#684c36;margin-top:.5rem}
.archive-section{background:linear-gradient(135deg,rgba(43,23,39,.75),rgba(8,10,8,.97))}.archive-door{min-height:34rem;position:relative;border:14px solid #24170e;background:repeating-linear-gradient(90deg,#3f2919 0 18px,#51351f 18px 36px,#342116 36px 52px);box-shadow:inset 0 0 80px #130b07,var(--shadow)}.archive-door:before{content:'';position:absolute;inset:7%;border:2px solid rgba(203,176,118,.33)}.archive-plaque{position:absolute;top:22%;left:50%;transform:translateX(-50%);padding:1rem 1.5rem;border:2px solid #8b6b3a;background:#20150d;color:var(--brass);letter-spacing:.2em;text-align:center;box-shadow:0 8px 24px #000}.archive-plaque small{display:block;margin-top:.55rem;color:var(--paper);letter-spacing:.06em}.archive-handle{position:absolute;right:10%;top:53%;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ead39b,#8b6b3a 50%,#2e2113);box-shadow:0 0 0 4px #25190e}.library-closing{text-align:center;background:radial-gradient(circle at 50% 0,rgba(221,160,78,.1),transparent 26rem)}
.library-map-card{border-color:rgba(203,176,118,.5);background:linear-gradient(145deg,rgba(64,48,28,.96),rgba(10,13,10,.96))}
@media(max-width:900px){.library-hero-copy{margin-left:0}.library-window{left:35%;width:50%;opacity:.55}.library-hero:before,.library-hero:after{width:20%}.library-shelf{justify-content:flex-start;overflow-x:auto}.shelf-book{min-width:120px}.reading-table:after{display:none}}
@media(max-width:650px){.library-hero{padding-top:9rem}.library-window{left:18%;width:68%;top:16%}.library-fireplace{left:48%;width:35%}.library-lantern{left:8%;top:18%;transform:scale(.75)}.library-shelf{min-height:22rem;padding-inline:1rem}.shelf-book{height:16rem}.reading-table{min-height:0}.archive-door{min-height:26rem}}
@media(prefers-reduced-motion:reduce){.rain,.flame{animation:none}}

/* The Library Ladder */
.library-cabinet{--ladder-stop:0;max-width:1240px;margin:3rem auto 0;position:relative;padding-top:8.5rem}.ladder-rail{position:absolute;z-index:6;left:3.2%;right:3.2%;top:7.15rem;height:18px;border:3px solid #3b2a18;border-radius:12px;background:linear-gradient(#d4b776,#70522e 42%,#2a1b0e 58%,#b08a4c);box-shadow:0 4px 10px #000,inset 0 1px 2px #f7dc9e}.ladder-rail:before,.ladder-rail:after{content:'';position:absolute;top:-8px;width:18px;height:30px;border-radius:6px;background:#654727;border:2px solid #1d1209}.ladder-rail:before{left:4%}.ladder-rail:after{right:4%}.library-ladder{--step:calc((100% - 9rem)/6);appearance:none;position:absolute;z-index:8;left:calc(2.5rem + (var(--ladder-stop) * var(--step)));top:6.7rem;width:7.2rem;height:28rem;border:0;background:transparent;cursor:pointer;transform:rotate(2deg);transition:left 1.15s cubic-bezier(.2,.75,.2,1),transform .4s ease;filter:drop-shadow(8px 12px 9px rgba(0,0,0,.65))}.library-ladder:hover,.library-ladder:focus-visible{transform:rotate(0deg) translateY(-4px);outline:2px solid rgba(221,160,78,.7);outline-offset:5px}.library-ladder:before,.library-ladder:after{content:'';position:absolute;top:1.6rem;bottom:1.1rem;width:15px;border:2px solid #2a170b;border-radius:8px;background:linear-gradient(90deg,#4b2b13,#a36935 45%,#4a2812);box-shadow:inset 2px 0 2px rgba(255,218,151,.25)}.library-ladder:before{left:1rem}.library-ladder:after{right:1rem}.ladder-hook{position:absolute;left:1.1rem;right:1.1rem;top:.05rem;height:3rem;border:10px solid #6c4824;border-bottom:0;border-radius:45% 45% 0 0;box-shadow:inset 0 2px 2px rgba(255,220,160,.2)}.ladder-rung{position:absolute;z-index:2;left:1.45rem;right:1.45rem;height:10px;border:2px solid #2a170b;border-radius:5px;background:linear-gradient(#b5793c,#5a3217);box-shadow:0 2px 2px rgba(0,0,0,.5)}.rung-1{top:5rem}.rung-2{top:8.8rem}.rung-3{top:12.6rem}.rung-4{top:16.4rem}.rung-5{top:20.2rem}.rung-6{top:24rem}.ladder-feet:before,.ladder-feet:after{content:'';position:absolute;bottom:0;width:2.2rem;height:.8rem;border-radius:60% 60% 20% 20%;background:#2a170b}.ladder-feet:before{left:.35rem}.ladder-feet:after{right:.35rem}.ladder-whisper{position:absolute;z-index:9;top:3.15rem;left:50%;transform:translateX(-50%);margin:0;padding:.35rem .7rem;color:var(--brass);background:rgba(6,8,6,.78);border:1px solid rgba(203,176,118,.22);font-size:.78rem;letter-spacing:.08em;opacity:.78}.high-shelf{position:absolute;z-index:4;right:4%;top:.4rem;width:19rem;height:5.5rem;padding:.8rem 1rem .45rem;display:flex;align-items:flex-end;gap:.35rem;border:10px solid #2c2117;border-bottom-width:15px;background:#17120e;box-shadow:inset 0 0 35px #000}.high-shelf strong{margin-left:auto;align-self:center;color:var(--brass);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;max-width:8rem;text-align:center}.unwritten-book{display:block;width:1.25rem;height:3.3rem;border:1px solid rgba(255,255,255,.15);box-shadow:2px 2px 3px #000}.unwritten-book.one{background:#312032}.unwritten-book.two{height:4rem;background:#243b2c}.unwritten-book.three{height:2.8rem;background:#715126}.library-cabinet .library-shelf{margin-top:0}.shelf-wayfinding{display:flex;justify-content:center;flex-wrap:wrap;gap:.45rem;margin:1rem auto 0}.shelf-wayfinding button{appearance:none;border:1px solid var(--line);background:rgba(13,18,14,.75);color:var(--paper);padding:.45rem .65rem;font:inherit;font-size:.73rem;cursor:pointer}.shelf-wayfinding button:hover,.shelf-wayfinding button:focus-visible,.shelf-wayfinding button.active{color:#17120e;background:var(--brass)}.library-cabinet.ladder-moving .library-ladder{filter:drop-shadow(12px 16px 11px rgba(0,0,0,.7))}.library-cabinet.ladder-moving .ladder-whisper{color:#fff}.library-cabinet[data-ladder-index="6"] .high-shelf{box-shadow:inset 0 0 35px #000,0 0 36px rgba(221,160,78,.32)}
@media(max-width:900px){.library-cabinet{padding-top:7rem;overflow:hidden}.library-ladder{--step:calc((100% - 7rem)/6);width:6rem;height:24rem;top:5.8rem}.ladder-rail{top:6.25rem}.high-shelf{top:0;right:1rem;transform:scale(.86);transform-origin:top right}.ladder-rung{left:1.25rem;right:1.25rem}.rung-1{top:4.4rem}.rung-2{top:7.6rem}.rung-3{top:10.8rem}.rung-4{top:14rem}.rung-5{top:17.2rem}.rung-6{top:20.4rem}}
@media(max-width:650px){.library-cabinet{padding-top:6rem}.library-ladder{display:none}.ladder-rail{display:none}.ladder-whisper{top:.3rem;left:1rem;right:1rem;transform:none;text-align:left}.high-shelf{position:relative;top:auto;right:auto;margin:0 1rem .75rem auto}.shelf-wayfinding{justify-content:flex-start;padding:0 1rem;overflow-x:auto;flex-wrap:nowrap}.shelf-wayfinding button{white-space:nowrap}.library-cabinet[data-ladder-index="6"] .high-shelf{box-shadow:inset 0 0 35px #000,0 0 30px rgba(221,160,78,.35)}}
@media(prefers-reduced-motion:reduce){.library-ladder{transition:none}}
/* Edgar's Lost & Found */
.edgar-section{background:radial-gradient(circle at 50% 0,rgba(221,160,78,.08),transparent 35rem)}
.lost-cabinet{max-width:980px;margin:2.5rem auto 0;padding:1.2rem;border:14px solid #29190e;background:linear-gradient(90deg,#3c2414,#5b381d 48%,#342013);box-shadow:inset 0 0 70px #160c07,var(--shadow)}
.cabinet-top{display:flex;justify-content:space-between;align-items:end;padding:1rem 1.25rem;margin-bottom:1rem;border:2px solid #8f6935;background:#1b110a;color:var(--brass);letter-spacing:.1em}.cabinet-top span{font-size:1.35rem}.cabinet-top small{color:var(--paper)}
.drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.lost-drawer{appearance:none;display:grid;grid-template-columns:3rem 1fr;align-items:center;text-align:left;padding:1rem;border:3px solid #27160c;background:linear-gradient(#80542c,#4b2d17);color:#f1e3c7;font:inherit;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 4px 0 #201108}.lost-drawer:hover,.lost-drawer:focus-visible{transform:translateY(-2px);background:linear-gradient(#966738,#55321a);outline:2px solid var(--brass);outline-offset:2px}.lost-drawer span{display:grid;place-items:center;width:2.15rem;height:2.15rem;border-radius:50%;background:#21140c;color:var(--brass);font-size:.78rem}.lost-drawer.locked{background:linear-gradient(#514739,#2c251e)}
.drawer-story{margin-top:1rem;padding:1.4rem 1.6rem;background:#d8c9ab;color:#281b12;border:1px solid #6d4527;min-height:10rem}.drawer-story .kicker{color:#6d4527}.drawer-story h3{font-size:1.7rem;margin:.2rem 0 .5rem}
.map-page{padding-top:9rem}.map-page h1{font-size:clamp(3rem,7vw,6rem);font-weight:500;line-height:1;margin:.4rem 0 1rem}
.weather-hero{min-height:70svh;display:flex;align-items:end;padding:10rem clamp(1.2rem,7vw,7rem) 6rem;background:linear-gradient(180deg,rgba(3,5,4,.12),rgba(3,5,4,.94)),radial-gradient(circle at 70% 20%,rgba(221,160,78,.25),transparent 20rem),linear-gradient(135deg,#18251c,#070907)}.weather-copy{max-width:58rem}.weather-copy h1{font-size:clamp(3.2rem,8vw,7rem);font-weight:500;line-height:.95;margin:.3rem 0 1rem}.weather-board{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;align-items:stretch}.forecast-main{padding:clamp(1.6rem,4vw,3rem);border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.96),rgba(10,13,10,.98));box-shadow:var(--shadow)}.weather-symbol{font-size:5rem;color:var(--brass)}.forecast-main h2{font-size:clamp(2rem,4vw,3.8rem)}.weather-details{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0 0}.weather-details div{padding:1rem;border:1px solid var(--line)}.weather-details dt{color:var(--brass);text-transform:uppercase;letter-spacing:.13em;font-size:.7rem}.weather-details dd{margin:.35rem 0 0;color:var(--paper)}.weather-note{transform:none}.weather-instruments{max-width:1100px;margin:2.5rem auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.weather-instruments article{padding:1.5rem;border:1px solid var(--line);background:rgba(16,26,19,.8)}.weather-instruments span{font-size:2rem;color:var(--brass)}.weather-instruments h3{font-size:1.4rem;margin:.5rem 0}.weather-instruments p{color:var(--paper)}
@media(max-width:800px){.drawer-grid,.weather-board,.weather-instruments{grid-template-columns:1fr}.map-actions{grid-template-columns:1fr 1fr}.lost-cabinet{border-width:8px}.cabinet-top{display:block}.cabinet-top small{display:block;margin-top:.4rem}}
@media(max-width:520px){.map-actions{grid-template-columns:1fr}.drawer-grid{grid-template-columns:1fr}}

/* Workshop Archive */
.collection-intro{padding-top:9rem;background:radial-gradient(circle at 50% 0,rgba(212,158,72,.12),transparent 46%)}
.collection-grid{width:min(1240px,92vw);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.collection-card{display:block;color:inherit;text-decoration:none;background:rgba(21,16,12,.88);border:1px solid rgba(224,176,92,.34);box-shadow:0 18px 42px rgba(0,0,0,.32);overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.collection-card:hover,.collection-card:focus-visible{transform:translateY(-5px);border-color:rgba(238,194,112,.85);box-shadow:0 24px 54px rgba(0,0,0,.46)}
.collection-card picture{display:block;aspect-ratio:1.5/1;overflow:hidden;background:#17110c}
.collection-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.collection-card:hover img{transform:scale(1.025)}
.collection-card-copy{padding:1rem 1.05rem 1.2rem}
.collection-card-copy h3{margin:.25rem 0 .4rem;font-size:1.32rem}
.collection-card-copy p{margin:0;color:var(--muted,#c8baa5);line-height:1.55}
.collection-number{display:inline-block;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:#e7bd70;border-bottom:1px solid rgba(231,189,112,.4);padding-bottom:.2rem}
.collection-page-head{padding-top:9rem;padding-bottom:2rem;text-align:center}
.collection-plate-wrap{padding-top:1rem}
.collection-plate{width:min(1260px,95vw);margin:0 auto;background:#120d09;border:1px solid rgba(224,176,92,.35);box-shadow:0 24px 70px rgba(0,0,0,.5);padding:.55rem}
.collection-plate img{display:block;width:100%;height:auto}
.collection-caption{padding-top:2.5rem;text-align:center}
.related-row{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1.25rem}
.related-pill{border:1px solid rgba(224,176,92,.35);background:rgba(224,176,92,.08);padding:.45rem .75rem;border-radius:999px;color:#e7d4af}
.workshop-archive-teaser{text-align:center;background:linear-gradient(180deg,rgba(25,18,12,.18),rgba(25,18,12,.6))}
@media (max-width:960px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.collection-grid{grid-template-columns:1fr}.collection-intro,.collection-page-head{padding-top:7rem}}

/* Conservatory — Worlds Being Tended */
.worlds-intro{background:radial-gradient(circle at 50% 0,rgba(203,176,118,.09),transparent 34rem)}
.world-grid{width:min(1180px,92vw);margin:2.8rem auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.world-card{display:block;color:inherit;text-decoration:none;border:1px solid var(--line);background:linear-gradient(150deg,rgba(26,42,31,.95),rgba(10,13,10,.97));overflow:hidden;box-shadow:0 18px 48px rgba(0,0,0,.28)}
.world-card:nth-child(3n){background:linear-gradient(150deg,rgba(82,36,38,.48),rgba(10,13,10,.97))}
.world-card-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr)}
.world-card picture{display:block;min-height:100%}
.world-card img{display:block;width:100%;height:100%;object-fit:cover}
.world-card-copy{padding:clamp(1.45rem,4vw,2.5rem)}
.world-card h3{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:500;margin:.35rem 0 .75rem}
.world-card p{color:var(--paper);margin:0}
.world-card .stage,.world-status span{color:var(--brass);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}
.world-link{display:inline-block;color:var(--brass);margin-top:1.2rem}
a.world-card:hover,a.world-card:focus-visible{border-color:rgba(221,160,78,.7);transform:translateY(-3px)}
.hollowember-intro{padding-top:10rem;text-align:center;background:radial-gradient(circle at 50% 0,rgba(82,36,38,.3),transparent 40rem)}
.hollowember-intro h1{font-size:clamp(3.4rem,9vw,7.8rem);font-weight:500;line-height:.92;margin:.35rem 0 1rem}
.world-status{display:inline-flex;flex-direction:column;margin-top:1.5rem;padding:.8rem 1.2rem;border:1px solid var(--line);background:rgba(16,26,19,.72)}
.world-status strong{font-size:1.2rem;font-weight:500}
.hollowember-art{padding-top:2rem}
.project-plate{width:min(1280px,95vw);margin:0 auto;padding:.55rem;background:#120d09;border:1px solid rgba(224,176,92,.38);box-shadow:0 25px 75px rgba(0,0,0,.52)}
.project-plate img{display:block;width:100%;height:auto}
@media(max-width:800px){.world-grid{grid-template-columns:1fr}.world-card-featured{grid-column:auto;grid-template-columns:1fr}.world-card-featured picture{aspect-ratio:1/1}.hollowember-intro{padding-top:8rem}}

/* Edition 3.4 — Save Me a Cottage */
.cottage-welcome{background:radial-gradient(circle at 50% 0,rgba(221,160,78,.08),transparent 34rem)}
.bookkeeper-letter,.arrival-letter{position:relative;padding:clamp(1.6rem,5vw,3.5rem);border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.94),rgba(9,12,9,.98));box-shadow:var(--shadow)}
.bookkeeper-letter:before,.arrival-letter:before{content:'🪶';position:absolute;right:clamp(1rem,3vw,2rem);top:clamp(1rem,3vw,2rem);font-size:1.7rem;opacity:.75}
.bookkeeper-signature{margin-top:1.8rem;color:var(--brass);font-style:italic;font-size:1.15rem}
.cottage-form-section{background:linear-gradient(180deg,rgba(43,23,39,.18),transparent 34rem)}
.cottage-form-heading{text-align:center}
.cottage-form{max-width:850px}
.cottage-form fieldset{margin:0 0 2rem;padding:0;border:0}
.cottage-form legend{width:100%;margin:0 0 1rem;padding:0 0 .7rem;border-bottom:1px solid var(--line);color:var(--brass);font-size:1.3rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
.cottage-form input,.cottage-form select,.cottage-form textarea{width:100%;padding:.9rem 1rem;background:#0b0f0c;color:var(--ink);border:1px solid var(--line);font:inherit;border-radius:0}
.cottage-form textarea{resize:vertical;min-height:9rem}
.cottage-form input:focus,.cottage-form select:focus,.cottage-form textarea:focus{outline:2px solid var(--brass);outline-offset:2px;border-color:transparent}
.field-note{margin:.45rem 0 0;color:var(--muted);font-size:.9rem}
.hidden-field{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.sharing-choice{padding:1.2rem!important;border:1px solid var(--line)!important;background:rgba(82,36,38,.2)}
.check-row{display:grid;grid-template-columns:1.35rem 1fr;gap:.75rem;align-items:start;margin:0}
.check-row input{width:1.1rem;height:1.1rem;margin:.25rem 0 0;accent-color:var(--ember)}
.bookkeeper-promise{margin:2rem 0;padding:1.4rem 1.5rem;border-left:2px solid var(--ember);background:rgba(221,160,78,.06)}
.bookkeeper-promise h3{margin:.2rem 0 .6rem;font-size:1.55rem;font-weight:500}
.bookkeeper-promise p:last-child{margin-bottom:0;color:var(--paper)}
.form-submit{text-align:center;margin:2rem 0 .5rem}
.form-submit .button{min-width:min(100%,18rem)}
.form-closing{text-align:center;font-style:italic}
.thanks-hero{min-height:78svh}
.edgar-filed{margin-top:2.2rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
@media(max-width:680px){.form-grid{grid-template-columns:1fr}.cottage-form{padding:1.25rem}.bookkeeper-letter:before,.arrival-letter:before{display:none}}


/* Edition 3.6 — The Bookkeeper's Desk */
.book-desk{background:linear-gradient(180deg,#241812,#100c09)!important;border-color:#b98b5d!important}
.desk-hero{min-height:92svh;padding:10rem clamp(1rem,5vw,5rem) 5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.85fr);gap:clamp(2rem,6vw,6rem);align-items:center;background:radial-gradient(circle at 74% 30%,rgba(221,160,78,.13),transparent 23rem),linear-gradient(135deg,#0a0d0a,#16100c)}
.desk-intro h1{font-size:clamp(3.3rem,8vw,7.8rem);line-height:.92;font-weight:500;margin:.35rem 0 1.3rem}
.desk-scene{position:relative;min-height:32rem;border:1px solid rgba(203,176,118,.28);background:linear-gradient(180deg,#15100c 0 55%,#2a1b11 55% 58%,#100d0a 58%);box-shadow:var(--shadow);overflow:hidden}
.desk-scene:before{content:'';position:absolute;inset:10% 8% 43%;background:repeating-linear-gradient(90deg,#241912 0 13%,#120d0a 13% 15%);border:12px solid #382519;box-shadow:inset 0 0 40px #000}
.desk-lantern{position:absolute;right:13%;top:14%;width:4rem;height:7rem;border:2px solid var(--brass);background:radial-gradient(circle,#ffd88a 0 15%,#d5822d 35%,rgba(213,130,45,.15) 70%);box-shadow:0 0 55px rgba(221,160,78,.5)}
.desk-ledger{position:absolute;left:14%;bottom:16%;width:48%;min-height:8rem;padding:1.2rem;transform:rotate(-3deg);background:#a98b62;color:#24180f;border:8px double #4d3420;box-shadow:0 18px 35px #000;display:flex;flex-direction:column;justify-content:center;text-align:center}
.desk-ledger span{font-size:1.4rem;letter-spacing:.16em}.desk-ledger small{font-style:italic}
.desk-coffee{position:absolute;right:20%;bottom:17%;font-size:4.4rem;filter:drop-shadow(0 10px 10px #000)}
.desk-feather{position:absolute;left:52%;bottom:8%;font-size:3.2rem;transform:rotate(19deg)}
.desk-duty-grid{width:min(1160px,92vw);margin:2.5rem auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.desk-duty-grid article{padding:1.5rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.9),rgba(9,12,9,.98))}.desk-duty-grid span{font-size:2rem}.desk-duty-grid h3{margin:.6rem 0 .4rem;font-weight:500}.desk-duty-grid p{color:var(--paper);margin:0}
.key-wall-section{background:radial-gradient(circle at 80% 30%,rgba(82,36,38,.24),transparent 28rem)}
.key-wall{display:grid;grid-template-columns:repeat(5,minmax(4.8rem,1fr));gap:1rem;padding:2rem;border:12px solid #3a271b;background:linear-gradient(#1b130e,#0d0a08);box-shadow:inset 0 0 45px #000,var(--shadow)}
.desk-key{min-height:8.5rem;border:1px solid rgba(203,176,118,.35);background:linear-gradient(#2a1d14,#100c09);color:var(--brass);font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;transition:.2s}.desk-key span{font-size:2.2rem}.desk-key:hover,.desk-key:focus-visible,.desk-key.active{transform:translateY(-4px);border-color:var(--ember);box-shadow:0 0 30px rgba(221,160,78,.18)}.desk-key.waiting{opacity:.66}
.key-note{margin-top:1.5rem;padding:1rem 1.25rem;border-left:2px solid var(--ember);background:rgba(221,160,78,.05)}
.drawer-grid{width:min(1000px,92vw);margin:2rem auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.lost-drawer{padding:1.25rem;border:1px solid rgba(203,176,118,.33);background:linear-gradient(#322117,#17100c);color:var(--ink);font:inherit;text-align:left;cursor:pointer;box-shadow:inset 0 -12px 20px rgba(0,0,0,.25)}.lost-drawer:before{content:'◆';float:right;color:var(--brass)}.lost-drawer span{display:block;margin-top:.45rem;color:var(--muted);font-size:.83rem}.lost-drawer:hover,.lost-drawer:focus-visible,.lost-drawer.open{border-color:var(--ember);transform:translateY(-3px)}
.drawer-story{width:min(850px,92vw)}.desk-promise{background:linear-gradient(180deg,transparent,rgba(43,23,39,.22))}.desk-actions{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;margin-top:1.5rem}
@media(max-width:900px){.desk-hero{grid-template-columns:1fr}.desk-duty-grid{grid-template-columns:repeat(2,1fr)}.key-wall{grid-template-columns:repeat(2,1fr)}.drawer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.desk-duty-grid,.drawer-grid{grid-template-columns:1fr}.desk-scene{min-height:25rem}.desk-ledger{left:8%;width:60%}.desk-coffee{right:8%}.key-wall{padding:1rem;border-width:7px}}

/* =========================================================
   LIVING VALLEY FRAMEWORK · BUILDING DAY SEVEN
   Quiet ambient motion. Nothing moves merely for attention.
   ========================================================= */
:root{
  --valley-breath: 9s;
  --valley-drift: 34s;
  --valley-warmth: rgba(221,160,78,.18);
}

body.valley-alive{
  transition:background-color 2.5s ease,filter 2.5s ease;
}
body.valley-evening{--valley-warmth:rgba(221,160,78,.23)}
body.valley-night{--valley-warmth:rgba(203,176,118,.16)}

/* Ambient layer is decorative and never blocks the page. */
.valley-ambient{
  position:fixed;
  inset:0;
  z-index:24;
  overflow:hidden;
  pointer-events:none;
  contain:layout paint;
}
.valley-leaf{
  position:absolute;
  top:-3rem;
  left:var(--leaf-left,50%);
  width:var(--leaf-size,.62rem);
  height:calc(var(--leaf-size,.62rem) * .68);
  border-radius:85% 12% 80% 18%;
  background:linear-gradient(135deg,rgba(154,78,38,.64),rgba(96,44,25,.38));
  box-shadow:0 0 9px rgba(0,0,0,.18);
  opacity:0;
  transform:rotate(var(--leaf-rotate,18deg));
  animation:valley-leaf-fall var(--leaf-duration,34s) linear forwards;
  will-change:transform,opacity;
}
.valley-leaf:after{
  content:"";
  position:absolute;
  left:46%;
  top:55%;
  width:55%;
  height:1px;
  background:rgba(238,202,142,.28);
  transform:rotate(-35deg);
  transform-origin:left center;
}
@keyframes valley-leaf-fall{
  0%{opacity:0;transform:translate3d(0,-2rem,0) rotate(var(--leaf-rotate,18deg))}
  8%{opacity:.42}
  44%{transform:translate3d(var(--leaf-sway-a,3vw),48vh,0) rotate(calc(var(--leaf-rotate,18deg) + 145deg))}
  82%{opacity:.3}
  100%{opacity:0;transform:translate3d(var(--leaf-sway-b,-4vw),108vh,0) rotate(calc(var(--leaf-rotate,18deg) + 340deg))}
}

/* Living light: a slow variation, never a conspicuous flicker. */
.living-light{
  animation:valley-light-breathe var(--light-duration,var(--valley-breath)) ease-in-out infinite;
  animation-delay:var(--light-delay,0s);
  transform-origin:center;
  will-change:filter,opacity;
}
@keyframes valley-light-breathe{
  0%,100%{filter:brightness(.98) saturate(.96);opacity:.94}
  38%{filter:brightness(1.055) saturate(1.03) drop-shadow(0 0 7px var(--valley-warmth));opacity:1}
  67%{filter:brightness(1.015) saturate(.99);opacity:.97}
}

/* Steam at the Bookkeeper's coffee. */
.desk-coffee{position:relative}
.valley-steam{
  position:absolute;
  left:50%;
  bottom:73%;
  width:1px;
  height:1px;
  pointer-events:none;
}
.valley-steam i{
  position:absolute;
  left:var(--steam-left,0);
  bottom:0;
  width:.28rem;
  height:2.6rem;
  border-left:1px solid rgba(243,234,219,.18);
  border-radius:50%;
  opacity:0;
  transform:translateX(-50%);
  animation:valley-steam-rise var(--steam-duration,7.5s) ease-in-out infinite;
  animation-delay:var(--steam-delay,0s);
}
@keyframes valley-steam-rise{
  0%{opacity:0;transform:translate3d(-50%,.4rem,0) scaleX(.65) rotate(-4deg)}
  22%{opacity:.28}
  58%{opacity:.14;transform:translate3d(calc(-50% + .32rem),-1.35rem,0) scaleX(1.05) rotate(5deg)}
  100%{opacity:0;transform:translate3d(calc(-50% - .18rem),-2.5rem,0) scaleX(1.35) rotate(-3deg)}
}

/* Founding keys move as though a door closed somewhere nearby. */
.desk-key.occupied.valley-key-breath{
  transform-origin:50% 0;
  animation:valley-key-sway var(--key-duration,13s) ease-in-out infinite;
  animation-delay:var(--key-delay,0s);
}
@keyframes valley-key-sway{
  0%,72%,100%{transform:rotate(0deg)}
  78%{transform:rotate(.8deg)}
  84%{transform:rotate(-.55deg)}
  90%{transform:rotate(.22deg)}
}

/* A suggestion of chimney smoke above occupied cottage cards. */
.cottage-card.lived-in{position:relative;overflow:visible}
.valley-smoke{
  position:absolute;
  right:clamp(1.1rem,5vw,3.2rem);
  top:-.7rem;
  width:2rem;
  height:4rem;
  pointer-events:none;
  opacity:.5;
}
.valley-smoke i{
  position:absolute;
  left:50%;
  bottom:0;
  width:.9rem;
  height:.9rem;
  border-radius:50%;
  background:radial-gradient(circle,rgba(218,210,194,.15),rgba(218,210,194,0) 70%);
  filter:blur(.5px);
  opacity:0;
  animation:valley-smoke-rise var(--smoke-duration,12s) ease-out infinite;
  animation-delay:var(--smoke-delay,0s);
}
@keyframes valley-smoke-rise{
  0%{opacity:0;transform:translate3d(-50%,.4rem,0) scale(.55)}
  18%{opacity:.32}
  64%{opacity:.13;transform:translate3d(calc(-50% + .35rem),-2rem,0) scale(1.18)}
  100%{opacity:0;transform:translate3d(calc(-50% - .25rem),-3.6rem,0) scale(1.7)}
}

body.valley-paused .living-light,
body.valley-paused .valley-leaf,
body.valley-paused .valley-steam i,
body.valley-paused .valley-key-breath,
body.valley-paused .valley-smoke i{
  animation-play-state:paused!important;
}

@media (prefers-reduced-motion:reduce){
  .valley-ambient{display:none!important}
  .living-light,.valley-steam i,.valley-key-breath,.valley-smoke i{animation:none!important}
  .valley-steam,.valley-smoke{display:none!important}
}

/* Edition 3.8 — The Valley Finds Its Heart */
.valley-heart-intro{padding-top:9rem;background:radial-gradient(circle at 50% 8%,rgba(221,160,78,.1),transparent 35rem)}
.welcome-oak-plate{width:min(1180px,94vw);margin:3rem auto 0;padding:.65rem;border:1px solid rgba(203,176,118,.38);background:#120e0b;box-shadow:var(--shadow)}
.welcome-oak-plate img{display:block;width:100%;height:auto;max-height:760px;object-fit:cover;object-position:center}
.welcome-oak-plate figcaption{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem .8rem .35rem;color:var(--paper)}
.welcome-oak-plate figcaption strong{font-size:1.25rem;font-weight:500;color:var(--brass)}
.welcome-oak-plate figcaption span{font-style:italic;color:var(--muted)}
.estate-plan-section{background:linear-gradient(180deg,rgba(24,37,28,.38),rgba(10,13,10,.94))}
.estate-plan{position:relative;width:min(1100px,94vw);min-height:760px;margin:3rem auto;padding:3rem;border:1px solid rgba(203,176,118,.32);background:
  radial-gradient(circle at 50% 49%,rgba(221,160,78,.08),transparent 16rem),
  repeating-linear-gradient(0deg,rgba(203,176,118,.018) 0 1px,transparent 1px 28px),
  linear-gradient(145deg,#182219,#0c110d 72%);
  box-shadow:inset 0 0 80px rgba(0,0,0,.48),var(--shadow);overflow:hidden}
.estate-plan:before,.estate-plan:after{content:'';position:absolute;left:50%;top:13%;bottom:10%;width:2px;background:linear-gradient(transparent,rgba(203,176,118,.38) 12%,rgba(203,176,118,.38) 88%,transparent);transform:translateX(-50%)}
.estate-plan:after{top:50%;left:11%;right:11%;bottom:auto;width:auto;height:2px;transform:none;background:linear-gradient(90deg,transparent,rgba(203,176,118,.3) 14%,rgba(203,176,118,.3) 86%,transparent)}
.estate-region,.estate-center{position:absolute;z-index:2;text-align:center}
.estate-region a,.estate-center{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.2rem;border:1px solid rgba(203,176,118,.32);background:rgba(10,14,10,.86);color:var(--ink);text-decoration:none}
.estate-region a:hover,.estate-region a:focus-visible{border-color:var(--ember);transform:translateY(-2px)}
.estate-region strong,.estate-center strong{color:var(--brass);font-size:1.15rem;font-weight:500}
.estate-region small,.estate-center small,.estate-center span{color:var(--muted)}
.estate-north{top:5%;left:50%;transform:translateX(-50%);width:min(20rem,34%)}
.estate-north a+a{margin-top:.65rem}
.tree-line{display:block;margin-bottom:.7rem;letter-spacing:.5rem;white-space:nowrap}
.estate-west{left:4%;top:39%;width:23%}
.estate-east{right:4%;top:39%;width:23%}
.estate-center{left:50%;top:50%;width:25%;transform:translate(-50%,-50%);padding:1.4rem;border-radius:50% 50% 46% 46%;box-shadow:0 0 55px rgba(221,160,78,.08)}
.oak-symbol{font-size:4rem;line-height:1;margin-bottom:.3rem}
.estate-south{left:50%;bottom:4%;transform:translateX(-50%);width:min(27rem,46%)}
.cottage-addresses{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;margin:.7rem 0;padding:.75rem;border:1px solid rgba(203,176,118,.18);background:rgba(82,36,38,.12);font-size:.88rem;color:var(--paper)}
.water-line{display:block;margin-top:.75rem;color:var(--muted)}
.future-path{display:block;margin-top:.75rem;font-size:.8rem;font-style:italic;color:var(--muted)}
.estate-future{position:absolute;z-index:1;color:rgba(203,176,118,.54);font-size:.78rem;font-style:italic;letter-spacing:.08em}
.estate-future-nw{left:4%;top:6%}.estate-future-ne{right:4%;top:6%}.estate-future-sw{left:4%;bottom:6%}.estate-future-se{right:4%;bottom:6%}
.map-expansion-note{width:min(760px,88vw);margin:0 auto;text-align:center;font-style:italic;color:var(--paper)}
.valley-record-grid{width:min(1100px,92vw);margin:2rem auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.valley-record-grid article{padding:1.4rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.9),rgba(9,12,9,.98))}
.valley-record-grid article span{font-size:2rem}.valley-record-grid h3{margin:.65rem 0 .45rem;font-weight:500;color:var(--brass)}.valley-record-grid p{margin:0;color:var(--paper)}
@media(max-width:850px){
  .estate-plan{min-height:auto;padding:1.25rem;display:grid;grid-template-columns:1fr;gap:1rem}
  .estate-plan:before,.estate-plan:after,.estate-future{display:none}
  .estate-region,.estate-center{position:static;width:auto!important;transform:none!important;text-align:left}
  .estate-center{border-radius:0;order:1}.estate-north{order:2}.estate-west{order:3}.estate-east{order:4}.estate-south{order:5}
  .tree-line{letter-spacing:.15rem}.cottage-addresses{grid-template-columns:1fr}
  .valley-record-grid{grid-template-columns:1fr 1fr}
  .welcome-oak-plate figcaption{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){.valley-record-grid{grid-template-columns:1fr}.welcome-oak-plate{width:96vw}}

/* =========================================================
   THE GIVING GROVE · A permanent home for Valley gifts
   ========================================================= */
.giving-grove-page{background:radial-gradient(circle at 50% 8%,rgba(221,160,78,.08),transparent 34rem),var(--bg)}
.grove-hero{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(20rem,.82fr);min-height:78vh;padding-top:5rem;background:linear-gradient(180deg,rgba(8,12,9,.35),rgba(8,12,9,.92));border-bottom:1px solid var(--line)}
.grove-hero-art{min-height:38rem;overflow:hidden;background:#0d120e}
.grove-hero-art img{width:100%;height:100%;object-fit:cover;object-position:28% center;display:block;filter:saturate(.88) brightness(.9)}
.grove-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,5rem)}
.grove-hero-copy h1{margin:.2rem 0 .7rem}.grove-hero-copy .button{align-self:flex-start;margin-top:1.2rem}
.grove-welcome-sign{margin:1.5rem 0 .2rem;padding:1.4rem;border:1px solid rgba(203,176,118,.42);background:linear-gradient(145deg,rgba(66,43,24,.6),rgba(19,27,20,.92));box-shadow:inset 0 0 35px rgba(0,0,0,.28)}
.grove-welcome-sign strong{display:block;color:var(--brass);font-size:1.25rem;font-weight:500}
.grove-welcome-sign p{margin:.55rem 0}.grove-welcome-sign span{display:block;color:var(--muted);font-style:italic}
.grove-introduction{padding-bottom:1.5rem}
.grove-filter-bar{width:min(1100px,92vw);margin:2rem auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}
.grove-filter-bar button{padding:.65rem .9rem;border:1px solid var(--line);background:rgba(18,29,21,.86);color:var(--paper);font:inherit;cursor:pointer}
.grove-filter-bar button:hover,.grove-filter-bar button:focus-visible,.grove-filter-bar button[aria-pressed="true"]{border-color:var(--ember);color:var(--brass);background:rgba(82,36,38,.34)}
.grove-path-grid{width:min(1180px,94vw);margin:0 auto;display:grid;gap:1.25rem;padding:1rem 0 4rem}
.grove-path{padding:clamp(1.3rem,3vw,2.2rem);border:1px solid rgba(203,176,118,.26);background:linear-gradient(145deg,rgba(25,38,28,.92),rgba(9,13,10,.98));box-shadow:inset 0 0 55px rgba(0,0,0,.22)}
.grove-path[hidden]{display:none}
.grove-path-heading{display:flex;gap:1rem;align-items:flex-start}.grove-path-heading>span{font-size:2.2rem;line-height:1}.grove-path-heading h2{margin:.1rem 0 .35rem}.grove-path-heading p:last-child{margin:0;color:var(--muted)}
.grove-gift-shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.4rem}
.grove-empty{grid-column:1/-1;margin:0;padding:1.15rem;border:1px dashed rgba(203,176,118,.24);text-align:center;color:var(--muted);font-style:italic}
.grove-gift-card{display:grid;grid-template-columns:7rem 1fr;gap:1rem;padding:1rem;border:1px solid var(--line);background:rgba(7,10,8,.62)}
.grove-gift-card img,.grove-gift-placeholder{width:7rem;aspect-ratio:4/5;object-fit:cover;border:1px solid rgba(203,176,118,.25);background:radial-gradient(circle at 50% 35%,rgba(221,160,78,.12),rgba(13,20,15,.96));display:grid;place-items:center;font-size:2rem}
.grove-gift-card h3{margin:.15rem 0 .4rem;color:var(--brass);font-weight:500}.grove-gift-card p{margin:.25rem 0;color:var(--paper)}
.grove-gift-action{margin-top:.8rem;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}.grove-gift-action small{color:var(--muted)}
.grove-take-home,.grove-coming{display:inline-block;padding:.55rem .75rem;border:1px solid rgba(203,176,118,.38);color:var(--brass);text-decoration:none;background:rgba(82,36,38,.24)}
.grove-take-home:hover,.grove-take-home:focus-visible{border-color:var(--ember);background:rgba(82,36,38,.5)}.grove-coming{color:var(--muted);font-style:italic}
.grove-keeper-note{width:min(760px,88vw);margin:0 auto;padding:2rem;border-left:3px solid var(--ember);background:rgba(20,31,23,.72)}.grove-keeper-note h2{margin:.2rem 0 .6rem}.grove-keeper-note a{color:var(--brass)}
.estate-grove{position:absolute;z-index:3;left:25%;top:20%;width:19%;text-align:center}
.estate-grove a{display:flex;flex-direction:column;gap:.3rem;padding:.9rem 1rem;border:1px solid rgba(221,160,78,.48);background:rgba(12,20,14,.94);color:var(--ink);text-decoration:none;box-shadow:0 0 28px rgba(221,160,78,.08)}
.estate-grove a:hover,.estate-grove a:focus-visible{border-color:var(--ember);transform:translateY(-2px)}.estate-grove strong{color:var(--brass);font-weight:500}.estate-grove small{color:var(--muted)}.grove-map-icon{font-size:2.2rem;line-height:1}
@media(max-width:900px){.grove-hero{grid-template-columns:1fr;padding-top:4rem}.grove-hero-art{min-height:26rem}.grove-hero-art img{object-position:22% center}.grove-gift-shelf{grid-template-columns:1fr 1fr}.estate-grove{position:static;width:auto!important;order:3;text-align:left}.estate-west{order:4}.estate-east{order:5}.estate-south{order:6}}
@media(max-width:620px){.grove-gift-shelf{grid-template-columns:1fr}.grove-gift-card{grid-template-columns:5.5rem 1fr}.grove-gift-card img,.grove-gift-placeholder{width:5.5rem}.grove-filter-bar{justify-content:flex-start}.grove-hero-art{min-height:21rem}}

.grove-kindness-plaque{margin:1rem 0 .2rem;padding:1.25rem 1.4rem;border:1px solid rgba(203,176,118,.35);border-left:3px solid var(--ember);background:rgba(11,18,13,.82)}
.grove-kindness-plaque .kicker{margin:0 0 .25rem}.grove-kindness-number{margin:0;color:var(--brass);font-family:Georgia,serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1}
.grove-kindness-plaque [data-kindness-message]{margin:.45rem 0 .35rem;color:var(--paper)}.grove-kindness-plaque small{display:block;color:var(--muted);font-style:italic}

/* Valley registry status */
.registry-empty{grid-column:1/-1;text-align:center;color:var(--paper);padding:3rem 1rem}

/* Foundation Edition III · The Library Opens */
.library-landmark-page{background:#090c09}
.library-landmark-hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;overflow:hidden;background:#080a08}
.library-landmark-picture,.library-landmark-picture img{position:absolute;inset:0;width:100%;height:100%}.library-landmark-picture img{object-fit:cover;object-position:center 48%}
.library-landmark-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,5,.92) 0%,rgba(5,7,5,.64) 36%,rgba(5,7,5,.12) 72%),linear-gradient(0deg,rgba(5,7,5,.72),transparent 45%)}
.library-landmark-copy{position:relative;z-index:2;width:min(42rem,88vw);margin:0 0 clamp(3rem,8vw,7rem) clamp(1.4rem,7vw,7rem);text-shadow:0 2px 24px #000}
.library-landmark-copy h1{font-size:clamp(4rem,11vw,9rem);line-height:.84;margin:.2rem 0 1rem;font-weight:500}.library-landmark-copy .lead{font-size:clamp(1.3rem,2.5vw,2rem);color:var(--paper)}
.library-welcome{background:radial-gradient(circle at 50% 0,rgba(147,94,39,.15),transparent 48%),#0c110d}.library-sign{width:min(720px,86vw);margin:3rem auto 0;padding:1.4rem 2rem;text-align:center;border:1px solid rgba(203,176,118,.45);background:linear-gradient(145deg,rgba(71,48,28,.82),rgba(35,24,15,.92));color:#f0dfb9;font-size:clamp(1.5rem,3vw,2.3rem);box-shadow:0 16px 50px rgba(0,0,0,.35)}.library-sign span{font-size:.65em;color:#d9c9a8}
.library-room-tour{background:linear-gradient(180deg,#0c110d,#12120e)}.library-room-grid{width:min(1180px,90vw);margin:2rem auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.library-room-grid article{padding:1.6rem;border:1px solid rgba(203,176,118,.24);background:linear-gradient(145deg,rgba(38,31,21,.84),rgba(12,16,12,.96));min-height:13rem}.library-room-grid article>span{font-size:2rem}.library-room-grid h3{color:var(--brass);margin:.6rem 0}.library-room-grid p{color:var(--paper);margin:0}
.first-reading-section{background:radial-gradient(circle at 70% 40%,rgba(221,160,78,.14),transparent 32%),#090d0a}.first-reading-card{width:min(1040px,88vw);margin:0 auto;display:grid;grid-template-columns:1fr 17rem;gap:3rem;align-items:center;padding:clamp(1.5rem,4vw,3.5rem);border:1px solid rgba(203,176,118,.3);background:rgba(22,27,20,.88)}.library-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:1.4rem}.first-reading-book{aspect-ratio:3/4;padding:1.5rem;display:flex;flex-direction:column;justify-content:center;text-align:center;border-radius:.3rem 1rem 1rem .3rem;border:1px solid #6e8c69;background:linear-gradient(90deg,#1b3929,#31523d 12%,#284533 88%,#142d21);box-shadow:-10px 14px 28px rgba(0,0,0,.45),inset 5px 0 8px rgba(0,0,0,.35);color:#dfc68d}.first-reading-book span{font-family:Georgia,serif;font-size:1.55rem;letter-spacing:.08em}.first-reading-book small{margin-top:1.2rem;color:#efe5ca}
.nearby-paths{background:#0b0e0b}.nearby-path-grid{width:min(1000px,88vw);margin:2rem auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.nearby-path-grid a{display:flex;flex-direction:column;padding:1.4rem;border:1px solid rgba(203,176,118,.25);background:rgba(17,25,18,.85);text-decoration:none}.nearby-path-grid a:hover,.nearby-path-grid a:focus-visible{transform:translateY(-3px);border-color:var(--ember)}.nearby-path-grid span{font-size:2rem}.nearby-path-grid strong{color:var(--brass);font-size:1.25rem}.nearby-path-grid small{color:var(--muted);margin-top:.25rem}
@media(max-width:820px){.library-landmark-shade{background:linear-gradient(0deg,rgba(5,7,5,.96) 0%,rgba(5,7,5,.52) 58%,rgba(5,7,5,.18))}.library-landmark-copy{margin:0 auto 3rem}.library-room-grid{grid-template-columns:1fr 1fr}.first-reading-card{grid-template-columns:1fr}.first-reading-book{width:min(15rem,70vw);justify-self:center}.nearby-path-grid{grid-template-columns:1fr}}
@media(max-width:560px){.library-landmark-hero{min-height:88svh}.library-landmark-picture img{object-position:58% center}.library-room-grid{grid-template-columns:1fr}.library-landmark-copy h1{font-size:4.2rem}}


/* =========================================================
   LANDMARK 003 · THE CONSERVATORY
   ========================================================= */
.conservatory-landmark-page{background:#10150f;color:#f3ead8}
.conservatory-landmark-hero{position:relative;min-height:min(84vh,900px);display:grid;align-items:end;overflow:hidden;border-bottom:1px solid rgba(215,177,101,.3)}
.conservatory-landmark-picture,.conservatory-landmark-picture img{position:absolute;inset:0;width:100%;height:100%}
.conservatory-landmark-picture img{object-fit:cover;object-position:center}
.conservatory-landmark-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,7,.92) 0%,rgba(7,10,7,.69) 34%,rgba(7,10,7,.20) 70%,rgba(7,10,7,.42) 100%),linear-gradient(0deg,rgba(7,10,7,.82),transparent 48%)}
.conservatory-landmark-copy{position:relative;z-index:2;max-width:620px;margin:0 clamp(1.25rem,5vw,5rem) clamp(2.5rem,7vw,6rem);padding:clamp(1.4rem,3vw,2.5rem);background:rgba(18,25,16,.76);border:1px solid rgba(222,185,111,.45);box-shadow:0 22px 70px rgba(0,0,0,.42);backdrop-filter:blur(7px)}
.conservatory-landmark-copy h1{font-size:clamp(3rem,8vw,7.2rem);line-height:.88;margin:.08em 0 .18em;color:#f7efd9;text-shadow:0 3px 20px rgba(0,0,0,.7)}
.conservatory-landmark-copy p{max-width:48ch}
.conservatory-welcome{background:linear-gradient(180deg,#182217,#11170f)}
.conservatory-sign{max-width:700px;margin:2.25rem auto 0;padding:1.5rem 2rem;text-align:center;color:#f3d89b;background:#202819;border:1px solid #9c763a;box-shadow:inset 0 0 0 4px rgba(8,12,7,.45),0 14px 35px rgba(0,0,0,.25);font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.7}
.conservatory-sign span{color:#fff0bf}
.conservatory-room-tour{background:#f0e4c9;color:#2f271b}
.conservatory-room-grid{width:min(1180px,92%);margin:2rem auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.conservatory-room-grid article{padding:1.5rem;background:#fbf4e3;border:1px solid #c5aa75;box-shadow:0 12px 28px rgba(58,43,21,.12)}
.conservatory-room-grid article>span{font-size:1.65rem}
.conservatory-room-grid h3{margin:.55rem 0 .35rem;color:#31452d}
.conservatory-room-grid p{margin:0}
.seed-packets-section{background:#141b12}
.seed-packets-card{width:min(1180px,92%);margin:auto;padding:clamp(1.5rem,4vw,3rem);border:1px solid rgba(210,173,98,.48);background:linear-gradient(145deg,rgba(55,43,24,.72),rgba(25,32,20,.94));box-shadow:0 25px 60px rgba(0,0,0,.32)}
.seed-packet-grid{margin-top:1.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.seed-packet-grid article{min-height:150px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;background:#efe0bc;color:#3d2d19;border:1px solid #b89252;box-shadow:inset 0 0 24px rgba(101,72,31,.12)}
.seed-packet-grid strong{font-family:Georgia,serif;font-size:1.15rem}
.seed-packet-grid span{font-style:italic}
.seed-packet-grid .seed-packet-open{background:#dce4c3}
.seed-packet-grid .seed-packet-question{background:#26301f;color:#f4dba1;border-color:#a68042}
.conservatory-landmark-page .worlds-intro{background:#182017}
.conservatory-landmark-page .world-card{border-color:rgba(196,157,83,.5)}
.conservatory-landmark-page .nearby-paths{background:#eee1c6;color:#2f271b}
.conservatory-landmark-page .nearby-path-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){
  .conservatory-room-grid,.seed-packet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .conservatory-landmark-page .nearby-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .conservatory-landmark-hero{min-height:76vh}
  .conservatory-landmark-copy{margin:0 1rem 1rem;padding:1.25rem}
  .conservatory-landmark-copy h1{font-size:clamp(2.8rem,16vw,4.7rem)}
  .conservatory-room-grid,.seed-packet-grid,.conservatory-landmark-page .nearby-path-grid{grid-template-columns:1fr}
}


/* Harvest One · Welcome Home */
.grove-harvest-badge{display:inline-block;margin:.8rem 0 0;padding:.45rem .8rem;border:1px solid rgba(232,177,91,.45);border-radius:999px;background:rgba(43,24,12,.72);color:#f3d59b;font-size:.92rem}
.harvest-one-feature{max-width:1180px;margin:2rem auto;padding:2rem;border:1px solid rgba(204,154,76,.35);border-radius:24px;background:linear-gradient(135deg,rgba(31,23,15,.96),rgba(58,31,20,.92));box-shadow:0 20px 55px rgba(0,0,0,.28)}
.harvest-one-intro{max-width:760px;margin:0 auto 2rem;text-align:center}
.harvest-one-intro blockquote{margin:1.5rem auto;padding:1.2rem 1.5rem;border-left:3px solid #c7914b;background:rgba(255,245,220,.07);font-style:italic}
.bookkeeper-signature{font-family:Georgia,serif;font-style:italic;color:#e7c98e}
.harvest-collection-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
.harvest-collection-cards article{padding:1rem;border:1px solid rgba(220,175,96,.3);border-radius:18px;background:rgba(8,8,7,.38)}
.harvest-collection-cards img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px}
.grove-gift-card img{aspect-ratio:9/16;object-fit:cover;background:#120d09}
.grove-gift-card .kicker{color:#d7aa63}
.found-branches{max-width:1050px;margin:2rem auto;display:grid;grid-template-columns:1fr minmax(260px,420px);gap:2rem;align-items:center;padding:2rem;border:1px dashed rgba(225,177,91,.55);border-radius:24px;background:rgba(72,38,20,.58)}
.found-branches img{width:100%;border-radius:14px;box-shadow:0 14px 32px rgba(0,0,0,.28)}
@media (max-width:780px){.harvest-collection-cards,.found-branches{grid-template-columns:1fr}.harvest-one-feature,.found-branches{padding:1.25rem}}


/* Harvest One · Desktop Gallery */
.desktop-gallery-feature{max-width:1180px;margin:2rem auto;padding:2rem;display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:2rem;align-items:center;border:1px solid rgba(212,163,82,.4);border-radius:24px;background:linear-gradient(135deg,rgba(24,20,14,.97),rgba(56,31,18,.94));box-shadow:0 20px 55px rgba(0,0,0,.28)}
.desktop-gallery-copy{max-width:620px}
.desktop-feature-card{position:relative;padding:1rem;border:1px solid rgba(228,184,108,.35);border-radius:18px;background:rgba(7,7,6,.42);text-align:center}
.desktop-feature-card img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px}
.featured-lantern{position:absolute;top:-1.5rem;left:50%;transform:translateX(-50%);font-size:2.7rem;filter:drop-shadow(0 0 14px rgba(255,178,70,.65))}
.grove-gift-card.is-featured{position:relative;border-color:rgba(245,184,75,.75);box-shadow:0 0 0 1px rgba(245,184,75,.2),0 16px 38px rgba(0,0,0,.32)}
.grove-featured-lantern{display:inline-block;margin:.35rem .35rem 0;padding:.35rem .65rem;border-radius:999px;background:rgba(98,55,16,.88);color:#ffe0a3;font-size:.78rem;letter-spacing:.04em}
[data-grove-category="desktop"] .grove-gift-card img{aspect-ratio:16/9}
@media(max-width:850px){.desktop-gallery-feature{grid-template-columns:1fr;padding:1.25rem}.desktop-feature-card{margin-top:1rem}}

/* Estate Polish IV.1 · The Book of Neighbors stays on the shelf */
.book-ember{
  color:#f4e8ca;
  border-color:rgba(224,190,112,.52);
  background:
    linear-gradient(90deg,#0b1711 0%,#1e3a2a 13%,#294a36 50%,#1b3426 87%,#09140f 100%);
  box-shadow:
    inset 0 0 22px rgba(0,0,0,.55),
    inset 3px 0 0 rgba(208,170,88,.34),
    4px 6px 8px rgba(0,0,0,.5);
}
.book-ember strong,.book-ember small{color:#f1dfb2;text-shadow:0 1px 2px #000}
.book-ember span{color:#e3bd69}
.book-desk{background:linear-gradient(90deg,#261b12,#4e3421,#261b12)}

.neighbors-volume{max-width:none}
.neighbors-book-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0 1.5rem}
.neighbors-book-step{display:flex;flex-direction:column;min-height:28rem;padding:1rem;border:1px solid rgba(87,58,35,.28);background:rgba(255,255,255,.19);color:#2b1d13;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.neighbors-book-step:hover,.neighbors-book-step:focus-visible{transform:translateY(-5px);background:rgba(255,255,255,.3);box-shadow:0 13px 28px rgba(62,40,22,.18)}
.neighbors-book-step .kicker{text-align:center;margin:.15rem 0 1rem}
.neighbors-book-step>p:last-child{margin:auto 0 0;padding-top:1rem;font-size:.88rem;text-align:center;color:#63472f}
.neighbors-closed-book{width:min(12rem,78%);aspect-ratio:3/4;margin:.2rem auto 1rem;padding:1rem .8rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#dcb96b;border:1px solid #806535;border-radius:.2rem .75rem .75rem .2rem;background:linear-gradient(90deg,#0a1710,#234432 13%,#1a3828 88%,#08130e);box-shadow:-8px 10px 18px rgba(45,28,15,.35),inset 5px 0 9px rgba(0,0,0,.45)}
.neighbors-closed-book:before{content:'✦';font-size:1.35rem;margin-bottom:.65rem}
.neighbors-closed-book span{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}
.neighbors-closed-book strong{font-family:Georgia,serif;font-size:1.2rem;line-height:1.12;text-transform:uppercase;margin:.35rem 0 .8rem}
.neighbors-closed-book small{font-size:.62rem;letter-spacing:.08em}
.neighbors-open-book{display:grid;grid-template-columns:1fr 1fr;min-height:16rem;margin:.2rem 0 1rem;filter:drop-shadow(0 12px 13px rgba(66,42,22,.22))}
.neighbors-page{padding:1.15rem .9rem;border:1px solid rgba(94,64,38,.28);background:linear-gradient(100deg,#cfbd98,#f0e4c4);}
.neighbors-page:first-child{border-radius:.7rem 0 0 .25rem;box-shadow:inset -12px 0 18px rgba(86,58,34,.09)}
.neighbors-page:last-child{border-radius:0 .7rem .25rem 0;box-shadow:inset 12px 0 18px rgba(86,58,34,.09)}
.blank-page{background:linear-gradient(100deg,#eadcbc,#cfbd98)}
.title-page{display:flex;flex-direction:column;justify-content:center;text-align:center;color:#4a3323}
.title-page small{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase}
.title-page strong{font-family:Georgia,serif;font-size:1.05rem;line-height:1.08;margin:.65rem 0}
.title-page span{font-size:.64rem;line-height:1.35}
.neighbor-page-link img{display:block;width:100%;height:16rem;object-fit:contain;background:#e6d4ae;border:1px solid rgba(81,53,31,.26)}
.neighbors-open-button{display:table;margin:1.6rem auto .6rem;background:#193427;color:#f3e3be;border-color:#9e7c3d}

@media(max-width:900px){.neighbors-book-journey{grid-template-columns:1fr}.neighbors-book-step{min-height:0}.neighbors-closed-book{width:10.5rem}.neighbors-open-book{width:min(32rem,100%);margin-inline:auto}.neighbor-page-link img{height:auto;max-height:30rem}}


/* Estate Polish IV.2 · Giving Grove artwork and hidden-leaf balance */
.grove-hero{
  grid-template-columns:minmax(0,1.62fr) minmax(21rem,.88fr);
  min-height:auto;
  align-items:center;
}
.grove-hero-art{
  min-height:0;
  align-self:stretch;
  display:grid;
  place-items:center;
  background:#0c110d;
}
.grove-hero-art img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
}
.grove-hero-copy{padding:clamp(2rem,4.5vw,4.5rem)}

.found-branches{
  max-width:1180px;
  grid-template-columns:minmax(260px,.78fr) minmax(420px,1.22fr);
  gap:clamp(1.5rem,3vw,3rem);
  padding:clamp(1.5rem,3vw,2.5rem);
}
.found-branches>div{max-width:34rem}
.found-branches h2{font-size:clamp(2.7rem,5vw,5rem);line-height:.95;margin:.25rem 0 1rem}
.found-branches img{
  width:100%;
  height:auto;
  max-height:34rem;
  object-fit:contain;
  background:rgba(247,233,196,.08);
}
.featured-lantern{display:none!important}

@media(max-width:900px){
  .grove-hero{grid-template-columns:1fr;padding-top:4rem}
  .grove-hero-art{min-height:0}
  .grove-hero-art img{height:auto;object-fit:contain;object-position:center}
}
@media(max-width:780px){
  .found-branches{grid-template-columns:1fr}
  .found-branches>div{max-width:none}
  .found-branches img{max-height:none}
}

/* Estate Polish IV.3 · Illustrated Waysides */
.ways-page{background:#f1e6cf;color:#34281d}
.ways-page .site-header{position:relative;z-index:20}
.ways-hero{min-height:58vh;display:grid;place-items:center;padding:clamp(5rem,10vw,9rem) 1.5rem;background:linear-gradient(rgba(12,22,16,.48),rgba(12,22,16,.7)),url('valley-map-full.png') center/cover no-repeat;color:#f8edd4;text-align:center}
.ways-hero-inner{width:min(760px,92%);padding:clamp(1.5rem,4vw,3rem);background:rgba(15,25,18,.72);border:1px solid rgba(220,180,103,.5);box-shadow:0 22px 65px rgba(0,0,0,.35)}
.ways-hero h1{font-size:clamp(3.2rem,8vw,7rem);line-height:.95;margin:.15em 0 .25em}
.ways-page .section{padding:clamp(3.5rem,7vw,6rem) 0}
.ways-page .narrow{width:min(760px,88%);margin-inline:auto}
.ways-intro{text-align:center;background:#162017;color:#f4e8cf}
.ways-intro blockquote{max-width:600px;margin:2rem auto 0;padding:1.3rem 1.8rem;border:1px solid rgba(218,179,105,.45);background:rgba(0,0,0,.18);font-family:Georgia,serif;font-size:clamp(1.15rem,2.4vw,1.55rem);line-height:1.6}
.wayside-grid{width:min(1240px,92%);margin:2rem auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
.wayside-card{overflow:hidden;display:grid;grid-template-columns:minmax(180px,.82fr) minmax(0,1.18fr);min-height:300px;border:1px solid #b79a68;background:#fbf2df;box-shadow:0 15px 34px rgba(66,46,27,.13)}
.wayside-art{margin:0;min-height:100%;background:#233123}
.wayside-art img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover}
.wayside-card-copy{padding:1.35rem 1.35rem 1.2rem;display:flex;flex-direction:column}
.wayside-heading{display:flex;gap:.65rem;align-items:center}
.wayside-icon{font-size:1.4rem;line-height:1}
.wayside-meta{margin:0;color:#765f39;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}
.wayside-card h3{margin:.55rem 0 .65rem;color:#29412d;font-size:clamp(1.7rem,3vw,2.2rem)}
.wayside-gift{display:flex;align-items:center;gap:.65rem;margin:0 0 .85rem;padding:.45rem .7rem;background:#e9dbc0;border-left:3px solid #a87b38}
.wayside-gift span{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#6d5838}
.wayside-gift strong{font-family:Georgia,serif;color:#2f472f}
.wayside-card details{margin-top:auto;padding-top:.85rem;border-top:1px solid rgba(112,82,44,.22)}
.wayside-card summary{cursor:pointer;color:#72552f;font-weight:700}
.wayside-card details p{font-size:.92rem;line-height:1.55}
.way-system-section{background:#e1d2b4}
.way-list{width:min(1180px,92%);margin:2rem auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.way-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.2rem;border:1px solid #b39767;background:#f8eed9;box-shadow:0 10px 22px rgba(67,47,27,.09)}
.way-marker{width:3rem;height:3rem;display:grid;place-items:center;border-radius:50%;background:#28412e;color:#f2d69b;font-size:1.35rem;box-shadow:inset 0 0 0 3px rgba(239,208,145,.2)}
.way-id{margin:0;color:#7d6137;font-size:.72rem;letter-spacing:.09em}
.way-card h3{margin:.2rem 0 .45rem;color:#29412d}
.way-connects{margin-bottom:0;font-size:.9rem;color:#604a31}
.ways-closing{text-align:center;background:#172217;color:#f5e9cf}
.ways-actions{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.5rem}
.ways-page .footer{background:#0d150f;color:#e8d9bb}
@media(max-width:900px){.wayside-grid{grid-template-columns:1fr}.wayside-card{grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr)}}
@media(max-width:640px){.wayside-card{grid-template-columns:1fr}.wayside-art img{min-height:220px;max-height:280px}.way-list{grid-template-columns:1fr}.ways-hero{min-height:66vh}}

/* Living Tradition · The Keeper of the Lanterns */
.keeper-page{background:#f2e7cf;color:#30251a}
.keeper-hero{width:min(1480px,94%);margin:0 auto;padding:clamp(3.5rem,7vw,7rem) 0;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.35fr) minmax(250px,.75fr);gap:clamp(1.5rem,3vw,3rem);align-items:center}
.keeper-hero-art{margin:0;padding:1rem;background:#102017;border:1px solid #8d713d;box-shadow:0 20px 60px rgba(52,36,19,.2)}
.keeper-hero-art img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.keeper-hero-copy h1{font-size:clamp(3.2rem,6vw,6.7rem);line-height:.92;margin:.12em 0 .28em;color:#173b2a;font-weight:500}
.keeper-hero-copy .lead{font-size:clamp(1.3rem,2.2vw,1.9rem);line-height:1.45}
.keeper-hero-copy blockquote{margin:2rem 0 0;padding:1rem 0 1rem 1.5rem;border-left:3px solid #b88737;font-family:Georgia,serif;font-size:1.25rem;color:#684b26}
.keeper-tradition{padding:clamp(1.3rem,2.5vw,2rem);border:1px solid #c4a56d;background:#fbf1dd;text-align:center;box-shadow:0 14px 34px rgba(65,44,24,.11)}
.keeper-tradition>p:not(.kicker){line-height:1.75}
.keeper-log{margin-top:1.5rem;padding-top:1.4rem;border-top:1px solid #c8ad79;display:flex;flex-direction:column;gap:.8rem}
.keeper-log strong{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#5b472d}
.keeper-log span{font-family:cursive;font-size:clamp(2rem,4vw,3rem);color:#42301f}
.keeper-round{background:#132118;color:#f4e7ca}
.keeper-round-intro{text-align:center}
.keeper-round-grid{width:min(1420px,94%);margin:2.25rem auto 0;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(215,176,96,.45)}
.keeper-round-grid article{position:relative;min-height:320px;overflow:hidden;border-right:1px solid rgba(215,176,96,.45)}
.keeper-round-grid article:last-child{border-right:0}
.keeper-round-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.68) saturate(.9)}
.keeper-round-grid article>div{position:absolute;inset:auto 0 0;padding:1.1rem 1.2rem;background:linear-gradient(transparent,rgba(6,12,8,.94));text-shadow:0 2px 12px #000}
.keeper-round-grid small{color:#e2bd70;text-transform:uppercase;letter-spacing:.09em}
.keeper-round-grid h3{margin:.2rem 0;color:#fff0cb;font-size:1.45rem}
.keeper-round-grid p{margin:0;color:#e9ddc1;font-size:.92rem}
.keeper-promise{text-align:center;margin:1.5rem auto 0;color:#e7c87e;font-family:Georgia,serif;font-size:1.2rem}
.keeper-meaning{background:#f4ead5}.keeper-meaning .narrow,.keeper-next .narrow{text-align:center}
.keeper-meaning h2,.keeper-next h2{color:#20452f}
.keeper-next{background:#e3d3b4}
.keeper-actions{display:flex;justify-content:center;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:1.5rem}
.keeper-link-card{display:inline-flex;margin-top:1rem}
@media(max-width:1050px){.keeper-hero{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr)}.keeper-tradition{grid-column:1/-1}.keeper-round-grid{grid-template-columns:1fr 1fr}.keeper-round-grid article:nth-child(2){border-right:0}.keeper-round-grid article:nth-child(-n+2){border-bottom:1px solid rgba(215,176,96,.45)}}
@media(max-width:680px){.keeper-hero{grid-template-columns:1fr}.keeper-hero-art{width:min(24rem,100%);justify-self:center}.keeper-hero-copy{text-align:center}.keeper-hero-copy blockquote{border-left:0;border-top:1px solid #b88737;padding-left:0}.keeper-round-grid{grid-template-columns:1fr}.keeper-round-grid article{border-right:0;border-bottom:1px solid rgba(215,176,96,.45)}.keeper-round-grid article:last-child{border-bottom:0}}


/* Estate Tending Release 01 */
@media (min-width: 801px){
  .conservatory-landmark-copy{max-width:560px}
  .conservatory-landmark-copy h1{font-size:clamp(3rem,6.2vw,6rem);line-height:.94}
}
.harvest-collection-cards .harvest-card{display:flex;flex-direction:column}
.harvest-collection-cards .harvest-card img{display:block;background:#130e0a}
.harvest-collection-cards .harvest-card-autumn img{object-fit:cover;object-position:center 46%;padding:0}
.harvest-collection-cards .harvest-card-halloween img{object-position:center}
.world-card:not(.world-card-featured) picture{display:block;aspect-ratio:16/10;overflow:hidden;background:#17110c}
.world-card:not(.world-card-featured) picture img{width:100%;height:100%;object-fit:cover;display:block}


/* Conservatory Edition II — invitation plates */
.conservatory-worlds-edition-two {
  background:
    radial-gradient(circle at 50% 0%, rgba(181,145,76,.10), transparent 34rem),
    linear-gradient(180deg, #0a100b 0%, #10170f 100%);
  border-top: 1px solid rgba(205,171,104,.22);
  border-bottom: 1px solid rgba(205,171,104,.22);
}
.conservatory-worlds-heading { text-align:center; }
.conservatory-worlds-heading h2 { max-width:none; }
.conservatory-invitation-grid {
  width:min(1480px, calc(100% - 3rem));
  margin:3rem auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(1rem,2vw,2rem);
  align-items:stretch;
}
.conservatory-invitation {
  display:block;
  overflow:hidden;
  border:1px solid rgba(205,171,104,.55);
  border-radius:22px;
  background:#10140f;
  box-shadow:0 24px 55px rgba(0,0,0,.36);
  transform:translateY(0);
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
.conservatory-invitation:hover,
.conservatory-invitation:focus-visible {
  transform:translateY(-6px);
  border-color:#d3ad62;
  box-shadow:0 30px 70px rgba(0,0,0,.48);
}
.conservatory-invitation img { width:100%; height:100%; display:block; object-fit:cover; }
.conservatory-worlds-closing { text-align:center; margin:2rem auto 0; font-style:italic; color:#c4a86d; }
.conservatory-seedling-shelf {
  width:min(1180px, calc(100% - 3rem));
  margin:4.5rem auto 0;
  padding:clamp(1.5rem,3vw,2.6rem);
  border:1px solid rgba(205,171,104,.30);
  background:rgba(236,220,181,.06);
}
.conservatory-seedling-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1.5rem; }
.conservatory-seedling-list article { padding:1.25rem; border-left:2px solid #b68a3f; background:rgba(0,0,0,.18); }
.conservatory-seedling-list strong,.conservatory-seedling-list span,.conservatory-seedling-list small { display:block; }
.conservatory-seedling-list span { margin:.55rem 0; }
.conservatory-seedling-list small { color:#c4a86d; text-transform:uppercase; letter-spacing:.12em; }

.grumbly-world-page { background:#09100b; }
.grumbly-world-hero img { width:100%; display:block; max-height:82vh; object-fit:cover; object-position:center; }
.grumbly-world-intro { text-align:center; }
.grumbly-world-intro h1 { font-size:clamp(3rem,8vw,7rem); margin:.2em 0; }
.grumbly-map-section figure { width:min(1500px, calc(100% - 2rem)); margin:2rem auto 0; }
.grumbly-map-section figure img { width:100%; display:block; border:1px solid rgba(205,171,104,.45); box-shadow:0 24px 70px rgba(0,0,0,.42); }
.grumbly-map-section figcaption { text-align:center; padding:1rem; color:#cab88e; font-style:italic; }

@media (max-width: 980px) {
  .conservatory-invitation-grid { grid-template-columns:1fr; width:min(680px, calc(100% - 2rem)); }
  .conservatory-seedling-list { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .conservatory-invitation-grid,.conservatory-seedling-shelf { width:calc(100% - 1.25rem); }
  .conservatory-invitation { border-radius:14px; }
}


/* Weather Office Edition II — Where Edgar Watches the Sky */
.weather-office-edition-two{background:linear-gradient(180deg,#08110c 0%,#11170f 36%,#21150f 100%)}
.weather-office-intro{text-align:center;padding-bottom:2rem}.weather-office-intro h1{max-width:12ch;margin-inline:auto}.weather-office-intro .lead{font-style:italic}
.weather-room-plate{padding-top:0}.weather-room-frame,.weather-instrument-frame{width:min(1180px,calc(100% - 2rem));margin:0 auto;border:1px solid rgba(209,166,83,.42);background:#17110d;padding:.65rem;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.weather-room-frame img,.weather-instrument-frame img{display:block;width:100%;height:auto}
.weather-board-edition-two{align-items:stretch}.weather-edgar-column{display:grid;gap:1rem;align-content:start}.weather-edgar-portrait{width:190px;max-width:55%;aspect-ratio:1/1;object-fit:cover;object-position:center top;border-radius:50%;border:4px double rgba(132,91,40,.72);margin:0 auto;box-shadow:0 10px 35px rgba(0,0,0,.28)}
.weather-closing-line{margin-top:1.5rem;font-style:italic;text-align:center}.weather-instrument-section{background:linear-gradient(180deg,rgba(79,54,31,.18),rgba(10,18,12,.2))}.weather-instrument-frame{margin-top:2rem}.weather-lore-grid{width:min(1040px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.weather-lore-grid .paper{padding:clamp(1.4rem,3vw,2.4rem)}.weather-method{transform:rotate(-.35deg)}.weather-method p:not(.kicker){font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1rem,2vw,1.25rem);letter-spacing:.025em}.weather-sky-log ul{padding-left:1.2rem}.weather-sky-log blockquote{margin:1.5rem 0 0;padding-left:1rem;border-left:2px solid var(--gold,#c99b52);font-style:italic}.weather-office-closing{text-align:center}.weather-nearby-paths{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;align-items:center;margin-top:1.5rem}
@media(max-width:780px){.weather-lore-grid{grid-template-columns:1fr}.weather-room-frame,.weather-instrument-frame{width:calc(100% - 1rem);padding:.35rem}.weather-edgar-portrait{width:150px}.weather-nearby-paths{flex-direction:column}}

/* Turning Fields — Early Pumpkin Patch */
.turning-fields-page{background:#0d160f;color:#f4ead7}
.turning-fields-hero{position:relative;min-height:72vh;overflow:hidden;border-bottom:1px solid rgba(217,177,99,.35);background:#1b261c}
.turning-fields-hero>img{width:100%;height:72vh;object-fit:cover;object-position:center;display:block;filter:saturate(.94) brightness(.76)}
.turning-fields-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,10,.92) 0%,rgba(8,15,10,.5) 34%,rgba(8,15,10,.08) 68%,rgba(8,15,10,.22) 100%)}
.turning-fields-hero-copy{position:absolute;z-index:2;left:clamp(1.5rem,7vw,7rem);top:50%;transform:translateY(-50%);max-width:34rem}
.turning-fields-hero-copy h1{font-size:clamp(3.4rem,8vw,7.5rem);line-height:.88;margin:.15em 0;color:#fbf1dc}
.turning-fields-hero-copy p{max-width:30rem}
.turning-fields-welcome{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.75fr);gap:clamp(2rem,5vw,5rem);align-items:start;background:linear-gradient(180deg,#142117,#0d160f)}
.edgar-inspection{background:#e7d5ad;color:#2b2117;border:1px solid #8f6c39;padding:1.75rem;box-shadow:0 1rem 2rem rgba(0,0,0,.25);transform:rotate(.4deg)}
.edgar-inspection h3{font-size:1.5rem;margin-top:0}.edgar-inspection dl{display:grid;gap:.75rem}.edgar-inspection dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(66,45,24,.25);padding-bottom:.5rem}.edgar-inspection dt{font-weight:700}.edgar-inspection dd{margin:0;font-style:italic}.edgar-inspection span{display:block;text-align:right;font-style:italic}
.turning-fields-paths{background:#2d1d14;color:#f7eddc}
.turning-fields-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;max-width:1260px;margin:2.5rem auto 0;padding:0 1.25rem}
.turning-fields-card-grid article{background:#e7d5ad;color:#2a2017;border:1px solid #8d6637;padding:1.5rem;display:flex;flex-direction:column;min-height:19rem;box-shadow:0 .75rem 1.5rem rgba(0,0,0,.2)}
.turning-fields-card-grid h3{font-size:1.55rem;margin:.5rem 0}.turning-fields-card-grid p{flex:1}.turning-fields-card-grid a{align-self:flex-start;color:#2b2117;border:1px solid #795831;padding:.65rem .9rem;text-decoration:none;font-weight:700}.turning-fields-card-grid a:hover{background:#2b2117;color:#f5e8cd}.tf-icon{font-size:2.2rem}
.turning-fields-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;background:#111b13}
.turning-fields-details article{border:1px solid rgba(215,174,92,.35);padding:clamp(1.5rem,3vw,2.5rem);background:rgba(33,50,34,.62)}
.turning-fields-details h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:.25rem 0 1rem}
.seasonal-almanac{background:#e4d1a6;color:#2b2117}.seasonal-almanac .kicker{color:#705026}.almanac-grid{max-width:1260px;margin:2.5rem auto 0;padding:0 1.25rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.almanac-grid article{border:1px solid #8b6639;padding:1.25rem;background:rgba(255,250,231,.48);display:grid;gap:.4rem}.almanac-grid article.active{background:#253821;color:#f2e5c7}.almanac-grid span{font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em}.almanac-grid strong{margin-top:.5rem}.almanac-grid small{opacity:.75}
.turning-fields-page .nearby-paths{background:#0d160f}
@media(max-width:900px){.turning-fields-hero>img{height:64vh;object-position:58% center}.turning-fields-hero{min-height:64vh}.turning-fields-hero-copy{left:1.25rem;right:1.25rem;max-width:28rem}.turning-fields-welcome{grid-template-columns:1fr}.turning-fields-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.turning-fields-details{grid-template-columns:1fr}.almanac-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.turning-fields-hero>img{height:70vh;object-position:62% center}.turning-fields-hero{min-height:70vh}.turning-fields-hero-copy h1{font-size:3.2rem}.turning-fields-card-grid,.almanac-grid{grid-template-columns:1fr}.turning-fields-card-grid article{min-height:auto}}


/* Turning Fields — First Experiences */
.turning-fields-experience-page{background:#101912;color:#f4ead7}
.tf-experience-hero{position:relative;min-height:66vh;overflow:hidden;border-bottom:1px solid rgba(217,177,99,.35);background:#1a241b}
.tf-experience-hero>img{display:block;width:100%;height:66vh;object-fit:cover;filter:saturate(.93) brightness(.7)}
.tf-experience-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,14,9,.92),rgba(8,14,9,.46) 48%,rgba(8,14,9,.14))}
.tf-experience-hero-copy{position:absolute;z-index:2;left:clamp(1.4rem,7vw,7rem);top:50%;transform:translateY(-50%);max-width:46rem}
.tf-experience-hero-copy h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.92;margin:.14em 0;color:#fbf1dc}
.tf-experience-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(18rem,.72fr);gap:clamp(2rem,5vw,5rem);align-items:start;background:linear-gradient(180deg,#172419,#101912)}
.tf-experience-story{max-width:54rem;font-size:1.08rem;line-height:1.8}
.tf-experience-story h2{font-size:clamp(2rem,4vw,3.8rem);margin:.2rem 0 1.2rem}
.tf-experience-story h3{margin-top:2rem}
.tf-experience-story blockquote{margin:2rem 0;padding:1.2rem 1.4rem;border-left:3px solid #c8984f;background:rgba(231,213,173,.09);font-size:1.25rem;font-style:italic}
.tf-experience-aside{background:#e7d5ad;color:#2b2118;border:1px solid #8c6537;padding:clamp(1.4rem,3vw,2.25rem);box-shadow:0 1rem 2rem rgba(0,0,0,.22)}
.tf-experience-aside h3{font-size:1.65rem;margin:.25rem 0 1rem}
.tf-handwritten{font-style:italic;font-size:1.08rem;border-top:1px solid rgba(70,48,29,.3);padding-top:1rem;margin-top:1.5rem}
.tf-basket-list{list-style:none;padding:0}.tf-basket-list li{padding:.75rem 0;border-bottom:1px solid rgba(240,225,196,.18);display:grid;gap:.15rem}.tf-basket-list span{color:#d1c2aa;font-size:.95rem}
.tf-notes-list>div{display:grid;grid-template-columns:10rem 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid rgba(240,225,196,.18)}.tf-notes-list dt{font-weight:700}.tf-notes-list dd{margin:0}
.tf-recipe-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.tf-recipe-grid section{border:1px solid rgba(215,174,92,.28);padding:1.35rem;background:rgba(29,43,31,.58)}.tf-recipe-grid li{margin:.5rem 0}
.tf-gallery-caption{margin:2rem 0;padding:1.2rem;border:1px solid rgba(215,174,92,.32);background:rgba(29,43,31,.58)}.tf-gallery-caption blockquote{margin:0 0 .5rem;padding:0;border:0;background:transparent}.tf-gallery-caption figcaption{color:#c9bda8}
.tf-experience-nav{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;background:#2c1c13}
.tf-experience-nav a{display:flex;flex-direction:column;gap:.25rem;border:1px solid rgba(214,172,91,.45);padding:1.15rem;color:#f5e9d4;text-decoration:none}.tf-experience-nav a:hover{background:#e7d5ad;color:#2b2118}.tf-experience-nav span{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.tf-back-to-fields{text-align:center}
.turning-fields-now-open{background:#111b13;text-align:center}.turning-fields-now-open .narrow{max-width:56rem}
@media(max-width:850px){.tf-experience-layout{grid-template-columns:1fr}.tf-experience-nav{grid-template-columns:1fr}.tf-recipe-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tf-experience-hero,.tf-experience-hero>img{min-height:70vh;height:70vh}.tf-experience-hero-copy{left:1.2rem;right:1.2rem}.tf-experience-hero-copy h1{font-size:3.25rem}.tf-notes-list>div{grid-template-columns:1fr;gap:.15rem}}

/* Valley Build 001 — Mabel's Harvest */
.seasonal-nav-link{font-weight:700}
.seasonal-gate-notice,.conservatory-turning-fields-gate,.valley-seasonal-destination .narrow{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:linear-gradient(135deg,#e8d7ad,#cf9a54);color:#2c2118;border:1px solid #8d5e2e;padding:clamp(1.5rem,4vw,3rem)}
.seasonal-gate-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;min-width:max-content}
.pumpkin-registry-callout{margin:2rem auto 0;max-width:70rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 2rem;background:#e7d5ad;color:#2a2119;border:1px solid #8f632d}
.pumpkin-registry-page{background:#111a13;color:#f4ead7}
.pumpkin-registry-hero{min-height:54vh;display:grid;place-items:center;text-align:center;padding:5rem 1.5rem;background:radial-gradient(circle at 50% 25%,rgba(216,161,84,.25),transparent 35%),linear-gradient(180deg,#253420,#111a13)}
.pumpkin-registry-hero-copy{max-width:52rem}.pumpkin-registry-hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.95;margin:.15em 0}.pumpkin-registry-hero blockquote{margin:2rem auto;padding:1.4rem 1.6rem;max-width:44rem;border:1px solid rgba(221,181,105,.38);background:rgba(239,222,186,.08);font-style:italic}.pumpkin-registry-hero blockquote span{display:block;margin-top:.8rem;font-style:normal}
.pumpkin-registry-entry{display:grid;grid-template-columns:minmax(20rem,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:start;background:#172218}.pumpkin-registry-portrait{margin:0;position:sticky;top:1rem}.pumpkin-registry-portrait img{width:100%;display:block;border:1px solid rgba(222,182,104,.45)}.pumpkin-registry-portrait figcaption{padding:.75rem 0;color:#cfc1aa}
.pumpkin-registry-record h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1;margin:.2rem 0 1rem}.pumpkin-registry-facts{margin:2rem 0}.pumpkin-registry-facts>div{display:grid;grid-template-columns:11rem 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid rgba(236,217,181,.18)}.pumpkin-registry-facts dt{font-weight:700}.pumpkin-registry-facts dd{margin:0}
.edgar-registry-remark{margin:2rem 0;padding:1.5rem;background:#e7d5ad;color:#2b2118;border:1px solid #8c6537}.edgar-registry-remark blockquote{font-size:clamp(1.8rem,4vw,3.5rem);margin:.3rem 0;font-style:italic}.pumpkin-registry-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:2rem}.pumpkin-registry-future{text-align:center;background:#2b1b13}
@media(max-width:850px){.seasonal-gate-notice,.conservatory-turning-fields-gate,.pumpkin-registry-callout{align-items:flex-start;flex-direction:column}.seasonal-gate-actions{min-width:0}.pumpkin-registry-entry{grid-template-columns:1fr}.pumpkin-registry-portrait{position:static}}
@media(max-width:600px){.pumpkin-registry-facts>div{grid-template-columns:1fr;gap:.2rem}}


/* Valley Build 001A — Mabel polish */
.edgar-registry-remark .kicker{
  color:#73512f;
  opacity:1;
}

.edgar-registry-remark .edgar-official-quote{
  color:#3a2718;
  opacity:1;
  font-weight:700;
  text-shadow:none;
}

.pumpkin-registry-page .site-header .nav a[href="giving-grove.html"] ~ a[href="giving-grove.html"]{
  display:none;
}


/* August 2026 — living Valley update */
.pumpkin-registry-shelf{background:linear-gradient(180deg,#21170f,#172218)}
.pumpkin-friend-grid{width:min(1120px,92vw);margin:2.5rem auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.pumpkin-friend-card{padding:1.5rem;border:1px solid rgba(222,182,104,.35);background:linear-gradient(145deg,rgba(36,48,31,.96),rgba(16,23,17,.98))}
.pumpkin-friend-card>span{display:inline-block;color:var(--brass);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.pumpkin-friend-card h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:.35rem 0 .1rem;font-weight:500}
.pumpkin-friend-card .pumpkin-title{margin:.1rem 0 1rem;color:#d9c9ad;font-style:italic}
.pumpkin-friend-card blockquote{margin:0;padding:.9rem 0 0;border-top:1px solid rgba(236,217,181,.16);font-size:1.05rem;color:#f4ead7}
.pumpkin-friend-card a{display:inline-block;margin-top:1rem;color:var(--brass)}
.journal-entry-featured{padding:2.5rem clamp(1rem,3vw,2rem);margin-bottom:1.5rem;border:1px solid var(--line);background:linear-gradient(145deg,rgba(24,37,28,.86),rgba(82,36,38,.22))}
.neighbor-walk-note{margin-top:1.5rem;padding:1.25rem 1.4rem;border-left:2px solid var(--brass);background:rgba(221,160,78,.08)}
@media(max-width:850px){.pumpkin-friend-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pumpkin-friend-grid{grid-template-columns:1fr}}
