/* Company edition storytelling. Uses the approved public site tokens and marketing.css rhythm. */
.enterprise-public { overflow: clip; }
.enterprise-hero .marketing-lede { max-width: 480px; }
.enterprise-hero__footnote { margin: 22px 0 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.enterprise-hero__footnote a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; color: var(--ink); font-weight: 600; text-decoration-color: var(--lime-strong); text-underline-offset: 4px; }
.enterprise-hero__footnote a:hover { text-decoration-color: var(--ink); }

/* Illustrative company panel, echoing the app's management-panel pattern. */
.enterprise-preview { position: relative; isolation: isolate; margin: 0; }
.enterprise-preview::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 4% -8%;
  background-image: radial-gradient(circle, var(--line) 1px, transparent 1.5px);
  background-size: 22px 22px;
  -webkit-mask-image: radial-gradient(closest-side, #000 25%, transparent 100%);
  mask-image: radial-gradient(closest-side, #000 25%, transparent 100%);
}
.enterprise-preview figcaption { margin-bottom: 16px; color: var(--muted); font-size: 10px; letter-spacing: .07em; text-align: center; }
.enterprise-preview__window {
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 30px;
  background: var(--surface);
  box-shadow: 0 36px 68px -48px rgba(26, 40, 35, .5), 0 12px 28px -22px rgba(26, 40, 35, .22);
}
.enterprise-preview__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.enterprise-preview__head .mono { color: var(--muted); font-size: 10px; }
.enterprise-preview__head strong { display: block; margin-top: 6px; font-size: 22px; font-weight: 650; letter-spacing: -.035em; }
.enterprise-preview__badge { flex: none; padding: 6px 10px; border: 1px solid var(--line-soft); border-radius: 999px; background: var(--lime-wash); color: var(--ink-2); font-size: 11px; font-weight: 600; line-height: 1.4; }
.enterprise-preview__nav { display: flex; gap: 22px; margin-top: 24px; overflow: hidden; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 12px; white-space: nowrap; }
.enterprise-preview__nav span { padding-bottom: 12px; }
.enterprise-preview__nav .is-current { border-bottom: 2px solid var(--ink-2); color: var(--ink); font-weight: 600; }
.enterprise-preview__metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.enterprise-preview__metrics > div { padding: 16px 18px; border: 1px solid var(--line-soft); border-radius: 16px; background: var(--lime-wash); }
.enterprise-preview__metrics span, .enterprise-preview__metrics small { display: block; color: var(--muted); font-size: 11px; line-height: 1.5; }
.enterprise-preview__metrics strong { display: block; margin: 10px 0 4px; font-size: 30px; font-weight: 600; letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.enterprise-preview__allowance { margin-top: 22px; }
.enterprise-preview__allowance > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 14px; font-size: 12px; }
.enterprise-preview__allowance strong { font-weight: 600; }
.enterprise-preview__allowance > div > span { color: var(--muted); font-variant-numeric: tabular-nums; }
.enterprise-preview__track { height: 6px; margin-top: 10px; overflow: hidden; border-radius: 6px; background: var(--paper-2); }
.enterprise-preview__track span { display: block; width: 40%; height: 100%; border-radius: inherit; background: var(--lime-strong); }
.enterprise-preview__allowance p { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.enterprise-preview__people { margin-top: 18px; }
.enterprise-preview__people > div { display: flex; align-items: center; gap: 12px; padding: 11px 0; border-top: 1px solid var(--line-soft); }
.enterprise-avatar { display: grid; flex: none; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--lime); color: var(--ink); font-size: 11px; font-weight: 650; }
.enterprise-avatar--sand { background: var(--sand); }
.enterprise-avatar--sky { background: var(--sky); }
.enterprise-preview__people strong { display: block; font-size: 13px; font-weight: 600; }
.enterprise-preview__people small { display: block; margin-top: 2px; color: var(--muted); font-size: 11px; }
.enterprise-preview__role { margin-left: auto; color: var(--muted); font-size: 12px; }
.enterprise-preview__footer { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 0; padding-top: 16px; border-top: 1px solid var(--line-soft); }
.enterprise-preview__footer span { padding: 5px 10px; border: 1px solid var(--line-soft); border-radius: 999px; background: var(--paper); color: var(--ink-2); font-size: 11px; font-weight: 550; }
.enterprise-preview__footer span::before { content: "✓"; margin-right: 6px; color: var(--signal); }

/* Three short principles between the hero and the sections, on the shared column lines. */
.enterprise-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px var(--grid-gap); padding-block: 30px; border-top: 1px solid var(--line); }
.enterprise-principles p { margin: 0; }
.enterprise-principles .mono { display: block; margin-bottom: 8px; color: var(--muted); font-size: 10px; }
.enterprise-principles strong { font-size: 17px; font-weight: 600; line-height: 1.4; letter-spacing: -.02em; }

.enterprise-card-index { display: block; margin-bottom: 28px; color: var(--muted); font-size: 10px; }

