* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

:root {
  --bg-std: white;
  --bg-nav: white;
  --bg-box: #f9f9f9;
  --bg-formfield: #f4f4f4;
  --bg-footer: #f9f9f9;
  --bg-demo: #f0f3f5;
  --bg-modal: rgba(0, 0, 0, 0.5);
  --text-std: #777;
  --text-dim: rgba(0, 0, 0, 0.33);
  --text-inv: white;
  --wht: white;
  --wht-10: rgba(255, 255, 255, 0.1);
  --wht-20: rgba(255, 255, 255, 0.2);
  --wht-30: rgba(255, 255, 255, 0.3);
  --wht-50: rgba(255, 255, 255, 0.5);
  --blk: black;
  --blk-05: rgba(0, 0, 0, 0.05);
  --blk-10: rgba(0, 0, 0, 0.1);
  --blk-20: rgba(0, 0, 0, 0.2);
  --blk-30: rgba(0, 0, 0, 0.3);
  --blk-50: rgba(0, 0, 0, 0.5);
  --brand-color-1: rgb(255, 94, 101);
  --brand-color-2: rgb(94, 0, 255);
  --size-l: 70px;
  --size-m: 50px;
  --size-s: 30px;
}

/* Display-P3 color, when supported. */
@supports (color: color(display-p3 1 1 1)) {
  :root {
    --wht: color(display-p3 1 1 1);
    --brand-color-1: color(display-p3 1 0.421 0.421);
    --brand-color-2: color(display-p3 0.333 0 1);
  }
}

/* dark mode */
@media screen and (prefers-color-scheme: dark) {
  :root {
    --bg-std: black;
    --bg-nav: rgba(0, 0, 0, 0.75);
    --bg-box: #1a1a1a;
    --bg-formfield: #3d3d3d;
    --bg-footer: #181818;
    --bg-demo: rgb(66, 86, 98);
    --bg-modal: rgba(0, 0, 0, 0.75);
    --text-std: #bbb;
    --text-dim: rgba(255, 255, 255, 0.5);
    --text-inv: black;
    --wht: black;
    --wht-10: rgba(0, 0, 0, 0.1);
    --wht-20: rgba(0, 0, 0, 0.2);
    --wht-30: rgba(0, 0, 0, 0.3);
    --wht-50: rgba(0, 0, 0, 0.5);
    --blk: white;
    --blk-05: rgba(255, 255, 255, 0.075);
    --blk-10: rgba(255, 255, 255, 0.1);
    --blk-20: rgba(255, 255, 255, 0.2);
    --blk-30: rgba(255, 255, 255, 0.3);
    --blk-50: rgba(255, 255, 255, 0.5);
    --brand-color-1: rgb(255, 94, 101);
    --brand-color-2: rgb(94, 0, 255);
  }
}

body {
  margin: 0;
  background-color: var(--bg-std);
  color: var(--text-std);
  letter-spacing: .075em;
}

@media all and (min-width: 20em) {
  section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: calc(100vw - calc(var(--g)*2));
    margin-left: var(--g);
    padding: var(--v) 0;
    gap: var(--v) var(--g);
  }
  .fullbox {
    width: 100%;
  }
  .img-fill {
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
  }
  footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    gap: var(--v) var(--g);
    padding: calc(var(--v)*2) 0 calc(var(--v)*2) var(--g);
    background-color: var(--bg-footer);
  }
  header {
    display: flex;
    flex-direction: row;
    width: auto;
    padding: var(--g);
    align-items: baseline;
    flex-wrap: nowrap;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }
}

.pad-b-s {
  padding-bottom: var(--v);
}

.pad-b-m {
  padding-bottom: calc(var(--v)*2);
}

.pad-b-l {
  padding-bottom: calc(var(--v)*3);
}

.pad-b-xl {
  padding-bottom: calc(var(--v)*6);
}

.pad-b-s,
.pad-b-m,
.pad-b-l,
.pad-b-xl {
  padding-top: 0;
}

.pad-t-s {
  padding-top: var(--v);
}

.pad-t-m {
  padding-top: calc(var(--v)*2);
}

.pad-t-l {
  padding-top: calc(var(--v)*3);
}

.pad-t-xl {
  padding-top: calc(var(--v)*6);
}

.pad-t-s,
.pad-t-m,
.pad-t-l,
.pad-t-xl {
  padding-bottom: 0;
}

.pad-y-s {
  padding-top: var(--v);
  padding-bottom: var(--v);
}

