*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: var(--step-0);
  line-height: 1.6;
  overflow-x: hidden;
}
img, video, svg { display: block; max-width: 100%; }
img, video { border-radius: var(--r-soft); }
h1, h2, h3 { font-family: var(--font-display); font-weight: 700; line-height: 1.08; margin: 0; letter-spacing: -0.01em; }
h3, h4 { font-family: var(--font-body); font-weight: 600; letter-spacing: -0.005em; line-height: 1.2; margin: 0; }
.says { font-family: var(--font-body); font-weight: 500; letter-spacing: -0.02em; line-height: 1.15; }
p { margin: 0 0 1em; max-width: 62ch; }
a { color: inherit; }
:focus-visible { outline: 3px solid var(--twilight); outline-offset: 3px; box-shadow: 0 0 0 6px var(--white); border-radius: var(--r-soft); }

.skip { position: absolute; left: -999px; top: 8px; background: var(--white); padding: 8px 16px; border-radius: var(--r-pill); z-index: 100;
  display: flex; align-items: center; min-height: 44px; }   .skip:focus { left: 16px; }

.wordmark { font-family: var(--font-display); font-weight: 700; text-transform: lowercase; letter-spacing: -0.035em; }


.bw-leaf { display: inline-block; width: 1em; height: 1.3em; background: currentColor; flex: none;
  -webkit-mask: var(--leaf-mask) center / contain no-repeat; mask: var(--leaf-mask) center / contain no-repeat; }
:root { --leaf-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1.3'%3E%3Cpath d='M0.5 0C0.9 0.26 1 0.68 0.86 0.99C0.76 1.2 0.62 1.27 0.5 1.3C0.38 1.27 0.24 1.2 0.14 0.99C0 0.68 0.1 0.26 0.5 0Z'/%3E%3C/svg%3E"); }

:root {
  --sun-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3Ccircle cx='.5' cy='.5' r='.5'/%3E%3C/svg%3E");
  --wedge-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 113' preserveAspectRatio='none'%3E%3Cpath d='M50 97.8L15 22.8A82.8 82.8 0 0 1 85 22.8Z' stroke='%23000' stroke-width='30' stroke-linejoin='round'/%3E%3C/svg%3E");
}

:root { --slice-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20100%20100%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M50%200A50%2050%200%201%201%2049.99%200Z%20M50%206A44%2044%200%201%200%2050.01%206Z%20M51.0%2044.1L52.8%2010.1A40%2040%200%200%201%2076.2%2019.8L53.4%2045.1Z%20M54.9%2046.6L80.2%2023.8A40%2040%200%200%201%2089.9%2047.2L55.9%2049.0Z%20M55.9%2051.0L89.9%2052.8A40%2040%200%200%201%2080.2%2076.2L54.9%2053.4Z%20M53.4%2054.9L76.2%2080.2A40%2040%200%200%201%2052.8%2089.9L51.0%2055.9Z%20M49.0%2055.9L47.2%2089.9A40%2040%200%200%201%2023.8%2080.2L46.6%2054.9Z%20M45.1%2053.4L19.8%2076.2A40%2040%200%200%201%2010.1%2052.8L44.1%2051.0Z%20M44.1%2049.0L10.1%2047.2A40%2040%200%200%201%2019.8%2023.8L45.1%2046.6Z%20M46.6%2045.1L23.8%2019.8A40%2040%200%200%201%2047.2%2010.1L49.0%2044.1Z%27/%3E%3C/svg%3E"); }
.bw-slice { display: inline-block; width: 1.1em; height: 1.1em; background: currentColor; flex: none;
  -webkit-mask: var(--slice-mask) center / contain no-repeat; mask: var(--slice-mask) center / contain no-repeat; }
.bw-spec.slices > div::before { -webkit-mask-image: var(--slice-mask); mask-image: var(--slice-mask); transform: none; height: .8em; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}
