

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,700;1,300;1,700');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');
/**
 * Font-face
 */
/**
 * Font-face
 */
@font-face {
  font-family: 'Inter';
  font-style:  normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://cdn.jsdelivr.net/gh/rsms/inter@v3.19/docs/font-files/Inter-Regular.woff2') format('woff2'),
       url('https://cdn.jsdelivr.net/gh/rsms/inter@v3.19/docs/font-files/Inter-Regular.woff') format('woff');
}
@font-face {
  font-family: 'Inter';
  font-style:  normal;
  font-weight: 700;
  font-display: swap;
  src: url('https://cdn.jsdelivr.net/gh/rsms/inter@v3.19/docs/font-files/Inter-Bold.woff2') format('woff2'),
       url('https://cdn.jsdelivr.net/gh/rsms/inter@v3.19/docs/font-files/Inter-Bold.woff') format('woff');
}
@font-face {
  font-family: 'Inter var';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('https://cdn.jsdelivr.net/gh/rsms/inter@v3.19/docs/font-files/Inter-roman.var.woff2') format('woff2');
  font-named-instance: 'Regular';
}
/**
 * Font-face
 */
:root {
  /**
   * Spacing
   */

  --dh-grid: 8px;

  --dh-space-0: 0px;
  --dh-space-half: calc(var(--dh-grid) / 2);
  --dh-space-1: var(--dh-grid);
  --dh-space-2: calc(var(--dh-grid) * 2);
  --dh-space-3: calc(var(--dh-grid) * 3);
  --dh-space-4: calc(var(--dh-grid) * 4);
  --dh-space-5: calc(var(--dh-grid) * 5);
  --dh-space-6: calc(var(--dh-grid) * 6);
  --dh-space-7: calc(var(--dh-grid) * 7);
  --dh-space-8: calc(var(--dh-grid) * 8);

  /**
   * Media
   */

  --dh-screen-xlarge: 1441px;
  --dh-screen-large: 1280px;
  --dh-screen-desktop: 960px;
  --dh-screen-tablet: 768px;
  --dh-screen-mobile: 480px;
  --dh-screen-small: 400px;
  --dh-screen-xsmall: 300px;

  /**
   * Borders
   */

  --dh-border-0: 0px;
  --dh-border-1: 1px;
  --dh-border-2: 2px;
  --dh-border-3: 3px;
  --dh-border-4: 4px;
  --dh-border-5: 5px;
  --dh-border-6: 6px;
  --dh-border-7: 7px;
  --dh-border-8: 8px;

  --dh-border-default: var(--dh-border-2);

  /**
   * Inputs (Text, Select, Options)
   */

  --dh-input-font-weight: 400;
  --dh-input-font-size: 1em;

  --dh-input-border-width: 2px;
  --dh-input-border-radius: 2px;
  --dh-input-border-style: solid;
  --dh-input-stroke-width: 2px;
  --dh-input-stroke-linecap: butt;
  --dh-input-stroke-linejoin: round;
  --dh-input-stroke-dasharray: 5 2;

  --dh-input-border-color: inherit;

  --dh-input-inner-size: 24px;
  --dh-input-padding: calc(calc(var(--dh-grid) * 2) - var(--dh-input-border-width));

  /**
   * Focus
   */

  --dh-focus-width: 4px;
  --dh-focus-gap: 1px;

  /**
   * Icons
   */

  --dh-icon-stroke: currentColor;
  --dh-icon-stroke-width: 2;
  --dh-icon-fill: none;

  /**
   * Fonts
   */

  --dh-font-size: 12px;
  --dh-line-height: 1.6;
  --dh-letter-spacing: 0;

  --dh-font-webkit-smoothing: auto;
  --dh-font-moz-smoothing: auto;

  --dh-font-weight-normal: 400;
  --dh-font-weight-bold: 700;

  --dh-font-size-h1: 4em;
  --dh-font-size-h2: 3.33em;
  --dh-font-size-h3: 2em;
  --dh-font-size-h4: 1.66em;
  --dh-font-size-h5: 1.33em;
  --dh-font-size-h6: 1em;

  --dh-line-height-headings: 1.2;

  --dh-line-height-mono: 1.8;

  --dh-font-size-blockquote: 2.66em;
  --dh-line-height-blockquote: 1.2;

  --dh-font-size-small: 0.875em;

  --dh-type-margin: calc(var(--dh-grid) * 4);
}
/**
 * Responsive Font Sizing
 */
