/* Load last, after each page's own archived Duda styles. No external assets. */
[hidden] { display: none !important; }

html, body#dmRoot, #dmRoot #dm, #dmRoot #dm .dm_wrapper,
#dmRoot #dm #dm-outer-wrapper, #dmRoot #dm #dmStyle_outerContainer,
#dmRoot #dm #dmStyle_innerContainer, #dmRoot #dm .dmInner,
#dmRoot #dm .dmOuter, #dmRoot #dm .dmLayoutWrapper,
#dmRoot #dm #site_content, #dmRoot #dm .site_content,
#dmRoot #dm #iscrollBody, #dmRoot #dm #allWrapper,
#dmRoot #dm #dm_content, #dmRoot #dm .dmBody {
  min-width: 0 !important;
  max-width: 100%;
}
#dmRoot #dm .hamburger-header-container,
#dmRoot #dm .layout-drawer,
#dmRoot #dm .layout-drawer-hamburger,
#dmRoot #dm .layout-drawer-overlay { display: none !important; }
#dmRoot #dmPopup,
#dmRoot #dmPopupMask,
#dmRoot #dmPopupOverlay,
#dmRoot .dmPopupClose { display: none !important; }
#dmRoot #dm [data-anim-desktop],
#dmRoot #dm [data-anim-tablet],
#dmRoot #dm [data-anim-mobile] {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
.restore-mobile-header { display: none; }
.restore-archive-bar {
  padding: .45rem 1rem;
  border-bottom: 1px solid #ddd;
  background: #f2f2f2;
  color: #444;
  font-family: Arial, sans-serif;
  font-size: .8rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.restore-archive-bar p { margin: 0; }
.restore-archive-bar a { color: inherit; text-decoration: underline; }
.restore-form-note {
  max-width: 100%;
  margin: 1rem 0;
  padding: 1rem;
  border: 1px solid #ddd;
  border-left: 4px solid #d8ad00;
  background: #fffbed;
  color: #333;
  font-size: 1rem;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.restore-form-note > :last-child { margin-bottom: 0; }
form[data-restored-disabled] fieldset[disabled] { min-width: 0; margin: 0; padding: 0; border: 0; opacity: 1; }
form[data-restored-disabled] :disabled { opacity: 1; }

.restore-video {
  display: grid !important;
  gap: .5rem;
  width: 100%;
  max-width: 100%;
  margin: 1rem 0;
  padding: 1.25rem;
  border: 1px solid #bbb;
  border-radius: .25rem;
  background: #f4f4f4;
  color: #222;
  line-height: 1.5;
  text-align: center;
  overflow-wrap: anywhere;
}
.restore-video img { display: block; max-width: 100%; height: auto; margin: 0 auto .75rem; }
.restore-video a { text-decoration: underline; }
.restore-video > :last-child { margin-bottom: 0; }
.restore-video > strong, .restore-video > span:not(.restore-video-play) { display: block; }
#dmRoot #dm .restore-video-container {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
}

/* The original desktop header remains; only submenu interaction is replaced. */
#dmRoot #dm .unifiednav .restore-has-submenu { position: relative; }
#dmRoot #dm .unifiednav .restore-has-submenu > .unifiednav__item { padding-right: 2rem !important; }
.restore-submenu-toggle {
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  min-height: 2.75rem;
  padding: .25rem;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
#dmRoot #dm .unifiednav ul.restore-submenu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: auto !important;
  z-index: 100;
  display: none !important;
  flex-direction: column;
  width: max-content !important;
  min-width: 13rem;
  max-width: min(23rem, 90vw) !important;
  height: auto !important;
  margin: 0 !important;
  padding: .35rem !important;
  border: 1px solid #555;
  background: #111;
  color: #fff;
  box-shadow: 0 .4rem 1rem rgba(0, 0, 0, .2);
  transform: none !important;
}
#dmRoot #dm .unifiednav .is-open > ul.restore-submenu,
body#dmRoot:not(.js-ready) #dm .unifiednav li:hover > ul.restore-submenu,
body#dmRoot:not(.js-ready) #dm .unifiednav li:focus-within > ul.restore-submenu {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
#dmRoot #dm .unifiednav ul.restore-submenu > li { display: block; width: 100%; }
#dmRoot #dm .unifiednav ul.restore-submenu a { white-space: normal !important; overflow-wrap: anywhere; }
body:not(.js-ready) .restore-submenu-toggle { display: none; }

#restoreImageDialog {
  width: min(70rem, calc(100% - 2rem));
  max-width: calc(100% - 2rem);
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  margin: auto;
  padding: 1rem;
  border: 1px solid #aaa;
  border-radius: .3rem;
  background: #fff;
  color: #222;
  overflow: auto;
}
#restoreImageDialog:not([open]) { display: none; }
#restoreImageDialog::backdrop { background: rgba(0, 0, 0, .8); }
#restoreImageDialog :is([data-dialog-close], [data-close-dialog]) {
  display: block;
  min-height: 2.75rem;
  margin: 0 0 .75rem auto;
  padding: .4rem .8rem;
  border: 1px solid #aaa;
  border-radius: .2rem;
  background: #f5f5f5;
  color: #222;
  font: inherit;
  cursor: pointer;
}
#restoreDialogImage { display: block; width: auto; max-width: 100%; height: auto; max-height: 75vh; margin: auto; object-fit: contain; }
#restoreDialogCaption { margin: .75rem 0 0; font-size: .9rem; line-height: 1.5; overflow-wrap: anywhere; }