.pad-y-m {
  padding-top: calc(var(--v)*2);
  padding-bottom: calc(var(--v)*2);
}

.pad-y-l {
  padding-top: calc(var(--v)*3);
  padding-bottom: calc(var(--v)*3);
}

.pad-y-xl {
  padding-top: calc(var(--v)*6);
  padding-bottom: calc(var(--v)*6);
}

header + .intro,
header + #slides {
  margin-top: calc(((var(--g)*2) + 50px)*-1);
  z-index: 0;
}

@media all and (min-width: 20em) {
  [class^="co-"] {
    display: flex;
    flex-grow: 0;
    flex-shrink: 0;
    flex-direction: column;
    flex-basis: 100%;
  }
  .co-12, .co-8, .co-6, .co-5 {
    flex-basis: calc((100vw - (var(--g)*3))/2);
  }
  .co-4, .co-3, .co-2, .co-34, .co-23, .co-1 {
    flex-basis: 100%;
  }
  [class^="co-"] img {
    width: 100%;
    height: auto;
    object-fit: cover;
    vertical-align: bottom;
  }
}

@media all and (max-width: 40em) {
  .co-12 {
    display: none;
  }
}

@media all and (min-width: 48em) {
  .co-12 {
    flex-basis: calc((100vw - (var(--g)*7))/6);
  }
  .co-8, .co-6 {
    flex-basis: calc((100vw - (var(--g)*5))/4);
  }
  .co-5, .co-4, .co-3, .co-2 {
    flex-basis: calc((100vw - (var(--g)*3))/2);
  }
  .co-34, .co-23, .co-1 {
    flex-basis: 100%;
  }
}

@media all and (min-width: 62em) {
  .co-12 {
    flex-basis: calc((100vw - (var(--g)*13))/12);
  }
  .co-8 {
    flex-basis: calc((100vw - (var(--g)*9))/8);
  }
  .co-6 {
    flex-basis: calc((100vw - (var(--g)*7))/6);
  }
  .co-5 {
    flex-basis: calc((100vw - (var(--g)*6))/5);
  }
  .co-4 {
    flex-basis: calc((100vw - (var(--g)*5))/4);
  }
  .co-34 {
    flex-basis: calc(100vw - (var(--g)*8));
  }
  .co-3 {
    flex-basis: calc((100vw - (var(--g)*4))/3);
  }
  .co-23 {
    flex-basis: calc(100vw - (var(--g)*10));
  }
  .co-2 {
    flex-basis: calc((100vw - (var(--g)*3))/2);
  }
  .co-1 {
    flex-basis: 100%;
  }
  .co-34 {
    flex-basis: calc((100vw - ((100vw - (var(--g)*5))/4)) - (var(--g)*3));
  }
  .co-23 {
    flex-basis: calc((100vw - ((100vw - (var(--g)*4))/3)) - calc(var(--g)*3));
  }
}

.row {
  flex-direction: row;
}

.row-center {
  justify-content: center;
}

.row-right {
  justify-content: flex-end;
}

.row-apart {
  justify-content: space-between;
}

.row-rev {
  flex-direction: row-reverse;
}

.col {
  flex-direction: column;
}

.align-s,
.top {
  align-items: flex-start;
}

.align-c,
.center {
  align-items: center;
}

.base {
  align-items: baseline;
}

.align-e,
.bottom {
  align-items: flex-end;
}

.self-s {
  align-self: flex-start !important;
}

.self-c {
  align-self: center !important;
}

.self-e {
  align-self: flex-end !important;
}

.colwrap {
  flex-wrap: wrap;
  gap: var(--v) var(--g);
  align-self: flex-start;
}

@font-face {
  font-family: 'Nohemi';
  src: url(../fonts/Nohemi-Medium.woff);
  src: url(../fonts/Nohemi-Medium.woff2);
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Nohemi';
  src: url(../fonts/Nohemi-Regular.woff);
  src: url(../fonts/Nohemi-Regular.woff2);
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Nohemi';
  src: url(../fonts/Nohemi-Light.woff);
  src: url(../fonts/Nohemi-Light.woff2);
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Nohemi';
  src: url(../fonts/Nohemi-ExtraLight.woff);
  src: url(../fonts/Nohemi-ExtraLight.woff2);
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'Nohemi';
  src: url(../fonts/Nohemi-Thin.woff);
  src: url(../fonts/Nohemi-Thin.woff2);
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'buttonicons';
  src: url(../fonts/buttonicons-Regular.woff);
  src: url(../fonts/buttonicons-Regular.woff2);
  font-weight: 400;
  font-style: normal;
}