@media screen and (min-width: 480px) {
  :root {
    --dh-font-size: 14px
  }
}
@media screen and (min-width: 768px) {
  :root {
    --dh-font-size: 16px
  }
}
@media screen and (min-width: 960px) {
  :root {
    --dh-font-size: 18px
  }
}
/**
 * Print
 */
:root {
  --dh-print-main-width: 8.5in;
}
@media print {
  :root {
    --dh-font-size: 14px;
    --dh-line-height: 1.5;
    --dh-type-margin: 16px;
  }
}
:root {
  /**
   * Color
   */

  --dh-color-green: #37DC90;
  --dh-color-green-s1: #30724D;

  --dh-color-purple: #ad7aff;
  --dh-color-purple-s1: #6c46aa;

  --dh-color-black: #1E1E25;
  --dh-color-black-t1: #292932;

  --dh-color-white: #f5efff;
  --dh-color-white-s1: #ece0ff;

  --dh-color-forest: #071C17;
  --dh-color-forest-t1: #0B2C26;

  --dh-color-primary: var(--dh-color-purple-s1);

  --dh-color-text: var(--dh-color-forest);
  --dh-color-background: var(--dh-color-white-s1);
  --dh-color-background-t1: var(--dh-color-white);
  --dh-color-hyperlinks: var(--dh-color-primary);
  --dh-color-hyperlinks-underline: var(--dh-color-primary);
  --dh-color-focus: var(--dh-color-primary);

  /**
   * Typography
   */

   --dh-font-webkit-smoothing: auto;
   --dh-font-moz-smoothing: auto;

  --dh-font-family-primary: 'Inter var', sans-serif;
  --dh-font-weight-primary-normal: 400;
  --dh-font-weight-primary-bold: 700;
  /* https://rsms.me/inter/lab/ */
  --dh-font-features-primary: 'case' 0, 'cpsp', 'dlig' 0, 'frac', 'dnom' 0, 'numr' 0, 'salt' 0, 'subs' 0, 'sups' 0, 'tnum' 0, 'zero', 'ss01' 0, 'ss02', 'ss03' 0, 'ss04' 0, 'cv01', 'cv02', 'cv03', 'cv04', 'cv05' 0, 'cv06', 'cv07' 0, 'cv08' 0, 'cv09', 'cv10', 'cv11' 0, 'calt' 0, 'ccmp', 'kern' 0;
  /* --dh-line-height-primary: 1.8; */

  --dh-font-family-secondary: 'Cormorant Garamond', serif;
  --dh-font-weight-secondary-normal: 400;
  --dh-font-weight-secondary-bold: 700;
  --dh-font-features-secondary: normal;
  /* --dh-line-height-secondary: 1.2; */

  --dh-font-family-mono: 'JetBrains Mono', monospace;

  --dh-font-family: var(--dh-font-family-primary);
  --dh-font-features: var(--dh-font-features-primary);

  --dh-font-family-headings: var(--dh-font-family-primary);
  --dh-font-weight-headings: var(--dh-font-weight-bold);

  --dh-font-family-blockquote: var(--dh-font-family-secondary);

  /**
   * Inputs (Text, Select, Options)
   */

  --dh-input-font-family: var(--dh-font-family-primary);
  --dh-input-background: var(--dh-color-background);

  /**
   * Buttons
   */

  --dh-button-color: var(--dh-color-primary);
  --dh-button-font-weight: var(--dh-font-weight-primary-bold);
  --dh-button-background: var(--dh-color-background);
  --dh-button-border: var(--dh-color-primary);

  --dh-button-primary-color: var(--dh-color-background);
  --dh-button-primary-background: var(--dh-color-primary);
  --dh-button-primary-border: var(--dh-color-primary);

  --dh-button-color-hover: var(--dh-color-background);
  --dh-button-background-hover: var(--dh-color-text);

  /**
   * Hyperlinks
   */

  --dh-font-weight-hyperlinks: bold;
}
/**
 * Dark Mode
 */