:is(.restore-mobile-header, .restore-video, .restore-form-note) :is(a, button):focus-visible,
.restore-submenu-toggle:focus-visible,
#dm .unifiednav a:focus-visible,
#restoreImageDialog button:focus-visible,
:is(#restoreArchiveFilter, #restoreArchiveYear, #restoreArchiveReset):focus-visible,
#restoreArchiveSearch :is(input, button):focus-visible,
a[data-zoom]:focus-visible {
  outline: 3px solid #0871cc !important;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #fff;
}

@media (max-width: 1024px) {
  #dmRoot #dm .fHeader { display: none !important; }
  #dmRoot #dm #site_content,
  #dmRoot #dm .site_content,
  #dmRoot #dm .dmBody,
  #dmRoot #dm #dmFirstContainer {
    margin-top: 0 !important;
    padding-top: 0 !important;
    top: auto !important;
  }
  .restore-mobile-header {
    position: relative;
    z-index: 101;
    display: grid;
    grid-template-columns: 3.5rem minmax(0, 1fr) auto;
    align-items: center;
    gap: .65rem;
    padding: .65rem 1rem;
    border-bottom: 3px solid #f4ce00;
    background: #080808;
    color: #fff;
    font-family: Arial, sans-serif;
  }
  .restore-mobile-header > * { min-width: 0; }
  .restore-mobile-header img { display: block; width: 3.5rem; max-width: 100%; height: 3.5rem; object-fit: contain; }
  .restore-mobile-header a { color: #fff; }
  .restore-mobile-header a[href^="tel:"] { color: #ffdd00; font-size: clamp(.9rem, 4.3vw, 1.1rem); font-weight: 700; white-space: nowrap; }
  #restoreMenuToggle {
    min-width: 2.75rem;
    min-height: 2.75rem;
    max-width: 4.5rem;
    padding: .4rem .5rem;
    border: 1px solid #777;
    border-radius: .2rem;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: .9rem;
    cursor: pointer;
  }
  #restoreNavigation {
    grid-column: 1 / -1;
    width: 100%;
    padding: .3rem 0 0;
    border-top: 1px solid #555;
    text-align: left;
  }
  #restoreNavigation ul { margin: 0; padding: 0; list-style: none; }
  #restoreNavigation a { display: block; padding: .75rem .2rem; color: #fff; font-size: 1rem; line-height: 1.3; text-decoration: none; overflow-wrap: anywhere; }
  #restoreNavigation a:hover { color: #ffdd00; }
  body:not(.js-ready) #restoreNavigation { display: block !important; }
  body:not(.js-ready) #restoreMenuToggle { display: none; }
}

