:root{--bg: #FAFAF7;--surface: #FFFFFF;--text: #2C2C2A;--text-secondary: #6B6B65;--accent: #B85C3A;--accent-subtle: rgba(184, 92, 58, .1);--border: #E5E4DF;--sp-xs: 4px;--sp-sm: 8px;--sp-md: 16px;--sp-lg: 24px;--sp-xl: 40px;--sp-2xl: 64px;--font: "Source Serif 4", Georgia, "Times New Roman", serif;--lh-body: 1.6;--lh-heading: 1.3}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font);font-size:18px;font-weight:400;line-height:var(--lh-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-100%;left:var(--sp-md);background:var(--accent);color:#fff;padding:var(--sp-sm) var(--sp-md);border-radius:0 0 8px 8px;font-size:14px;font-weight:500;z-index:1000;text-decoration:none}.skip-link:focus{top:0}.container{max-width:680px;margin:0 auto;padding:0 20px}.full-bleed{width:100%;padding:0}.section{padding:var(--sp-xl) 0}.section+.section{border-top:1px solid var(--border)}h1,h2,h3,h4{line-height:var(--lh-heading);font-weight:600}h1{font-size:32px}h2{font-size:26px;margin-bottom:var(--sp-lg)}h3{font-size:20px;margin-bottom:var(--sp-md)}p{max-width:65ch;margin-bottom:var(--sp-md)}p:last-child{margin-bottom:0}a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:color .15s ease}a:hover{color:#953d20}strong{font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:var(--sp-md);margin-bottom:var(--sp-md)}.card-name{font-size:18px;font-weight:600;margin-bottom:var(--sp-xs)}.card-desc{font-size:17px;color:var(--text-secondary)}.card-address{font-size:14px;color:var(--text-secondary);margin-top:var(--sp-sm)}.pill{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);background:var(--accent-subtle);padding:3px 10px;border-radius:4px;margin-bottom:var(--sp-sm)}.list-item{padding:var(--sp-md) 0;border-bottom:1px solid var(--border)}.list-item:last-child{border-bottom:none}.list-item-name{font-weight:600;margin-bottom:var(--sp-xs)}.list-item-desc{color:var(--text-secondary);font-size:17px}.pull-quote{font-size:22px;font-weight:600;color:var(--accent);line-height:var(--lh-heading);padding:var(--sp-lg) 0;max-width:55ch}.closing-line{font-size:22px;font-weight:600;line-height:var(--lh-heading);padding-top:var(--sp-xl);max-width:55ch}.sub-divider{border:none;border-top:1px solid var(--border);margin:var(--sp-xl) 0;max-width:80px}.map-wrap{margin:var(--sp-lg) 0}.map-container{width:100%;height:420px;border:1px solid var(--border)}.map-controls{display:flex;flex-wrap:wrap;gap:var(--sp-sm);margin-top:12px;padding:0 20px}.layer-btn{font-family:var(--font);font-size:13px;font-weight:400;padding:8px 14px;border-radius:20px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;user-select:none;display:inline-flex;align-items:center;gap:6px;min-height:44px}.layer-btn:hover{border-color:#c8c7c2;background:#f5f4f0}.layer-btn.active{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent);font-weight:500}.layer-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.section-photo{margin:var(--sp-xl) 0;width:100%}.section-photo img{width:100%;height:300px;object-fit:cover;display:block}.section-photo-caption{font-size:13px;color:var(--text-secondary);line-height:1.4;margin-top:var(--sp-sm);padding:0 20px;max-width:680px;margin-left:auto;margin-right:auto}@media(min-width:768px){.section-photo{max-width:960px;margin-left:auto;margin-right:auto;padding:0 20px}.section-photo img{height:400px;border-radius:12px}.section-photo-caption{padding:0;font-size:14px}}.historic-figure{margin:var(--sp-xl) -20px}.historic-figure img{width:100%;height:auto;display:block}.historic-figure figcaption{font-size:14px;color:var(--text-secondary);line-height:1.4;margin-top:var(--sp-sm);padding:0 20px}@media(min-width:768px){.historic-figure{max-width:800px;margin-left:auto;margin-right:auto}.historic-figure img{border-radius:4px}.historic-figure figcaption{font-size:15px;padding:0}}.fade-section{opacity:0;transform:translateY(8px);transition:opacity .3s ease-out,transform .3s ease-out}.fade-section.visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.fade-section{opacity:1;transform:none;transition:none}}@media(min-width:768px){body{font-size:19px}h1{font-size:42px}h2{font-size:30px}h3{font-size:22px}.pull-quote,.closing-line{font-size:24px}.map-container{height:520px;border-radius:12px}.map-controls{padding:0}}.nav[data-astro-cid-dmqpwcec]{position:sticky;top:0;z-index:100;background:#fafaf7eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border);transition:opacity .3s ease,transform .3s ease}.nav[data-astro-cid-dmqpwcec].nav-hidden{opacity:0;pointer-events:none;transform:translateY(-100%)}.nav-inner[data-astro-cid-dmqpwcec]{max-width:680px;margin:0 auto;padding:0 20px;display:flex;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nav-inner[data-astro-cid-dmqpwcec]::-webkit-scrollbar{display:none}.nav-link[data-astro-cid-dmqpwcec]{font-size:14px;font-weight:500;color:var(--text-secondary);text-decoration:none;padding:14px 12px;white-space:nowrap;min-height:44px;display:flex;align-items:center;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.nav-link[data-astro-cid-dmqpwcec]:hover{color:var(--text)}.nav-link[data-astro-cid-dmqpwcec].active{color:var(--accent);border-bottom-color:var(--accent)}.story-fallback[data-astro-cid-l7whdhgm]{display:none;width:100%}.story-fallback[data-astro-cid-l7whdhgm] .hero-image-wrap[data-astro-cid-l7whdhgm]{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden}.story-fallback[data-astro-cid-l7whdhgm] .hero-image-wrap[data-astro-cid-l7whdhgm] img[data-astro-cid-l7whdhgm]{width:100%;height:100%;object-fit:cover;display:block}.story-fallback[data-astro-cid-l7whdhgm] .hero-overlay[data-astro-cid-l7whdhgm]{position:absolute;bottom:0;left:0;right:0;background:#2c2c2abf;padding:var(--sp-lg) 20px}.story-fallback[data-astro-cid-l7whdhgm] .hero-content[data-astro-cid-l7whdhgm]{max-width:680px;margin:0 auto}.story-fallback[data-astro-cid-l7whdhgm] h1[data-astro-cid-l7whdhgm]{color:#fff;margin-bottom:var(--sp-sm)}.story-fallback[data-astro-cid-l7whdhgm] .hero-subtitle[data-astro-cid-l7whdhgm]{font-size:19px;color:#ffffffd9;margin-bottom:0}@media(min-width:768px){.story-fallback[data-astro-cid-l7whdhgm] .hero-overlay[data-astro-cid-l7whdhgm]{padding:var(--sp-xl) 20px}.story-fallback[data-astro-cid-l7whdhgm] .hero-subtitle[data-astro-cid-l7whdhgm]{font-size:22px}}@media(prefers-reduced-motion:reduce){.story-fallback[data-astro-cid-l7whdhgm]{display:block}.scroll-story[data-astro-cid-l7whdhgm]{display:none!important}}.scroll-story[data-astro-cid-l7whdhgm]{position:relative;height:1000vh}.story-viewport[data-astro-cid-l7whdhgm]{position:sticky;top:0;width:100%;height:100vh;height:100dvh;overflow:hidden}.story-layer[data-astro-cid-l7whdhgm]{position:absolute;inset:0;will-change:opacity}.city-layer[data-astro-cid-l7whdhgm]{z-index:1;opacity:1}.house-layer[data-astro-cid-l7whdhgm]{z-index:2;opacity:0}.transit-layer[data-astro-cid-l7whdhgm]{z-index:3;opacity:0}.isochrone-layer[data-astro-cid-l7whdhgm]{z-index:4;opacity:0}.story-map[data-astro-cid-l7whdhgm]{width:100%;height:100%;filter:grayscale(.2) sepia(.1) saturate(.8)}.scroll-hint[data-astro-cid-l7whdhgm]{position:absolute;bottom:40px;left:50%;transform:translate(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text);font-size:14px;font-weight:500;animation:bob 2s ease-in-out infinite;pointer-events:none}.scroll-hint[data-astro-cid-l7whdhgm] span[data-astro-cid-l7whdhgm]{background:#fafaf7e6;padding:6px 16px;border-radius:20px;backdrop-filter:blur(4px)}.scroll-hint[data-astro-cid-l7whdhgm] svg[data-astro-cid-l7whdhgm]{opacity:.6}@keyframes bob{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.house-photo[data-astro-cid-l7whdhgm]{width:100%;height:100%;object-fit:cover;display:block}.house-layer[data-astro-cid-l7whdhgm] img[data-astro-cid-l7whdhgm]{width:100%;height:100%;object-fit:cover}.house-text[data-astro-cid-l7whdhgm]{position:absolute;bottom:0;left:0;right:0;background:#2c2c2abf;padding:var(--sp-lg) 20px;opacity:0}.house-title[data-astro-cid-l7whdhgm]{color:#fff;margin-bottom:var(--sp-sm)}.house-subtitle[data-astro-cid-l7whdhgm]{font-size:19px;color:#ffffffd9;margin-bottom:0;max-width:55ch}@media(min-width:768px){.house-text[data-astro-cid-l7whdhgm]{padding:var(--sp-xl) 20px}.house-subtitle[data-astro-cid-l7whdhgm]{font-size:22px}.house-text[data-astro-cid-l7whdhgm] .house-title[data-astro-cid-l7whdhgm]{font-size:42px}}.nearby-text[data-astro-cid-l7whdhgm]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;z-index:5}.nearby-text[data-astro-cid-l7whdhgm] span[data-astro-cid-l7whdhgm]{font-family:Caveat,cursive;font-weight:700;font-size:52px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5),0 1px 3px rgba(0,0,0,.3)}@media(min-width:768px){.nearby-text[data-astro-cid-l7whdhgm] span[data-astro-cid-l7whdhgm]{font-size:68px}}.you-are-here{transform:rotate(-5deg);pointer-events:none;white-space:nowrap}.you-are-here-text{font-family:Caveat,cursive;font-weight:700;font-size:54px;color:var(--text, #2C2C2A);line-height:1;display:block;margin-bottom:4px}.you-are-here-arrow{display:block}.map-transit-label{font-family:Caveat,cursive;font-weight:700;font-size:22px;white-space:nowrap;background:#ffffffe0;backdrop-filter:blur(3px);padding:4px 12px;border-radius:10px;pointer-events:none;line-height:1.2}.isochrone-label{font-family:Caveat,cursive;font-weight:700;font-size:20px;color:#b85c3a;white-space:nowrap;background:#ffffffe0;backdrop-filter:blur(3px);padding:4px 12px;border-radius:10px;pointer-events:none;line-height:1.2}.pulse-dot{width:16px;height:16px;position:relative}.pulse-dot-inner{width:12px;height:12px;background:#b85c3a;border-radius:50%;border:2px solid white;box-shadow:0 1px 4px #0000004d;position:absolute;top:2px;left:2px}.pulse-dot-ring{width:30px;height:30px;border:2px solid #B85C3A;border-radius:50%;position:absolute;top:-7px;left:-7px;animation:pulse-ring 2s ease-out infinite;opacity:0}@keyframes pulse-ring{0%{transform:scale(.5);opacity:.8}to{transform:scale(1.4);opacity:0}}.isochrone-modes[data-astro-cid-l7whdhgm]{position:absolute;bottom:30px;left:50%;transform:translate(-50%);z-index:20;display:flex;transition:opacity .3s ease;gap:6px;background:#ffffffe0;backdrop-filter:blur(6px);padding:6px;border-radius:28px;border:1px solid var(--border)}.mode-btn[data-astro-cid-l7whdhgm]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:22px;border:none;background:transparent;cursor:pointer;min-height:44px;min-width:52px;transition:background .15s ease,color .15s ease;font-family:var(--font)}.mode-btn[data-astro-cid-l7whdhgm].active{background:var(--accent-subtle);color:var(--accent)}.mode-icon[data-astro-cid-l7whdhgm]{font-size:20px;line-height:1}.mode-label[data-astro-cid-l7whdhgm]{font-size:11px;font-weight:500;color:var(--text-secondary)}.mode-btn[data-astro-cid-l7whdhgm].active .mode-label[data-astro-cid-l7whdhgm]{color:var(--accent)}.transit-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.map-popup[data-astro-cid-ci4wvpob]{font-family:var(--font);font-size:13px;line-height:1.5}.map-popup[data-astro-cid-ci4wvpob] strong[data-astro-cid-ci4wvpob]{font-weight:600}.section-intro[data-astro-cid-5absxjnt]{color:var(--text-secondary);margin-bottom:var(--sp-xl)}.morning-list[data-astro-cid-5absxjnt]{margin-bottom:var(--sp-lg)}.welcome-intro[data-astro-cid-j7pv25f6]{padding:var(--sp-xl) 0 var(--sp-lg)}.welcome-intro[data-astro-cid-j7pv25f6] p[data-astro-cid-j7pv25f6]{font-size:19px;color:var(--text-secondary);max-width:55ch}.footer[data-astro-cid-j7pv25f6]{padding:var(--sp-xl) 0;text-align:center;color:var(--text-secondary);font-size:13px;border-top:1px solid var(--border)}