@media (prefers-color-scheme: dark) {
  :root {
    --dh-color-white: var(--dh-color-white-s1);
    --dh-color-primary: var(--dh-color-purple);

    --dh-color-background: var(--dh-color-forest);
    --dh-color-background-t1: var(--dh-color-forest-t1);
    --dh-color-text: var(--dh-color-white-s1);

    --dh-font-webkit-smoothing: antialiased;
    --dh-font-moz-smoothing: grayscale;
  }
}
/**
 * Shared
 */
/* Tailwind.css requires this border box setting for its dimension based utilities */
html {
  box-sizing: border-box;
}
html,
body {
  height: auto;
  margin: 0;
  min-height: 100%;
  padding: 0;
}
*, :after, :before {
  box-sizing: inherit
}
/* Tailwind.css requires this border setting for its borders to work properly */
[class*='border'] {
  border-style: solid;
  border-width: 0
}
[hidden] {
  display: none !important;
}
img, svg {
  display: inline-block;
  max-width: 100%;
  height: auto;

  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimizequality;
}
a {
  overflow-wrap: break-word;
  word-wrap: break-word;
}
label {
  display: inline-block;
}
fieldset, legend, dl, dt, dd {
  border-width: 0;
  padding: 0;
  margin: 0;
}
svg, a > *, button > *, use {
  pointer-events: none;
}
iframe {
  border: none;
}
/**
 * Body
 */
body {
  color: var(--dh-color-text);
  background: var(--dh-color-background);

  font-family: var(--dh-font-family);
  font-feature-settings: var(--dh-font-features);
  font-size: var(--dh-font-size);
  font-weight: var(--dh-font-weight-normal);
  line-height: var(--dh-line-height);
  letter-spacing: var(--dh-letter-spacing);

  -webkit-font-smoothing: var(--dh-font-webkit-smoothing);
  -moz-osx-font-smoothing: var(--dh-font-moz-smoothing);
}
/**
 * Animate
 */
a, input, textarea, select, .btn, [class*='hover'], .opt__base {
  transition-property: opacity, background, color, text-decoration-color, border, box-shadow, outline, transform, stroke, stroke-dashoffset, fill;
  transition-duration: 0.25s;
  backface-visibility: hidden;
}
/**
 * Typography
 */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--dh-font-family-headings);
  font-weight: var(--dh-font-weight-headings);
  line-height: var(--dh-line-height-headings);

  margin-top: calc(var(--dh-type-margin) * 1.5);
  margin-bottom: var(--dh-type-margin);

  display: flex;
  align-items: center;

  page-break-after: avoid;
}
h5, h6,
.h5, .h6 {
  margin-bottom: calc(var(--dh-type-margin) / 2);
}
h1, .h1 {
  font-family: var(--dh-font-family-secondary);
  font-weight: var(--dh-font-weight-normal);
  font-size: var(--dh-font-size-h1);
  font-feature-settings: var(--dh-font-features-secondary);
}
h2, .h2 {
  font-family: var(--dh-font-family-secondary);
  font-weight: var(--dh-font-weight-normal);
  font-size: var(--dh-font-size-h2);
  font-feature-settings: var(--dh-font-features-secondary);
  /* page-break-before: always; */
}
h3, .h3 {
  font-size: var(--dh-font-size-h3);
}
h4, .h4 {
  font-size: var(--dh-font-size-h4);
}
h5, .h5 {
  font-size: var(--dh-font-size-h5);
  font-weight: var(--dh-font-weight-bold);
}
h6, .h6 {
  font-size: var(--dh-font-size-h6);
  font-weight: var(--dh-font-weight-bold);
}
blockquote, .blockquote {
  font-family: var(--dh-font-family-blockquote);
  font-feature-settings: var(--dh-font-features-secondary);
  font-size: var(--dh-font-size-blockquote);
  line-height: var(--dh-line-height-blockquote);

  margin-top: 0;
  margin-block-start: var(--dh-space-8);
  margin-block-end: var(--dh-space-8);
  margin-left: 0;
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  blockquote, .blockquote {
    border-width: 0;
    border-style: solid;
    border-inline-start-width: 4px;
    padding-inline-start: var(--dh-space-4);
  }
}
small, .small {
  font-size: var(--dh-font-size-small);
}
p, ul, ol, .question {
  margin-top: 0px;
  margin-bottom: var(--dh-type-margin);
}
ul, ol {
  padding-inline-start: calc(var(--dh-grid) * 3);
}
li {
  margin-bottom: calc(var(--dh-type-margin) * .5);
}
li > ul, li > ul:first-child {
  margin-top: calc(var(--dh-type-margin) * .5);
}
p {
  font-family: var(--dh-font-family-body);
}
h1 a:not(.btn), h2 a:not(.btn), h3 a:not(.btn), h4 a:not(.btn), h5 a:not(.btn), h6 a:not(.btn),
.h1 a:not(.btn), .h2 a:not(.btn), .h3 a:not(.btn), .h4 a:not(.btn), .h5 a:not(.btn), .h6 a:not(.btn),
blockquote a:not(.btn), .blockquote a:not(.btn) {
  font-weight: initial;
}
/**
 * Code
 */
