/* Local restoration layer; the original GoDaddy page CSS loads first. */
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { min-width: 0; margin: 0; }
body { background: #fff; color: #3c3c3c; font-family: 'Fjalla One', Arial, sans-serif; font-size: 18px; line-height: 1.6; }
button, input, select, textarea { font: inherit; }
img, svg, video { max-width: 100%; }
img { height: auto; }
button, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid #a78745;
  outline-offset: 4px;
}
.restore-skip {
  position: fixed;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
.restore-skip:focus {
  inset: 10px auto auto 10px;
  width: auto;
  height: auto;
  max-width: calc(100% - 20px);
  margin: 0;
  padding: 10px 16px;
  clip: auto;
  clip-path: none;
  white-space: normal;
  color: #111;
  background: #fff;
  z-index: 10000;
}

/* Common chrome replaces the remote GoDaddy navigation runtime. */
.restore-header {
  position: relative;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px 30px;
  width: 100%;
  padding: 22px max(24px, calc((100% - 1280px) / 2));
  border-bottom: 1px solid #363636;
  background: #080808;
  color: #fff;
}
.restore-brand {
  display: block;
  flex: 0 1 300px;
  min-width: 0;
  max-width: 300px;
  color: #fff;
  font-family: 'Archivo Black', Arial, sans-serif;
  font-size: clamp(20px, 1.8vw, 27px);
  font-weight: 400;
  line-height: 1.25;
  text-decoration: none;
  overflow-wrap: anywhere;
}
#restoreNavigation { min-width: 0; }
#restoreNavigation ul { list-style: none; margin: 0; padding: 0; }
#restoreNavigation > ul { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 4px 21px; }
#restoreNavigation li { list-style: none; margin: 0; padding: 0; }
#restoreNavigation a, #restoreNavigation summary {
  display: block;
  padding: 10px 0;
  color: inherit;
  font-size: 17px;
  line-height: 1.5;
  text-decoration: none;
  cursor: pointer;
}
#restoreNavigation a:hover { text-decoration: underline; text-underline-offset: 5px; }
#restoreNavigation a[aria-current="page"] { text-decoration: underline; text-underline-offset: 5px; }
.restore-nav-group { position: relative; }
.restore-nav-group > summary { list-style: none; }
.restore-nav-group > summary::-webkit-details-marker { display: none; }
.restore-nav-group > summary::after { content: '⌄'; display: inline-block; margin-left: 7px; }
.restore-nav-group[open] > summary::after { transform: rotate(180deg); }
#restoreNavigation .restore-nav-group > ul {
  position: absolute;
  z-index: 30;
  top: calc(100% + 5px);
  left: -18px;
  width: max-content;
  min-width: 200px;
  max-width: min(300px, calc(100vw - 32px));
  padding: 10px 18px;
  border: 1px solid #555;
  background: #151515;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
}
#restoreNavigation .restore-nav-group > ul a { padding: 10px 0; white-space: normal; }
#restoreMenuToggle {
  display: none;
  align-items: center;
  justify-content: center;
  min-width: 68px;
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid #aaa;
  border-radius: 2px;
  background: transparent;
  color: #fff;
  font-size: 17px;
  cursor: pointer;
}
@media (max-width: 1100px) {
  .restore-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; padding: 18px 24px; }
  .restore-brand { max-width: 320px; font-size: 23px; }
  body.js-ready #restoreMenuToggle { display: inline-flex; }
  #restoreNavigation { grid-column: 1 / -1; width: 100%; }
  #restoreNavigation > ul { display: block; }
  #restoreNavigation > ul > li { border-top: 1px solid #3e3e3e; }
  #restoreNavigation a, #restoreNavigation summary { padding: 12px 0; font-size: 18px; }
  #restoreNavigation .restore-nav-group > ul {
    position: static;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 12px;
    padding: 0 18px;
    border: 0;
    border-left: 2px solid #5b5b5b;
    box-shadow: none;
  }
}
@media (max-width: 420px) {
  .restore-header { padding: 16px; gap: 14px; }
  .restore-brand { font-size: 20px; }
}

