/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}.grow{flex-grow:1}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--paper:#f3eddf;--paper-deep:#e8dfce;--ink:#10213f;--ink-soft:#536079;--signal:#e94313;--lime:#d9f20e;--line:#a9a18f;--white:#fffdf7;--motion-fast:.14s;--motion-base:.28s;--motion-slow:.64s;--ease:cubic-bezier(.22,.78,.24,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a,button{color:inherit}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--signal);outline-offset:4px}.skip-link{z-index:200;background:var(--lime);color:var(--ink);transition:top var(--motion-fast);padding:.8rem 1rem;font-weight:800;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.topbar{border-bottom:1px solid var(--line);z-index:5;grid-template-columns:1fr auto 1fr;align-items:center;gap:3rem;min-height:78px;padding:0 clamp(1.25rem,3.5vw,4.5rem);display:grid;position:relative}.wordmark{text-transform:uppercase;letter-spacing:.04em;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:1.05rem;text-decoration:none}.topbar nav{gap:clamp(1.5rem,3vw,3.5rem);display:flex}.topbar nav a,.index-trigger{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:800;text-decoration:none}.topbar nav a{position:relative}.topbar nav a:after{content:"";background:var(--signal);height:2px;transition:right var(--motion-base) var(--ease);position:absolute;bottom:-.55rem;left:0;right:100%}.topbar nav a:hover:after{right:0}.topbar nav a:focus-visible:after{right:0}.index-trigger{border:1px solid var(--ink);cursor:pointer;background:0 0;justify-self:end;padding:.7rem 1rem}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:4vw;min-height:min(840px,100vh - 78px);padding:clamp(3.5rem,7vh,6rem) clamp(1.25rem,3.5vw,4.5rem) 4rem;display:grid;position:relative;overflow:hidden}.kicker{text-transform:uppercase;letter-spacing:.13em;margin:0 0 1.3rem;font-size:.7rem;font-weight:800}.hero h1{text-transform:uppercase;letter-spacing:-.025em;max-width:900px;margin:0;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(5rem,8vw,9.6rem);font-weight:900;line-height:.76}.hero h1 span{display:block}.hero h1 span:nth-child(2){color:var(--signal)}.hero-lede{max-width:610px;margin:2.5rem 0 0;font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.48}.hero-actions{align-items:center;gap:1.6rem;margin-top:2rem;display:flex}.button{cursor:pointer;text-transform:uppercase;letter-spacing:.07em;min-height:46px;transition:transform var(--motion-fast), background var(--motion-fast), color var(--motion-fast);border:0;justify-content:center;align-items:center;padding:.8rem 1.15rem;font-size:.74rem;font-weight:900;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--lime);color:var(--ink);border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}.button-outline{border:1px solid var(--ink);background:0 0}.button-signal{background:var(--signal);color:var(--white)}.text-link{cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:0 0 .35rem;font-weight:800;text-decoration:none}.hero-route-panel{border-left:1px solid var(--line);align-self:stretch;min-height:610px;position:relative;overflow:hidden}.hero-route-panel>img{object-fit:cover;mix-blend-mode:multiply;width:138%;height:90%;position:absolute;inset:5% -26% 0 -12%}.hero-project-picker{z-index:2;background:var(--white);border:1px solid var(--ink);width:min(330px,78%);box-shadow:6px 6px 0 var(--ink);padding:1rem;position:absolute;top:1rem;right:0}.hero-project-picker>button{text-align:left;border:0;border-top:1px solid var(--line);cursor:pointer;background:0 0;grid-template-rows:1fr 1fr;grid-template-columns:40px 1fr;width:100%;padding:.7rem 0;display:grid}:is(.hero-project-picker>button:hover,.hero-project-picker>button:focus-visible){background:var(--lime);padding-left:.5rem}.hero-project-picker>button span{color:var(--signal);grid-row:1/3;align-self:center;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:1.55rem}.hero-project-picker>button b{text-transform:uppercase;align-self:end;font-size:.8rem}.hero-project-picker>button small{color:var(--ink-soft)}.route-legend{z-index:2;background:var(--paper);border-left:1px solid var(--ink);max-width:280px;padding:1.2rem 0 0 1.2rem;position:absolute;bottom:1rem;right:0}.legend-number{color:var(--signal);font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(3rem,5vw,5rem)}.route-legend p{line-height:1.55}.project-universe{padding:7rem clamp(1.25rem,3.5vw,4.5rem)}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem;display:flex}.section-heading h2,.capabilities h2,.about h2,.contact h2{text-transform:uppercase;letter-spacing:-.015em;margin:0;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(3.4rem,7vw,7.5rem);line-height:.88}.project-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,2rem);display:grid}.showcase-card{background:var(--white);border:1px solid var(--ink);min-width:0;box-shadow:8px 8px 0 var(--ink);overflow:hidden}.showcase-cover{border:0;border-bottom:1px solid var(--ink);background:var(--paper-deep);cursor:pointer;width:100%;height:clamp(330px,40vw,580px);padding:0;display:block;position:relative;overflow:hidden}.showcase-cover img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-slow) var(--ease);display:block}.showcase-card:first-child .showcase-cover img{object-fit:contain;background:#fff8f4}:is(.showcase-cover:hover img,.showcase-cover:focus-visible img){transform:scale(1.025)}.showcase-number{background:var(--lime);border:2px solid var(--ink);border-radius:50%;place-items:center;width:58px;height:58px;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:1.7rem;display:grid;position:absolute;top:1rem;left:1rem}.showcase-status{background:var(--white);border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.07em;max-width:calc(100% - 90px);padding:.55rem .7rem;font-size:.6rem;font-weight:900;position:absolute;top:1rem;right:1rem}.showcase-copy{padding:clamp(1.3rem,3vw,2.4rem)}.showcase-copy h3{text-transform:uppercase;margin:0 0 .8rem;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(3rem,5vw,5.8rem);line-height:.85}.showcase-copy>p:not(.kicker){max-width:620px;min-height:4.6em;font-size:1.05rem;line-height:1.5}.showcase-signal{box-shadow:8px 8px 0 var(--signal)}.showcase-lime{box-shadow:8px 8px 0 var(--lime), 9px 9px 0 var(--ink)}.map-shell{border:1px solid var(--ink);background:var(--paper);isolation:isolate;min-height:720px;position:relative;overflow:hidden}.route-map-image{object-fit:cover;z-index:-1;width:100%;height:100%;transition:transform var(--motion-slow) var(--ease), filter var(--motion-base);position:absolute;inset:0}.project-routes{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-shell{background-color:#f7ecd7;background-image:radial-gradient(at 30% 20%,#fff8e966,#0000 65%),repeating-linear-gradient(0deg,#16304703 0 1px,#0000 1px 4px)}.map-rails,.project-route-active{fill:none;stroke:var(--ink);stroke-width:10px;stroke-linecap:round;stroke-linejoin:round}.map-rail-markings{fill:none;stroke:var(--paper);stroke-width:1px;stroke-dasharray:.006 .018;opacity:.6}.map-survey-lines{fill:none;stroke:#85867b;stroke-width:1.4px;stroke-dasharray:8 3 2 3;opacity:.6}.map-survey-lines circle{fill:#f7ecd7;stroke-dasharray:none}.map-junctions{fill:#f7ecd7;stroke:var(--ink);stroke-width:7px}.map-direction-arrows{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.map-branch-targets{fill:none;stroke:#0000;stroke-width:28px;pointer-events:stroke;cursor:pointer}.project-route-active{stroke:var(--signal);stroke-dasharray:1;animation:.85s linear both routeDraw}.project-route-track{fill:none;stroke:var(--paper);stroke-width:1px;opacity:.65;stroke-dasharray:.009 .014;animation:.75s both routeTrackIn}.route-origin{border:3px solid var(--ink);background:var(--paper);width:112px;height:112px;box-shadow:0 0 0 7px var(--paper), 0 0 0 8px var(--ink);cursor:pointer;color:var(--ink);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:flex;position:absolute;top:50%;left:49.44%;transform:translate(-50%,-50%)}.route-origin b{text-transform:uppercase;letter-spacing:-.03em;font-size:.95rem}.route-origin small{text-transform:uppercase;letter-spacing:.08em;font-size:.55rem}.route-origin-dot{background:var(--ink);border-radius:50%;width:8px;height:8px;transition:background .2s}.map-shell:not([data-active=none]) .route-origin-dot{background:var(--signal);box-shadow:0 0 0 4px #ef420a1f}@keyframes routeDraw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes routeTrackIn{0%{opacity:0}85%{opacity:0}to{opacity:.65}}@media (prefers-reduced-motion:reduce){.project-route-active,.project-route-track{animation:none}}.station{border:4px solid var(--ink);background:var(--paper);cursor:pointer;width:112px;height:112px;transition:width var(--motion-base) var(--ease), height var(--motion-base) var(--ease), background var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);border-radius:50%;align-content:center;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}:is(.station:hover,.station:focus-visible,.station.is-active){z-index:3;width:136px;height:136px}.station>.station-number{font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:2.1rem;line-height:1}.station>b{text-transform:uppercase;margin-top:.3rem;font-size:.72rem}.station>small{color:var(--ink-soft);margin-top:.2rem;font-size:.58rem}.station-signal.is-active,.station-signal:hover{background:var(--signal);color:var(--white);border-color:var(--signal)}.station-signal.is-active>small,.station-signal:hover>small{color:var(--white)}.station-lime.is-active,.station-lime:hover{box-shadow:0 0 0 9px var(--lime)}.station-ink.is-active,.station-ink:hover{background:var(--ink);color:var(--white)}.station-ink.is-active>small,.station-ink:hover>small{color:var(--paper)}.station-status-label{z-index:2;border:1px solid var(--ink);background:var(--white);width:max-content;max-width:150px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;box-shadow:3px 3px 0 var(--ink);transition:transform var(--motion-fast) var(--ease), box-shadow var(--motion-fast);padding:.38rem .55rem .34rem;font-family:Arial,Helvetica,sans-serif;font-size:.56rem;font-weight:900;line-height:1;position:absolute;top:-17px;left:calc(100% - 10px)}.station-ink .station-status-label{left:auto;right:calc(100% - 10px)}.station-status-deployed{border-left:7px solid var(--lime);animation:2.4s ease-in-out infinite stationSignal}.station-status-development{border-left:7px solid var(--signal)}.station-status-tooltip{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:is(.station:hover .station-status-label,.station:focus-visible .station-status-label){box-shadow:5px 5px 0 var(--ink);transform:translateY(-3px)}.map-preview{z-index:2;background:var(--white);border:1px solid var(--ink);border-top:7px solid var(--ink);width:min(330px,24%);min-width:270px;box-shadow:6px 6px 0 var(--ink);animation:mapTicketIn var(--motion-base) var(--ease) both;padding:1rem 1.1rem 1.1rem;position:absolute;transform:translateY(-50%)}.map-preview-signal{border-top-color:var(--signal)}.map-preview-lime{border-top-color:var(--lime)}.map-preview-lime,.map-preview-ink{right:4%;left:auto!important}.map-preview-meta{border-bottom:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.6rem;font-size:.58rem;font-weight:900;display:flex}.map-preview h3{text-transform:uppercase;margin:.7rem 0 .45rem;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(2rem,3vw,2.8rem);line-height:.9}.map-preview-status{border:1px solid var(--ink);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .65rem;padding:.35rem .5rem;font-size:.56rem;font-weight:900;line-height:1.3;display:inline-block}.map-preview-status-deployed{border-left:6px solid var(--lime)}.map-preview-status-development{border-left:6px solid var(--signal)}.map-preview-description{margin:0;font-size:.78rem;line-height:1.45}.preview-actions{justify-content:space-between;align-items:center;gap:1rem;margin-top:.9rem;display:flex}.map-preview .button{min-height:38px;padding:.6rem .8rem;font-size:.65rem}.map-hint{background:var(--lime);text-transform:uppercase;letter-spacing:.05em;transition:opacity var(--motion-fast);margin:0;padding:.55rem .7rem;font-size:.68rem;font-weight:800;position:absolute;bottom:1rem;right:1.5rem}.map-shell[data-active]:not([data-active=none]) .map-hint{opacity:0}.capabilities{background:var(--ink);color:var(--paper);grid-template-columns:.85fr 1.15fr;gap:8vw;padding:7rem clamp(1.25rem,3.5vw,4.5rem);display:grid}.capabilities ol{margin:0;padding:0;list-style:none}.capabilities li{border-top:1px solid #677188;grid-template-columns:60px 1fr;gap:1.5rem;padding:1.8rem 0;display:grid}.capabilities li:last-child{border-bottom:1px solid #677188}.capabilities li>span{color:var(--lime);font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:2rem}.capabilities h3{margin:0;font-size:clamp(1.35rem,2vw,2rem)}.capabilities li p{color:#cbd0d9;max-width:570px;line-height:1.55}.about{padding:8rem clamp(1.25rem,7vw,9rem)}.about h2{max-width:1150px}.about-grid{grid-template-columns:repeat(2,1fr);gap:4rem;max-width:900px;margin:4rem 0 0 auto;display:grid}.about-grid p{font-size:1.2rem;line-height:1.6}.contact{background:var(--signal);color:var(--white);padding:7rem clamp(1.25rem,7vw,9rem)}.contact h2{max-width:1100px}.contact-form{grid-template-columns:.65fr 1fr;gap:1.3rem 2rem;max-width:1050px;margin-top:4rem;display:grid}.contact-form label{gap:.45rem;display:grid}.contact-form label:nth-of-type(3){grid-column:1/-1}.contact-form label span{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:800}.contact-form input,.contact-form textarea{border:0;border-bottom:2px solid var(--white);width:100%;color:var(--white);background:0 0;border-radius:0;padding:.8rem 0}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffd0bf}.contact-form .button{width:max-content}.form-status{align-self:center;margin:0}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.direct-contact{gap:2rem;margin-top:3rem;font-weight:800;display:flex}footer{background:var(--signal);color:var(--white);text-transform:uppercase;letter-spacing:.08em;border-top:1px solid #ffffff80;justify-content:space-between;padding:1.6rem clamp(1.25rem,3.5vw,4.5rem);font-size:.78rem;display:flex}.overlay{z-index:100;animation:fadeIn var(--motion-base) both;overscroll-behavior:none;background:#10213fb8;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.dialog{overscroll-behavior:contain;background:var(--paper);width:min(1120px,96vw);max-height:calc(100vh - 3rem);color:var(--ink);border:1px solid var(--ink);box-shadow:12px 12px 0 var(--signal);animation:panelIn var(--motion-base) var(--ease) both;overflow:auto}.demo-dialog{width:min(1450px,98vw)}.dialog-bar{z-index:10;background:var(--ink);min-height:64px;color:var(--white);justify-content:space-between;align-items:center;padding:.8rem 1.2rem;display:flex;position:sticky;top:0}.dialog-bar>div{align-items:center;gap:1rem;display:flex}.dialog-bar button{color:var(--white);cursor:pointer;text-transform:uppercase;background:0 0;border:0;font-size:.72rem;font-weight:800}.dialog-bar button span{vertical-align:middle;font-size:1.5rem}.demo-marker{background:var(--lime);color:var(--ink);text-transform:uppercase;letter-spacing:.08em;padding:.35rem .55rem;font-size:.62rem;font-weight:900}.index-panel{padding:2rem}.filters{flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;display:flex}.filters button,.viewport-switch button,.demo-controls>button,.bot-status button{border:1px solid var(--ink);cursor:pointer;text-transform:uppercase;background:0 0;padding:.65rem .85rem;font-size:.72rem;font-weight:800}.filters button.active,.viewport-switch button.active{background:var(--ink);color:var(--white)}.project-list{border-top:1px solid var(--ink)}.project-list>button{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;transition:background var(--motion-fast), padding var(--motion-fast);background:0 0;grid-template-columns:70px 1.2fr 1fr 70px;gap:1rem;padding:1.35rem .5rem;display:grid}:is(.project-list>button:hover,.project-list>button:focus-visible){background:var(--lime);padding-left:1rem}.project-detail{padding:clamp(2rem,5vw,5rem)}.project-detail header{max-width:820px}.project-detail h2{text-transform:uppercase;margin:0;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(4rem,10vw,9rem);line-height:.8}.project-detail header>p:last-child{font-size:1.25rem;line-height:1.5}.project-status{background:var(--lime);border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:.5rem;margin-top:.6rem;padding:.55rem .75rem;font-size:.66rem;font-weight:900;display:inline-flex}.project-status:before{content:"";background:var(--signal);border-radius:50%;width:8px;height:8px}.project-status-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.6rem;display:flex}.project-status-row .project-status{margin-top:0}.project-live-link{letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid;padding-bottom:.25rem;font-size:.75rem;font-weight:900;text-decoration:none}:is(.project-live-link:hover,.project-live-link:focus-visible){color:var(--signal)}.case-grid{border-top:1px solid var(--ink);grid-template-columns:repeat(2,1fr);margin:3rem 0;display:grid}.case-grid>div{border-bottom:1px solid var(--line);padding:1.5rem}.case-grid>div:nth-child(odd){border-right:1px solid var(--line)}.case-grid span{text-transform:uppercase;color:var(--signal);letter-spacing:.1em;font-size:.68rem;font-weight:900}.case-grid p{line-height:1.55}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0 0 2rem;display:grid}.project-gallery figure{border:1px solid var(--ink);background:var(--white);margin:0;padding:.6rem;overflow:hidden}.project-gallery figure.media-landscape{grid-column:1/-1}.project-gallery img{object-fit:cover;object-position:top;background:var(--paper-deep);width:100%;max-height:620px;display:block}.project-gallery .media-landscape img{aspect-ratio:16/8;object-fit:contain}.project-gallery figcaption{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);padding:.65rem .2rem .15rem;font-size:.62rem;font-weight:800}.stack{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.stack span{border:1px solid var(--ink);padding:.5rem .7rem;font-size:.75rem}.demo-workspace{background:var(--paper-deep);padding:1.2rem}.demo-controls,.bot-status{justify-content:space-between;align-items:center;gap:1rem;display:flex}.demo-note{text-transform:uppercase;letter-spacing:.07em;font-size:.72rem;font-weight:800}.iframe-stage{background:var(--ink);transition:width var(--motion-base) var(--ease);margin:1rem auto 0;padding:10px}.iframe-stage iframe{background:#fff;border:0;width:100%;height:min(680px,100vh - 190px);display:block}.viewport-desktop{width:100%}.viewport-tablet{width:min(820px,100%)}.viewport-mobile{width:min(390px,100%)}.bot-demo{grid-template-rows:auto 1fr auto;min-height:min(720px,100vh - 100px);padding:1.5rem;display:grid}.bot-status{border-bottom:1px solid var(--line);padding-bottom:1rem}.status-dot{background:var(--lime);border-radius:50%;width:9px;height:9px;display:inline-block;box-shadow:0 0 0 4px #d9f20e40}.chat-log{background:var(--white);min-height:380px;padding:2rem clamp(.5rem,7vw,8rem);overflow:auto}.message{border:1px solid var(--ink);max-width:680px;margin:0 0 1rem;padding:1rem 1.2rem;line-height:1.5}.message p{white-space:pre-wrap;margin:0}.message-visitor{background:var(--ink);color:var(--white);margin-left:auto}.message-bot{box-shadow:5px 5px 0 var(--signal);margin-right:auto}.chat-buttons{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.chat-buttons button{border:1px solid var(--ink);background:var(--lime);cursor:pointer;padding:.6rem .8rem;font-weight:800}.typing{color:var(--ink-soft);font-size:.8rem}.chat-form{padding-top:1.2rem}.chat-form>label{text-transform:uppercase;margin-bottom:.5rem;font-size:.68rem;font-weight:800;display:block}.chat-form>div{grid-template-columns:1fr auto;display:grid}.chat-form input{border:1px solid var(--ink);background:var(--white);min-width:0;padding:1rem}.chat-form button{background:var(--signal);color:var(--white);cursor:pointer;border:0;padding:0 1.5rem;font-weight:800}@keyframes fadeIn{0%{opacity:0}}@keyframes panelIn{0%{opacity:0;transform:translateY(28px)scale(.985)}}@keyframes stationSignal{0%,to{box-shadow:3px 3px 0 var(--ink)}50%{box-shadow:3px 3px 0 var(--ink), 0 0 0 5px #d9f20e59}}@keyframes mapTicketIn{0%{opacity:0;transform:translateY(calc(10px - 50%))}}@media (max-width:900px){.map-preview{width:min(240px,36%);min-width:0;padding:.8rem}.map-preview-signal{left:2%!important}.map-preview-lime,.map-preview-ink{right:2%}.topbar{grid-template-columns:1fr auto;gap:1rem}.topbar nav{display:none}.hero{grid-template-columns:1fr;align-content:space-between;min-height:720px}.hero-route-panel{border-left:0;min-height:250px}.hero-route-panel>img{display:none}.hero-project-picker{width:min(390px,68%);left:0;right:auto}.route-legend{right:0}.map-shell{min-height:760px}.project-showcase{grid-template-columns:1fr}.showcase-cover{height:min(68vw,560px)}.map-preview{width:min(240px,36%);min-width:0}.station{width:90px;height:90px}:is(.station:hover,.station:focus-visible,.station.is-active){width:108px;height:108px}.station>.station-number{font-size:1.7rem}.capabilities{grid-template-columns:1fr}}@media (max-width:640px){.topbar{min-height:66px;padding:0 1rem}.wordmark{max-width:120px;font-size:.8rem}.index-trigger{padding:.6rem .7rem;font-size:.62rem}.hero{min-height:700px;padding:4rem 1rem 2rem}.hero h1{font-size:clamp(4.5rem,23vw,7rem)}.hero-lede{font-size:1rem}.hero-actions{flex-direction:column;align-items:flex-start}.route-legend{max-width:220px}.hero-route-panel{min-height:420px}.hero-project-picker{width:100%;top:.5rem}.route-legend{bottom:0;left:0;right:auto}.section-heading{flex-direction:column;align-items:flex-start}.section-heading h2,.capabilities h2,.about h2,.contact h2{font-size:clamp(3rem,14vw,5rem)}.project-universe,.capabilities,.about,.contact{padding:5rem 1rem}.project-showcase{gap:2rem}.showcase-cover{height:76vw;min-height:290px}.showcase-copy>p:not(.kicker){min-height:auto}.showcase-copy .preview-actions{flex-direction:column;align-items:flex-start}.map-shell{background:var(--white);min-height:790px}.route-map-image,.project-routes{display:none}.route-origin{width:auto;height:34px;box-shadow:3px 3px 0 var(--ink);border-width:1px;border-radius:0;flex-direction:row;gap:.65rem;padding:0 .65rem;top:32px;left:1rem;transform:none}.route-origin b{font-size:.75rem}.map-shell:before{content:"";background:var(--ink);width:3px;height:283px;position:absolute;top:67px;left:2rem}.map-shell:after{content:"";background:var(--signal);width:3px;height:0;transition:height .5s;position:absolute;top:67px;left:2rem}.map-shell[data-active=zumita]:after{height:83px}.map-shell[data-active=quiet-flower]:after{height:178px}.map-shell[data-active=dice-vpn]:after{height:273px}.station{z-index:1}.map-preview{width:calc(100% - 2rem);min-width:0;box-shadow:5px 5px 0 var(--ink);animation-name:mobileMapTicketIn;transform:none;top:410px!important;left:1rem!important}@keyframes mobileMapTicketIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.map-preview h3{font-size:2.4rem}.station{border-width:1px;border-radius:0;grid-template-rows:1fr 1fr;grid-template-columns:50px minmax(0,1fr) auto;justify-items:start;width:calc(100% - 2rem);height:78px;padding:.75rem 1rem;position:absolute;transform:translate(-50%);left:50%!important}:is(.station:hover,.station:focus-visible,.station.is-active){width:calc(100% - 2rem);height:78px;transform:translate(-50%)translate(6px)}.station>.station-number{grid-row:1/3;align-self:center;font-size:2rem}.station>b{align-self:end;margin:0}.station>small{align-self:start;margin:0}.station-status-label{max-width:104px;box-shadow:3px 3px 0 var(--ink);white-space:normal;text-align:left;grid-area:1/3/3;align-self:center;margin-left:.5rem;position:static}:is(.station:hover .station-status-label,.station:focus-visible .station-status-label){box-shadow:3px 3px 0 var(--ink);transform:none}.station-status-tooltip{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}#station-zumita{top:110px!important}#station-quiet-flower{top:205px!important}#station-dice-vpn{top:300px!important}.map-hint{text-align:center;bottom:.8rem;left:.8rem;right:.8rem}.about-grid,.case-grid,.contact-form{grid-template-columns:1fr;gap:1rem}.about-grid{margin-top:2rem}.case-grid>div:nth-child(odd){border-right:0}.contact-form label:nth-of-type(3){grid-column:auto}.direct-contact{flex-direction:column;gap:1rem}.overlay{padding:0}.dialog{width:100vw;min-height:100vh;max-height:100vh;box-shadow:none;border:0}.dialog-bar{min-height:60px}.index-panel,.project-detail{padding:1.2rem}.project-list>button{grid-template-columns:44px 1fr 60px}.project-list>button span:nth-child(3){display:none}.project-detail h2{font-size:4.4rem}.project-gallery{grid-template-columns:1fr}.project-gallery figure.media-landscape{grid-column:auto}.demo-controls{flex-direction:column;align-items:stretch}.viewport-switch{grid-template-columns:repeat(3,1fr);display:grid}.iframe-stage iframe{height:calc(100vh - 240px)}.bot-demo{min-height:calc(100vh - 60px);padding:.8rem}.chat-log{padding:1.2rem .4rem}footer{gap:1rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.route-map-image{transform:none!important}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@font-face{font-family:Atlas Condensed;src:url(/demos/zumita/fonts/roboto-condensed-cyrillic.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Atlas Condensed;src:url(/demos/zumita/fonts/roboto-condensed-latin.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}.map-shell{--ink:#103047;--paper:#f7f1e4;--signal:#ee4b0b;aspect-ratio:1513/946;background:#f7f1e4 url(/assets/atlas-paper.webp) 50%/100% 100%;border:1px solid #cfc5b0;min-height:0;font-family:Atlas Condensed,Arial,sans-serif}.atlas-heading{pointer-events:none;position:absolute;top:5.5%;left:3.5%}.atlas-heading strong{text-transform:uppercase;letter-spacing:.19em;font-family:Georgia,serif;font-size:clamp(22px,2.4vw,36px);font-weight:700;display:block}.atlas-heading>span{letter-spacing:.36em;text-transform:uppercase;margin-top:.45rem;font-size:11px;display:block}.atlas-heading>small{letter-spacing:.14em;text-transform:uppercase;margin-top:1.9rem;font-size:10px;line-height:1.8;display:block}.atlas-note{letter-spacing:.23em;text-transform:uppercase;pointer-events:none;margin:0;font-size:10px;line-height:1.7;position:absolute}.atlas-note-top{top:5%;right:4%}.atlas-note-west{top:38%;left:3.3%}.atlas-note-east{top:36%;left:90%}.atlas-note-south{bottom:4%;left:6.5%}.atlas-note-future{top:78.5%;left:79%}.map-rails,.project-route-active{stroke-width:9px}.map-rail-inlay{fill:none;stroke:#f7f1e4;stroke-width:2.5px;opacity:.85}.map-rail-markings{stroke:var(--ink);stroke-width:.8px;stroke-dasharray:.003 .006;opacity:.8}.map-active-inlay{opacity:.75}.map-milestones{fill:#f7f1e4;stroke:#f7f1e4;stroke-width:1.5px}.map-survey-lines{stroke:#807c6b;opacity:.55;stroke-width:1px}.map-survey-lines circle,.map-junctions{fill:#f7f1e4}.map-junctions{stroke-width:5px}.map-direction-arrows{stroke-width:2.5px}.map-shell .station,.map-shell .station:hover,.map-shell .station.is-active{width:clamp(108px,9.2vw,146px);height:clamp(108px,9.2vw,146px);color:var(--ink);box-shadow:none;background:#f7f1e4;border-width:4px;transition:border-color .2s,box-shadow .2s}.map-shell .station:focus-visible{width:clamp(108px,9.2vw,146px);height:clamp(108px,9.2vw,146px);color:var(--ink);box-shadow:none;background:#f7f1e4;border-width:4px;transition:border-color .2s,box-shadow .2s}.map-shell .station.is-active{border-color:var(--ink);box-shadow:0 0 0 4px #f7f1e4, 0 0 0 6px var(--signal), 0 0 0 10px #f7f1e4, 0 0 0 11px var(--signal)}.map-shell .station>.station-number{letter-spacing:-.07em;font-family:Atlas Condensed,sans-serif;font-size:clamp(34px,3.1vw,48px);font-weight:900;font-stretch:75%}.map-shell .station>b{font-size:clamp(13px,1.1vw,17px);font-weight:800}.map-shell .station>small,.map-shell .station:hover>small{color:var(--ink);font-size:clamp(11px,.86vw,14px)}.map-shell .station-status-label{border:1px solid var(--ink);letter-spacing:.1em;max-width:none;box-shadow:3px 3px 0 var(--ink);padding:.4rem .65rem;font-family:Atlas Condensed,sans-serif;font-size:clamp(10px,.85vw,13px);animation:none;top:-22px;left:calc(100% - 3px)}.map-shell .station-status-deployed{border-left:6px solid var(--lime)}.map-shell .station-status-development{border-left:6px solid var(--signal)}.map-shell .station-ink .station-status-label{left:auto;right:calc(100% - 3px)}.map-shell .route-origin{width:clamp(122px,10.2vw,162px);height:clamp(122px,10.2vw,162px);box-shadow:0 0 0 5px #f7f1e4, 0 0 0 6px var(--ink);background:#f7f1e4;border-width:3px;gap:.45rem;top:47.992%;left:48.116%}.map-shell .route-origin b{letter-spacing:0;font-size:clamp(19px,1.75vw,26px);font-weight:900}.map-shell .route-origin small{letter-spacing:.07em;font-size:11px}.map-shell .route-origin-dot{background:var(--signal);width:11px;height:11px;margin-bottom:.4rem;box-shadow:0 0 0 4px #ee4b0b25}.map-shell .map-preview{clip-path:polygon(0 2%,1% 0,3% 1%,5% 0,7% 1%,9% 0,11% 1%,13% 0,15% 1%,17% 0,19% 1%,21% 0,23% 1%,25% 0,27% 1%,29% 0,31% 1%,33% 0,35% 1%,37% 0,39% 1%,41% 0,43% 1%,45% 0,47% 1%,49% 0,51% 1%,53% 0,55% 1%,57% 0,59% 1%,61% 0,63% 1%,65% 0,67% 1%,69% 0,71% 1%,73% 0,75% 1%,77% 0,79% 1%,81% 0,83% 1%,85% 0,87% 1%,89% 0,91% 1%,93% 0,95% 1%,97% 0,99% 1%,100% 0,100% 99%,98% 100%,96% 99%,94% 100%,92% 99%,90% 100%,88% 99%,86% 100%,84% 99%,82% 100%,80% 99%,78% 100%,76% 99%,74% 100%,72% 99%,70% 100%,68% 99%,66% 100%,64% 99%,62% 100%,60% 99%,58% 100%,56% 99%,54% 100%,52% 99%,50% 100%,48% 99%,46% 100%,44% 99%,42% 100%,40% 99%,38% 100%,36% 99%,34% 100%,32% 99%,30% 100%,28% 99%,26% 100%,24% 99%,22% 100%,20% 99%,18% 100%,16% 99%,14% 100%,12% 99%,10% 100%,8% 99%,6% 100%,4% 99%,2% 100%,0 99%);background:#fffaf0;border:0;width:27%;min-width:0;padding:1.1rem 1.3rem 1.2rem;box-shadow:1px 5px 16px #49361e22}.map-shell .map-preview-lime,.map-shell .map-preview-ink{right:3%}.map-shell .map-preview{animation-name:atlasTicketIn;transform:none}@keyframes atlasTicketIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.map-shell .map-preview-meta{letter-spacing:.04em;border-color:#9b9c8a;padding-bottom:.7rem;font-size:12px}.map-shell .map-preview h3{margin:1rem 0 .6rem;font-family:Atlas Condensed,sans-serif;font-size:clamp(28px,2.5vw,42px);font-weight:900;line-height:1;position:relative}.map-shell .map-preview-status{display:none}.map-shell .map-preview-description{font-family:Arial,sans-serif;font-size:clamp(14px,1.03vw,17px);line-height:1.35;position:relative}.map-shell .map-preview-lime .map-preview-description{width:71%}.ticket-flower{object-fit:cover;object-position:center;mix-blend-mode:multiply;filter:brightness(1.18)saturate(.8);opacity:.9;pointer-events:none;width:34%;height:64%;position:absolute;top:3.2rem;right:.5rem}.map-shell .map-preview-meta{padding-bottom:.5rem}.map-shell .map-preview h3{margin-top:.7rem}.map-shell .preview-actions{margin-top:.75rem}.atlas-compass{pointer-events:none;width:7%;position:absolute;bottom:5%;right:3%}.atlas-compass img{mix-blend-mode:multiply;width:100%;display:block}.atlas-compass span{letter-spacing:.16em;text-transform:uppercase;margin-top:.55rem;font-size:9px;line-height:1.7;display:block}.map-shell .preview-actions{border-top:1px solid #a9a18f;gap:.8rem;margin-top:1rem;padding-top:.75rem;position:relative}.map-shell .preview-actions>.text-link{font-size:18px;text-decoration:none}.map-shell .preview-actions .button{text-transform:none;letter-spacing:0;border-radius:2px;width:46%;min-height:42px;font-size:17px;font-weight:700}.map-shell .map-hint{letter-spacing:.15em;background:0 0;font-family:Atlas Condensed,sans-serif;font-size:11px;font-weight:500;bottom:3%;right:3%}@media (max-width:1000px){.map-shell{aspect-ratio:auto;background-size:cover;min-height:810px}.map-shell .atlas-heading,.map-shell .atlas-note,.map-shell .project-routes,.map-shell .atlas-compass{display:none}.map-shell .route-origin{width:auto;height:44px;box-shadow:2px 2px 0 var(--ink);border-width:1px;border-radius:0;flex-direction:row;gap:.8rem;padding:0 .8rem;top:30px;left:1rem;transform:none}.map-shell .route-origin b{font-size:17px}.map-shell .route-origin-dot{width:8px;height:8px;margin:0}.map-shell:before,.map-shell:after{content:"";background:var(--ink);width:3px;height:274px;position:absolute;top:74px;left:2rem}.map-shell:after{background:var(--signal);height:0;transition:height .65s}.map-shell[data-active=zumita]:after{height:76px}.map-shell[data-active=quiet-flower]:after{height:171px}.map-shell[data-active=dice-vpn]:after{height:266px}.map-shell .station,.map-shell .station:hover,.map-shell .station.is-active{width:calc(100% - 2rem);height:78px;box-shadow:none;z-index:1;border-width:1px;border-radius:0;grid-template-rows:1fr 1fr;grid-template-columns:50px minmax(0,1fr) auto;justify-items:start;padding:.75rem 1rem;position:absolute;transform:none;left:1rem!important}.map-shell .station:focus-visible{width:calc(100% - 2rem);height:78px;box-shadow:none;z-index:1;border-width:1px;border-radius:0;grid-template-rows:1fr 1fr;grid-template-columns:50px minmax(0,1fr) auto;justify-items:start;padding:.75rem 1rem;position:absolute;transform:none;left:1rem!important}.map-shell .station.is-active{border-left:4px solid var(--signal)}.map-shell .station>.station-number{grid-row:1/3;font-size:34px}.map-shell .station>b{align-self:end;margin:0;font-size:15px}.map-shell .station>small{align-self:start;margin:0;font-size:12px}.map-shell .station-status-label{white-space:normal;text-align:left;grid-area:1/3/3;align-self:center;max-width:108px;margin-left:.4rem;padding:.35rem .45rem;font-size:10px;position:static}#station-zumita{top:110px!important}#station-quiet-flower{top:205px!important}#station-dice-vpn{top:300px!important}.map-shell .map-preview{width:calc(100% - 2rem);min-width:0;animation:.25s both mobileMapTicketIn;right:auto;transform:none;top:410px!important;left:1rem!important}.map-shell .map-preview h3{font-size:32px}.map-shell .map-preview-description{font-size:16px}.map-shell .map-hint{text-align:center;bottom:1rem;left:1rem;right:1rem}}
