.house-scene{width:100%;height:auto;max-height:100vh;display:block}.house-scene .night-only{display:none}.house-scene .sky{fill:var(--tvh-sky)}.house-scene .sun{fill:var(--tvh-glow)}.house-scene .cloud{fill:var(--tvh-surface);opacity:.9}.house-scene .lawn{fill:#a9be8b}.house-scene .water{fill:var(--tvh-water)}.house-scene .shimmer{stroke:var(--tvh-surface);stroke-width:3px;stroke-linecap:round;opacity:.6;fill:none}.house-scene .dock rect{fill:#8a6e4b}.house-scene .wall{fill:var(--tvh-surface);stroke:var(--tvh-ink);stroke-width:2px}.house-scene .wall.upper{fill:#fffdf8}.house-scene .slab,.house-scene .column{fill:var(--tvh-ink)}.house-scene .stone-face{fill:#b9a887}.house-scene .stone-joints{stroke:#8f7f62;stroke-width:2px;fill:none}.house-scene .glass{fill:#9ec0da;stroke:var(--tvh-ink);stroke-width:3px}.house-scene .mullion{stroke:var(--tvh-ink);stroke-width:3px;fill:none}.house-scene .win-label{font:600 18px var(--tvh-fontMono);letter-spacing:.12em;fill:var(--tvh-ink);pointer-events:none}.house-scene .hit{fill:#0000}.house-scene .door-frame{fill:var(--tvh-ink)}.house-scene .door-leaf{fill:#6e4e32}.house-scene .door-knob{fill:var(--tvh-glow)}.house-scene .cells{fill:#2e4a6b;stroke:var(--tvh-ink);stroke-width:2px}.house-scene .cell-lines{stroke:#6f8fb0;stroke-width:1.5px;fill:none}.house-scene .glint{fill:#fff;opacity:0}.house-scene .post{fill:#6b5a45}.house-scene .board{fill:var(--tvh-surface);stroke:var(--tvh-ink);stroke-width:3px}.house-scene .board-text{font:700 26px var(--tvh-fontDisplay);fill:var(--tvh-ink)}.house-scene .driveway{fill:#cfc6b4}.house-scene .sedan .body{fill:#f4f1ea;stroke:var(--tvh-ink);stroke-width:2px}.house-scene .pickup .body{fill:#1f3550;stroke:var(--tvh-ink);stroke-width:2px}.house-scene .car-glass{fill:#5c7c99}.house-scene .wheel{fill:#1b2430}.house-scene .light{fill:#f7e2a3;opacity:.5}.house-scene .car-name{font:italic 600 15px var(--tvh-fontDisplay)}.house-scene .sedan .car-name{fill:var(--tvh-ink)}.house-scene .pickup .car-name{fill:#f4f1ea}.house-scene .trunk{stroke:#8a6e4b;stroke-width:10px;stroke-linecap:round;fill:none}.house-scene .fronds{stroke:#4f7a4a;stroke-width:9px;stroke-linecap:round;fill:none}.house-scene a:focus{outline:none}.house-scene a:focus-visible .hit,.house-scene a:hover .hit{stroke:var(--tvh-accent);stroke-width:5px;stroke-dasharray:10 6}.house-scene a:hover .glass,.house-scene a:focus-visible .glass{fill:var(--tvh-glow)}:root[data-theme=night] .house-scene .day-only{display:none}:root[data-theme=night] .house-scene .night-only{display:inline}:root[data-theme=night] .house-scene .sky{fill:var(--tvh-bg)}:root[data-theme=night] .house-scene .grid-line{stroke:var(--tvh-grid);stroke-width:1px;fill:none}:root[data-theme=night] .house-scene .star{fill:var(--tvh-ink)}:root[data-theme=night] .house-scene .lawn,:root[data-theme=night] .house-scene .driveway{fill:#0000;stroke:var(--tvh-line);stroke-width:1.5px}:root[data-theme=night] .house-scene .water{fill:var(--tvh-water);opacity:.6}:root[data-theme=night] .house-scene .shimmer{stroke:var(--tvh-line)}:root[data-theme=night] .house-scene :is(.wall,.wall.upper,.slab,.column,.stone-face,.dock rect,.post,.board,.door-frame,.door-leaf,.cells,.body){fill:#0000;stroke:var(--tvh-accent);stroke-width:2.5px}:root[data-theme=night] .house-scene :is(.stone-joints,.cell-lines,.mullion,.trunk,.fronds){stroke:var(--tvh-accent)}:root[data-theme=night] .house-scene .glass{fill:var(--tvh-glow);fill-opacity:.18;stroke:var(--tvh-accent)}:root[data-theme=night] .house-scene :is(.win-label,.board-text,.car-name){fill:var(--tvh-accent)}:root[data-theme=night] .house-scene .board-text{font-family:var(--tvh-fontMono);font-size:19px}:root[data-theme=night] .house-scene :is(.car-glass,.wheel){fill:#0000;stroke:var(--tvh-accent);stroke-width:2px}:root[data-theme=night] .house-scene .light{fill:var(--tvh-glow);opacity:1}:root[data-theme=night] .house-scene .door-knob{fill:var(--tvh-glow)}:root[data-theme=night] .house-scene .dimension{stroke:var(--tvh-inkMuted);stroke-width:1.5px;fill:none}:root[data-theme=night] .house-scene .dimension-text{font:15px var(--tvh-fontMono);fill:var(--tvh-inkMuted);letter-spacing:.08em}.section-list ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:16px 16px 24px;list-style:none;display:grid}.section-list a{border:1px solid var(--tvh-line);min-height:44px;color:var(--tvh-ink);background:var(--tvh-surface);font:600 16px var(--tvh-fontBody);border-radius:8px;padding:12px 14px;text-decoration:none;display:block}.section-list a:focus-visible{outline:3px solid var(--tvh-accent);outline-offset:2px}@media (width>=720px){.section-list{display:none}}@media (prefers-reduced-motion:no-preference){.house-scene .cloud{animation:60s linear infinite alternate tvh-drift}.house-scene .cloud-2{animation-duration:80s;animation-direction:alternate-reverse}.house-scene .palm{transform-box:fill-box;transform-origin:bottom;animation:7s ease-in-out infinite alternate tvh-sway}.house-scene .shimmer{animation:4s ease-in-out infinite tvh-shimmer}.house-scene .glint{animation:9s ease-in-out infinite tvh-glint}.house-scene .panel:nth-child(2) .glint{animation-delay:.4s}.house-scene .panel:nth-child(3) .glint{animation-delay:.8s}.house-scene .panel:nth-child(4) .glint{animation-delay:1.2s}:root[data-theme=night] .house-scene .draw{stroke-dasharray:2400;stroke-dashoffset:2400px;animation:2.4s ease-out forwards tvh-draw}:root[data-theme=night] .house-scene .star{animation:3.5s ease-in-out infinite tvh-twinkle}.house-scene .star:nth-child(6n+2){animation-delay:.7s}.house-scene .star:nth-child(6n+3){animation-delay:1.4s}.house-scene .star:nth-child(6n+4){animation-delay:2.1s}.house-scene .star:nth-child(6n+5){animation-delay:2.8s}.house-scene .star:nth-child(6n){animation-delay:3.5s}:root[data-theme=night] .house-scene .glass{animation:6s ease-in-out infinite alternate tvh-glow}.door-opening .house-scene .door-leaf{transform-box:fill-box;transform-origin:0;animation:.6s ease-in forwards tvh-door}}@keyframes tvh-drift{0%{transform:translate(-40px)}to{transform:translate(60px)}}@keyframes tvh-sway{0%{transform:rotate(-1.2deg)}to{transform:rotate(1.4deg)}}@keyframes tvh-shimmer{0%,to{opacity:.25}50%{opacity:.75}}@keyframes tvh-glint{0%,80%,to{opacity:0}88%{opacity:.55}}@keyframes tvh-draw{to{stroke-dashoffset:0}}@keyframes tvh-twinkle{0%,to{opacity:.35}50%{opacity:1}}@keyframes tvh-glow{0%{fill-opacity:.12}to{fill-opacity:.32}}@keyframes tvh-door{to{transform:perspective(600px)rotateY(-70deg)}}.home-bar,.story-bar{justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.brand{font:600 18px var(--tvh-fontDisplay);letter-spacing:.02em}:root[data-theme=night] .brand{font-family:var(--tvh-fontMono);text-transform:uppercase;letter-spacing:.14em;font-size:15px}.back{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.back:before{content:"← "}.story-main{max-width:760px;margin:0 auto;padding:8px 16px 64px}.story-main h1{font:600 clamp(32px, 6vw, 48px) / 1.15 var(--tvh-fontDisplay);margin:16px 0 24px}:root[data-theme=night] .story-main h1{font-family:var(--tvh-fontMono);text-transform:uppercase;letter-spacing:.08em}.prose{font-size:18px}.placeholder{border:1px dashed var(--tvh-line);background:var(--tvh-surface);border-radius:12px;padding:24px}.placeholder h2{font:600 14px var(--tvh-fontMono);letter-spacing:.14em;text-transform:uppercase;color:var(--tvh-inkMuted);margin:0 0 8px}.placeholder p{margin:0}.cards{gap:16px;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--tvh-line);background:var(--tvh-surface);border-radius:12px;padding:20px}.card h2{font:600 22px var(--tvh-fontDisplay);margin:6px 0}.card h2 a{color:var(--tvh-ink)}.card p{color:var(--tvh-inkMuted);margin:0}.tag{font:600 12px var(--tvh-fontMono);letter-spacing:.14em;text-transform:uppercase;color:var(--tvh-accent)}.photos{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:24px;display:grid}.photos img{border-radius:8px;width:100%;height:auto;display:block}.photos figure{margin:0}.photos figcaption{color:var(--tvh-inkMuted);margin-top:6px;font-size:14px}:root[data-theme=day]{--tvh-bg:#f6f1e7;--tvh-surface:#fbf7ee;--tvh-ink:#1f3550;--tvh-inkMuted:#5b6b7d;--tvh-accent:#3e6e9c;--tvh-line:#c9b98f;--tvh-alert:#b5562e;--tvh-fontDisplay:Georgia, serif;--tvh-fontBody:system-ui, -apple-system, "Segoe UI", sans-serif;--tvh-fontMono:ui-monospace, Consolas, monospace;--tvh-sky:#dce8f1;--tvh-water:#7fa6c4;--tvh-glow:#f2c66d;--tvh-grid:#e3d8bf}:root[data-theme=night]{--tvh-bg:#0f1e30;--tvh-surface:#16283d;--tvh-ink:#e9e2d2;--tvh-inkMuted:#9db7d1;--tvh-accent:#d9c9a3;--tvh-line:#9db7d1;--tvh-alert:#e9a87a;--tvh-fontDisplay:system-ui, sans-serif;--tvh-fontBody:system-ui, -apple-system, "Segoe UI", sans-serif;--tvh-fontMono:ui-monospace, Consolas, monospace;--tvh-sky:#0b1726;--tvh-water:#1e3a57;--tvh-glow:#f2d58a;--tvh-grid:#23405f}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--tvh-bg);color:var(--tvh-ink);font:16px/1.6 var(--tvh-fontBody)}a{color:var(--tvh-accent)}:focus-visible{outline:3px solid var(--tvh-accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.theme-toggle{border:1px solid var(--tvh-line);background:var(--tvh-surface);min-width:44px;min-height:44px;color:var(--tvh-ink);cursor:pointer;border-radius:999px;font-size:20px}:root[data-theme=night] body{background-image:linear-gradient(var(--tvh-grid) 1px, transparent 1px), linear-gradient(90deg, var(--tvh-grid) 1px, transparent 1px);background-size:40px 40px}