@media (max-width: 767px) {
  #dmRoot #dm .dmInner,
  #dmRoot #dm #dmStyle_innerContainer,
  #dmRoot #dm .dmContent,
  #dmRoot #dm .dmRespRowsWrapper,
  #dmRoot #dm .dmFooterContainer,
  #dmRoot #dm #fcontainer {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #dmRoot #dm #dm_content .dmRespRow,
  #dmRoot #dm .dmFooterContainer .dmRespRow {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 1.25rem 1rem !important;
    box-sizing: border-box;
  }
  #dmRoot #dm #dm_content .dmRespColsWrapper,
  #dmRoot #dm .dmFooterContainer .dmRespColsWrapper {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #dmRoot #dm #dm_content .dmRespCol,
  #dmRoot #dm .dmFooterContainer .dmRespCol {
    display: block !important;
    float: none !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    left: auto !important;
    right: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #dmRoot #dm #dm_content .dmRespCol + .dmRespCol,
  #dmRoot #dm .dmFooterContainer .dmRespCol + .dmRespCol { margin-top: 1rem !important; }
  #dmRoot #dm #dm_content .dmRespCol > *,
  #dmRoot #dm .dmFooterContainer .dmRespCol > * { min-width: 0 !important; max-width: 100% !important; box-sizing: border-box; }
  #dmRoot #dm #dm_content .dmNewParagraph,
  #dmRoot #dm .dmFooterContainer .dmNewParagraph {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere;
  }
  #dmRoot #dm #dm_content .dmNewParagraph :is(p, li, span, strong, em, font, a),
  #dmRoot #dm .dmFooterContainer .dmNewParagraph :is(p, li, span, strong, em, font, a) { font-size: inherit !important; line-height: inherit !important; }
  #dmRoot #dm #dm_content .dmNewParagraph p.restore-phone-line { font-size: clamp(1.2rem, 7vw, 1.8rem) !important; }
  #dmRoot #dm #dm_content h1 { font-size: clamp(1.8rem, 7.5vw, 2.4rem) !important; line-height: 1.2 !important; }
  #dmRoot #dm #dm_content h2 { font-size: clamp(1.45rem, 6vw, 1.9rem) !important; line-height: 1.25 !important; }
  #dmRoot #dm #dm_content h3,
  #dmRoot #dm .dmFooterContainer h3 { font-size: clamp(1.2rem, 5vw, 1.5rem) !important; line-height: 1.3 !important; }
  #dmRoot #dm #dm_content :is(h1, h2, h3) * { font-size: inherit !important; line-height: inherit !important; }
  #dmRoot #dm #dm_content .dmNewParagraph :is(ul, ol) { max-width: 100%; margin-left: 0 !important; margin-right: 0 !important; padding-left: 1.4rem !important; }
  #dmRoot #dm #dm_content .dmSpacer,
  #dmRoot #dm .dmFooterContainer .dmSpacer { display: none !important; }
  #dmRoot #dm #dm_content .imageWidget,
  #dmRoot #dm .dmFooterContainer .imageWidget { min-width: 0 !important; max-width: 100% !important; height: auto !important; margin-left: auto !important; margin-right: auto !important; }
  #dmRoot #dm #dm_content img,
  #dmRoot #dm .dmFooterContainer img { max-width: 100% !important; height: auto !important; }
  #dmRoot #dm #dm_content :is(.dmButtonLink, [data-element-type="dButtonLinkId"]) {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 24rem !important;
    height: auto !important;
    min-height: 2.75rem !important;
    margin: .75rem auto !important;
    padding: .65rem 1rem !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    white-space: normal !important;
  }
  #dmRoot #dm #dm_content .dmButtonLink .text { font-size: 1.15rem !important; line-height: 1.35 !important; padding: 0 !important; white-space: normal !important; }
  #dmRoot #dm #dm_content :is(iframe, video, object) { max-width: 100% !important; }
  #dmRoot #dm #dm_content table { display: block; max-width: 100%; overflow-x: auto; }
  #dmRoot #dm #dm_content :is(.restore-video, .restore-form-note) { max-width: 100% !important; }
  .restore-archive-bar { padding: .4rem .75rem; font-size: .75rem; }
  #restoreImageDialog { width: calc(100% - 1rem); max-width: calc(100% - 1rem); padding: .65rem; }
  #dmRoot #dm #dm_content [id="1786432175"] { padding-bottom: 0 !important; }
  #dmRoot #dm #dm_content [id="1786390642"] { padding-top: 0 !important; }
  #dmRoot #dm #dm_content [id="1067077948"] > p:last-child { display: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  #dmRoot #dm *, .restore-mobile-header *, #restoreImageDialog * { animation: none !important; transition: none !important; }
}
