/* OpenCode Design System */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,200;0,400;0,500;0,700;1,400;1,700&display=swap');

:root {
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --space-1: 3px;
}

/* Light mode (default) */
[data-page] {
  --color-background: hsl(0, 20%, 99%);
  --color-background-weak: hsl(0, 8%, 97%);
  --color-background-weak-hover: hsl(0, 8%, 94%);
  --color-background-strong: hsl(0, 5%, 12%);
  --color-background-strong-hover: hsl(0, 5%, 18%);
  --color-background-interactive: hsl(62, 84%, 88%);
  --color-background-interactive-weaker: hsl(64, 74%, 95%);
  --color-surface-raised-base: hsla(0, 100%, 3%, 0.01);
  --color-surface-raised-base-active: hsla(0, 100%, 17%, 0.06);
  --color-text: hsl(0, 1%, 39%);
  --color-text-weak: hsl(0, 1%, 60%);
  --color-text-weaker: hsl(30, 2%, 81%);
  --color-text-strong: hsl(0, 5%, 12%);
  --color-text-inverted: hsl(0, 20%, 99%);
  --color-border: hsl(30, 2%, 81%);
  --color-border-weak: hsla(0, 100%, 3%, 0.12);
  --color-icon: hsl(0, 1%, 55%);
}

@media (prefers-color-scheme: dark) {
  [data-page] {
    --color-background: hsl(0, 9%, 7%);
    --color-background-weak: hsl(0, 6%, 10%);
    --color-background-weak-hover: hsl(0, 6%, 15%);
    --color-background-strong: hsl(0, 15%, 94%);
    --color-background-strong-hover: hsl(0, 15%, 97%);
    --color-background-interactive: hsl(62, 100%, 90%);
    --color-background-interactive-weaker: hsl(60, 20%, 8%);
    --color-text: hsl(0, 4%, 71%);
    --color-text-weak: hsl(0, 2%, 49%);
    --color-text-weaker: hsl(0, 3%, 28%);
    --color-text-strong: hsl(0, 15%, 94%);
    --color-text-inverted: hsl(0, 9%, 7%);
    --color-border: hsl(0, 3%, 28%);
    --color-border-weak: hsl(0, 4%, 23%);
    --color-icon: hsl(10, 3%, 43%);
  }
}

/* Reset */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { background: var(--color-background); font-family: var(--font-mono); font-size: 16px; color: var(--color-text); line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: var(--color-text-strong); text-decoration: underline; text-underline-offset: var(--space-1); text-decoration-thickness: 1px; }
a:hover { text-decoration: underline; }
ul, ol { list-style: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; font-size: inherit; cursor: pointer; }
::selection { background: var(--color-background-interactive); color: var(--color-text-strong); }

/* Page wrapper */
[data-page] {
  background: var(--color-background);
  --padding: 5rem;
  --vertical-padding: 4rem;
  --heading-font-size: 1.375rem;
  display: flex;
  gap: var(--vertical-padding);
  flex-direction: column;
  font-family: var(--font-mono);
  color: var(--color-text);
  padding-bottom: 5rem;
}
@media (max-width: 60rem) {
  [data-page] { --padding: 1.5rem; --vertical-padding: 3rem; font-size: 15px; }
}
[data-page] p { line-height: 200%; }
@media (max-width: 60rem) { [data-page] p { line-height: 180%; } }

/* Container */
[data-component="container"] {
  max-width: 67.5rem;
  margin: 0 auto;
  border: 1px solid var(--color-border-weak);
  border-top: none;
}
@media (max-width: 65rem) { [data-component="container"] { border: none; } }

/* Navigation - Top Bar */
[data-component="top"] {
  padding: 24px var(--padding);
  height: 80px;
  min-height: 80px;
  position: sticky;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--color-background);
  border-bottom: 1px solid var(--color-border-weak);
  z-index: 10;
}
[data-component="top"] img { height: 34px; width: auto; }
[data-component="top"] .logo-dark { display: none; }
@media (prefers-color-scheme: dark) {
  [data-component="top"] .logo-light { display: none; }
  [data-component="top"] .logo-dark { display: block; }
}

