/* La Maison Q.J. Bünzel · theme.css · v2.0 (14.10.2026, nach Quynhs Design Notes)
   Navy #1D2A3A · Copper #C9A18C · Blush #E3BEB1 · Slate #8FA0B4 · Ivory #FAF7F4 · Text #1F2937 · Hairline #E6DAD3
   EB Garamond (Überschriften + Text, kursiv für Statements), Lato versal mit weiter Laufweite (Navigation, Labels, kleine Zeilen).
   Ruhig, viel Weißraum, Hairlines zwischen Zeilen. Klassen lm-* = Design-Familie, Rest = WordPress-Presets. */

:root {
  --lm-hairline: #E6DAD3;
  --lm-hairline-navy: rgba(227, 190, 177, 0.35);
  --lm-section-y: clamp(4rem, 9vw, 7.5rem);
  --lm-gutter: clamp(1.25rem, 5vw, 4rem);
  --lm-track: 0.24em;
}

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; -webkit-font-smoothing: antialiased; }
img, video { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; transition: color .25s ease, border-color .25s ease, background-color .25s ease, opacity .25s ease; }
p { margin: 0 0 1.1em; }
p:last-child { margin-bottom: 0; }
h1, h2, h3, h4 { margin: 0 0 .6em; letter-spacing: 0; }
strong { font-weight: 600; }
em { font-style: italic; }
hr, .lm-hairline { border: 0; border-top: 1px solid var(--lm-hairline); margin: 2.5rem 0; }

/* ---------- Labels (Lato, versal, weite Laufweite) ---------- */
.lm-eyebrow, .lm-label {
  font-family: var(--wp--preset--font-family--sans);
  font-size: 0.6875rem; font-weight: 400;
  letter-spacing: var(--lm-track); text-transform: uppercase;
  color: var(--wp--preset--color--copper);
  margin: 0 0 1.25rem;
}
.lm-eyebrow--muted { color: var(--wp--preset--color--slate); }
.lm-small { font-family: var(--wp--preset--font-family--sans); font-size: .75rem; letter-spacing: .06em; color: var(--wp--preset--color--slate); }
.lm-statement { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: clamp(1.6rem, 2.8vw, 2.3rem); line-height: 1.3; color: var(--wp--preset--color--navy); }
.lm-lead { font-family: var(--wp--preset--font-family--serif); font-size: clamp(1.15rem, 1.8vw, 1.35rem); line-height: 1.55; }
.lm-serif { font-family: var(--wp--preset--font-family--serif); }
.lm-italic { font-style: italic; }
.lm-rule { width: 64px; height: 1px; background: var(--wp--preset--color--copper); margin: 1.75rem auto; border: 0; }
.lm-rule--left { margin-left: 0; }

/* ---------- Header ---------- */
.lm-header { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); position: sticky; top: 0; z-index: 50; padding: 1.1rem var(--lm-gutter); }
.lm-header__inner { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 2rem; max-width: 1400px; margin: 0 auto; }
.lm-header__inner > * { min-width: 0; }
.lm-logo { display: flex; align-items: center; gap: .75rem; }
.lm-logo img { height: 30px; width: auto; filter: brightness(0) invert(1) opacity(.92); }
.lm-logo img.lm-logo--white { filter: none; }
.lm-logo .lm-wordmark, .lm-logo .wp-block-site-title a { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--ivory); white-space: nowrap; font-weight: 400; }
.lm-header a, .lm-header .wp-block-navigation-item__label { color: var(--wp--preset--color--ivory); }
.lm-nav { display: flex; justify-content: flex-end; overflow: hidden; }
.lm-nav .wp-block-navigation-item__label, .lm-nav a { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase; font-weight: 400; white-space: nowrap; }
.lm-nav a { display: inline-block; padding: .5rem 0; }
.lm-nav .wp-block-navigation__container { gap: 1.9rem; flex-wrap: nowrap; }
.lm-nav a:hover { color: var(--wp--preset--color--blush); }
.lm-header__right { display: flex; justify-content: flex-end; align-items: center; gap: 1.2rem; }
.lm-lang a { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--slate); display: inline-block; padding: .45rem 0; }
.lm-lang .wp-block-navigation__container { gap: .6rem; }
.lm-lang .current-menu-item a, .lm-lang a.is-active { color: var(--wp--preset--color--blush); }
.lm-header .wp-block-navigation__responsive-container-open, .lm-header .wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--ivory); }
.lm-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); }
.lm-header .wp-block-navigation__responsive-container.is-menu-open a { font-family: var(--wp--preset--font-family--serif); font-size: 1.6rem; letter-spacing: 0; text-transform: none; }

/* ---------- Sections ---------- */
.lm-main { padding: 0; }
.lm-section { padding: var(--lm-section-y) var(--lm-gutter); background: var(--wp--preset--color--ivory); }
.lm-section--white { background: #fff; }
.lm-section--navy { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); }
.lm-section--navy h1, .lm-section--navy h2, .lm-section--navy h3, .lm-section--navy a, .lm-section--navy .lm-statement { color: var(--wp--preset--color--ivory); }
.lm-section--navy .lm-eyebrow { color: var(--wp--preset--color--blush); }
.lm-section--navy .lm-hairline, .lm-section--navy hr { border-top-color: var(--lm-hairline-navy); }
.lm-section--tight { padding-top: calc(var(--lm-section-y) * .55); padding-bottom: calc(var(--lm-section-y) * .55); }
.lm-section__inner { max-width: 1100px; margin: 0 auto; }
.lm-section__inner--narrow { max-width: 820px; }
.lm-section__inner--centered { text-align: center; }
.lm-section__inner--centered .lm-eyebrow { margin-bottom: 1rem; }
.lm-section__intro { max-width: 640px; margin: 0 auto 2.5rem; color: var(--wp--preset--color--ink); font-size: 1rem; }
.alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; }
.alignwide { max-width: 1100px; margin-left: auto; margin-right: auto; }

