/* 首页既有布局：保留线上基线的 Logo、导航、按钮和内容层级。 */
:root{font-family:var(--meow-font-sans);color:#172033;background:#f7f9fc;font-synthesis:none;line-height:1.5;--blue:#2563eb;--ink:#172033;--muted:#667085;--line:#e5eaf2;--panel:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fff 0,#f7f9fc 58%,#fff 100%)}a{color:inherit;text-decoration:none}.page-shell,.site-header{width:min(1180px,calc(100% - 48px));margin:0 auto}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);white-space:nowrap}.brand img{width:38px;height:38px;object-fit:contain}.desktop-nav{display:flex;gap:24px;color:#4b5565;font-size:14px}.desktop-nav a:hover,.site-footer a:hover,.text-link:hover{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:16px}.text-link{font-size:14px;color:#4b5565}.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;border-radius:7px;border:1px solid transparent;font-size:14px;font-weight:600;transition:.2s ease}.button-primary{background:var(--blue);color:#fff;box-shadow:0 8px 18px #2563eb24}.button-primary:hover{background:#1d4ed8;transform:translateY(-1px)}.button-secondary{color:var(--blue);border-color:#bdd0ff;background:#fff}.button-secondary:hover{background:#eff5ff}.button-light{background:#fff;color:#1d4ed8}.menu-button{display:none;border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 11px;color:var(--ink)}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:74px;align-items:center;padding:100px 0 88px}.eyebrow{margin:0 0 14px;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.hero h1{margin:0;font-size:clamp(42px,5.4vw,72px);line-height:1.12;letter-spacing:-.045em}.hero h1 em,h2 em{font-style:normal;color:var(--blue)}.hero-lead{margin:25px 0 8px;font-size:20px;color:#27344a;font-weight:600}.hero-support{margin:0;color:var(--muted)}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-panel{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:0 22px 60px #0f172a12}.panel-heading{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:20px;border-bottom:1px solid var(--line);font-weight:700}.panel-heading small{font-size:12px;color:var(--muted);font-weight:400}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.feature-list a{padding:17px;border-radius:10px;background:#f7f9fd;border:1px solid transparent}.feature-list a:hover{border-color:#cbd9ff;background:#f2f6ff}.feature-list strong,.feature-list span{display:block}.feature-list strong{font-size:15px;color:#1f2937}.feature-list span{margin-top:7px;color:var(--muted);font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0}.stats div{padding:0 26px;border-right:1px solid var(--line)}.stats div:first-child{padding-left:0}.stats div:last-child{border-right:0}.stats strong,.stats span{display:block}.stats strong{font-size:30px;color:var(--blue)}.stats span{margin-top:3px;color:var(--muted);font-size:13px}.section{padding:112px 0}.section-heading{max-width:650px}.section-heading h2,.download-section h2,.cta h2{margin:0;font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-.03em}.section-heading>p:last-child{color:var(--muted);margin-top:16px}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.capability-grid a{padding:27px;border-radius:12px;background:#fff;border:1px solid var(--line);min-height:190px;transition:.2s ease}.capability-grid a:hover{border-color:#b8cbff;box-shadow:0 10px 26px #0f172a0d;transform:translateY(-2px)}.capability-grid span{color:var(--blue);font-size:12px;font-weight:700}.capability-grid h3{margin:22px 0 8px;font-size:19px}.capability-grid p{margin:0;color:var(--muted);font-size:14px}.download-section{background:#12213d;color:#fff}.download-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:72px 0}.download-section .eyebrow{color:#9ebcff}.download-section h2{font-size:36px}.download-section p:not(.eyebrow){color:#bec9dc;margin-bottom:0}.cta{text-align:center;padding:112px 0}.cta .button{margin-top:28px}.site-footer{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px;padding:30px 0 36px;border-top:1px solid var(--line);font-size:13px}.site-footer nav{display:flex;gap:18px;color:var(--muted)}.site-footer small{color:#667085}.site-footer .brand img{width:32px;height:32px}.site-footer .brand{font-size:14px}@media(max-width:900px){.desktop-nav{gap:12px}.hero{gap:35px}.site-footer{grid-template-columns:1fr 1fr}}@media(max-width:760px){.page-shell,.site-header{width:min(100% - 32px,1180px)}.site-header{height:68px}.desktop-nav,.header-actions .text-link,.header-actions .button{display:none}.menu-button{display:block}.mobile-menu{display:none;position:absolute;z-index:5;right:16px;left:16px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 14px 30px #0f172a14}.mobile-menu.is-open{display:grid}.mobile-menu a{padding:12px;border-radius:7px}.mobile-menu a:hover{background:#f2f6ff;color:var(--blue)}.hero{grid-template-columns:1fr;padding:65px 0 58px}.hero h1{font-size:45px}.hero-panel{margin-top:8px}.feature-list{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr;gap:22px}.stats div{padding:0;border-right:0}.section{padding:76px 0}.capability-grid{grid-template-columns:1fr;margin-top:28px}.download-inner{display:block;padding:60px 0}.download-section h2{font-size:32px}.download-inner .button{margin-top:25px}.cta{padding:78px 0}.site-footer{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.site-footer nav{flex-wrap:wrap;gap:12px 18px}}
.release-badge{display:inline-flex;align-items:center;min-height:30px;margin:0 0 20px;padding:0 14px;border:1px solid #cfe0ff;border-radius:999px;background:#edf4ff;color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.08em;box-shadow:0 6px 16px #2563eb14}.route-hero{padding:96px 0 78px;border-bottom:1px solid var(--line)}
.route-hero h1{max-width:820px;margin:0;font-size:clamp(40px,6vw,68px);line-height:1.12;letter-spacing:-.045em}
.route-hero>p:last-child{max-width:760px;margin:22px 0 0;color:var(--muted);font-size:18px;line-height:1.8}
.route-section{padding:82px 0 20px}
.route-section-heading{max-width:720px;margin-bottom:32px}
.route-section-heading h2{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-.03em}
.route-section-heading>p:last-child{margin:14px 0 0;color:var(--muted);line-height:1.75}
.route-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.route-card{min-height:180px;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 24px #0f172a08}
.route-card h3{margin:0;font-size:18px;line-height:1.4}
.route-card p{margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.75}
.route-card .button{margin-top:18px}
.route-card-list{display:grid;gap:7px;margin:16px 0 0;padding:0;list-style:none;color:#4b5565;font-size:13px;line-height:1.55}
.route-card-list li{position:relative;padding-left:17px}.route-card-list li::before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700}
.route-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.route-steps article{padding:20px;border-top:3px solid var(--blue);background:#fff;border-radius:0 0 12px 12px;box-shadow:0 8px 24px #0f172a08}.route-steps span{color:var(--blue);font-size:12px;font-weight:700}.route-steps h3{margin:18px 0 7px;font-size:16px}.route-steps p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.route-specs{display:grid;grid-template-columns:repeat(2,1fr);margin:0;border-top:1px solid var(--line)}.route-specs div{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.route-specs dt{color:var(--muted);font-size:14px}.route-specs dd{margin:0;color:var(--ink);font-size:14px}
.route-faqs{display:grid;gap:10px;max-width:820px}.route-faqs details{padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:#fff}.route-faqs summary{cursor:pointer;font-weight:700}.route-faqs p{margin:12px 0 0;color:var(--muted);line-height:1.75}
.route-cta{margin-top:82px;margin-bottom:90px;padding:62px 30px;text-align:center;border-radius:18px;background:#12213d;color:#fff}.route-cta .eyebrow{color:#9ebcff}.route-cta h2{margin:0;font-size:clamp(28px,4vw,42px)}.route-cta p:not(.eyebrow){margin:14px 0 24px;color:#bec9dc}.route-cta .button-primary{background:#fff;color:#1d4ed8}
.dynamic-section{padding-top:34px}.dynamic-section-body{min-height:72px}.dynamic-loading,.dynamic-empty{margin:0;padding:22px;border:1px dashed #cbd5e1;border-radius:12px;color:var(--muted);background:#fff}.dynamic-recommended{border-color:#9db7ff;box-shadow:0 12px 30px #2563eb1c}.dynamic-price{font-size:24px!important;font-weight:700;color:var(--blue)!important}.dynamic-price span{font-size:13px;font-weight:400;color:var(--muted)}.help-article-content{color:#334155;font-size:1.05rem;line-height:1.9;overflow-wrap:anywhere}.help-article-meta{color:#94a3b8;font-size:.82rem;margin-top:1.5rem}
@media(max-width:900px){.route-card-grid{grid-template-columns:repeat(2,1fr)}.route-steps{grid-template-columns:repeat(3,1fr)}.route-specs div{grid-template-columns:150px 1fr}}
@media(max-width:760px){.route-hero{padding:65px 0 55px}.route-hero h1{font-size:44px}.route-section{padding-top:62px}.route-card-grid,.route-steps,.route-specs{grid-template-columns:1fr}.route-specs div{grid-template-columns:1fr;gap:5px}.route-cta{margin-top:62px;margin-bottom:60px;padding:46px 22px}}
@media(max-width:760px){.mobile-menu{position:fixed;top:68px;z-index:50}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
.stats div{min-width:0}
:where(a,button,summary):focus-visible{outline:3px solid #1d4ed8;outline-offset:3px}
 .skip-link{position:absolute;left:16px;top:-48px;z-index:100;padding:10px 14px;border-radius:7px;background:#12213d;color:#fff;font-size:14px;font-weight:600;transition:top .2s ease}
 .skip-link:focus-visible{top:16px}
:root{--blue:var(--meow-brand-primary,#2563eb);--ink:var(--meow-color-text,#172033);--muted:var(--meow-color-text-muted,#667085);--line:var(--meow-color-border,#e5eaf2);--panel:var(--meow-color-surface,#fff)}
body.mobile-menu-open{overflow:hidden}
.mobile-menu-backdrop{display:none;position:fixed;inset:0;z-index:40;background:rgb(18 33 61 / .48);backdrop-filter:blur(2px)}
.mobile-menu-backdrop:not([hidden]){display:block}
.mobile-menu[hidden],.mobile-menu-backdrop[hidden]{display:none!important}
@media(max-width:760px){
  body.mobile-menu-open{position:fixed;top:calc(var(--mobile-menu-scroll-y,0px) * -1);width:100%;overflow:hidden}
  .site-header{position:relative;z-index:60;background:#fff}
  .mobile-menu{top:68px;z-index:50;max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);overflow-y:auto;overscroll-behavior:contain}
}

/* -------------------------------------------------------------------------
   Portal v2 · Signal / Control Surface
   The portal is a B2B operations product: quiet on the surface, precise in
   the details. Keep the official logo and existing routes; the visual system
   adds hierarchy and product context without inventing product claims.
   ------------------------------------------------------------------------- */
:root {
  --portal-ink: var(--meow-portal-ink, #0b1220);
  --portal-surface: var(--meow-portal-surface, #111c31);
  --portal-raised: var(--meow-portal-surface-raised, #182742);
  --portal-soft: var(--meow-portal-surface-soft, #eef3fb);
  --portal-line: var(--meow-portal-line, rgb(255 255 255 / 14%));
  --portal-grid: var(--meow-portal-grid, rgb(145 180 255 / 10%));
  --portal-signal: var(--meow-portal-signal, #6f9cff);
  --portal-cyan: var(--meow-portal-signal-cyan, #68d9ff);
  --portal-max: var(--meow-portal-max-width, 1240px);
}

html {
  overflow-x: hidden;
}

body {
  background: var(--meow-color-canvas, #f7f9fc);
  color: var(--portal-ink);
  overflow-x: clip;
}

.page-shell,
.site-header {
  width: min(var(--portal-max), calc(100% - 64px));
}

.site-header {
  height: 82px;
  border-bottom-color: var(--meow-color-border, #e5eaf2);
}

.brand {
  gap: 11px;
  letter-spacing: -0.02em;
}

.brand img {
  width: 40px;
  height: 40px;
}

.desktop-nav {
  gap: 28px;
  color: var(--meow-color-text-secondary, #334155);
  font-size: 13px;
  font-weight: 600;
}

.desktop-nav a,
.text-link,
.site-footer a {
  transition: color var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease);
}

.desktop-nav a:hover,
.site-footer a:hover,
.text-link:hover {
  color: var(--meow-brand-primary, #2563eb);
}

.header-actions {
  gap: 18px;
}

.button {
  min-height: 44px;
  padding: 0 20px;
  border-radius: var(--meow-radius-sm, 6px);
  letter-spacing: -0.01em;
}

.button-primary {
  background: var(--meow-brand-primary, #2563eb);
  box-shadow: var(--meow-shadow-brand, 0 8px 18px rgb(37 99 235 / 14%));
}

.button-primary:hover {
  background: var(--meow-brand-primary-hover, #1d4ed8);
  transform: translateY(-2px);
}

.button-secondary {
  color: var(--meow-brand-primary, #2563eb);
  border-color: var(--meow-color-border-strong, #cbd5e1);
}

.button-secondary:hover {
  border-color: var(--meow-brand-primary, #2563eb);
  background: var(--meow-brand-primary-soft, #eff5ff);
}

.hero {
  position: relative;
  overflow: clip;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(40px, 7vw, 104px);
  padding: 96px 0 76px;
}

.hero::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  right: -18vw;
  width: 62vw;
  height: 100%;
  pointer-events: none;
  background: radial-gradient(circle at 50% 38%, rgb(37 99 235 / 8%), transparent 66%);
}

.eyebrow {
  margin-bottom: 16px;
  color: var(--meow-brand-primary, #2563eb);
  font-size: 11px;
  letter-spacing: 0.16em;
}

.hero h1 {
  max-width: 640px;
  font-size: clamp(44px, 5.8vw, 78px);
  letter-spacing: -0.065em;
  line-height: 1.04;
}

.hero h1 em,
h2 em {
  color: var(--meow-brand-primary, #2563eb);
}

.hero-lead {
  max-width: 560px;
  margin-top: 28px;
  color: var(--meow-color-text-secondary, #334155);
  font-size: 19px;
  line-height: 1.65;
}

.hero-support {
  max-width: 500px;
  margin-top: 12px;
  color: var(--meow-color-text-muted, #667085);
  font-size: 13px;
}

.hero-actions {
  margin-top: 34px;
}

.hero-visual {
  position: relative;
  overflow: hidden;
  aspect-ratio: var(--meow-media-ratio-wide, 16 / 9);
  min-height: 0;
  padding: clamp(18px, 2.4vw, 30px);
  border: 1px solid rgb(145 180 255 / 28%);
  border-radius: var(--meow-radius-2xl, 24px);
  background-color: var(--portal-surface);
  background-image: linear-gradient(var(--portal-grid) 1px, transparent 1px), linear-gradient(90deg, var(--portal-grid) 1px, transparent 1px);
  background-position: 0 0, 0 0;
  background-size: 34px 34px;
  box-shadow: 0 28px 80px rgb(11 18 32 / 22%);
  color: #fff;
  isolation: isolate;
}

.hero-visual::after {
  content: '';
  position: absolute;
  right: -12%;
  bottom: -40%;
  z-index: -1;
  width: 68%;
  aspect-ratio: 1;
  border: 1px solid rgb(104 217 255 / 22%);
  border-radius: 50%;
  box-shadow: 0 0 0 24px rgb(104 217 255 / 4%), 0 0 0 48px rgb(104 217 255 / 3%);
}

.surface-chrome {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--portal-line);
  color: rgb(255 255 255 / 68%);
  font-size: 11px;
  letter-spacing: 0.02em;
}

.surface-brand-mark {
  display: inline-grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 24%);
  border-radius: 7px;
  color: var(--portal-cyan);
  font: 700 9px/1 var(--meow-font-mono, monospace);
  letter-spacing: 0.04em;
}

.surface-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #a8f0cb;
  white-space: nowrap;
}

.surface-live i,
.status-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3bd890;
  box-shadow: 0 0 0 4px rgb(59 216 144 / 12%);
}

.hero-visual .panel-heading {
  padding: 22px 0 15px;
  border-bottom-color: var(--portal-line);
  color: #fff;
}

.hero-visual .panel-heading small {
  color: rgb(255 255 255 / 52%);
}

.hero-visual .feature-list {
  position: relative;
  z-index: 1;
  gap: 10px;
  margin-top: 14px;
}

.hero-visual .feature-list a {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgb(255 255 255 / 10%);
  border-radius: var(--meow-radius-md, 8px);
  background: rgb(255 255 255 / 6%);
  transition: background var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease), border-color var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease), transform var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease);
}

.hero-visual .feature-list a:hover {
  border-color: rgb(104 217 255 / 44%);
  background: rgb(104 217 255 / 10%);
  transform: translateY(-2px);
}

.hero-visual .feature-list strong {
  color: #fff;
  font-size: 14px;
}

.hero-visual .feature-list span {
  overflow-wrap: anywhere;
  color: rgb(255 255 255 / 56%);
  line-height: 1.55;
}

.surface-status-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
  color: rgb(255 255 255 / 56%);
  font-size: 10px;
}

.surface-status-row span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #a8f0cb;
}

.surface-signal {
  position: absolute;
  z-index: -1;
  display: block;
  width: 140px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--portal-cyan));
  opacity: .7;
  transform: rotate(-28deg);
}

.signal-one { top: 28%; right: -16px; }
.signal-two { bottom: 16%; left: -30px; transform: rotate(24deg); opacity: .35; }

.stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 22px 0;
  border-color: var(--meow-color-border, #e5eaf2);
}

.stats div {
  padding: 4px 28px;
}

.stats strong {
  color: var(--portal-ink);
  font-size: 18px;
  letter-spacing: -0.025em;
}

.stats span {
  margin-top: 6px;
  color: var(--meow-color-text-muted, #667085);
  font-size: 12px;
}

.section {
  padding: 120px 0 86px;
}

.section-heading {
  display: grid;
  grid-template-columns: minmax(0, 0.58fr) minmax(0, 1fr);
  column-gap: 40px;
  max-width: 960px;
  align-items: end;
}

.section-heading .eyebrow {
  grid-row: 1 / span 2;
  align-self: start;
  margin-top: 8px;
}

.section-heading h2 {
  max-width: 720px;
  font-size: clamp(34px, 4.2vw, 56px);
  letter-spacing: -0.055em;
}

.section-heading > p:last-child {
  max-width: 620px;
  margin: 18px 0 0;
  color: var(--meow-color-text-muted, #667085);
  line-height: 1.8;
}

.capability-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 64px;
  border-top: 1px solid var(--meow-color-border, #e5eaf2);
  border-left: 1px solid var(--meow-color-border, #e5eaf2);
}

.capability-grid a {
  position: relative;
  min-height: 214px;
  padding: 28px 28px 30px;
  border: 0;
  border-right: 1px solid var(--meow-color-border, #e5eaf2);
  border-bottom: 1px solid var(--meow-color-border, #e5eaf2);
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.capability-grid a::after {
  content: '↗';
  position: absolute;
  top: 27px;
  right: 27px;
  color: var(--meow-color-text-disabled, #98a2b3);
  font-size: 18px;
  transition: color var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease), transform var(--meow-motion-base, 180ms) var(--meow-ease-standard, ease);
}

.capability-grid a:hover {
  border-color: var(--meow-color-border, #e5eaf2);
  background: #fff;
  box-shadow: inset 0 3px 0 var(--meow-brand-primary, #2563eb);
  transform: none;
}

.capability-grid a:hover::after {
  color: var(--meow-brand-primary, #2563eb);
  transform: translate(2px, -2px);
}

.capability-grid span {
  color: var(--meow-color-text-muted, #667085);
  font: 700 11px/1 var(--meow-font-mono, monospace);
  letter-spacing: .08em;
}

.capability-grid h3 {
  margin: 42px 0 10px;
  color: var(--portal-ink);
  font-size: 20px;
  letter-spacing: -0.025em;
}

.capability-grid p {
  max-width: 270px;
  color: var(--meow-color-text-muted, #667085);
  font-size: 13px;
  line-height: 1.75;
}

.workspace-section {
  display: grid;
  grid-template-columns: minmax(220px, .42fr) minmax(0, 1.58fr);
  gap: clamp(36px, 7vw, 96px);
  align-items: center;
  padding: 60px 0 126px;
}

.workspace-copy h2 {
  max-width: 400px;
  margin: 0;
  color: var(--portal-ink);
  font-size: clamp(30px, 3.5vw, 46px);
  line-height: 1.12;
  letter-spacing: -0.055em;
}

.workspace-copy > p:not(.eyebrow) {
  max-width: 370px;
  margin: 20px 0 0;
  color: var(--meow-color-text-muted, #667085);
  font-size: 14px;
  line-height: 1.8;
}

.workspace-link {
  display: inline-flex;
  gap: 7px;
  margin-top: 28px;
  color: var(--meow-brand-primary, #2563eb);
  font-size: 13px;
  font-weight: 700;
}

.workspace-preview {
  overflow: hidden;
  aspect-ratio: var(--meow-media-ratio-wide, 16 / 9);
  border: 1px solid #cad6e9;
  border-radius: var(--meow-radius-xl, 16px);
  background: var(--portal-soft);
  box-shadow: 0 22px 58px rgb(11 18 32 / 12%);
}

.workspace-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 14%;
  min-height: 32px;
  padding: 0 18px;
  border-bottom: 1px solid #d6e0ee;
  background: #fff;
  color: #62728a;
  font: 600 10px/1 var(--meow-font-mono, monospace);
}

.toolbar-actions {
  display: inline-flex;
  gap: 5px;
}

.toolbar-actions i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #c5d0df;
}

.workspace-body {
  display: grid;
  grid-template-columns: 18% 82%;
  height: 86%;
}

.workspace-rail {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 10px;
  background: var(--portal-surface);
  color: rgb(255 255 255 / 48%);
  font-size: 10px;
}

.rail-logo {
  display: grid;
  width: 22px;
  height: 22px;
  margin-bottom: 16px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 22%);
  border-radius: 6px;
  color: var(--portal-cyan);
  font-weight: 800;
}

.rail-item {
  padding: 7px 5px;
  border-left: 2px solid transparent;
  white-space: nowrap;
}

.rail-item.is-active {
  border-left-color: var(--portal-cyan);
  color: #fff;
  background: rgb(104 217 255 / 9%);
}

.workspace-content {
  min-width: 0;
  padding: 18px 22px;
  background: #f8fafd;
}

.workspace-content-head,
.workspace-table-head,
.workspace-table > div:not(.workspace-table-head) {
  display: grid;
  grid-template-columns: 1.5fr 1fr .7fr;
  gap: 14px;
  align-items: center;
}

.workspace-content-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 18px;
  border-bottom: 1px solid #dce4ef;
}

.workspace-content-head strong,
.workspace-content-head small {
  display: block;
}

.workspace-content-head strong {
  color: var(--portal-ink);
  font-size: 13px;
}

.workspace-content-head small {
  margin-top: 5px;
  color: #8290a4;
  font-size: 9px;
}

.workspace-content-head b {
  padding: 7px 9px;
  border-radius: 5px;
  background: var(--meow-brand-primary, #2563eb);
  color: #fff;
  font-size: 9px;
  white-space: nowrap;
}

.workspace-table {
  margin-top: 18px;
  border: 1px solid #dce4ef;
  border-radius: 8px;
  background: #fff;
}

.workspace-table > div {
  padding: 13px 14px;
  border-bottom: 1px solid #edf1f6;
  color: #738198;
  font-size: 10px;
}

.workspace-table > div:last-child {
  border-bottom: 0;
}

.workspace-table-head {
  color: #9aa6b7 !important;
  font: 700 9px/1 var(--meow-font-mono, monospace);
  text-transform: uppercase;
}

.workspace-table strong {
  overflow: hidden;
  color: #26354b;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-table em {
  color: #15803d;
  font-style: normal;
}

.download-section {
  background: var(--portal-surface);
}

.download-inner {
  min-height: 270px;
  padding: 68px 0;
}

.download-section h2 {
  font-size: clamp(30px, 3.6vw, 44px);
  letter-spacing: -0.045em;
}

.download-section p:not(.eyebrow) {
  max-width: 520px;
  line-height: 1.75;
}

.download-section .button-light {
  color: var(--portal-ink);
  border: 1px solid rgb(255 255 255 / 22%);
}

.download-section .button-light:hover {
  background: var(--portal-cyan);
  border-color: var(--portal-cyan);
}

.cta {
  padding: 126px 0 138px;
}

.cta h2 {
  letter-spacing: -0.055em;
}

.site-footer {
  width: min(var(--portal-max), calc(100% - 64px));
  padding: 32px 0 40px;
}

.route-hero {
  position: relative;
  overflow: hidden;
  margin-top: 28px;
  padding: 78px 72px 72px;
  border: 1px solid #223555;
  border-radius: var(--meow-radius-2xl, 24px);
  background-color: var(--portal-surface);
  background-image: linear-gradient(var(--portal-grid) 1px, transparent 1px), linear-gradient(90deg, var(--portal-grid) 1px, transparent 1px);
  background-size: 36px 36px;
  color: #fff;
}

.route-hero::after {
  content: '';
  position: absolute;
  right: -9%;
  top: -50%;
  width: 45%;
  aspect-ratio: 1;
  border: 1px solid rgb(104 217 255 / 22%);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgb(104 217 255 / 4%), 0 0 0 56px rgb(104 217 255 / 3%);
}

.route-hero .eyebrow {
  color: var(--portal-cyan);
}

.route-hero h1 {
  position: relative;
  z-index: 1;
  max-width: 920px;
  font-size: clamp(42px, 5.8vw, 72px);
}

.route-hero > p:last-child {
  position: relative;
  z-index: 1;
  max-width: 720px;
  color: rgb(255 255 255 / 68%);
  font-size: 17px;
}

.route-section {
  padding: 94px 0 24px;
}

.route-card-grid {
  gap: 0;
  border-top: 1px solid var(--meow-color-border, #e5eaf2);
  border-left: 1px solid var(--meow-color-border, #e5eaf2);
}

.route-card {
  min-height: 200px;
  padding: 28px;
  border: 0;
  border-right: 1px solid var(--meow-color-border, #e5eaf2);
  border-bottom: 1px solid var(--meow-color-border, #e5eaf2);
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.route-card:hover {
  background: #fff;
}

.route-card h3 {
  letter-spacing: -0.025em;
}

.route-cta {
  border-radius: var(--meow-radius-2xl, 24px);
  background: var(--portal-surface);
}

@media (max-width: 900px) {
  .hero { gap: 40px; }
  .section-heading { grid-template-columns: 1fr; gap: 0; }
  .section-heading .eyebrow { grid-row: auto; margin-top: 0; }
  .workspace-section { grid-template-columns: 1fr; }
  .workspace-copy h2 { max-width: 560px; }
  .workspace-copy > p:not(.eyebrow) { max-width: 560px; }
  .route-hero { padding: 64px 48px 58px; }
}

@media (max-width: 760px) {
  .page-shell,
  .site-header,
  .site-footer { width: min(100% - 32px, var(--portal-max)); }
  .site-header { height: 68px; }
  .hero { padding: 64px 0 58px; }
  .hero h1 { font-size: clamp(42px, 13vw, 58px); }
  .hero-visual { aspect-ratio: auto; min-height: 460px; }
  .surface-chrome { grid-template-columns: auto 1fr; }
  .surface-live { grid-column: 2; justify-self: start; }
  .stats { gap: 18px 0; }
  .stats div { padding: 3px 16px; }
  .stats div:nth-child(odd) { padding-left: 0; }
  .stats div:nth-child(even) { border-left: 1px solid var(--meow-color-border, #e5eaf2); }
  .section { padding: 78px 0 60px; }
  .capability-grid { grid-template-columns: 1fr; margin-top: 36px; }
  .capability-grid a { min-height: 176px; }
  .workspace-section { padding: 42px 0 82px; }
  .workspace-preview { aspect-ratio: 16 / 11; }
  .workspace-content { padding: 14px 12px; }
  .workspace-rail { padding: 12px 6px; }
  .workspace-table > div { padding: 11px 9px; }
  .workspace-table-head,
  .workspace-table > div:not(.workspace-table-head) { gap: 8px; grid-template-columns: 1.4fr 1fr .7fr; }
  .download-inner { padding: 58px 0; }
  .cta { padding: 82px 0 94px; }
  .route-hero { margin-top: 16px; padding: 52px 24px 48px; border-radius: var(--meow-radius-xl, 16px); }
  .route-hero h1 { font-size: 44px; }
  .route-section { padding-top: 64px; }
  .route-card-grid { grid-template-columns: 1fr; }
}

.site-footer-legal {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  padding-top: 14px;
  border-top: 1px solid var(--meow-color-border, #e5eaf2);
  color: var(--meow-color-text-muted, #667085);
  font-size: 12px;
}

.site-footer-legal a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.public-security-record img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

@media (max-width: 760px) {
  .site-footer-legal {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-visual .feature-list a,
  .capability-grid a::after { transition: none; }
}
