/* Accessible form-only refinements; load after the existing self-service CSS. */
.premium-v2 .hansen-enquiry [hidden] { display: none !important; }
.premium-v2 .hansen-enquiry .selfservice-head { align-items: center; gap: 1rem; }
.premium-v2 .hansen-enquiry .selfservice-mode { font-size: .88rem; line-height: 1.5; color: #485047; }
.premium-v2 .hansen-enquiry .selfservice-panel__intro h2 {
  max-width: none;
  margin: 0;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  line-height: 1.18;
}
.premium-v2 .hansen-enquiry .selfservice-panel__intro h2,
.premium-v2 .hansen-enquiry .selfservice-error,
.premium-v2 .hansen-enquiry .selfservice-result { scroll-margin-top: 9rem; }
.premium-v2 .hansen-enquiry .selfservice-types { min-width: 0; margin: 0; padding: 0; border: 0; }
.premium-v2 .hansen-enquiry .selfservice-sr-only,
.premium-v2 .hansen-enquiry .selfservice-trap {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.premium-v2 .hansen-enquiry .selfservice-choice:has(input:focus-visible) {
  outline: 3px solid #263a54;
  outline-offset: 4px;
}
.premium-v2 .hansen-enquiry :is(button, input, select, textarea):focus-visible,
.premium-v2 .hansen-enquiry .selfservice-panel__intro h2:focus-visible,
.premium-v2 .hansen-enquiry .selfservice-result:focus-visible,
.premium-v2 .hansen-enquiry .selfservice-error:focus-visible {
  outline: 3px solid #263a54;
  outline-offset: 4px;
}
.premium-v2 .hansen-enquiry :is(input, select, textarea)[aria-invalid="true"],
.premium-v2 .hansen-enquiry .selfservice-choice:has(input[aria-invalid="true"]) { border-color: #a81925; }
.premium-v2 .hansen-enquiry .selfservice-field > small,
.premium-v2 .hansen-enquiry .selfservice-contact-help { color: #565d56; font-size: .85rem; line-height: 1.5; }
.premium-v2 .hansen-enquiry .selfservice-field-error,
.premium-v2 .hansen-enquiry .selfservice-field > .selfservice-field-error,
.premium-v2 .hansen-enquiry .selfservice-file-errors { color: #a81925; font-size: .85rem; font-weight: 700; line-height: 1.5; }
.premium-v2 .hansen-enquiry .selfservice-field-error { margin: .35rem 0 0; }
.premium-v2 .hansen-enquiry .selfservice-error:empty { display: none; }
.premium-v2 .hansen-enquiry .selfservice-error { overflow-wrap: anywhere; }
.premium-v2 .hansen-enquiry .selfservice-upload__limits { display: block; margin: .3rem 0 .8rem; color: #565d56; font-size: .85rem; line-height: 1.5; }
.premium-v2 .hansen-enquiry .selfservice-upload input { min-height: 44px; max-width: 100%; padding: .4rem 0; }
.premium-v2 .hansen-enquiry .selfservice-file-errors { overflow-wrap: anywhere; }
.premium-v2 .hansen-enquiry .selfservice-file-errors p { margin-bottom: .25rem; }
.premium-v2 .hansen-enquiry .selfservice-file-errors ul { padding-left: 1.4rem; }
.premium-v2 .hansen-enquiry .selfservice-file-count { margin: .8rem 0; color: #565d56; font-size: .85rem; }
.premium-v2 .hansen-enquiry .selfservice-thumbs { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; list-style: none; }
.premium-v2 .hansen-enquiry .selfservice-thumb { display: flex; flex-direction: column; aspect-ratio: auto; min-width: 0; border: 1px solid #d8d8d1; background: #faf9f6; }
.premium-v2 .hansen-enquiry .selfservice-thumb img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.premium-v2 .hansen-enquiry .selfservice-thumb__name { margin: .5rem .5rem .2rem; color: #343c34; font-size: .76rem; line-height: 1.4; overflow-wrap: anywhere; }
.premium-v2 .hansen-enquiry .selfservice-thumb__remove { align-self: stretch; min-width: 44px; min-height: 44px; margin: auto .5rem .5rem; padding: .45rem .6rem; border: 1px solid #6b726a; background: #fff; color: #343c34; font: inherit; font-size: .85rem; cursor: pointer; }
.premium-v2 .hansen-enquiry .selfservice-thumb__remove:hover { background: #f0ece6; }
.premium-v2 .hansen-enquiry .selfservice-summary__message p { overflow-wrap: anywhere; }
.premium-v2 .hansen-enquiry .selfservice-summary__files { grid-column: 1 / -1; }
.premium-v2 .hansen-enquiry .selfservice-summary__note { background: #f3f1eb; color: #434b43; }
.premium-v2 .hansen-enquiry .selfservice-result { padding: 1rem; border-left: 4px solid #326544; background: #eef5ef; color: #254a31; line-height: 1.5; }
.premium-v2 .hansen-enquiry .selfservice-actions .button { white-space: normal; }
.premium-v2 .hansen-enquiry .selfservice-actions .button:disabled { cursor: not-allowed; background: #e9e7e1; border-color: #cbc9c2; color: #525951; opacity: 1; box-shadow: none; transform: none; }
@media (max-width: 640px) {
  .premium-v2 .hansen-enquiry .selfservice-head { grid-template-columns: 1fr; }
  .premium-v2 .hansen-enquiry .selfservice-actions { position: static; box-shadow: none; }
  .premium-v2 .hansen-enquiry .selfservice-actions .button { padding-inline: .8rem; }
  .premium-v2 .hansen-enquiry .selfservice-thumbs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .premium-v2 .hansen-enquiry .selfservice-summary__header { align-items: flex-start; flex-direction: column; gap: .4rem; }
}
@media (prefers-reduced-motion: reduce) {
  .premium-v2 .hansen-enquiry .selfservice-progress__bar i,
  .premium-v2 .hansen-enquiry .selfservice-choice { transition: none; }
}
