.ov-help {
  --help-ink: #202622;
  --help-green: #164e4c;
  --help-line: #d6e2db;
  --help-tint: #f1f7f3;
  color: var(--help-ink);
  line-height: 1.65;
  overflow-wrap: anywhere;
}
.ov-help *, .ov-help *::before, .ov-help *::after { box-sizing: border-box; }
.ov-help p { margin: 0 0 1em; }
.ov-help .ov-help-intro { max-width: 65ch; margin-bottom: 1.6rem; font-size: 1.13rem; }
.ov-help a { color: var(--help-green); text-underline-offset: .2em; }
.ov-help a:hover { text-decoration: underline; }
.ov-help :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--help-green); outline-offset: 3px; }
.ov-help :is(section, nav)[id] { scroll-margin-top: 7rem; }
.ov-help .ov-help-routes, .ov-help .ov-help-pair { display: grid; gap: 1rem; }
.ov-help .ov-help-hint { font-size: .9rem; }
.ov-help-routes { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.ov-help-panel { min-width: 0; padding: clamp(1.15rem, 3vw, 2rem); border: 1px solid var(--help-line); border-radius: 16px; background: #fff; }
.ov-help :is(.ov-help-panel, .ov-help-faq, .ov-help-tail) h2 { margin: 0 0 .6rem; font-size: clamp(1.35rem, 3vw, 1.8rem); line-height: 1.2; }
.ov-help .ov-help-kicker { margin-bottom: .6rem; color: var(--help-green); font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.ov-help .ov-help-form { margin: 1.2rem 0 0; display: grid; gap: 1rem; }
.ov-help-form h3, .ov-help-form p { margin: 0; }
.ov-help-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ov-help-form label, .ov-help .track_order label { display: grid; gap: .35rem; color: var(--help-ink); font-size: .96rem; font-weight: 650; }
.ov-help select, .ov-help textarea, .ov-help input:not([type="hidden"]) { width: 100%; min-width: 0; min-height: 46px; margin: 0; padding: .62rem .78rem; color: var(--help-ink); background: white; border: 1px solid #8c9e93; border-radius: 7px; font: inherit; font-weight: 400; }
.ov-help textarea { resize: vertical; }
.ov-help .ov-help-button, .ov-help .track_order button.button { width: fit-content; max-width: 100%; min-height: 46px; padding: .72rem 1.3rem; border: 0; border-radius: 8px; color: white; background: var(--help-green); font: inherit; font-weight: 700; cursor: pointer; white-space: normal; }
.ov-help .ov-help-button:hover, .ov-help .track_order button.button:hover { background: #103b3a; color: #fff; }
.ov-help-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .8rem; }
.ov-help-text-button { border: 0; background: transparent; padding: .55rem; text-decoration: underline; color: var(--help-green); font: inherit; cursor: pointer; }
.ov-help .ov-help-notice { padding: 1rem; border: 1px solid var(--help-line); border-radius: 8px; background: var(--help-tint); }
.ov-help .ov-help-error { background: #fff2ef; border-color: #b86450; color: #743323; }
.ov-help-notice p:last-child { margin-bottom: 0; }
.ov-help-summary { margin: 0; padding: 1rem; background: var(--help-tint); border-radius: 8px; }
.ov-help-summary dt { font-weight: 700; }
.ov-help-summary dd { margin: 0 0 .75rem; }
.ov-help-summary dd:last-child { margin-bottom: 0; }
.ov-help-tail { margin-top: 2rem; padding-block: 1.4rem .3rem; border-top: 1px solid var(--help-line); }
.ov-help-faq { margin-block: 2rem; }
.ov-help-faq details { padding: 0; border-bottom: 1px solid var(--help-line); }
.ov-help-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; min-height: 48px; padding: .85rem 0; cursor: pointer; list-style: none; font-weight: 650; }
.ov-help-faq summary::-webkit-details-marker { display: none; }
.ov-help-faq summary::after { content: ""; flex: 0 0 .55rem; width: .55rem; height: .55rem; margin-inline: .25rem; border-right: 2px solid var(--help-green); border-bottom: 2px solid var(--help-green); transform: rotate(45deg); }
.ov-help-faq details[open] summary::after { transform: rotate(225deg); }
.ov-help-faq details p { padding-right: 1rem; margin-bottom: 1rem; max-width: 72ch; }
.ov-help .track_order .form-row { float: none; width: 100%; margin: .7rem 0; }
.ov-help .track_order { margin: 0; }
.ov-help-panel .woocommerce table { width: 100%; font-size: .92rem; }
@media (max-width: 720px) {
  .ov-help-routes, .ov-help-pair { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 420px) {
  .ov-help .ov-help-button { width: 100%; }
}