/* Original hero wording and photograph, with a responsive text box. */
.restore-hero {
  display: grid;
  place-items: center;
  position: relative;
  isolation: isolate;
  min-height: 570px;
  min-height: min(720px, 76vh);
  padding: 70px 24px;
  background-color: #353c3d;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  text-align: center;
}
.restore-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: rgba(0, 0, 0, .27); }
.restore-hero > div { width: 100%; max-width: 900px; margin: 0 auto; }
.restore-hero h1 { margin: 0 auto 23px; max-width: 20ch; font-family: 'Archivo Black', Arial, sans-serif; font-size: clamp(34px, 4.2vw, 58px); font-weight: 400; line-height: 1.18; color: inherit; overflow-wrap: anywhere; }
.restore-hero p { margin: 0 0 26px; color: inherit; font-size: clamp(22px, 2.1vw, 30px); }
.restore-hero a:not(.restore-button) { color: inherit; }
.restore-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 48px;
  padding: 12px 28px;
  border: 1px solid #3c3c3c;
  border-radius: 2px;
  background: #3c3c3c;
  color: #fff;
  font-family: 'Fjalla One', Arial, sans-serif;
  font-size: 18px;
  line-height: 1.45;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  white-space: normal;
}
.restore-button:hover { background: #202020; }
.restore-hero .restore-button { color: #151515; border-color: #fff; background: #fff; }
.restore-hero .restore-button:hover { background: #e8e8e8; }
@media (max-width: 767px) {
  .restore-hero { min-height: 440px; padding: 55px 20px; }
  .restore-hero h1 { font-size: clamp(30px, 8vw, 42px); }
}

/* Keep archived content classes; remove only runtime media visibility dependencies. */
main { min-width: 0; }
main .widget, main [data-ux="Grid"], main [data-ux="GridCell"],
main [data-ux="ContainerSplit"], main [data-ux="SplitItem"], main [data-ux="SplitItemImage"] { min-width: 0; }
.widget [data-ux="Container"] { max-width: 100% !important; }
main [data-ux="GridCell"] { max-width: 100%; }
main [data-ux="ContentText"], main [data-ux="ContentCardText"], main [data-ux="FeaturedText"],
main [data-ux="Details"], main p, main li, main h1, main h2, main h3, main h4 { overflow-wrap: anywhere; }
main img[data-ux="Image"], main img[data-lazyimg], main img[data-aid^="GALLERY_IMAGE"] {
  opacity: 1 !important;
  visibility: visible !important;
  max-width: 100%;
  height: auto;
  animation: none !important;
  transition: none;
}
main [data-ux="ContentCardWrapperImage"] { max-width: 100%; }
.restore-static-background {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  background-repeat: no-repeat;
  background-size: cover;
}
[data-ux="scaler"] { display: none !important; }
.widget-footer [data-ux="Grid"] { margin-left: 0; margin-right: 0; flex-wrap: wrap; }
.widget-footer [data-ux="GridCell"] { min-width: 0; max-width: 100%; }
@media (max-width: 767px) {
  main .widget [data-ux="Grid"] { margin-left: 0 !important; margin-right: 0 !important; }
  main .widget [data-ux="GridCell"] { width: 100%; max-width: 100%; flex-basis: 100%; padding-left: 0 !important; padding-right: 0 !important; }
  main [data-ux="ContainerSplit"] { flex-direction: column; }
  main [data-ux="SplitItem"], main [data-ux="SplitItemImage"] { width: 100%; max-width: 100%; flex-basis: auto; }
  main [data-ux="SplitItemImage"] { min-height: 340px; }
}

/* All recovered photographs exist in HTML; JavaScript optionally shows batches. */
.restore-gallery-section > h2 {
  margin: 0;
  padding: 48px 24px 8px;
  color: #333;
  font-family: 'Archivo Black', Arial, sans-serif;
  font-size: clamp(25px, 3vw, 34px);
  font-weight: 400;
  line-height: 1.35;
  text-align: center;
  overflow-wrap: anywhere;
}
.restore-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: min(1200px, calc(100% - 48px));
  margin: 28px auto 20px;
}
.restore-gallery > figure { min-width: 0; margin: 0; }
.restore-gallery a[data-gallery] {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  border: 1px solid #e2e2df;
  background: #f1f1ee;
  overflow: hidden;
  cursor: zoom-in;
}
.restore-gallery a[data-gallery] img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  margin: 0;
  object-fit: contain;
  opacity: 1 !important;
  visibility: visible !important;
}
.restore-gallery figcaption { margin: 10px 0 0; font-size: 16px; overflow-wrap: anywhere; }
#restoreGalleryStatus { margin: 16px 24px 12px; color: #555; font-size: 16px; text-align: center; }
#restoreGalleryMore { display: block; min-height: 48px; margin: 0 auto 35px; padding: 11px 28px; border: 1px solid #3c3c3c; border-radius: 2px; color: #fff; background: #3c3c3c; font-size: 18px; cursor: pointer; }
body:not(.js-ready) #restoreGalleryMore { display: none; }
@media (max-width: 900px) { .restore-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .restore-gallery { width: calc(100% - 32px); grid-template-columns: minmax(0, 1fr); gap: 16px; } }

#restoreImageDialog {
  width: min(1140px, calc(100vw - 28px));
  max-width: calc(100vw - 28px);
  max-height: calc(100vh - 28px);
  max-height: calc(100dvh - 28px);
  margin: auto;
  padding: 16px;
  border: 1px solid #777;
  border-radius: 3px;
  background: #fff;
  color: #333;
  overflow: auto;
}
#restoreImageDialog::backdrop { background: rgba(0, 0, 0, .84); }
.restore-dialog-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 14px; }
.restore-dialog-toolbar button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 14px;
  border: 1px solid #aaa;
  border-radius: 2px;
  background: #f4f4f1;
  color: #222;
  font-size: 17px;
  cursor: pointer;
}
.restore-dialog-toolbar [data-dialog-close] { margin-left: auto; }
.restore-image-position { font-size: 15px; white-space: nowrap; }
#restoreDialogImage { display: block; width: auto; height: auto; max-width: 100%; max-height: 74vh; max-height: 74dvh; margin: auto; object-fit: contain; }
#restoreDialogCaption { margin: 12px 0 0; font-size: 17px; line-height: 1.55; overflow-wrap: anywhere; }
#restoreDialogCaption:empty { margin: 0; }
body.restore-dialog-open { overflow: hidden; }

