/* ── Reset ── */
.dmm-wrap { width:100%; font-family:'Inter Tight',sans-serif; }
.dmm-wrap *,.dmm-wrap *::before,.dmm-wrap *::after { box-sizing:border-box; margin:0; padding:0; }
.dmm-wrap ul { list-style:none; }
.dmm-wrap a  { text-decoration:none; }
.dmm-wrap button { background:none; border:none; cursor:pointer; font-family:inherit; }

/* ── Desktop nav bar ── */
.dmm-nav { display:flex; align-items:center; width:100%; }
.dmm-nav > ul { display:flex; align-items:center; width:100%; justify-content:space-between; }
.dmm-nav > ul > li { position:relative; }
.dmm-nav > ul > li > a {
  display:flex; align-items:center; gap:5px;
  padding:20px 16px;
  font-size:14px; font-weight:500; color:#374151;
  white-space:nowrap; transition:color .2s;
}
.dmm-nav > ul > li > a .dmm-chevron { transition:transform .2s; flex-shrink:0; stroke:#6b7280; fill:none; }
.dmm-nav > ul > li > a:hover,
.dmm-nav > ul > li.dmm-active > a { color:#175F6B; }
.dmm-nav > ul > li > a:hover .dmm-chevron,
.dmm-nav > ul > li.dmm-active > a .dmm-chevron { stroke:#175F6B; }
.dmm-nav > ul > li:hover > a .dmm-chevron,
.dmm-nav > ul > li.dmm-active > a .dmm-chevron { transform:rotate(180deg); }

/* ── Dropdown shell ── */
.dmm-dropdown {
  position:absolute; top:100%; left:0;
  width:100vw;
  background:#fff;
  border:1px solid #e8eaec; border-top:2px solid #175F6B;
  border-radius:0;
  box-shadow:0 8px 32px rgba(0,0,0,.12);
  opacity:0; visibility:hidden;
  transform:translateY(8px);
  transition:opacity .2s, transform .2s, visibility .2s;
  z-index:9999;
  overflow:hidden;
}
.dmm-nav > ul > li:hover .dmm-dropdown,
.dmm-nav > ul > li:focus-within .dmm-dropdown {
  opacity:1; visibility:visible; transform:translateY(0);
}

/* ── Dropdown inner layout ── */
.dmm-dd-inner {
  display:flex;
  gap:0;
  width:100%;
}
.dmm-dd-grid {
  flex:1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  padding:16px;
}

/* ── Dropdown item ── */
.dmm-dd-item {
  display:flex; align-items:flex-start; gap:12px;
  padding:12px;
  border-radius:8px;
  transition:background .15s;
  color:inherit;
}
.dmm-dd-item:hover { background:#f0f9f9; }
.dmm-dd-icon-wrap {
  width:36px; height:36px; flex-shrink:0;
  background:#f0f9f9; border-radius:8px;
  display:flex; align-items:center; justify-content:center;
}
.dmm-dd-icon-empty { color:#6b7280; }
.dmm-dd-icon { width:20px; height:20px; object-fit:contain; }
.dmm-dd-icon-wrap svg { width:20px; height:20px; }
.dmm-item-icon img,.dmm-item-icon svg { width:18px; height:18px; object-fit:contain; flex-shrink:0; }
.dmm-dd-text { display:flex; flex-direction:column; gap:3px; min-width:0; }
.dmm-dd-title { font-size:13px; font-weight:600; color:#111827; line-height:1.3; transition:color .15s; }
.dmm-dd-item:hover .dmm-dd-title { color:#175F6B; }
.dmm-dd-desc { font-size:11px; color:#6b7280; line-height:1.4; }

/* ── Promo panel ── */
.dmm-promo {
  width:22%; min-width:200px; flex-shrink:0;
  background:#f9fafb;
  border-left:1px solid #e8eaec;
  border-radius:0 0 12px 0;
  padding:24px 20px;
  display:flex; flex-direction:column; gap:14px;
}
.dmm-promo-eyebrow { font-size:13px; font-weight:700; color:#111827; line-height:1.4; }
.dmm-promo-bullets { display:flex; flex-direction:column; gap:8px; }
.dmm-promo-bullet {
  display:flex; align-items:center; gap:8px;
  font-size:12px; color:#374151; font-weight:500;
}
.dmm-promo-bullet svg { stroke:#175F6B; flex-shrink:0; }
.dmm-promo-cta { font-size:13px; font-weight:600; color:#175F6B; margin-top:4px; transition:opacity .2s; }
.dmm-promo-cta:hover { opacity:.75; }

/* ── Hamburger hidden on desktop ── */
.dmm-hamburger { display:none; }

/* ── Mobile overlay ── */
.dmm-mobile-overlay {
  position:fixed; inset:0; background:#fff; z-index:99999;
  display:flex; flex-direction:column; overflow:hidden;
  transform:translateX(-100%);
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  font-family:'Inter Tight',sans-serif;
}
.dmm-mobile-overlay.open { transform:translateX(0); }

.dmm-mob-header {
  display:flex; align-items:center; justify-content:flex-end;
  padding:12px 16px;
  background:#f9fafb; border-bottom:1px solid #e8eaec;
  flex-shrink:0;
}
.dmm-close {
  display:flex; align-items:center; justify-content:center;
  width:32px; height:32px; border-radius:50%;
  color:#9ca3af; transition:background .2s, color .2s;
}
.dmm-close:hover { background:#e8eaec; color:#374151; }
.dmm-close svg { stroke:currentColor; }

.dmm-mob-list { overflow-y:auto; flex:1; -webkit-overflow-scrolling:touch; }
.dmm-mob-list > li { border-bottom:1px solid #e8eaec; }
.dmm-mob-row { display:flex; align-items:center; justify-content:space-between; }
.dmm-mob-row > a {
  flex:1; display:block; padding:14px 20px;
  font-size:15px; font-weight:500; color:#374151; transition:color .15s;
}
.dmm-mob-row > a:hover { color:#175F6B; }
.dmm-mob-parent.open > .dmm-mob-row > a { color:#175F6B; }
.dmm-mob-toggle {
  display:flex; align-items:center; justify-content:center;
  width:36px; height:36px; min-width:36px; padding:0;
  color:#ffffff; background:#101418;
  border:none; border-radius:50%;
  margin-right:12px;
  transition:color .2s, background .2s, opacity .2s;
  flex-shrink:0;
}
.dmm-mob-toggle:hover { opacity:.8; }
.dmm-mob-toggle svg { stroke:currentColor; fill:none; transition:transform .2s; }
.dmm-mob-parent.open > .dmm-mob-row .dmm-mob-toggle svg { transform:rotate(180deg); }

.dmm-mob-sub { display:none; background:#f9fafb; }
.dmm-mob-parent.open > .dmm-mob-sub { display:block; }
.dmm-mob-sub li { border-bottom:1px solid #e8eaec; }
.dmm-mob-sub li:last-child { border-bottom:none; }
.dmm-mob-sub a {
  display:flex; align-items:center; gap:10px;
  padding:12px 20px 12px 28px;
  font-size:14px; color:#374151; transition:color .15s, background .15s;
}
.dmm-mob-sub a:hover { color:#175F6B; background:#f0f9f9; }
.dmm-item-icon { width:18px; height:18px; object-fit:contain; flex-shrink:0; opacity:.75; }
.dmm-mob-sub a:hover .dmm-item-icon { opacity:1; }

/* ── Backdrop ── */
.dmm-backdrop {
  display:none;
  position:fixed !important;
  top:0 !important; left:0 !important;
  width:100vw !important; height:100vh !important;
  background:rgba(0,0,0,.4); z-index:99998;
}
.dmm-backdrop.visible { display:block; }

/* ── Hamburger ── */
.dmm-hamburger {
  display:none; flex-direction:column; justify-content:center; align-items:center;
  gap:5px; width:36px; height:36px; padding:4px;
  background:transparent; border:0px solid transparent; border-radius:4px;
  cursor:pointer;
}
.dmm-hamburger span {
  display:block; height:2px; width:100%;
  background:#374151; border-radius:2px;
  transition:transform .2s, opacity .2s;
}

/* ── Responsive — handled by per-widget <style> injected by JS ── */
/* Hamburger hidden by default until JS injects breakpoint styles */
.dmm-hamburger { display:none; }
.dmm-nav       { display:flex; }
.dmm-mobile-overlay { display:flex; }

/* ── Promo panel icon additions ── */
.dmm-promo-header-icon { display:flex; align-items:center; color:#175F6B; font-size:24px; width:24px; height:24px; margin-bottom:4px; }
.dmm-promo-header-icon svg,.dmm-promo-header-icon i { width:1em; height:1em; }
.dmm-promo-bullet-icon { display:inline-flex; align-items:center; flex-shrink:0; color:#175F6B; font-size:13px; width:13px; }
.dmm-promo-bullet-icon svg,.dmm-promo-bullet-icon i { width:1em; height:1em; }
.dmm-promo-cta { display:inline-block; transition:color .2s, background .2s, border-color .2s; }
