:root{--ink:#071321;--ink-2:#0d1c2e;--text:#f6f8fb;--muted:#b8c3cf;--line:rgba(255,255,255,.13);--orange:#d85b00;--orange-2:#f2761b;--paper:#f8f8f5;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}.shell{width:min(var(--max),calc(100% - 48px));margin:0 auto}.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:10px 14px;color:var(--ink);background:#fff;border-radius:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{position:absolute;inset:0 0 auto 0;z-index:20;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(3,11,20,.88),rgba(3,11,20,.36),transparent)}.header-inner{min-height:92px;display:grid;grid-template-columns:210px 1fr auto;align-items:center;gap:32px}.brand{display:inline-flex;width:228px;height:72px;align-items:center;text-decoration:none}.brand img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}.primary-nav{justify-self:center;display:flex;gap:34px;align-items:center}.primary-nav a,.beta-link{text-decoration:none;font-size:.92rem;font-weight:650;letter-spacing:.01em}.primary-nav a{color:#dbe4ec;padding:32px 0 28px;border-bottom:2px solid transparent}.primary-nav a:hover,.primary-nav a:focus-visible,.primary-nav a.active{color:#fff;border-bottom-color:var(--orange-2)}.beta-link{color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:10px;padding:11px 16px;background:rgba(255,255,255,.06)}.beta-link:hover,.beta-link:focus-visible{border-color:var(--orange-2);background:rgba(242,118,27,.10)}.hero{position:relative;min-height:820px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 78% 47%,rgba(216,91,0,.12),transparent 32%),radial-gradient(circle at 72% 28%,rgba(48,83,118,.20),transparent 28%),linear-gradient(135deg,#06101c 0%,#091827 46%,#071321 100%)}.hero::after{content:"";position:absolute;inset:auto 0 0;height:180px;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(0,0,0,.22))}.hero-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,transparent 0%,black 24%,black 84%,transparent 100%)}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:76px;align-items:center;padding-top:106px}.hero-copy{max-width:700px}.eyebrow{margin:0 0 24px;color:var(--orange-2);font-size:.82rem;font-weight:800;letter-spacing:.16em}h1{margin:0;max-width:760px;font-size:clamp(3.8rem,6.6vw,6.7rem);line-height:.94;letter-spacing:-.055em;font-weight:780}h1 span{color:var(--orange-2)}.lede{max-width:650px;margin:30px 0 0;color:#e2e8ef;font-size:clamp(1.1rem,1.55vw,1.32rem);line-height:1.62}.principle{max-width:650px;margin:17px 0 0;color:var(--muted);font-size:1rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.button{min-height:50px;display:inline-flex;align-items:center;gap:13px;padding:0 20px;border-radius:9px;text-decoration:none;font-weight:760;border:1px solid transparent}.button-primary{background:linear-gradient(180deg,var(--orange-2),var(--orange));box-shadow:0 12px 34px rgba(216,91,0,.22)}.button-primary:hover,.button-primary:focus-visible{filter:brightness(1.08)}.button-secondary{color:#f3f7fb;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.035)}.button-secondary:hover,.button-secondary:focus-visible{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.07)}.beta-status{display:grid;grid-template-columns:12px 1fr;gap:13px;align-items:start;max-width:600px;margin-top:38px;padding-top:25px;border-top:1px solid var(--line)}.status-dot{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--orange-2);box-shadow:0 0 0 5px rgba(242,118,27,.10)}.beta-status strong,.beta-status span{display:block}.beta-status strong{margin-bottom:6px;font-size:1rem}.beta-status span{color:var(--muted);font-size:.93rem;line-height:1.5}.place-mark{position:relative;min-height:530px;display:flex;align-items:center;justify-content:center}.place-mark::before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;border:1px solid rgba(255,255,255,.07);box-shadow:0 0 0 70px rgba(255,255,255,.015),0 0 0 140px rgba(255,255,255,.01)}.place-mark svg{position:relative;z-index:2;width:100%;max-width:630px;overflow:visible;filter:drop-shadow(0 24px 34px rgba(0,0,0,.32))}.station-lines,.station-accent{fill:none;stroke-linecap:square;stroke-linejoin:miter}.station-lines{stroke:rgba(240,245,249,.64);stroke-width:4}.station-accent{stroke:var(--orange-2);stroke-width:6}.location-lockup{position:absolute;right:5%;bottom:8%;z-index:3;text-align:right}.location-lockup span{display:block;color:#fff;font-size:4.2rem;font-weight:800;letter-spacing:-.06em}.location-lockup small{display:block;margin-top:-4px;color:var(--orange-2);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}:focus-visible{outline:3px solid #ffab65;outline-offset:4px}@media(max-width:980px){.header-inner{grid-template-columns:auto 1fr auto}.primary-nav{display:none}.hero{min-height:auto;padding:130px 0 70px}.hero-layout{grid-template-columns:1fr;gap:30px;padding-top:0}.place-mark{min-height:370px;order:-1;opacity:.78}.place-mark svg{max-width:500px}.location-lockup{right:8%;bottom:2%}}@media(max-width:620px){.shell{width:min(100% - 28px,var(--max))}.header-inner{min-height:78px;grid-template-columns:1fr auto}.brand{width:178px;height:58px}.beta-link{padding:9px 11px;font-size:.82rem}.hero{padding-top:112px}h1{font-size:clamp(3.05rem,15vw,4.65rem);line-height:.95}.lede{font-size:1.08rem}.place-mark{min-height:280px;margin:-18px -16px 0}.place-mark::before{width:280px;height:280px;box-shadow:0 0 0 42px rgba(255,255,255,.012)}.location-lockup{right:8%;bottom:-2%}.location-lockup span{font-size:3rem}.hero-actions{display:grid}.button{justify-content:space-between;width:100%}.beta-status{margin-top:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Product imagery slots */
.product-section {
  position: relative;
  color: #f6f8fb;
  background:
    radial-gradient(circle at 78% 18%, rgba(216,91,0,.08), transparent 28%),
    linear-gradient(180deg, #0a1827 0%, #0d1c2e 52%, #0b1826 100%);
  padding: 92px 0 64px;
  border-top: 1px solid rgba(255,255,255,.07);
}
.product-layout {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 70px;
  align-items: center;
}
.product-section .eyebrow { color: var(--orange-2); }
.product-section h2,
.beta-band h2 {
  margin: 0;
  letter-spacing: -.04em;
}
.product-section h2 { font-size: clamp(3rem, 5vw, 5.2rem); }
.product-lede {
  margin: 18px 0 12px;
  font-size: 1.25rem;
  line-height: 1.55;
  font-weight: 650;
}
.product-copy > p:not(.eyebrow):not(.product-lede) {
  color: #b8c3cf;
  line-height: 1.7;
}
.product-points {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 30px;
}
.product-points div {
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.14);
}
.product-points strong,
.product-points span { display: block; }
.product-points strong { margin-bottom: 6px; }
.product-points span { color: #aeb9c5; font-size: .92rem; line-height: 1.45; }

.screenshot-frame {
  margin: 0;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background: #071321;
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
}
.screenshot-frame img {
  display: block;
  width: 100%;
  height: auto;
}
.screenshot-frame figcaption {
  padding: 12px 15px;
  color: #aeb9c5;
  border-top: 1px solid rgba(255,255,255,.1);
  font-size: .86rem;
}
.screenshot-placeholder {
  min-height: 430px;
  display: grid;
  place-content: center;
  gap: 8px;
  text-align: center;
  border: 1px dashed rgba(255,255,255,.2);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(242,118,27,.07), transparent 50%),
    rgba(255,255,255,.025);
  color: #aeb9c5;
}
.screenshot-placeholder span {
  font-weight: 750;
  color: #eef3f8;
}
.screenshot-placeholder small { font-size: .9rem; }
.screenshot-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 22px;
  margin-top: 34px;
}
.screenshot-strip:empty { display: none; }
.screenshot-frame-small { border-radius: 12px; }

