/* UBC Forward Figma handoff v0.2. Tokens and primitives, not a complete plugin stylesheet. */
/* No font binaries are bundled. Load licensed Whitney faces from the site before visual QA. */
.ubcf {
  --ubcf-color-navy: #002145;
  --ubcf-color-text: #002144;
  --ubcf-color-blue: #0055b7;
  --ubcf-color-orange: #e7860e;
  --ubcf-color-white: #fff;
  --ubcf-color-grey-1: #e2e2e2;
  --ubcf-color-grey-2: #e9e9e9;
  --ubcf-color-grey-3: #ededed;
  --ubcf-color-grey-4: #f1f1f1;
  --ubcf-radius-sm: 4px;
  --ubcf-radius: 8px;
  --ubcf-glass-fill: rgb(255 255 255 / 70%);
  --ubcf-glass-blur: 30px;
  --ubcf-panel-blur: 60px;
  --ubcf-related-blur: 8px;
  --ubcf-font: 'Whitney', Arial, sans-serif;
  --ubcf-ui-transition-duration: 600ms;
  /* Ease-in-out-back is not a native CSS named easing: see docs/08-motion-and-assets.md. */
  --ubcf-ui-transition-easing: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  color: var(--ubcf-color-text);
  font-family: var(--ubcf-font);
  font-synthesis: none;
  --ubcf-type-heading-1-size: 50px;
  --ubcf-type-heading-1-line: 54px;
  --ubcf-type-heading-1-weight: 400;
  --ubcf-type-heading-1-letter: -0.03em;
  --ubcf-type-heading-2-size: 24px;
  --ubcf-type-heading-2-line: 28px;
  --ubcf-type-heading-2-weight: 600;
  --ubcf-type-heading-2-letter: 0em;
  --ubcf-type-heading-3-size: 16px;
  --ubcf-type-heading-3-line: 24px;
  --ubcf-type-heading-3-weight: 300;
  --ubcf-type-heading-3-letter: 0em;
  --ubcf-type-copy-lrg-size: 24px;
  --ubcf-type-copy-lrg-line: 32px;
  --ubcf-type-copy-lrg-weight: 300;
  --ubcf-type-copy-lrg-letter: 0em;
  --ubcf-type-copy-med-size: 20px;
  --ubcf-type-copy-med-line: 24px;
  --ubcf-type-copy-med-weight: 300;
  --ubcf-type-copy-med-letter: -0.02em;
  --ubcf-type-copy-sml-size: 16px;
  --ubcf-type-copy-sml-line: 20px;
  --ubcf-type-copy-sml-weight: 300;
  --ubcf-type-copy-sml-letter: 0em;
  --ubcf-type-copy-xsml-size: 14px;
  --ubcf-type-copy-xsml-line: 16px;
  --ubcf-type-copy-xsml-weight: 400;
  --ubcf-type-copy-xsml-letter: 0em;
  --ubcf-type-card-heading-1-size: 24px;
  --ubcf-type-card-heading-1-line: 28px;
  --ubcf-type-card-heading-1-weight: 500;
  --ubcf-type-card-heading-1-letter: -0.025em;
  --ubcf-type-card-heading-2-size: 24px;
  --ubcf-type-card-heading-2-line: 28px;
  --ubcf-type-card-heading-2-weight: 400;
  --ubcf-type-card-heading-2-letter: -0.01em;
  --ubcf-type-card-heading-3-size: 20px;
  --ubcf-type-card-heading-3-line: 24px;
  --ubcf-type-card-heading-3-weight: 600;
  --ubcf-type-card-heading-3-letter: 0em;
  --ubcf-type-quote-size: 36px;
  --ubcf-type-quote-line: 42px;
  --ubcf-type-quote-weight: 400;
  --ubcf-type-quote-letter: -0.02em;
  --ubcf-type-button-lrg-size: 14px;
  --ubcf-type-button-lrg-line: 18px;
  --ubcf-type-button-lrg-weight: 700;
  --ubcf-type-button-lrg-letter: 0em;
  --ubcf-type-button-med-size: 12px;
  --ubcf-type-button-med-line: 16px;
  --ubcf-type-button-med-weight: 600;
  --ubcf-type-button-med-letter: 0em;
  --ubcf-type-button-sml-size: 8px;
  --ubcf-type-button-sml-line: 10px;
  --ubcf-type-button-sml-weight: 600;
  --ubcf-type-button-sml-letter: 0em;
  --ubcf-type-story-body-size: 24px;
  --ubcf-type-story-body-line: 32px;
  --ubcf-type-story-body-weight: 300;
  --ubcf-type-story-body-letter: 0em;
  --ubcf-type-story-title-tier2-size: 44px;
  --ubcf-type-story-title-tier2-line: 48px;
  --ubcf-type-story-title-tier2-weight: 400;
  --ubcf-type-story-title-tier2-letter: -0.03em;
  --ubcf-type-story-title-tier3-size: 50px;
  --ubcf-type-story-title-tier3-line: 54px;
  --ubcf-type-story-title-tier3-weight: 400;
  --ubcf-type-story-title-tier3-letter: -0.03em;
  --ubcf-type-story-quote-size: 36px;
  --ubcf-type-story-quote-line: 42px;
  --ubcf-type-story-quote-weight: 400;
  --ubcf-type-story-quote-letter: 0em;
  --ubcf-type-related-heading-size: 18px;
  --ubcf-type-related-heading-line: 20px;
  --ubcf-type-related-heading-weight: 600;
  --ubcf-type-related-heading-letter: 0em;
  --ubcf-type-story-theme-size: 14px;
  --ubcf-type-story-theme-line: 18px;
  --ubcf-type-story-theme-weight: 600;
  --ubcf-type-story-theme-letter: 0em;
  --ubcf-type-tag-label-size: 12px;
  --ubcf-type-tag-label-line: 14px;
  --ubcf-type-tag-label-weight: 600;
  --ubcf-type-tag-label-letter: 0em;
  --ubcf-type-close-label-size: 10px;
  --ubcf-type-close-label-line: 12px;
  --ubcf-type-close-label-weight: 600;
  --ubcf-type-close-label-letter: 0em;
  --ubcf-type-external-link-size: 12px;
  --ubcf-type-external-link-line: 14px;
  --ubcf-type-external-link-weight: 500;
  --ubcf-type-external-link-letter: 0em;
}

