/* Supporting pages and shared cookie settings, composed in direction A. */
.mh-support-nav { display:flex; gap:32px; margin-inline:auto; font:500 14px/1.3 var(--mh-display); }
.mh-support-nav a { padding-block:14px; }
.mh-support-nav a:hover { color:var(--mh-accent); }
.mh-contact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.92fr); gap:clamp(40px,6vw,88px); padding-block:88px 120px; align-items:start; }
.mh-contact__intro h1 { font:600 clamp(64px,6.65vw,96px)/1.04 var(--mh-display); letter-spacing:-.055em; }
.mh-contact__intro h1 span { display:block; }
.mh-contact__intro h1 .mh-signal { color:var(--mh-signal); }
.mh-contact__lead { max-width:510px; margin-block-start:32px !important; font-size:22px; line-height:1.5; color:var(--mh-text-2); }
.mh-contact__proof { max-width:520px; margin-block-start:48px !important; color:var(--mh-muted); font-size:15px; line-height:1.8; }
.mh-contact__proof strong { color:var(--mh-text-2); font-weight:700; }
.mh-inquiry { padding:36px; border:1px solid var(--mh-line-2); border-radius:18px; background:var(--mh-panel); }
.mh-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px 20px; }
.mh-form-field { display:block; min-width:0; }
.mh-form-field--full { grid-column:1/-1; }
.mh-form-field label,.mh-needs legend { display:block; margin-block-end:8px; font-size:16px; font-weight:700; color:var(--mh-text-2); }
.mh-form-field label em,.mh-needs legend em { font-style:normal; color:var(--mh-accent); margin-inline-start:4px; }
.mh-form-field label small,.mh-needs legend small { font-weight:400; font-size:14px; color:var(--mh-muted); }
.mh-form-field input,.mh-form-field select,.mh-form-field textarea { display:block; width:100%; min-height:52px; padding:13px 15px; border:1px solid var(--mh-line-3); border-radius:9px; background:var(--mh-field); color:var(--mh-text); font:400 17px/1.4 var(--mh-text-f); }
.mh-form-field textarea { min-height:126px; resize:vertical; }
.mh-form-field input:hover,.mh-form-field select:hover,.mh-form-field textarea:hover { border-color:var(--mh-muted); }
.mh-form-field input::placeholder,.mh-form-field textarea::placeholder { color:var(--mh-muted); opacity:1; }
.mh-form-field select:invalid { color:var(--mh-muted); }
.mh-form-field [aria-invalid="true"] { border-color:var(--mh-accent); }
.mh-form-field-error { min-height:0; color:var(--mh-accent); font-size:14px; line-height:1.4; margin-block-start:6px !important; }
.mh-form-field-error:empty { display:none; }
.mh-needs { margin:30px 0; padding:0; border:0; min-width:0; }
.mh-needs legend { float:none; padding:0; margin-block-end:10px; }
.mh-chips { display:flex; gap:9px; flex-wrap:wrap; }
.mh-chip { position:relative; display:flex; max-width:100%; }
.mh-chip input { position:absolute; width:1px; height:1px; opacity:0; }
.mh-chip span { display:block; padding:10px 15px; border:1px solid var(--mh-line-3); border-radius:24px; font:400 15px/1.4 var(--mh-text-f); cursor:pointer; color:var(--mh-text-2); }
.mh-chip input:checked + span { border-color:var(--mh-accent); background:var(--mh-field-hover); color:var(--mh-text); }
.mh-chip input:checked + span::before { content:'✓'; color:var(--mh-accent); margin-inline-end:7px; }
.mh-chip input:focus-visible + span { outline:2px solid var(--mh-accent); outline-offset:3px; }
.mh-consent { display:flex; align-items:flex-start; gap:11px; margin-block:24px 0; font-size:15px; color:var(--mh-text-2); }
.mh-consent input { flex:none; width:18px; height:18px; margin:3px 0 0; accent-color:var(--mh-accent); }
.mh-consent a,.mh-policy a:not(.mh-policy__toc a),.mh-draft a { text-decoration:underline; text-underline-offset:3px; }
.mh-form-actions { display:flex; gap:12px; flex-wrap:wrap; margin-block-start:25px; }
.mh-form-actions .mh-pill { border:0; }
.mh-form-note { color:var(--mh-muted); font-size:14px; line-height:1.5; margin-block-start:18px !important; }
.mh-form-note + .mh-form-note { margin-block-start:8px !important; }
.mh-draft { grid-column:1/-1; padding:24px; background:var(--mh-panel); border:1px solid var(--mh-line-2); border-radius:12px; }
.mh-draft[hidden] { display:none; }
.mh-draft h2 { font:500 25px/1.3 var(--mh-display); margin-block-end:10px; }
.mh-draft p { color:var(--mh-text-2); }
.mh-draft textarea { display:block; width:100%; min-height:260px; margin-block-start:18px; padding:16px; border:1px solid var(--mh-line-3); background:var(--mh-field); color:var(--mh-text); font:400 16px/1.5 var(--mh-text-f); resize:vertical; border-radius:8px; }
.mh-draft-status { margin-block-start:12px !important; font-size:15px; }
.mh-support .mh-foot__legal button,.mh-foot [data-cookie-settings] { padding:0; border:0; color:inherit; background:none; font:inherit; cursor:pointer; text-align:start; }
.mh-support .mh-foot__legal button:hover,.mh-foot [data-cookie-settings]:hover { color:var(--mh-text); text-decoration:underline; text-underline-offset:3px; }
.mh-policy { display:grid; grid-template-columns:240px minmax(0,760px); gap:clamp(48px,8vw,120px); padding-block:88px 128px; justify-content:start; }
.mh-policy__toc { align-self:start; position:sticky; top:calc(var(--mh-nav-h) + 40px); }
.mh-policy__toc p { color:var(--mh-accent); font:400 12px/1.5 var(--mh-mono); letter-spacing:.07em; margin-block-end:16px; }
.mh-policy__toc ol { list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.mh-policy__toc a { display:block; padding-block:4px; font-size:16px; line-height:1.4; color:var(--mh-muted); }
.mh-policy__toc a:hover,.mh-policy__toc a[aria-current="location"] { color:var(--mh-text); }
.mh-policy__title { font:600 clamp(40px,4.5vw,64px)/1.12 var(--mh-display); letter-spacing:-.045em; max-width:700px; }
.mh-policy__updated { color:var(--mh-muted); margin-block-start:14px !important; font-size:15px; }
.mh-policy__section { padding-block:32px; border-top:1px solid var(--mh-line-2); scroll-margin-block-start:calc(var(--mh-nav-h) + 24px); }
.mh-policy__section:first-of-type { margin-block-start:42px; }
.mh-policy__section h2 { display:flex; align-items:baseline; gap:16px; font:500 27px/1.3 var(--mh-display); letter-spacing:-.025em; margin-block-end:16px; }
.mh-policy__section h2 span { color:var(--mh-accent); font:400 12px/1 var(--mh-mono); letter-spacing:0; }
.mh-policy__section p { font-size:18px; line-height:1.75; color:var(--mh-text-2); }
.mh-policy-table { width:100%; margin-block-start:18px; border-collapse:collapse; color:var(--mh-text-2); font-size:15px; text-align:start; }
.mh-policy-table th { color:var(--mh-muted); font:400 12px/1.5 var(--mh-mono); background:var(--mh-panel-2); }
.mh-policy-table th,.mh-policy-table td { text-align:start; padding:14px 12px; border-bottom:1px solid var(--mh-line-2); }
.mh-policy-table-wrap { overflow-x:auto; }
.mh-cookie { width:min(680px,calc(100vw - 40px)); max-height:calc(100dvh - 48px); overflow:auto; padding:36px; margin:auto; color:var(--mh-text); border:1px solid var(--mh-line-3); border-radius:18px; background:var(--mh-panel); font:400 18px/1.5 var(--mh-text-f); }
.mh-cookie::backdrop { background:rgba(5,8,12,.72); }
.mh-cookie__head { display:flex; justify-content:space-between; align-items:start; gap:20px; margin-block-end:18px; }
.mh-cookie h2 { margin:0; font:600 36px/1.2 var(--mh-display); letter-spacing:-.04em; }
.mh-cookie p { margin:0; color:var(--mh-text-2); }
.mh-cookie__close { display:grid; place-items:center; flex:none; width:44px; height:44px; margin:-6px -8px 0 0; padding:0; border:1px solid var(--mh-line-2); border-radius:50%; background:transparent; color:var(--mh-text); cursor:pointer; }
.mh-cookie__close svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; }
.mh-cookie__row { display:flex; justify-content:space-between; gap:25px; padding-block:24px; border-top:1px solid var(--mh-line-2); margin-block-start:24px; }
.mh-cookie__row + .mh-cookie__row { margin-block-start:0; }
.mh-cookie h3 { margin:0 0 8px; color:var(--mh-text); font-size:21px; font-weight:700; }
.mh-cookie__always { flex:none; align-self:start; font:600 13px/1.4 var(--mh-text-f); color:var(--mh-text-2); border:1px solid var(--mh-line-3); padding:6px 10px; border-radius:999px; }
.mh-switch { position:relative; display:block; flex:none; width:52px; height:44px; cursor:pointer; }
.mh-switch input { opacity:0; width:1px; height:1px; position:absolute; }
.mh-switch__track { position:absolute; top:7px; left:0; width:52px; height:30px; border:1px solid var(--mh-line-btn); border-radius:18px; background:var(--mh-line-2); }
.mh-switch__track::after { content:''; position:absolute; top:4px; left:4px; width:20px; height:20px; background:var(--mh-muted); border-radius:50%; }
.mh-switch input:checked + .mh-switch__track { border-color:var(--mh-accent); background:var(--mh-accent); }
.mh-switch input:checked + .mh-switch__track::after { transform:translateX(22px); background:var(--mh-void); }
.mh-switch input:focus-visible + .mh-switch__track { outline:2px solid var(--mh-accent); outline-offset:4px; }
.mh-cookie__actions { display:flex; flex-wrap:wrap; gap:12px; margin-block-start:18px; }
.mh-cookie__actions .mh-pill { border:1px solid var(--mh-line-btn); }
.mh-cookie__actions .mh-pill--white { border-color:var(--mh-action-bg); }
.mh-cookie-status { position:fixed; bottom:24px; left:50%; z-index:100; transform:translateX(-50%); max-width:calc(100vw - 40px); padding:13px 20px; background:var(--mh-panel); border:1px solid var(--mh-line-3); border-radius:8px; color:var(--mh-text); font:600 15px/1.4 var(--mh-text-f); }
.mh-cookie-status:empty { display:none; }
@media(min-width:1200px) { .mh-contact__intro { position:sticky; top:calc(var(--mh-nav-h) + 46px); } }
.mh-contact.has-draft .mh-contact__intro { position:static; }
@media(max-width:959px) {
  .mh-support-nav { gap:18px; font-size:13px; }
  .mh-contact { gap:36px; padding-block:54px 80px; }
  .mh-contact__intro h1 { font-size:clamp(52px,7vw,76px); }
  .mh-contact__lead { font-size:20px; }
  .mh-inquiry { padding:25px; }
  .mh-form-grid { grid-template-columns:1fr; gap:20px; }
  .mh-policy { grid-template-columns:190px minmax(0,1fr); gap:36px; padding-block:54px 88px; }
}
@media(max-width:700px) {
  .mh-support-nav { display:none; }
  .mh-support .mh-nav__actions .mh-nav__cta { display:none; }
  .mh-contact { display:block; padding-block:42px 64px; }
  .mh-contact__intro h1 { font-size:clamp(52px,13vw,72px); line-height:1.05; }
  .mh-contact__intro h1 span:first-child { display:inline; }
  .mh-contact__intro h1 span:nth-child(2) { display:inline; }
  .mh-contact__intro h1 span:nth-child(2)::before { content:' '; }
  .mh-contact__lead { margin-block-start:24px !important; font-size:20px; }
  .mh-contact__proof { margin-block-start:24px !important; margin-block-end:34px !important; }
  .mh-inquiry { padding:22px 18px; border-radius:12px; }
  .mh-form-grid { grid-template-columns:1fr; }
  .mh-needs legend small { display:block; margin-block-start:3px; }
  .mh-chip span { padding:11px 13px; }
  .mh-draft { margin-block-start:24px; padding:20px; }
  .mh-policy { display:block; padding-block:42px 70px; }
  .mh-policy__toc { position:static; margin-block-end:38px; padding-block-end:24px; border-bottom:1px solid var(--mh-line-2); }
  .mh-policy__toc ol { grid-template-columns:1fr 1fr; gap:7px 18px; }
  .mh-policy__toc a { font-size:14px; }
  .mh-policy__title { font-size:40px; }
  .mh-policy__section h2 { font-size:24px; gap:12px; }
  .mh-policy__section p { font-size:17px; line-height:1.7; }
  .mh-policy-table { font-size:13px; min-width:430px; }
  .mh-cookie { width:calc(100vw - 24px); padding:24px 20px; border-radius:14px; max-height:calc(100dvh - 24px); }
  .mh-cookie h2 { font-size:30px; }
  .mh-cookie__head { gap:8px; }
  .mh-cookie p { font-size:17px; }
  .mh-cookie__row { gap:16px; }
  .mh-cookie__actions { display:grid; grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:no-preference) {
  .mh-switch__track::after { transition:transform 160ms var(--mh-ease); }
}

.mh-support .mh-foot__legal > p { display:block; }

@media(max-width:1099px) { .mh-support-nav { display:none; } }

/* Every supporting UI state shares the site's quiet ease-in/out contract. */
.mh-support-nav a,.mh-policy__toc a,.mh-foot [data-cookie-settings] {
  transition:color var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-form-field input,.mh-form-field select,.mh-form-field textarea,.mh-draft textarea {
  transition:border-color var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),background-color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-draft textarea:focus-visible { border-color:var(--mh-accent); }
.mh-chip span {
  transition:background-color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),border-color var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-chip span::before {
  content:'✓' / ''; display:inline-block; width:0; overflow:hidden; vertical-align:bottom;
  color:var(--mh-accent); opacity:0; margin-inline-end:0; transform:scale(.85);
  transition:width var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),margin-inline-end var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),opacity var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),transform var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-chip input:checked + span::before { content:'✓' / ''; width:13px; opacity:1; margin-inline-end:7px; transform:scale(1); }
