*, *::before, *::after { box-sizing: border-box; }
*[hidden] { display: none !important; }

/* Keep every interactive state on the selected default accent. */
[style-hover*="border-color:#3d2716"]:hover,
[style-hover*="border-color:#2e2a1e"]:hover {
  border-color: var(--acc, #C7B48A) !important;
}

[style-hover*="background:#E4D6B4"]:hover {
  background: var(--acc, #C7B48A) !important;
}

@media (max-width: 700px) {
  header > div:first-child {
    height: 58px !important;
    padding-inline: 18px !important;
  }

  header > div[aria-hidden="true"] {
    height: 1px !important;
    padding: 0 !important;
  }

  header nav[aria-label="Sections"] { display: none !important; }

  header a[download] {
    padding: 8px 12px !important;
    font-size: 11px !important;
  }

  nav[aria-label="Progress"] { display: none !important; }

  main section { padding-block: 76px !important; }

  main section > div,
  footer > div {
    width: 100% !important;
    padding-inline: 20px !important;
  }

  [style*="grid-template-columns:repeat(auto-fit"] {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #hero {
    min-height: auto !important;
    padding-top: 104px !important;
  }

  #hero > div {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 48px !important;
  }

  #hero h1 { font-size: clamp(38px, 13vw, 54px) !important; }

  #hero dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #hero dl > div:last-child { grid-column: 1 / -1; }

  #hero p,
  #hero div { min-width: 0; }

  #hero [style*="min-height:290px"] {
    min-height: 250px !important;
    padding: 16px !important;
    font-size: 10px !important;
    overflow-x: auto !important;
  }

  [style*="position:fixed"][style*="bottom:20px"][style*="left:50%"] {
    display: none !important;
  }

  footer > div {
    align-items: flex-start !important;
  }
}