.beta-band {
  color: #f6f8fb;
  background: linear-gradient(180deg, #0b1826 0%, #071321 100%);
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 36px 0 40px;
}
.beta-band-inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 40px;
  align-items: center;
}
.beta-band .eyebrow { margin-bottom: 8px; }
.beta-band h2 { font-size: clamp(1.8rem, 3vw, 2.7rem); }
.beta-facts {
  min-width: 290px;
  padding-left: 28px;
  border-left: 1px solid rgba(255,255,255,.18);
}
.beta-facts strong,
.beta-facts span { display: block; }
.beta-facts span { margin-top: 6px; color: #b8c3cf; }

/* Admin */
.admin-page {
  min-height: 100vh;
  color: #eef3f8;
  background: #071321;
}
.admin-shell {
  width: min(1120px, calc(100% - 36px));
  margin: 0 auto;
  padding: 54px 0;
}
.admin-header {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: end;
  margin-bottom: 32px;
}
.admin-header h1,
.admin-card h1 {
  margin: 0;
  font-size: clamp(2.3rem, 5vw, 4rem);
}
.admin-header p:not(.eyebrow) { color: #b8c3cf; }
.admin-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}
.admin-card {
  padding: 24px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: #0d1c2e;
}
.admin-card h2 {
  margin: 0 0 18px;
  font-size: 1.15rem;
}
.admin-card form {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}
.admin-card label {
  display: grid;
  gap: 7px;
  color: #c9d3dd;
  font-size: .9rem;
  font-weight: 650;
}
.admin-card label span { color: #8d9aaa; font-weight: 500; }
.admin-card input[type="text"],
.admin-card input[type="password"],
.admin-card input[type="file"] {
  width: 100%;
  color: #eef3f8;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 8px;
  background: #071321;
  padding: 11px 12px;
}
.admin-preview {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 9px;
  border: 1px solid rgba(255,255,255,.12);
  background: #071321;
}
.admin-empty {
  display: grid;
  place-items: center;
  aspect-ratio: 16/9;
  color: #8e9aa7;
  border: 1px dashed rgba(255,255,255,.2);
  border-radius: 9px;
}
.admin-notice,
.admin-error {
  padding: 12px 14px;
  border-radius: 9px;
  margin: 0 0 22px;
}
.admin-notice { background: rgba(44,166,91,.15); border: 1px solid rgba(44,166,91,.35); }
.admin-error { background: rgba(215,63,63,.15); border: 1px solid rgba(215,63,63,.35); }
.admin-delete-form { margin-top: 10px !important; }
.admin-delete {
  justify-self: start;
  padding: 0;
  color: #f1a2a2;
  border: 0;
  background: transparent;
  cursor: pointer;
  text-decoration: underline;
}
.admin-login { max-width: 480px; margin: 8vh auto 0; }

@media (max-width: 900px) {
  .product-layout { grid-template-columns: 1fr; gap: 38px; }
  .product-points { grid-template-columns: 1fr; }
  .beta-band-inner { grid-template-columns: 1fr; }
  .beta-facts { padding: 20px 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .product-section { padding-top: 62px; }
  .screenshot-placeholder { min-height: 260px; }
  .screenshot-strip { grid-template-columns: 1fr; }
  .admin-header { display: grid; }
}

.product-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: min(1240px, calc(100% - 48px));
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent, rgba(242,118,27,.55), transparent);
}

.admin-intro {
  color: #b8c3cf;
  line-height: 1.6;
}
.admin-header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