.mh-cookie__close,.mh-cookie__actions .mh-pill {
  transition:background-color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),border-color var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-cookie__close:hover { background:var(--mh-panel-2); border-color:var(--mh-muted); }
.mh-switch__track {
  transition:background-color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),border-color var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-switch__track::after {
  transition:transform var(--mh-motion-fast,160ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)),background-color var(--mh-motion-ui,240ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1));
}
.mh-cookie[data-motion-state="opening"]::backdrop { animation:mh-cookie-backdrop-in var(--mh-motion-panel,320ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)) both; }
.mh-cookie[data-motion-state="closing"]::backdrop { animation:mh-cookie-backdrop-out var(--mh-motion-panel,320ms) var(--mh-motion-ease,cubic-bezier(.42,0,.58,1)) both; }
@keyframes mh-cookie-backdrop-in { from { opacity:0; } to { opacity:1; } }
@keyframes mh-cookie-backdrop-out { from { opacity:var(--mh-cookie-backdrop-start,1); } to { opacity:0; } }
@media(prefers-reduced-motion:reduce) {
  .mh-support-nav a,.mh-policy__toc a,.mh-foot [data-cookie-settings],.mh-form-field input,.mh-form-field select,.mh-form-field textarea,.mh-draft textarea,.mh-chip span,.mh-chip span::before,.mh-cookie__close,.mh-cookie__actions .mh-pill,.mh-switch__track,.mh-switch__track::after { transition:none!important; }
  .mh-cookie::backdrop { animation:none!important; }
}
