/* Lindenallee guest pages: shared spacing, typography and responsive rhythm.
   Loaded last on custom pages; front-page.php includes it after its own styles. */
:root {
  --la-layout-max: 1440px;
  --la-layout-gutter: clamp(24px, 5vw, 80px);
  --la-section-space: clamp(56px, 5.5vw, 84px);
  --la-display: Linden, Georgia, 'Times New Roman', serif;
  --la-body: Arial, Helvetica, sans-serif;
}

/* Hello Elementor adds 10px around the whole page at phone widths. */
body.la-editorial .site-main { padding-inline: 0 !important; }

body.la-editorial :is(.la-wrap, .lr-page .lr-wrap, .la-pg-wrap, .la-excursions .ex-wrap) {
  width: min(var(--la-layout-max), calc(100% - 2 * var(--la-layout-gutter)));
  margin-inline: auto;
}
body.la-editorial.la-launch :is(h1, h2, h3),
body.la-editorial .lr-page :is(h1, h2, h3),
body.la-editorial .la-excursions :is(h1, h2, h3) {
  font-family: var(--la-display) !important;
}
body.la-editorial .lr-page :is(.lr-facts strong, .lr-room-line, .lr-related-grid a span),
body.la-editorial .la-excursions :is(.ex-results-line strong, .ex-season-tile strong, .ex-season-number, .ex-season-item strong, .ex-season-related strong) {
  font-family: var(--la-display);
}
body.la-editorial .la-page :is(p, li),
body.la-editorial .lr-page p,
body.la-editorial .la-excursions :is(p, li) {
  line-height: 1.7;
}
body.la-editorial :is(.la-page, .lr-page, .la-pg, .la-excursions) :is(h1, h2, h3, p) {
  overflow-wrap: break-word;
}

/* Shared edges and vertical spacing across the homepage and page templates. */
body.la-editorial .seepanorama-page :is(.intro, .rooms, .morning, .experiences, .gather, .faq, .booking, .footer) {
  padding: var(--la-section-space) max(var(--la-layout-gutter), calc((100% - var(--la-layout-max)) / 2));
}
body.la-editorial .seepanorama-page .park {
  padding-inline: max(var(--la-layout-gutter), calc((100% - var(--la-layout-max)) / 2));
}
body.la-editorial .la-page .la-section,
body.la-editorial .la-page-angebote .la-section,
body.la-editorial .lr-page .lr-section {
  padding-block: var(--la-section-space);
}
body.la-editorial .la-page > section { margin-block: 0; }
body.la-editorial .la-page .la-page-intro { padding-block: clamp(36px, 4vw, 56px) 28px; }
body.la-editorial .la-page > .la-page-intro + .la-section { padding-top: 24px; }
body.la-editorial .la-pg-context,
body.la-editorial .la-pg-page .la-pg-complete {
  padding-block: var(--la-section-space);
}
body.la-editorial .la-excursions :is(.ex-categories, .ex-season-teaser, .ex-related, .ex-detail-faq, .ex-season-faq) {
  padding-block: var(--la-section-space);
}
body.la-editorial .seepanorama-page .text { font-size: 16px; line-height: 1.75; }
body.la-editorial .seepanorama-page .eyebrow { font-size: 11px; }
body.la-editorial .seepanorama-page .experience-grid p { font-size: 15px; line-height: 1.7; }
body.la-editorial .seepanorama-page .faq details p { font-size: 15px; line-height: 1.7; }

