.home-page{background:var(--page-texture),var(--paper)}.backdrop{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.masthead,.home{position:relative;z-index:1}.masthead{max-width:1240px;margin:0 auto;padding:clamp(2.5rem,7vw,4.5rem) clamp(1rem,4vw,2rem) clamp(1.5rem,4vw,2.5rem);text-align:center}.masthead__title{font-family:var(--font-display);font-weight:400;font-size:clamp(2.6rem,8vw,4.2rem);line-height:1;color:var(--ink)}.masthead__tagline{margin:.6rem 0 0;font-family:var(--font-display);font-style:italic;font-size:1.15rem;color:var(--ink-soft)}.home{max-width:1240px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem) 4rem}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.4vw,1.5rem)}.tile:last-child:nth-child(odd){grid-column:1 / -1}.tile:last-child:nth-child(odd) .tile__art{aspect-ratio:4 / 1}@media(max-width:680px){.tile:last-child:nth-child(odd) .tile__art{aspect-ratio:2 / 1}.grid{grid-template-columns:1fr}}.tile{display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:10px;overflow:hidden;text-decoration:none;box-shadow:var(--card-shadow);transition:border-color .15s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease)}.tile:hover,.tile:focus-visible{border-color:var(--ink-faint);box-shadow:var(--card-shadow-hover);transform:translateY(-2px);outline:none}.tile:focus-visible{border-color:var(--accent)}.tile__art{position:relative;aspect-ratio:2 / 1;border-bottom:1px solid var(--rule);background:var(--paper)}.tile__art canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.tile__text{padding:.85rem 1.05rem 1rem;background:var(--panel);flex:1}.tile__title{font-family:var(--font-display);font-weight:700;font-size:1.55rem;line-height:1.15}.tile__blurb{margin:.3rem 0 0;color:var(--ink-soft);font-size:1rem;line-height:1.45}.upcoming{margin:2.5rem 0 0;text-align:center;color:var(--ink-faint);font-size:.92rem}@media(prefers-reduced-motion:reduce){.tile{transition:none}.tile:hover{transform:none}}
