@import url('https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&family=Work+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

:root {
  --cmey-ground: #8FE5DE;
  --cmey-ground-alt: #B5EEE9;
  --cmey-ink: #101E1D;
  --cmey-ink-muted: #223533;
  --cmey-dark: #17302E;
  --cmey-primary: #2B827B;
  --cmey-secondary: #517C90;
  --cmey-accent: #188159;
  --cmey-mint-hi: #5ED9CF;
  --cmey-link: #0E5A54;
  --cmey-paper: #FFFFFF;
  --cmey-mono: "Space Mono", "Courier New", monospace;
  --cmey-sans: "Work Sans", "Helvetica Neue", Arial, sans-serif;
  --cmey-s-xs: 4px;
  --cmey-s-sm: 8px;
  --cmey-s-md: 16px;
  --cmey-s-lg: 24px;
  --cmey-s-xl: 32px;
  --cmey-s-xxl: 48px;
  --cmey-rule: 4px;
  --cmey-rule-thin: 2px;
  --cmey-wrap: 72rem;
  --cmey-gutter: clamp(16px, 4vw, 48px);
  --cmey-side: max(var(--cmey-gutter), calc((100% - var(--cmey-wrap)) / 2));
  --cmey-band-y: clamp(48px, 7vw, 96px);
  --cmey-bleed: 12px;
  --cmey-hero-pad: clamp(20px, 3vw, 40px);
  --cmey-mark-space: 32px;
  --cmey-mark-t: 3px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  background: var(--cmey-ground);
  scroll-padding-top: 7rem;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--cmey-ground);
  color: var(--cmey-ink);
  font-family: var(--cmey-sans);
  font-size: 1.0625rem;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
}

::selection {
  background: var(--cmey-secondary);
  color: var(--cmey-paper);
}

main {
  display: block;
}

h1, h2, h3, h4 {
  font-family: var(--cmey-mono);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: inherit;
  margin: 0 0 var(--cmey-s-md);
  text-wrap: balance;
}

h1 {
  font-size: clamp(2.5rem, 1.6rem + 3vw, 4rem);
  line-height: 1.05;
}

h2 {
  font-size: clamp(1.75rem, 1.2rem + 1.8vw, 2.618rem);
  line-height: 1.1;
  margin-bottom: var(--cmey-s-lg);
}

h3 {
  font-size: clamp(1.25rem, 1rem + 0.8vw, 1.618rem);
  line-height: 1.2;
}

h4 {
  font-size: 1.125rem;
  line-height: 1.3;
}

p {
  margin: 0 0 var(--cmey-s-md);
  max-width: 64ch;
}

ul, ol {
  margin: 0 0 var(--cmey-s-md);
  padding-left: 1.25em;
}

ul {
  list-style: square;
}

li {
  max-width: 64ch;
  margin-bottom: var(--cmey-s-xs);
}

li::marker {
  color: var(--cmey-ink);
}

strong, b {
  font-weight: 600;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

main img {
  border: var(--cmey-rule) solid var(--cmey-ink);
  border-radius: 0;
  filter: saturate(0.78) contrast(1.04);
}

main figure {
  margin: 0 0 var(--cmey-s-lg);
}

main figcaption {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--cmey-ink-muted);
  margin-top: var(--cmey-s-sm);
  max-width: 60ch;
}

a {
  color: inherit;
  text-decoration: none;
}

p a:not([class]),
li a:not([class]),
figcaption a:not([class]),
blockquote a:not([class]),
dd a:not([class]),
td a:not([class]) {
  color: var(--cmey-link);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.15em;
}

p a:not([class]):hover,
li a:not([class]):hover,
figcaption a:not([class]):hover,
blockquote a:not([class]):hover,
dd a:not([class]):hover,
td a:not([class]):hover {
  color: var(--cmey-ink);
  text-decoration-thickness: 4px;
}

:focus-visible {
  outline: 3px solid var(--cmey-ink);
  outline-offset: 3px;
}

main > :is(h1, h2, h3, h4, p, ul, ol, dl, blockquote, details, figure, form, div:not([class])),
main > :is(.cmey__grid, .cmey__area, .cmey__figures, .cmey__qa-list, .cmey__checklist, .cmey__helper, .cmey__table-wrap, .cmey__note, .cmey__video, .cmey__lede) {
  margin-inline: var(--cmey-side);
}

main > table {
  margin-inline: var(--cmey-side);
  width: calc(100% - 2 * max(var(--cmey-gutter), (100% - var(--cmey-wrap)) / 2));
}

main > section:not([class*="cmey__"]),
.cmey__content-section,
.cmey__sheet,
.cmey__contact {
  padding-block: var(--cmey-band-y);
  padding-inline: var(--cmey-side);
}

