/**/.hamburgerButton{display:block;background-color:transparent;border:0;padding:0;margin:0}.hamburgerButton,.hamburgerButton svg{width:100%;height:100%}/**/#dm .dmDivider{display:block;min-height:2px;margin:0;border:0;color:gray;background:0}#dm .dmDividerWrapper{display:block;margin:10px 0}/**/.graphicWidget{width:200px;height:200px;margin:10px auto;text-align:center}.graphicWidget svg.svg{width:100%;height:100%;color:#000;fill:#000}.graphicWidget img.svg{object-fit:contain;width:100%;height:100%}
.graphicWidget .svg[data-icon-mask]{display:block;aspect-ratio:1;width:100%;height:100%;color:#000;background-color:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.graphicWidgetV2{width:60px;height:60px}.graphicWidgetV3{font-size:0}/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}
.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}
[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}
.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}
.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}
.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}
.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}
.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}
.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}
.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}
.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}
.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}
.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:"○"}
.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:"■"}
.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}
.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}
.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}
.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:"•";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"○";transform:scale(1);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"★";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"➞";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"＋";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"－";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✓";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✗";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal)". "}
.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal)". "}
.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha)". "}
.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman)". "}
.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal)". "}
.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal)". "}
.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}
.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}
.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}
}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}
/* Custom Widgets Styles */
.widget-HH1 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-HH1 .cb1-theme-injector {
  display: none !important;
}

.headerWidget {
  min-height: 10px;
}

.headerWidget .reviews-header .link {
  margin-top: 4px;
}

.headerWidget .button .dmWidget {
  width: 280px;
  margin-top: 0px;
}

.vidWrapper {
  width: 100%;
  padding: 0;
  position: relative;
  background-image: url("");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

.vidWrapper:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: #000;
  opacity: 0.7;
  z-index: 0;
}

.vidInner {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  padding: 10% 0;
  z-index: 0;
}

.vidTitle1 {
  padding: 0;
  margin: 0 auto;
  font-size: 24px;
  text-align: center !important;
  color: #fff;
  position: relative;
  display: block;
  z-index: 2;
  line-height: 28px;
}

.vidTitle2 {
  padding: 0;
  margin: 0 auto;
  font-size: 32px;
  text-align: center !important;
  color: #fff;
  position: relative;
  display: block;
  z-index: 2;
  line-height: 40px;
}

.playIcon {
  fill: #fff;
  display: block;
  position: relative;
  margin-top: 30px;
  width: 110px;
  height: 110px;
  z-index: 2;
}

@media (min-width: 768px) { .videoWrapper {
  /*Set default width on desktop/tablet*/
  width: 350px;
}
 }
@media (max-width: 767px) { .videoWrapper {
  /*Set default width on mobile */
  width: 100%;
}

.vidTitle1 {
  font-size: 20px;
  line-height: 20px;
}

.vidTitle2 {
  font-size: 26px;
  line-height: 34px;
}

.playIcon {
  display: block;
  position: relative;
  margin-top: 30px;
  width: 100px;
  height: 100px;
  z-index: 2;
}
 }
.widget-HH1 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-HH1 .cb1-theme-injector {
  display: none !important;
}

.widget-0c06e7 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-0c06e7 .cb1-theme-injector {
  display: none !important;
}

@charset "UTF-8";
.widget-3e38ec {
  /* Default = GRID.
     Masonry is enabled ONLY when JS sets: #nav-grid-widget[data-masonry=true] */
  /* CSS custom property for dynamic column count */
}

/* =========================
   DEFAULT GRID LAYOUT
   ========================= */
.widget-3e38ec #nav-grid-widget {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(var(--column-count, 3), minmax(0, 1fr));
  gap: 15px;
  align-items: start;
  grid-auto-rows: min-content;
}

/* Uppercase text for parents when toggle is enabled */
.widget-3e38ec #nav-grid-widget[data-uppercase-parents=true] .ngw-parent-link {
  text-transform: uppercase;
}

