#root,body,html{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;margin:0;padding:0;width:100%}.App{background:#f5f5f3;min-height:100vh}.page-topbar{background:var(--section-color);padding:10px 20px}.map-button{background:#0a0a0a;border:none;color:#fff;cursor:pointer;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.1em;padding:8px 16px;text-transform:uppercase;transition:background-color .15s ease}.map-button:hover{background:#333}.section-body{margin:0 auto;max-width:720px;padding:32px 20px 48px}.system-map-wrapper{margin:0 auto;max-width:1400px;padding:24px 16px 40px;width:92%}.system-map{position:relative;width:100%}.system-map-background{aspect-ratio:571.48537/793.04016;display:block;height:auto;width:100%}.map-station{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:0;position:absolute;transform:translate(-50%,-50%)}.map-station-dot{background:#fff;border:4px solid var(--station-color);border-radius:50%;height:2rem;transition:transform .15s ease;width:2rem}.map-station-label{color:#111;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.map-station:focus-visible .map-station-dot,.map-station:hover .map-station-dot{transform:scale(1.15)}.map-info-box{background:#fff;border:1px solid #0a0a0a;box-shadow:0 2px 6px #0000004d;position:absolute;transform:translate(-100%,-50%);width:210px}.map-info-box-header{align-items:center;background:#0a0a0a;display:flex;gap:8px;padding:8px 10px}.map-info-box-icon{align-items:center;background:#fff;border-radius:50%;color:#0a0a0a;display:flex;flex-shrink:0;font-size:12px;height:18px;justify-content:center;width:18px}.map-info-box-icon,.map-info-box-title{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:800}.map-info-box-title{color:#fff;font-size:13px;letter-spacing:.01em}.map-info-box-body{display:flex;flex-direction:column;gap:10px;padding:10px 10px 12px}.map-info-box-group{display:flex;flex-direction:column;gap:1px}.map-info-box-label{font-weight:800;margin:0}.map-info-box-label,.map-info-box-value{color:#111;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:11px}.map-info-box-value{font-weight:700;text-decoration:none;word-break:break-all}.map-info-box-value:hover{text-decoration:underline}.section-header{align-items:center;background:var(--section-color);color:#fff;display:flex;gap:12px;padding:14px 20px}.section-header-bullet{align-items:center;background:#fff;border-radius:50%;color:var(--section-color);display:flex;flex-shrink:0;font-size:16px;height:32px;justify-content:center;width:32px}.section-header-bullet,.section-header-title{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:800}.section-header-title{font-size:22px;letter-spacing:.04em;margin:0;text-transform:uppercase}.about-slideshow{gap:20px}.about-slideshow,.slide-frame{align-items:center;display:flex;flex-direction:column}.slide-frame{gap:16px;width:100%}.slide-image-placeholder{align-items:center;background:#eceae4;border:2px dashed #999;box-sizing:border-box;color:#666;display:flex;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:13px;font-weight:700;height:220px;justify-content:center;letter-spacing:.05em;max-width:360px;padding:8px;text-align:center;text-transform:uppercase;width:100%}.slide-caption{color:#222;font-size:16px;line-height:1.6;margin:0;max-width:520px}.slideshow-controls{align-items:center;display:flex;gap:16px;justify-content:center}.slideshow-button{background:#0a0a0a;border:none;color:#fff;cursor:pointer;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.1em;padding:8px 18px;text-transform:uppercase;transition:background-color .15s ease}.slideshow-button:hover{background:#333}.slideshow-counter{color:#444;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:13px;font-weight:700}.departure-board{background:#111;border:4px solid #2a2a2a;border-radius:4px;padding:20px}.departure-board-label{color:#666;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.15em;margin-bottom:10px}.departure-board-text{color:#ffb000;font-family:Courier New,Courier,monospace;font-size:16px;line-height:1.7;margin:0;text-shadow:0 0 6px #ffb00080;white-space:pre-wrap;word-break:break-word}.departure-board-cursor{animation:departure-blink 1s steps(1) infinite;background:#ffb000;box-shadow:0 0 6px #ffb000b3;display:inline-block;height:15px;margin-left:2px;vertical-align:text-bottom;width:8px}@keyframes departure-blink{0%,49%{opacity:1}50%,to{opacity:0}}.influences-section,.interests-section,.projects-section{color:#222;font-size:16px;line-height:1.6}.contact-section{align-items:center;display:flex;flex-direction:column;gap:24px}.contact-icons{display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.contact-icon a{align-items:center;color:#222;display:flex;flex-direction:column;text-decoration:none}.contact-icon img{height:64px;margin-bottom:8px;width:64px}.contact-icon p{font-size:13px;font-weight:700;letter-spacing:.04em;margin:0;text-transform:uppercase}.contact-description{color:#333;font-size:15px;line-height:1.6;max-width:480px;text-align:center}.password-gate{align-items:center;background:#0a0a0a;display:flex;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;justify-content:center;min-height:100vh}.password-gate-card{background:#fff;display:flex;flex-direction:column;gap:12px;padding:32px;width:280px}.password-gate-eyebrow{color:#888;font-size:12px;font-weight:700;letter-spacing:.15em;margin:0;text-transform:uppercase}.password-gate-title{color:#0a0a0a;font-size:22px;font-weight:800;letter-spacing:.02em;margin:0 0 8px;text-transform:uppercase}.password-gate-input{border:2px solid #0a0a0a;font-family:inherit;font-size:15px;padding:10px 12px}.password-gate-button{background:#0a0a0a;border:none;color:#fff;cursor:pointer;font-size:13px;font-weight:700;letter-spacing:.1em;padding:10px 16px;text-transform:uppercase}.password-gate-button:hover{background:#333}.password-gate-error{color:#c60c30;font-size:13px;font-weight:700;margin:0}
/*# sourceMappingURL=main.95d0d97a.css.map*/