.cmey__content-section + .cmey__content-section,
main > section:not([class*="cmey__"]) + section:not([class*="cmey__"]) {
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__wrap {
  width: min(calc(100% - 2 * var(--cmey-gutter)), var(--cmey-wrap));
  margin-inline: auto;
}

.cmey__navbar {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgb(143 229 222 / 0.84);
  -webkit-backdrop-filter: blur(14px) saturate(1.2);
  backdrop-filter: blur(14px) saturate(1.2);
  border-bottom: var(--cmey-rule) solid var(--cmey-ink);
  transition: background-color 0.2s ease;
}

.cmey__navbar.scrolled {
  background: rgb(143 229 222 / 0.95);
}

.cmey__navbar-inner {
  width: min(calc(100% - 2 * var(--cmey-gutter)), var(--cmey-wrap));
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-areas:
    ". brand toggle"
    "links links links";
  align-items: center;
  row-gap: var(--cmey-s-sm);
  padding-block: 14px var(--cmey-s-sm);
}

.cmey__navbar.scrolled .cmey__navbar-inner {
  padding-block: var(--cmey-s-sm) 6px;
}

.cmey__navbar-brand {
  grid-area: brand;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: clamp(1.25rem, 1rem + 0.8vw, 1.625rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--cmey-ink);
  white-space: nowrap;
  text-align: center;
}

.cmey__navbar-links {
  grid-area: links;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: clamp(16px, 3vw, 40px);
  row-gap: var(--cmey-s-xs);
  padding-top: var(--cmey-s-sm);
  border-top: var(--cmey-rule-thin) solid var(--cmey-ink);
}

.cmey__navbar-links a {
  font-family: var(--cmey-sans);
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.4;
  color: var(--cmey-ink);
  white-space: nowrap;
  padding-block: var(--cmey-s-xs);
  text-decoration: none;
  text-underline-offset: 6px;
}

.cmey__navbar-links a:hover,
.cmey__navbar-links a[aria-current="page"] {
  text-decoration: underline;
  text-decoration-thickness: 3px;
}

.cmey__navbar-toggle {
  grid-area: toggle;
  justify-self: end;
  display: none;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 3px solid var(--cmey-ink);
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.cmey__navbar-toggle span {
  display: block;
  width: 22px;
  height: 3px;
  background: var(--cmey-ink);
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.cmey__navbar-toggle[aria-expanded="true"] span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.cmey__navbar-toggle[aria-expanded="true"] span:nth-child(2) {
  opacity: 0;
}

.cmey__navbar-toggle[aria-expanded="true"] span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

.cmey__btn {
  display: inline-block;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: -0.01em;
  padding: 14px var(--cmey-s-lg);
  border: 3px solid var(--cmey-ink);
  border-radius: 0;
  background: var(--cmey-ground);
  color: var(--cmey-ink);
  text-decoration: none;
  cursor: pointer;
  box-shadow: 4px 4px 0 var(--cmey-ink);
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.cmey__btn:hover,
.cmey__btn:focus-visible {
  transform: translate(4px, 4px);
  box-shadow: 0 0 0 var(--cmey-ink);
}

.cmey__btn-primary {
  background: var(--cmey-primary);
  color: var(--cmey-paper);
}

.cmey__btn-secondary {
  background: var(--cmey-ground);
  color: var(--cmey-ink);
}

.cmey__cta-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cmey-s-md);
  margin-top: var(--cmey-s-lg);
}

.cmey__hero {
  position: relative;
  padding: var(--cmey-hero-pad);
  overflow-x: clip;
  --m-out: var(--cmey-hero-pad);
  --m-trim: calc(var(--cmey-hero-pad) + var(--cmey-bleed));
  --m-len: calc(var(--cmey-hero-pad) - 8px);
  --m-t: var(--cmey-mark-t);
  --m-c: var(--cmey-ink);
}

.cmey__hero--collage-multiple-images {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  grid-template-rows: minmax(10rem, 1fr) auto 4rem;
  min-height: 78vh;
  min-height: 78svh;
}

.cmey__hero-collage {
  position: relative;
  grid-column: 1 / -1;
  grid-row: 1 / 3;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--cmey-bleed);
  background: var(--cmey-ink);
  min-height: 22rem;
}

.cmey__hero-collage > img,
.cmey__hero-collage > a,
.cmey__hero-collage > picture,
.cmey__hero-collage > video {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  object-fit: cover;
  filter: saturate(0.78) contrast(1.04);
}

.cmey__hero-collage > a img,
.cmey__hero-collage > picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}

.cmey__hero-collage > :first-child {
  grid-column: 1;
  grid-row: 1 / 3;
  object-position: 62% 50%;
}

.cmey__hero-collage > :nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.cmey__hero-collage > :nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}

.cmey__hero-collage > :nth-child(n+4) {
  display: none;
}

.cmey__hero-collage::after {
  content: "";
  position: absolute;
  inset: var(--cmey-bleed);
  border: var(--cmey-rule) solid var(--cmey-ink);
  pointer-events: none;
  z-index: 1;
  animation: cmey-trim 0.9s cubic-bezier(0.6, 0, 0.2, 1) both;
}