body {
  font-family: 'Nohemi', sans-serif;
  font-weight: 300;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
}

h2,
.size-h2 {
  font-size: 2.25em;
}

h3,
.size-h3 {
  font-size: 1.75em;
}

h4,
.size-h4 {
  font-size: 1.5em;
}

h5,
.size-h5 {
  font-size: 1em;
}

h6,
.size-h6 {
  font-size: .825em;
}

@media screen and (min-width: 20em) {
  .largest {
    font-size: 5vw;
  }
  .larger {
    font-size: 100%;
    line-height: 1.9;
  }
  .claim {
    font-size: 1.2em;
    line-height: 1.5;
  }
  h1,
  .size-h1 {
    font-size: 2.5em;
  }
  .size-h0 {
    font-size: 16.5vw;
    line-height: 0.9;
  }
}

@media screen and (min-width: 48em) {
  .largest {
    font-size: 3vw;
  }
  .larger {
    font-size: 110%;
    line-height: 1.9;
  }
  .claim {
    font-size: 1.5em;
    line-height: 1.35;
  }
  h1,
  .size-h1 {
    font-size: 2.75em;
  }
  .size-h0 {
    font-size: 12vw;
  }
}

@media screen and (min-width: 84em) {
  .largest {
    font-size: 1.75em;
  }
  .larger {
    font-size: 115%;
    line-height: 2;
  }
  .claim {
    font-size: 1.6em;
    line-height: 1.25;
  }
  h1,
  .size-h1 {
    font-size: 3em;
  }
  .size-h0 {
    font-size: 8vw;
  }
}

.smaller {
  font-size: 90%;
}

.smallest {
  font-size: 75%;
}

.regular {
  font-weight: 400;
}

.light {
  font-weight: 300;
}

.extralight {
  font-weight: 200;
}

.thin {
  font-weight: 100;
}

b, strong, .bold {
  font-weight: 500;
}

.cousteau {
  color: var(--brand-color-1);
}

p.larger strong,
p.largest strong {
  font-weight: 400;
}

