/*
 * Archived-site nav styling.
 *
 * The capture contains Elementor's default (unstyled) dropdown CSS only — the
 * site never customised the burger dropdown, so it fell back to a plain white
 * panel with default link colours. These rules restyle it in the site's own
 * palette, taken from the archived kit:
 *   teal #12AAA0 · dark teal #006C6D · cream #F9F8D5 · coral #F16071
 */

/* ---- burger toggle ---- */
.elementor-menu-toggle {
  border-radius: 6px;
  transition: background-color .2s ease, transform .2s ease;
}
.elementor-menu-toggle:hover { background-color: rgba(249, 248, 213, .15) !important; }
.elementor-menu-toggle:focus-visible {
  outline: 2px solid #F9F8D5;
  outline-offset: 2px;
}
.elementor-menu-toggle.elementor-active { transform: rotate(90deg); }
.elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close { transform: rotate(-90deg); }

/* ---- dropdown panel ---- */
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  margin-top: 0;
  background-color: #12AAA0;
  border-bottom: 1px solid rgba(249, 248, 213, .28);
  box-shadow: 0 14px 28px rgba(0, 44, 42, .22);
}
.elementor-nav-menu--dropdown .elementor-nav-menu {
  padding: 6px 0;
  margin: 0 auto;
  max-width: 1503px;   /* matches the header container width */
}
.elementor-nav-menu--dropdown .elementor-nav-menu li { margin: 0; }

/* items: real links */
.elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item {
  display: block;
  padding: 15px 34px;
  color: #F9F8D5;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: .3px;
  line-height: 1.3;
  background: none;
  border-left: 3px solid transparent;
  transition: background-color .2s ease, border-color .2s ease, padding-left .2s ease;
}
.elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item:hover,
.elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item:focus-visible,
.elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item.elementor-item-active {
  background-color: rgba(249, 248, 213, .13);
  border-left-color: #F16071;
  padding-left: 40px;
  color: #FFFFFF;
}
.elementor-nav-menu--dropdown .elementor-nav-menu a.elementor-item:focus-visible {
  outline: 2px solid #F9F8D5;
  outline-offset: -2px;
}
/* separators between rows */
.elementor-nav-menu--dropdown .elementor-nav-menu li + li {
  border-top: 1px solid rgba(249, 248, 213, .16);
}

/* menu entries that have no destination in the archive render as bare <li>;
   present them as non-interactive labels instead of unstyled stray text */
.elementor-nav-menu--dropdown .elementor-nav-menu li:not(:has(> a)) {
  padding: 15px 34px;
  color: rgba(249, 248, 213, .6);
  font-weight: 600;
  font-size: 16px;
  letter-spacing: .3px;
  line-height: 1.3;
  cursor: default;
}

/* ---- horizontal (desktop) nav: harmonise the link-less item ---- */
.elementor-nav-menu--main .elementor-nav-menu li:not(:has(> a)) {
  color: #F9F8D5;
  font-weight: 600;
  opacity: .65;
  cursor: default;
  padding: 13px 20px;
  display: flex;
  align-items: center;
}

/* ---- rebuilt Catering / Newsletter pages ----
   These reuse the Contact page's Elementor classes so they inherit its styling;
   only the media block and the bullet lists need rules of their own. */
.archived-page .archived-page-media {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(0, 44, 42, .28);
}
.archived-page .elementor-widget-text-editor ul {
  margin: 0 0 1em;
  padding-left: 0;
  list-style: none;
}
.archived-page .elementor-widget-text-editor ul li {
  position: relative;
  padding-left: 26px;
  margin-bottom: .6em;
  line-height: 1.6;
}
.archived-page .elementor-widget-text-editor ul li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .62em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #F16071;
}
.archived-page .elementor-widget-text-editor a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.archived-page .elementor-widget-text-editor a:hover { color: #F16071; }
.archived-page .elementor-widget-text-editor small { opacity: .75; font-size: .85em; }

@media (max-width: 767px) {
  .archived-page .archived-page-media { margin-bottom: 24px; }
}

/* ---- page-title card alignment (Contact / Catering / Newsletter) ----
   The archived rule carries `margin: 0 0 0 -100px` on this heading's container,
   which pulls the white card 100px left of its column. That makes the title hang
   out of line with the eyebrow, divider, body copy and form below it, and bleeds
   the card over the neighbouring image/map column. Dropping just the negative
   left margin lines the card up with the rest of the column; the original
   background, padding and shadow are left untouched. */
.elementor-5 .elementor-element.elementor-element-22069d6b > .elementor-widget-container {
  margin-left: 0;
}