/* Uppercase text for children when toggle is enabled */
.widget-3e38ec #nav-grid-widget[data-uppercase-children=true] .ngw-child-link {
  text-transform: uppercase;
}

/* Base group styling (grid default) */
.widget-3e38ec .ngw-group {
  justify-self: start;
  align-self: start;
  border: none;
  border-radius: 8px;
  padding: 1px;
  background: none;
  margin-bottom: 4px;
  height: fit-content;
}

/* =========================
   MASONRY (COLUMNS) — ONLY WHEN data-masonry=true
   ========================= */
.widget-3e38ec #nav-grid-widget[data-masonry=true] {
  display: block; /* override grid */
  column-count: var(--column-count, 3);
  column-gap: 15px;
}

/* In masonry, each group must be column-flow friendly */
.widget-3e38ec #nav-grid-widget[data-masonry=true] .ngw-group {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  display: inline-block;
  width: 100%;
  margin: 0 0 15px 0; /* masonry vertical rhythm */
}

/* =========================
   SHARED STYLES (BOTH MODES)
   ========================= */
.widget-3e38ec .ngw-parent {
  display: inline-flex;
  align-items: center; /* FIX: center chevron vs text */
  gap: 10px;
  user-select: none;
}

.widget-3e38ec .ngw-parent-link {
  text-decoration: none;
  color: #ffffff;
  font-weight: 600;
  line-height: 1.2;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-size: 1em;
}

.widget-3e38ec .ngw-toggle {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  line-height: 1;
  flex-shrink: 0;
  margin-top: 0;
  align-self: auto; /* FIX: remove top alignment */
}

.widget-3e38ec .ngw-chevron {
  font-size: 16px;
  font-weight: 400;
  display: inline-block;
  transform: rotate(0deg); /* collapsed = right (Option B) */
  transition: transform 160ms ease;
  line-height: 1;
}

.widget-3e38ec .ngw-chevron svg {
  fill: currentColor;
  width: 1em;
  height: 1em;
  display: block;
}

.widget-3e38ec .ngw-group[aria-expanded=true] .ngw-chevron {
  transform: rotate(90deg); /* expanded = down (Option B) */
}

.widget-3e38ec .ngw-children {
  margin: 0;
  padding: 0 0 0 20px;
  border-top: none;
  display: none;
}

.widget-3e38ec .ngw-group[aria-expanded=true] .ngw-children {
  display: block;
}