/* Native FAQ details work with or without the restoration script. */
details.restore-accordion {
  clear: both;
  width: 100%;
  max-width: 1050px;
  margin: 0 auto 15px;
  padding: 0;
  border: 1px solid #d8d8d6;
  background: #fff;
  color: #333;
  overflow: visible;
}
.restore-accordion > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 24px;
  list-style: none;
  font-family: 'Archivo Black', Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.restore-accordion > summary::-webkit-details-marker { display: none; }
.restore-accordion > summary::after { content: '+'; flex: 0 0 20px; font-family: Arial, sans-serif; font-size: 25px; font-weight: 400; text-align: center; }
.restore-accordion > summary > svg { display: none; }
.restore-accordion > summary h4, .restore-accordion > summary h3 { margin: 0; }
.restore-accordion[open] > summary { border-bottom: 1px solid #d8d8d6; background: #f5f5f3; }
.restore-accordion[open] > summary::after { content: '−'; }
.restore-accordion__content, .restore-accordion[open] > .accordion-answer,
.restore-accordion[open] > div {
  display: block !important;
  max-height: none !important;
  height: auto !important;
  padding: 20px 24px;
  overflow: visible !important;
  opacity: 1 !important;
}
.restore-accordion__content > :first-child { margin-top: 0; }
.restore-accordion__content > :last-child { margin-bottom: 0; }
@media (max-width: 520px) {
  .restore-accordion > summary { padding: 17px 16px; font-size: 16px; }
  .restore-accordion__content, .restore-accordion[open] > .accordion-answer, .restore-accordion[open] > div { padding: 18px 16px; }
}

/* Archive notes, disabled forms, and a map link use a quiet, neutral treatment. */
.restore-note, .restore-archive-note {
  margin: 0;
  padding: 11px max(20px, calc((100% - 1160px) / 2));
  border-bottom: 1px solid #dddcd6;
  background: #efefeb;
  color: #50504a;
  font-family: Arial, sans-serif;
  font-size: 12px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
.restore-note a, .restore-archive-note a { color: inherit; text-decoration: underline; }
.restore-note p, .restore-archive-note p { margin: 0; font: inherit; color: inherit; }
.restore-panel, .restore-form-notice {
  display: block;
  width: 100%;
  max-width: 1100px;
  margin: 24px auto;
  padding: 22px 26px;
  border: 1px solid #d8d8d2;
  background: #f7f7f3;
  color: #44443e;
  font-size: 17px;
  line-height: 1.7;
  text-align: left;
  overflow-wrap: anywhere;
}
.restore-panel > :first-child, .restore-form-notice > :first-child { margin-top: 0; }
.restore-panel > :last-child, .restore-form-notice > :last-child { margin-bottom: 0; }
.restore-panel a, .restore-form-notice a { color: inherit; text-decoration: underline; }
.restore-panel .restore-button { color: #fff; text-decoration: none; }
.restore-map { width: min(1100px, calc(100% - 48px)); text-align: center; margin: 40px auto; }
.restore-map h2 { font-family: 'Archivo Black', Arial, sans-serif; font-size: 25px; font-weight: 400; }
form[data-archive-form] { min-width: 0; max-width: 100%; }
form[data-archive-form] fieldset { min-width: 0; max-width: 100%; margin: 0; padding: 0; border: 0; opacity: 1; }
form[data-archive-form] input, form[data-archive-form] textarea, form[data-archive-form] select { min-width: 0; max-width: 100%; opacity: 1; }
form[data-archive-form] button { cursor: not-allowed; }
.restore-unavailable-image { display: grid; place-items: center; min-height: 180px; padding: 24px; border: 1px solid #d6d6d3; background: #eee; color: #555; text-align: center; }
.restore-document { width: min(100%, 1040px); margin: 0 auto; padding: 55px 24px 65px; }
.restore-document h1 { margin: 0 0 28px; font-family: 'Archivo Black', Arial, sans-serif; font-size: clamp(28px, 4vw, 40px); font-weight: 400; line-height: 1.3; }
.restore-document h2 { margin: 32px 0 16px; font-family: 'Archivo Black', Arial, sans-serif; font-size: 23px; font-weight: 400; }
.restore-document p, .restore-document li { overflow-wrap: anywhere; }
.restore-document a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.restore-document a.restore-button { color: #fff; text-decoration: none; }
.restore-document ul { padding-left: 24px; }
.restore-document li { margin-bottom: 12px; }
.restore-footer-links { max-width: 1160px; margin: 0 auto; padding: 24px; font-family: Arial, sans-serif; font-size: 13px; line-height: 1.8; text-align: center; }
.restore-footer-links a { color: inherit; text-decoration: underline; }
@media (max-width: 520px) {
  .restore-panel, .restore-form-notice { padding: 18px; }
  .restore-map { width: calc(100% - 32px); }
  .restore-document { padding: 36px 20px 45px; }
  .restore-dialog-toolbar { gap: 6px; }
  .restore-dialog-toolbar button { padding: 8px 10px; }
  #restoreImageDialog { padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