code, pre, .hljs {
  display: inline-block;
}
code, pre {
  font-family: var(--dh-font-family-mono);
  line-height: var(--dh-line-height-mono);

  background-color: var(--dh-color-background-t1);
}
[class*='hljs-'] {
  color: var(--dh-color-primary);
}
p code, li code, td code {
  font-size: 80%;
  font-family: inherit;

  border-radius: 3px;
  padding: 0.1em 0.4em 0.3em;
  margin: 0;
  display: inline;
  white-space: nowrap;
}
td > code {
  display: inline-block
}
pre, .hljs {
  display: block;
  border-radius: 3px;
  max-width: 100%;
  overflow: hidden;
  overflow-x: auto;
  padding: calc(var(--dh-grid) * 3);

  margin-bottom: calc(var(--dh-grid) * 8);
}
@media screen and (min-width: 768px) {
  pre, .hljs {
    padding: calc(var(--dh-grid) * 6);
  }
}
.dl {
  display: grid;
  grid-template-columns: clamp(8rem, 33.33%, 16rem) 1fr;
  margin-bottom: calc(var(--dh-grid) * 8);
}
.dl dt, .dl dd {
  padding: var(--dh-space-1) var(--dh-space-1);
}
.dl {
  border-top: var(--dh-border-default) solid var(--dh-color-background-t1);
}
.dl dt, .dl dd {
  border-bottom: var(--dh-border-default) solid var(--dh-color-background-t1);
}
.details {
  margin-bottom: var(--dh-type-margin);
}
.details summary {
  color: var(--dh-color-hyperlinks);
  font-weight: var(--dh-font-weight-hyperlinks);
  text-decoration-color: var(--dh-color-hyperlinks-underline);

  -webkit-text-decoration-skip: ink;

          text-decoration-skip-ink: auto;
  text-decoration-thickness: from-font;

  cursor: pointer;
}
.details summary::marker {
  color: var(--dh-color-primary)
}
/**
 * Hyperlinks
 */
a:not(.btn) {
  color: var(--dh-color-hyperlinks);
  font-weight: var(--dh-font-weight-hyperlinks);
  text-decoration-color: var(--dh-color-hyperlinks-underline);

  -webkit-text-decoration-skip: ink;

          text-decoration-skip-ink: auto;
  text-decoration-thickness: from-font;
}
a:not(.btn):hover {
  color: var(--dh-color-text);
  text-decoration-color: var(--dh-color-hyperlinks);
}
/**
 * Highlights
 */
