/* The village uses one material language: ink, uncoated paper and quiet aged brass. */
:root{--display:Fraunces,Georgia,serif;--reading:Manrope,sans-serif;--control-radius:10px;--print-ink:#2c3d31;--print-muted:#53604b;--print-line:#afa88e;--print-paper:#f3ead7;--print-rust:#8a4c31}
body{font-family:var(--reading)}
h1,h2,h3,.wordmark,.wordmark i,.intro-note,.studio-note>p,.door-name,.journal-masthead{font-family:var(--display);font-weight:400;font-variation-settings:'SOFT' 40,'WONK' 1}
.wordmark,.wordmark i{font-size:31px;letter-spacing:-1.5px}
.intro h1{font-size:clamp(50px,4vw,66px);letter-spacing:-.05em;line-height:1.06;max-width:430px}
.intro h1 em{letter-spacing:-.045em}.intro .eyebrow{font-size:11px;letter-spacing:.08em;font-weight:600}.intro-lead{font-size:18px}.intro-copy{font-size:16px}.intro-note{font-size:16px}.intro h1 .opening-line{white-space:nowrap}
.primary-button,.header-contact,.time-button,.view-controls{border-radius:var(--control-radius)}
.primary-button{font-size:14px;letter-spacing:.01em;box-shadow:inset 0 0 0 1px #ffffff15;min-height:48px}.header-contact{font-size:14px;min-height:48px}.time-button{backdrop-filter:none}.view-controls{backdrop-filter:none;padding:4px}.view-controls .icon-button{border-radius:7px}
.house-pin,body[data-time=evening] .house-pin{background:#f5eedeeF;color:#344433;border:1px solid #b0ae9380;border-radius:14px 14px 7px 7px;box-shadow:0 3px 7px #21352d14;font-family:var(--display);font-size:14px;padding:6px 12px 6px 6px;gap:5px}
.house-pin .pin-number{background:transparent;width:25px;height:25px;color:inherit}.house-pin .pin-number .icon{stroke-width:1.5;width:17px;height:17px;color:inherit}.house-pin.active,body[data-time=evening] .house-pin.active{background:#3d5743;color:#fff4dc;border-color:#718268}.house-pin.active .pin-number{background:transparent}.house-pin[data-arrived=true]{box-shadow:0 0 0 3px #c4a96b55,0 5px 12px #152b2526}
.neighbourhood-heading .eyebrow,.visit-count,.quiet-controls button{font-size:12px;letter-spacing:.01em}.neighbourhood-heading .eyebrow{font-weight:600;letter-spacing:.09em}.neighbourhood{padding-top:20px}.neighbourhood-heading{margin-bottom:13px}
.house-directory{gap:0;padding:4px 0 12px}.door-knocker{gap:9px;min-height:93px;padding:10px 8px 10px 0;border-radius:8px}.door-caption{display:flex;flex-direction:column;gap:5px;min-width:0}.door-name{font-size:18px;line-height:1.18;letter-spacing:-.02em;max-width:120px}.door-craft{font-size:11px;line-height:1.3;color:var(--muted)}
.knocker-hardware{width:45px;flex-basis:45px;height:69px;transform:scale(.81);transform-origin:left center;margin-right:-7px}
.knocker-plate{background:linear-gradient(110deg,#817456,#625d46 60%,#7b7357);border-color:#847859;box-shadow:inset 1px 1px #c9bb923e,inset -1px -1px #34332133,1px 2px 3px #162a2424}
.knocker-ring{background:linear-gradient(145deg,#cbb78b,#9b8a62 32%,#746647 49%,#baa57a 78%,#95825b) border-box;border-width:5px}
.knocker-hinge{background:linear-gradient(110deg,#99855d,#c0ad7d 38%,#998359 80%,#776446);box-shadow:inset 0 1px #e2d2a74d,0 1px 2px #302b1e44}.knocker-strike{background:#8a7955;box-shadow:inset 1px 0 #d0bd8f66}.knocker-shadow{filter:blur(1px);opacity:.18}.door-visit-mark{left:15px}.door-knocker.active .door-visit-mark{left:11px;width:15px}.door-knocker.active .door-name{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rust);text-decoration-thickness:1px;text-underline-offset:5px}
.studio-note>p{font-size:27px;line-height:1.25}.studio-note>div{font-size:15px}.site-footer{font-size:12px}.mobile-menu{border-radius:10px;background:var(--panel)}
.journey-note,body[data-time=evening] .journey-note{border-radius:12px;background:#344e3d;color:#fff3dd;box-shadow:0 5px 14px #102c2420;border-color:#bcb18c55}.journey-note button{border-radius:7px}
/* Dialog stays native and scrollable; only its printed sheet has a deckled outline. */
dialog.house-dialog,dialog.info-dialog{--ink:var(--print-ink);--muted:var(--print-muted);--line:var(--print-line);--paper:var(--print-paper);--panel:var(--print-paper);--soft:#e9e0c9;--forest:#354f3d;--rust:var(--print-rust);color-scheme:light;color:var(--print-ink);background:transparent;border:0;border-radius:0;padding:11px;box-shadow:none;filter:drop-shadow(0 16px 26px #0b211e50);max-height:calc(100dvh - 40px);overflow:auto;scrollbar-width:thin;scrollbar-color:#91866d transparent}
dialog.house-dialog{width:min(1100px,calc(100% - 40px))}dialog.info-dialog{width:min(810px,calc(100% - 40px))}
dialog::backdrop{background:#142b2b9c;backdrop-filter:blur(4px)}dialog[open]{animation:none}
.gazette-sheet{position:relative;isolation:isolate;background-color:var(--print-paper);background-image:url('/assets/village-paper.webp');background-size:627px 627px;padding:25px 35px 23px;clip-path:polygon(0 .65%,2% .3%,4.5% .75%,7% .2%,10% .45%,13% 0,16% .55%,19% .2%,23% .7%,27% .2%,31% .5%,35% 0,39% .6%,43% .25%,47% .65%,51% .1%,55% .45%,59% .2%,63% .65%,67% .1%,71% .4%,75% .15%,79% .6%,83% .2%,87% .55%,91% 0,95% .6%,98% .2%,100% .7%,99.7% 8%,100% 17%,99.65% 24%,100% 33%,99.7% 44%,100% 52%,99.6% 61%,100% 70%,99.7% 81%,100% 90%,99.75% 99.4%,97% 99.8%,93% 99.3%,89% 100%,85% 99.5%,81% 99.8%,77% 99.4%,73% 100%,69% 99.5%,65% 99.8%,61% 99.4%,57% 99.9%,53% 99.5%,49% 100%,45% 99.6%,41% 99.85%,37% 99.3%,33% 99.9%,29% 99.5%,25% 100%,21% 99.55%,17% 99.9%,13% 99.4%,9% 99.8%,5% 99.5%,1% 100%,.2% 99.1%,.5% 90%,0 81%,.3% 72%,0 63%,.4% 54%,0 44%,.3% 36%,0 26%,.4% 17%,0 9%)}
.dialog-top,.paper-toolbar{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 0 18px;border-bottom:3px double var(--print-ink);background:transparent}
.journal-heading{display:flex;flex-direction:column;gap:9px}.journal-label{font:500 11px/1.5 var(--reading);letter-spacing:.14em;color:var(--print-muted)}.journal-masthead{font-size:30px;letter-spacing:-.045em;line-height:1.1;color:var(--print-ink)}
.dialog-top .icon-button,.paper-toolbar .icon-button{width:44px;height:44px;flex:none;border:1px solid #7a7e654d;border-radius:50%;background:transparent;color:var(--print-ink);box-shadow:none}.dialog-top .icon-button:hover,.paper-toolbar .icon-button:hover{background:#d5c8a54d}
.journal-dateline{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--print-line);padding:10px 0;font-size:12px;color:var(--print-muted)}
.house-content-grid{grid-template-columns:1fr 1fr;gap:32px;padding:29px 0 25px}.house-story{padding:0 29px 0 0;border-right:1px solid var(--print-line)}.house-story .eyebrow{font-size:11px;letter-spacing:.13em;color:var(--print-rust)}
.house-story h2{font-size:36px;line-height:1.12;letter-spacing:-.035em;margin:13px 0 21px;max-width:470px}.house-story>p{font-size:16px;line-height:1.75;color:var(--print-ink)}
.offerings-heading{font-family:var(--display);font-size:18px;line-height:1.3;margin-top:28px;padding-top:17px;border-top:1px solid var(--print-line)}.offering-list{margin:11px 0 0;gap:0}.offering-list li{font-size:14px;line-height:1.55;align-items:flex-start;padding:7px 0;color:var(--print-muted)}.offering-list li:before{content:'—';color:var(--print-rust);flex:none}
.house-experiment{padding:0;background:transparent;border:0}.experiment-top{font-size:10px;line-height:1.5;letter-spacing:.1em;margin-bottom:15px;color:var(--print-muted)}.experiment-heading{font-size:23px;line-height:1.25;letter-spacing:-.025em}.experiment-intro{font-size:14px;line-height:1.6;margin-bottom:17px;color:var(--print-muted)}
.experiment-options{gap:8px;margin-bottom:20px}.experiment-options button{border-radius:3px;border:1px solid #7a735775;background:transparent;color:var(--print-ink);font-size:13px;min-height:44px;padding:9px 12px}.experiment-options button[aria-pressed=true]{background:#3b513c;color:#fff3da;border-color:#3b513c;box-shadow:inset 0 0 0 2px var(--print-paper),inset 0 0 0 3px #3b513c}.experiment-options button:hover{border-color:var(--print-ink)}
.experiment-output{overflow:visible;min-height:220px}.specimen{border-radius:1px;box-shadow:1px 3px 7px #36332414;border:1px solid #68704c28;padding:24px;min-height:220px}.specimen h3{font-family:var(--display);font-size:36px;line-height:1.06;letter-spacing:-.035em;max-width:100%;margin:24px 0}.specimen p{font-size:12px}.specimen[data-mood=quiet]{background:#e3e0caaa;color:#344d37}.specimen[data-mood=bold] h3{font-family:var(--reading);font-size:36px}.specimen[data-mood=playful] h3{transform:none}
.plan-card{border:0;border-top:2px solid var(--print-ink);border-bottom:1px solid var(--print-line);border-radius:0;padding:18px 0;background:transparent}.plan-card .plan-label{font-size:11px}.plan-card h3{font-size:26px}.plan-row{font-size:14px;grid-template-columns:65px 1fr}.plan-foot{font-size:12px;line-height:1.55}
.social-stack{gap:0;border-top:2px solid var(--print-ink)}.social-post{background:transparent;border:0;border-bottom:1px solid var(--print-line);border-radius:0;padding:17px 0;align-items:flex-start}.social-post>span{font-family:var(--display);font-size:23px}.social-post b{font-size:15px}.social-post p{font-size:14px;line-height:1.55}
.film-frame{border-radius:1px;background:#344738;color:#f7ecd5;min-height:250px;padding:23px}.film-frame h3{font-family:var(--display);font-size:29px;color:#e1c493}.film-frame p{font-size:14px;color:#e8e6d4}.film-frame .frame-label{font-size:10px;line-height:1.5;gap:10px}.film-timecode{font-size:11px}
.house-bottom{border-top:3px double var(--print-ink);padding:17px 0 0;gap:20px}.house-bottom>a{font-size:14px;color:var(--print-rust);min-height:44px}.house-next{font-size:13px;min-height:44px;color:var(--print-ink)}
.info-dialog .gazette-sheet{padding:25px 35px 33px}.paper-toolbar{padding-bottom:14px;position:sticky;top:0;z-index:5;background-image:url('/assets/village-paper.webp');background-color:var(--print-paper);background-size:627px}.info-dialog h2{font-size:40px;line-height:1.12;letter-spacing:-.04em;margin:24px 0}.info-dialog p{font-size:16px;line-height:1.75;color:var(--print-muted)}.info-dialog .eyebrow{margin-top:27px;font-size:11px}.info-dialog .primary-button{color:#fff3dd!important;background:#354f3d}.info-dialog .primary-button:hover{background:#496448;color:#fff3dd!important}.directory-item{gap:15px}.directory-item>span{font-family:var(--display);font-size:23px}.directory-item b{font-family:var(--display);font-size:20px;font-weight:400}.directory-item p{font-size:14px}.about-pair h3{font-size:25px}.about-pair p{font-size:14px}.help-steps{font-size:16px;line-height:1.7}
@media(min-width:1600px){.village-page{grid-template-columns:380px minmax(0,1fr)}.intro h1{font-size:66px}.door-name{font-size:19px}.door-craft{font-size:12px}}
@media(min-width:1001px) and (max-width:1200px){.intro h1{font-size:46px}.intro .eyebrow{font-size:10px}.door-name{font-size:19px}.door-craft{font-size:12px}}
@media(min-width:701px) and (max-width:1000px){.intro h1{font-size:62px}.door-name{font-size:19px}.door-craft{font-size:12px}.house-content-grid{gap:24px}.house-story{padding-right:23px}.house-story h2{font-size:31px}}
@media(max-width:700px){.wordmark,.wordmark i{font-size:29px;letter-spacing:-1.4px}.intro h1{font-size:49px;line-height:1.08;letter-spacing:-.055em;max-width:370px}.intro .eyebrow{font-size:10px}.intro-lead{font-size:17px}.intro-copy{font-size:15px}.intro h1 .opening-line{white-space:nowrap}.intro-note{font-size:15px}.primary-button,.header-contact{border-radius:9px}.house-pin{font-size:13px;padding:5px;gap:0}.house-pin .pin-number{width:27px;height:27px}.house-pin.active .pin-label{max-width:150px}.house-pin .pin-label{font-size:13px}.door-knocker{min-height:90px;gap:8px}.door-name{font-size:20px;max-width:120px}.door-craft{font-size:11px}.door-caption{gap:6px}.knocker-hardware{transform:scale(.78);margin-right:-9px}.house-directory{gap:2px 10px}.studio-note>p{font-size:26px}.neighbourhood-heading .eyebrow,.visit-count,.quiet-controls button{font-size:11px}
 dialog.house-dialog,dialog.info-dialog{width:calc(100% - 12px);max-height:calc(100dvh - 18px);padding:6px;filter:drop-shadow(0 10px 18px #0b211e50)}.gazette-sheet,.info-dialog .gazette-sheet{padding:19px 23px 25px}.dialog-top{position:sticky;top:0;z-index:5;padding:4px 0 13px;background-image:url('/assets/village-paper.webp');background-size:627px;background-color:var(--print-paper);gap:10px}.journal-label{font-size:9px;letter-spacing:.1em}.journal-masthead{font-size:22px;letter-spacing:-.045em}.journal-heading{gap:7px}.dialog-top .icon-button{width:40px;min-width:40px;height:40px}.journal-dateline{font-size:11px;gap:7px;padding:11px 0}.journal-dateline>span:last-child{display:none}.house-content-grid{grid-template-columns:1fr;gap:27px;padding:24px 0}.house-story{padding:0 0 25px;border-right:0;border-bottom:1px solid var(--print-line)}.house-story h2{font-size:30px;line-height:1.14;letter-spacing:-.035em;max-width:none;margin:13px 0 17px}.house-story>p{font-size:15px;line-height:1.75}.offerings-heading{margin-top:23px;font-size:18px}.offering-list li{font-size:14px}.experiment-heading{font-size:25px}.experiment-intro{font-size:14px}.experiment-top{font-size:10px}.experiment-options{gap:7px}.experiment-options button{font-size:13px;padding:9px 11px}.specimen{padding:22px;min-height:215px}.specimen h3,.specimen[data-mood=bold] h3{font-size:33px}.house-bottom{padding:14px 0 0;gap:9px;align-items:flex-start}.house-bottom>a{font-size:13px;gap:10px}.house-next{align-self:flex-start;font-size:13px}.info-dialog h2{font-size:32px;margin:22px 0}.info-dialog p{font-size:15px}.paper-toolbar .journal-label{font-size:10px}.directory-item p{font-size:14px}.about-pair{grid-template-columns:1fr}.help-steps{font-size:15px;padding-left:18px}.plan-row{grid-template-columns:58px 1fr;gap:10px;font-size:13px}}
@media(max-width:360px){.intro h1{font-size:43px}.door-name{font-size:18px}.door-craft{font-size:10px}.gazette-sheet,.info-dialog .gazette-sheet{padding-inline:20px}.journal-masthead{font-size:20px}.house-story h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.gazette-sheet{animation:none!important;transition:none!important}}

/* Frame the supplied artwork without altering its original pixels. */
.house-directory{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){.house-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.door-knocker:last-child{grid-column:auto;width:100%;justify-self:stretch}}
.wordmark.brand-logo{position:relative;display:block;width:224px;aspect-ratio:1945/470;flex:0 0 auto;overflow:hidden;line-height:0;letter-spacing:0}
.brand-logo img{position:absolute;width:111.67%;max-width:none;height:auto;left:-5.81%;top:-27.66%;display:block}
body[data-time=evening] .brand-logo img{filter:grayscale(1) invert(1)}
@media(min-width:701px) and (max-width:1000px){.wordmark.brand-logo{width:180px}.site-header{gap:18px}.desktop-nav a,.desktop-nav button,.header-contact{white-space:nowrap}}
@media(max-width:700px){.wordmark.brand-logo{width:186px}}
@media(max-width:360px){.wordmark.brand-logo{width:166px}}
