.jhr {
  --jhr-style-ready: 1;
  width: 100%;
  min-width: 0;
  padding: clamp(20px, 2.4vw, 40px);
  border: 1px solid rgba(39, 37, 33, .16);
  background: transparent;
  color: #000;
  box-shadow: none;
  font-family: "IBM Plex Mono", monospace;
  text-align: left;
  box-sizing: border-box;
}
.jhr *, .jhr *::before, .jhr *::after { box-sizing: border-box; }
.jhr .jhr-heading {
  margin: 0 0 18px;
  color: #000;
  font: 700 clamp(17px, 1.15vw, 21px)/1.2 "IBM Plex Mono", monospace;
  letter-spacing: 0;
}
.jhr [data-jhr-embed], .jhr .jhr-rivet-host { width: 100%; min-width: 0; overflow: visible !important; }
.jhr [data-jhr-embed] { container-type: inline-size; container-name: jhr-form; }
.jhr-message { margin: 12px 0; width: 100%; }
.jhr-label { display: block; margin-bottom: 6px; font: 700 12px/1.4 "IBM Plex Mono", monospace; text-transform: uppercase; }
.jhr-message textarea {
  display: block; width: 100%; min-height: 100px; padding: 12px;
  color: #272521; background: rgba(255,255,255,.54); border: 1px solid rgba(39,37,33,.42);
  border-radius: 0; box-shadow: none; font: 400 15px/1.5 "IBM Plex Mono", monospace; resize: vertical;
}
.jhr-help, .jhr-status { margin: 8px 0 0; font: 400 11px/1.45 "IBM Plex Mono", monospace; overflow-wrap: anywhere; }
.jhr-status:empty { display: none; }
.jhr-status.is-error { color: #8b1616; }
.jhr-help { color: #514e48; }
.jhr-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.jhr-retry { margin-top: 12px; padding: 10px 14px; border: 1px solid #610301; background: #610301; color: #fff; font: 700 13px "IBM Plex Mono",monospace; }
.jhr [hidden] { display: none !important; }

/* Applied only to the Cornerstone section containing this companion shortcode. */
.jhr-layout { display: flex !important; flex-direction: column; min-height: 100svh; box-sizing: border-box; }
.jhr-layout > .jhr-layout-row { width: 100% !important; max-width: none; margin: 0 !important; padding: 0 clamp(16px, 2vw, 36px) !important; flex: 1; }
.jhr-layout-row > .x-row-inner {
  display: grid !important;
  grid-template-columns: minmax(320px, .34fr) minmax(0, .66fr);
  gap: clamp(20px, 2vw, 36px);
  align-items: center;
  margin: 0 !important;
  min-width: 0;
}
.jhr-layout-row > .x-row-inner > .x-col {
  display: block !important; width: auto !important; min-width: 0;
  margin: 0 !important; padding: 0 !important; align-self: center;
}
.jhr-layout .jhw--notes { width: 100%; min-width: 0; }
.jhr-layout .jhw--notes .jhw__wall-panel {
  height: max(480px, calc(100svh - var(--jhr-top, 120px) - 30px));
  min-height: 0 !important; max-height: none !important; padding: 0 !important;
}
.jhr-layout .jhw__stage { min-height: 0 !important; border: none; }
@media (min-width: 1101px) and (max-height: 800px) {
  .jhr { padding: 18px 20px; }
  .jhr .jhr-heading { margin-bottom: 12px; }
}
@media (max-width: 1100px) {
  .jhr-layout-row > .x-row-inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .jhr-layout-row > .x-row-inner > .jhr-form-column { width: 100% !important; max-width: 560px; justify-self: center; }
  .jhr-layout .jhw--notes .jhw__wall-panel { height: max(520px, 70svh); }
}
