/* Standalone behaviour for the imported layout. */
.preview-submenu {
  padding: 0 .4rem;
  color: inherit;
  background: transparent;
  border: 0;
  line-height: 1;
}
.elementor-nav-menu--main li.menu-item-has-children { align-items: center; }
.elementor-nav-menu--main .menu-item-has-children > .sub-menu {
  display: none;
  z-index: 30;
  min-width: 210px;
}
.elementor-nav-menu--main .menu-item-has-children:is(:hover, :focus-within, .preview-submenu-open) > .sub-menu { display: block; }
.elementor-nav-menu--dropdown.preview-menu-open { transform: none; max-height: 70vh; overflow-y: auto; visibility: visible; }
.elementor-nav-menu--dropdown[aria-hidden="true"] { display: none; }
.elementor-nav-menu--dropdown .menu-item-has-children { position: relative; }
.elementor-nav-menu--dropdown .menu-item-has-children > .preview-submenu { position: absolute; right: 12px; top: 14px; }
.elementor-nav-menu--dropdown .menu-item-has-children:not(.preview-submenu-open) > .sub-menu { display: none; }
.elementor-nav-menu--dropdown .menu-item-has-children.preview-submenu-open > .sub-menu { display: block; }
@media (max-width: 1024px) {
  .elementor-widget-nav-menu .elementor-menu-toggle {
    min-width: 44px;
    min-height: 44px;
    justify-content: center;
  }
  .elementor-widget-nav-menu .elementor-nav-menu--dropdown.preview-menu-open {
    top: 100%;
    inset-inline: auto 0;
    width: min(20rem, calc(100vw - 3rem));
    max-height: 70vh;
  }
  .elementor-nav-menu--dropdown .menu-item-has-children > .preview-submenu {
    top: 0;
    right: 4px;
    min-width: 44px;
    min-height: 44px;
  }
  .elementor-nav-menu--dropdown .menu-item-has-children > a { padding-inline-end: 52px; }
}
.preview-quote-card {
  max-width: 700px;
  margin: auto;
  border-radius: 13px;
  padding: 18px;
  background: #fff;
  color: #5a6477;
  box-shadow: 0 4px 18px #10182814;
  font: 14px/1.35 system-ui, sans-serif;
}
.preview-quote-tabs { display: flex; border-bottom: 1px solid #e1e4e9; margin-bottom: 14px; }
.preview-quote-tabs button {
  flex: 1;
  background: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: 2px solid transparent;
  color: inherit;
  padding: 10px;
  font: inherit;
}
.preview-quote-tabs button[aria-pressed="true"] { color: #dc4439; border-bottom-color: #ee5a4e; }
.preview-quote-card form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 10px; }
.preview-quote-card label { display: grid; gap: 4px; text-transform: uppercase; font-size: 11px; }
.preview-quote-card label[hidden] { display: none; }
.preview-quote-card input { min-width: 0; width: 100%; color: #344054; border: 1px solid #cfd5df; background: white; border-radius: 8px; padding: 10px; font: 14px system-ui, sans-serif; }
.preview-quote-card .preview-quote-submit { grid-column: 1 / -1; padding: 11px; background: #ee5a4e; color: white; border: 0; border-radius: 8px; }
.preview-quote-card small { display: block; text-align: center; margin-top: 10px; color: #566177; }
.preview-quote-card small a { color: inherit; text-decoration: underline; }
.preview-trip-summary { margin: 0 0 1rem; padding: 1rem 1.25rem; background: #fff5f4; border: 1px solid #ffd1cb; border-radius: 8px; }
.preview-trip-summary dl { display: grid; grid-template-columns: auto 1fr; gap: 4px 16px; margin: .5rem 0 0; }
.preview-trip-summary dt { font-weight: 700; }
.preview-trip-summary dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 420px) {
  .preview-quote-card { padding: 12px; }
  .preview-quote-card form { grid-template-columns: minmax(0, 1fr); }
  .preview-quote-card input,
  .lcch-area-v2 .lcch-area-form input { font-size: 16px; }
  .preview-quote-card :is(input, .preview-quote-submit),
  .preview-quote-tabs button { min-height: 44px; }
}
.elementor-nav-menu--main .preview-submenu { color: var(--e-global-color-primary, #ee5a4e); }
[data-preview-page="home"] .elementor-nav-menu--main .preview-submenu { color: #fff; }
.elementor-nav-menu--main .preview-submenu:hover,
.elementor-nav-menu--dropdown .preview-submenu:hover,
.elementor-nav-menu--main .preview-submenu:focus-visible,
.elementor-nav-menu--dropdown .preview-submenu:focus-visible { background: transparent; color: #ee5a4e; }

.preview-carousel .swiper-wrapper {
  width: 100%;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
}
.preview-carousel .swiper-slide {
  flex: 0 0 calc(100% / var(--preview-slides, 1));
  width: auto;
  scroll-snap-align: start;
}
.preview-carousel .elementor-swiper-button, .preview-carousel .swiper-pagination { display: none; }
.preview-carousel-controls { display: flex; justify-content: center; gap: .5rem; margin-top: .5rem; }
.preview-carousel-controls button { border: 1px solid #e2e5e9; color: #47221d; background: #fff; border-radius: 5px; padding: .3rem .7rem; line-height: 1; }
.preview-carousel-controls button:hover { background: #fdd0cb; }
.preview-form-note { margin-top: .65rem; font-size: .85em; color: #4e5663; }
.preview-blog-search { padding: 1.5rem; margin: 1rem auto; max-width: 1140px; }
@media (min-width: 768px) {
  [data-preview-page="quote"] .elementor-element-4ae1dc9 > .e-con-inner {
    padding-block-start: 40px;
  }
  .lcch-area-hero .lcch-area-media > .lcch-area-mini-stats {
    align-self: start;
  }
}
@media (max-width: 767px) {
  .preview-carousel .swiper-slide { flex-basis: 100%; }

  [data-preview-page="home"] .elementor-element-0e7c31c {
    min-height: clamp(180px, 54vw, 320px);
  }
  [data-preview-page="home"] .elementor-element-4de1c99 p { text-align: start; }
  [data-preview-page="quote"] .elementor-element-4ae1dc9 > .e-con-inner {
    padding-block-start: 24px;
  }
  [data-preview-page="quote"] #iframeContainer {
    height: 550px;
  }
  [data-preview-page="quote"] #formIframe {
    /* Clip the hosted form's horizontal scrollbar while retaining vertical scrolling. */
    height: calc(100% + 24px);
  }
  [data-preview-page="oxford"] .lcch-area-hero .lcch-area-photo { min-height: 0; }
  [data-preview-page="oxford"] .lcch-area-hero .lcch-area-photo img {
    height: auto;
    aspect-ratio: auto;
  }
  [data-preview-page="oxford"] .lcch-area-hero .lcch-area-mini-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  [data-preview-page="oxford"] .lcch-area-hero .lcch-area-mini-stats > div {
    min-height: 0;
    padding: 12px;
  }
}
