/* Inter Regular/Medium from the Mood Quarter Figma brand board.
   Web roles are documented in Figma board 07, with named desktop/mobile endpoint styles. */
@font-face{font-family:Inter;src:url('/assets/fonts/inter-variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
:root{--font-ui:Inter,Arial,Helvetica,sans-serif;--type-display:clamp(2.25rem,4.2vw,3.75rem);--type-page:clamp(1.875rem,3.2vw,2.75rem);--type-section:clamp(1.5rem,2.3vw,2rem);--type-card:1.25rem;--type-body:1rem;--type-label:.875rem;--type-meta:.75rem;--leading-heading:1.25;--leading-body:1.65}
body{font-family:var(--font-ui);font-optical-sizing:auto;font-synthesis:none}
button,input,select,textarea{font-family:var(--font-ui)}
.home-welcome h1{font-size:var(--type-display);font-weight:500;line-height:1.18;letter-spacing:-.035em}
.intro h1{font-size:var(--type-page);font-weight:500;line-height:var(--leading-heading);letter-spacing:-.025em}
:is(.home-welcome h1,.intro h1,.footer-thought) em{font-style:normal;font-weight:500}
:is(.landing-guide,.context-guide,.home-about) h2,.directory-heading h2{font-size:var(--type-section);font-weight:500;line-height:var(--leading-heading);letter-spacing:-.02em}
:is(.home-card,.environment-card) h3,.environment-card h2{font-size:var(--type-card);font-weight:500;line-height:1.35;letter-spacing:-.01em}
:is(.landing-guide,.context-guide) h3{font-size:1.125rem;font-weight:500;line-height:1.45;letter-spacing:0}
:is(.home-welcome,.home-card,.environment-card,.landing-guide,.context-guide,.home-about) p,.landing-intro{font-size:var(--type-body);font-weight:400;line-height:var(--leading-body);letter-spacing:0}
.site-footer .footer-thought{font-size:var(--type-page);font-weight:500;line-height:1.25;letter-spacing:-.025em}
.site-footer :is(.footer-description,.footer-aside){font-size:var(--type-label);font-style:normal;font-weight:400;line-height:1.65;letter-spacing:0}
.site-footer .footer-navigation h2{font-size:var(--type-label);font-weight:500;line-height:1.5;letter-spacing:0}
.site-footer .footer-navigation :is(a,button),body>header nav a,.theme-toggle,.guide-links a{font-size:var(--type-label);font-weight:400;line-height:1.5}
.guide-questions summary{font-size:var(--type-body);font-weight:500;line-height:1.55}
.landing-guide .landing-kicker,.eyebrow{font-size:var(--type-meta);font-weight:500;line-height:1.5;letter-spacing:.08em}
.duration-card>strong{font-weight:500;line-height:1.25;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.duration-card>span,.duration-card strong span,.dialog-intro,.setting-help,.volume-label,.music-select-label{font-size:var(--type-label);font-weight:400;line-height:1.6}
.dialog-head h2{font-weight:500;line-height:1.3;letter-spacing:-.02em}
.time{font-family:var(--font-ui);font-variant-numeric:tabular-nums}
.home-welcome .home-note{font-size:var(--type-label);font-style:normal;line-height:1.65}
.site-footer .footer-navigation{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:600px){.site-footer .footer-navigation{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}.site-footer .footer-navigation section:last-child{grid-column:auto}.home-welcome h1{letter-spacing:-.025em}}
@media(max-width:600px){.room-toolbar{flex-wrap:wrap;gap:10px}.room-toolbar .room-heading{flex:1 1 100%;margin:0;line-height:1.4}.view-switches{flex-wrap:wrap;max-width:100%}}
/* Keep the primary destinations together on narrow phones, with touch targets. */
@media(max-width:380px){
 body>header nav{display:grid;grid-template-columns:repeat(4,auto);width:100%;gap:4px}
 body>header nav a{font-size:13px;min-width:44px;min-height:44px;text-align:center}
}
