/* KMIP navigation CSS v3.3.3 — 5 October 2026 accessibility corrections.
 * Based on Asmaul's supplied stylesheet; current ice blue and layout retained.
 * JavaScript unchanged; PHP labels the X as Back to main menu. Replace the full CSS file. */
 .kmn2027, .kmn2027-dialog {
    --kmn-ink: #1f241f;
    --kmn-muted: #62665e;
    --kmn-paper: #fff;
    --kmn-soft: #f2f0ed;
    --kmn-line: #d8d6d2;
    --kmn-accent-v1: #c0ff11;
    /*--kmn-accent: #B7DBDD;
    --kmn-accent:#FF4E4D; 
    --kmn-accent: #C0FF11;*/
    --kmn-accent: #B7DBDD;
    
    --kmn-focus: #155ca4;
    --kmn-font: var(--wp--preset--font-family--overpass, var(--wp--preset--font-family--body, Arial, sans-serif));
    --kmn-serif: Georgia, 'Times New Roman', serif;
    font: 400 medium/1.4 Inter, sans-serif;
    color: var(--kmn-ink);
    text-align: start;
  }
  /* medium follows the browser's default text size. Browser zoom is not restricted. */
  .kmn2027 { position: relative; width: 100%; min-width: 0; }
  .kmn2027, .kmn2027 *, .kmn2027-dialog, .kmn2027-dialog * { box-sizing: border-box; }
  .kmn2027 [hidden], .kmn2027-dialog [hidden] { display: none !important; }
  .kmn2027 :is(button, a, summary), .kmn2027-dialog :is(button, a, summary) { touch-action: manipulation; }
  .kmn2027 :is(button, a), .kmn2027-dialog :is(button, a) {
    font: inherit; color: inherit; letter-spacing: normal; text-transform: none;
    transition: color 140ms ease, background-color 140ms ease, border-color 140ms ease;
  }
  .kmn2027 button, .kmn2027-dialog button, .kmn2027__switches button {
    appearance: none; border: 0; border-radius: 2px; margin: 0;
    cursor: pointer; background: transparent; min-height: 44px;
  }
  .kmn2027 a, .kmn2027-dialog a { text-decoration: none; }
  .kmn2027 :is(a, button, summary):focus, .kmn2027-dialog :is(a, button):focus { outline: 2px solid var(--kmn-focus); outline-offset: 3px; }
  .kmn2027 :is(a, button, summary):focus:not(:focus-visible), .kmn2027-dialog :is(a, button):focus:not(:focus-visible) { outline: none; }
  .kmn2027 :is(a, button, summary):focus-visible, .kmn2027-dialog :is(a, button):focus-visible { outline: 2px solid var(--kmn-focus); outline-offset: 3px; }
  .kmn2027-header-host { width: 100%; max-width: none; margin: 0; padding: 0; }
  /* The current KMIP theme already owns the fixed/scrolling header background. */
  .kmn2027 details{
    border: 0;
  }
  .kmn2027 details summary:after {
    display: none;
  }
  header.wp-block-template-part .kmn2027 {
    --kmn-header-bg: transparent;
    --kmn-header-ink: #fff;
    --kmn-header-control-bg: rgb(0 0 0 / 24%);
    --kmn-header-control-border: rgb(255 255 255 / 16%);
    --kmn-header-focus: var(--kmn-accent);
  }
  .kmn2027__bar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 21px 21px;
    font-size: .9375em;
    background: var(--kmn-header-bg, #fff);
    color: var(--kmn-header-ink, #1f241f);
  }
  .kmn2027__left { justify-self: start; min-width: 0; }
  .kmn2027__right { justify-self: end; display: flex; align-items: center; gap: 6px; min-width: 0; }
  .kmn2027__inquire-wrap { margin: 0; padding: 0; }
  .kmn2027__brand-slot { justify-self: center; min-width: 0; }
  .kmn2027__bar :is(a, button), .kmn2027__switches button {display: inline-flex;align-items: center;justify-content: center;min-height: 43px;min-width: 5.6em;}
  .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work), .kmn2027__switches button {
    padding: .6em .95em; border: 1px solid var(--kmn-header-control-border, transparent);
    border-radius: 2px; background: var(--kmn-header-control-bg, var(--kmn-soft));
    color: inherit; font-size: 1em; line-height: 1.2; white-space: nowrap;
  }
  .kmn2027__bar :is(a, button):focus-visible { outline-color: var(--kmn-header-focus, var(--kmn-focus)); }
  .kmn2027__brand { max-width: 7em; text-align: center; font-size: 1.1em !important; line-height: 1.15 !important; }
  .kmn2027__brand img { display: block; width: auto; height: auto; max-width: 100%; max-height: 44px; }
  .kmn2027__desktop, .kmn2027__work-wrap { display: none !important; }
  .kmn2027[data-kmn-layout="wide"] .kmn2027__desktop {display: flex !important;gap: 6px;}
  .kmn2027[data-kmn-layout="wide"] .kmn2027__desktop button {min-width: 8.6em;}
  .kmn2027[data-kmn-layout="wide"] .kmn2027__work-wrap { display: block !important; }
  .kmn2027[data-kmn-layout="wide"] .kmn2027__compact {display: none !important;background: transparent;}
  .kmn2027[data-kmn-tight] .kmn2027__brand-slot { grid-column: 1 / -1; grid-row: 1; }
  .kmn2027[data-kmn-tight] .kmn2027__left { grid-column: 1; grid-row: 2; }
  .kmn2027[data-kmn-tight] .kmn2027__right { grid-column: 3; grid-row: 2; }
  /* Before JS (or if enhancement fails), a native disclosure exposes real links. */
  .kmn2027__fallback { padding: 0; background: var(--kmn-paper); color: var(--kmn-ink); }
  .kmn2027__fallback > summary { position: absolute; top: 12px; left: 16px; cursor: pointer; padding: .6em .8em; min-height: 44px; color: var(--kmn-header-ink, var(--kmn-ink)); }
  .kmn2027__fallback .kmn2027__sheet {
    max-width: 36em;
    max-height: calc(100vh - 100px - env(safe-area-inset-bottom, 0px));
    max-height: calc(100dvh - 100px - env(safe-area-inset-bottom, 0px));
    overflow-y: auto; overscroll-behavior-y: contain;
  }
  .kmn2027__body { padding: 0 24px 16px; }
  .kmn2027__body :is(ul, li) { margin: 0; padding: 0; list-style: none; }
  .kmn2027__section-title { font: 400 1.3em/1.3 var(--kmn-serif); margin: 1.15em 0 .65em; }
  .kmn2027__group { margin: 0; padding: 16px 0 18px; border-top: 1px dashed var(--kmn-line); }
  .kmn2027__group h4 { margin: 0 0 8px; color: var(--kmn-muted); font: italic 400 1.0625em/1.3 var(--kmn-serif); }
  .kmn2027__body li > a {
    display: flex;
    align-items: center;
    min-height: 32px;
    padding: 4px 0;
    font-size: 1em;
    line-height: 1.375;
    overflow-wrap: anywhere;
    transition: all .3s cubic-bezier(.5,1,.89,1);
  }
  .kmn2027__body a[aria-current="page"] { text-decoration: underline; text-underline-offset: .25em; text-decoration-thickness: 1px; }
  .kmn2027__body a:focus-visible { text-decoration: underline; text-underline-offset: .25em; }
  .kmn2027__footer { margin: 0; padding: 8px; background: var(--kmn-paper); }
  .kmn2027__footer a {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 60px;
    margin: 0;
    padding: 14px 40px;
    font-size: .9375em;
    line-height: 1.3;
    text-align: center;
    background: var(--kmn-soft);
    color: var(--kmn-ink);
    border: 0;
    border-radius: 2px;
    min-height: 5.5em;
  }
  .kmn2027__footer a > span { position: absolute; right: 20px; opacity: 0; transition: opacity 140ms ease; }
  .kmn2027__footer a:focus-visible > span { opacity: 1; }
  /* Native top layer keeps the dialog outside the theme's transformed header. */
  .kmn2027-dialog {
    --kmn-admin: 0px;
    --kmn-edge: 8px;
    position: fixed;
    inset: calc(max(var(--kmn-edge), env(safe-area-inset-top)) + var(--kmn-admin)) auto auto max(var(--kmn-edge), env(safe-area-inset-left));
    width: min(32em, calc(100% - max(var(--kmn-edge), env(safe-area-inset-left)) - max(var(--kmn-edge), env(safe-area-inset-right))));
    height: calc(100vh - 2 * var(--kmn-edge) - var(--kmn-admin));
    height: calc(100dvh - max(var(--kmn-edge), env(safe-area-inset-top)) - max(var(--kmn-edge), env(safe-area-inset-bottom)) - var(--kmn-admin));
    max-width: none;
    max-height: none;
    padding: 0;
    margin: 0;
    border: 1px solid #dedbd7;
    border-radius: 4px;
    background: var(--kmn-paper);
    box-shadow: 0 12px 48px #0003;
    overflow: hidden;
    display: block;
    visibility: hidden;
    clip-path: inset(0% 100% 0% 0% round .25em);
    transition: clip-path 0.3s cubic-bezier(0.85, -0.2, 1, 1);
  }
  .kmn2027-dialog[data-kmn-layout="wide"] {width: clamp(35em, 37vw, 36em);}
  .kmn2027-dialog::backdrop { background: rgb(12 18 27 / 45%); }
  @supports (backdrop-filter: blur(4px)) { .kmn2027-dialog::backdrop {backdrop-filter: blur(4px);} }
  .kmn2027-dialog[open] {display: block;visibility: visible;clip-path: inset(0% round 0.25em);}
  .kmn2027-dialog .kmn2027__sheet {height: 100%;display: flex;flex-direction: column;min-height: 0;padding: 5em 0 0;}
  .kmn2027-dialog .kmn2027__chrome {flex: 0 0 auto;/* padding: 8px 10px 0; *//* background: var(--kmn-paper); */font-size: .9375em;/* padding: 1.25em; */padding: 1.05em 0.75em;}
  .kmn2027__switches {display: none;gap: 6px;min-width: 0;}
  .kmn2027__switches button {
    /* flex: 1 1 auto; */
    /* min-width: 0; */
    /* min-height: 40px; */
    /* padding: .6em .7em; */
    /* font-size: .9375em; */
    /* line-height: 1.2; */
    /* background: #eeedea; */
    /* color: var(--kmn-ink); */
    /* border: 0; */
    /* box-shadow: none; */
    /* text-decoration: none; */
  }
  .kmn2027__switches button[aria-expanded="true"] { background: var(--kmn-accent); color: var(--kmn-ink); font-weight: 500; border: 0; box-shadow: none; text-decoration: none; }
  .kmn2027__toolbar {display: grid;grid-template-columns: 1fr auto 44px;align-items: center;gap: 8px;margin: 0;padding: 6px 16px 12px;}
  .kmn2027__toolbar h2 { font: 400 1em/1.3 var(--kmn-font); margin: 0; text-align: center; }
  .kmn2027__toolbar h2:focus { outline: none; } /* Static dialog-entry announcement; interactive controls keep focus outlines. */
  .kmn2027__toolbar :is(a, button) { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 0; }
  .kmn2027-dialog .kmn2027__close {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; min-width: 44px; height: 44px; padding: 0;
    color: var(--kmn-muted); background: transparent; border: 0;
  }
  .kmn2027__close span { font: 400 24px/1 Arial, sans-serif; }
  .kmn2027__close span{
    font-size: 0;
    width: 1.25rem;
    height: 1.25rem;
  }
  
  .kmn2027__toolbar .kmn2027__dismiss { grid-column: 3; grid-row: 1; justify-self: end; }
  .kmn2027__toolbar-start {grid-column: 2;grid-row: 1;justify-self: start;position: absolute;left: 0;right: 0;width: 100%;padding: 0 16px;}
  .kmn2027-dialog[data-kmn-current="root"] .kmn2027__toolbar .kmn2027__toolbar-start {
      grid-column: 1;
      position: relative;
      padding: 0;
  }
  
  .kmn2027__toolbar [data-kmn-back]:after {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
  }
  .kmn2027__toolbar [data-kmn-back] {gap: .3em;position: static;width: 100%;opacity: 0;}
  .kmn2027__toolbar h2 {grid-column: 1;grid-row: 1;pointer-events: none;}
  .kmn2027__toolbar h2:after, .kmn2027__close span:after {
      content: '';
      transform: rotate(45deg);
      position: absolute;
      right: 48px;
  }
  .kmn2027__close span:after{
    right:0;
    position: relative;
  }
  .kmn2027-dialog .kmn2027__body {flex: 1 1 auto;min-height: 0;overflow-y: auto;overscroll-behavior-y: contain;scrollbar-gutter: stable;scroll-padding-block: 12px;display: flex;flex-direction: column;gap: 2em;}
  .kmn2027-dialog .kmn2027__footer { flex: 0 0 auto; }
  .kmn2027-dialog:not([data-kmn-current="more"]) .kmn2027__section-title,
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar h2,
  .kmn2027-dialog[data-kmn-current="root"] .kmn2027__toolbar h2 {
    position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
  }
  .kmn2027__roots { padding-top: 8px !important; border-top: 1px dashed var(--kmn-line); }
  .kmn2027__body .kmn2027__roots :is(button, a), .kmn2027__toolbar a[data-kmn-home], .kmn2027__toolbar h2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 52px;
    padding: 0.625em 0;
    text-align: start;
    font-size: 1.5em;
    line-height: 1.25;
    border: 0;
    border-radius: 0;
  }
  .kmn2027__roots button > span, .kmn2027__toolbar h2:after, .kmn2027__close span:after, .kmn2027__back-icon {font-weight: 300;color: var(--kmn-muted);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 162 162' style='enable-background:new 0 0 162 162' xml:space='preserve'%3E%3Cpath class='hcs-cross-svg' d='M108 88.7c-10.8 0-19.7 8.8-19.7 19.7v47.4c0 1.9-1.5 3.4-3.4 3.4h-8.6c-1.9 0-3.4-1.5-3.4-3.4v-47.4c0-10.8-8.8-19.7-19.7-19.7H6.4c-1.9 0-3.4-1.5-3.4-3.4v-8c0-1.9 1.5-3.4 3.4-3.4h46.9c10.8 0 19.7-8.8 19.6-19.7V6.4c0-1.9 1.5-3.4 3.4-3.4H85c1.9 0 3.4 1.5 3.4 3.4v47.8c0 10.8 8.8 19.7 19.7 19.7h46.6c1.9 0 3.4 1.5 3.4 3.4v8c0 1.9-1.5 3.4-3.4 3.4H108z' style='fill-rule:evenodd;clip-rule:evenodd;' fill='var(--color-body)' data-original='M108 88.7c-10.8 0-19.7 8.8-19.7 19.7v47.4c0 1.9-1.5 3.4-3.4 3.4h-8.6c-1.9 0-3.4-1.5-3.4-3.4v-47.4c0-10.8-8.8-19.7-19.7-19.7H6.4c-1.9 0-3.4-1.5-3.4-3.4v-8c0-1.9 1.5-3.4 3.4-3.4h46.9c10.8 0 19.7-8.8 19.6-19.7V6.4c0-1.9 1.5-3.4 3.4-3.4H85c1.9 0 3.4 1.5 3.4 3.4v47.8c0 10.8 8.8 19.7 19.7 19.7h46.6c1.9 0 3.4 1.5 3.4 3.4v8c0 1.9-1.5 3.4-3.4 3.4H108z'%3E%3C/path%3E%3C/svg%3E");background-repeat: no-repeat;background-size: contain;font-size: 0;width: 1.25rem;height: 1.25rem;display: block;}
  .kmn2027__close span{
    display: none;
  }
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__switches {display: flex;}
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__chrome { display: grid; grid-template-columns: minmax(0, 1fr) 44px; column-gap: 4px; align-items: start; }
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__chrome > .kmn2027__dismiss {grid-column: 2;grid-row: 1;position: absolute;right: 2em;}
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar { grid-column: 1 / -1; padding-top: 12px; }
  .kmn2027-dialog[data-kmn-tight] .kmn2027__toolbar { display: flex; flex-wrap: wrap; row-gap: 0; column-gap: 8px; }
  .kmn2027-dialog[data-kmn-tight] .kmn2027__toolbar h2 { order: -1; flex: 0 0 100%; margin-bottom: 8px; }
  .kmn2027-dialog[data-kmn-tight] .kmn2027__toolbar .kmn2027__dismiss { margin-left: auto; }
  .kmn2027__languages, .kmn2027__social {padding-top: 16px;border-top: 0px solid var(--kmn-line);margin-top: auto;}
  .kmn2027__languages ul, .kmn2027__social ul { display: flex; flex-wrap: wrap; gap: 4px 16px; }
  .kmn2027__languages li > :is(a, span), .kmn2027__social li > a { display: inline-flex; align-items: center; min-height: 44px; padding: 6px 4px; }
  .kmn2027__languages [aria-current] { font-weight: 600; }
  @media (hover: hover) and (pointer: fine) {
    .kmn2027__body li > a { min-height: 28px; padding-block: 3px; }
    .kmn2027__body .kmn2027__roots :is(button, a) { min-height: 52px; padding-block: 8px; }
    .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work):hover, .kmn2027__switches button:hover, .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work)[aria-expanded="true"] {background: var(--kmn-accent);color: var(--kmn-ink) !important;border-color: transparent;}
    .kmn2027__body a:hover { color: var(--kmn-ink); }
    .kmn2027__body:has(a:hover) a:not(:hover):not(:focus-visible) { color: var(--kmn-muted); }
    .kmn2027__body:has(a:hover) a:hover, .kmn2027__body a:focus-visible { color: var(--kmn-ink); }
    .kmn2027__roots button:hover { color: var(--kmn-ink); background: var(--kmn-soft); }
    .kmn2027__footer a:hover { background: var(--kmn-accent); }
    .kmn2027__footer a:hover > span { opacity: 1; }
    .kmn2027-dialog .kmn2027__close:hover { color: var(--kmn-ink); }
  }
  /* Coarse/hybrid pointing devices retain comfortably separated 44px destinations. */
  @media (any-pointer: coarse) {
    .kmn2027__bar :is(a, button), .kmn2027__switches button, .kmn2027__body li > a { min-height: 44px; }
    .kmn2027__body li > a { padding-block: 8px; }
  }
  
  .kmn2027-backdrop{
    position: fixed;
   inset: 0;
   background: none 0% 0% / auto repeat scroll padding-box border-box rgba(12, 18, 27, 0.45);
   backdrop-filter: blur(4px);
   z-index: 1000;
  } 
  .has-dialog-open .kmn2027__left ~ * {
   filter: blur(4px);
  }
  .kmn2027__bar {border: 1px solid var(--kmn-header-control-border, transparent);margin: 1em;padding: 0.3125em;border-radius: 0.125em;}
   .kmn2027__bar :is(.kmn2027__inquire), .kmn2027__footer a {
        background: var(--kmn-accent);
        color: var(--kmn-ink) !important;
    }
    .kmn2027__bar :is(.kmn2027__inquire):hover, .kmn2027__footer a:hover {
        filter: brightness(1.15);
    }  
    .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work){
      border-width: 0;
    }
    .kmn2027__brand-slot{
      margin: -0.5em 0;
    }
    header.wp-block-template-part{
      z-index: 998;
    }
    .kmn2027-dialog .kmn2027__close {color: var(--kmn-ink);width: 8em;height: 3.5em;background: #0000000d;display: flex;align-items: center;gap: 0.5em;}
    
    .kmn2027__toolbar .kmn2027__dismiss {
        position: absolute;
        top: 0;
        left: 0;
        padding: 1em 0 0 1em;
    }
    
    .kmn2027-dialog .kmn2027__close:before {
        content: "Close ";
        vertical-align: middle;
        font-size: 0.75em;
    }
    
    .kmn2027-dialog .kmn2027__close:hover {
        background: var(--kmn-accent);
    }
  .kmn2027__bar :is(a, button)[data-kmn-open="root"] {
      background: transparent;
  }
  /* Keep the existing muted hover color; do not fade text or its focus ring. */
  @media (max-width: 35em) {
    .kmn2027__bar {padding-inline: 12px;gap: 6px;}
    .kmn2027-dialog {--kmn-edge: 0px;border-radius: 0;border: 0;}
    .kmn2027__body { padding-inline: 18px; }
    .kmn2027__toolbar { padding-inline: 10px; }
   
  }
  @media (min-width: 48.938em) { body.admin-bar .kmn2027-dialog { --kmn-admin: 32px; }   .kmn2027[data-kmn-layout="wide"] .kmn2027__desktop button, .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work), .kmn2027__switches button { min-width: 9.07305em;}
  
  .kmn2027, .kmn2027-dialog {
    font-size: clamp(14px, 1.11111vw, 17.3333px);
  }
  
  .kmn2027__bar :is(a, button), .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work), .kmn2027__switches button {
    min-height: 2.8571em;
    font-size: 0.875em;
    padding: 0.875em;
    border-width: 1px;
  }

  .kmn2027__brand-slot {
    margin: -0.5em 0;
  }
  .kmn2027__brand-slot a {
    padding: 0;
  }
  

  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__sheet{
    padding: 0;
  }
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar .kmn2027__dismiss {
      position: relative;
  }                            
  }

  @media (min-width: 1140px) {
    .kmn2027__brand img {
      max-height: 3.75em;
    }
  }
  @media (max-width: 48.9375em) and (min-width: 37.501em) { body.admin-bar .kmn2027-dialog { --kmn-admin: 46px; } }
  /* In short landscape windows the complete sheet scrolls; controls cannot consume all content space. */
  @media (max-height: 28em) {
    .kmn2027-dialog { overflow-y: auto; overscroll-behavior: contain; }
    .kmn2027-dialog .kmn2027__sheet { min-height: 100%; height: auto; }
    .kmn2027-dialog .kmn2027__body { flex: 1 0 auto; overflow: visible; }
  }
  @media (prefers-reduced-motion: reduce) {
    .kmn2027, .kmn2027 *, .kmn2027 *::before, .kmn2027 *::after,
    .kmn2027-dialog, .kmn2027-dialog *, .kmn2027-dialog *::before, .kmn2027-dialog *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  }
  @media (forced-colors: active) {
    .kmn2027 :is(a, button, summary):focus-visible, .kmn2027-dialog :is(a, button):focus-visible { outline-color: Highlight; }
    .kmn2027__switches button[aria-expanded="true"] { outline: 2px solid Highlight; outline-offset: -3px; }
    .kmn2027-dialog { border: 2px solid CanvasText; }
    .kmn2027__bar :is(button, .kmn2027__inquire, .kmn2027__work), .kmn2027__footer a { border: 1px solid ButtonText; }
  }
  @media print { .kmn2027, .kmn2027-dialog { display: none !important; } }
  
  /* Retained legacy footer/contact scopes from the supplied shared stylesheet.
     No old kmip-navigation header controller or shell styles are retained. */
  .kmip-footer-navigation, .kmip-contact-actions {
    --kmip-bg: #fff; --kmip-ink: #1f241f; --kmip-muted: #62665e;
    --kmip-line: #c9c8bf; --kmip-accent: #cae558; --kmip-on-accent: #1f241f;
    --kmip-focus: #155ca4; --kmip-radius: .375em; --kmip-space: .625em;
    font-family: inherit; line-height: 1.5; text-align: start;
  }
  .kmip-footer-navigation *, .kmip-footer-navigation *::before, .kmip-footer-navigation *::after,
  .kmip-contact-actions *, .kmip-contact-actions *::before, .kmip-contact-actions *::after { box-sizing: border-box; }
  .kmip-footer-navigation [hidden], .kmip-contact-actions [hidden] { display: none !important; }
  .kmip-footer-navigation :where(a, button), .kmip-contact-actions :where(a, button) {
    color: inherit; font: inherit; text-underline-offset: .2em;
    transition: color 140ms ease, background-color 140ms ease, border-color 140ms ease;
  }
  .kmip-footer-navigation button, .kmip-contact-actions button {
    border: 0; background: transparent; text-align: inherit; cursor: pointer;
  }
  .kmip-footer-navigation :where(a, button):focus-visible, .kmip-contact-actions :where(a, button):focus-visible {
    outline: 3px solid var(--kmip-focus); outline-offset: 3px;
  }
  .kmip-footer-navigation {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(15em, 22em);
    gap: 1.5em 2em; padding: var(--kmip-space); background: var(--kmip-bg);
    color: var(--kmip-ink); border-top: 1px solid var(--kmip-line);
  }
  .kmip-footer-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12em), 1fr)); align-items: start; gap: 1.5em 2em; }
  .kmip-footer-navigation :is(h2, h3) { margin: 0 0 .5em; color: var(--kmip-muted); font: italic 400 1.125em/1.4 'Times New Roman', Times, serif; }
  .kmip-footer-navigation :is(ul, li) { margin: 0; padding: 0; list-style: none; }
  .kmip-footer-navigation li > :where(a, button), .kmip-footer-navigation .kmip-utilities :where(a, button), .kmip-contact-actions > :where(a, button) {
    display: flex; align-items: center; min-height: 44px; padding: .3125em 0; text-decoration: none; font-weight: 400;
  }
  .kmip-footer-navigation a[aria-current="page"] { font-weight: 600; text-decoration: underline; }
  .kmip-footer-navigation > .kmip-utilities { grid-column: 1 / -1; margin-top: 0; padding-top: 1em; }
  .kmip-footer-navigation .kmip-utilities :where(nav, ul) { display: flex; flex-wrap: wrap; gap: .25em 1em; }
  .kmip-footer-navigation .kmip-utilities p { margin-block: .75em; color: var(--kmip-muted); }
  .kmip-footer-navigation .kmip-languages li > span { display: flex; align-items: center; min-height: 44px; padding: .625em .25em; font-weight: 600; }
  .kmip-footer-navigation .kmip-contact-list li > a { flex-direction: column; align-items: start; justify-content: center; gap: .125em; padding-block: .875em; }
  .kmip-footer-navigation .kmip-contact-list li + li { border-top: 1px solid var(--kmip-line); }
  .kmip-footer-navigation .kmip-contact-detail { color: var(--kmip-muted); font-size: .9375em; overflow-wrap: anywhere; }
  .kmip-contact-actions { display: grid; gap: .5em; }
  .kmip-contact-actions > :where(a, button) { width: 100%; padding-inline: .75em; border: 1px solid var(--kmip-line); border-radius: var(--kmip-radius); }
  .kmip-contact-actions .kmip-primary-action { background: var(--kmip-accent); color: var(--kmip-on-accent); border-color: var(--kmip-accent); }
  @media (hover: hover) and (pointer: fine) {
    .kmip-footer-navigation a:hover, .kmip-contact-actions a:hover { text-decoration: underline; }
  }
  @media (max-width: 47.999em) { .kmip-footer-navigation { grid-template-columns: minmax(0, 1fr); } 
                             
  }
  @media (prefers-reduced-motion: reduce) {
    .kmip-footer-navigation *, .kmip-footer-navigation *::before, .kmip-footer-navigation *::after,
    .kmip-contact-actions *, .kmip-contact-actions *::before, .kmip-contact-actions *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
    
  }
  @media (forced-colors: active) {
    .kmip-contact-actions > :where(a, button) { border: 1px solid ButtonText; }
    .kmip-footer-navigation :where(a, button):focus-visible, .kmip-contact-actions :where(a, button):focus-visible { outline-color: Highlight; }
  }
  
  @media (min-width: 1024px){
    .kmn2027__bar {padding: 1.25em;}
    .kmn2027__bar{
      border: 0;
      margin: 0;
    }
    .kmn2027__bar :is(.kmn2027__inquire) {
        background: var(--kmn-header-control-bg, var(--kmn-soft));
        color: inherit !important;
    }
    
    header.wp-block-template-part {
        z-index: 1002 !important;
    }
  }
  /* Desktop dialog controls follow the controller, including enlarged browser text. */
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__footer a {
        background: var(--kmn-soft);
        color: var(--kmn-ink);
        min-height: 5.5em;
    }
    
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__footer a:hover {
        background: var(--kmn-accent);
        color: var(--kmn-ink) !important;
        filter: brightness(1);
    }
    
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar a[data-kmn-home] {
        font-size: inherit;
        min-height: inherit;
        display: block !important;
    }
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__close {
        background: transparent;
        color: var(--kmn-muted);
        width: auto;
        height: auto;
    }
    
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__close:before {
        content: '';
        display: none;
    }
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar-start {
        position: relative;
        padding: 0;
        grid-column: 1;
    }
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar [data-kmn-back]{
      display: none;
    }
    .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__close span{
      display: block;
    }

  /* Keep the existing X in the title row, inside the real focusable Back button.
     Close remains the separate button at the upper left on compact layouts. */
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar {
    display: grid; grid-template-columns: minmax(0, 1fr) auto;
  }
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar-start {
    position: relative; left: auto; right: auto; width: auto; padding: 0;
    grid-column: 2; grid-row: 1; justify-self: end;
  }
  .kmn2027-dialog[data-kmn-layout="compact"][data-kmn-current="root"] .kmn2027__toolbar-start {
    grid-column: 1; justify-self: start; width: 100%;
  }
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar [data-kmn-back] {
    position: relative; width: 44px; height: 44px; opacity: 1; min-height: 44px;
    padding: 0; justify-content: center; color: var(--kmn-ink);
  }
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar [data-kmn-back]::after,
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar h2::after {
    content: none;
  }
  .kmn2027-dialog[data-kmn-layout="compact"] .kmn2027__toolbar h2 {
    min-width: 0; overflow-wrap: anywhere;
  }
  .kmn2027-dialog[data-kmn-layout="wide"] .kmn2027__toolbar h2 {
    display: block; position: absolute; width: 1px; height: 1px; min-height: 0;
    margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%);
    white-space: nowrap; border: 0;
  }

  .kmn2027__back-icon {
    flex: 0 0 auto; transform: none; background-image: none;
    font: 400 26px/1 Arial, sans-serif; width: auto; height: auto;
  }
  @media (forced-colors: active) {
    .kmn2027__back-icon {
      background-image: none; transform: none; color: ButtonText;
      font: 400 26px/1 Arial, sans-serif; width: auto; height: auto;
    }
  }