@media (min-width: 1024px) {
  .ubcf {
  --ubcf-type-heading-1-size: 72px;
  --ubcf-type-heading-1-line: 74px;
  --ubcf-type-heading-1-weight: 400;
  --ubcf-type-heading-1-letter: -0.03em;
  --ubcf-type-heading-2-size: 24px;
  --ubcf-type-heading-2-line: 28px;
  --ubcf-type-heading-2-weight: 600;
  --ubcf-type-heading-2-letter: 0em;
  --ubcf-type-heading-3-size: 16px;
  --ubcf-type-heading-3-line: 24px;
  --ubcf-type-heading-3-weight: 300;
  --ubcf-type-heading-3-letter: 0em;
  --ubcf-type-copy-lrg-size: 40px;
  --ubcf-type-copy-lrg-line: 44px;
  --ubcf-type-copy-lrg-weight: 300;
  --ubcf-type-copy-lrg-letter: -0.02em;
  --ubcf-type-copy-med-size: 32px;
  --ubcf-type-copy-med-line: 40px;
  --ubcf-type-copy-med-weight: 300;
  --ubcf-type-copy-med-letter: -0.02em;
  --ubcf-type-copy-sml-size: 20px;
  --ubcf-type-copy-sml-line: 24px;
  --ubcf-type-copy-sml-weight: 300;
  --ubcf-type-copy-sml-letter: 0em;
  --ubcf-type-copy-xsml-size: 14px;
  --ubcf-type-copy-xsml-line: 16px;
  --ubcf-type-copy-xsml-weight: 400;
  --ubcf-type-copy-xsml-letter: 0em;
  --ubcf-type-card-heading-1-size: 32px;
  --ubcf-type-card-heading-1-line: 34px;
  --ubcf-type-card-heading-1-weight: 500;
  --ubcf-type-card-heading-1-letter: -0.025em;
  --ubcf-type-card-heading-2-size: 24px;
  --ubcf-type-card-heading-2-line: 28px;
  --ubcf-type-card-heading-2-weight: 400;
  --ubcf-type-card-heading-2-letter: -0.01em;
  --ubcf-type-card-heading-3-size: 20px;
  --ubcf-type-card-heading-3-line: 24px;
  --ubcf-type-card-heading-3-weight: 600;
  --ubcf-type-card-heading-3-letter: 0em;
  --ubcf-type-quote-size: 48px;
  --ubcf-type-quote-line: 50px;
  --ubcf-type-quote-weight: 400;
  --ubcf-type-quote-letter: -0.02em;
  --ubcf-type-button-lrg-size: 20px;
  --ubcf-type-button-lrg-line: 24px;
  --ubcf-type-button-lrg-weight: 600;
  --ubcf-type-button-lrg-letter: 0em;
  --ubcf-type-button-med-size: 14px;
  --ubcf-type-button-med-line: 18px;
  --ubcf-type-button-med-weight: 600;
  --ubcf-type-button-med-letter: 0em;
  --ubcf-type-button-sml-size: 8px;
  --ubcf-type-button-sml-line: 10px;
  --ubcf-type-button-sml-weight: 600;
  --ubcf-type-button-sml-letter: 0em;
  --ubcf-type-story-body-size: 32px;
  --ubcf-type-story-body-line: 40px;
  --ubcf-type-story-body-weight: 300;
  --ubcf-type-story-body-letter: 0em;
  --ubcf-type-story-title-tier2-size: 72px;
  --ubcf-type-story-title-tier2-line: 74px;
  --ubcf-type-story-title-tier2-weight: 400;
  --ubcf-type-story-title-tier2-letter: -0.03em;
  --ubcf-type-story-title-tier3-size: 72px;
  --ubcf-type-story-title-tier3-line: 74px;
  --ubcf-type-story-title-tier3-weight: 400;
  --ubcf-type-story-title-tier3-letter: -0.03em;
  --ubcf-type-story-quote-size: 48px;
  --ubcf-type-story-quote-line: 50px;
  --ubcf-type-story-quote-weight: 400;
  --ubcf-type-story-quote-letter: 0em;
  --ubcf-type-related-heading-size: 32px;
  --ubcf-type-related-heading-line: 34px;
  --ubcf-type-related-heading-weight: 500;
  --ubcf-type-related-heading-letter: 0em;
  --ubcf-type-story-theme-size: 24px;
  --ubcf-type-story-theme-line: 28px;
  --ubcf-type-story-theme-weight: 600;
  --ubcf-type-story-theme-letter: 0em;
  --ubcf-type-tag-label-size: 12px;
  --ubcf-type-tag-label-line: 14px;
  --ubcf-type-tag-label-weight: 600;
  --ubcf-type-tag-label-letter: 0em;
  --ubcf-type-close-label-size: 10px;
  --ubcf-type-close-label-line: 12px;
  --ubcf-type-close-label-weight: 600;
  --ubcf-type-close-label-letter: 0em;
  --ubcf-type-external-link-size: 12px;
  --ubcf-type-external-link-line: 14px;
  --ubcf-type-external-link-weight: 500;
  --ubcf-type-external-link-letter: 0em;
  }
}

