/* Shannon Strong Law — post-Duda static fixes.
   Duda hides every animated element up front and reveals it with a scroll
   runtime that does not exist in a static export. #dmRoot IS the <body>, so
   these selectors outrank Duda's class-only rules. Content appears instead of
   animating in, which is the right trade for a static site. */
#dmRoot [data-anim-extended],
#dmRoot [data-anim-desktop]:not([data-anim-desktop='none']),
#dmRoot [data-anim-tablet]:not([data-anim-tablet='none']),
#dmRoot [data-anim-mobile]:not([data-anim-mobile='none']),
#dmRoot .dmNewParagraph[data-anim-extended],
#dmRoot .flex-element [data-anim-extended] {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Galleries gate their thumbnails on a .ready class the same runtime adds. */
#dmRoot .dmPhotoGalleryHolder:not(.ready) li.photoGalleryThumbs {
  visibility: visible !important;
  display: inline-block !important;
}

/* H1 hero swap: the hero was an <h2> sharing Duda's size classes. The classes
   carry the size, so the tag swap is appearance-neutral. */
#dmRoot .dmNewParagraph h1,
#dmRoot .dmNewParagraph h1[class*="size-"] {
  margin: 0;
}

/* The <noscript> fallback + form status text sit outside Duda's styling. */
.vg-form-status {
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.5;
}
.vg-form-status.vg-ok { color: #1a7f4e; }
.vg-form-status.vg-err { color: #b3261e; }

/* ============ client feedback batch ============ */

/* #2 desktop header: shrink + solid teal on scroll. Teal = var(--color_1). */
#dmRoot #hcontainer .imageWidget img { transition: transform .2s ease; }
#dmRoot #hcontainer { transition: background-color .25s ease, box-shadow .25s ease; }
#dmRoot.vg-scrolled #hcontainer {
  background-color: rgba(88, 158, 163, .96) !important;
  box-shadow: 0 2px 14px rgba(0, 0, 0, .20);
  position: sticky; top: 0; z-index: 999;
}
#dmRoot.vg-scrolled #hcontainer .imageWidget img {
  transform: scale(.85);
  transform-origin: left center;
}

/* #4 homepage teaser links. */
#dmRoot .vg-teaser a { text-decoration: none !important; color: inherit !important; }
#dmRoot .vg-teaser a:hover { text-decoration: underline !important; }

/* #5 mobile header logo: stop crowding the hamburger button. */
#dmRoot.dmMobileBody #mobile-hamburger-header .imageWidget img,
#dmRoot.dmMobileBody #hamburger-header-container .imageWidget img {
  max-width: 170px !important;
  width: auto !important;
  height: auto !important;
}

/* #6 mobile nav drawer: branded, high-end, readable. */
#dmRoot.dmMobileBody .layout-drawer {
  background: linear-gradient(180deg, rgba(88,158,163,1) 0%, rgba(55,112,118,1) 100%) !important;
}
#dmRoot.dmMobileBody .layout-drawer .main-navigation .unifiednav__item,
#dmRoot.dmMobileBody .layout-drawer .main-navigation a.unifiednav__item {
  color: rgba(255, 255, 255, .95) !important;
  font-size: 17px !important;
  letter-spacing: .4px;
  padding: 15px 22px !important;
  border-bottom: 1px solid rgba(255, 255, 255, .16);
}
#dmRoot.dmMobileBody .layout-drawer .main-navigation .unifiednav__item.dmNavItemSelected,
#dmRoot.dmMobileBody .layout-drawer .unifiednav__item.dmNavItemSelected {
  color: #e3c38f !important;
}
#dmRoot.dmMobileBody .layout-drawer .dmRespCol > * {
  box-shadow: none !important;
}
