#contact-form [hidden]{display:none!important}#contact-form h2{font-family:'HWT Artz',sans-serif;letter-spacing:.035em;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15}#contact-form .contact-help{font-size:.9rem;line-height:1.55;color:var(--text-dim);margin:0}#contact-form a{color:var(--text);text-decoration:underline;text-underline-offset:3px}#contact-form .field{min-width:0}#contact-form select{width:100%;text-overflow:ellipsis}#contact-form textarea{resize:vertical;min-height:140px}#contact-form .btn{justify-content:center}#contact-form .btn:disabled{opacity:.7;cursor:wait}.contact-status{padding:18px;border:2px solid var(--text);border-radius:8px;color:var(--text);line-height:1.5}.contact-status:focus{outline:3px solid var(--pink);outline-offset:4px}.contact-thanks{padding:120px 24px;max-width:800px}.contact-thanks h1{letter-spacing:.035em}.contact-thanks p{margin:24px 0}.contact-thanks a{margin:12px;display:inline-block}@media(max-width:700px){#contact-form .row{grid-template-columns:1fr}#contact-form input,#contact-form select,#contact-form textarea{font-size:16px}}

.contact-page .reveal{opacity:1;transform:none}.contact-page h1{font-family:'HWT Artz',sans-serif;font-weight:400;letter-spacing:.035em;font-size:clamp(42px,5.3vw,76px);line-height:1.12}.contact-page #contact-form h2{font-weight:400}@media(max-width:700px){.contact-page .feature{display:flex;flex-direction:column;gap:20px}.contact-page .feature>div:first-child{display:contents}.contact-page .feature>div:last-child{order:1;width:100%}.contact-page .feature .pfeat{order:2;width:100%;margin-bottom:0!important}.contact-page .feature .lead{margin-bottom:8px!important}}

/* A distinct enquiry panel, with room for the fields on smaller screens. */
.contact-page .feature {
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: clamp(28px, 4vw, 56px);
}
.contact-page .feature > div { min-width: 0; width: 100%; }
.contact-page #contact-form {
  width: 100%;
  max-width: none;
  padding: clamp(24px, 3vw, 40px);
  border: 2px solid color-mix(in srgb, var(--purple) 58%, var(--line));
  border-top: 6px solid var(--purple);
  border-radius: 24px;
  background: var(--ink-2);
  box-shadow: 0 22px 60px -28px rgba(75, 40, 130, .26);
}
.contact-page #contact-form h2 { margin-bottom: 0; }
.contact-page #contact-form :is(input, select, textarea) {
  border-color: color-mix(in srgb, var(--purple) 18%, var(--line));
}
.contact-page #contact-form :is(input, select, textarea):focus {
  border-color: var(--pink);
}
[data-theme="dark"] .contact-page #contact-form {
  box-shadow: 0 22px 60px -28px rgba(0, 0, 0, .7);
}
@media (max-width: 700px) {
  .contact-page .feature { gap: 24px; }
  .contact-page #contact-form { padding: 24px 20px; border-radius: 20px; }
}
