/* A contemporary village journal. Full fonts retain EN, CS and VI glyphs. */
@font-face{font-family:Literata;src:url('/assets/literata-variable.ttf') format('truetype');font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:Literata;src:url('/assets/literata-italic-variable.ttf') format('truetype');font-weight:200 900;font-style:italic;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('/assets/be-vietnam-pro-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('/assets/be-vietnam-pro-medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Be Vietnam Pro';src:url('/assets/be-vietnam-pro-semibold.ttf') format('truetype');font-weight:600 800;font-style:normal;font-display:swap}
:root{--display:Literata,Georgia,serif;--reading:'Be Vietnam Pro',system-ui,sans-serif}
body,button,input,textarea,select{font-family:var(--reading);font-kerning:normal}
body{line-height:1.65}
h1,h2,h3,.intro-note,.studio-note>p,.door-name,.journal-masthead,.scene-loading,.directory-item>span{font-family:var(--display);font-weight:450;font-style:normal;font-variation-settings:normal;font-optical-sizing:auto;letter-spacing:-.025em;text-wrap:balance}
h1 em,h2 em,h3 em,.intro-note em,.studio-note em{font-family:inherit;font-style:italic;font-weight:400}
.intro h1{font-size:clamp(46px,3.9vw,68px);line-height:1.16;letter-spacing:-.04em;max-width:460px;margin-block:22px 26px;overflow:visible}
.intro h1 em{letter-spacing:-.025em}.intro h1 .opening-line{white-space:normal}
.intro-lead{font-size:19px;font-weight:400;line-height:1.65;letter-spacing:-.025em}
.intro-copy{font-size:16px;line-height:1.8;max-width:36ch;letter-spacing:-.015em}
.intro-note{font-size:19px;line-height:1.5;letter-spacing:-.02em}
.eyebrow,.journal-label,.world-top>p,.experiment-top,.journal-dateline{font-family:var(--reading);font-weight:500;letter-spacing:.065em;line-height:1.6}
.intro .eyebrow{font-size:12px;letter-spacing:.075em}
.door-name{font-size:clamp(19px,1.65vw,25px);font-weight:500;line-height:1.35;letter-spacing:-.03em;max-width:190px;overflow-wrap:anywhere;text-wrap:pretty}
.door-craft{font-family:var(--reading);font-size:14px;line-height:1.6;letter-spacing:-.015em}
.door-knocker{min-height:118px}.door-caption{gap:6px;min-width:0}
.journal-masthead{font-size:31px;line-height:1.3;letter-spacing:-.035em}
.house-story h2,.info-dialog h2{font-size:clamp(32px,3.1vw,47px);line-height:1.25;letter-spacing:-.035em;overflow:visible}
.house-story>p,.info-dialog p{font-size:16px;line-height:1.85;letter-spacing:-.015em;max-width:65ch}
.experiment-heading,.about-pair h3{font-size:26px;line-height:1.35;letter-spacing:-.03em}
.offerings-heading{font-family:var(--display);font-weight:500;font-size:21px;line-height:1.4;letter-spacing:-.025em}
.offering-list li,.experiment-intro,.plan-row{font-size:15px;line-height:1.75}
.specimen h3,.specimen[data-mood=bold] h3{font-family:var(--display);font-size:38px;line-height:1.22;letter-spacing:-.035em}
.studio-note>p{font-size:32px;line-height:1.35;letter-spacing:-.03em}.studio-note>div{font-size:16px;line-height:1.85}
.primary-button,.header-contact,.desktop-nav,.house-next{font-family:var(--reading);font-weight:500;font-size:14px;line-height:1.5;letter-spacing:-.02em}
.season-choice,.time-button{font-family:var(--reading);letter-spacing:-.025em}
.journal-label,.experiment-top{font-size:12px}.journal-dateline{font-size:12px;letter-spacing:0}
:lang(vi) h1,:lang(vi) h2,:lang(vi) h3,:lang(vi) .door-name{line-height:1.4;letter-spacing:-.015em}
@media(min-width:1600px){.intro h1{font-size:64px}.door-name{font-size:24px}}
@media(min-width:701px) and (max-width:1000px){.intro h1{font-size:52px}.door-name{font-size:20px}.door-craft{font-size:13px}.desktop-nav{gap:14px}.header-contact{font-size:12px;padding-inline:12px}.wordmark.brand-logo{width:164px}}
@media(max-width:700px){
 .intro h1{font-size:clamp(38px,10.5vw,56px);line-height:1.2;letter-spacing:-.04em;max-width:100%;margin-block:20px 23px}
 .intro h1 .opening-line{white-space:normal}.intro-lead{font-size:18px;line-height:1.65}.intro-copy{font-size:16px;line-height:1.8}
 .door-name{font-size:20px;line-height:1.4;max-width:150px}.door-craft{font-size:13px;line-height:1.6}.door-knocker{min-height:116px;gap:8px}
 .journal-masthead{font-size:25px}.house-story h2,.info-dialog h2{font-size:32px;line-height:1.3}
 .house-story>p,.info-dialog p{font-size:16px;line-height:1.8}.experiment-heading{font-size:25px}
 .studio-note>p{font-size:28px}.studio-note>div{font-size:16px}.specimen h3{font-size:32px}
 .neighbourhood-heading .eyebrow,.visit-count,.quiet-controls button{font-size:12px;line-height:1.6}
 .season-choice{font-size:12px}.world-weather>.time-button{font-size:13px}
}
@media(max-width:360px){.door-name{font-size:18px}.door-craft{font-size:12px}.knocker-hardware{transform:scale(.7);margin-right:-13px}.intro h1{font-size:38px}}