.widget-3e38ec .ngw-children a {
  display: block;
  padding: 4px 2px;
  text-decoration: none;
  color: #ffffff;
  border-radius: 6px;
  background: none;
  font-size: calc(1em - 2px);
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.widget-3e38ec .ngw-children a:hover,
.widget-3e38ec .ngw-children a:focus {
  background: rgba(255, 255, 255, 0.1);
  outline: none;
}

/* Style for parents without children (included via inclusion list) */
.widget-3e38ec .ngw-group.ngw-no-children .ngw-parent {
  cursor: default;
}

/* Nested children styles */
.widget-3e38ec .ngw-nested-group {
  margin: 2px 0;
}

.widget-3e38ec .ngw-nested-parent {
  display: inline-flex;
  align-items: center; /* FIX: center nested chevron vs text */
  gap: 8px;
  padding: 4px 2px;
  cursor: pointer;
}

.widget-3e38ec .ngw-nested-parent .ngw-child-link {
  padding: 0;
  flex: 1;
}

.widget-3e38ec .ngw-nested-toggle {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  line-height: 1;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  margin-top: 0;
  align-self: auto; /* FIX: remove top alignment */
}

/* Nested chevron */
.widget-3e38ec .ngw-nested-toggle .ngw-chevron {
  font-size: 14px;
  transform: rotate(0deg); /* collapsed = right (Option B) */
  transition: transform 160ms ease;
}

/* Expanded state: chevron points down - with higher specificity */
.widget-3e38ec .ngw-nested-group[aria-expanded=true] > .ngw-nested-parent > .ngw-nested-toggle .ngw-chevron {
  transform: rotate(90deg) !important; /* expanded = down (Option B) */
}

.widget-3e38ec .ngw-nested-children {
  padding-left: 16px;
  display: none;
  margin-top: 2px;
}

.widget-3e38ec .ngw-nested-group[aria-expanded=true] > .ngw-nested-children {
  display: block;
}

/* Different levels of nesting - progressive indentation */
.widget-3e38ec .ngw-nested-group[data-level="2"] {
  padding-left: 4px;
}

.widget-3e38ec .ngw-nested-group[data-level="3"] {
  padding-left: 8px;
}

.widget-3e38ec .ngw-nested-group[data-level="4"] {
  padding-left: 12px;
}

/* Nested link styles at different levels */
.widget-3e38ec .ngw-child-link[data-level="2"] {
  font-size: calc(1em - 3px);
  opacity: 0.95;
}

.widget-3e38ec .ngw-child-link[data-level="3"] {
  font-size: calc(1em - 4px);
  opacity: 0.9;
}

.widget-3e38ec .ngw-child-link[data-level="4"] {
  font-size: calc(1em - 5px);
  opacity: 0.85;
}

/* Active/Selected item styles */
.widget-3e38ec .ngw-active {
  background-color: var(--selected-bg-color, transparent);
  border-radius: 4px;
  padding: 2px 4px;
  margin: -2px -4px;
}

/* Underline selected items when enabled */
.widget-3e38ec #nav-grid-widget[data-underline-selected=true] .ngw-active {
  text-decoration: underline;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (min-width: 768px) and (max-width: 1024px) {
  .widget-3e38ec #nav-grid-widget {
    --column-count: 2;
  }
}
@media (max-width: 767px) {
  .widget-3e38ec #nav-grid-widget {
    --column-count: 1;
  }
  .widget-3e38ec .ngw-nested-children {
    padding-left: 12px;
  }
}
@media (prefers-color-scheme: dark) {
  .widget-3e38ec .ngw-group {
    background: none;
    border-color: transparent;
  }
  .widget-3e38ec .ngw-children a {
    color: #ffffff;
  }
}

.widget-8eedf9 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-8eedf9 .cb0-theme-injector {
  display: none !important;
}

/* ==========================================================================

   DEFAULT NAVIGATION MIRROR / MEGA NAVIGATION LITE

   ========================================================================== */
.dnm-root {
  --dnm-text: #111111;
  --dnm-menu-bg: #ffffff;
  --dnm-hover-bg: #f2f2f2;
  --dnm-hover-text: #111111;
  --dnm-chevron: #111111;
  --dnm-top-item-spacing: 0px;
  --dnm-menu-text-transform: none;
  --dnm-border: rgba(17, 17, 17, 0.12);
  --dnm-shadow: 0 14px 32px rgba(0, 0, 0, 0.14);
  --dnm-submenu-width: 240px;
  --dnm-mega-max-width: 1600px;
  position: relative;
  width: 100%;
  color: var(--dnm-text);
  font-family: inherit;
}

.dnm-root,
.dnm-root \* {
  box-sizing: border-box;
}

.dnm-root [hidden] {
  display: none !important;
}

/* ==========================================================================

   LIST RESET

   ========================================================================== */
.dnm-list,
.dnm-submenu,
.dnm-family-column,
.dnm-family-flat-grid,
.dnm-family-children,
.dnm-family-grandchildren {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* ==========================================================================

   TOP NAVIGATION

   ========================================================================== */
.dnm-nav {
  position: relative;
  width: 100%;
}

.dnm-top-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  column-gap: var(--dnm-top-item-spacing);
  width: 100%;
}

.dnm-item {
  position: relative;
  margin: 0;
  padding: 0;
}

.dnm-top-list > .dnm-mega-item {
  position: static;
}

