/* Bemate Studio · v6.0.0
   Bemate palette and requested font roles. Rem dimensions follow the browser root.
   Paths assume this file is in downloads/ and assets/ is its sibling. */
@font-face {
  font-family: 'Neue Montreal';
  src: url('../assets/fonts/NeueMontreal-Medium.otf') format('opentype');
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: 'Geist Pixel Square';
  src: url('../assets/fonts/GeistPixel-Square.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: 'IBM Plex Mono';
  src: url('../assets/fonts/IBMPlexMono-Regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root {
  --ds-paper: #F6F6F6;
  --ds-ink: #252525;
  --ds-silver: #C9C9C9;
  --ds-violet: #8454F7;
  --ds-orange: #F79400;
  --ds-lime: #C3F602;
  --ds-orchid: #BF67F8;
  --ds-violet-screen: #7C57F3;
  --ds-gray-quote: #CBCBCB;
  --ds-gray-window: #DBDBDB;
  --ds-font-main: 'Neue Montreal',Arial,sans-serif;
  --ds-font-display: 'Geist Pixel Square',monospace;
  --ds-font-technical: 'IBM Plex Mono',monospace;
  --ds-space-1: 0.25rem;
  --ds-space-2: 0.5rem;
  --ds-space-3: 0.75rem;
  --ds-space-4: 1rem;
  --ds-space-5: 1.5rem;
  --ds-space-6: 2rem;
  --ds-space-7: 3rem;
  --ds-space-8: 4rem;
  --ds-hairline: 1px;
  --ds-radius-tile: 0;
  --ds-radius-small: 0.375rem;
  --ds-radius-window: 1.25rem;
  --ds-radius-pill: 999px;
  --ds-shadow: none;
  --ds-label-size: 0.625rem;
  --ds-meta-size: 0.875rem;
  --ds-body-size: 1rem;
  --ds-title-size: 2.5rem;
  --ds-display-size: 4rem;
  --ds-numeral-size: 9rem;
  --ds-leading-body: 1.15;
  --ds-leading-display: 1;
  --ds-tracking: -.035em;
  --ds-page-margin: 1.625rem;
  --ds-spread-ratio: 16/9;
  --ds-grid-columns: 12;
  --ds-spectrum-vertical: linear-gradient(180deg,var(--ds-violet),var(--ds-orchid) 20%,var(--ds-orange) 40%,var(--ds-lime) 60%,var(--ds-silver) 80%,var(--ds-violet));
  --ds-spectrum-spatial: linear-gradient(27deg,var(--ds-lime),var(--ds-silver) 25%,var(--ds-violet) 50%,var(--ds-silver) 75%,var(--ds-lime));
  --ds-texture-marble: url('../assets/materials/marble.svg');
  --ds-texture-horizontal: url('../assets/materials/marble.svg');
  --ds-panel-padding: var(--ds-space-5);
  --ds-grid-gap: var(--ds-space-5);
  --ds-section-gap: var(--ds-space-8);
  --ds-control-gap: var(--ds-space-2);
  --ds-window-bar-height: 2.625rem;
  --ds-micro-bar-height: .875rem;
}
.ds-surface {
  color: var(--ds-ink);
  background: var(--ds-paper);
  font-family: var(--ds-font-main);
  font-weight: 500;
  font-synthesis: none;
}
.ds-surface--dark {
  color: var(--ds-paper);
  background: var(--ds-ink);
}
.ds-display {
  font-family: var(--ds-font-display);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.055em;
}
.ds-technical {
  font-family: var(--ds-font-technical);
  font-weight: 400;
  font-size: var(--ds-label-size);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}
.ds-folio {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr auto;
  align-items: start;
  gap: var(--ds-grid-gap);
  font-size: 0.875rem;
  line-height: 1.1;
}
.ds-folio>:nth-last-child(2) {
  text-align: right;
}
.ds-folio>:last-child {
  min-width: 2.375rem;
  text-align: right;
}
.ds-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  max-width: 100%;
  min-height: 1.5rem;
  padding: 0.125rem 0.5625rem;
  border: 1px solid currentColor;
  border-radius: var(--ds-radius-pill);
  font: inherit;
  font-size: 0.875rem;
  line-height: 1;
  background: transparent;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
}
button.ds-pill,a.ds-pill {
  cursor: pointer;
}
button.ds-pill:hover,a.ds-pill:hover,.ds-pill[aria-pressed=true] {
  background: var(--ds-ink);
  color: var(--ds-paper);
  border-color: var(--ds-ink);
}
.ds-pill:disabled {
  opacity: .4;
  cursor: not-allowed;
}
.ds-window {
  border: 1px solid currentColor;
  border-radius: var(--ds-radius-window);
  overflow: hidden;
  background: transparent;
  box-shadow: none;
}
.ds-window__bar {
  min-height: 2.625rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1.375rem;
  border-bottom: 1px solid currentColor;
  gap: 0.75rem;
}
.ds-window__title {
  margin: 0;
  font-family: var(--ds-font-display);
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: 1.1;
}
.ds-window__body {
  padding: var(--ds-space-4) var(--ds-panel-padding) 1.75rem;
  font-size: 0.875rem;
  line-height: 1.15;
}
.ds-window--compact {
  border-radius: 0.375rem;
  background: var(--ds-silver);
}
.ds-window--compact>.ds-window__bar {
  min-height: 0.875rem;
  height: 0.875rem;
  padding: 0 0.1875rem;
  background: var(--ds-ink);
  color: var(--ds-silver);
  border: 0;
}
.ds-window--compact>.ds-window__body {
  padding: 0.5rem;
  font-size: 0.625rem;
  line-height: 1.05;
}
.ds-window--browser {
  background: var(--ds-gray-window);
}
.ds-window--browser>.ds-window__bar {
  background: var(--ds-ink);
  color: var(--ds-paper);
  min-height: 1.875rem;
  padding: 0.25rem 1rem;
}
.ds-spectrum {
  background-image: var(--ds-spectrum-vertical);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
.ds-spectrum--spatial {
  background-image: var(--ds-spectrum-spatial);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
.ds-marble {
  background-image: var(--ds-texture-marble);
  background-size: cover;
  background-position: center;
  image-rendering: auto;
}
.ds-quote {
  margin: 0;
  padding: 2rem 1.625rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.25rem;
  border-radius: 0.375rem;
  font-size: 1.25rem;
  line-height: 1.12;
  letter-spacing: -.02em;
  text-align: center;
}
.ds-quote cite {
  font-family: var(--ds-font-technical);
  font-size: 0.625rem;
  line-height: 1.25;
  font-style: normal;
  letter-spacing: 0;
}
.ds-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
  line-height: 1.15;
}
.ds-table th,.ds-table td {
  border-block: 1px solid var(--ds-ink);
  padding: 0.375rem 0.5rem;
  text-align: left;
  font-weight: 500;
}
.ds-table thead {
  font-family: var(--ds-font-technical);
  font-size: 0.625rem;
  text-transform: uppercase;
}
.ds-table tr:nth-child(even) {
  background: var(--ds-silver);
}
.ds-rule {
  height: 1px;
  border: 0;
  margin: 0;
  background: currentColor;
}
.ds-grid {
  display: grid;
  grid-template-columns: repeat(12,minmax(0,1fr));
  gap: var(--ds-grid-gap);
}
.ds-copy {
  font-size: 1rem;
  line-height: 1.15;
  letter-spacing: -.01em;
}
.ds-copy p {
  margin: 0 0 1em;
}
:where(button,a,input,select,textarea):focus-visible {
  outline: 0.125rem solid var(--ds-ink);
  outline-offset: 0.25rem;
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior: auto!important;
    transition: none!important;
  }
}
@media(max-width:720px) {
  .ds-folio {
    grid-template-columns: 1fr auto;
    gap: 0.75rem;
  }
  .ds-folio>:nth-child(2) {
    grid-row: 2;
    grid-column: 1/-1;
  }
  .ds-folio>:nth-last-child(2) {
    display: none;
  }
  .ds-grid {
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 1rem;
  }
}
/* Color-managed wide-gamut values from the embedded source ICC profile. */
@supports (color: color(display-p3 1 1 1)) {
  :root {
    --ds-paper: color(display-p3 0.964706 0.964706 0.964706);
    --ds-ink: color(display-p3 0.145098 0.145098 0.145098);
    --ds-silver: color(display-p3 0.788235 0.788235 0.788235);
    --ds-violet: color(display-p3 0.490196 0.341176 0.937255);
    --ds-orange: color(display-p3 0.913725 0.596078 0.2);
    --ds-lime: color(display-p3 0.803922 0.956863 0.294118);
    --ds-orchid: color(display-p3 0.705882 0.419608 0.941176);
    --ds-violet-screen: color(display-p3 0.466667 0.345098 0.921569);
  }
}

/* Root-relative sizing is intentional; do not force a pixel root size. */
.ds-gradient-violet{background:radial-gradient(ellipse at center,var(--ds-silver),var(--ds-orchid) 33%,var(--ds-violet) 65%,var(--ds-silver))}
.ds-gradient-lime{background:radial-gradient(ellipse at center,var(--ds-lime),var(--ds-silver) 50%,var(--ds-lime))}
