/* Saved project requests and quiet, optional visit insights. */
#brief .form-actions .button:disabled,
#brief .form-actions button:disabled {
  cursor: default;
  opacity: .72;
  transform: none;
}
#brief .inquiry-honeypot {
  position: absolute !important;
  left: -10000px !important;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
#brief .inquiry-privacy {
  margin: 12px 0 0;
  color: #52654b;
  font: 400 13px/1.7 var(--sans);
  max-width: 64ch;
}
#brief .inquiry-privacy a,
#brief .email-fallback button {
  color: #3e6245;
  text-decoration: underline;
  text-underline-offset: 3px;
}
#brief .email-fallback {
  margin: 10px 0 0;
  font: 400 13px/1.7 var(--sans);
  color: #52654b;
}
#brief .email-fallback button {
  display: inline;
  background: none;
  border: 0;
  padding: 4px 1px;
  font: inherit;
  cursor: pointer;
}
#brief #form-status[data-state="saved"] {
  padding: 14px 16px;
  border: 1px solid #7b9a66;
  background: #e8eedb;
  color: #294b35;
}
#brief #form-status[data-state="error"] {
  padding: 14px 16px;
  border: 1px solid #b39772;
  background: #f4ecdd;
  color: #71503c;
}
footer .privacy-open {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: none;
  color: #526c43;
  font: inherit;
  cursor: pointer;
}
footer .privacy-open:hover { text-decoration: underline; text-underline-offset: 5px; }
.privacy-panel {
  max-width: var(--max);
  margin: 22px auto 0;
  border-top: 1px solid #b7c6a5;
  color: #52664b;
}
.privacy-panel details { border: 0; }
.privacy-panel summary {
  display: flex;
  align-items: center;
  gap: 16px;
  justify-content: space-between;
  padding: 16px 0;
  color: #38583e;
  font: 500 14px/1.6 var(--sans);
}
.privacy-panel summary span {
  color: #62764f;
  font: 400 11px/1.6 var(--mono);
}
.privacy-panel .privacy-copy { max-width: 85ch; padding-bottom: 8px; }
.privacy-panel .privacy-copy p {
  padding: 0;
  margin: 0 0 12px;
  font: 400 13px/1.75 var(--sans);
  color: #52664b;
}
.privacy-panel .privacy-copy a { text-decoration: underline; text-underline-offset: 3px; }
.privacy-panel #privacy-choice-state { margin-top: 14px; color: #375c3f; }
.visit-consent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  margin: 8px 0 16px;
  background: #f0f2e4;
  border: 1px solid #9aaa88;
}
.visit-consent[hidden] { display: none; }
.privacy-panel .visit-consent p { margin: 0; max-width: 55ch; }
.visit-consent strong { color: #38583e; }
.visit-consent-actions { display: flex; flex: none; gap: 10px; }
.visit-consent button {
  min-height: 44px;
  border: 1px solid #7b956c;
  background: #355b40;
  color: #fff9e9;
  padding: 9px 13px;
  font: 500 13px/1.5 var(--sans);
  cursor: pointer;
}
.visit-consent button[data-visit-choice="decline"] { background: transparent; color: #3d5b3e; }
.visit-consent button:hover { box-shadow: 2px 2px 0 #b7c59e; }
.visit-consent button:disabled { opacity: .5; cursor: default; box-shadow: none; }
.privacy-panel button:focus-visible,
.privacy-panel summary:focus-visible,
footer .privacy-open:focus-visible,
#brief .email-fallback button:focus-visible {
  outline: 3px solid #587443;
  outline-offset: 3px;
}
@media (max-width: 700px) {
  .visit-consent { flex-direction: column; align-items: flex-start; padding: 16px; }
  .visit-consent-actions { flex-wrap: wrap; width: 100%; }
  .visit-consent button { flex: 1; }
  .privacy-panel summary { align-items: flex-start; }
  .privacy-panel summary span { max-width: 14ch; text-align: right; }
}