/* ---------- First screen (Brochure cover): navy, blush frame, logo centred ---------- */
.lm-first { position: relative; min-height: calc(100vh - 72px); background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); display: flex; align-items: center; justify-content: center; text-align: center; padding: clamp(2rem, 5vw, 4rem); box-sizing: border-box; }
.lm-first::before { content: ""; position: absolute; inset: clamp(.9rem, 2vw, 1.6rem); border: 1px solid var(--wp--preset--color--blush); opacity: .7; pointer-events: none; }
.lm-first__inner { position: relative; max-width: 760px; margin: 0 auto; padding-bottom: 4rem; }
.lm-first__logo { width: clamp(220px, 28vw, 320px); margin: 0 auto 2.25rem; animation: lm-fade 2.4s ease-out both; }
.lm-first__logo img { width: 100%; height: auto; }
.lm-first .lm-rule { background: var(--wp--preset--color--copper); }
.lm-first .lm-statement { font-size: clamp(1.4rem, 2.6vw, 2rem); color: var(--wp--preset--color--ivory); margin: 0 auto; max-width: 640px; }
.lm-first__worlds { position: absolute; left: 0; right: 0; bottom: clamp(2rem, 5vw, 3.5rem); text-align: center; }
.lm-first__worlds .lm-label { color: var(--wp--preset--color--blush); margin: 0 0 .5rem; }
.lm-first__worlds .lm-label a { color: inherit; }
.lm-first__worlds .lm-label--muted { color: var(--wp--preset--color--slate); margin: 0; font-size: .6875rem; }
.lm-first__worlds::after { content: ""; display: block; width: 1px; height: 28px; background: var(--wp--preset--color--blush); margin: 1rem auto 0; opacity: .7; }
@keyframes lm-fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ---------- Introduction ---------- */
.lm-intro h2, .lm-intro .lm-statement { margin-bottom: 1.5rem; }
.lm-intro p { font-size: 1.0625rem; line-height: 1.75; }
.lm-intro .lm-closing, .lm-closing { text-align: center; margin-top: 2.5rem; }
.lm-closing .lm-statement { font-size: clamp(1.3rem, 2.2vw, 1.7rem); }

/* ---------- Index of the four worlds ---------- */
.lm-index { border-top: 1px solid var(--lm-hairline); max-width: 1100px; margin: 0 auto; }
.lm-index__row { display: grid; grid-template-columns: 64px minmax(0, 1fr) minmax(0, 1.6fr) auto; gap: 2rem; align-items: center; padding: 2rem 0; border-bottom: 1px solid var(--lm-hairline); position: relative; }
.lm-index__num { font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem; color: var(--wp--preset--color--copper); }
.lm-index__title { font-family: var(--wp--preset--font-family--serif); font-size: clamp(1.5rem, 2.4vw, 1.9rem); color: var(--wp--preset--color--navy); margin: 0; }
.lm-index__title a { color: inherit; }
.lm-index__title a::after { content: ""; position: absolute; inset: 0; }
.lm-index__desc { font-family: var(--wp--preset--font-family--serif); font-style: italic; color: var(--wp--preset--color--slate); font-size: 1rem; margin: 0 0 .3rem; }
.lm-index__text { font-size: 1rem; line-height: 1.6; margin: 0; }
.lm-index__enter { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--copper); white-space: nowrap; }
.lm-index__enter::after { content: " →"; }
.lm-index__row:hover .lm-index__enter { color: var(--wp--preset--color--navy); }
.lm-index--compact .lm-index__row { grid-template-columns: 48px minmax(0, 1fr) auto; padding: 1.4rem 0; }
.lm-twocol { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; max-width: 1100px; margin: 0 auto 3rem; }
.lm-twocol .lm-statement { margin: 0; }
.lm-twocol p { margin: 0; font-size: 1rem; line-height: 1.7; }

/* ---------- The House ---------- */
.lm-house { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; max-width: 1200px; margin: 0 auto; }
.lm-house__photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.lm-house__text h2 { font-style: italic; font-size: clamp(1.9rem, 3vw, 2.5rem); }
.lm-house__text p { font-size: 1.0625rem; line-height: 1.75; }
.lm-directions { border-top: 1px solid var(--lm-hairline); margin-top: 2rem; }
.lm-direction { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 1.5rem; padding: 1.25rem 0; border-bottom: 1px solid var(--lm-hairline); }
.lm-direction .lm-label { margin: .2rem 0 0; font-size: .6875rem; }
.lm-direction p { font-size: .95rem; line-height: 1.6; margin: 0; }

/* ---------- Founders ---------- */
.lm-founders { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); max-width: 1100px; margin: 0 auto; }
.lm-founder h3 { font-size: clamp(1.5rem, 2.4vw, 1.9rem); margin-bottom: .35rem; }
.lm-founder .lm-label { font-size: .6875rem; margin-bottom: 1rem; }
.lm-founder p { font-size: 1rem; line-height: 1.7; }
.lm-founder img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; margin-bottom: 1.25rem; }
.lm-readmore { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--copper); display: inline-block; padding: .4rem 0; margin-top: 2rem; }
.lm-readmore::after { content: " →"; }
.lm-readmore:hover { color: var(--wp--preset--color--navy); }

/* ---------- Contact band (navy) ---------- */
.lm-contactband { text-align: center; max-width: 760px; margin: 0 auto; }
.lm-contactband__logo { width: 260px; margin: 0 auto 2.5rem; }
.lm-contactband .lm-statement { font-size: clamp(1.5rem, 2.6vw, 2.1rem); }
.lm-contactband .lm-label { color: var(--wp--preset--color--slate); margin-top: 1rem; }
.lm-contactband .lm-contactline { font-family: var(--wp--preset--font-family--serif); font-size: 1.2rem; color: var(--wp--preset--color--ivory); margin: 1.5rem 0 2rem; }
.lm-contactband .lm-contactline a { color: var(--wp--preset--color--ivory); }
.lm-subscribe { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border-bottom: 1px solid var(--lm-hairline-navy); padding-bottom: .75rem; max-width: 520px; margin: 0 auto; }
.lm-subscribe span { font-family: var(--wp--preset--font-family--serif); font-style: italic; color: var(--wp--preset--color--slate); font-size: 1.05rem; }
.lm-subscribe a, .lm-subscribe button { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--blush); background: none; border: 0; cursor: pointer; padding: .4rem 0; }
.lm-subscribe a::after, .lm-subscribe button::after { content: " →"; }
.lm-subscribe input[type="email"] { background: transparent; border: 0; color: var(--wp--preset--color--ivory); font-family: var(--wp--preset--font-family--serif); font-size: 1.05rem; flex: 1; min-width: 0; }
.lm-subscribe input::placeholder { color: var(--wp--preset--color--slate); font-style: italic; }

/* ---------- Buttons ---------- */
.wp-block-button__link, .lm-btn { display: inline-block; font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; font-weight: 400; letter-spacing: var(--lm-track); text-transform: uppercase; padding: .85rem 1.5rem; border: 1px solid var(--wp--preset--color--copper); background: transparent; color: var(--wp--preset--color--navy); border-radius: 0; line-height: 1.2; }
.wp-block-button__link:hover, .lm-btn:hover { background: var(--wp--preset--color--navy); border-color: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); }
.lm-section--navy .wp-block-button__link, .lm-btn--light { color: var(--wp--preset--color--ivory); border-color: var(--wp--preset--color--blush); }
.lm-section--navy .wp-block-button__link:hover, .lm-btn--light:hover { background: var(--wp--preset--color--ivory); color: var(--wp--preset--color--navy); border-color: var(--wp--preset--color--ivory); }
.wp-block-buttons { display: flex; flex-wrap: wrap; gap: .75rem; }
.wp-block-buttons.is-content-justification-center { justify-content: center; }