.cmey__hero-collage::before,
.cmey__helper-answer::before {
  --m-p: calc(var(--m-trim) - var(--m-t) / 2);
  content: "";
  position: absolute;
  inset: calc(-1 * var(--m-out));
  pointer-events: none;
  z-index: 1;
  background:
    linear-gradient(var(--m-c), var(--m-c)) left 0 top var(--m-p) / var(--m-len) var(--m-t) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) left var(--m-p) top 0 / var(--m-t) var(--m-len) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) right 0 top var(--m-p) / var(--m-len) var(--m-t) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) right var(--m-p) top 0 / var(--m-t) var(--m-len) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) left 0 bottom var(--m-p) / var(--m-len) var(--m-t) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) left var(--m-p) bottom 0 / var(--m-t) var(--m-len) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) right 0 bottom var(--m-p) / var(--m-len) var(--m-t) no-repeat,
    linear-gradient(var(--m-c), var(--m-c)) right var(--m-p) bottom 0 / var(--m-t) var(--m-len) no-repeat;
}

.cmey__hero-collage::before {
  animation: cmey-marks 0.35s 0.7s ease-out both;
}

.cmey__hero-content {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 2 / 4;
  justify-self: start;
  align-self: end;
  width: calc(100% - var(--cmey-bleed));
  max-width: 48rem;
  margin-left: var(--cmey-bleed);
  background: var(--cmey-ground);
  border: var(--cmey-rule) solid var(--cmey-ink);
  padding: clamp(20px, 2.6vw, 40px);
  animation: cmey-settle 0.45s 0.75s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}

