/* Hallmark · shape: editorial disciplines · genre: modern-minimal · theme: brand · redesign: full
 * hero: Banner and working console · nav: stable bar · footer: statement and directory
 * signature: the product's actual domain and command demonstrations · v2.0.0 */
/* Critique: separate the explanation from the instrument, preserve every useful interaction. */
body .hm-discipline-hero {
  background: var(--paper); color: var(--ink);
  padding-top: calc(var(--header-h) + 72px); padding-bottom: 80px;
}
body .hm-discipline-hero :is(.page-hero__inner, .sv-hero__copy) {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 64px; row-gap: 20px; align-items: start;
}
body .hm-discipline-hero .eyebrow { grid-column: 1; margin: 0; color: var(--ink-3); }
body .hm-discipline-hero .page-hero__title {
  grid-column: 1; grid-row: 2; max-width: 13ch; margin: 0;
  font-size: clamp(2.75rem, 5.2vw, 4.75rem); font-weight: var(--weight-display);
  line-height: var(--lh-tight); letter-spacing: var(--tracking-display); color: var(--ink);
}
body .hm-discipline-hero :is(.in-hero__row, .cm-hero__row, .pr-hero__row, .sv-hero__row, .sc-hero__row) {
  grid-column: 2; grid-row: 2; display: flex; flex-direction: column; align-items: start;
  gap: 24px; margin: 0; padding-top: 4px;
}
body .hm-discipline-hero .page-hero__lead { flex: none; width: 100%; max-width: 42ch; margin: 0; font-size: var(--fs-lead); line-height: var(--lh-lead); color: var(--ink-2); }
body .hm-discipline-hero :is(.in-hero__row, .cm-hero__row, .pr-hero__row, .sc-hero__row) > .page-hero__lead { flex: none; }
body .hm-discipline-hero .page-hero__actions { margin: 0; gap: 12px; }
body .hm-discipline-hero :is(.hero-media, .cm-console-wrap) { grid-column: 1 / -1; margin-top: 36px; }
body .hm-discipline-hero :is(.in-console, .cm-console, .pr-console, .sc-console) {
  border-radius: var(--r-md); border: 1px solid var(--night-line); box-shadow: none;
  background: var(--night); padding: 8px;
}
body .hm-discipline-hero .cm-console { margin-top: 0; }
body .hm-discipline-hero .cm-console-wrap { transform: none; will-change: auto; }
body .hm-discipline-hero :is(.in-console__bar, .pr-console__bar, .cm-console__bar, .sc-console__bar) {
  font-family: var(--font-label); font-size: var(--fs-label); text-transform: none; letter-spacing: 0;
  min-height: 56px;
}
body .hm-discipline-hero :is(.in-console__screen, .pr-console__screen, .sc-console__screen) { border-radius: var(--r-xs); }
body .hm-discipline-hero :is(.in-console__pause, .pr-console__pause, .cm-console__pause, .sc-console__pause) {
  width: 44px; height: 44px; border-radius: var(--r-xs); box-shadow: none;
}
body .hm-discipline-hero :is(.in-console__sectors button, .pr-console__fronts button, .cm-tab, .sc-console__acts button) { min-height: 44px; }
body .hm-discipline-hero :is(.in-console__pause, .pr-console__pause, .cm-console__pause, .sc-console__pause):hover { transform: none; }
.page-intelligence .in-console__sectors b { color: var(--night-ink-3); }
.page-intelligence .in-console__sectors button.is-on b { color: var(--hm-accent-night); }
.page-intelligence .in-pause:hover { transform: none; }
.page-command .cm-dcard:hover { transform: none; box-shadow: none; }
.page-command .cm-dcard:hover .cm-dcard__go { transform: none; }
body .hm-discipline-hero .sv-hero__lead { max-width: none; }
body .hm-discipline-hero .sv-hero__lead .page-hero__actions { margin-top: 24px; }
.page-services .sv-spec { width: 100%; margin-top: 8px; gap: 0; border-top: 1px solid var(--line-2); }
.page-services .sv-spec > div { padding-top: 16px; }
.page-services .sv-spec dt { font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; text-transform: none; }
.page-services .sv-spec dd { font-size: 2rem; line-height: 1.1; margin-top: 8px; font-weight: 500; color: var(--ink); }
.page-services .sv-spec > div:first-child dd { color: var(--ink); }
.page-services .sv-strip { margin-top: 48px; border-radius: var(--r-md); box-shadow: none; }
.page-services .sv-cat { padding-top: 80px; }
.page-services .sv-cat__grid { grid-template-columns: 240px minmax(0, 1fr); gap: 64px; }
.page-services .sv-group__head { align-items: start; gap: 24px; }
.page-services .sv-group__title { font-size: var(--fs-display); font-weight: var(--weight-display); line-height: var(--lh-tight); }
.page-services :is(.sv-index__head, .sv-group__k, .svc__num, .svc__domain, .svc__inc dt, .sv-flow__n, .sv-flow__io dt) {
  font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; text-transform: none;
}
.page-services .svc { column-gap: 32px; padding-block: 32px 48px; }
.page-services .svc::before { transition: none; }
.page-services .svc__media { border-radius: var(--r-md); box-shadow: none; }
.page-services .sv-flow { gap: 64px; }
.page-services .sv-flow__stage { border-radius: var(--r-md); box-shadow: none; }
.page-services .sv-faq__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 64px; }
.page-services .sv-cta { background: var(--night); }
.page-services .sv-cta__inner { text-align: left; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: end; gap: 40px 64px; }
.page-services .sv-cta__title { max-width: 16ch; margin: 0; font-size: var(--fs-display); }
.page-services .sv-cta__inner .lead { max-width: 42ch; margin: 0; }
.page-services .sv-cta__inner .cluster { justify-content: start; margin-top: 0; }
/* Protection: two distinct fronts as open columns, then the asset gallery. */
.page-protection .pr-fronts__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; }
.page-protection .pr-fronts__line { display: none; }
.page-protection .pr-front { border-radius: 0; border: 0; border-top: 1px solid var(--line-2); background: none; box-shadow: none; padding: 32px 0 0; }
.page-protection .pr-front__title { max-width: 19ch; font-size: var(--fs-h2); font-weight: var(--weight-heading); }
.page-protection .pr-front__kicker { font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; text-transform: none; }
.page-protection .pr-front__list { gap: 24px; margin-top: 32px; }
.page-protection .pr-place { border-radius: var(--r-md); box-shadow: none; }
.page-protection .pr-place__kicker { font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; text-transform: none; }
/* Security principles read as a compact specification, without nested cards. */
.page-security .sc-rules { grid-template-columns: minmax(0, 1fr); gap: 0; border-top: 1px solid var(--line-2); }
.page-security .sc-rule { display: grid; grid-template-columns: 40px minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 16px 32px; padding: 32px 0; border: 0; border-bottom: 1px solid var(--line-2); background: none; border-radius: 0; box-shadow: none; }
.page-security .sc-rule:hover { transform: none; box-shadow: none; }
.page-security .sc-rule__num { position: static; grid-column: 1; grid-row: 1; font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; padding-top: 4px; }
.page-security .sc-rule__icon { grid-column: 1; grid-row: 2; width: 32px; height: 32px; border-radius: 0; background: none; justify-content: start; }
.page-security .sc-rule:hover .sc-rule__icon { transform: none; background: none; color: var(--accent-text); }
.page-security .sc-rule h3 { grid-column: 2; grid-row: 1 / span 2; margin-top: 0; font-size: var(--fs-h3); }
.page-security .sc-rule > p { grid-column: 3; grid-row: 1; }
.page-security .sc-rule__list { grid-column: 3; margin: 0; }
.page-security :is(.sc-ledger-wrap, .sc-disclose__card) { border-radius: var(--r-md); box-shadow: none; }
.page-security .sc-table thead th { font-family: var(--font-label); font-size: var(--fs-label); letter-spacing: 0; text-transform: none; }
.page-security .sc-disclose__grid { gap: 64px; }
/* Command keeps the control surfaces; graphite replaces the decorative crimson bands. */
.page-command .cm-lock, .page-command .cm-cta { background: var(--night); }
.page-command .cm-lock__grid, .page-command .cm-remote__grid, .page-command .cm-people__grid { gap: 64px; }
.page-command .cm-cta__inner { text-align: left; align-items: start; }
.page-command .cm-cta__title { max-width: 17ch; font-size: var(--fs-display); }
.page-command .cm-cta .cluster { justify-content: start; }
.page-intelligence .in-watch__grid, .page-intelligence .in-vamo__grid { gap: 64px; }
.page-intelligence .in-watch__title { max-width: 14ch; }
@media (max-width: 1024px) {
  body .hm-discipline-hero { padding-top: calc(var(--header-h) + 56px); padding-bottom: 64px; }
  body .hm-discipline-hero :is(.page-hero__inner, .sv-hero__copy) { column-gap: 40px; }
  body .hm-discipline-hero .page-hero__title { font-size: clamp(2.5rem, 5.6vw, 4.2rem); }
  .page-services .sv-cat__grid { grid-template-columns: 200px minmax(0, 1fr); gap: 40px; }
  .page-protection .pr-fronts__grid { gap: 40px; }
  .page-security .sc-rule { grid-template-columns: 32px minmax(0, 0.8fr) minmax(0, 1.2fr); column-gap: 24px; }
}
@media (max-width: 760px) {
  body .hm-discipline-hero { padding-top: calc(var(--header-h) + 48px); }
  body .hm-discipline-hero :is(.page-hero__inner, .sv-hero__copy) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  body .hm-discipline-hero .page-hero__title { grid-column: 1; grid-row: auto; max-width: 14ch; font-size: clamp(2.5rem, 8.5vw, 3.5rem); }
  body .hm-discipline-hero :is(.in-hero__row, .cm-hero__row, .pr-hero__row, .sv-hero__row, .sc-hero__row) { grid-column: 1; grid-row: auto; gap: 24px; padding: 0; }
  body .hm-discipline-hero :is(.hero-media, .cm-console-wrap) { margin-top: 20px; }
  body .hm-discipline-hero .cm-console { margin-top: 0; }
  body .hm-discipline-hero .page-hero__actions { width: 100%; }
  .page-services .sv-cat__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .page-services .sv-side { position: static; }
  /* the index is not sticky here, so a jump clears the header alone (services.css allows 72px for the bar) */
  .page-services .sv-group, .page-services .svc { scroll-margin-top: 16px; }
  .page-services .sv-faq__grid, .page-services .sv-cta__inner { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .page-services .sv-faq__aside { position: static; }
  .page-services .sv-flow { gap: 32px; }
  .page-protection .pr-fronts__grid { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .page-security .sc-rule { grid-template-columns: 28px minmax(0, 1fr); gap: 16px 20px; }
  .page-security .sc-rule h3 { grid-column: 2; grid-row: 1; }
  .page-security .sc-rule > p { grid-column: 2; grid-row: 2; }
  .page-security .sc-rule__list { grid-column: 2; }
  .page-security .sc-disclose__grid { gap: 32px; }
  .page-command .cm-lock__grid, .page-command .cm-remote__grid, .page-command .cm-people__grid,
  .page-intelligence .in-watch__grid, .page-intelligence .in-vamo__grid { gap: 32px; }
}
@media (max-width: 480px) {
  body .hm-discipline-hero .page-hero__actions .btn { width: 100%; }
  body .hm-discipline-hero .page-hero__lead { font-size: 1.0625rem; }
}