/* ---------- Hero (Hospitality: Cover-Block mit Foto/Film) ---------- */
.lm-hero.wp-block-cover { min-height: 70vh; color: #fff; text-align: center; display: flex; align-items: center; justify-content: center; }
.lm-hero.lm-hero--tall { min-height: 88vh; }
.lm-hero.lm-hero--short { min-height: 46vh; }
.lm-hero .wp-block-cover__inner-container { max-width: 860px; padding: 2rem var(--lm-gutter); }
.lm-hero h1, .lm-hero h2 { color: #fff; font-weight: 400; font-size: clamp(2.2rem, 4.8vw, 3.4rem); margin-bottom: .6rem; }
.lm-hero .lm-eyebrow { color: var(--wp--preset--color--blush); }
.lm-hero p { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: clamp(1.1rem, 1.8vw, 1.4rem); margin: 0 auto 1.8rem; max-width: 640px; }
.lm-hero .wp-block-buttons { justify-content: center; }
.lm-hero .wp-block-button__link { color: #fff; border-color: rgba(255,255,255,.75); }
.lm-hero .wp-block-button__link:hover { background: #fff; color: var(--wp--preset--color--navy); border-color: #fff; }
.lm-hero--light { color: var(--wp--preset--color--navy); }
.lm-hero--light h1, .lm-hero--light h2 { color: var(--wp--preset--color--navy); }
.lm-hero--light p { color: var(--wp--preset--color--ink); }
.lm-hero--light .wp-block-button__link { color: var(--wp--preset--color--navy); border-color: var(--wp--preset--color--copper); }
.lm-hero--light .wp-block-button__link:hover { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); }
.lm-hero--hint::after { content: "Scroll"; position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .3em; text-transform: uppercase; color: rgba(255,255,255,.7); padding-bottom: 42px; background: linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,.5)) no-repeat center bottom / 1px 36px; z-index: 2; pointer-events: none; }
/* Navy-Titelbild (Advisory, GMS, Journeys): wie Broschürencover, ohne Foto */
.lm-cover { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); text-align: center; padding: clamp(5rem, 12vw, 9rem) var(--lm-gutter); position: relative; }
.lm-cover::before { content: ""; position: absolute; inset: clamp(.9rem, 2vw, 1.6rem); border: 1px solid var(--wp--preset--color--blush); opacity: .55; pointer-events: none; }
.lm-cover .lm-eyebrow { color: var(--wp--preset--color--blush); }
.lm-cover h1 { color: var(--wp--preset--color--ivory); font-size: clamp(2.4rem, 5vw, 3.8rem); margin-bottom: 1rem; }
.lm-cover .lm-statement { color: var(--wp--preset--color--ivory); font-size: clamp(1.2rem, 2vw, 1.6rem); max-width: 720px; margin: 0 auto; }
.lm-cover .lm-label { color: var(--wp--preset--color--slate); margin: 2rem 0 0; }

/* ---------- Prose + split ---------- */
.lm-split { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; max-width: 1200px; margin: 0 auto; }
.lm-split--reverse > .lm-split__text { order: 2; }
.lm-split__text p { font-size: 1.0625rem; line-height: 1.75; }
.lm-split__text h2 { font-size: clamp(1.8rem, 3vw, 2.3rem); }
.lm-split__text .wp-block-buttons { margin-top: 1.8rem; }
.lm-split__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.lm-split__media--square img { aspect-ratio: 1; }
.lm-split__media--landscape img { aspect-ratio: 3 / 2; }
.lm-split__media--natural img { aspect-ratio: auto; }
.lm-prose { max-width: 820px; margin: 0 auto; }
.lm-prose h1 { font-size: clamp(2rem, 4vw, 2.8rem); margin-bottom: 1.5rem; }
.lm-prose h2 { font-size: clamp(1.6rem, 2.6vw, 2.1rem); margin-top: 2.6rem; }
.lm-prose h3 { font-size: 1.35rem; margin-top: 1.8rem; }
.lm-prose p, .lm-prose li { font-size: 1.0625rem; line-height: 1.75; }
.lm-prose ul, .lm-prose ol { padding-left: 1.2rem; margin: 0 0 1.2rem; }
.lm-prose li { margin-bottom: .35rem; }
.lm-prose a { border-bottom: 1px solid var(--lm-hairline); }
.lm-prose .lm-eyebrow { margin-bottom: .75rem; }
.lm-prose .lm-placeholder, .lm-placeholder { background: #fff3c4; border: 1px dashed #c9a227; padding: 0 .3em; color: #5a4300; }

/* Definition rows */
.lm-areas { max-width: 1100px; margin: 0 auto; border-top: 1px solid var(--lm-hairline); }
.lm-area { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 2rem; padding: 1.8rem 0; border-bottom: 1px solid var(--lm-hairline); }
.lm-area h3 { font-size: 1.45rem; margin: 0; }
.lm-area p { font-size: 1rem; line-height: 1.7; margin: 0; }
.lm-area ul { margin: 0; padding-left: 1.1rem; font-size: 1rem; line-height: 1.7; }
.lm-area .lm-label { margin: .3rem 0 0; font-size: .6875rem; }
.lm-stages .lm-area h3 { font-style: italic; }

/* Cards (Hospitality) */
.lm-cards { display: grid; gap: 1.25rem; max-width: 1200px; margin: 0 auto; }
.lm-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lm-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lm-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lm-card.wp-block-cover { min-height: 420px; aspect-ratio: 3 / 4; padding: 1.5rem; align-items: flex-end; justify-content: flex-start; text-align: left; color: #fff; margin: 0; }
.lm-card--landscape.wp-block-cover { aspect-ratio: 4 / 3; min-height: 300px; }
.lm-card .wp-block-cover__inner-container { width: 100%; position: static; }
.lm-card h3 { color: #fff; font-size: clamp(1.35rem, 2vw, 1.7rem); margin: 0 0 .35rem; }
.lm-card h3 a { color: #fff; }
.lm-card h3 a::after { content: ""; position: absolute; inset: 0; }
.lm-card p { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: .95rem; margin: 0; opacity: .95; }
.lm-card .lm-tag { position: absolute; top: 1.1rem; right: 1.1rem; margin: 0; border: 1px solid rgba(255,255,255,.8); padding: .35rem .7rem; font-family: var(--wp--preset--font-family--sans); font-style: normal; font-size: .6875rem !important; letter-spacing: .2em; text-transform: uppercase; z-index: 2; width: auto; }
.lm-card .wp-block-cover__background { transition: opacity .3s ease; }
.lm-card:hover .wp-block-cover__background { opacity: .6 !important; }
.lm-card img.wp-block-cover__image-background { transition: transform .6s ease; }
.lm-card:hover img.wp-block-cover__image-background { transform: scale(1.03); }

/* Gallery */
.wp-block-gallery.lm-gallery, .lm-gallery { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; max-width: 1200px; margin: 0 auto; }
.lm-gallery.lm-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lm-gallery > figure, .lm-gallery > .wp-block-image { width: auto !important; margin: 0 !important; }
.lm-gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }

/* Quote / strip */
.lm-quote { text-align: center; max-width: 820px; margin: 0 auto; }
.lm-quote blockquote, .lm-quote .wp-block-quote { border: 0; margin: 0 0 1rem; padding: 0; }
.lm-quote blockquote p, .lm-quote .wp-block-quote p { font-family: var(--wp--preset--font-family--serif); font-size: clamp(1.4rem, 2.4vw, 2rem); font-style: italic; line-height: 1.4; color: var(--wp--preset--color--navy); margin: 0; }
.lm-section--navy .lm-quote blockquote p { color: var(--wp--preset--color--ivory); }
.lm-quote cite, .lm-quote .wp-block-quote cite { display: block; font-style: normal; font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--copper); margin-top: 1rem; }
.lm-quote .wp-block-buttons { justify-content: center; margin-top: 2rem; }
.lm-strip { text-align: center; font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: clamp(1.1rem, 2vw, 1.5rem); color: var(--wp--preset--color--navy); max-width: 1000px; margin: 0 auto; }

/* People */
.lm-people { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; max-width: 1200px; margin: 0 auto; }
.lm-people--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 960px; }
.lm-people--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 1100px; }
.lm-person img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; margin-bottom: 1rem; }
.lm-person h3 { font-size: 1.5rem; margin: 0 0 .25rem; }
.lm-person .lm-eyebrow, .lm-person .lm-label { margin-bottom: .8rem; font-size: .6875rem; }
.lm-person p { font-size: 1rem; line-height: 1.7; }
.lm-person ul { padding-left: 1.1rem; font-size: 1rem; line-height: 1.7; }