.ubcf .ubcf-type-heading-1 {
  font-size: var(--ubcf-type-heading-1-size);
  line-height: var(--ubcf-type-heading-1-line);
  font-weight: var(--ubcf-type-heading-1-weight);
  letter-spacing: var(--ubcf-type-heading-1-letter);
}

.ubcf .ubcf-type-heading-2 {
  font-size: var(--ubcf-type-heading-2-size);
  line-height: var(--ubcf-type-heading-2-line);
  font-weight: var(--ubcf-type-heading-2-weight);
  letter-spacing: var(--ubcf-type-heading-2-letter);
}

.ubcf .ubcf-type-heading-3 {
  font-size: var(--ubcf-type-heading-3-size);
  line-height: var(--ubcf-type-heading-3-line);
  font-weight: var(--ubcf-type-heading-3-weight);
  letter-spacing: var(--ubcf-type-heading-3-letter);
}

.ubcf .ubcf-type-copy-lrg {
  font-size: var(--ubcf-type-copy-lrg-size);
  line-height: var(--ubcf-type-copy-lrg-line);
  font-weight: var(--ubcf-type-copy-lrg-weight);
  letter-spacing: var(--ubcf-type-copy-lrg-letter);
}

.ubcf .ubcf-type-copy-med {
  font-size: var(--ubcf-type-copy-med-size);
  line-height: var(--ubcf-type-copy-med-line);
  font-weight: var(--ubcf-type-copy-med-weight);
  letter-spacing: var(--ubcf-type-copy-med-letter);
}

