.proposal-main {
  max-width: 1080px;
  padding-top: 65px;
}
.proposal-intro {
  max-width: 800px;
  margin-bottom: 42px;
}
.proposal-intro h1 {
  font:
    normal clamp(38px, 5.5vw, 68px) / 1.06 Georgia,
    serif;
  letter-spacing: -2px;
  margin: 22px 0;
}
.proposal-intro h1 em {
  color: var(--green);
  font-weight: normal;
}
.proposal-intro > p:last-child {
  max-width: 650px;
  color: var(--muted);
  font-size: 17px;
}
.proposal-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(240px, 1fr);
  gap: 36px;
  align-items: start;
}
.proposal-panel {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 32px;
}
.proposal-panel h2 {
  font:
    normal 27px/1.2 Georgia,
    serif;
  margin-top: 0;
}
.proposal-panel > .quiet {
  margin-top: 10px;
}
.proposal-field {
  margin: 25px 0;
}
.proposal-field label {
  display: block;
  margin-bottom: 9px;
  font-weight: 650;
  font-size: 14px;
}
.proposal-field input,
.proposal-field textarea,
.proposal-field select {
  width: 100%;
  border: 1px solid #cbd1c5;
  border-radius: 10px;
  background: #fbfcf9;
  color: var(--ink);
  font: inherit;
  padding: 14px;
  min-height: 48px;
}
.proposal-field textarea {
  resize: vertical;
  line-height: 1.6;
}
.field-help {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.7;
  margin: 8px 0;
}
.proposal-contact {
  padding: 16px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  margin-bottom: 20px;
}
.proposal-contact summary {
  cursor: pointer;
  color: var(--green);
  font-size: 14px;
}
.proposal-contact .proposal-field {
  margin-bottom: 0;
}
.proposal-panel fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}
.proposal-honey {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.proposal-status {
  font-size: 14px;
  margin-bottom: 0;
  color: var(--green);
}
.proposal-status.error {
  color: #9b3430;
}
.proposal-success {
  padding: 30px 0;
}
.proposal-success > span {
  display: block;
  color: var(--green);
  font-size: 40px;
  margin-bottom: 18px;
}
.proposal-success .primary {
  display: inline-flex;
  text-decoration: none;
  margin: 15px 0;
}
.proposal-success .text-button {
  display: block;
}
.proposal-aside {
  padding: 28px 15px;
}
.proposal-aside h2 {
  font:
    normal 25px/1.2 Georgia,
    serif;
}
.proposal-aside ol {
  padding-left: 24px;
  margin-top: 30px;
}
.proposal-aside li {
  padding-left: 10px;
  margin-bottom: 30px;
}
.proposal-aside p {
  color: var(--muted);
  font-size: 14px;
}
.proposal-privacy {
  border-top: 1px solid var(--line);
  margin-top: 55px;
  padding: 30px 0 10px;
  max-width: 800px;
}
.proposal-privacy h2 {
  font:
    normal 23px Georgia,
    serif;
}
.proposal-privacy p {
  font-size: 13px;
  color: var(--muted);
}
@media (max-width: 700px) {
  .proposal-main {
    padding-top: 36px;
  }
  .proposal-intro h1 {
    letter-spacing: -1px;
  }
  .proposal-layout {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .proposal-panel {
    padding: 23px 20px;
  }
  .proposal-aside {
    padding: 15px 5px;
  }
  .proposal-aside ol {
    margin-bottom: 0;
  }
  .proposal-privacy {
    margin-top: 20px;
  }
  .proposal-submit {
    width: 100%;
  }
}