/* Contact page + forms */
.lm-contact { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 5rem); max-width: 1100px; margin: 0 auto; align-items: start; }
.lm-contact__info h2 { font-size: clamp(1.6rem, 2.6vw, 2rem); }
.lm-contact__info .lm-brand { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.2rem; color: var(--wp--preset--color--copper); margin-bottom: 1rem; }
.lm-contact__list { list-style: none; padding: 0; margin: 0 0 1.5rem; }
.lm-contact__list li { font-size: 1.0625rem; line-height: 1.8; padding-left: 1.4rem; position: relative; }
.lm-contact__list li::before { content: ""; position: absolute; left: 0; top: .85rem; width: 6px; height: 6px; border: 1px solid var(--wp--preset--color--copper); border-radius: 50%; }
.lm-contact__list a { border-bottom: 1px solid var(--lm-hairline); display: inline-block; padding: .3rem 0; }
.lm-note { background: #fff; border: 1px solid var(--lm-hairline); padding: 1.8rem 2rem; }
.lm-note h3 { font-size: 1.3rem; margin-bottom: .6rem; }
.lm-note p { font-size: .95rem; }
.lm-form { background: #fff; border: 1px solid var(--lm-hairline); padding: clamp(1.5rem, 4vw, 3rem); max-width: 760px; margin: 0 auto; }
.lm-form label, .lm-form .ff-el-input--label label { display: block; font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--navy); margin-bottom: .4rem; }
.lm-form input[type="text"], .lm-form input[type="email"], .lm-form input[type="tel"], .lm-form input[type="date"], .lm-form select, .lm-form textarea, .lm-form .ff-el-form-control { width: 100%; max-width: 100%; box-sizing: border-box; border: 0; border-bottom: 1px solid var(--lm-hairline); background: var(--wp--preset--color--ivory); padding: .8rem .9rem; font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; color: var(--wp--preset--color--ink); border-radius: 0; }
.lm-form textarea { min-height: 150px; resize: vertical; }
.lm-form .lm-field { margin-bottom: 1.4rem; }
.lm-form .lm-consent { font-size: .9rem; line-height: 1.6; display: flex; gap: .6rem; align-items: flex-start; }
.lm-form .lm-consent input { margin-top: .3rem; }
.lm-form .lm-submit { text-align: center; margin-top: 1rem; }
.lm-form .ff-btn-submit, .lm-form button { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; background: transparent; color: var(--wp--preset--color--navy); border: 1px solid var(--wp--preset--color--copper); padding: .85rem 1.5rem; cursor: pointer; border-radius: 0; }
.lm-form .ff-btn-submit:hover, .lm-form button:hover { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); border-color: var(--wp--preset--color--navy); }
.lm-newsletter { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem; max-width: 1100px; margin: 0 auto; }
.lm-newsletter__title { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.1rem; color: var(--wp--preset--color--navy); margin: 0; }
.lm-newsletter form { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; max-width: 100%; }
.lm-newsletter input[type="email"] { box-sizing: border-box; border: 0; border-bottom: 1px solid var(--lm-hairline); background: #fff; padding: .75rem 1rem; min-width: 260px; max-width: 100%; font-family: inherit; font-size: 1rem; }
.lm-newsletter .lm-consent { flex-basis: 100%; text-align: center; font-size: .8rem; color: var(--wp--preset--color--slate); }
.lm-downloads { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; max-width: 820px; margin: 1.5rem auto 0; }
.lm-download { border: 1px solid var(--lm-hairline); padding: 1.2rem 1.4rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; background: #fff; }
.lm-download:hover { border-color: var(--wp--preset--color--copper); }
.lm-download span { font-family: var(--wp--preset--font-family--serif); font-size: 1.1rem; color: var(--wp--preset--color--navy); }
.lm-download small { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--copper); white-space: nowrap; }
.lm-doors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 1100px; margin: 0 auto; border-top: 1px solid var(--lm-hairline); border-left: 1px solid var(--lm-hairline); }
.lm-door { padding: clamp(1.5rem, 3vw, 2.75rem); border-right: 1px solid var(--lm-hairline); border-bottom: 1px solid var(--lm-hairline); position: relative; display: flex; flex-direction: column; gap: .75rem; }
.lm-door h3 a::after { content: ""; position: absolute; inset: 0; }
.lm-door__link { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--copper); margin-top: auto; padding-top: .5rem; }
.lm-stage-words { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin-top: 1.5rem; }