::-moz-selection {
  color: var(--dh-color-background);
  background-color: var(--dh-color-hyperlinks);
}
mark, ::selection {
  color: var(--dh-color-background);
  background-color: var(--dh-color-hyperlinks);
}
/**
 * Dividers
 */
hr {
  border: none;
  border-bottom: var(--dh-border-default) solid var(--dh-color-background-t1);

  margin-top: var(--dh-type-margin);
  margin-bottom: var(--dh-type-margin);
}
/**
 * Inputs
 */
input, button, select, textarea {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;

  border: none;
  background: transparent;
  display: block;
  margin: 0;
  padding: 0;

  cursor: pointer;
}
.opt, .btn, .select, .input {
  display: inline-block;
  margin-bottom: var(--dh-grid);
}
.opt:last-of-type,
.btn:last-of-type,
.select:last-of-type,
.input:last-of-type {
  margin-bottom: 0
}
.opt__base, .btn, .select select, .input input {
  color: inherit;
  border-color: var(--dh-input-border-color);
  background-color: var(--dh-input-background);

  font-size: var(--dh-input-font-size);
  line-height: var(--dh-input-inner-size);

  font-family: var(--dh-input-font-family);
  font-weight: var(--dh-input-font-weight);
  text-decoration: none;

  display: inline-flex;
  align-items: center;

  padding: calc(calc(var(--dh-grid) * 2) - var(--dh-input-border-width)) calc(var(--dh-grid) * 2.5);
  border: var(--dh-input-border-width) var(--dh-input-border-style);
  border-radius: var(--dh-input-border-radius);

  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
/**
 * Options
 */
.opt__graphic {
  color: inherit;
  fill: transparent;
  stroke: transparent;

  stroke-width: var(--dh-input-stroke-width);
  stroke-linecap: var(--dh-input-stroke-linecap);
  stroke-linejoin: var(--dh-input-stroke-linejoin);
  stroke-dasharray: var(--dh-input-stroke-dasharray);

  width: var(--dh-input-inner-size);
  height: var(--dh-input-inner-size);
  margin-inline-end: var(--dh-grid);
}
input:hover + .opt__base {
  border-color: var(--dh-color-focus);
}
input:checked + .opt__base {
  color: inherit;
}
input:checked + .opt__base > .opt__graphic {
  color: var(--dh-color-focus);
  fill: var(--dh-color-focus);
  stroke: var(--dh-input-background);
}
/**
 * Buttons
 */
.btn {
  justify-content: center;

  color: var(--dh-button-color);
  font-weight: var(--dh-button-font-weight);

  background-color: var(--dh-button-background);
  border-color: var(--dh-button-border);
}
.btn:hover {
  color: var(--dh-button-color-hover);
  background-color: var(--dh-button-background-hover);
  border-color: var(--dh-button-background-hover);
}
.btn-primary {
  color: var(--dh-button-primary-color);
  background-color: var(--dh-button-primary-background);
  border-color: var(--dh-button-primary-background);
}
.btn-primary:hover {
  background-color: var(--dh-button-background-hover);
  border-color: var(--dh-button-background-hover);
}
/**
 * Selects
 */
.select {
  position: relative;
}
.select select {
  padding-inline-end: calc(
    calc(var(--dh-grid) * 2.5) + var(--dh-input-inner-size) + var(--dh-grid)
  );
}
.select__graphic {
  width: var(--dh-input-inner-size);
  height: var(--dh-input-inner-size);
  top: 50%;
  margin-top: calc(var(--dh-input-inner-size) / 2 * -1);
  position: absolute;
  right: calc(var(--dh-grid) * 2.5);
  inset-inline-end: calc(var(--dh-grid) * 2.5);

  stroke-width: var(--dh-input-stroke-width);
  stroke-linecap: var(--dh-input-stroke-linecap);
  stroke-linejoin: var(--dh-input-stroke-linejoin);
}
.select select:hover {
  border-color: var(--dh-color-focus);
}
/**
 * Labels
 */
.label {
  font-weight: var(--dh-font-weight-primary-bold);
  margin-bottom: var(--dh-grid);
}
/**
 * Focus
 */
a:focus,
.btn:focus,
.input input:focus,
.select select:focus,
input:focus + .opt__base {
   outline: none;
   box-shadow: 0 0 0 var(--dh-focus-gap) var(--dh-color-background),
               0 0 0 var(--dh-focus-width) var(--dh-color-focus);
}
/**
 * Icons
 */
.icon {
  width: var(--dh-space-3);
  height: var(--dh-space-3);
  stroke: var(--dh-icon-stroke);
  stroke-width: var(--dh-icon-stroke-width);
  fill: var(--dh-icon-fill);
}
/**
 * Figures
 */
.figure {
  display: block;
  position: relative;

  margin: 0;
  margin-bottom: calc(var(--dh-grid) * 8);

  background-size: cover;
  background-position: center center;
}
.figure .figure__matte {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  width: 100%;
}
.figure .figure__work {
  aspect-ratio: inherit;
}
.figure figcaption {
  font-size: var(--dh-font-size-small);
  background: var(--dh-color-background-t1);
  padding: var(--dh-space-3) var(--dh-space-3);
}
.figure figcaption {
  bottom: calc(-1 * var(--dh-space-3));
  right: calc(-1 * var(--dh-space-3));
}
.figure--frame .figure__matte {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--dh-space-3);
}
.figure-scroll {
  overflow: hidden;
  overflow-x: auto;
  display: flex;
  gap: calc(var(--dh-grid) * 2);
  scroll-snap-type: x mandatory;
}
.figure-scroll > * {
  scroll-snap-align: start;

  min-width: 88%;
  max-width: 88%;
  flex-basis: 88%;
}
.figure figcaption .figure__cta {
  width: 100%
}
@media screen and (min-width: 1280px) {
  .figure figcaption:not(.static) {
    position: relative;
    margin-block-start: calc(var(--dh-grid) * -16);
    margin-inline-end: calc(var(--dh-grid) * -2);
    margin-inline-start: calc(33% - var(--dh-space-6));
  }

  .figure figcaption:not(.static) .figure__cta {
    width: 50%
  }

  .figure figcaption.static .figure__cta {
    width: auto
  }
}
/**
 * Tables
 */
