/* A compact contact form, using the existing Manu contact submission handler. */
.mnu-contact-launcher {
  position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));
  z-index:180;display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:14px 20px;
  border:1px solid #0f433d;border-radius:999px;background:#0f433d;color:#fff;
  font:700 14px/1.3 system-ui,sans-serif;text-decoration:none;box-shadow:0 7px 26px #0f433d25;
  transition:padding-inline .2s ease,gap .2s ease;
}
.mnu-contact-launcher svg {flex:none;}
.mnu-contact-launcher>span {max-width:180px;overflow:hidden;white-space:nowrap;opacity:1;transition:max-width .2s ease,opacity .15s ease;}
.mnu-contact-launcher.is-compact {gap:0;padding-inline:15px;}
.mnu-contact-launcher.is-compact>span {max-width:0;opacity:0;}
.mnu-contact-launcher:hover {background:#176052;color:#fff;opacity:1;}
.mnu-contact-launcher:focus-visible {outline:3px solid #a4513b;outline-offset:4px;}
body.mnu-contact-open {overflow:hidden;}
body.mnu-contact-open .mnu-contact-launcher,
body.mnu-viewer-open-v283 .mnu-contact-launcher {visibility:hidden;}
#mnu-contact-dialog {
  position:fixed;inset:auto max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) auto;
  width:460px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);margin:0;padding:0;
  border:1px solid #dbe5df;border-radius:20px;background:#fff;color:#173438;
  box-shadow:0 18px 70px #0f433d30;overflow:hidden;font:400 14px/1.5 system-ui,sans-serif;
}
#mnu-contact-dialog:not([open]) {display:none;}
#mnu-contact-dialog[open] {display:flex;flex-direction:column;}
#mnu-contact-dialog::backdrop {background:#17343838;}
#mnu-contact-dialog :focus-visible {outline:3px solid #087f80;outline-offset:3px;}
#mnu-contact-dialog .mnu-contact-header {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e3e9e5;flex:none;}
#mnu-contact-dialog h2 {margin:0;font:500 28px/1.15 Georgia,serif;color:#0f433d;letter-spacing:-.025em;}
#mnu-contact-dialog h2:focus {outline:none;}
#mnu-contact-dialog .mnu-contact-close {display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #dbe5df;border-radius:12px;background:#fff;color:#0f433d;cursor:pointer;}
#mnu-contact-dialog .mnu-contact-body {min-height:0;overflow:auto;overscroll-behavior:contain;padding:18px 22px 22px;}
#mnu-contact-dialog p {margin:0 0 16px;font-size:14px;line-height:1.6;color:#405a64;}
#mnu-contact-dialog form {display:grid;gap:16px;margin:0;}
#mnu-contact-dialog label {display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650;color:#173438;}
#mnu-contact-dialog input:not([type=checkbox]),
#mnu-contact-dialog textarea {width:100%;min-width:0;box-sizing:border-box;border:1px solid #b6c9c1;border-radius:10px;background:#fff;color:#173438;font:400 16px/1.4 system-ui,sans-serif;padding:11px 12px;min-height:48px;}
#mnu-contact-dialog textarea {resize:vertical;min-height:106px;max-height:240px;}
#mnu-contact-dialog textarea::placeholder {color:#617474;}
#mnu-contact-dialog .mnu-contact-coordinates {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
#mnu-contact-dialog .mnu-contact-consent {flex-direction:row;align-items:flex-start;gap:10px;font-size:12px;line-height:1.55;font-weight:400;}
#mnu-contact-dialog .mnu-contact-consent span {font:inherit;color:inherit;}
#mnu-contact-dialog input[type=checkbox] {width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:#0f433d;}
#mnu-contact-dialog a {color:#087f80;text-decoration:underline;text-underline-offset:3px;}
#mnu-contact-dialog .mnu-contact-send {min-height:48px;padding:12px 18px;border:0;border-radius:10px;background:#0f433d;color:#fff;font:700 14px/1.4 system-ui,sans-serif;cursor:pointer;}
#mnu-contact-dialog .mnu-contact-send:disabled {opacity:.7;cursor:wait;}
#mnu-contact-dialog .mnu-contact-hint {font-size:12px;margin:0;}
#mnu-contact-dialog .mnu-contact-alternative {margin:20px 0 0;text-align:center;font-size:13px;}
#mnu-contact-dialog #contactMsg:empty {display:none;}
#mnu-contact-dialog #contactMsg {margin:16px 0 0;padding:12px;border-radius:10px;background:#eff7f3;color:#174e42;overflow-wrap:anywhere;}
#mnu-contact-dialog #contactMsg.error {color:#87412f;background:#fcf2ed;}
#mnu-contact-dialog .mnu-contact-trap {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
@media(max-width:980px) {
  body.sticky-cta-visible .mnu-contact-launcher {bottom:calc(88px + env(safe-area-inset-bottom));}
}
@media(max-width:600px) {
  .mnu-contact-launcher {right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));min-height:50px;padding:12px 17px;font-size:13px;}
  .mnu-contact-launcher.is-compact {padding-inline:13px;}
  #mnu-contact-dialog {inset:auto 8px max(8px,env(safe-area-inset-bottom)) auto;width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:16px;}
  #mnu-contact-dialog {transform:translate3d(0,var(--mnu-contact-offset,0px),0);transition:transform .18s ease-out;}
  #mnu-contact-dialog.is-dragging {transition:none;}
  #mnu-contact-dialog.is-dismissing {pointer-events:none;}
  #mnu-contact-dialog .mnu-contact-header {position:relative;padding:26px 16px 16px;touch-action:none;user-select:none;cursor:grab;}
  #mnu-contact-dialog .mnu-contact-header::before {content:"";position:absolute;top:10px;left:50%;width:38px;height:4px;transform:translateX(-50%);border-radius:99px;background:#b4c8bf;pointer-events:none;}
  #mnu-contact-dialog.is-dragging .mnu-contact-header {cursor:grabbing;}
  #mnu-contact-dialog .mnu-contact-close {touch-action:manipulation;cursor:pointer;}
  #mnu-contact-dialog h2 {font-size:26px;}
  #mnu-contact-dialog .mnu-contact-body {padding:16px;}
}
@media(max-width:400px) {
  #mnu-contact-dialog .mnu-contact-coordinates {grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce) {
  .mnu-contact-launcher,.mnu-contact-launcher>span,#mnu-contact-dialog {transition:none;}
}
