html > body > #grid > main.landing {
  /** Required arguments with purportedly ridiculous defaults */
  --element-gap-inline: 200px;
  --element-gap-block: 200px;
  --element-gap-between-features-and-paragraph: 200px;
  --element-color-lead: red;
  --element-heading-font-size: 200px;
  --element-em-text-overlay: red;
  --element-details-summary-color-border: red;
  --element-details-summary-border-radius: 100px;
  --element-details-summary-padding: 100px;

  /** Optional arguments with sensible defaults */
  --element-details-summary-text-decoration: none;
  --element-details-summary-text-decoration-style: none;
  --element-details-summary-text-decoration-thickness: 0;
  --element-details-summary-text-underline-offset: 0;

  display: grid;
  grid-template-columns: subgrid;
  gap: var(--element-gap-block) var(--element-gap-inline);

  > h1 {
    font-size: max(var(--element-heading-font-size), 4.5vw);
  }

  > h3 {
    font-size: x-large;
    color: var(--element-color-lead);
  }

  > h1 + h3,
  > h2 + h3 {
    margin-top: calc(var(--element-gap-block) * -1);
  }

  > h2[data-icon]:not([data-icon='']) {
    &::before {
      display: block;
      text-align: center;
      padding-block: var(--element-gap-block);
    }
  }

  > article {
    --element-gap: var(--element-gap-block);
  }

  > details {
    > summary {
      padding: var(--element-details-summary-padding);
      margin-top: calc(var(--element-details-summary-padding) * -1 - 1px);
      margin-left: calc(var(--element-details-summary-padding) * -1 - 1px);
      border: 1px solid var(--element-details-summary-color-border);
      border-radius: var(--element-details-summary-border-radius);
      display: inline-block;
      text-decoration: var(--element-details-summary-text-decoration);
      text-decoration-style: var(--element-details-summary-text-decoration-style);
      text-decoration-thickness: var(--element-details-summary-text-decoration-thickness);
      text-underline-offset: var(--element-details-summary-text-underline-offset);
    }

    &[open] > summary {
      margin-bottom: var(--element-details-summary-padding);
    }
  }

  * em {
    font-weight: bold;
    font-style: italic;
    background: var(--element-em-text-overlay);
    background-clip: text;
    color: transparent;
  }
}