/* Room overview: give headings and images a deliberate, repeatable gap. */
body.la-editorial .lr-page .lr-section-head { gap: 48px; margin-bottom: 36px; }
body.la-editorial .lr-page .lr-section-head h2 { margin-bottom: 0; max-width: 12ch; text-wrap: balance; }
body.la-editorial .lr-page .lr-section-head > p { margin-bottom: 3px; max-width: 37ch; }
body.la-editorial .lr-page .lr-kicker { margin-bottom: 15px !important; }
body.la-editorial .lr-page .lr-included-grid h2 { max-width: 11ch; text-wrap: balance; }
body.la-editorial .lr-page .lr-facts strong { font-size: clamp(22px, 2vw, 29px); }
body.la-editorial .lr-page .lr-facts p { font-size: 16px; }
body.la-editorial .lr-page .lr-photo-grid { gap: 12px; }
body.la-editorial .lr-page .lr-photo-grid img { height: clamp(260px, 28vw, 390px); }
body.la-editorial .lr-page .lr-idea p { min-height: 0; }
body.la-editorial .la-pg-stage { background: #203b34; }

/* The tablet rail covered imagery and text. Its existing mobile bar scales well. */
@media (max-width: 1100px) {
  body.la-editorial .ex-local-nav > .ex-wrap { display: flex; align-items: center; gap: 24px; min-height: 64px; }
  body.la-editorial .ex-local-nav > .ex-wrap > span { flex: none; white-space: nowrap; }
  body.la-editorial .ex-local-nav > .ex-wrap > div { display: flex; flex-wrap: wrap; gap: 0 20px; min-width: 0; }
  body.la-editorial .ex-local-nav a { flex: none; white-space: nowrap; display: inline-flex; align-items: center; min-height: 44px; }
  body.la-editorial { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  body.la-editorial .le-side-actions {
    top: auto; right: 0; bottom: 0; left: 0; transform: none;
    width: 100%; height: calc(60px + env(safe-area-inset-bottom));
    padding-bottom: env(safe-area-inset-bottom); flex-direction: row; gap: 0;
    filter: drop-shadow(0 -4px 14px #2038232d);
  }
  body.la-editorial .le-side-actions a,
  body.la-editorial .le-side-actions a:first-child {
    width: 16.6667%; height: 60px; margin: 0; border: 0;
    border-right: 1px solid #ffffff35;
  }
  body.la-editorial .le-side-actions a:last-child { border-right: 0; margin: 0; }
  body.la-editorial .le-side-actions a:hover,
  body.la-editorial .le-side-actions a:focus-visible { transform: none; }
  body.la-editorial .le-side-actions a > span { display: none; }
}

@media (max-width: 1000px) {
  body.la-editorial .lr-page .lr-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.la-editorial .lr-page .lr-photo-grid img { width: 100%; height: 245px; }
  body.la-editorial .lr-page .lr-photo-grid img:first-child { grid-column: 1 / -1; height: 320px; }
  body.la-editorial .lr-page .lr-included-grid,
  body.la-editorial .lr-page .lr-faq-grid { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  body.la-editorial .lr-page .lr-included-grid h2 { max-width: 15ch; }
  body.la-editorial .lr-page .lr-ideas-grid,
  body.la-editorial .lr-page .lr-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.la-editorial .la-offers-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  body.la-editorial .ex-local-nav > .ex-wrap { align-items: stretch; flex-direction: column; gap: 0; padding-block: 10px; }
  body.la-editorial .ex-local-nav > .ex-wrap > span { font-size: 11px; }
  body.la-editorial .seepanorama-page .experience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.la-editorial .seepanorama-page .experience-grid article:nth-child(n) { padding-top: 0; }
  body.la-editorial .la-offers-hero-grid,
  body.la-editorial .la-offers-intro-grid,
  body.la-editorial .la-offers-experience-grid,
  body.la-editorial .la-offers-gift-grid,
  body.la-editorial .la-offers-faq-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  body.la-editorial .la-offers-experience:nth-child(even) .la-offers-experience-figure { order: 0; }
  body.la-editorial .la-offers-hero-figure { height: min(58vw, 450px); min-height: 0; }
  body.la-editorial .la-offers-intro-grid > p { max-width: 65ch; }
}

@media (max-width: 700px) {
  body.la-editorial .ex-local-nav > .ex-wrap { align-items: stretch; flex-direction: column; gap: 2px; padding-block: 9px; }
  body.la-editorial .ex-local-nav > .ex-wrap > div { gap: 0 18px; }
  body.la-editorial .lr-page .lr-section-head { display: block; margin-bottom: 28px; }
  body.la-editorial .lr-page .lr-section-head h2 { max-width: none; }
  body.la-editorial .lr-page .lr-section-head > p { margin-top: 17px; max-width: 54ch; }
  body.la-editorial .lr-page .lr-photo-grid img { height: 155px; }
  body.la-editorial .lr-page .lr-photo-grid img:first-child { height: 245px; }
  body.la-editorial .lr-page .lr-ideas-grid { grid-template-columns: minmax(0, 1fr); }
  body.la-editorial .lr-page .lr-facts { gap: 0 22px; }
  body.la-editorial .lr-page .lr-facts > div { padding-block: 19px; }
  body.la-editorial .la-offers-plan-grid { grid-template-columns: minmax(0, 1fr); }
  body.la-editorial .la-offers-hero-figure { margin-inline: calc(-1 * var(--la-layout-gutter)); height: 330px; }
}

@media (max-width: 650px) {
  body.la-editorial .seepanorama-page .experience-grid { grid-template-columns: minmax(0, 1fr); }
  body.la-editorial .seepanorama-page .experience-grid article figure { height: 235px !important; }
  body.la-editorial .seepanorama-page .faq details p { font-size: 15px; }
  body.la-editorial .lr-overview .lr-hero h1 { font-size: clamp(43px, 11vw, 56px) !important; }
  body.la-editorial .lr-page .lr-facts strong { font-size: 22px; }
}

@media (max-width: 420px) {
  body.la-editorial .la-pg-hero h1 { font-size: clamp(36px, 10vw, 42px) !important; }
  body.la-editorial .lr-page .lr-facts { grid-template-columns: minmax(0, 1fr); }
  body.la-editorial .lr-page .lr-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.la-editorial .lr-page .lr-photo-grid img { height: 130px; }
  body.la-editorial .lr-page .lr-photo-grid img:first-child { height: 205px; }
}

@media (max-width: 360px) {
  body.la-editorial .le-menu-top { padding-inline: 16px; }
  body.la-editorial .le-menu-wordmark { font-size: 22px; }
  body.la-editorial .le-menu-close { font-size: 0; min-width: 44px; min-height: 44px; justify-content: center; }
  body.la-editorial .le-menu-close > span { font-size: 30px; }
}

/* Small editorial labels remain legible on the light hotel backgrounds. */
body.la-editorial .le-chapters nav a > span,
body.la-editorial .seepanorama-page .signature,
body.la-editorial .seepanorama-page .room-grid .caption,
body.la-editorial .seepanorama-page .room-tabs > span,
body.la-editorial .seepanorama-page .morning .note,
body.la-editorial .seepanorama-page .experience-grid .num,
body.la-editorial .seepanorama-page .faq details p,
body.la-editorial .lr-page .lr-hero-note > span,
body.la-editorial .lr-page .lr-room-index,
body.la-editorial .lr-page .lr-facts > div > span,
body.la-editorial .lr-page .lr-idea-label,
body.la-editorial .lr-page .lr-breadcrumb,
body.la-editorial .lr-page .lr-breadcrumb a,
body.la-editorial .lr-page .lr-photo-note,
body.la-editorial .lr-page .lr-aside-label,
body.la-editorial .la-offers-experience-copy .la-offers-tagline {
  color: #4b6047 !important;
}
body.la-editorial .la-offers-gift-mark em { color: #4b6047 !important; }