p {
  margin-top: 0;
  line-height: 1.75;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

[class^="co-"] h1:first-child,
[class^="co-"] h2:first-child,
[class^="co-"] h3:first-child,
[class^="co-"] h4:first-child,
[class^="co-"] h5:first-child,
[class^="co-"] h6:first-child,
[class^="co-"] p:first-child {
  margin-top: 0;
}

[class^="co-"] h1:last-child,
[class^="co-"] h2:last-child,
[class^="co-"] h3:last-child,
[class^="co-"] h4:last-child,
[class^="co-"] h5:last-child,
[class^="co-"] h6:last-child,
[class^="co-"] p:last-child {
  margin-bottom: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong,
.bold {
  color: var(--blk);
}

.darktext {
  color: var(--blk);
}

.dimtext {
  color: var(--text-dim);
}

.invtext {
  color: var(--text-inv);
}

a {
  text-decoration: underline;
  text-underline-offset: 5px;
  color: var(--accent);
}

a:hover {
  color: var(--notification);
}

footer a {
  text-decoration: none;
  color: currentcolor;
}

footer a:hover {
  text-decoration: underline;
  text-underline-offset: 5px;
  color: var(--blk);
}

footer div:first-child a:hover {
  text-decoration: none !important;
}

footer p.dimtext {
  line-height: 2.25;
}

header {
  position: fixed;
  top: 0;
  left: 0;
}

nav {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-basis: 100%;
  justify-content: flex-start;
}

button.toggle {
  appearance: none;
  position: relative;
  width: 54px;
  height: 50px;
  margin-right: var(--g);
  border: none;
  background-color: transparent;
  backdrop-filter: blur(2em);
}

button.toggle::before,
button.toggle::after {
  content: " ";
  position: absolute;
  width: 30px;
  height: 1px;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--blk);
}

button.toggle::before {
  top: 33%;
}

button.toggle::after {
  top: 66%;
}

nav .toggle.in-action::before {
  transform: rotateZ(45deg);
  transform-origin: -2px -14px;
}

nav .toggle.in-action::after {
  transform: rotateZ(-45deg);
  transform-origin: -2px 14px;
}

button.toggle::before,
button.toggle::after,
nav .toggle.in-action::before,
nav .toggle.in-action::after {
  transition: all ease-out .15s;
}

nav .toggle.in-action,
nav .toggle.in-action ~ .logo {
  z-index: 4;
}

nav .toggle.in-action ~ .menu {
  left: 0;
}

nav .menu {
  position: fixed;
  z-index: 3;
  top: 0;
  left: -110vw;
  width: auto;
  height: 100vh;
  padding-top: calc(40px + calc(var(--v)*2));
  padding-right: calc(var(--g)*2);
  padding-bottom: calc(var(--g)*2);
  padding-left: var(--g);
  margin: 0;
  background-color: var(--bg-nav);
  transition: left .5s ease-in-out;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

nav .menu li {
  list-style-type: none;
}

nav .menu a {
  color: var(--brand-color-1);
  font-weight: 500;
  text-decoration: none;
  text-underline-offset: 6px;
  font-size: 1em;
  line-height: 1;
  letter-spacing: .08em;
}

nav .menu a + a {
  margin-left: calc(var(--in)/2);
}

nav .menu a.secondary {
  color: var(--text-std);
  font-weight: 300;
}

nav .menu li:empty {
  height: var(--in);
}

nav .menu a:hover {
  text-decoration: underline;
}

@media all and (min-width: 48em) {
  nav .menu a {
    font-size: 1.15em;
  }
  nav .logo a {
    font-size: 1.35em;
  }
}

.menu-closer {
  position: fixed;
  z-index: 2;
  top: 0;
  left: -110vw;
  width: 100vw;
  height: 100vh;
  background-color: transparent;
}

nav .toggle.in-action ~ .menu-closer {
  left: 0;
  background-color: var(--bg-modal);
  transition: background-color 0.25s ease-out;
}

@supports (backdrop-filter: blur()) {
  nav .toggle.in-action ~ .menu-closer {
    backdrop-filter: blur(10px);
    background-color: var(--blk-20);
  }
}

.card {
  background-color: var(--bg-box);
  padding: var(--in);
}

.card :nth-last-child(2) {
  flex-grow: 2;
}

.card > p:first-child {
  margin-bottom: 0;
  line-height: 1;
  font-weight: 100;
}

.card > p:first-child,
.card h3 {
  color: var(--brand-color-1);
}

.card h3 {
  font-size: 1.375em;
  line-height: 1.25;
  font-weight: 400;
}

.card-shadow {
  box-shadow: 0 20px 40px -20px var(--blk-30);
}

.ar-43 {
  aspect-ratio: 4/3;
}

.ar-32 {
  aspect-ratio: 3/2;
}

.ar-169 {
  aspect-ratio: 16/9;
}

.ar-21 {
  aspect-ratio: 2/1;
}

.ar-11 {
  aspect-ratio: 1/1;
}

.ar-45 {
  aspect-ratio: 4/5;
}

.ar-23 {
  aspect-ratio: 2/3;
}

.ar-12 {
  aspect-ratio: 1/2;
}

.img-fill img {
  position: relative;
}

.img-fill .imgteaser-content {
  position: absolute;
  z-index: auto;
  display: flex;
  padding: var(--g);
  gap: calc(var(--g)*.5);
}

.img-fill .imgteaser-content p {
  max-width: 40ch;
}

.img-fill .imgteaser-content h1,
.img-fill .imgteaser-content h2,
.img-fill .imgteaser-content h3,
.img-fill .imgteaser-content h4,
.img-fill .imgteaser-content h5,
.img-fill .imgteaser-content h6 {
  margin-bottom: 0;
}

@media all and (min-width: 20em) {
  :root {
    --g: 6vw;
    --v: 8vw;
    --in: 4vw;
    --rad: 15px;
  }
}

@media all and (min-width: 48em) {
  :root {
    --g: 5vw;
    --v: 6vw;
    --in: 2.5vw;
  }
}

@media all and (min-width: 62em) {
  :root {
    --g: 4vw;
    --v: 4vw;
    --in: 2vw;
  }
}

@media all and (min-width: 94em) {
  :root {
    --fwdth: 1500px;
    --g: calc(var(--fwdth)*0.04);
    --v: calc(var(--fwdth)*0.04);
    --in: calc(var(--fwdth)*0.02);
    --fwdth-bg: #eaeaea;
  }
  header,
  section,
  .fullbox section {
    width: var(--fwdth);
    margin-left: calc((100vw - var(--fwdth)) * 0.5);
    padding-left: var(--g);
    padding-right: var(--g);
  }
  header {
    width: auto;
  }
  footer,
  .img-fill .imgteaser-content {
    padding-left: calc((100vw - var(--fwdth)) * 0.5 + var(--g));
  }
  nav .menu {
    left: -110vw;
    height: 100vh;
    padding-top: calc(var(--v)*2.5) !important;
    padding-left: calc(calc((100vw - var(--fwdth)) * 0.5) + var(--g));
  }
  .co-12 {
    flex-basis: calc((var(--fwdth) - (var(--g)*13))/12);
  }
  .co-8 {
    flex-basis: calc((var(--fwdth) - (var(--g)*9))/8);
  }
  .co-6 {
    flex-basis: calc((var(--fwdth) - (var(--g)*7))/6);
  }
  .co-5 {
    flex-basis: calc((var(--fwdth) - (var(--g)*6))/5);
  }
  .co-4 {
    flex-basis: calc((var(--fwdth) - (var(--g)*5))/4);
  }
  .co-3 {
    flex-basis: calc((var(--fwdth) - (var(--g)*4))/3);
  }
  .co-2 {
    flex-basis: calc((var(--fwdth) - (var(--g)*3))/2);
  }
  .co-1 {
    flex-basis: 100%;
  }
  .co-34 {
    flex-basis: calc((var(--fwdth) - ((var(--fwdth) - (var(--g)*5))/4)) - (var(--g)*3));
  }
  .co-23 {
    flex-basis: calc((var(--fwdth) - ((var(--fwdth) - (var(--g)*4))/3)) - calc(var(--g)*3));
  }
  .flush {
    margin-left: calc((((100vw - var(--fwdth)) * 0.5) + var(--g))*-1);
  }
  .row-right .flush {
    margin-right: calc((((100vw - var(--fwdth)) * 0.5) + var(--g))*-1);
  }
  .size-h0 {
    font-size: 120px;
  }
  .size-flex {
    font-size: 27px;
  }
  .box-wrapper {
    flex-basis: calc(var(--fwdth)*0.52);
  }
  .tw2-4 {
    flex-basis: calc(var(--fwdth)*0.52);
  }
  .tw2-3 {
    flex-basis: calc(var(--fwdth)*0.68);
  }
}

.but {
  appearance: none;
  display: inline-flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border: none;
  height: var(--size-m);
  border-radius: 0;
  padding: 0 calc(var(--size-m)/2);
  font-size: 13px;
  margin: 0;
  width: auto;
  background-color: var(--bg-formfield);
  color: var(--txt);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .15em;
  line-height: 1;
  cursor: pointer;
}

.but:hover {
  color: var(--wht);
  background-color: var(--blk);
}

.but.size-m {
  height: var(--size-m);
  padding: 0 calc(var(--size-m)/2);
  font-size: 13px;
}

.but.size-l {
  height: var(--size-l);
  padding: 0 calc(var(--size-l)/2);
  font-size: 15px;
}

.but.size-s {
  height: var(--size-s);
  padding: 0 calc(var(--size-s)/2);
  font-size: 11px;
}

.but.sharp {
  color: var(--wht);
  background-color: var(--brand-color-1);
  font-weight: 400;
}

.but.sharp:hover {
  color: var(--wht);
  background-color: var(--blk);
}

.but.primary {
  background-color: var(--blk);
  color: var(--wht);
}

.but.primary:hover {
  background-color: var(--accent);
  color: var(--wht);
}

.but.transp-w {
  background-color: transparent;
  color: var(--wht);
  font-weight: 400;
}

.but.transp-w:hover {
  background-color: var(--wht-10);
  color: var(--accent);
}

.but.transp-k {
  background-color: transparent;
  color: var(--blk);
  padding: 0 5px;
}

.but.transp-k:hover {
  color: var(--brand-color-1);
}

[class*="ic-"]::before {
  content: " ";
  font-family: "buttonicons";
  font-weight: 400;
  font-size: 1.25em;
  padding-right: 1em;
}

.ic-down::before,
.right.ic-down::after {
  content: "\F001";
}

.ic-up::before,
.right.ic-up::after {
  content: "\F002";
}

.ic-right::before,
.right.ic-right::after {
  content: "\F003";
}

.ic-left::before,
.right.ic-left::after {
  content: "\F004";
}

.ic-close::before,
.right.ic-close::after {
  content: "\F005";
}

.ic-minus::before,
.right.ic-minus::after {
  content: "\F006";
}

.ic-plus::before,
.right.ic-plus::after {
  content: "\F007";
}

.ic-radio::before,
.right.ic-radio::after {
  content: "\F008";
}

.ic-radioon::before,
.right.ic-radioon::after {
  content: "\F009";
}

.ic-checkbox::before,
.right.ic-checkbox::after {
  content: "\F010";
}

.ic-checked::before,
.right.ic-checked::after {
  content: "\F011";
}

.ic-cart::before,
.right.ic-cart::after {
  content: "\F012";
}

.ic-ellipsis::before,
.right.ic-ellipsis::after {
  content: "\F013";
}

.ic-burger::before,
.right.ic-burger::after {
  content: "\F014";
}

.ic-grid::before,
.right.ic-grid::after {
  content: "\F015";
}

.ic-dwnld::before,
.right.ic-dwnld::after {
  content: "\F016";
}

.ic-lock::before,
.right.ic-lock::after {
  content: "\F017";
}

.ic-edit::before,
.right.ic-edit::after {
  content: "\F018";
}

.ic-search::before,
.right.ic-search::after {
  content: "\F019";
}

.ic-doc::before,
.right.ic-doc::after {
  content: "\F020";
}

.ic-checklist::before,
.right.ic-checklist::after {
  content: "\F021";
}

.ic-info::before,
.right.ic-info::after {
  content: "\F022";
}

.ic-unlock::before,
.right.ic-unlock::after {
  content: "\F023";
}

.ic-heart::before,
.right.ic-heart::after {
  content: "\F024";
}

.ic-hearted::before,
.right.ic-hearted::after {
  content: "\F025";
}

.ic-flag::before,
.right.ic-flag::after {
  content: "\F026";
}

.ic-user::before,
.right.ic-user::after {
  content: "\F027";
}

.ic-usersolid::before,
.right.ic-usersolid::after {
  content: "\F028";
}

.ic-upld::before,
.right.ic-upld::after {
  content: "\F029";
}

.right::before {
  display: none;
}

.right::after {
  content: " ";
  font-family: "Buttonicons";
  font-weight: 400;
  font-size: 1.25em;
  padding-left: 1em;
}

.but:empty,
.but.right:empty {
  width: 0;
}

.but:empty::before {
  padding-right: 0;
  padding-left: 2px;
  font-size: 1.45em;
}

.but.right:empty::after {
  padding-left: 0;
}

dl {
  margin: 0;
}

dl dt,
dl dd {
  line-height: 1.5;
}

dl dt {
  font-weight: 700;
  color: var(--blk);
  margin-bottom: var(--in);
}

dl dd {
  max-width: 75ch;
  margin-left: var(--g);
  margin-bottom: var(--v);
}

ul, ol {
  margin: 0;
}

ul {
  padding-left: 0;
  list-style-type: none;
}

ol {
  padding-left: 2em;
}

:not(ul.menu) > li {
  line-height: 1.75;
  padding: calc(var(--in)*0.7) 0;
  border-top: 1px solid var(--blk-20);
}

#slides {
  position: relative;
  width: 100vw;
  height: 150vw;
  padding: 0px;
  margin: 0px;
}

.slide img {
  height: 100%;
  vertical-align: bottom;
  object-fit: contain;
}

@media (min-width: 40em) {
  #slides {
    width: 100%;
    height: 100vw;
  }
}

@media (min-width: 62em) {
  #slides {
    width: 100%;
    height: 56.25vw;
  }
  .slide img {
    width: 100%;
  }
}

.slide {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 1;
  overflow-x: hidden;
  transition: opacity 1.5s;
}

.showing {
  opacity: 1;
  z-index: 2;
}

#next,
#previous,
#pause {
  z-index: 4;
}

#pause {
  appearance: none;
  background: transparent;
  color: #fff;
  border: none;
  padding: 20px 0;
  margin: 0;
  font-size: 16px;
  cursor: pointer;
  width: 64px;
}

#pause:hover {
  background: white;
  color: currentcolor;
}

.previous-button,
.next-button {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}

@media (min-width: 40em) {
  .previous-button,
  .next-button {
    top: 50%;
  }
}

.next-button {
  right: var(--g);
}

.previous-button {
  left: var(--g);
}

#pause {
  position: absolute;
  bottom: 0;
  right: 0;
}

#slides #next {
  margin-right: calc((var(--size-l)/2)*-1);
}

#slides #previous {
  margin-left: calc((var(--size-l)/2)*-1);
}