.dnm-row,
.dnm-family-parent-row {
  display: flex;
  align-items: center;
  min-width: 0;
  background: transparent;
}

.dnm-top-list > .dnm-item > .dnm-row {
  background: transparent;
}

/* ==========================================================================

   TEXT / BUTTON BASE

   ========================================================================== */
.dnm-link,
.dnm-folder-label,
.dnm-label-toggle,
.dnm-toggle {
  font: inherit;
}

.dnm-link,
.dnm-folder-label,
.dnm-label-toggle {
  color: var(--dnm-text);
}

.dnm-link,
.dnm-folder-label {
  display: block;
  padding: 12px 14px;
  line-height: 1.25;
  text-decoration: none;
}

.dnm-link {
  cursor: pointer;
}

.dnm-folder-label {
  cursor: default;
}

.dnm-label-toggle,
.dnm-toggle {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  margin: 0;
  background: transparent;
  cursor: pointer;
}

.dnm-label-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 12px 14px;
  line-height: 1.25;
  text-align: left;
}

.dnm-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex: 0 0 36px;
  width: 36px;
  padding: 0;
}

.dnm-label {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  text-transform: var(--dnm-menu-text-transform);
}

/* ==========================================================================

   TYPOGRAPHY TARGETS

   Duda Design Panel Text Style inputs target these three classes directly.
   The JavaScript assigns one of these classes to every visible navigation
   label regardless of whether the item is native, generated, Mega Menu, or
   Mirror mode. No separate native/generated typography controls are needed.

   Parent      -> .dnm-typography-parent
   Child       -> .dnm-typography-child
   Grandchild  -> .dnm-typography-grandchild

   ========================================================================== */
.dnm-typography-parent,
.dnm-typography-child,
.dnm-typography-grandchild {
  min-width: 0;
}

/* ==========================================================================

   CHEVRONS

   ========================================================================== */
.dnm-chevron {
  display: inline-block;
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  color: var(--dnm-chevron);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transform-origin: center;
  transition: transform 160ms ease;
}

.dnm-toggle .dnm-chevron {
  margin-top: -4px;
}

.dnm-open > .dnm-row .dnm-chevron,
.dnm-open > .dnm-family-parent-row .dnm-chevron {
  transform: rotate(225deg) translate(-1px, -1px);
}

/* ==========================================================================

   HOVER / FOCUS COLORS

   ========================================================================== */
.dnm-row:hover,
.dnm-row:focus-within,
.dnm-family-parent-row:hover,
.dnm-family-parent-row:focus-within {
  background: var(--dnm-hover-bg);
}

.dnm-row:hover > .dnm-link > .dnm-label,
.dnm-row:hover > .dnm-folder-label > .dnm-label,
.dnm-row:hover > .dnm-label-toggle > .dnm-label,
.dnm-row:focus-within > .dnm-link > .dnm-label,
.dnm-row:focus-within > .dnm-folder-label > .dnm-label,
.dnm-row:focus-within > .dnm-label-toggle > .dnm-label,
.dnm-family-parent-row:hover > .dnm-link > .dnm-label,
.dnm-family-parent-row:focus-within > .dnm-link > .dnm-label {
  color: var(--dnm-hover-text);
}

.dnm-family-child-link:hover > .dnm-label,
.dnm-family-child-link:focus-visible > .dnm-label,
.dnm-family-grandchild-link:hover > .dnm-label,
.dnm-family-grandchild-link:focus-visible > .dnm-label {
  color: var(--dnm-hover-text);
}

.dnm-family-child-link:hover,
.dnm-family-child-link:focus-visible,
.dnm-family-grandchild-link:hover,
.dnm-family-grandchild-link:focus-visible {
  background: var(--dnm-hover-bg);
}

.dnm-link:focus-visible,
.dnm-label-toggle:focus-visible,
.dnm-toggle:focus-visible,
.dnm-tool-button:focus-visible,
.dnm-modal-close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -2px;
}