.ubcf .ubcf-type-copy-sml {
  font-size: var(--ubcf-type-copy-sml-size);
  line-height: var(--ubcf-type-copy-sml-line);
  font-weight: var(--ubcf-type-copy-sml-weight);
  letter-spacing: var(--ubcf-type-copy-sml-letter);
}

.ubcf .ubcf-type-copy-xsml {
  font-size: var(--ubcf-type-copy-xsml-size);
  line-height: var(--ubcf-type-copy-xsml-line);
  font-weight: var(--ubcf-type-copy-xsml-weight);
  letter-spacing: var(--ubcf-type-copy-xsml-letter);
}

.ubcf .ubcf-type-card-heading-1 {
  font-size: var(--ubcf-type-card-heading-1-size);
  line-height: var(--ubcf-type-card-heading-1-line);
  font-weight: var(--ubcf-type-card-heading-1-weight);
  letter-spacing: var(--ubcf-type-card-heading-1-letter);
}

.ubcf .ubcf-type-card-heading-2 {
  font-size: var(--ubcf-type-card-heading-2-size);
  line-height: var(--ubcf-type-card-heading-2-line);
  font-weight: var(--ubcf-type-card-heading-2-weight);
  letter-spacing: var(--ubcf-type-card-heading-2-letter);
}

.ubcf .ubcf-type-card-heading-3 {
  font-size: var(--ubcf-type-card-heading-3-size);
  line-height: var(--ubcf-type-card-heading-3-line);
  font-weight: var(--ubcf-type-card-heading-3-weight);
  letter-spacing: var(--ubcf-type-card-heading-3-letter);
}

.ubcf .ubcf-type-quote {
  font-size: var(--ubcf-type-quote-size);
  line-height: var(--ubcf-type-quote-line);
  font-weight: var(--ubcf-type-quote-weight);
  letter-spacing: var(--ubcf-type-quote-letter);
}

.ubcf .ubcf-type-button-lrg {
  font-size: var(--ubcf-type-button-lrg-size);
  line-height: var(--ubcf-type-button-lrg-line);
  font-weight: var(--ubcf-type-button-lrg-weight);
  letter-spacing: var(--ubcf-type-button-lrg-letter);
}

.ubcf .ubcf-type-button-med {
  font-size: var(--ubcf-type-button-med-size);
  line-height: var(--ubcf-type-button-med-line);
  font-weight: var(--ubcf-type-button-med-weight);
  letter-spacing: var(--ubcf-type-button-med-letter);
}

.ubcf .ubcf-type-button-sml {
  font-size: var(--ubcf-type-button-sml-size);
  line-height: var(--ubcf-type-button-sml-line);
  font-weight: var(--ubcf-type-button-sml-weight);
  letter-spacing: var(--ubcf-type-button-sml-letter);
}

.ubcf .ubcf-type-story-body {
  font-size: var(--ubcf-type-story-body-size);
  line-height: var(--ubcf-type-story-body-line);
  font-weight: var(--ubcf-type-story-body-weight);
  letter-spacing: var(--ubcf-type-story-body-letter);
}

.ubcf .ubcf-type-story-title-tier2 {
  font-size: var(--ubcf-type-story-title-tier2-size);
  line-height: var(--ubcf-type-story-title-tier2-line);
  font-weight: var(--ubcf-type-story-title-tier2-weight);
  letter-spacing: var(--ubcf-type-story-title-tier2-letter);
}

