.campfire-scene{aspect-ratio:1;isolation:isolate;background:var(--site-bg);width:100%;position:relative}.campfire-scene-art{position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(50% 50%,#000 55%,#000000fa 66%,#000000db 76%,#0000008c 86%,#00000026 96%,#0000 100%);mask-image:radial-gradient(50% 50%,#000 55%,#000000fa 66%,#000000db 76%,#0000008c 86%,#00000026 96%,#0000 100%)}.campfire-scene-poster,.campfire-scene-video,.campfire-scene-stars{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.campfire-scene-video{opacity:0}.campfire-scene-video[data-ready=true]{opacity:1}.campfire-scene-touch{z-index:1;cursor:pointer;touch-action:pan-y;border-radius:50%;position:absolute;inset:7%}.campfire-scene-touch:focus-visible{outline:2px solid var(--site-link);outline-offset:4px}.campfire-scene-toggle{z-index:2;background:var(--site-bg);width:44px;height:44px;color:var(--site-muted);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:0;right:0}.campfire-scene-toggle:hover{color:var(--site-link);background:var(--site-card)}.campfire-scene-toggle:focus-visible{outline:2px solid var(--site-link);outline-offset:2px}
@font-face{font-family:Reading Serif;src:url(/fonts/noto-serif-sc-title.ttf)format("truetype");font-display:swap;font-weight:500}.home-page{width:min(100% - 3rem,960px);margin-inline:auto}.home-intro{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:2rem;padding:2rem 0 2.5rem;display:grid}.home-intro-copy{min-width:0}.home-scene{width:100%;min-width:0}.home-intro h1{letter-spacing:-.025em;text-wrap:balance;font-family:Reading Serif,Songti SC,serif;font-size:clamp(2rem,3.3vw,2.65rem);font-weight:500;line-height:1.55}.home-intro h1 span{color:var(--site-link)}.home-intro p{color:var(--site-muted);margin-top:1.1rem;font-size:.95rem;line-height:1.9}.home-writing{padding-bottom:3rem}.home-writing>h2{border-bottom:1px solid var(--site-border);color:var(--site-muted);padding-bottom:1rem;font-size:.875rem;font-weight:500}#start,#articles,#explainers,#about{scroll-margin-top:6rem}@media (max-width:767px){.home-page{width:calc(100% - 2.5rem)}.home-intro{grid-template-columns:minmax(0,1fr);gap:.5rem;padding:2.5rem 0 2rem}.home-scene{width:min(100%,28rem);margin-inline:auto}.home-intro h1{text-wrap:balance;max-width:24rem;font-size:1.9rem}.home-intro p{font-size:.875rem}.home-writing{padding-bottom:2rem}}