/* ==========================================================================

   STANDARD SUBMENUS / SUB-SUBMENUS

   ========================================================================== */
.dnm-submenu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 7000;
  width: max-content;
  min-width: var(--dnm-submenu-width);
  max-width: min(360px, 90vw);
  color: var(--dnm-text);
  background: var(--dnm-menu-bg);
  border: 1px solid var(--dnm-border);
  box-shadow: var(--dnm-shadow);
}

.dnm-submenu .dnm-item {
  width: 100%;
}

.dnm-submenu .dnm-row {
  width: 100%;
}

.dnm-submenu .dnm-link,
.dnm-submenu .dnm-folder-label,
.dnm-submenu .dnm-label-toggle {
  flex: 1 1 auto;
  width: 100%;
}

.dnm-submenu .dnm-submenu {
  top: -1px;
  left: 100%;
}

/* ==========================================================================

   MEGA MENU

   ========================================================================== */
.dnm-mega-trigger {
  width: auto;
  white-space: nowrap;
}

.dnm-mega-area {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 6500;
  width: 100vw;
  color: var(--dnm-text);
  background: var(--dnm-menu-bg);
  border-top: 1px solid var(--dnm-border);
  border-bottom: 1px solid var(--dnm-border);
  box-shadow: var(--dnm-shadow);
  transform: translateX(-50%);
}

.dnm-mega-inner {
  width: min(100%, var(--dnm-mega-max-width));
  margin: 0 auto;
  padding: 30px 48px;
}

.dnm-family-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 34px;
  align-items: start;
}

.dnm-family-flat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-flow: row;
  gap: 26px 34px;
  align-items: start;
}

.dnm-family-column {
  display: flex;
  flex-direction: column;
  gap: 26px;
  min-width: 0;
}

.dnm-family {
  min-width: 0;
}

.dnm-family-parent-row {
  width: 100%;
}

.dnm-family-parent-link {
  flex: 1 1 auto;
  padding: 0;
  line-height: 1.3;
}

/*
  Typography is applied to the nested .dnm-label element through the
  .dnm-typography-parent / child / grandchild classes. This deliberately
  avoids separate rules for native vs. generated navigation.
*/
.dnm-family-toggle {
  align-self: center;
  min-height: 30px;
}

.dnm-family-children {
  margin-top: 10px;
}

.dnm-family-child,
.dnm-family-grandchild {
  margin: 0;
  padding: 0;
}

.dnm-family-child-link,
.dnm-family-grandchild-link {
  display: block;
  padding: 5px 2px;
  line-height: 1.35;
  text-decoration: none;
}

.dnm-family-grandchildren {
  margin-top: 2px;
  padding-left: 16px;
}

/* ==========================================================================

   MIRROR VERSION

   ========================================================================== */
.dnm-root[data-dnm-mode=mirror] .dnm-top-list {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: flex-start;
}

.dnm-root[data-dnm-mode=mirror] .dnm-item,
.dnm-root[data-dnm-mode=mirror] .dnm-row,
.dnm-root[data-dnm-mode=mirror] .dnm-link,
.dnm-root[data-dnm-mode=mirror] .dnm-label-toggle {
  width: 100%;
}

.dnm-root[data-dnm-mode=mirror] .dnm-submenu {
  position: static;
  width: 100%;
  min-width: 0;
  max-width: none;
  border-left: 0;
  border-right: 0;
  box-shadow: none;
}

.dnm-root[data-dnm-mode=mirror] .dnm-submenu .dnm-submenu {
  position: static;
}

.dnm-root[data-dnm-mode=mirror] .dnm-submenu .dnm-row {
  padding-left: 14px;
}

.dnm-root[data-dnm-mode=mirror] .dnm-submenu .dnm-submenu .dnm-row {
  padding-left: 28px;
}

