@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root { --night:#17235c; --deep:#09143b; --cream:#f5f0dc; --acid:#b9f34a; --coral:#ff668e; --line:rgba(245,240,220,.3); --sans:'IBM Plex Mono',monospace; --display:'Barlow Condensed',Impact,sans-serif; }
body { background:var(--night); color:var(--cream); font-size:13px; }
.back-link { background:var(--coral); color:var(--deep); }
.site-header { border-bottom-color:var(--line); padding:20px 4vw 16px; }
.brand { letter-spacing:.1em; }
.brand-symbol { width:42px; height:42px; border:2px solid var(--acid); color:var(--acid); }
.header-note, .hero-meta, .hero-footer { color:rgba(245,240,220,.62); }
.header-note { font-size:9px; }
.menu-toggle { color:var(--cream); }
.menu-toggle span { color:var(--coral); }
.site-nav { background:var(--coral); color:var(--deep); }
.site-nav a { font-size:10px; }
.kicker, .section-marker { color:var(--acid); font-size:9px; }
.hero-copy h1,.section-heading h2,.method-copy h2,.journal-header h2,.site-footer h2,.contact-intro h1 { font-weight:700; letter-spacing:.02em; line-height:.68; }
.hero-copy h1,.section-heading h2,.method-copy h2 { text-transform:uppercase; }
.hero-copy h1 i,.section-heading h2 i,.method-copy h2 i { color:var(--coral); }
.hero-copy h1 span,.site-footer h2 span,.contact-intro h1 span { color:var(--acid); }
.hero-intro { color:rgba(245,240,220,.72); font-size:13px; }
.hero-diagram { background:var(--deep); border-color:var(--line); }
.hero-diagram:before { background:linear-gradient(90deg,transparent 49.8%,rgba(245,240,220,.1) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,rgba(245,240,220,.1) 50%,transparent 50.2%); background-size:56px 56px; }
.diagram-ring { border-width:2px; border-color:var(--acid); }
.ring-b, .diagram-line { border-color:var(--coral); background:var(--coral); }
.ring-c, .line-b { border-color:var(--acid); background:var(--acid); }
.diagram-node { background:var(--coral); }
.diagram-label { color:rgba(245,240,220,.75); font-size:9px; }
section:not(.hero-section),.site-footer { border-top-color:var(--line); }
.project-list,.project-row { border-color:var(--line); }
.project-row:hover { background:var(--acid); color:var(--deep); }
.project-number,.project-place,.project-type { color:rgba(245,240,220,.55); font-size:9px; }
.project-row:hover .project-place,.project-row:hover .project-type { color:var(--deep); }
.project-arrow,.journal-grid a,.contact-details a { color:var(--coral); }
.method-section { background:var(--acid); color:var(--deep); }
.method-section .section-marker,.method-copy .kicker { color:var(--deep); }
.method-copy h2 i { color:var(--coral); }
.method-notes { border-top-color:rgba(9,20,59,.5); }
.method-notes div { border-bottom-color:rgba(9,20,59,.5); font-size:15px; }
.journal-section { background:var(--deep); }
.journal-header h2 { color:var(--coral); }
.journal-grid { background:var(--line); }
.journal-grid article { background:var(--deep); }
.journal-grid span { color:rgba(245,240,220,.6); font-size:9px; }
.site-footer { background:var(--coral); color:var(--deep); }
.site-footer .kicker { color:var(--deep); }
.contact-page { background:var(--night); border-top-color:var(--line); }
.contact-intro h1 span { color:var(--acid); }
.form-field label,.contact-details h2 { color:var(--acid); }
.form-field input,.form-field textarea { border-color:var(--line); color:var(--cream); font-size:12px; }
.form-field input:focus,.form-field textarea:focus { outline-color:var(--acid); border-color:var(--acid); }
.form-submit { border-color:var(--acid); background:var(--acid); color:var(--deep); }
.contact-details p { color:rgba(245,240,220,.72); font-size:14px; }
.contact-map { filter:hue-rotate(155deg) saturate(.8); }
