*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img,svg{max-width:100%;height:auto}img{display:block}figure{margin:0}button{cursor:pointer}p{margin:0 0 1.2em}h1,h2,h3{font-weight:400;margin:0}ul{padding-left:1.3rem}.wrap{max-width:1440px;margin-inline:auto;padding-inline:6%}.skip{position:fixed;left:16px;top:-100px;background:var(--paper);color:var(--ink);padding:12px;z-index:30}.skip:focus{top:12px}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;line-height:1.6}.muted{color:var(--muted)}.arrow{font-family:Arial,sans-serif}.text-link{display:inline-flex;gap:25px;align-items:center;text-decoration:none;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;line-height:1.5}.text-link:hover{border-color:var(--accent);color:var(--accent)}.brand-link{text-decoration:none;display:inline-flex;align-items:center;gap:15px}.brand-mark{width:48px;height:48px;flex-shrink:0}.nav-toggle{display:none;background:none;border:1px solid var(--line);color:inherit;padding:10px 13px}.nav-list{list-style:none;padding:0;margin:0;display:flex;gap:28px;align-items:center}.nav-list a{text-decoration:none}.nav-list a[aria-current=page]{color:var(--accent)}.nav-list a:hover{text-decoration:underline}.breadcrumb{padding-block:25px;font-size:11px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.breadcrumb a{text-decoration:none}.page-intro .lead{line-height:1.65}.byline{font-size:11px;color:var(--muted);line-height:1.7}.section-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;line-height:1.5}.prose p{font-size:15px;line-height:1.9;color:var(--muted);max-width:65ch}.sources{border-top:1px solid var(--line);padding:28px 0;margin-top:25px}.sources h2{font-size:15px;letter-spacing:0;font-family:inherit;margin-bottom:15px}.sources ul{list-style:none;padding:0;display:grid;gap:12px}.sources a{font-size:12px;line-height:1.65;overflow-wrap:anywhere}.sources .date{font-size:10px;color:var(--muted);margin-top:18px}.photo img{width:100%;aspect-ratio:3/2;object-fit:cover}.photo figcaption{font-size:10px;line-height:1.6;color:var(--muted);padding-top:10px}.source-inline{font-size:11px;line-height:1.7;margin-top:20px;display:flex;flex-wrap:wrap;gap:5px 16px;color:var(--muted)}.source-inline a{overflow-wrap:anywhere}.tech-nav{display:flex;gap:20px;flex-wrap:wrap;padding:24px 0;border-block:1px solid var(--line);font-size:12px}.tech-nav a{text-decoration:none}.tech-nav a:hover{text-decoration:underline}.tech-section{scroll-margin-top:28px}.tech-note{font-size:13px;line-height:1.75;padding:20px 0;border-top:1px solid var(--line)}.tech-section h3{font-family:inherit;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-top:26px;margin-bottom:12px}.related{padding:30px 0;border-top:1px solid var(--line)}.related h2{font-size:22px;margin-bottom:14px}.related p{max-width:70ch;color:var(--muted);font-size:13px;line-height:1.8}.related-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}.page-end{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:30px 0 60px;align-items:center}.footer-row{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:11px;line-height:1.8}.footer-row a{text-decoration:none}.footer-row a:hover{text-decoration:underline}.footer-links{display:flex;gap:25px;flex-wrap:wrap}.last-update{font-size:10px;color:var(--muted);line-height:1.6}.not-found{min-height:55vh;padding-block:90px}.not-found h1{font-size:56px;margin-bottom:20px}.not-found p{line-height:1.8}.site-map{list-style:none;padding:0;display:grid;gap:0}.site-map a{display:flex;justify-content:space-between;text-decoration:none;border-bottom:1px solid var(--line);padding:22px 0;font-size:20px}.map-block{max-width:900px;padding-bottom:60px}details summary{cursor:pointer;list-style:none}details summary::-webkit-details-marker{display:none}details summary:after{content:'+';margin-left:15px;font-family:Arial,sans-serif}details[open] summary:after{content:'−'}
@media(max-width:900px){.wrap{padding-inline:5%}.nav-list{gap:18px}.nav-toggle{display:block}.site-navigation{display:none}.site-navigation.is-open{display:block;position:absolute;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);padding:20px 5%;border-bottom:1px solid var(--line);z-index:20}.nav-list{flex-direction:column;align-items:stretch;gap:0}.nav-list a{display:block;padding:13px 0}.site-header{position:relative}.page-intro h1{overflow-wrap:normal}}
@media(max-width:600px){.wrap{padding-inline:6%}.photo figcaption{font-size:9px}.page-end{align-items:flex-start;flex-direction:column;gap:10px;padding-bottom:40px}.footer-row{flex-direction:column;gap:18px}.footer-links{gap:15px}.tech-nav{gap:14px 20px;font-size:11px}.prose p{font-size:15px;line-height:1.85}.source-inline{font-size:10px}.breadcrumb{padding-block:20px;font-size:10px}.brand-mark{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

@font-face{font-family:Manrope;src:url('/assets/manrope.woff') format('woff');font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#f4f1e9;--ink:#183a32;--muted:#56635c;--accent:#876b3f;--line:#d4d5c8;--deep:#12392f;--gold:#d4bd8c}body{background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}::selection{background:#d4bd8c;color:#15382e}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line)}.brand-name{font-size:15px;letter-spacing:.035em}.brand-sub{display:block;font-size:8px;letter-spacing:.19em;text-transform:uppercase;margin-top:7px;color:var(--muted)}.brand-mark{color:var(--ink);width:49px;height:55px}.nav-list{gap:23px}.nav-list a{font-size:11px}.home-hero{padding:48px 0 60px;display:grid;grid-template-columns:1.06fr 1fr;gap:0;align-items:stretch}.hero-copy{background:var(--deep);color:var(--paper);padding:50px 42px;position:relative;z-index:1}.hero-copy .eyebrow{color:var(--gold);margin-bottom:36px}.hero-copy h1{font-size:clamp(43px,4.5vw,69px);line-height:1.12;letter-spacing:-.05em;max-width:620px}.hero-copy h1 em{font-style:normal;color:var(--gold)}.hero-copy .lead{font-size:15px;color:#d1d9ce;line-height:1.9;max-width:355px;margin:26px 0 20px}.hero-copy .text-link{border-color:#668174;color:var(--paper);font-size:11px}.hero-photo{position:relative;min-width:0;background:#d9d8ca}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-photo .photo-label{position:absolute;bottom:22px;left:24px;right:24px;background:#f4f1e9f0;padding:12px 16px;display:flex;justify-content:space-between;gap:15px;font-size:9px;line-height:1.6;color:var(--ink)}.intro-row{display:grid;grid-template-columns:.7fr 1.1fr 1fr;gap:50px;padding:12px 0 65px;border-bottom:1px solid var(--line)}.intro-row h2{font-size:28px;line-height:1.4;letter-spacing:-.03em}.intro-row p{font-size:14px;line-height:1.85;color:var(--muted);margin:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:60px 0 25px}.section-heading h2{font-size:38px;line-height:1.2;letter-spacing:-.04em;margin-top:18px}.section-heading p{max-width:400px;line-height:1.8;font-size:14px;color:var(--muted)}.city-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.city-card{text-decoration:none;display:grid;grid-template-columns:90px 1fr;gap:30px;align-items:center;padding:35px 30px;border-block:1px solid var(--line);background:#ebece1}.city-card:nth-child(2){background:#e2e6dc}.city-card .city-symbol{height:72px;opacity:.8}.city-card h3{font-size:24px;letter-spacing:-.02em;margin:0 0 10px}.city-card p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:15px}.city-card .arrow{font-size:22px}.city-card:hover{background:#dce2d4}.systems-teaser{padding:70px 0;display:grid;grid-template-columns:.8fr 1.1fr;gap:90px;align-items:center}.systems-teaser h2{font-size:45px;letter-spacing:-.04em;line-height:1.2;margin:20px 0}.systems-teaser p{font-size:14px;line-height:1.85;color:var(--muted)}.system-list{list-style:none;padding:0;margin:0}.system-list a{display:flex;gap:25px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:21px;letter-spacing:-.02em}.system-list .number{font-size:10px;color:var(--accent);letter-spacing:.15em}.system-list .arrow{margin-left:auto;font-size:19px}.system-list a:hover{color:var(--accent)}.axes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding:35px 0 65px;gap:50px}.axis a{text-decoration:none}.axis h3{font-size:24px;margin:20px 0 15px}.axis p{font-size:13px;line-height:1.9;color:var(--muted)}.axis .eyebrow{color:var(--accent)}.page-intro{padding:28px 0 50px;display:grid;grid-template-columns:1.25fr .8fr;gap:65px;align-items:end;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(42px,5vw,69px);letter-spacing:-.045em;line-height:1.15;margin-top:20px}.page-intro .lead{font-size:17px;color:var(--muted);margin-bottom:25px}.page-intro .eyebrow{color:var(--accent)}.article-sections{padding-top:12px}.article-section{display:grid;grid-template-columns:70px .8fr 1.3fr;gap:40px;padding:45px 0;border-bottom:1px solid var(--line)}.article-section .number{font-size:11px;color:var(--accent);padding-top:7px}.article-section h2{font-size:27px;letter-spacing:-.03em;line-height:1.4}.article-section:last-child{border-bottom:0}.tech-section{padding:65px 0;border-bottom:1px solid var(--line)}.tech-top{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.tech-section h2{font-size:36px;line-height:1.2;letter-spacing:-.04em;margin:15px 0}.tech-top .deck{font-size:20px;line-height:1.5;letter-spacing:-.02em;margin:0 0 20px}.tech-body{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:36px}.tech-note{margin-bottom:0}.tech-section .eyebrow{color:var(--accent)}.sources{margin-bottom:20px}.site-footer{background:var(--deep);color:var(--paper);padding-block:40px}.site-footer .footer-brand{font-size:22px;letter-spacing:-.02em;margin-bottom:28px;display:flex;gap:15px;align-items:center}.site-footer .brand-mark{color:var(--gold);width:35px;height:40px}.site-footer .last-update{color:#bccac0;margin-top:27px;border-top:1px solid #496257;padding-top:22px}.site-footer .footer-row{color:#d5dfd5}.not-found h1{font-size:60px}
@media(min-width:1600px){.hero-copy{padding:58px}.hero-copy h1{font-size:70px}}
@media(max-width:1000px){.hero-copy{padding:34px}.home-hero{grid-template-columns:1.1fr 1fr}.hero-copy h1{font-size:46px}.intro-row{gap:30px;grid-template-columns:.7fr 1fr}.intro-row>p:last-child{grid-column:2}.systems-teaser{gap:50px}.city-card{grid-template-columns:1fr;gap:15px}.city-card .city-symbol{width:70px;height:50px}.article-section{gap:25px;grid-template-columns:40px .8fr 1.3fr}.page-intro{gap:35px}}
@media(max-width:700px){.home-hero{grid-template-columns:1fr;padding-top:26px}.hero-copy{padding:35px 28px 40px}.hero-copy h1{font-size:clamp(41px,9.5vw,61px)}.hero-photo{height:340px}.intro-row{grid-template-columns:1fr;gap:25px;padding-bottom:45px}.intro-row>p:last-child{grid-column:auto}.intro-row h2{max-width:340px}.section-heading{padding-top:43px;align-items:start;flex-direction:column;gap:15px}.section-heading h2{font-size:33px}.city-grid{grid-template-columns:1fr;gap:20px}.city-card{grid-template-columns:65px 1fr;padding:25px 22px;gap:20px}.city-card h3{font-size:23px}.systems-teaser{grid-template-columns:1fr;gap:15px;padding:50px 0}.systems-teaser h2{font-size:36px}.system-list a{font-size:20px}.axes{grid-template-columns:1fr;gap:24px;padding-bottom:40px}.axis{border-bottom:1px solid var(--line);padding-bottom:20px}.axis h3{margin:12px 0}.site-header{height:90px}.brand-name{font-size:13px}.brand-sub{font-size:7px}.page-intro{grid-template-columns:1fr;gap:25px;padding:18px 0 35px}.page-intro h1{font-size:40px}.page-intro .lead{font-size:17px;margin-bottom:14px}.article-section{grid-template-columns:26px 1fr;gap:15px;padding-block:30px}.article-section .prose{grid-column:2}.article-section h2{font-size:26px}.tech-section{padding:45px 0}.tech-top,.tech-body{grid-template-columns:1fr;gap:25px}.tech-top h2{font-size:34px}.tech-body{margin-top:25px;gap:0}.tech-top .deck{font-size:19px}.site-footer{padding-block:30px}}