/* Desktop Nav */
[data-component="nav-desktop"] ul {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media (max-width: 55rem) { [data-component="nav-desktop"] ul { gap: 24px; } }
[data-component="nav-desktop"] li { display: inline-block; }
[data-component="nav-desktop"] li a { text-decoration: none; color: var(--color-text-strong); }
[data-component="nav-desktop"] li a:hover { text-decoration: underline; text-underline-offset: var(--space-1); text-decoration-thickness: 1px; }
[data-component="nav-desktop"] li a span { color: var(--color-text-weak); }

/* Download CTA Button */
[data-slot="cta-button"] {
  background: var(--color-background-strong);
  color: var(--color-text-inverted) !important;
  padding: 8px 16px 8px 10px;
  border-radius: 4px;
  font-weight: 500;
  text-decoration: none !important;
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}
[data-slot="cta-button"]:hover { background: var(--color-background-strong-hover); text-decoration: none !important; }
@media (max-width: 55rem) { [data-slot="cta-button"] { display: none !important; } }

/* Mobile Nav */
[data-component="nav-mobile"] { display: none; }
@media (max-width: 40rem) {
  [data-component="nav-desktop"] { display: none; }
  [data-component="nav-mobile"] { display: block; }
}
.nav-toggle { border: none; background: none; height: 40px; width: 40px; cursor: pointer; display: flex; align-items: center; justify-content: center; margin-right: -8px; color: var(--color-icon); }
.nav-toggle:hover { background: var(--color-background-weak); }
.nav-mobile-menu { position: fixed; background: var(--color-background); top: 80px; left: 0; right: 0; height: 100vh; display: none; }
.nav-mobile-menu.open { display: block; }
.nav-mobile-menu ul { padding: 20px 0; }
.nav-mobile-menu li a { text-decoration: none; padding: 20px; display: block; color: var(--color-text-strong); }
.nav-mobile-menu li a:hover { background: var(--color-background-weak); }

/* Hero Section */
[data-component="hero"] {
  display: flex;
  flex-direction: column;
  padding: calc(var(--vertical-padding) * 1.5) var(--padding);
}
@media (max-width: 30rem) { [data-component="hero"] { padding: var(--vertical-padding) var(--padding); } }

/* Desktop App Banner */
[data-component="desktop-app-banner"] {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
}
[data-component="desktop-app-banner"] [data-slot="badge"] {
  background: var(--color-background-strong);
  color: var(--color-text-inverted);
  font-weight: 500;
  padding: 4px 8px;
  line-height: 1;
  flex-shrink: 0;
}
[data-component="desktop-app-banner"] [data-slot="text"] { color: var(--color-text-strong); line-height: 1.4; }
[data-component="desktop-app-banner"] [data-slot="link"] { color: var(--color-text-weak); white-space: nowrap; text-decoration: none; }
[data-component="desktop-app-banner"] [data-slot="link"]:hover { color: var(--color-text); text-decoration: underline; }
@media (max-width: 30.625rem) { [data-component="desktop-app-banner"] [data-slot="text"], [data-component="desktop-app-banner"] [data-slot="link"] { display: none; } }

/* Hero Copy */
[data-slot="hero-copy"] h1 { font-size: 38px; color: var(--color-text-strong); font-weight: 700; margin-bottom: 8px; }
@media (max-width: 60rem) { [data-slot="hero-copy"] h1 { font-size: 22px; } }
[data-slot="hero-copy"] p { color: var(--color-text); margin-bottom: 32px; max-width: 82%; }
@media (max-width: 50rem) { [data-slot="hero-copy"] p { max-width: 100%; } }

/* Buttons */
.btn-primary {
  background: var(--color-background-strong);
  padding: 8px 12px 8px 20px;
  color: var(--color-text-inverted);
  border: none;
  border-radius: 4px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  width: fit-content;
  gap: 12px;
  text-decoration: none;
  align-items: center;
}
.btn-primary:hover { background: var(--color-background-strong-hover); text-decoration: none; color: var(--color-text-inverted); }

.btn-secondary {
  background: var(--color-background);
  padding: 8px 12px 8px 20px;
  color: var(--color-text-strong);
  border: 1px solid var(--color-border-weak);
  border-radius: 4px;
  font-weight: 500;
  cursor: pointer;
  display: inline-flex;
  width: fit-content;
  gap: 12px;
  text-decoration: none;
  align-items: center;
}
.btn-secondary:hover { background: var(--color-background-weak); text-decoration: none; }

/* Installation Tabs */
[data-slot="installation"] { width: 100%; max-width: 100%; overflow: hidden; }
[data-component="tabs"] [data-slot="tablist"] {
  display: flex;
  gap: 40px;
  align-items: center;
  border: 1px solid var(--color-border-weak);
  border-bottom: none;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  background: var(--color-background-weak);
  padding: 0 20px;
}
@media (max-width: 60rem) { [data-component="tabs"] [data-slot="tablist"] { gap: 32px; overflow-x: auto; } }
[data-component="tabs"] [data-slot="tab"] {
  appearance: none;
  background: transparent;
  border: 0;
  padding: 16px 0;
  cursor: pointer;
  color: var(--color-text-weak);
  line-height: 1;
  border-bottom: 2px solid transparent;
  font-family: var(--font-mono);
  font-size: inherit;
  white-space: nowrap;
}
[data-component="tabs"] [data-slot="tab"].active, [data-component="tabs"] [data-slot="tab"][aria-selected="true"] {
  color: var(--color-text-strong);
  border-bottom-color: var(--color-background-strong);
}
[data-component="tabs"] [data-slot="panels"] {
  background: var(--color-background-weak);
  border: 1px solid var(--color-border-weak);
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
  padding: 16px;
}
[data-component="tabs"] [data-slot="panel"] { display: none; font-family: var(--font-mono); }
[data-component="tabs"] [data-slot="panel"].active { display: block; }
[data-slot="command"] {
  all: unset;
  display: flex;
  max-width: 100%;
  cursor: pointer;
  align-items: center;
  color: var(--color-text);
  gap: 16px;
  padding: 8px 16px 8px 8px;
  border-radius: 4px;
}
[data-slot="command"]:hover { background: var(--color-background-weak-hover); }
[data-slot="command"] .copy-icon { flex-shrink: 0; transition: opacity 0.15s; }
[data-slot="command"] .copied-icon { display: none; flex-shrink: 0; color: hsl(142, 50%, 40%); }
[data-slot="command"].copied .copy-icon { display: none; }
[data-slot="command"].copied .copied-icon { display: block; }
[data-slot="command-script"] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[data-slot="highlight"] { font-weight: 500; color: var(--color-text-strong); }

/* Video Section */
[data-component="video"] { border-top: 1px solid var(--color-border-weak); }
[data-component="video"] video { width: 100%; height: auto; display: block; aspect-ratio: 16/9; object-fit: cover; }

/* Sections */
[data-component="what"],
[data-component="growth"],
[data-component="privacy"],
[data-component="zen-cta"],
[data-component="faq"],
[data-component="email"],
[data-component="testimonials"],
[data-component="features"] {
  border-top: 1px solid var(--color-border-weak);
  padding: var(--vertical-padding) var(--padding);
}

/* Section Titles */
[data-slot="section-title"] { margin-bottom: 24px; }
[data-slot="section-title"] h3 { font-size: 16px; font-weight: 700; color: var(--color-text-strong); margin-bottom: 12px; }
[data-slot="section-title"] p { margin-bottom: 12px; color: var(--color-text); }
[data-slot="section-title"] span { color: var(--color-icon); line-height: 200%; }

/* What Section */
[data-component="what"] ul { padding: 0; }
[data-component="what"] li { list-style: none; margin-bottom: 16px; display: flex; gap: 12px; line-height: 200%; }
[data-component="what"] li span { color: var(--color-icon); }
[data-component="what"] li strong { font-weight: 500; color: var(--color-text-strong); margin-right: 12px; }

/* Growth Stats */
[data-component="growth-stats"] { margin-top: 48px; margin-left: 40px; display: flex; gap: 64px; }
@media (max-width: 40rem) { [data-component="growth-stats"] { display: none; } }
[data-component="growth-stat"] { display: flex; flex-direction: column; gap: 24px; text-align: left; width: 100%; }
[data-component="growth-stat"] span { display: flex; align-items: center; gap: 10px; font-size: 14px; }
[data-component="growth-stat"] strong { color: var(--color-text-strong); font-weight: 500; }
[data-component="growth-stat"] figure { font-size: 14px; color: var(--color-text-weak); margin: 0; }

/* Privacy Section */
[data-component="privacy"] [data-slot="privacy-title"] h3 { font-size: 16px; font-weight: 700; color: var(--color-text-strong); margin-bottom: 12px; }

/* Zen CTA */
[data-slot="zen-cta-copy"] strong { color: var(--color-text-strong); font-weight: 700; margin-bottom: 16px; display: block; }
[data-slot="zen-cta-copy"] p { color: var(--color-text); margin-bottom: 24px; max-width: 90%; }

/* FAQ */
[data-component="faq"] ul { padding: 0; }
[data-component="faq"] li { list-style: none; margin-bottom: 24px; line-height: 200%; }
[data-slot="faq-question"] {
  display: flex;
  gap: 16px;
  margin-bottom: 8px;
  color: var(--color-text-strong);
  font-weight: 500;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  align-items: start;
  width: 100%;
  text-align: left;
  font-family: var(--font-mono);
  font-size: inherit;
}
[data-slot="faq-answer"] { margin-left: 40px; margin-bottom: 32px; line-height: 200%; display: none; }
[data-slot="faq-answer"].open { display: block; }

/* Email / Newsletter */
[data-component="email"] [data-slot="form"] { position: relative; }
[data-component="email"] input {
  background: var(--color-background-weak);
  border-radius: 6px;
  border: 1px solid var(--color-border-weak);
  padding: 20px;
  width: 100%;
  color: var(--color-text-strong);
  font-family: var(--font-mono);
  font-size: inherit;
}
[data-component="email"] input::placeholder { color: var(--color-text-weak); }
[data-component="email"] input:focus {
  background: var(--color-background-interactive-weaker);
  outline: none;
  border: 1px solid var(--color-background-strong);
  box-shadow: 0 0 0 3px var(--color-background-interactive);
}
[data-component="email"] button {
  position: absolute;
  height: 40px;
  right: 12px;
  background: var(--color-background-strong);
  padding: 4px 20px;
  color: var(--color-text-inverted);
  border-radius: 4px;
  border: none;
  font-weight: 500;
  cursor: pointer;
  top: 50%;
  margin-top: -20px;
}
@media (max-width: 30rem) {
  [data-component="email"] button { left: 20px; right: 20px; bottom: 20px; top: auto; margin-top: 0; }
  [data-component="email"] input { padding-bottom: 80px; }
}

/* Testimonials */
[data-component="testimonials"] { display: flex; flex-direction: column; gap: 20px; }
[data-component="testimonials"] a { text-decoration: none; }
[data-slot="testimonial"] {
  background: var(--color-background-weak);
  border-radius: 6px;
  border: 1px solid var(--color-border-weak);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
[data-slot="testimonial"] [data-slot="name"] { display: flex; gap: 16px; }
[data-slot="testimonial"] [data-slot="name"] span { color: var(--color-text-weak); }
[data-slot="testimonial"] [data-slot="quote"] { margin-left: 40px; line-height: 200%; }
@media (max-width: 60rem) {
  [data-slot="testimonial"] { flex-direction: column-reverse; gap: 24px; }
  [data-slot="testimonial"] [data-slot="name"] { flex-direction: column; gap: 8px; }
  [data-slot="testimonial"] [data-slot="quote"] { margin-left: 0; }
}

/* Footer */
[data-component="footer"] {
  border-top: 1px solid var(--color-border-weak);
  padding: 0;
  display: flex;
  flex-direction: column;
}
[data-component="footer"] a { color: var(--color-text-weak); text-decoration: none; }
[data-component="footer"] a:hover { text-decoration: underline; }
.footer-top {
  display: flex;
  border-bottom: 1px solid var(--color-border-weak);
}
.footer-top a {
  flex: 1;
  text-align: center;
  padding: 20px 16px;
  border-right: 1px solid var(--color-border-weak);
  color: var(--color-text-strong) !important;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 400;
  white-space: nowrap;
}
.footer-top a:last-child { border-right: none; }
.footer-top a:hover { background: var(--color-background-weak); text-decoration: none !important; }
@media (max-width: 40rem) {
  .footer-top { flex-wrap: wrap; }
  .footer-top a { flex: none; width: 50%; border-bottom: 1px solid var(--color-border-weak); }
}
.footer-bottom {
  display: flex;
  gap: 24px;
  padding: 32px var(--padding);
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  font-size: 14px;
}
.footer-bottom a { color: var(--color-text-weak); }
.footer-copy { color: var(--color-text-weak); }

/* Legacy footer classes for subpages */
.footer-links { display: flex; gap: 24px; flex-wrap: wrap; }
.footer-right { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; }
.footer-right a { color: var(--color-text-weak); }

/* Features list */
[data-component="features"] ul { padding: 0; display: flex; flex-direction: column; gap: 0; }
[data-component="features"] li {
  list-style: none;
  padding: 16px 0;
  border-bottom: 1px solid var(--color-border-weak);
  display: flex;
  align-items: center;
  gap: 12px;
}
[data-component="features"] li:last-child { border-bottom: none; }
[data-component="features"] li strong { color: var(--color-text-strong); font-weight: 500; }

/* Form fields */
.form-group { margin-bottom: 16px; }
.form-group label { display: block; margin-bottom: 6px; color: var(--color-text-strong); font-weight: 500; font-size: 14px; }
.form-group input, .form-group textarea {
  width: 100%;
  background: var(--color-background-weak);
  border: 1px solid var(--color-border-weak);
  border-radius: 6px;
  padding: 12px 16px;
  font-family: var(--font-mono);
  font-size: inherit;
  color: var(--color-text-strong);
}
.form-group input:focus, .form-group textarea:focus {
  outline: none;
  border-color: var(--color-background-strong);
  box-shadow: 0 0 0 3px var(--color-background-interactive);
}
.form-group textarea { resize: vertical; min-height: 100px; }

/* Download page */
[data-component="download-section"] {
  border-top: 1px solid var(--color-border-weak);
  padding: var(--vertical-padding) var(--padding);
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 0 48px;
  align-items: start;
}
@media (max-width: 50rem) {
  [data-component="download-section"] { grid-template-columns: 1fr; gap: 24px; }
}
.dl-label {
  display: flex;
  gap: 16px;
  align-items: baseline;
}
.dl-label .dl-num { color: var(--color-text-weak); font-size: 14px; white-space: nowrap; }
.dl-label h2 { font-size: 16px; font-weight: 700; color: var(--color-text-strong); margin: 0; }
.dl-content { display: flex; flex-direction: column; }
.dl-command {
  font-family: var(--font-mono);
  padding: 10px 0;
  color: var(--color-text);
  line-height: 1.6;
  cursor: pointer;
  position: relative;
}
.dl-command:hover { color: var(--color-text-strong); }
.dl-command strong { font-weight: 500; color: var(--color-text-strong); }
.dl-command .dl-copied {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: hsl(142, 50%, 40%);
  opacity: 0;
  transition: opacity 0.2s;
}
.dl-command.copied .dl-copied { opacity: 1; }
.dl-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0;
  gap: 16px;
}
.dl-row-name {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--color-text);
}
.dl-row-name svg { flex-shrink: 0; color: var(--color-icon); width: 16px; height: 16px; }
.dl-btn {
  background: var(--color-background);
  border: 1px solid var(--color-border-weak);
  border-radius: 4px;
  padding: 6px 16px;
  color: var(--color-text-strong);
  text-decoration: none;
  font-size: 14px;
  font-family: var(--font-mono);
  white-space: nowrap;
  cursor: pointer;
}
.dl-btn:hover { background: var(--color-background-weak); text-decoration: none; }