/* 03 · Governance: an illustrative policy in the first column, four plain controls across the other two. */
.enterprise-governance__body { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); align-items: start; }
.enterprise-policy-preview { padding: 34px; border: 1px solid var(--line); border-radius: 28px; background: var(--paper-2); }
.enterprise-policy-preview > .mono { margin: 0 0 20px; color: var(--muted); font-size: 10px; }
.enterprise-policy-preview h3 { margin: 0; font-size: 30px; font-weight: 650; letter-spacing: -.045em; }
.enterprise-policy-preview dl { margin: 24px 0 0; }
.enterprise-policy-preview dl > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 14px 0; border-top: 1px solid var(--line); font-size: 14px; line-height: 1.5; }
.enterprise-policy-preview dt { color: var(--muted); }
.enterprise-policy-preview dd { margin: 0; font-weight: 600; text-align: right; }
.enterprise-policy-preview__note { max-width: 360px; margin: 16px 0 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.enterprise-control-list { display: grid; grid-column: span 2; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px var(--grid-gap); }
.enterprise-control-list article { padding-top: 22px; border-top: 1px solid var(--line); }
.enterprise-control-list h3, .enterprise-features h3, .enterprise-setup h3 { margin: 0 0 10px; font-size: 21px; font-weight: 650; line-height: 1.2; letter-spacing: -.03em; text-wrap: balance; }
.enterprise-control-list p, .enterprise-features p, .enterprise-setup p { margin: 0; color: var(--muted); font-size: 15px; line-height: 1.7; }
.enterprise-usage-note { max-width: 880px; margin-top: 36px; }

/* 04 · Identity and protection: six controls on one even grid. */
.enterprise-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.enterprise-features li { padding: 28px 30px 30px; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); }
.enterprise-features .mono { display: inline-block; margin-bottom: 22px; padding: 5px 9px; border: 1px solid var(--line-soft); border-radius: 999px; background: var(--lime-wash); color: var(--ink-2); font-size: 10px; }

/* 05 · Setup steps */
.enterprise-setup { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); margin: 0; padding: 0; list-style: none; }
.enterprise-setup li { padding-top: 24px; border-top: 1px solid var(--line); }
.enterprise-setup .mono { display: block; margin-bottom: 22px; color: var(--muted); font-size: 10px; }

/* 06 · Closing */
.enterprise-closing { padding-block: var(--section-space) calc(var(--section-space) + 16px); text-align: center; }
.enterprise-closing .eyebrow, .enterprise-closing .closing__actions { justify-content: center; }
.enterprise-closing .marketing-lede { max-width: 540px; margin: 28px auto 32px; }

@media (max-width: 1100px) {
  .enterprise-preview__window { padding: 24px; }
  .enterprise-preview__nav { gap: 18px; }
  .enterprise-policy-preview { padding: 28px 24px; }
  /* In the narrower first column each choice reads as a label above its value. */
  .enterprise-policy-preview dl > div { flex-direction: column; gap: 2px; }
  .enterprise-policy-preview dd { text-align: left; }
  .enterprise-features li { padding: 24px 24px 26px; }
}
@media (max-width: 900px) {
  .enterprise-hero__copy { max-width: 620px; }
  .enterprise-preview { width: min(540px, 100%); margin-inline: auto; }
  .enterprise-principles strong { font-size: 15px; }
  .enterprise-card-index { margin-bottom: 18px; }
  .enterprise-governance__body { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .enterprise-control-list { grid-column: auto; }
  .enterprise-policy-preview { max-width: 560px; }
  .enterprise-policy-preview dl > div { flex-direction: row; gap: 16px; }
  .enterprise-policy-preview dd { text-align: right; }
  .enterprise-features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .enterprise-setup { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .enterprise-setup p { max-width: 600px; }
}
@media (max-width: 600px) {
  .enterprise-hero .hero__actions { gap: 10px 22px; margin-top: 28px; }
  .enterprise-hero__footnote { margin-top: 12px; font-size: 13px; }
  .enterprise-preview__window { padding: 20px; border-radius: 24px; }
  .enterprise-preview__head strong { font-size: 19px; }
  .enterprise-preview__nav { gap: 14px; font-size: 11px; }
  .enterprise-preview__metrics { gap: 9px; }
  .enterprise-preview__metrics > div { padding: 13px 14px; }
  .enterprise-preview__metrics strong { font-size: 26px; }
  .enterprise-principles { grid-template-columns: minmax(0, 1fr); gap: 16px; padding-block: 24px; }
  .enterprise-control-list, .enterprise-features { grid-template-columns: minmax(0, 1fr); }
  .enterprise-control-list { gap: 28px; }
  .enterprise-features li { padding: 24px; border-radius: 22px; }
  .enterprise-policy-preview { padding: 24px; border-radius: 24px; }
  .enterprise-policy-preview h3 { font-size: 27px; }
  .enterprise-policy-preview dl > div { font-size: 13px; }
}
@media (max-width: 420px) {
  .enterprise-preview__nav span:nth-child(n+4) { display: none; }
}
@media (prefers-reduced-motion: reduce) { .enterprise-public *, .enterprise-public *::before { animation: none !important; transition: none !important; } }