/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .lm-nav .wp-block-navigation__container { gap: 1.2rem; }
  .lm-nav .wp-block-navigation-item__label, .lm-nav a { letter-spacing: .12em; }
  .lm-logo .lm-wordmark, .lm-logo .wp-block-site-title { display: none; }
}
@media (max-width: 1024px) {
  .lm-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lm-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lm-people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lm-index__row { grid-template-columns: 48px minmax(0, 1fr) auto; }
  .lm-index__title, .lm-index__desc, .lm-index__text { grid-column: 2; }
  .lm-index__num { grid-row: 1 / span 2; }
  .lm-index__enter { grid-row: 1 / span 2; }
}
@media (max-width: 782px) {
  .lm-header { padding: .8rem var(--lm-gutter); }
  .lm-header__inner { grid-template-columns: auto 1fr auto; gap: 1rem; }
  .lm-logo img { height: 26px; }
  .lm-nav .wp-block-navigation__container { flex-wrap: wrap; }
  .lm-first { min-height: calc(100vh - 60px); }
  .lm-first__inner { padding-bottom: 5rem; }
  .lm-first__worlds .lm-label { font-size: .6875rem; line-height: 2; }
  .lm-twocol, .lm-house, .lm-founders, .lm-split, .lm-split--reverse, .lm-contact { grid-template-columns: 1fr; gap: 2rem; }
  .lm-split--reverse > .lm-split__text { order: 0; }
  .lm-split__media img, .lm-house__photo img { aspect-ratio: 4 / 3; }
  .lm-index__row { grid-template-columns: 1fr; gap: .3rem; padding: 1.4rem 0; }
  .lm-index__num, .lm-index__title, .lm-index__desc, .lm-index__text, .lm-index__enter { grid-column: 1; grid-row: auto; }
  .lm-index__num { font-size: 1rem; }
  .lm-index__enter { margin-top: .5rem; }
  .lm-direction { grid-template-columns: 1fr; gap: .4rem; }
  .lm-cols-3, .lm-cols-2, .lm-cols-4, .lm-doors { grid-template-columns: 1fr; }
  .lm-card.wp-block-cover { aspect-ratio: 4 / 3; min-height: 260px; }
  .lm-gallery, .lm-gallery.lm-cols-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
  .lm-form .lm-field--2 { grid-template-columns: 1fr; }
  .lm-downloads { grid-template-columns: 1fr; }
  .lm-people, .lm-people--2, .lm-people--4 { grid-template-columns: 1fr; }
  .lm-area { grid-template-columns: 1fr; gap: .5rem; }
  .lm-newsletter input[type="email"] { min-width: 0; width: 100%; }
  .lm-newsletter form { width: 100%; }
  .lm-subscribe { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .lm-first__logo { animation: none; }
  .lm-card img.wp-block-cover__image-background { transition: none; }
}

/* v3 (15.10.2026): einheitlicher Footer mit Logo, Newsletter, Social, vier Welten; Direktlinks auf der Kontaktseite */
.lm-newsletter--band { text-align: center; }
.lm-newsletter--band .lm-newsletter__title { color: var(--wp--preset--color--slate); }
.lm-form input[type="number"] { width: 100%; max-width: 100%; box-sizing: border-box; border: 0; border-bottom: 1px solid var(--lm-hairline); background: var(--wp--preset--color--ivory); padding: .8rem .9rem; font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; color: var(--wp--preset--color--ink); border-radius: 0; }
.lm-contact-details .lm-area h3 { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: var(--wp--preset--color--copper); }
@media (max-width: 782px) {
}

/* v3.3 (16.10.2026): WordPress-Abstand über dem Erstbildschirm entfernen, Newsletter-Feld im Kontaktband transparent */
.lm-main .wp-block-post-content > :first-child, .lm-main .entry-content > :first-child, .lm-main > :first-child { margin-top: 0 !important; }
.lm-main .wp-block-post-content { margin-top: 0; }
.lm-newsletter--band .lm-subscribe input[type="email"] { background: transparent; border: 0; border-bottom: 1px solid var(--lm-hairline-navy); color: var(--wp--preset--color--ivory); padding: .4rem 0; text-align: center; }
.lm-newsletter--band .lm-subscribe { border-bottom: 0; }

/* v1.0.4 (16.10.2026): no WordPress block gap between header, main and footer; 100vw full-width blocks must not cause a horizontal scrollbar (Windows scrollbars) */
.wp-site-blocks > .lm-main, .wp-site-blocks > footer, .wp-site-blocks > main { margin-block-start: 0 !important; }
html, body { overflow-x: clip; }
/* v1.0.7: consent checkbox text reads as a sentence, not as a field label */
.lm-form .ff-el-form-check label, .lm-form .ff-el-form-check-label, .lm-form .ff_t_c, .lm-form .ff-el-tc label { text-transform: none; letter-spacing: 0; font-family: var(--wp--preset--font-family--serif); font-size: .95rem; line-height: 1.55; color: var(--wp--preset--color--ink); }
/* v1.0.8: MailPoet newsletter form in the La Maison form style */
div.mailpoet_form.mailpoet_form_shortcode { background: #fff; border: 1px solid var(--lm-hairline); padding: clamp(1.5rem, 4vw, 3rem) !important; max-width: 640px; margin: 0 auto; box-sizing: border-box; }
.mailpoet_form .mailpoet_paragraph { margin-bottom: 1.2rem !important; }
.mailpoet_form input.mailpoet_text { width: 100% !important; max-width: 100%; box-sizing: border-box; border: 0 !important; border-bottom: 1px solid var(--lm-hairline) !important; background: var(--wp--preset--color--ivory); padding: .8rem .9rem !important; font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; color: var(--wp--preset--color--ink); border-radius: 0; }
.mailpoet_form .mailpoet_checkbox_label { display: flex; gap: .6rem; align-items: flex-start; font-family: var(--wp--preset--font-family--serif); font-size: .95rem; line-height: 1.55; color: var(--wp--preset--color--ink); }
.mailpoet_form .mailpoet_checkbox_label input { margin-top: .3rem; flex: none; }
.mailpoet_form a { color: var(--wp--preset--color--navy); text-decoration: underline; text-underline-offset: 3px; }
.mailpoet_form .mailpoet_paragraph:has(.mailpoet_submit) { text-align: center; }
.mailpoet_form input.mailpoet_submit { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; background: transparent; color: var(--wp--preset--color--navy); border: 1px solid var(--wp--preset--color--copper) !important; padding: .85rem 1.5rem !important; cursor: pointer; border-radius: 0 !important; width: auto !important; }
.mailpoet_form input.mailpoet_submit:hover { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); border-color: var(--wp--preset--color--navy); }
.mailpoet_form .mailpoet_validate_success, .mailpoet_form .mailpoet_validate_error { font-family: var(--wp--preset--font-family--serif); font-size: 1rem; }
form.mailpoet_form { padding: 0 !important; border: 0 !important; background: transparent !important; }
/* v1.0.12 (16.10.2026): contact band + footer read as one block (design PDF page 6): no double gap, no second logo */
.lm-section:has(.lm-contactband) { padding-bottom: 2.5rem; }
.lm-contactband .lm-contactline { margin-bottom: 0; }
/* v1.0.13 (16.10.2026): special layouts are native blocks now (editable); former inline styles as classes */
.lm-first__logo .wp-block-image, .lm-house__photo .wp-block-image, .lm-contactband__logo .wp-block-image, .lm-founder .wp-block-image { margin: 0; }
.lm-founders--spaced { margin-top: 2.5rem; }
.lm-section__intro--left { margin-left: 0; }
.lm-area__num { font-size: 1.1rem; margin-right: .6rem; }
.lm-enquiry__text { max-width: 560px; margin: 0 auto 1.5rem; }
.lm-index__num, .lm-index__enter, .lm-index__title { margin: 0; }
/* v1.0.14: WordPress adds 1.25rem before every block in a group; grid items and row lists keep the former spacing */
.lm-index > *, .lm-index__row > *, .lm-house > *, .lm-founders > *, .lm-twocol > *, .lm-directions > *, .lm-direction > *, .lm-areas > *, .lm-area > * { margin-block-start: 0; }
.lm-readmore-wrap { margin-top: 0; }
.lm-closing .lm-statement { margin-block: 1.25rem; }
@media (max-width: 782px) { .lm-index__enter { margin-top: .5rem; } }
/* v1.0.16: tablet width (783–1024px): fixed columns for the index rows (Enter was pushed into the title column) */
@media (max-width: 1024px) and (min-width: 783px) {
  .lm-index__row { row-gap: .4rem; }
  .lm-index__num { grid-column: 1; grid-row: 1 / span 2; }
  .lm-index__title { grid-column: 2; grid-row: 1; }
  .lm-index__body { grid-column: 2; grid-row: 2; }
  .lm-index__enter { grid-column: 3; grid-row: 1 / span 2; }
}
/* v1.0.17: mobile menu overlay: WordPress core forces white/black (.wp-block-navigation:not(.has-background) …), so navy/ivory needs a stronger selector */
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open { background-color: var(--wp--preset--color--navy) !important; color: var(--wp--preset--color--ivory) !important; padding: 5rem var(--lm-gutter) 3rem; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open a,
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__label { color: var(--wp--preset--color--ivory) !important; font-family: var(--wp--preset--font-family--serif); font-size: 1.6rem; letter-spacing: 0; text-transform: none; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 1.1rem; align-items: center; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: center; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--ivory) !important; }
/* v1.0.20: sections follow each other without the WordPress block gap (a cream strip showed between the white founders section and the navy contact band) */
.lm-main .wp-block-post-content > *, .lm-main .entry-content > * { margin-block-start: 0; }

/* v1.0.22 (16.10.2026): Quynh's design corrections, checked against Landing Page Design pages 01–07 */
/* 1. Hierarchy: statements are the large headlines (EB Garamond italic, ≈ 42 px, navy), labels small (Lato bold 11 px, 4 px tracking).
      Since the native-block switch both are <p>, and ".lm-intro p" / ".lm-twocol p" overrode them; "body p.lm-…" outranks those. */
body p.lm-statement { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: clamp(1.75rem, 3vw, 2.625rem); line-height: 1.22; color: var(--wp--preset--color--navy); letter-spacing: 0; }
body p.lm-eyebrow, body p.lm-label, body .lm-index__enter { font-family: var(--wp--preset--font-family--sans); font-size: 11px; font-weight: 700; letter-spacing: 4px; line-height: 1.6; text-transform: uppercase; }
body p.lm-eyebrow { color: var(--wp--preset--color--copper); margin: 0 0 1rem; }
body .lm-section--navy p.lm-statement { color: var(--wp--preset--color--ivory); }
body .lm-section--navy p.lm-eyebrow { color: var(--wp--preset--color--blush); }
body .lm-first p.lm-statement { font-size: clamp(1.4rem, 2.6vw, 2rem); color: var(--wp--preset--color--ivory); }
body .lm-closing p.lm-statement { font-size: clamp(1.3rem, 2.2vw, 1.7rem); }
body .lm-contactband p.lm-statement { font-size: clamp(1.5rem, 2.6vw, 2.1rem); color: var(--wp--preset--color--ivory); }
body .lm-first__worlds p.lm-label--muted { font-weight: 400; color: var(--wp--preset--color--slate); }
body .lm-contactband p.lm-label { color: var(--wp--preset--color--copper); }
.lm-founder__role, .lm-founder .lm-label { font-weight: 700; }

/* 2. First screen: navigation inside the blush frame (design page 01), logo ≈ 330 px */
body:has(.lm-first) .lm-header { position: absolute; top: 0; left: 0; right: 0; background: transparent; padding: calc(clamp(.9rem, 2vw, 1.6rem) + 1.1rem) calc(clamp(.9rem, 2vw, 1.6rem) + clamp(1rem, 2.5vw, 2rem)) 1rem; }
body:has(.lm-first) .lm-first { min-height: 100vh; min-height: 100svh; }
.lm-first__logo { width: clamp(230px, 30vw, 330px); }

/* 3. Four worlds: descriptors in the darker blue-grey from the design */
.lm-index__desc { color: #3A4A60; }

/* 4. Closing screen: contact band + footer as one navy screen inside the blush frame (design page 06); phone and email once */
:root { --lm-frame: clamp(.9rem, 2vw, 1.6rem); }
.lm-section:has(.lm-contactband), .wp-site-blocks:has(.lm-contactband) .lm-footer { position: relative; }
.lm-section:has(.lm-contactband)::before, .wp-site-blocks:has(.lm-contactband) .lm-footer::before { content: ""; position: absolute; left: var(--lm-frame); right: var(--lm-frame); border: 1px solid var(--wp--preset--color--blush); opacity: .7; pointer-events: none; }
.lm-section:has(.lm-contactband)::before { top: var(--lm-frame); bottom: 0; border-bottom: 0; }
.wp-site-blocks:has(.lm-contactband) .lm-footer::before { top: 0; bottom: var(--lm-frame); border-top: 0; }
.lm-section:has(.lm-contactband) { padding-top: calc(var(--lm-section-y) + var(--lm-frame)); }
.wp-site-blocks:has(.lm-contactband) .lm-footer { padding-bottom: calc(2.5rem + var(--lm-frame)); }
.wp-site-blocks:has(.lm-contactband) > footer, .wp-site-blocks:has(.lm-contactband) > .wp-block-template-part:last-child { margin-block-start: 0; }

/* Founders: room for two portraits in matching frames (image block at the top of each founder column); text only until the photos arrive */
.lm-founder img { box-sizing: border-box; border: 1px solid var(--lm-hairline); padding: 10px; background: var(--wp--preset--color--white); }
/* v1.0.22: as in the design, the four-worlds line on the first screen and "Enter" stay regular weight; closing screen order = newsletter, address, links (design page 06) */
body .lm-first__worlds p.lm-label, body .lm-index__enter { font-weight: 400; }
/* frame seam: the full-width section is 100vw wide (incl. scrollbar), so the footer gets the same width and offset, otherwise the two frame halves miss by ~8 px */
.wp-site-blocks:has(.lm-contactband) .lm-footer { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: 0; box-sizing: border-box; }
/* phone (design page 07): menu button at the right edge, language switch next to it */
@media (max-width: 782px) {
  .lm-header__right { order: 2; justify-self: end; margin-left: auto; }
  .lm-nav { order: 3; justify-content: flex-end; }
}
@media (max-width: 782px) {
  body .lm-header .lm-header__right { margin-left: auto; }
  /* phone: phone number and email on two lines without the dot (design page 07) */
  body .lm-contactband .lm-contactline { font-size: 0; }
  body .lm-contactband .lm-contactline a { display: block; font-size: 1.15rem; line-height: 1.9; }
}
/* subpage covers (About, Contact, Newsletter) follow the first screen: navigation inside the blush frame, same frame strength */
body:has(.lm-cover) .lm-header { position: absolute; top: 0; left: 0; right: 0; background: transparent; padding: calc(clamp(.9rem, 2vw, 1.6rem) + 1.1rem) calc(clamp(.9rem, 2vw, 1.6rem) + clamp(1rem, 2.5vw, 2rem)) 1rem; }
body:has(.lm-cover) .lm-cover { padding-top: calc(clamp(5rem, 12vw, 9rem) + 3.5rem); }
.lm-cover::before { opacity: .7; }
/* About/Contact texts PDF (15.10.) sets the cover headline in italic, like every statement in the landing design */
.lm-cover h1 { font-style: italic; }
/* v1.0.30: logged-in users get the WordPress admin bar (html margin-top 32/46 px); the absolute header must move with the page, otherwise the frame line runs through the menu */
body:has(.lm-first), body:has(.lm-cover) { position: relative; }
/* inside the frame the menu spans the frame width on wide screens (design page 01: logo at the left frame edge, EN · DE at the right) */
body:has(.lm-first) .lm-header__inner, body:has(.lm-cover) .lm-header__inner { max-width: none; }

/* v1.0.32 (17.10.2026): Quynh's final points before go-live (message 17.10. + "Website Design Corrections" PDF pages 1–4) */
/* Point 1: real wordmark top left (EB Garamond 22 px white, J in blush, tagline italic 11.5 px blush, pagoda 34 px blush from the SVG logo, gap 14 px) */
.lm-brand { display: inline-flex; align-items: center; gap: 14px; color: #fff; text-decoration: none; transition: opacity .35s ease, visibility .35s ease; }
.lm-brand__mark { flex: none; width: 35px; height: 34px; background: var(--wp--preset--color--blush); -webkit-mask: url(../img/pagoda.svg) center / contain no-repeat; mask: url(../img/pagoda.svg) center / contain no-repeat; }
.lm-brand__text { display: flex; flex-direction: column; }
.lm-brand__name { font-family: var(--wp--preset--font-family--serif); font-size: 22px; line-height: 1.1; color: #fff; white-space: nowrap; letter-spacing: 0; }
.lm-brand__j { color: var(--wp--preset--color--blush); }
.lm-brand__tag { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 11.5px; line-height: 1.3; color: var(--wp--preset--color--blush); white-space: nowrap; margin-top: 2px; }
@media (max-width: 1180px) { .lm-brand__text { display: none; } }
/* first screen of the home page: the large logo is centred there, so the small one is hidden until the visitor scrolls */
body:has(.lm-first):not(.lm-scrolled) .lm-brand { opacity: 0; visibility: hidden; }
/* once the first screen / title screen is scrolled past, the menu stays at the top as a navy bar with the logo */
body.lm-scrolled:has(.lm-first) .lm-header, body.lm-scrolled:has(.lm-cover) .lm-header { position: fixed; top: var(--wp-admin--admin-bar--height, 0px); left: 0; right: 0; background: var(--wp--preset--color--navy); padding: .85rem var(--lm-gutter); border-bottom: 1px solid var(--lm-hairline-navy); animation: lm-header-in .35s ease-out; /* no fill-mode: a held transform would make the bar the containing block of the phone menu overlay */ }
@keyframes lm-header-in { from { margin-top: -110px; } to { margin-top: 0; } }   /* 20.10.: margin instead of transform (blurred bar at Windows scaling) */
@media (max-width: 600px) { body.lm-scrolled:has(.lm-first) .lm-header, body.lm-scrolled:has(.lm-cover) .lm-header { top: 0; } }

/* Point 7: frame line a full 1 px in blush (it had opacity .7 and sat on half pixels, so it looked thin and grey) */
@supports (width: round(1.5px, 1px)) { :root { --lm-frame: round(clamp(.9rem, 2vw, 1.6rem), 1px); } }
.lm-first::before, .lm-cover::before { inset: var(--lm-frame); opacity: 1; }
.lm-section:has(.lm-contactband)::before, .wp-site-blocks:has(.lm-contactband) .lm-footer::before { opacity: 1; }
.lm-first__worlds::after { opacity: 1; }

/* Point 2: footer = newsletter, then one row in three columns, then a small legal line (same footer on all five sites) */
.lm-footer { background: var(--wp--preset--color--navy); color: var(--wp--preset--color--ivory); padding: 4.5rem var(--lm-gutter) 2.25rem; text-align: left; }
.lm-footer > * { max-width: 1200px; margin-left: auto; margin-right: auto; margin-block-start: 0; }
.lm-footer p { margin: 0; }
.lm-footer__subscribe { max-width: 600px; margin: 0 auto 4rem; text-align: center; }
.lm-footer__subscribe label { display: block; font-family: var(--wp--preset--font-family--serif); font-style: italic; font-size: 1.35rem; color: #C6CFDA; margin-bottom: 1.4rem; }
.lm-footer__subscribe-row { display: flex; gap: 1rem; align-items: center; border-bottom: 1px solid rgba(198, 207, 218, .45); padding-bottom: .7rem; }
.lm-footer__subscribe input[type="email"] { flex: 1; min-width: 0; background: transparent; border: 0; color: var(--wp--preset--color--ivory); font-family: var(--wp--preset--font-family--serif); font-size: 1.2rem; text-align: left; padding: 0; }
.lm-footer__subscribe input::placeholder { color: var(--wp--preset--color--slate); font-style: italic; }
.lm-footer__subscribe button { font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: var(--lm-track); text-transform: uppercase; color: #fff; background: none; border: 0; cursor: pointer; padding: .4rem 0; white-space: nowrap; }
.lm-footer__subscribe button::after { content: " →"; }
.lm-footer__subscribe button:hover { color: var(--wp--preset--color--blush); }
.lm-footer__cols { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 2rem; align-items: start; border-top: 1px solid rgba(198, 207, 218, .22); padding-top: 3.25rem; }
.lm-footer__address, .lm-footer__social { font-family: var(--wp--preset--font-family--sans); font-size: 15px; line-height: 1.95; color: #C6CFDA; letter-spacing: .01em; }
.lm-footer__social { text-align: right; }
.lm-footer__social a { color: #C6CFDA; }
.lm-footer__social a:hover, .lm-footer__worlds a:hover, .lm-footer__legal a:hover { color: var(--wp--preset--color--blush); }
.lm-footer__worlds { text-align: center; font-family: var(--wp--preset--font-family--sans); font-size: 11px; line-height: 2.55; letter-spacing: var(--lm-track); text-transform: uppercase; }
.lm-footer__worlds a { color: var(--wp--preset--color--copper); }
.lm-footer__bottom { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin-top: 5rem; }
.lm-footer__copy, .lm-footer__legal { font-family: var(--wp--preset--font-family--sans); font-size: 11.5px; letter-spacing: .04em; text-transform: none; color: var(--wp--preset--color--slate); margin: 0; }
.lm-footer__legal a { color: var(--wp--preset--color--slate); }
.wp-site-blocks:has(.lm-contactband) .lm-footer { padding-top: 3rem; }
@media (max-width: 782px) {
  .lm-footer { padding: 3.5rem 1.5rem 2rem; }
  .wp-site-blocks:has(.lm-contactband) .lm-footer { padding-left: calc(var(--lm-frame) + 1.25rem); padding-right: calc(var(--lm-frame) + 1.25rem); }
  .lm-footer__subscribe { margin-bottom: 3rem; }
  .lm-footer__cols { grid-template-columns: 1fr; gap: 2rem; text-align: center; padding-top: 2.5rem; }
  .lm-footer__address, .lm-footer__social { text-align: center; }
  .lm-footer__bottom { flex-direction: column; align-items: center; gap: .6rem; margin-top: 3rem; text-align: center; }
}

/* Point 3: About and Contact first screen: headline ≈ 44 px italic, 48 px blush hairline, line below Lato 15 px #C6CFDA */
.lm-cover h1, body .lm-cover h1 { font-size: clamp(2rem, 5.5vw, 2.75rem); line-height: 1.2; font-style: italic; }
.lm-cover hr.lm-rule--cover { width: 48px; height: 0; border: 0; border-top: 1px solid var(--wp--preset--color--blush); background: none; margin: 1.9rem auto 1.6rem; }
body .lm-cover p.lm-cover__sub { font-family: var(--wp--preset--font-family--sans); font-style: normal; font-size: 15px; line-height: 1.75; color: #C6CFDA; max-width: 34em; margin: 0 auto; letter-spacing: .01em; }

/* Point 6: Contact, the four worlds in fixed columns 70 · 420 · 260 · rest, all left-aligned except the link, name on one line */
.lm-index--contact .lm-index__row, body .lm-index--contact .lm-index__row { grid-template-columns: 70px 420px 260px minmax(0, 1fr); column-gap: 0; row-gap: 0; }
.lm-index--contact .lm-index__num { grid-column: 1; grid-row: 1; }
.lm-index--contact .lm-index__title { grid-column: 2; grid-row: 1; white-space: nowrap; }
.lm-index--contact .lm-index__body { grid-column: 3; grid-row: 1; }
.lm-index--contact .lm-index__desc { margin: 0; }
.lm-index--contact .lm-index__enter { grid-column: 4; grid-row: 1; justify-self: end; text-align: right; letter-spacing: .2em; margin: 0; }
.lm-index--contact .lm-index__row:hover { border-bottom-color: var(--wp--preset--color--blush); }
@media (max-width: 1180px) and (min-width: 783px) {
  .lm-index--contact .lm-index__row, body .lm-index--contact .lm-index__row { grid-template-columns: 56px minmax(0, 1fr) 190px 300px; }
  .lm-index--contact .lm-index__title { white-space: normal; }
}
@media (max-width: 782px) {
  .lm-index--contact .lm-index__row, body .lm-index--contact .lm-index__row { grid-template-columns: 1fr; row-gap: .3rem; }
  .lm-index--contact .lm-index__num, .lm-index--contact .lm-index__title, .lm-index--contact .lm-index__body, .lm-index--contact .lm-index__enter { grid-column: 1; grid-row: auto; justify-self: start; text-align: left; }
  .lm-index--contact .lm-index__title { white-space: normal; }
}
/* "Write to Us" in the same italic headline style as the other sections */
body h3.lm-statement { font-family: var(--wp--preset--font-family--serif); font-style: italic; font-weight: 400; font-size: clamp(1.75rem, 3vw, 2.625rem); line-height: 1.22; color: var(--wp--preset--color--navy); letter-spacing: 0; margin: 0 0 1rem; }

/* Point 10, phone: the four worlds on two balanced lines ("Advisory · Healthcare" / "Journeys · Hospitality"), no dot at a line end */
@media (max-width: 782px) {
  .lm-sep-break { display: block; height: 0; overflow: hidden; font-size: 0; line-height: 0; }
}
/* Point 10, phone menu: the close cross sits where the menu button was (set by script), small line EN · DE + contact at the bottom */
.lm-menu-extra { display: none; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .lm-menu-extra { display: block; position: absolute; left: 0; right: 0; bottom: 2.5rem; text-align: center; padding: 0 1.5rem; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .lm-menu-extra p { font-family: var(--wp--preset--font-family--sans); font-size: 11px; line-height: 2; letter-spacing: .06em; color: var(--wp--preset--color--slate); margin: 0; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .lm-menu-extra a { font-family: var(--wp--preset--font-family--sans) !important; font-size: 11px !important; letter-spacing: .06em !important; color: var(--wp--preset--color--slate) !important; text-transform: none; }
.wp-block-navigation.lm-nav .wp-block-navigation__responsive-container.is-menu-open .lm-menu-extra a.is-current { color: var(--wp--preset--color--ivory) !important; }
/* v1.0.35: WordPress folds the menu into the menu button only below 600 px; between 600 and 782 px six items plus EN DE do not fit
   (two rows over the title). So the phone menu (menu button, EN DE next to it, full-screen overlay) is used up to 782 px. */
@media (min-width: 600px) and (max-width: 782px) {
  .lm-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
  .lm-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
  .lm-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { display: flex !important; }
  .lm-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { flex-direction: column; }
}

/* v1.0.37: language switch as in the correction PDF 17.10. (page 1: one language white, one blush, no dot); which one is blush comes from the first design (14.10.): the active language. */
body .lm-header .lm-lang a, body .lm-header .lm-lang .wp-block-navigation-item__label { color: var(--wp--preset--color--ivory); }
html[lang^="en"] body .lm-header .lm-lang li:first-child a, html[lang^="en"] body .lm-header .lm-lang li:first-child .wp-block-navigation-item__label,
html[lang^="de"] body .lm-header .lm-lang li:last-child a, html[lang^="de"] body .lm-header .lm-lang li:last-child .wp-block-navigation-item__label { color: var(--wp--preset--color--blush); }
