/* Graz Network — independent static design, November 2026.
   No external fonts, trackers or build-time dependencies. Tiny local contact helper. */
:root {
  color-scheme: dark;
  --bg: #0c1114;
  --surface: #11191d;
  --line: #2d3a3f;
  --line2: #1d2a2e;
  --text: #f4f4ee;
  --muted: #a6b1b0;
  --dim: #71807f;
  --accent: #cbe78e;
  --max: 1190px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 104px; }
body { margin:0; background:var(--bg); color:var(--text); font: 400 16px/1.64 Arial, Helvetica, sans-serif; -webkit-font-smoothing:antialiased; }
::selection { background: var(--accent); color:var(--bg); }
a { color: inherit; text-decoration: none; }
a:focus-visible {outline:2px solid var(--accent); outline-offset:5px; border-radius:2px;}
.skip-link {position:absolute;top:-100px;left:18px; z-index:110; background:var(--accent);color:#0c1114;padding:9px 16px; font-weight:700;}
.skip-link:focus {top:16px;}
.container {width:min(calc(100% - 88px), var(--max)); margin-inline:auto;}
.topbar {position:sticky; top:0;z-index:100; border-bottom:1px solid rgba(203,231,142,.14);background:rgba(12,17,20,.95);backdrop-filter:blur(16px);}
.nav-inner {min-height:86px; display:flex;align-items:center;gap:28px;justify-content:space-between;}
.brand-stack {position:relative;min-width:245px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;}
.brand {display:flex;flex-direction:column;gap:0;min-width:0;}
.bsm-indicator {font:600 10px/1.25 "Courier New",Courier,monospace;letter-spacing:.10em;color:var(--dim);}
.bsm-indicator summary {list-style:none;cursor:help;user-select:none;outline-offset:5px;}
.bsm-indicator summary::-webkit-details-marker {display:none;}
.bsm-indicator summary:hover,.bsm-indicator[open] summary {color:var(--accent);}
.bsm-indicator summary:focus-visible {outline:2px solid var(--accent);}
.bsm-tooltip {position:absolute;top:calc(100% + 12px);left:0;z-index:130;width:min(355px,calc(100vw - 40px));background:#172024;border:1px solid #39474a;box-shadow:0 13px 35px rgba(0,0,0,.35);padding:17px 19px;letter-spacing:0;cursor:default;}
.bsm-tooltip strong {display:block;font:700 11px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.01em;color:var(--accent);margin-bottom:8px;}
.bsm-tooltip p {font:400 12px/1.65 Arial,Helvetica,sans-serif;color:#c4cdcc;margin:0;}
.brand-mark {font-family:"Courier New", Courier, monospace;letter-spacing:-2px; font-size:29px;line-height:1.03;font-weight:800;color:var(--text);}
.brand-sub {font-size:9px;color:var(--dim);letter-spacing:.21em;text-transform:uppercase;padding-left:4px;margin-top:6px;}
.site-nav {display:flex; align-items:center; gap:27px; font-size:12px;font-weight:700;text-transform:uppercase; letter-spacing:.08em;}
.site-nav a {color:var(--muted);transition:color .16s ease;}
.site-nav a:hover, .site-nav a[aria-current="page"] {color:var(--text);}
.lang-switch {display:flex; align-items:center;gap:9px;border-left:1px solid var(--line);padding-left:24px;font:700 12px/1 Arial,Helvetica,sans-serif;letter-spacing:.04em;}
.lang-switch a {color:var(--dim);}
.lang-switch a[aria-current="page"] {color:var(--accent);}
.lang-switch span {color:var(--line);}
.hero {min-height:630px;padding:100px 0 90px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:66px;align-items:end;}
.eyebrow {margin:0 0 25px; font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);}
h1,h2,h3,p {margin-top:0;}
h1 {font-size:clamp(53px,7.3vw,109px);line-height:1.035;letter-spacing:-.068em;font-weight:700;max-width:860px;margin-bottom:26px;}
h1 span {color:var(--accent);}
.hero-copy {font-size:clamp(17px,1.55vw,21px);line-height:1.6;color:#c4cdcc;max-width:660px;margin-bottom:32px;}
.hero-actions {display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-bottom:47px;}
.btn {display:inline-flex;align-items:center;gap:18px;justify-content:space-between;padding:13px 18px;border:1px solid var(--accent);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;min-height:51px;transition:background .18s,color .18s,border-color .18s;}
.btn.primary {background:var(--accent);color:var(--bg);}
.btn.primary:hover {background:#e4f8bd;border-color:#e4f8bd;}
.btn.outline {color:var(--text);border-color:#566361;}
.btn.outline:hover {border-color:var(--accent);color:var(--accent);}
.btn .arrow {font-size:18px;line-height:1;}
.hero-status {display:flex;gap:23px;flex-wrap:wrap;font-size:11px;color:var(--muted);letter-spacing:.04em;}
.hero-status span {display:inline-flex;gap:9px;align-items:center;}
.hero-status i {display:block;width:5px;height:5px;border-radius:50%;background:var(--accent);}
.hero-aside {border-left:1px solid var(--line);padding:0 0 0 28px;align-self:end;min-height:275px;display:flex;flex-direction:column;justify-content:end;}
.hero-aside .aside-kicker {font:700 10px/1.5 "Courier New",monospace; letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:23px;}
.signal-flow {display:flex;flex-direction:column; gap:0;}
.signal-flow .step {padding:12px 0;border-top:1px solid var(--line);display:flex;align-items:baseline; gap:16px;}
.signal-flow small {font:400 11px/1.4 "Courier New",monospace;color:var(--accent);}
.signal-flow strong {font-size:17px;letter-spacing:-.025em;font-weight:600;}
.signal-flow .step:last-child {border-bottom:1px solid var(--line);}
.signal-caption {font-size:12px;color:var(--muted);margin:18px 0 0;line-height:1.65;}
.section {border-top:1px solid var(--line);padding:96px 0 108px;}
.section-head {display:grid;grid-template-columns:minmax(140px, .35fr) minmax(0,1fr);gap:56px;margin-bottom:46px;}
.section-index {color:var(--accent);font:700 11px/1.6 "Courier New",monospace;letter-spacing:.1em;text-transform:uppercase;padding-top:12px;}
h2 {font-size:clamp(35px,4.3vw,63px);line-height:1.16;letter-spacing:-.058em;font-weight:700;max-width:870px;margin:0;}
h2 em {color:var(--accent);font-style:normal;}
.section-lede {font-size:18px;color:var(--muted);max-width:760px;margin-top:24px;line-height:1.7;}
.two-up {display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px;}
.era {border-top:2px solid var(--line);padding:27px 27px 30px 0;}
.era.active {border-color:var(--accent);}
.era-top {font:700 11px/1.4 "Courier New",monospace;letter-spacing:.1em;color:var(--accent);text-transform:uppercase;margin:0 0 26px;}
.era h3 {font-size:30px;letter-spacing:-.045em;line-height:1.22;margin-bottom:18px;}
.era p {color:var(--muted);max-width:475px;font-size:15px;line-height:1.78;margin-bottom:18px;}
.mini-link {font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:4px;}
.three-up {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.problem {border-top:1px solid var(--line);padding:20px 14px 0 0;}
.problem .num {font:700 12px/1.4 "Courier New",monospace;color:var(--accent);}
.problem h3 {font-size:24px;letter-spacing:-.035em;line-height:1.2;margin:33px 0 12px;}
.problem p {font-size:15px;color:var(--muted);line-height:1.7;max-width:300px;}
.process {border-top:1px solid var(--line);margin-top:42px;}
.process-row {display:grid;grid-template-columns:80px minmax(145px,.55fr) minmax(0,1.45fr); gap:28px;padding:29px 0;border-bottom:1px solid var(--line);align-items:start;}
.process-row .n {font:700 13px/1.4 "Courier New",monospace;color:var(--accent);padding-top:6px;}
.process-row h3 {font-size:26px;letter-spacing:-.036em;margin:0;}
.process-row p {color:var(--muted);font-size:15px;max-width:620px;margin:0;}
.fineprint {font-size:12px;line-height:1.72;color:var(--dim);max-width:900px;margin:29px 0 0;}
.research-layout {display:grid;grid-template-columns:1.5fr 1fr;gap:70px;}
.research-text {font-size:18px;color:var(--muted);line-height:1.75;max-width:660px;}
.research-list {margin:0;padding:0;list-style:none;}
.research-list li {padding:18px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px;display:flex;align-items:baseline;justify-content:space-between;gap:20px;}
.research-list li:last-child {border-bottom:1px solid var(--line);}
.research-list b {color:var(--text);font-size:18px;font-weight:600;letter-spacing:-.03em;}
.track {margin-top:42px;border-left:2px solid var(--line);padding:1px 0 1px 24px;max-width:790px;}
.track-label {font:700 11px/1.4 "Courier New",monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0 0 7px;}
.track p {color:var(--muted);font-size:15px;line-height:1.7;margin:0;}
.archive-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.archive-card {border-top:2px solid var(--line);padding:26px 0 0;}
.archive-card .archive-when {font:700 11px/1.4 "Courier New",monospace;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);margin-bottom:18px;}
.archive-card h3 {font-size:28px;letter-spacing:-.044em;line-height:1.17;margin:0 0 12px;}
.archive-card p {font-size:14px;color:var(--muted);line-height:1.7;max-width:460px;}
.downloads {display:flex;gap:24px;flex-wrap:wrap;margin-top:25px;}
.downloads a {font-size:12px;letter-spacing:.07em;font-weight:700;border-bottom:1px solid var(--accent);color:var(--text);padding-bottom:4px;text-transform:uppercase;}
.downloads a:hover {color:var(--accent);}
.archive-note {color:var(--dim);font-size:12px;line-height:1.65;margin:28px 0 0;max-width:880px;}
.contact-section {padding:65px 0 72px;}
.contact-grid {display:grid;grid-template-columns:minmax(140px,.35fr) minmax(0,1fr);gap:56px;}
.contact-title {max-width:100%;font-size:clamp(30px,3.4vw,47px);letter-spacing:-.047em;}
.contact-sub {font-size:15px;color:var(--muted);max-width:610px;margin:18px 0 20px;line-height:1.65;}
.contact-action {display:inline-flex;align-items:center;gap:14px;color:var(--accent);font:700 12px/1.6 Arial,Helvetica,sans-serif;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px;}
.contact-action:hover {color:#e4f8bd;}
.contact-fallback {font-size:12px;color:var(--dim);max-width:580px;line-height:1.6;}
.footer {border-top:1px solid var(--line);padding:26px 0 52px;}
.footer-grid {display:flex;justify-content:space-between;align-items:flex-start;gap:40px;}
.footer-logo {font:700 21px/1.4 "Courier New",monospace;letter-spacing:-2px;}
.footer-line {color:var(--dim);font-size:11px;max-width:645px;text-align:right;line-height:1.65;}
.footer-line a {color:var(--muted);text-decoration:underline;text-underline-offset:3px;}
@media (max-width: 1080px) {
 .container {width:min(calc(100% - 60px), var(--max));}
 .site-nav {gap:16px;font-size:11px;}
 .brand-stack {min-width:205px;}
 .hero {gap:34px;grid-template-columns:1.3fr .7fr;}
 .hero-aside {padding-left:21px;}
}
@media (max-width: 810px) {
 .nav-inner {min-height:91px;flex-wrap:wrap;padding:16px 0;gap:14px;}
 .brand-stack {min-width:0;}
 .brand-mark {font-size:25px;}
 .site-nav {order:3; width:100%;justify-content:space-between;gap:10px;border-top:1px solid var(--line2);padding-top:14px;}
 .lang-switch {margin-left:auto;}
 .hero {grid-template-columns:1fr;gap:45px; min-height:0;padding:80px 0 80px;}
 .hero-aside {border-left:none;border-top:1px solid var(--line);padding:27px 0 0;min-height:auto;}
 .signal-flow {display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
 .signal-flow .step {flex-direction:column;gap:7px;}
 .signal-flow .step:last-child {border-bottom:none;}
 .section {padding:75px 0 80px;}
 .section-head {grid-template-columns:1fr;gap:11px;}
 .section-index {padding:0;}
 .research-layout {grid-template-columns:1fr;gap:20px;}
 .contact-grid {grid-template-columns:1fr;gap:8px;}
}
@media (max-width: 550px) {
 .container {width:calc(100% - 36px);}
 .brand-mark {font-size:24px;}
 .brand-sub {font-size:8px;letter-spacing:.17em;}
 .bsm-indicator {font-size:9px;}
 .lang-switch {padding-left:13px;}
 .site-nav {gap:10px 17px;flex-wrap:wrap;justify-content:flex-start;overflow-x:visible;white-space:normal;padding-bottom:2px;}
 .hero {padding:65px 0 64px;}
 h1 {font-size:clamp(46px,11vw,69px);letter-spacing:-.063em;}
 .hero-copy {font-size:17px;}
 .hero-actions {gap:11px;}
 .btn {width:100%;}
 .signal-flow {grid-template-columns:1fr;gap:0;}
 .signal-flow .step {flex-direction:row;gap:15px;}
 .signal-flow .step:last-child {border-bottom:1px solid var(--line);}
 .section {padding:63px 0 68px;}
 h2 {font-size:clamp(36px,8.5vw,49px);}
 .two-up,.three-up,.archive-grid {grid-template-columns:1fr;gap:10px;}
 .era {padding-right:0;}
 .problem {padding:21px 0 13px;}
 .problem h3 {margin-top:15px;}
 .process-row {grid-template-columns:36px 1fr;gap:10px 18px;}
 .process-row p {grid-column:2;}
 .downloads {gap:20px;}
 .footer-grid {flex-direction:column;gap:17px;}
 .footer-line {text-align:left;}
}
@media (prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto;}
 *,*::before,*::after {transition:none!important;animation:none!important;}
}
