:root{
  --brand:#ffbb00;
  --dark:#333333;
  --bg:#ffffff;
  --muted:#666;
  --max-width:960px;
}
*{box-sizing:border-box}
body{font-family:Arial,Helvetica,sans-serif;color:var(--dark);background:var(--bg);margin:0}
header{background:#fff;border-bottom:1px solid #eee}
nav{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px}
.logo{font-weight:700;color:var(--dark);text-decoration:none;font-size:1.1rem}
.nav-links{list-style:none;margin:0;padding:0;display:flex;gap:12px}
.nav-links a{text-decoration:none;color:var(--dark);padding:6px 8px;border-radius:4px}
.nav-links a:hover{background:#f6f6f6}
.container{max-width:var(--max-width);margin:28px auto;padding:0 16px}
.hero{background:linear-gradient(90deg,var(--brand),#ffd94d);color:var(--dark);padding:36px;border-radius:8px}
.hero h1{margin:0 0 8px;font-size:2rem}
.lead{margin:0 0 12px;color:var(--dark)}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.btn{display:inline-block;padding:10px 14px;border-radius:6px;background:#fff;color:var(--dark);text-decoration:none;border:1px solid #ddd}
.btn.primary{background:var(--brand);color:#111;border:0}
.overview,.page{margin-top:20px}
.ops-list{list-style:none;padding:0;margin:0}
.ops-list li{padding:8px 0;border-bottom:1px solid #f0f0f0}
footer{max-width:var(--max-width);margin:30px auto;padding:14px;color:var(--muted);font-size:0.9rem}

/* simple content cards used on rail page */
.content{max-width:var(--max-width);margin:18px auto;padding:0 16px}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.service-card{border:1px solid #eee;padding:14px;border-radius:8px;background:#fff}
.route-list{display:grid;gap:10px}
.route-item{padding:10px;border-radius:6px;border:1px solid #f1f1f1;background:#fff}
.status-active{color:green;font-weight:600}
.status-planned{color:#b56500}

@media(max-width:620px){.nav-links{display:none}.hero h1{font-size:1.4rem}}