.dnm-root[data-dnm-mode=mirror] .dnm-mega-area {
  position: static;
  width: 100%;
  border-left: 0;
  border-right: 0;
  box-shadow: none;
  transform: none;
}

.dnm-root[data-dnm-mode=mirror] .dnm-mega-inner {
  width: 100%;
  padding: 16px;
}

.dnm-root[data-dnm-mode=mirror] .dnm-mega-vertical,
.dnm-root[data-dnm-mode=mirror] .dnm-family-column {
  width: 100%;
}

/* ==========================================================================

   NAVIGATION TREE TOOL

   ========================================================================== */
.dnm-tools {
  margin-top: 8px;
}

.dnm-tools:empty {
  display: none;
}

.dnm-tool-button {
  appearance: none;
  -webkit-appearance: none;
  padding: 8px 12px;
  color: var(--dnm-text);
  background: var(--dnm-menu-bg);
  border: 1px solid var(--dnm-border);
  border-radius: 4px;
  font: inherit;
  cursor: pointer;
}

.dnm-tool-button:hover {
  color: var(--dnm-hover-text);
  background: var(--dnm-hover-bg);
}

/* ==========================================================================

   NAVIGATION TREE MODAL

   ========================================================================== */
.dnm-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0, 0, 0, 0.48);
}

.dnm-modal {
  width: min(720px, 100%);
  max-height: min(80vh, 760px);
  overflow: hidden;
  color: #111111;
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}

.dnm-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(17, 17, 17, 0.14);
}

.dnm-modal-header h2 {
  margin: 0;
  font: inherit;
  font-size: 20px;
  font-weight: 700;
}

.dnm-modal-close {
  appearance: none;
  -webkit-appearance: none;
  width: 36px;
  height: 36px;
  padding: 0;
  color: #111111;
  background: transparent;
  border: 0;
  font: inherit;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.dnm-modal-body {
  max-height: calc(min(80vh, 760px) - 70px);
  overflow: auto;
  padding: 18px;
}

.dnm-tree-output {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 13px;
  line-height: 1.5;
}

/* ==========================================================================

   SMALL SCREENS

   ========================================================================== */
@media (max-width: 767px) {
  .dnm-top-list {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
  }
  .dnm-top-list > .dnm-item,
  .dnm-top-list > .dnm-item > .dnm-row,
  .dnm-top-list > .dnm-item > .dnm-row > .dnm-link,
  .dnm-top-list > .dnm-item > .dnm-row > .dnm-label-toggle {
    width: 100%;
  }
  .dnm-submenu,
  .dnm-submenu .dnm-submenu {
    position: static;
    width: 100%;
    min-width: 0;
    max-width: none;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
  }
  .dnm-submenu .dnm-row {
    padding-left: 14px;
  }
  .dnm-submenu .dnm-submenu .dnm-row {
    padding-left: 28px;
  }
  .dnm-mega-area {
    position: static;
    width: 100%;
    transform: none;
    box-shadow: none;
  }
  .dnm-mega-inner {
    width: 100%;
    padding: 20px;
  }
  .dnm-family-columns,
  .dnm-family-flat-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  /* Allow long navigation text to wrap on mobile */
  .dnm-link,
  .dnm-folder-label,
  .dnm-label-toggle,
  .dnm-mega-trigger,
  .dnm-label,
  .dnm-family-parent-link,
  .dnm-family-child-link,
  .dnm-family-grandchild-link {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    min-width: 0;
  }
  /* Keep text flexible while preserving the menu toggle/chevron */
  .dnm-row > .dnm-link,
  .dnm-row > .dnm-folder-label,
  .dnm-row > .dnm-label-toggle,
  .dnm-family-parent-row > .dnm-link {
    flex: 1 1 auto;
    min-width: 0;
  }
}

.widget-403a95 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-403a95 .cb2-theme-injector {
  display: none !important;
}

.widget-1c20f5 {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.widget-1c20f5 .dcbh3-theme-injector {
  display: none !important;
}
