/* Omnius / Atomic identity. Geist interface roles remain unchanged. */
@font-face {
  font-family:Alliance;
  src:url('assets/alliance-no2-medium.woff2') format('woff2');
  font-weight:500;
  font-display:swap;
}
:root {--font-display:Alliance,Geist,Arial,sans-serif;}
:root,.light,.dark {
  --type-hero:28px;
  --type-section:28px;
  --leading-heading:1.25;
  --tracking-heading:-.025em;
  --weight-heading:500;
  /* Brand lines: decorative structure, separate from essential control borders. */
  --brand-line:var(--ds-gray-500);
  --brand-connector:var(--ds-gray-600);
  --brand-stroke:1px;
  --brand-line-style:dashed;
  --brand-dash-length:4px;
  --brand-dash-gap:4px;
  --brand-rule-x:repeating-linear-gradient(90deg,var(--brand-line) 0 var(--brand-dash-length),transparent var(--brand-dash-length) calc(var(--brand-dash-length) + var(--brand-dash-gap)));
  --brand-rule-y:repeating-linear-gradient(180deg,var(--brand-line) 0 var(--brand-dash-length),transparent var(--brand-dash-length) calc(var(--brand-dash-length) + var(--brand-dash-gap)));
  --brand-rule-x-inverse:repeating-linear-gradient(90deg,#555 0 var(--brand-dash-length),transparent var(--brand-dash-length) calc(var(--brand-dash-length) + var(--brand-dash-gap)));
  --brand-rule-y-inverse:repeating-linear-gradient(180deg,#555 0 var(--brand-dash-length),transparent var(--brand-dash-length) calc(var(--brand-dash-length) + var(--brand-dash-gap)));
  --brand-dot-size:2px;
  --brand-dot-pitch:6px;
}
/* Explicit 4px dashes / 6px gaps keep structural rules visibly broken.
   Transparent borders preserve layout; the pattern paints in the border box. */
.brand-rule {border-block-start:var(--brand-stroke) solid transparent;background:var(--brand-rule-x) left top/100% var(--brand-stroke) no-repeat border-box;}
.brand-rail {border-inline-start:var(--brand-stroke) solid transparent;background:var(--brand-rule-y) left top/var(--brand-stroke) 100% no-repeat border-box;padding-inline-start:24px;}
.brand-grid {border-inline:var(--brand-stroke) solid transparent;background:var(--brand-rule-y) left top/var(--brand-stroke) 100% no-repeat border-box,var(--brand-rule-y) right top/var(--brand-stroke) 100% no-repeat border-box;}
/* Legacy media-frame alias: product frames are quiet and solid, never dotted. */
.brand-outline {border:var(--brand-stroke) solid var(--line);}
@media(max-width:640px) {.brand-grid{border-inline:0;background:none;}.brand-rail{padding-inline-start:20px;}}
.wordmark,.brand-type {
  font-family:var(--font-display);
  font-weight:500;
  letter-spacing:-.035em;
}
.brand-heading {
  font-family:var(--font-display);
  font-size:var(--type-section);
  line-height:var(--leading-heading);
  font-weight:var(--weight-heading);
  letter-spacing:var(--tracking-heading);
  text-wrap:balance;
}
.brand-heading.hero-heading {font-size:var(--type-hero);}
@media(max-width:640px) {
  :root,.light,.dark {--type-hero:26px;--type-section:24px;}
}