table {
  width: 100%;
  margin-bottom: calc(var(--dh-grid) * 8);
  border-collapse: collapse;
}
th, td {
  padding: var(--dh-space-1) var(--dh-space-2);
  background-color: var(--dh-color-background-t1);
  border-bottom: var(--dh-border-default) solid var(--dh-color-background);
}
/**
 * First / Last
 */
*:first-child {
  margin-top: 0
}
*:last-child {
  margin-bottom: 0
}
/**
 * Utilities
 */
.primary {
  font-family: var(--dh-font-family-primary);
  font-feature-settings: var(--dh-font-features-primary);
}
.secondary {
  font-family: var(--dh-font-family-secondary);
  font-feature-settings: var(--dh-font-features-secondary);
}
.mie-1 {
  margin-inline-end: var(--dh-space-1);
}
.mie-2 {
  margin-inline-end: var(--dh-space-2);
}
.mie-3 {
  margin-inline-end: var(--dh-space-3);
}
.mie-4 {
  margin-inline-end: var(--dh-space-4);
}
.mie-5 {
  margin-inline-end: var(--dh-space-5);
}
.mie-6 {
  margin-inline-end: var(--dh-space-6);
}
.mie-7 {
  margin-inline-end: var(--dh-space-7);
}
.mie-8 {
  margin-inline-end: var(--dh-space-8);
}
/* */
.mis-1 {
  margin-inline-start: var(--dh-space-1);
}
.mis-2 {
  margin-inline-start: var(--dh-space-2);
}
.mis-3 {
  margin-inline-start: var(--dh-space-3);
}
.mis-4 {
  margin-inline-start: var(--dh-space-4);
}
.mis-5 {
  margin-inline-start: var(--dh-space-5);
}
.mis-6 {
  margin-inline-start: var(--dh-space-6);
}
.mis-7 {
  margin-inline-start: var(--dh-space-7);
}
.mis-8 {
  margin-inline-start: var(--dh-space-8);
}
/* */
.pie-1 {
  padding-inline-end: var(--dh-space-1);
}
.pie-2 {
  padding-inline-end: var(--dh-space-2);
}
.pie-3 {
  padding-inline-end: var(--dh-space-3);
}
.pie-4 {
  padding-inline-end: var(--dh-space-4);
}
.pie-5 {
  padding-inline-end: var(--dh-space-5);
}
.pie-6 {
  padding-inline-end: var(--dh-space-6);
}
.pie-7 {
  padding-inline-end: var(--dh-space-7);
}
.pie-8 {
  padding-inline-end: var(--dh-space-8);
}
/* */
.pis-1 {
  padding-inline-start: var(--dh-space-1);
}
.pis-2 {
  padding-inline-start: var(--dh-space-2);
}
.pis-3 {
  padding-inline-start: var(--dh-space-3);
}
.pis-4 {
  padding-inline-start: var(--dh-space-4);
}
.pis-5 {
  padding-inline-start: var(--dh-space-5);
}
.pis-6 {
  padding-inline-start: var(--dh-space-6);
}
.pis-7 {
  padding-inline-start: var(--dh-space-7);
}
.pis-8 {
  padding-inline-start: var(--dh-space-8);
}
/* */
.mie-half {
  margin-inline-end: var(--dh-space-half);
}
.mis-half {
  margin-inline-start: var(--dh-space-half);
}
.pie-half {
  padding-inline-end: var(--dh-space-half);
}
.pis-half {
  padding-inline-start: var(--dh-space-half);
}
.mis--3 {
  margin-inline-start: calc(-1 * var(--dh-space-3));
}
.mis--4 {
  margin-inline-start: calc(-1 * var(--dh-space-4));
}
.mis--5 {
  margin-inline-start: calc(-1 * var(--dh-space-5));
}
.mis--6 {
  margin-inline-start: calc(-1 * var(--dh-space-6));
}
.text-end {
  text-align: end
}
.text-start {
  text-align: start
}
@media screen and (min-width: 400px) {
  .mis-0 {
    margin-inline-start: 0
  }

  .mie-0 {
    margin-inline-end: 0
  }

  .pis-0 {
    padding-inline-start: 0
  }

  .pie-0 {
    padding-inline-end: 0
  }
}
.aspect-ratio-16\/9 {
  aspect-ratio: 16 / 9;
}
.aspect-ratio-auto {
  aspect-ratio: auto !important;
}
@media screen and (min-width: 480px) {
  .mis-0 {
    margin-inline-start: 0
  }

  .mie-0 {
    margin-inline-end: 0
  }

  .pis-0 {
    padding-inline-start: 0
  }

  .pie-0 {
    padding-inline-end: 0
  }
}
@media screen and (min-width: 768px) {
  .mis-0 {
    margin-inline-start: 0
  }

  .mie-0 {
    margin-inline-end: 0
  }

  .pis-0 {
    padding-inline-start: 0
  }

  .pie-0 {
    padding-inline-end: 0
  }
}
@media screen and (min-width: 960px) {
  .mis-0 {
    margin-inline-start: 0
  }

  .mie-0 {
    margin-inline-end: 0
  }

  .pis-0 {
    padding-inline-start: 0
  }

  .pie-0 {
    padding-inline-end: 0
  }
}
@media screen and (min-width: 1280px) {
  .mis-0 {
    margin-inline-start: 0
  }

  .mie-0 {
    margin-inline-end: 0
  }

  .pis-0 {
    padding-inline-start: 0
  }

  .pie-0 {
    padding-inline-end: 0
  }
}
.content > *:not(.content__full):not(.figure):not(table) {
  margin-left: auto;
  margin-right: auto;
  max-width: calc(var(--dh-grid) * 100);
}
.content__full {
  width: 100%;
}
* {
  background-repeat: no-repeat;
}