.ubcf .ubcf-type-story-title-tier3 {
  font-size: var(--ubcf-type-story-title-tier3-size);
  line-height: var(--ubcf-type-story-title-tier3-line);
  font-weight: var(--ubcf-type-story-title-tier3-weight);
  letter-spacing: var(--ubcf-type-story-title-tier3-letter);
}

.ubcf .ubcf-type-story-quote {
  font-size: var(--ubcf-type-story-quote-size);
  line-height: var(--ubcf-type-story-quote-line);
  font-weight: var(--ubcf-type-story-quote-weight);
  letter-spacing: var(--ubcf-type-story-quote-letter);
}

.ubcf .ubcf-type-related-heading {
  font-size: var(--ubcf-type-related-heading-size);
  line-height: var(--ubcf-type-related-heading-line);
  font-weight: var(--ubcf-type-related-heading-weight);
  letter-spacing: var(--ubcf-type-related-heading-letter);
}

.ubcf .ubcf-type-story-theme {
  font-size: var(--ubcf-type-story-theme-size);
  line-height: var(--ubcf-type-story-theme-line);
  font-weight: var(--ubcf-type-story-theme-weight);
  letter-spacing: var(--ubcf-type-story-theme-letter);
}

.ubcf .ubcf-type-tag-label {
  font-size: var(--ubcf-type-tag-label-size);
  line-height: var(--ubcf-type-tag-label-line);
  font-weight: var(--ubcf-type-tag-label-weight);
  letter-spacing: var(--ubcf-type-tag-label-letter);
}

.ubcf .ubcf-type-close-label {
  font-size: var(--ubcf-type-close-label-size);
  line-height: var(--ubcf-type-close-label-line);
  font-weight: var(--ubcf-type-close-label-weight);
  letter-spacing: var(--ubcf-type-close-label-letter);
}

.ubcf .ubcf-type-external-link {
  font-size: var(--ubcf-type-external-link-size);
  line-height: var(--ubcf-type-external-link-line);
  font-weight: var(--ubcf-type-external-link-weight);
  letter-spacing: var(--ubcf-type-external-link-letter);
}

.ubcf .ubcf-glass {
  border: 1px solid var(--ubcf-color-grey-4);
  border-radius: var(--ubcf-radius);
  background: var(--ubcf-glass-fill);
  -webkit-backdrop-filter: blur(var(--ubcf-glass-blur));
  backdrop-filter: blur(var(--ubcf-glass-blur));
}
.ubcf .ubcf-glass-panel {
  -webkit-backdrop-filter: blur(var(--ubcf-panel-blur));
  backdrop-filter: blur(var(--ubcf-panel-blur));
}
.ubcf .ubcf-control {
  font-family: inherit;
  cursor: pointer;
  transition: background-color var(--ubcf-ui-transition-duration) var(--ubcf-ui-transition-easing), color var(--ubcf-ui-transition-duration) var(--ubcf-ui-transition-easing);
}
.ubcf .ubcf-control:focus-visible {
  outline: 2px solid var(--ubcf-color-text);
  outline-offset: 3px;
}
.ubcf .ubcf-control:disabled { cursor: default; }
.ubcf .ubcf-primary {
  background: var(--ubcf-color-navy);
  color: white;
  border-radius: var(--ubcf-radius);
}
.ubcf .ubcf-primary:hover:not(:disabled) { background: var(--ubcf-color-blue); }
.ubcf .ubcf-primary:disabled { opacity: 0.2; }
.ubcf .ubcf-link { border-bottom: 1px solid var(--ubcf-color-orange); }
.ubcf .ubcf-link:hover { border-bottom-color: var(--ubcf-color-blue); }
@supports not (backdrop-filter: blur(1px)) {
  .ubcf .ubcf-glass { background: rgb(255 255 255 / 95%); }
}
@media (prefers-reduced-motion: reduce) {
  .ubcf .ubcf-control { transition-duration: 0ms; }
}

