/* modern.css — the "MODERNIZE" skin. Console-graphite + amber, the PatchBay
   retail brand: dark, quiet, mono readouts, generous space. */

.theme-modern body {
  background: #0e0f13;
  color: #e7e8ec;
  font-family: -apple-system, "Inter", "Segoe UI", system-ui, sans-serif;
  font-size: 17px; line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
.theme-modern a { color: #f5a623; }
.theme-modern #masthead, .theme-modern .panel, .theme-modern #colophon {
  max-width: 1080px; margin: 0 auto; padding: 64px 28px;
}
.theme-modern .band { background: #14161c; max-width: none; }
.theme-modern .band > * { max-width: 1080px; margin-left:auto; margin-right:auto; }

/* toggle */
.theme-modern #toggle-era {
  background: rgba(245,166,35,.12); color: #f5a623; border: 1px solid rgba(245,166,35,.5);
  border-radius: 999px; padding: 8px 16px; font: 600 13px/1 -apple-system, Inter, sans-serif;
  backdrop-filter: blur(6px); transition: background .2s;
}
.theme-modern #toggle-era:hover { background: rgba(245,166,35,.22); }

/* header — sticky slim bar */
.theme-modern #masthead {
  position: sticky; top: 0; z-index: 40; padding: 14px 28px;
  background: rgba(14,15,19,.82); backdrop-filter: blur(12px);
  border-bottom: 1px solid #23252d; display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.theme-modern .brand { display: flex; align-items: center; gap: 12px; }
.theme-modern .logo-img { width: 40px; height: 40px; border-radius: 9px; }
.theme-modern h1 { font-size: 22px; letter-spacing: -.02em; margin: 0; }
.theme-modern .tm { display: none; }
.theme-modern .tagline, .theme-modern .secure-badge { display: none; }
.theme-modern #mainnav { display: flex; gap: 20px; flex-wrap: wrap; }
.theme-modern #mainnav a { color: #a7abb6; font-size: 14px; font-weight: 500; }
.theme-modern #mainnav a:hover { color: #fff; }
.theme-modern #mainnav a.cta { color: #0e0f13; background: #f5a623; padding: 7px 14px; border-radius: 8px; font-weight: 600; }

/* hero — full bleed */
.theme-modern #hero { padding: 0; max-width: none; }
.theme-modern .hero-video { position: relative; height: min(78vh, 720px); overflow: hidden; }
.theme-modern .hero-video video { width: 100%; height: 100%; object-fit: cover; }
.theme-modern .hero-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14,15,19,.25) 0%, rgba(14,15,19,.55) 55%, #0e0f13 100%); }
.theme-modern .hero-copy { position: absolute; inset: auto 0 0 0; max-width: 1080px; margin: 0 auto; padding: 0 28px 56px; }
.theme-modern .hero-h { font-size: clamp(34px, 6vw, 64px); letter-spacing: -.03em; }
.theme-modern .hero-sub { font-size: 20px; color: #c2c6d0; max-width: 620px; }
.theme-modern .hero-btns { margin-top: 22px; }

/* section headings */
.theme-modern .sect-h { font-size: clamp(26px, 4vw, 40px); letter-spacing: -.02em; }
.theme-modern .sect-h em, .theme-modern .hero-h em { color: #f5a623; font-style: normal; }
.theme-modern .lede { font-size: 20px; color: #b7bcc7; max-width: 760px; margin-inline: auto; }

/* buttons */
.theme-modern .btn { display:inline-block; border-radius: 10px; padding: 12px 22px; margin: 6px 8px 6px 0; font-weight: 600; font-size: 16px; transition: transform .12s, background .2s; }
.theme-modern .btn:hover { transform: translateY(-1px); }
.theme-modern .btn-primary { background: #f5a623; color: #0e0f13; }
.theme-modern .btn-primary:hover { background: #ffb735; }
.theme-modern .btn-ghost { border: 1px solid #33363f; color: #e7e8ec; }
.theme-modern .btn.big { padding: 15px 26px; font-size: 17px; }

/* media framing */
.theme-modern .col-video video, .theme-modern .film video {
  border-radius: 14px; border: 1px solid #23252d; box-shadow: 0 24px 60px rgba(0,0,0,.5); width: 100%;
}
.theme-modern .two-col { gap: 48px; }

/* cards */
.theme-modern .cards { margin-top: 36px; }
.theme-modern .card { background: #14161c; border: 1px solid #23252d; border-radius: 14px; padding: 26px; text-align: left; }
.theme-modern .card:hover { border-color: #3a3d47; }
.theme-modern .card-ico { font-size: 30px; }
.theme-modern .card h4 { color: #fff; font-size: 19px; margin-top: 10px; }
.theme-modern .card p { color: #a7abb6; margin: 0; }
.theme-modern ul.tick { list-style: none; padding: 0; }
.theme-modern ul.tick li { padding-left: 26px; position: relative; margin: 8px 0; color: #c2c6d0; }
.theme-modern ul.tick li::before { content: "→"; color: #f5a623; position: absolute; left: 0; }

/* forge */
.theme-modern .forge-flow { margin-top: 34px; }
.theme-modern .forge-step { background:#14161c; border:1px solid #23252d; border-radius:12px; padding:22px; text-align:center; max-width:220px; }
.theme-modern .forge-step .num { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; background:#f5a623; color:#0e0f13; border-radius:50%; font-weight:700; margin-bottom:8px; }
.theme-modern .forge-arrow { color:#f5a623; font-size:28px; }

/* terminal */
.theme-modern .terminal { max-width: 820px; margin: 34px auto 0; border-radius: 12px; overflow: hidden; border: 1px solid #23252d; background: #0a0b0e; }
.theme-modern .term-bar { background: #14161c; color: #a7abb6; font: 12px/1.6 ui-monospace, monospace; padding: 10px 14px; border-bottom: 1px solid #23252d; }
.theme-modern .term-bar span { display:inline-block; width:11px; height:11px; border-radius:50%; margin-right:5px; vertical-align:middle; }
.theme-modern .term-bar span:nth-child(1){background:#ff5f56;} .theme-modern .term-bar span:nth-child(2){background:#ffbd2e;} .theme-modern .term-bar span:nth-child(3){background:#27c93f;}
.theme-modern .term-body { font: 14px/1.7 ui-monospace, monospace; color: #d6dae2; padding: 18px; white-space: pre-wrap; margin:0; }
.theme-modern .term-body .p { color:#7fd1ff; } .theme-modern .term-body .a { color:#f5a623; }

/* film + jukebox */
.theme-modern .film { max-width: 900px; margin: 0 auto; }
.theme-modern .jukebox { max-width: 720px; margin: 34px auto 0; background:#14161c; border:1px solid #23252d; border-radius:14px; padding: 22px; }
.theme-modern .jb-head { color:#f5a623; font-weight:600; margin-bottom: 14px; }
.theme-modern .jb-btn { background:#0e0f13; color:#e7e8ec; border:1px solid #33363f; border-radius:8px; padding:9px 14px; margin:4px; cursor:pointer; font-size:14px; }
.theme-modern .jb-btn:hover { border-color:#f5a623; color:#f5a623; }
.theme-modern .jb-now { margin-top:12px; color:#a7abb6; font: 13px ui-monospace, monospace; }

/* faq */
.theme-modern .faq { max-width: 820px; margin: 24px auto 0; }
.theme-modern .faq dt { font-weight: 600; color:#fff; font-size: 18px; margin-top: 22px; }
.theme-modern .faq dd { margin: 6px 0 0; color:#a7abb6; }
.theme-modern .small { font-size:14px; } .theme-modern .dim { color:#7c818c; }

/* footer */
.theme-modern #colophon { text-align: center; border-top: 1px solid #23252d; color:#7c818c; }
.theme-modern .credit { font-size: 13px; color:#a7abb6; }
.theme-modern .fine { font-size: 12px; }
