/* DDT reference layout. Desktop dimensions and colors are taken from the
   original site's stylesheet; the smaller-screen rules remove its fixed width. */
body.ddt-site {
  --ddt-max: 1000px;
  --ddt-orange: #f6a13d;
  --ddt-text: #44413a;
  margin: 0;
  background: #f6a13d;
  color: #44413a;
  font-family: "Asap", sans-serif !important;
  font-size: 13px !important;
  line-height: 20px;
}
.ddt-site a { color: #44413a; }
.ddt-site .elementor-widget-container,
.ddt-site .elementor-heading-title,
.ddt-site .elementor-button { font-family: "Asap", sans-serif !important; }
.ddt-site-header {
  position: relative;
  top: auto !important;
  z-index: 20;
  height: 95px;
  background: url("../images/background.jpg") repeat-x top left;
  box-shadow: none !important;
}
.ddt-header-shell {
  width: 100% !important;
  min-height: 0;
  display: block;
  margin: 0;
  padding: 0 !important;
}
.ddt-header-shell > .elementor-container,
.ddt-footer-band > .elementor-container {
  width: 1000px !important;
  max-width: 1000px !important;
  margin-inline: auto;
}
.ddt-site .ddt-header-shell .elementor-widget-wrap {
  display: block !important;
  padding: 0 !important;
}
.ddt-header-shell .elementor-widget { margin: 0 !important; }
.ddt-header-shell .elementor-widget-shortcode { position: static; width: auto; }
.ddt-header-shell .ddt-nav {
  position: static;
  display: block;
  width: 630px;
  height: 46px;
  margin-left: 218px;
  padding: 0;
  background: url("../images/topNav.png") repeat-x;
  box-shadow: none;
}
.ddt-nav__list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  height: 45px;
  padding: 17px 0 0;
  margin: 0;
}
.ddt-nav a {
  font-size: 15px !important;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: lowercase;
  color: #44413a !important;
  text-decoration: none;
}
.ddt-nav a::after { display: none; }
.ddt-nav a:hover { color: #31808a !important; }
.ddt-nav .current-menu-item > a,
.ddt-nav .current-menu-ancestor > a { font-weight: 700; }
.ddt-header-shell .ddt-menu-button { display: none; }
.ddt-main-content { min-height: 668px; background: url("../images/content.jpg") repeat; }
.ddt-page-header { width: 100%; padding: 0 !important; background: #fff !important; }
.ddt-page-header > .elementor-container {
  display: grid !important;
  grid-template-columns: 160px 269px 420px;
  width: 1000px !important;
  max-width: 1000px !important;
  height: 200px;
  margin-inline: auto;
  padding-right: 151px;
}
.ddt-page-header > .elementor-container > .elementor-column {
  width: 100% !important;
  min-width: 0;
}
.ddt-page-header .elementor-widget-wrap { padding: 0 !important; }
.ddt-page-header .elementor-widget { margin: 0 !important; }
.ddt-page-header__brand > .elementor-widget-wrap {
  display: flex;
  align-content: center;
  align-items: center;
  height: 100%;
}
.ddt-page-header .ddt-page-header__logo { margin-left: 30px !important; width: 120px !important; }
.ddt-page-header__logo img { display: block; width: 120px; height: auto; }
.ddt-page-header__copy { padding: 8px 9px 0 0 !important; }
.ddt-page-header .ddt-eyebrow {
  margin: 0 0 23px;
  color: #44413a;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
  text-transform: none;
}
.ddt-page-header .elementor-heading-title {
  margin: 0 0 16px !important;
  color: #44413a !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 0 !important;
}
.ddt-page-header p {
  margin: 0 !important;
  color: #44413a !important;
  font-size: 14px !important;
  font-weight: 400;
  line-height: 16px !important;
}
.ddt-page-header__media,
.ddt-page-header__media > .elementor-widget-wrap,
.ddt-page-header__media .elementor-widget,
.ddt-page-header__media .elementor-widget-container {
  width: 420px;
  height: 200px;
  min-height: 0;
}
.ddt-page-header .ddt-slider { width: 420px; height: 200px; min-height: 0; }
.ddt-slider__slide img { animation-duration: 800ms; }
.ddt-slider__controls {
  right: 7px;
  bottom: 7px;
  gap: 4px;
  padding: 1px 4px;
  border-radius: 3px;
  font-size: 11px;
  opacity: 0;
  transition: opacity 160ms;
}
.ddt-slider:hover .ddt-slider__controls,
.ddt-slider:focus-within .ddt-slider__controls { opacity: 1; }
.ddt-slider__controls button { width: 27px; height: 25px; font-size: 18px; }
.ddt-subnav-band {
  min-height: 28px;
  padding: 0 !important;
  background: #f6a13d !important;
}
.ddt-subnav-band > .elementor-container {
  width: 1000px !important;
  max-width: 1000px !important;
  margin-inline: auto;
}
.ddt-subnav-band .elementor-widget-wrap { padding: 0 !important; }
.ddt-subnav-band .elementor-widget { margin: 0 !important; }
.ddt-subnav {
  display: flex;
  align-items: flex-start;
  width: 700px;
  min-height: 28px;
  margin-left: 160px;
}
.ddt-subnav::before {
  content: "»";
  flex: 0 0 60px;
  color: #44413a;
  font-size: 40px;
  font-weight: 700;
  line-height: 24px;
}
.ddt-subnav ul {
  display: flex;
  flex-wrap: wrap;
  gap: 3px 40px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.ddt-subnav a {
  display: block;
  color: #fff !important;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  text-decoration: none;
}
.ddt-subnav a:hover,
.ddt-subnav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 4px; }
.ddt-site .ddt-section {
  padding: 20px 16px;
  color: #44413a;
  background: transparent;
}
.ddt-subnav-band + .ddt-section { padding-top: 36px; }
.home .ddt-subnav-band + .ddt-section { padding-top: 76px; }
.ddt-section > .elementor-container {
  width: 630px !important;
  max-width: 630px !important;
  margin-inline: auto;
  transform: translateX(34px);
}
.ddt-section .elementor-widget-wrap { padding: 0 !important; }
.ddt-section .elementor-widget:not(:last-child) { margin-bottom: 18px; }
.ddt-section .elementor-heading-title {
  margin: 0;
  color: #44413a !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  line-height: 26px !important;
  letter-spacing: 0 !important;
}
.home .ddt-subnav-band + .ddt-section .elementor-heading-title { font-weight: 700 !important; }
.ddt-section p, .ddt-section .ddt-lead {
  color: #44413a;
  font-size: 13px !important;
  line-height: 20px;
}
.ddt-section p { margin: 0 0 20px; }
.ddt-section .ddt-anniversary { font-size: 21px !important; }
.ddt-content-float { float: right; width: 216px; height: 144px !important; object-fit: cover; margin: -14px 0 12px 16px; }
.ddt-section--restored-side > .elementor-container { display: flex; align-items: flex-start; flex-wrap: nowrap; }
.ddt-section--restored-side > .elementor-container > .elementor-column:first-child { width: calc(100% - 216px) !important; flex: 0 0 calc(100% - 216px); min-width: 0; }
.ddt-section--restored-side > .elementor-container > .ddt-restored-image-column { width: 216px !important; flex: 0 0 216px; padding-left: 18px; }
.ddt-restored-image img { max-width: 100%; height: auto !important; object-fit: contain !important; }
.ddt-restored-gallery > .elementor-widget-wrap { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 20px; }
.ddt-restored-gallery .ddt-restored-image { flex: 0 1 auto; width: auto !important; max-width: 100%; margin: 0 !important; }
/* Locations alone: the original has 800px photos overflowing its 630px text column. */
.ddt-locations-original.ddt-section { padding-top: 40px; padding-bottom: 0; }
.ddt-locations-original > .elementor-container > .elementor-column { width: 800px !important; flex: 0 0 800px; }
.ddt-locations-original .ddt-locations-intro { max-width: 630px; margin-bottom: 40px !important; }
.ddt-locations-original .ddt-locations-intro p { font-family: Arial, Helvetica, sans-serif; margin: 0; }
.ddt-locations-title { margin-bottom: 16px !important; }
.ddt-locations-title a { color: #44413a; text-decoration: underline; }
.ddt-locations-original .ddt-locations-photo { margin-bottom: 56px !important; }
.ddt-locations-photo { text-align: left; }
.ddt-locations-photo img { max-width: 100%; height: auto !important; object-fit: contain; }
.ddt-locations-directories.ddt-section { padding-top: 20px; }
.ddt-locations-directories .ddt-locations-title { text-align: center; }
.ddt-locations-directories > .elementor-container { gap: 20px; }
.ddt-locations-directories > .elementor-container > .elementor-column { width: 300px !important; flex: 0 0 300px; }
@media (max-width: 1050px) {
  .ddt-locations-original > .elementor-container > .elementor-column { width: 100% !important; flex-basis: 100%; min-width: 0; }
}
@media (max-width: 780px) {
  .ddt-locations-directories > .elementor-container > .elementor-column { width: 100% !important; flex-basis: 100%; }
  .ddt-locations-original .ddt-locations-photo { margin-bottom: 36px !important; }
}
/* Partner: preserve the source table's 90px picture cell and 10px spacing. */
.ddt-partners-original.ddt-section { padding-top: 40px; }
.ddt-partners-original > .elementor-container > .ddt-partners-list > .elementor-widget-wrap {
  padding: 10px 10px 70px !important; box-sizing: border-box;
}
.ddt-partners-original .ddt-partner-row { width: 100%; margin: 0 0 10px; }
.ddt-partners-original .ddt-partner-row > .elementor-container {
  display: flex; flex-wrap: nowrap; align-items: center; gap: 10px;
  width: 100% !important; max-width: none !important; transform: none;
}
.ddt-partners-original .ddt-partner-mark { width: 90px !important; flex: 0 0 90px; min-width: 0; }
.ddt-partners-original .ddt-partner-copy { width: calc(100% - 100px) !important; flex: 1 1 0; min-width: 0; }
.ddt-partners-original .elementor-widget { margin: 0 !important; }
.ddt-partners-original .ddt-partner-link .elementor-heading-title {
  font-family: "Asap", sans-serif !important; font-size: 16px !important;
  line-height: 20px !important; font-weight: 400 !important;
}
.ddt-partners-original .ddt-partner-link a { color: #44413a; text-decoration: underline; }
.ddt-partners-original .ddt-partner-description p {
  font-family: Arial, Helvetica, sans-serif !important; font-size: 10.666667px !important;
  line-height: 20px !important; color: #44413a; margin: 0 !important;
}
.ddt-partners-original .ddt-partner-logo { text-align: center; line-height: 0; }
.ddt-partners-original .ddt-partner-logo img { max-width: 100%; height: auto !important; object-fit: contain; }
.ddt-partners-original .ddt-partner-row--leading .ddt-partner-mark > .elementor-widget-wrap { padding-top: 20px !important; }
.ddt-partners-original .ddt-partner-row--trailing .ddt-partner-mark > .elementor-widget-wrap { padding-bottom: 20px !important; }
@media (max-width: 780px) {
  .ddt-partners-original .ddt-partner-mark { width: 70px !important; flex-basis: 70px; }
  .ddt-partners-original .ddt-partner-copy { width: calc(100% - 80px) !important; }
  .ddt-partners-original .ddt-partner-description p { font-size: 14px !important; }
  .ddt-partners-original .ddt-partner-link .elementor-heading-title { overflow-wrap: anywhere; }
  .ddt-partners-original .ddt-partner-row { margin-bottom: 20px; }
}
.ddt-site .ddt-card {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  padding: 0 10px;
}
.ddt-card:hover { transform: none; box-shadow: none; }
.ddt-card__body { padding: 8px 0; }
.ddt-site .ddt-button .elementor-button,
.ddt-site .ddt-contact button {
  min-height: 34px;
  border-radius: 2px;
  padding: 7px 14px;
  background: #f6a13d !important;
  color: #44413a !important;
  box-shadow: none;
  font-size: 13px;
  font-weight: 400;
}
.ddt-video-grid { grid-template-columns: 1fr; max-width: 560px; gap: 24px; }
.ddt-video, .ddt-video-stage { border-radius: 0; }
.ddt-video__title { padding: 8px 12px; }
.ddt-contact input, .ddt-contact textarea, .ddt-contact select { border-radius: 2px; padding: 9px 10px; }
.ddt-site-footer, .ddt-footer-band { min-height: 100px; background: #f6a13d !important; }
.ddt-footer-band .elementor-widget-wrap { padding: 0 !important; }
.ddt-footer-band .elementor-widget { margin: 0 !important; }
.ddt-footer-shell {
  width: 706px !important;
  margin-inline: auto;
  padding: 34px 0 0;
  transform: translateX(13px);
}
.ddt-footer-grid { grid-template-columns: 1fr auto; gap: 20px; }
.ddt-footer-shell p, .ddt-footer-shell a, .ddt-footer-band {
  color: #fff !important;
  font-size: 11px;
  line-height: 12px;
}
.ddt-footer-shell p { margin: 0; }
.ddt-footer-shell a { text-decoration: none; }
.ddt-footer-social { display: flex; justify-content: flex-end; margin-top: -14px; }
.ddt-footer-social img { display: block; width: auto; height: 39px; }
.ddt-footer-band .elementor-widget-shortcode {
  width: 706px;
  margin-inline: auto !important;
  transform: translateX(13px);
  text-align: right;
}
.ddt-footer-band .elementor-widget-shortcode a { color: #fff !important; font-size: 11px; text-decoration: none; }
.ddt-legal-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px; }
.ddt-legal-links a:hover, .ddt-legal-links a:focus-visible { text-decoration: underline; }
.ddt-site a:focus-visible, .ddt-site button:focus-visible { outline: 2px solid #31808a; outline-offset: 3px; }

@media (max-width: 1032px) {
  .ddt-header-shell > .elementor-container,
  .ddt-page-header > .elementor-container,
  .ddt-subnav-band > .elementor-container,
  .ddt-footer-band > .elementor-container { width: calc(100% - 32px) !important; }
  .ddt-header-shell .ddt-nav { margin-left: auto; margin-right: auto; max-width: 100%; }
  .ddt-page-header > .elementor-container { grid-template-columns: 130px minmax(0, 1fr) 420px; padding: 0; }
  .ddt-page-header .ddt-page-header__logo { margin-left: 0 !important; }
  .ddt-subnav { margin-inline: auto; max-width: 100%; }
  .ddt-section > .elementor-container { transform: none; }
  .ddt-footer-shell, .ddt-footer-band .elementor-widget-shortcode { max-width: 100%; transform: none; }
  .ddt-page-header .elementor-heading-title { overflow-wrap: anywhere; }
}
@media (max-width: 780px) {
  .ddt-section--restored-side > .elementor-container { flex-wrap: wrap; gap: 16px; }
  .ddt-section--restored-side > .elementor-container > .elementor-column:first-child,
  .ddt-section--restored-side > .elementor-container > .ddt-restored-image-column { width: 100% !important; flex-basis: 100%; padding-left: 0; }
  .ddt-site-header { height: 64px; }
  .ddt-header-shell .ddt-menu-button { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; padding: 7px 16px; border-radius: 2px; font-size: 16px; }
  .ddt-header-shell .ddt-nav { display: none; height: auto; }
  .ddt-menu-open .ddt-header-shell .ddt-nav { display: block; position: absolute; z-index: 50; top: 64px; left: 0; width: 100%; padding: 12px; background: #fff; }
  .ddt-nav__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); height: auto; padding: 0; gap: 4px; }
  .ddt-nav__list a { display: flex; align-items: center; min-height: 44px; padding: 8px 12px; }
  .ddt-header-shell .elementor-widget-html { text-align: right; }
  .ddt-page-header > .elementor-container { grid-template-columns: 120px minmax(0, 1fr); height: auto; }
  .ddt-page-header .ddt-page-header__brand, .ddt-page-header .ddt-page-header__copy { min-height: 200px !important; }
  .ddt-page-header__media { grid-column: 1 / -1; margin-inline: auto; }
  .ddt-page-header__media, .ddt-page-header__media > .elementor-widget-wrap,
  .ddt-page-header__media .elementor-widget, .ddt-page-header__media .elementor-widget-container,
  .ddt-page-header .ddt-slider { width: min(420px, calc(100vw - 32px)); height: min(200px, calc((100vw - 32px) * 0.47619)); }
  .ddt-subnav::before { flex-basis: 30px; }
  .ddt-subnav ul { column-gap: 16px; }
  .ddt-subnav a { display: flex; align-items: center; min-height: 44px; font-size: 16px; }
  .ddt-section > .elementor-container { max-width: 100% !important; }
  .ddt-section .ddt-card { width: 100% !important; padding: 0 0 20px; }
  .ddt-section .elementor-container { flex-wrap: wrap; }
  .ddt-slider__controls { opacity: 1; }
  .ddt-content-float { float: none; width: 100%; height: auto !important; margin: 0 0 16px; }
  .ddt-footer-social { justify-content: flex-start; margin-top: 0; }
  .ddt-footer-grid { grid-template-columns: 1fr; gap: 12px; }
  .ddt-footer-band .elementor-widget-shortcode { text-align: left; padding-bottom: 20px; }
  .ddt-legal-links { justify-content: flex-start; gap: 0 16px; }
  .ddt-legal-links > span { display: none; }
  .ddt-footer-band .ddt-legal-links a { display: flex; align-items: center; min-height: 44px; font-size: 14px; }
  .ddt-footer-shell p { font-size: 13px !important; line-height: 18px; }
  .ddt-section p, .ddt-section .ddt-lead { font-size: 15px !important; line-height: 22px; }
  .ddt-section .elementor-widget-container { overflow-wrap: anywhere; }
  .ddt-section img, .ddt-section iframe, .ddt-section video { max-width: 100%; }
  .ddt-contact input:not([type=checkbox]), .ddt-contact textarea, .ddt-contact select { max-width: 100%; font-size: 16px; }
  .home .ddt-subnav-band + .ddt-section { padding-top: 40px; }
}
@media (max-width: 360px) {
  .ddt-page-header .elementor-heading-title { font-size: 18px !important; line-height: 22px !important; }
}