.cmey__hero-content h1 {
  font-size: clamp(2.75rem, 1.4rem + 3vw, 4.5rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  margin: 0 0 var(--cmey-s-md);
  max-width: 18ch;
}

.cmey__hero-lede {
  font-size: 1.1875rem;
  line-height: 1.5;
  max-width: 42ch;
  margin: 0;
}

@keyframes cmey-trim {
  from { clip-path: inset(0 100% 100% 0); }
  to { clip-path: inset(0 0 0 0); }
}

@keyframes cmey-marks {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes cmey-settle {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}

.cmey__page-head {
  padding-block: clamp(48px, 7vw, 96px) var(--cmey-s-xl);
  padding-inline: var(--cmey-side);
  border-bottom: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__page-head h1 {
  max-width: 18ch;
}

.cmey__lede {
  font-size: 1.25rem;
  line-height: 1.5;
  max-width: 52ch;
  color: var(--cmey-ink);
}

blockquote {
  margin: var(--cmey-s-xl) 0;
  padding: var(--cmey-s-xs) 0 var(--cmey-s-xs) var(--cmey-s-lg);
  border-left: 8px solid var(--cmey-ink);
  font-family: var(--cmey-mono);
  font-weight: 400;
  font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
  line-height: 1.3;
  letter-spacing: -0.02em;
  max-width: 36ch;
}

blockquote p {
  font: inherit;
  max-width: none;
  margin: 0 0 var(--cmey-s-sm);
}

blockquote :is(footer, cite) {
  display: block;
  margin-top: var(--cmey-s-md);
  font-family: var(--cmey-sans);
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-top: var(--cmey-rule) solid var(--cmey-ink);
  border-bottom: var(--cmey-rule) solid var(--cmey-ink);
  margin: var(--cmey-s-lg) 0;
  font-size: 1rem;
  line-height: 1.5;
}

caption {
  caption-side: top;
  text-align: left;
  font-weight: 600;
  padding-bottom: var(--cmey-s-sm);
}

thead th {
  background: var(--cmey-dark);
  color: var(--cmey-ground);
  font-family: var(--cmey-sans);
  font-weight: 600;
  text-align: left;
  padding: var(--cmey-s-md);
  vertical-align: bottom;
}

tbody th,
tbody td {
  padding: var(--cmey-s-md);
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  text-align: left;
  vertical-align: top;
}

tbody th {
  font-weight: 700;
}

tbody td:last-child {
  background: var(--cmey-ground-alt);
}

tbody tr:last-child > * {
  border-bottom: 0;
}

.cmey__table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.cmey__table-wrap table {
  margin: 0;
}

.cmey__sheet h2 {
  max-width: 24ch;
}

.cmey__verdict {
  background: var(--cmey-dark);
  color: var(--cmey-ground);
  padding-block: clamp(72px, 12vw, 168px);
  padding-inline: var(--cmey-side);
}

.cmey__verdict h2 {
  font-size: 1.25rem;
  color: var(--cmey-ground);
  margin-bottom: var(--cmey-s-xl);
}

.cmey__verdict blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: var(--cmey-mono);
  font-weight: 400;
  font-size: clamp(1.75rem, 1rem + 2.4vw, 3rem);
  line-height: 1.3;
  max-width: 24ch;
  color: var(--cmey-ground);
}

.cmey__verdict blockquote p {
  margin: 0;
}

.cmey__verdict :is(footer, cite, figcaption) {
  display: block;
  width: fit-content;
  margin-top: var(--cmey-s-xl);
  padding-top: var(--cmey-s-md);
  border-top: var(--cmey-rule) solid var(--cmey-ground);
  font-family: var(--cmey-sans);
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0;
  color: var(--cmey-ground);
}

.cmey__checklist-band {
  background: var(--cmey-primary);
  color: var(--cmey-paper);
  padding-block: var(--cmey-band-y);
  padding-inline: var(--cmey-side);
}

.cmey__checklist-band :is(h2, h3, p) {
  color: var(--cmey-paper);
}

.cmey__checklist {
  list-style: none;
  margin: var(--cmey-s-xl) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--cmey-s-md);
}

.cmey__checklist > li,
.cmey__check {
  max-width: none;
  margin: 0;
  background: var(--cmey-ground);
  color: var(--cmey-ink);
  border: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__checklist > li > label,
.cmey__check > label {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  gap: var(--cmey-s-md);
  align-items: start;
  padding: var(--cmey-s-md) var(--cmey-s-lg);
  cursor: pointer;
  color: var(--cmey-ink);
}

.cmey__checklist input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 1.75rem;
  height: 1.75rem;
  margin: 0;
  border: 3px solid var(--cmey-ink);
  border-radius: 0;
  background: var(--cmey-ground);
  cursor: pointer;
}

.cmey__checklist input[type="checkbox"]:checked {
  background: var(--cmey-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 8.5l3.5 3.5 7.5-8' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='square'/%3E%3C/svg%3E") center / 72% no-repeat;
}

.cmey__checklist input[type="checkbox"]:focus-visible {
  outline: 3px solid var(--cmey-ink);
  outline-offset: 3px;
}

.cmey__checklist :is(strong, b) {
  display: block;
  font-weight: 600;
}

.cmey__checklist p {
  color: var(--cmey-ink);
  margin: var(--cmey-s-xs) 0 0;
}

.cmey__band--overlapping-content-boxes {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(4rem, 8vw, 8rem) minmax(18rem, 30rem);
  align-items: center;
  padding-inline: 0 var(--cmey-side);
}

.cmey__band-media {
  grid-column: 1 / 3;
  grid-row: 1;
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--cmey-mark-space);
  grid-template-rows: var(--cmey-mark-space) auto var(--cmey-mark-space) auto;
  position: relative;
}

.cmey__band-media > img,
.cmey__band-media > a,
.cmey__band-media > picture,
.cmey__band-media > video,
.cmey__band-media > iframe {
  grid-column: 1;
  grid-row: 2;
  display: block;
  width: 100%;
  min-width: 0;
}

.cmey__band-media img,
.cmey__band-media video {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__band-media iframe {
  aspect-ratio: 3 / 2;
  height: auto;
  border: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__band-media > a img {
  box-shadow: 4px 4px 0 var(--cmey-ink);
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}

.cmey__band-media > a:hover img,
.cmey__band-media > a:focus-visible img {
  transform: translate(4px, 4px);
  box-shadow: 0 0 0 var(--cmey-ink);
}

.cmey__band-media::before {
  --b: var(--cmey-mark-space);
  --t: var(--cmey-mark-t);
  content: "";
  grid-column: 1 / -1;
  grid-row: 1 / 4;
  pointer-events: none;
  background:
    linear-gradient(var(--cmey-ink), var(--cmey-ink)) right calc(var(--b) - var(--t) / 2) top 0 / var(--t) calc(var(--b) - 8px) no-repeat,
    linear-gradient(var(--cmey-ink), var(--cmey-ink)) right 0 top calc(var(--b) - var(--t) / 2) / calc(var(--b) - 8px) var(--t) no-repeat,
    linear-gradient(var(--cmey-ink), var(--cmey-ink)) right calc(var(--b) - var(--t) / 2) bottom 0 / var(--t) calc(var(--b) - 8px) no-repeat,
    linear-gradient(var(--cmey-ink), var(--cmey-ink)) right 0 bottom calc(var(--b) - var(--t) / 2) / calc(var(--b) - 8px) var(--t) no-repeat;
}

.cmey__band-media figcaption {
  grid-column: 1;
  grid-row: 4;
  margin: 0;
  padding: var(--cmey-s-sm) 0 0 max(var(--cmey-gutter), calc((100vw - var(--cmey-wrap)) / 2));
}

.cmey__band-box {
  position: relative;
  z-index: 1;
  background: var(--cmey-ground);
  border: var(--cmey-rule) solid var(--cmey-ink);
  padding: clamp(24px, 3vw, 48px);
}

.cmey__band-box--overlap {
  grid-column: 2 / 4;
  grid-row: 1;
  box-shadow: 8px 8px 0 var(--cmey-ink);
}

.cmey__band-box h2 {
  font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem);
}

.cmey__band-box > :last-child {
  margin-bottom: 0;
}

.cmey__band--accordion-expandable-sections > h2 {
  margin-bottom: var(--cmey-s-xl);
}

details {
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  max-width: 52rem;
}

.cmey__band--accordion-expandable-sections details:first-of-type,
h2 + details {
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2rem;
  gap: var(--cmey-s-md);
  align-items: center;
  padding-block: var(--cmey-s-md);
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: clamp(1.0625rem, 0.95rem + 0.4vw, 1.25rem);
  line-height: 1.3;
  letter-spacing: -0.01em;
  cursor: pointer;
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border: 3px solid var(--cmey-ink);
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1;
}

details[open] > summary::after {
  content: "\2212";
  background: var(--cmey-ink);
  color: var(--cmey-ground);
}

details > :not(summary) {
  margin-top: 0;
}

details > :last-child:not(summary) {
  padding-bottom: var(--cmey-s-lg);
}

.cmey__band--three-column-text > h2 {
  margin-bottom: var(--cmey-s-xl);
}

.cmey__band-columns {
  display: grid;
  gap: 0;
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__band-columns--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cmey__band-columns > * {
  padding: var(--cmey-s-lg) var(--cmey-s-lg) 0;
  border-left: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__band-columns > :first-child {
  padding-left: 0;
  border-left: 0;
}

.cmey__band-columns > :last-child {
  padding-right: 0;
}

.cmey__band-columns h3 {
  font-size: 1.25rem;
}

.cmey__band-columns p:last-child {
  margin-bottom: 0;
}

.cmey__grid {
  display: grid;
  gap: var(--cmey-s-lg);
  margin-block: var(--cmey-s-lg);
}

.cmey__grid--bento-box-mixed {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: minmax(11rem, auto);
  grid-auto-flow: dense;
}

.cmey__card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: var(--cmey-ground);
  border: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__card img {
  width: 100%;
  flex: 1 1 9rem;
  min-height: 9rem;
  object-fit: cover;
  border: 0;
  border-bottom: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__card h3 {
  margin: var(--cmey-s-md) var(--cmey-s-md) var(--cmey-s-xs);
  font-size: 1.25rem;
}

.cmey__card p {
  margin: 0 var(--cmey-s-md) var(--cmey-s-md);
  font-size: 1rem;
}

.cmey__card--2x2 {
  grid-column: span 2;
  grid-row: span 2;
}

.cmey__card--2x2 h3 {
  font-size: clamp(1.375rem, 1.1rem + 0.8vw, 1.618rem);
}

.cmey__card--1x1 {
  grid-column: span 1;
}

.cmey__card--1x2 {
  grid-row: span 2;
}

.cmey__card--2x1 {
  grid-column: span 2;
}

dl {
  display: grid;
  grid-template-columns: minmax(9rem, 16rem) minmax(0, 1fr);
  margin: var(--cmey-s-lg) 0;
  border-top: var(--cmey-rule) solid var(--cmey-ink);
  max-width: 60rem;
}

dt,
dd {
  padding-block: var(--cmey-s-md);
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
}

dt {
  grid-column: 1;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.35;
  padding-right: var(--cmey-s-lg);
}

dd {
  grid-column: 2;
  margin: 0;
}

dd > :last-child {
  margin-bottom: 0;
}

.cmey__contact {
  padding-bottom: clamp(64px, 9vw, 120px);
}

.cmey__area {
  display: grid;
  gap: var(--cmey-s-md);
  max-width: 60rem;
  margin-block: var(--cmey-s-xl);
  padding: clamp(24px, 3vw, 40px);
  background: var(--cmey-ground);
  border: var(--cmey-rule) solid var(--cmey-ink);
  border-left: var(--cmey-s-md) solid var(--cmey-dark);
}

.cmey__area-title {
  margin: 0;
  padding-bottom: var(--cmey-s-md);
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  font-size: clamp(1.375rem, 1.1rem + 1vw, 1.875rem);
}

.cmey__area-text {
  margin: 0;
}

.cmey__area-facts {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: var(--cmey-s-xs) var(--cmey-s-lg);
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.cmey__area > * {
  min-width: 0;
  overflow-wrap: break-word;
}

.cmey__area-facts dt,
.cmey__area-facts dd {
  padding: 0;
  border: 0;
}

.cmey__area-facts dt {
  grid-column: 1;
}

.cmey__area-facts dd {
  grid-column: 2;
  min-width: 0;
}

.cmey__area-facts dt {
  font-family: var(--cmey-sans);
  font-size: 1rem;
  font-weight: 600;
}

.cmey__area-facts li {
  grid-column: 1 / -1;
  margin: 0;
}

.cmey__area-link {
  margin: 0;
  font-weight: 600;
}

.cmey__area-link a {
  color: var(--cmey-link);
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 0.2em;
}

.cmey__figures {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  margin: var(--cmey-s-lg) 0;
  padding: 0;
  border-top: var(--cmey-rule) solid var(--cmey-ink);
  border-bottom: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__figure {
  max-width: none;
  margin: 0;
  padding: var(--cmey-s-lg);
  border-left: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__figure:first-child {
  border-left: 0;
  padding-left: 0;
}

.cmey__figure-value {
  display: block;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: clamp(2.5rem, 1.8rem + 2vw, 3.5rem);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--cmey-accent);
  margin-bottom: var(--cmey-s-sm);
}

.cmey__figure-label {
  display: block;
  font-weight: 600;
  line-height: 1.4;
}

.cmey__figure-source {
  display: block;
  margin-top: var(--cmey-s-xs);
  font-size: 0.9375rem;
  color: var(--cmey-ink-muted);
}

.cmey__qa-list {
  list-style: none;
  counter-reset: cmey-q;
  margin: var(--cmey-s-lg) 0;
  padding: 0;
  max-width: 52rem;
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__qa-list > li {
  counter-increment: cmey-q;
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  column-gap: var(--cmey-s-md);
  max-width: none;
  margin: 0;
  padding-block: var(--cmey-s-lg);
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
}

.cmey__qa-list > li::before {
  content: counter(cmey-q);
  grid-column: 1;
  grid-row: 1 / span 4;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
}

.cmey__qa-list > li > * {
  grid-column: 2;
}

.cmey__qa-list h3 {
  font-size: 1.25rem;
  margin-bottom: var(--cmey-s-sm);
}

.cmey__qa-list p:last-child {
  margin-bottom: 0;
}

.cmey__note {
  max-width: 52rem;
  padding-block: var(--cmey-s-lg);
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__note-date {
  display: block;
  margin-bottom: var(--cmey-s-sm);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--cmey-ink-muted);
}

.cmey__note h3 {
  font-size: 1.375rem;
}

.cmey__video {
  position: relative;
  aspect-ratio: 16 / 9;
  max-width: 56rem;
  margin-block: var(--cmey-s-lg);
  background: var(--cmey-dark);
  border: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__video :is(iframe, video, img) {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  object-fit: cover;
}

main iframe {
  max-width: 100%;
}

main video {
  display: block;
  max-width: 100%;
  height: auto;
}

form {
  display: grid;
  gap: var(--cmey-s-md);
  max-width: 40rem;
}

label {
  font-weight: 600;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
select,
textarea {
  display: block;
  width: 100%;
  font: inherit;
  font-weight: 400;
  color: var(--cmey-ink);
  background: rgb(255 255 255 / 0.55);
  border: 3px solid var(--cmey-ink);
  border-radius: 0;
  padding: var(--cmey-s-sm) var(--cmey-s-md);
  margin-top: var(--cmey-s-xs);
}

textarea {
  min-height: 9rem;
  resize: vertical;
}

.cmey__helper {
  margin-block: var(--cmey-s-lg);
  border-top: var(--cmey-rule) solid var(--cmey-ink);
}

.cmey__helper-question {
  display: grid;
  grid-template-columns: minmax(12rem, 20rem) minmax(0, 1fr);
  gap: var(--cmey-s-md) var(--cmey-s-lg);
  align-items: start;
  margin: 0;
  padding: var(--cmey-s-lg) 0;
  border: 0;
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  min-width: 0;
}

.cmey__helper-question > legend,
.cmey__helper-legend {
  float: left;
  padding: 0;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

.cmey__helper-options {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cmey-s-sm);
}

.cmey__helper-option {
  position: relative;
  display: inline-block;
  font-weight: 700;
}

.cmey__helper-option input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.cmey__helper-option span {
  display: block;
  padding: 10px var(--cmey-s-md);
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.3;
  background: var(--cmey-ground);
  color: var(--cmey-ink);
  border: 3px solid var(--cmey-ink);
  pointer-events: none;
}

.cmey__helper-option:hover span {
  background: var(--cmey-mint-hi);
}

.cmey__helper-option input:checked + span {
  background: var(--cmey-primary);
  color: var(--cmey-paper);
}

.cmey__helper-option input:focus-visible + span {
  outline: 3px solid var(--cmey-ink);
  outline-offset: 3px;
}

.cmey__helper-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cmey-s-md);
  padding-block: var(--cmey-s-lg);
}

.cmey__helper-result {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: var(--cmey-s-xxl);
  align-items: start;
  margin-block: var(--cmey-s-xxl);
  padding: 24px;
}

.cmey__helper-result[hidden] {
  display: none;
}

.cmey__helper-answer {
  position: relative;
  background: var(--cmey-dark);
  color: var(--cmey-ground);
  padding: clamp(24px, 3vw, 48px);
  --m-out: 24px;
  --m-trim: 24px;
  --m-len: 16px;
  --m-t: var(--cmey-mark-t);
  --m-c: var(--cmey-ink);
}

.cmey__helper-answer :is(h2, h3, p) {
  color: var(--cmey-ground);
}

.cmey__helper-process {
  display: block;
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: clamp(2.25rem, 1.6rem + 2vw, 3.5rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  margin-bottom: var(--cmey-s-md);
}

.cmey__helper-reasoning {
  border-top: var(--cmey-rule) solid var(--cmey-ink);
  padding-top: var(--cmey-s-md);
}

.cmey__helper-reasoning ul,
.cmey__helper-reasoning ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

.cmey__helper-reasoning li {
  margin: 0;
  padding-block: var(--cmey-s-sm);
  border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
}

.cmey__helper-note {
  font-size: 0.9375rem;
  color: var(--cmey-ink-muted);
}

.cmey__helper-table tr.is-active > * {
  background: var(--cmey-primary);
  color: var(--cmey-paper);
}

.cmey__helper-table tr.is-active a:not([class]) {
  color: var(--cmey-paper);
}

.cmey__footer {
  background: var(--cmey-dark);
  color: var(--cmey-ground);
  padding: clamp(48px, 6vw, 80px) var(--cmey-side) var(--cmey-s-xl);
}

.cmey__footer-inner {
  display: grid;
  gap: var(--cmey-s-xl) var(--cmey-s-xxl);
}

.cmey__footer-inner--3col {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr);
}

.cmey__footer-column--reach {
  grid-column: 1;
}

.cmey__footer-column--links {
  grid-column: -2 / -1;
}

.cmey__footer-heading {
  font-family: var(--cmey-mono);
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.25;
  color: var(--cmey-ground);
  margin-bottom: var(--cmey-s-md);
}

.cmey__footer p {
  max-width: 48ch;
}

.cmey__footer-social,
.cmey__footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: var(--cmey-rule-thin) solid var(--cmey-ground);
}

.cmey__footer-social li,
.cmey__footer-links li {
  margin: 0;
  border-bottom: var(--cmey-rule-thin) solid rgb(143 229 222 / 0.35);
}

.cmey__footer-social a,
.cmey__footer-links a {
  display: block;
  padding-block: 10px;
  color: var(--cmey-ground);
  font-weight: 500;
}

.cmey__footer-social a:hover,
.cmey__footer-links a:hover {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.cmey__footer-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--cmey-s-sm) var(--cmey-s-xl);
  margin-top: var(--cmey-s-xxl);
  padding-top: var(--cmey-s-md);
  border-top: var(--cmey-rule) solid var(--cmey-ground);
  font-size: 0.9375rem;
}

.cmey__footer-meta p {
  margin: 0;
}

.cmey__footer-statement {
  flex: 1 1 24rem;
}

.cmey__footer-legal {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cmey-s-lg);
}

.cmey__footer-legal a {
  color: var(--cmey-ground);
  white-space: nowrap;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

:is(.cmey__verdict, .cmey__footer, .cmey__helper-answer, .cmey__checklist-band) :is(p, li, dd, figcaption, blockquote, td) a:not([class]) {
  color: var(--cmey-paper);
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

:is(.cmey__verdict, .cmey__footer, .cmey__helper-answer) :focus-visible {
  outline-color: var(--cmey-ground);
}

.cmey__checklist-band :focus-visible {
  outline-color: var(--cmey-paper);
}

.cmey__checklist-band .cmey__checklist :focus-visible {
  outline-color: var(--cmey-ink);
}

.cmey__visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.cmey__u-measure {
  max-width: 64ch;
}

.cmey__u-flush {
  margin: 0;
}

.cmey__u-rule-top {
  border-top: var(--cmey-rule) solid var(--cmey-ink);
  padding-top: var(--cmey-s-lg);
}

.cmey__u-stack {
  display: grid;
  gap: var(--cmey-s-md);
}

@media (max-width: 1024px) {
  .cmey__grid--bento-box-mixed {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cmey__band--overlapping-content-boxes {
    grid-template-columns: minmax(0, 1fr) 4rem minmax(16rem, 24rem);
  }

  .cmey__footer-inner--3col {
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  }
}

@media (max-width: 768px) {
  h1 {
    font-size: clamp(2.25rem, 1.6rem + 3vw, 2.75rem);
  }

  .cmey__navbar-links {
    column-gap: var(--cmey-s-md);
  }

  .cmey__navbar-links a {
    font-size: 0.875rem;
  }

  .cmey__hero--collage-multiple-images {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(15rem, 52svh) 3rem auto;
    min-height: 0;
  }

  .cmey__hero-collage {
    grid-column: 1;
    grid-row: 1 / 3;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: minmax(0, 2fr) minmax(0, 1fr);
    min-height: 0;
  }

  .cmey__hero-collage > :first-child {
    grid-column: 1 / 3;
    grid-row: 1;
  }

  .cmey__hero-collage > :nth-child(2) {
    grid-column: 1;
    grid-row: 2;
  }

  .cmey__hero-collage > :nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }

  .cmey__hero-content {
    grid-column: 1;
    grid-row: 2 / 4;
    width: calc(100% - 2 * var(--cmey-bleed));
    margin-inline: var(--cmey-bleed);
  }

  .cmey__hero-content h1 {
    font-size: clamp(2.75rem, 1.6rem + 4vw, 3.25rem);
  }

  .cmey__hero-lede {
    font-size: 1.0625rem;
  }

  .cmey__checklist {
    grid-template-columns: minmax(0, 1fr);
  }

  .cmey__band--overlapping-content-boxes {
    display: block;
    padding-inline: 0;
  }

  .cmey__band-media {
    --cmey-mark-space: 16px;
    grid-template-rows: var(--cmey-mark-space) auto var(--cmey-mark-space) auto;
  }

  .cmey__band-media > img,
  .cmey__band-media > a,
  .cmey__band-media > picture,
  .cmey__band-media > video,
  .cmey__band-media > iframe {
    grid-row: 2;
  }

  .cmey__band-media::before {
    grid-row: 1 / 4;
  }

  .cmey__band-media figcaption {
    grid-row: 4;
    padding: var(--cmey-s-xs) var(--cmey-gutter) 0;
    line-height: 1.45;
  }

  .cmey__band-box--overlap {
    margin: var(--cmey-s-md) var(--cmey-gutter) 0;
    box-shadow: 6px 6px 0 var(--cmey-ink);
  }

  .cmey__band-columns--3 {
    grid-template-columns: minmax(0, 1fr);
  }

  .cmey__band-columns > *,
  .cmey__band-columns > :first-child {
    padding: var(--cmey-s-lg) 0;
    border-left: 0;
    border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  }

  .cmey__band-columns > :last-child {
    border-bottom: 0;
  }

  .cmey__grid--bento-box-mixed {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: auto;
  }

  .cmey__card--2x2,
  .cmey__card--1x1,
  .cmey__card--1x2,
  .cmey__card--2x1 {
    grid-column: auto;
    grid-row: auto;
  }

  .cmey__card img {
    flex: none;
    aspect-ratio: 3 / 2;
    min-height: 0;
    height: auto;
  }

  dl {
    grid-template-columns: minmax(0, 1fr);
  }

  dt {
    grid-column: 1;
    padding-bottom: 0;
    border-bottom: 0;
  }

  dd {
    grid-column: 1;
    padding-top: var(--cmey-s-xs);
  }

  table:not(.cmey__table-wrap > table) {
    display: block;
    overflow-x: auto;
  }

  .cmey__table-wrap table {
    min-width: 0;
    table-layout: fixed;
    font-size: 0.9375rem;
    line-height: 1.45;
  }

  .cmey__table-wrap :is(th, td) {
    padding: var(--cmey-s-sm);
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  .cmey__table-wrap caption {
    padding-inline: 0;
  }

  .cmey__figure,
  .cmey__figure:first-child {
    border-left: 0;
    padding-left: 0;
    border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  }

  .cmey__figure:last-child {
    border-bottom: 0;
  }

  .cmey__helper-question {
    grid-template-columns: minmax(0, 1fr);
  }

  .cmey__helper-result {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--cmey-s-xl);
  }

  .cmey__footer-inner--3col {
    grid-template-columns: minmax(0, 1fr);
  }

  .cmey__footer-column--reach,
  .cmey__footer-column--links {
    grid-column: 1;
  }

  .cmey__qa-list > li {
    grid-template-columns: 2.5rem minmax(0, 1fr);
  }

  .cmey__qa-list > li::before {
    font-size: 1.5rem;
  }
}

@media (max-width: 480px) {
  .cmey__navbar-inner {
    padding-block: 10px;
    row-gap: 0;
  }

  .cmey__navbar-toggle {
    display: flex;
  }

  .cmey__navbar-links {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    padding-top: 0;
    border-top: 0;
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    transition: max-height 0.3s ease, visibility 0s linear 0.3s;
  }

  .cmey__navbar-links.active {
    max-height: 500px;
    overflow-y: auto;
    visibility: visible;
    margin-top: 10px;
    border-top: var(--cmey-rule-thin) solid var(--cmey-ink);
    transition: max-height 0.3s ease, visibility 0s linear 0s;
  }

  .cmey__navbar-links a {
    font-size: 1.0625rem;
    padding-block: 12px;
    border-bottom: var(--cmey-rule-thin) solid var(--cmey-ink);
  }

  .cmey__navbar-links a:last-child {
    border-bottom: 0;
  }

  .cmey__hero {
    --cmey-bleed: 8px;
  }

  .cmey__hero-content {
    padding: 20px;
  }

  .cmey__btn {
    padding: 12px var(--cmey-s-md);
  }

  .cmey__checklist > li > label,
  .cmey__check > label {
    padding: var(--cmey-s-md);
  }

  blockquote {
    padding-left: var(--cmey-s-md);
    border-left-width: 6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
