.dh-page {
  --dhp-accent: #d7f96f;
  --dhp-dark: #191d1a;
  --dhp-muted: #555c52;
  background: #f6f6f1;
  color: var(--dhp-dark);
  line-height: 1.65;
}
.dhp-inner { width: min(1180px, 90%); margin-inline: auto; }
.dhp-intro {
  background: #151815;
  color: #f8f9f4;
  padding-block: clamp(4rem, 9vw, 8rem);
}
.dhp-intro.dhp-image {
  background-image: linear-gradient(90deg, rgba(13,16,13,.94), rgba(13,16,13,.68) 50%, rgba(13,16,13,.28)), var(--dhp-image);
  background-position: center;
  background-size: cover;
}
.dhp-kicker { margin: 0 0 .85rem; color: #536a2b; font-size: .72rem; font-weight: 800; letter-spacing: .15em; }
.dhp-intro .dhp-kicker { color: var(--dhp-accent); }
.dhp-intro h1 {
  margin: 0;
  max-width: 16ch;
  font-family: "Space Grotesk", Manrope, sans-serif;
  font-size: clamp(2.8rem, 7.4vw, 6.25rem);
  line-height: .97;
  letter-spacing: -.06em;
}
.dhp-subtitle { color: #d9dfd5; max-width: 56ch; margin: 1.35rem 0 0; font-size: clamp(.98rem, 1.7vw, 1.2rem); }
.dhp-story, .dhp-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(2rem, 6vw, 6.5rem); align-items: start; padding-block: clamp(3rem, 7vw, 6.5rem); }
.dhp-story aside { padding-top: 1.4rem; border-top: 1px solid #c7cbbf; }
.dhp-story aside strong { display: block; font-family: "Space Grotesk", sans-serif; font-size: clamp(4rem, 9vw, 7.5rem); letter-spacing: -.09em; line-height: 1; }
.dhp-story aside p:last-child { max-width: 24ch; color: var(--dhp-muted); }
.dhp-story div p { margin: 0 0 1.25rem; }
.dhp-story blockquote { border-left: 3px solid #7a962e; padding: .3rem 0 .3rem 1.2rem; margin: 2rem 0; font-weight: 750; }
.dhp-aside { border-top: 1px solid #c7cbbf; padding-top: 1.35rem; }
.dhp-aside h2, .dhp-form h2, .dhp-legal h2 { font-family: "Space Grotesk", Manrope, sans-serif; font-size: clamp(1.5rem, 2.8vw, 2.2rem); line-height: 1.15; letter-spacing: -.045em; margin: 0 0 .85rem; }
.dhp-aside p { margin: 0 0 1rem; }
.dhp-aside a, .dhp-form a, .dhp-legal a { color: #3e531b; text-decoration: underline; text-underline-offset: .18em; overflow-wrap: anywhere; }
.dhp-form {
  min-width: 0;
  background: #fff;
  border: 1px solid #dde0d7;
  border-radius: 3px;
  padding: clamp(1.2rem, 4vw, 2.55rem);
}
.dhp-form-note { margin: 0 0 1.4rem; font-size: .85rem; color: var(--dhp-muted); }
.dhp-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1rem; }
.dhp-grid label { display: grid; align-content: start; gap: .38rem; color: #353d32; font-size: .86rem; font-weight: 650; }
.dhp-wide { grid-column: 1 / -1; }
.dhp-grid input, .dhp-grid select, .dhp-grid textarea {
  width: 100%;
  min-height: 2.8rem;
  padding: .63rem .72rem;
  border: 1px solid #cdd2c7;
  border-radius: 3px;
  background: #fbfcf9;
  color: var(--dhp-dark);
  font: inherit;
  font-weight: 450;
}
.dhp-grid textarea { resize: vertical; }
.dhp-grid input::placeholder, .dhp-grid textarea::placeholder { color: #6b7367; }
.dhp-grid input:focus, .dhp-grid select:focus, .dhp-grid textarea:focus { outline: 2px solid #72913c; outline-offset: 1px; }
.dhp-upload small { color: var(--dhp-muted); font-size: .77rem; font-weight: 450; }
.dhp-check { display: flex; gap: .6rem; margin: 1.2rem 0; align-items: baseline; font-size: .82rem; }
.dhp-check input { width: 1rem; height: 1rem; accent-color: #596f2f; flex: 0 0 auto; }
.dhp-trap { position: absolute; inset-inline-start: -100vw; width: 1px; height: 1px; overflow: hidden; }
.dhp-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  min-height: 2.85rem;
  padding: .65rem 1rem;
  border: 1px solid transparent;
  border-radius: 3px;
  background: var(--dhp-accent);
  color: #151b0b;
  font: inherit;
  font-size: .85rem;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
.dhp-button:hover { background: #c6e958; }
.dhp-button:focus-visible, .dhp-form a:focus-visible, .dhp-aside a:focus-visible { outline: 2px solid #526c2c; outline-offset: 4px; }
.dhp-button:disabled { cursor: wait; opacity: .68; }
.dhp-feedback { color: #465630; font-weight: 650; font-size: .87rem; margin: .85rem 0 0; }
.dhp-feedback:empty { margin: 0; }
.dhp-legal { max-width: 760px; padding-block: clamp(3rem, 7vw, 6.5rem); }
.dhp-legal p { margin: 0 0 2rem; }
@media (max-width: 720px) {
  .dhp-story, .dhp-split { grid-template-columns: 1fr; gap: 1.7rem; }
  .dhp-story aside { display: none; }
  .dhp-intro.dhp-image { background-image: linear-gradient(90deg, rgba(13,16,13,.93), rgba(13,16,13,.56)), var(--dhp-image); }
}
@media (max-width: 440px) { .dhp-grid { grid-template-columns: minmax(0,1fr); } }
