/* DDQX v3 Discovery Navigation v0.1.0 — staging header component only.
   Intentionally does not style any page, card, footer, or background. */
.ddqx-site-header nav.ddqx-ia-nav {
  position: relative;
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  font-family: Montserrat, Arial, sans-serif;
  line-height: 1.45;
  isolation: isolate;
}
.ddqx-ia-nav, .ddqx-ia-nav * { box-sizing: border-box; }
.ddqx-ia-nav .ddqx-ia-desktop { display:flex; justify-content:center; align-items:center; gap:2px; }
.ddqx-ia-nav .ddqx-ia-mobile { display:none; }
.ddqx-ia-nav .ddqx-ia-group { position:static; }
.ddqx-ia-nav summary { cursor:pointer; list-style:none; font-weight:650; }
.ddqx-ia-nav summary::-webkit-details-marker { display:none; }
.ddqx-ia-nav .ddqx-ia-group > summary {
  display:flex; align-items:center; justify-content:center; gap:7px;
  padding:12px 9px; min-height:44px;
  border-radius:8px;
  white-space:nowrap;
  font-size:clamp(12px, .82vw, 14px);
  color:var(--da-text, #104A56);
}
.ddqx-ia-nav .ddqx-ia-group > summary::after {
  content:''; width:6px; height:6px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  opacity:.75;
}
.ddqx-ia-nav :is(.ddqx-ia-group[open] > summary, .ddqx-ia-group > summary:hover) { background:rgba(69,135,149,.12); }
.ddqx-ia-nav .ddqx-ia-panel {
  position:absolute; top:calc(100% + 10px); left:50%;
  transform:translateX(-50%);
  width:min(960px, calc(100vw - 32px));
  z-index:220;
  max-height:min(74vh, 760px);
  overflow:auto;
  border:1px solid #BDD6DA; border-top:3px solid #E3C565;
  border-radius:16px;
  background:#F7FBFB;
  box-shadow:0 16px 42px rgba(8,37,43,.22);
  color:#104A56;
  overscroll-behavior:contain;
}
.ddqx-ia-nav .ddqx-ia-panel-inner { padding:22px 26px 24px; }
.ddqx-ia-nav .ddqx-ia-panel-heading {
  display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px;
  padding-bottom:13px; margin-bottom:18px;
  border-bottom:1px solid #D8E7E9;
  color:#104A56; font-size:1.12rem; font-weight:750;
}
.ddqx-ia-nav .ddqx-ia-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 28px; }
.ddqx-ia-nav .ddqx-ia-column { min-width:0; }
.ddqx-ia-nav .ddqx-ia-panel--compact .ddqx-ia-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ddqx-ia-nav .ddqx-ia-column h3 { color:#104A56; font-size:.88rem; font-weight:750; margin:0 0 8px; line-height:1.4; }
.ddqx-ia-nav .ddqx-ia-column-hub { margin:0 0 8px; font-size:.81rem; }
.ddqx-ia-nav .ddqx-ia-column ul, .ddqx-ia-nav .ddqx-ia-extra { list-style:none; padding:0; margin:0; }
.ddqx-ia-nav .ddqx-ia-column li { margin:0; }
.ddqx-ia-nav .ddqx-ia-link { display:inline-flex; align-items:center; min-height:34px; max-width:100%; overflow-wrap:anywhere; text-decoration:none; font-size:.88rem; font-weight:550; line-height:1.4; border-radius:6px; padding:4px 6px; margin-inline:-6px; }
.ddqx-ia-nav .ddqx-ia-link:hover, .ddqx-ia-nav .ddqx-ia-link[aria-current="page"] { background:#E5F1F3; text-decoration:underline; text-underline-offset:3px; }
.ddqx-ia-nav .ddqx-ia-main-hub { font-size:.81rem; font-weight:700; text-decoration:underline; }
.ddqx-ia-nav .ddqx-ia-hub-link { font-size:.82rem; text-decoration:underline; }
.ddqx-ia-nav .ddqx-ia-extra { display:flex; flex-wrap:wrap; border-top:1px solid #D8E7E9; margin-top:16px; padding-top:12px; gap:8px 20px; }
html.ddqx-appearance .ddqx-site-header nav.ddqx-ia-nav :is(.ddqx-ia-panel, .ddqx-ia-mobile-panel) :is(a, h3) { color:#104A56 !important; }
.ddqx-ia-nav :is(summary,a):focus-visible { outline:3px solid #B68A00; outline-offset:3px; }
@media (min-width:621px) and (max-width:950px) {
  .ddqx-ia-nav .ddqx-ia-group > summary { font-size:12px; padding-inline:8px; }
  .ddqx-ia-nav .ddqx-ia-panel { width:min(880px, calc(100vw - 24px)); }
}
@media (max-width:620px) {
  /* Native Appearance header grid keeps navigation in the top-right cell. */
  .ddqx-site-header nav.ddqx-ia-nav { position:static; width:auto; min-width:0; justify-self:end; }
  .ddqx-ia-nav .ddqx-ia-desktop { display:none; }
  .ddqx-ia-nav .ddqx-ia-mobile { display:block; }
  .ddqx-ia-nav .ddqx-ia-mobile > summary {
    display:flex; align-items:center; justify-content:center;
    min-height:44px; min-width:74px; padding:9px 12px;
    border:1px solid currentColor; border-radius:10px;
    font-size:13px; color:var(--da-text, #104A56);
  }
  .ddqx-ia-nav .ddqx-ia-mobile[open] > summary { background:rgba(69,135,149,.12); }
  .ddqx-ia-nav .ddqx-ia-mobile-panel {
    position:absolute; top:100%; left:12px; right:12px; z-index:230;
    max-height:min(75dvh, 740px); overflow-y:auto; overscroll-behavior:contain;
    border:1px solid #BDD6DA; border-top:3px solid #E3C565; border-radius:0 0 14px 14px;
    color:#104A56; background:#F7FBFB; box-shadow:0 20px 40px rgba(8,37,43,.22);
    padding:8px 14px 14px;
  }
  .ddqx-ia-nav .ddqx-ia-accordion { margin:0; border-bottom:1px solid #D4E4E7; }
  .ddqx-ia-nav .ddqx-ia-accordion > summary { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:10px 8px; font-size:14px; color:#104A56; }
  .ddqx-ia-nav .ddqx-ia-accordion > summary::after { content:'+'; font-size:20px; line-height:1; }
  .ddqx-ia-nav .ddqx-ia-accordion[open] > summary::after { content:'−'; }
  .ddqx-ia-nav .ddqx-ia-panel-inner { padding:4px 6px 14px; }
  .ddqx-ia-nav .ddqx-ia-panel-heading { font-size:1rem; gap:2px; padding-bottom:9px; margin-bottom:10px; }
  .ddqx-ia-nav .ddqx-ia-columns { grid-template-columns:1fr; gap:14px; }
  .ddqx-ia-nav .ddqx-ia-panel--compact .ddqx-ia-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ddqx-ia-nav .ddqx-ia-column h3 { font-size:13px; margin-bottom:4px; }
  .ddqx-ia-nav .ddqx-ia-column ul { display:grid; grid-template-columns:1fr; }
  .ddqx-ia-nav .ddqx-ia-link { min-height:40px; font-size:14px; }
  .ddqx-ia-nav .ddqx-ia-extra { display:block; }
}
@media (prefers-reduced-motion:reduce) { .ddqx-ia-nav * { scroll-behavior:auto; transition:none !important; } }
@media (forced-colors:active) { .ddqx-ia-nav .ddqx-ia-panel, .ddqx-ia-nav .ddqx-ia-mobile-panel { border:1px solid CanvasText; background:Canvas; color:CanvasText; } }

/* Desktop navigation remains visible; mobile and print keep normal flow. */
@media screen and (min-width:1024px){
 .wp-site-blocks > header.wp-block-template-part:has(.ddqx-site-header){position:sticky;top:0;z-index:1000;background:var(--da-canvas,#104A56);}
 body.admin-bar .wp-site-blocks > header.wp-block-template-part:has(.ddqx-site-header){top:32px;}
 html{scroll-padding-top:180px;}
}