/* Changelog */
[data-component="changelog-entry"] {
  border-top: 1px solid var(--color-border-weak);
  padding: var(--vertical-padding) var(--padding);
}
.changelog-header { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.changelog-header a { font-size: 16px; font-weight: 700; color: var(--color-text-strong); }
.changelog-header span { color: var(--color-text-weak); font-size: 14px; }
.changelog-category { margin-bottom: 16px; }
.changelog-category h4 { font-size: 14px; font-weight: 700; color: var(--color-text-strong); margin-bottom: 8px; }
.changelog-category ul { padding-left: 20px; }
.changelog-category li { list-style: disc; margin-bottom: 6px; line-height: 180%; color: var(--color-text); }

/* Brand page */
.brand-assets { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; margin-top: 32px; }
.brand-asset {
  border: 1px solid var(--color-border-weak);
  border-radius: 6px;
  overflow: hidden;
}
.brand-asset-preview {
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
}
.brand-asset-preview.light { background: var(--color-background-weak); }
.brand-asset-preview.dark { background: hsl(0, 5%, 12%); }
.brand-asset-preview img, .brand-asset-preview svg { max-height: 48px; width: auto; }
.brand-asset-info { padding: 16px; border-top: 1px solid var(--color-border-weak); display: flex; justify-content: space-between; align-items: center; }
.brand-asset-info span { font-weight: 500; color: var(--color-text-strong); font-size: 14px; }
.brand-asset-info a { font-size: 13px; color: var(--color-text-weak); }

/* Legal pages */
[data-component="legal"] { padding: var(--vertical-padding) var(--padding); max-width: 720px; }
[data-component="legal"] h1 { font-size: 24px; font-weight: 700; color: var(--color-text-strong); margin-bottom: 8px; }
[data-component="legal"] .date { color: var(--color-text-weak); margin-bottom: 32px; }
[data-component="legal"] h2 { font-size: 16px; font-weight: 700; color: var(--color-text-strong); margin-top: 32px; margin-bottom: 12px; }
[data-component="legal"] p { margin-bottom: 16px; }
[data-component="legal"] ul { padding-left: 20px; margin-bottom: 16px; }
[data-component="legal"] li { list-style: disc; margin-bottom: 8px; line-height: 180%; }

/* Pricing table */
.pricing-table { border: 1px solid var(--color-border-weak); border-radius: 6px; overflow: hidden; margin: 24px 0; }
.pricing-table table { width: 100%; border-collapse: collapse; font-size: 14px; }
.pricing-table th { background: var(--color-background-weak); padding: 12px 16px; text-align: left; font-weight: 500; color: var(--color-text-strong); border-bottom: 1px solid var(--color-border-weak); }
.pricing-table td { padding: 10px 16px; border-bottom: 1px solid var(--color-border-weak); color: var(--color-text); }
.pricing-table tr:last-child td { border-bottom: none; }

/* Enterprise two-column layout */
.enterprise-layout {
  border-top: 1px solid var(--color-border-weak);
  padding: var(--vertical-padding) var(--padding);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}
@media (max-width: 50rem) {
  .enterprise-layout { grid-template-columns: 1fr; }
}
.enterprise-layout h1 { font-size: 38px; color: var(--color-text-strong); font-weight: 700; margin-bottom: 24px; }
@media (max-width: 60rem) { .enterprise-layout h1 { font-size: 22px; } }
.enterprise-layout p { line-height: 200%; margin-bottom: 16px; }

/* Utilities */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.text-strong { color: var(--color-text-strong); }
.text-weak { color: var(--color-text-weak); }
.fw-500 { font-weight: 500; }
.fw-700 { font-weight: 700; }
.mb-8 { margin-bottom: 8px; }
.mb-16 { margin-bottom: 16px; }
.mb-24 { margin-bottom: 24px; }
.mb-32 { margin-bottom: 32px; }
.mb-48 { margin-bottom: 48px; }
.mt-32 { margin-top: 32px; }
.mt-48 { margin-top: 48px; }
