/* MOVARA — the few rules theme.json cannot express. Loaded in the front end and the editor. */

/* Condensed widths of Archivo (variable axis 62–125 %) per heading level. */
h1, .wp-block-post-title, .has-display-font-size { font-stretch: 66%; }
h2, .has-xx-large-font-size { font-stretch: 70%; }
h3, h4, .has-x-large-font-size { font-stretch: 85%; }
h1, h2, h3, h4 { text-wrap: balance; }
/* German compounds ("Tauglichkeitsuntersuchung") are wider than a 360 px screen at display sizes: hyphenate, break as a last resort. */
h1, h2, h3, h4, .wp-block-post-title { hyphens: auto; overflow-wrap: break-word; }
:where(p, li, td, th, dd, figcaption, summary) { overflow-wrap: break-word; }

body { -webkit-font-smoothing: antialiased; font-variant-numeric: tabular-nums; }
:where(a) { text-underline-offset: 3px; }
:focus-visible { outline: 2px solid var(--wp--preset--color--petrol); outline-offset: 2px; }
.is-style-stage :focus-visible { outline-color: var(--wp--preset--color--gletscher); }

/* Paragraph styles */
.is-style-eyebrow { font-family: var(--wp--preset--font-family--mono); font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--stein); }
.is-style-stage .is-style-eyebrow { color: var(--wp--custom--stage-muted); }
.is-style-kennung { font-family: var(--wp--preset--font-family--mono); font-size: 0.72rem; color: var(--wp--preset--color--petrol); }
.is-style-messwert { font-family: var(--wp--preset--font-family--mono); font-weight: 500; color: var(--wp--custom--signal); }
.is-style-lead { font-size: var(--wp--preset--font-size--large); line-height: 1.5; color: var(--wp--preset--color--graphit-2); max-width: 44ch; }
/* In a centred (constrained) section a narrower lead would sit indented under its heading. */
.is-layout-constrained > .is-style-lead { max-width: var(--wp--style--global--content-size); }
.is-style-stage .is-style-lead { color: var(--wp--custom--stage-text); }

/* List styles */
.is-style-plain { list-style: none; padding-left: 0; }
.is-style-lines { list-style: none; padding-left: 0; border-top: 1px solid var(--wp--preset--color--linie); }
.is-style-lines > li { padding: 0.8rem 0; border-bottom: 1px solid var(--wp--preset--color--linie); }
.is-style-stage .is-style-lines, .is-style-stage .is-style-lines > li { border-color: var(--wp--custom--stage-line); }

/* Outline button (core "outline" style) */
.wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; color: currentColor; border-color: currentColor; }
.is-style-stage .wp-block-button.is-style-outline > .wp-block-button__link { color: var(--wp--preset--color--kalk); border-color: rgba(242, 243, 240, 0.5); }

/* Chrome: promo bar, header, footer. Both bars reach the screen edge; their content keeps a margin. */
.mv-promo, .mv-header { padding-left: var(--wp--preset--spacing--40); padding-right: var(--wp--preset--spacing--40); }
.mv-header .wp-block-button__link { white-space: nowrap; }
@media (max-width: 781px) {
	/* Logo, menu, cart and "Termin" have to fit into 360 px. */
	.wp-block-group.mv-header { gap: 0.75rem; }
	.mv-nur-breit { display: none; }
}
.mv-promo { font-size: 0.8rem; font-weight: 500; }
.mv-promo p { margin: 0; }
.mv-header { border-bottom: 1px solid var(--wp--preset--color--linie); }
.mv-logo { margin: 0; line-height: 1; }
.mv-logo a { font-family: var(--wp--preset--font-family--display); font-stretch: 125%; font-weight: 800; font-size: 1.25rem; letter-spacing: 0.14em; color: var(--wp--preset--color--graphit); text-decoration: none; }
.mv-logo small { display: block; margin-top: 0.3rem; font-family: var(--wp--preset--font-family--mono); font-size: 0.55rem; letter-spacing: 0.2em; color: var(--wp--preset--color--stein); }
.mv-footer .mv-logo a { color: var(--wp--preset--color--kalk); }
.mv-footer { font-size: 0.875rem; }
.mv-footer h4 { font-family: var(--wp--preset--font-family--body); font-stretch: 100%; font-size: 0.875rem; font-weight: 600; }
.mv-footer-bottom { border-top: 1px solid var(--wp--custom--stage-line); font-family: var(--wp--preset--font-family--mono); font-size: 0.72rem; }
.mv-footer-bottom strong { color: #F0784A; font-weight: 500; }

/* Numbers and measurement traces in patterns */
.mv-big { font-family: var(--wp--preset--font-family--display); font-stretch: 62%; font-weight: 850; font-size: clamp(3.5rem, 6vw + 1rem, 6rem); line-height: 0.9; }
.mv-chart svg { width: 100%; height: auto; display: block; }

/* Section heads: eyebrow + title left, action right */
.mv-sec-head { margin-bottom: var(--wp--preset--spacing--40); }
.mv-sec-head h2 { max-width: 18ch; }
.mv-rule-top { border-top: 2px solid var(--wp--preset--color--graphit); padding-top: 1.25rem; }
.mv-small { font-size: 0.8rem; }
.is-style-stage .mv-small, .mv-source { color: var(--wp--custom--stage-muted); font-family: var(--wp--preset--font-family--mono); font-size: 0.72rem; }
.mv-source { color: var(--wp--preset--color--stein); }

/* Hero */
.mv-hero h1 { margin-block: 0.4em 0.35em; }
.mv-hero-media { position: relative; }
.mv-hero-media .wp-block-image { margin: 0; }
.mv-hero-media img { width: 100%; aspect-ratio: 8 / 9; object-fit: cover; display: block; }
.mv-live { position: absolute; top: 1.5rem; left: 1.5rem; min-width: 14rem; padding: 0.9rem 1rem; border-radius: 2px; background: rgba(19, 23, 26, 0.84); color: var(--wp--preset--color--kalk); font-family: var(--wp--preset--font-family--mono); font-size: 0.75rem; }
.mv-live > * + * { margin-block-start: 0.35rem; }
.mv-live p { margin: 0; display: flex; justify-content: space-between; gap: 1.5rem; }
.mv-live p span:first-child { color: #9FB0AC; }
.mv-sig { color: #F0784A; }
.mv-facts { gap: 2.25rem; border-top: 1px solid var(--wp--preset--color--linie); padding-top: 1rem; margin-top: 2rem; }
.mv-facts p { margin: 0; font-size: 0.8rem; color: var(--wp--preset--color--stein); }
.mv-facts strong { display: block; font-family: var(--wp--preset--font-family--display); font-stretch: 80%; font-size: 1.65rem; font-weight: 800; color: var(--wp--preset--color--graphit); }
@media (max-width: 781px) {
	.mv-hero .wp-block-columns { flex-direction: column-reverse; }
	.mv-live { top: 0.75rem; left: 0.75rem; min-width: 0; font-size: 0.7rem; }
	.mv-live p:nth-child(2), .mv-live p:nth-child(3) { display: none; }
}

/* Entry paths */
.mv-einstiege { border-block: 1px solid var(--wp--preset--color--linie); }
.mv-einstiege .wp-block-columns { gap: 0; }
.mv-einstieg { padding: 1.75rem 1.5rem 1.75rem 0; }
.mv-einstieg + .mv-einstieg { border-left: 1px solid var(--wp--preset--color--linie); padding-left: 1.5rem; }
.mv-einstieg h3 { font-size: 1.75rem; font-stretch: 78%; margin: 0.3rem 0; }
.mv-einstieg h3 a { color: inherit; text-decoration: none; }
.mv-einstieg h3 a::after { content: ""; position: absolute; inset: 0; }
.mv-einstieg { position: relative; }
.mv-einstieg:hover { background: var(--wp--preset--color--papier); }
.mv-einstieg p:last-child { color: var(--wp--preset--color--graphit-2); font-size: 0.9rem; margin: 0; }
@media (max-width: 781px) { .mv-einstieg + .mv-einstieg { border-left: 0; border-top: 1px solid var(--wp--preset--color--linie); padding-left: 0; } }

/* Charts inside dark stages */
.mv-chart img { width: 100%; height: auto; }

/* Pathway (PACE4) */
.mv-phases { gap: 1.75rem; }
.mv-phase .mv-phase-letter { font-family: var(--wp--preset--font-family--display); font-stretch: 62%; font-weight: 850; font-size: 3.75rem; line-height: 1; margin: 0; }
.mv-phase h3 { margin: 0.2rem 0 0.15rem; }
.mv-phase p { font-size: 0.9rem; }
.mv-gate { font-size: 0.85rem; border-top: 1px dashed var(--wp--preset--color--linie); padding-top: 0.5rem; }
.mv-path + .mv-path { margin-top: var(--wp--preset--spacing--50); }
.mv-pfad-controls { display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: flex-end; margin-bottom: 1.5rem; }
.mv-seg { display: inline-flex; border: 1px solid var(--wp--preset--color--graphit); border-radius: 2px; overflow: hidden; }
.mv-seg button { font: 500 0.85rem/1 var(--wp--preset--font-family--body); padding: 0.6rem 0.9rem; background: transparent; color: var(--wp--preset--color--graphit); border: 0; border-right: 1px solid var(--wp--preset--color--graphit); cursor: pointer; }
.mv-seg button:last-child { border-right: 0; }
.mv-seg button[aria-pressed="true"], .mv-seg button[aria-selected="true"] { background: var(--wp--preset--color--graphit); color: var(--wp--preset--color--kalk); }
.mv-pfad.has-tabs .mv-path-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.mv-pfad.has-tabs .mv-path + .mv-path { margin-top: 0; }

/* Longevity measures */
.mv-measures li { display: flex; justify-content: space-between; gap: 1rem; color: var(--wp--preset--color--kalk); }
.mv-unit { font-family: var(--wp--preset--font-family--mono); font-size: 0.75rem; color: var(--wp--custom--stage-muted); white-space: nowrap; }

/* Book */
.mv-book-img img { width: 100%; height: auto; }

/* Wordmarks (set in type, no logo files) */
.mv-marks { border-block: 1px solid var(--wp--preset--color--linie); gap: 0; margin-block: 1.5rem; }
.mv-mark { margin: 0; padding: 1.6rem 0.5rem; text-align: center; color: #5E6866; line-height: 1.1; }
.mv-mark-1 { font-family: var(--wp--preset--font-family--display); font-stretch: 62%; font-weight: 800; letter-spacing: 0.08em; }
.mv-mark-2 { font-style: italic; font-weight: 600; }
.mv-mark-3 { font-family: var(--wp--preset--font-family--mono); letter-spacing: 0.12em; font-size: 0.85rem; }
.mv-mark-4 { font-family: var(--wp--preset--font-family--display); font-stretch: 110%; font-weight: 900; }
.mv-mark-5 { font-family: var(--wp--preset--font-family--display); font-stretch: 90%; font-weight: 700; }
.mv-mark-6 { letter-spacing: 0.2em; font-weight: 500; }

/* Demo notice */
.movara-demo-hinweis { font-family: var(--wp--preset--font-family--mono); font-size: 0.72rem; }

/* Pages imported from the copy deck (scripts/import): cards, key facts, notes, picture slots */
.mv-cards { gap: 2rem 1.75rem; margin-block: 1.75rem; }
.mv-card { border-top: 2px solid var(--wp--preset--color--graphit); padding-top: 0.9rem; }
.mv-card > * { margin-block: 0 0.6rem; }
.mv-card h3 { font-size: 1.35rem; }
.mv-card p { font-size: 0.95rem; }
.mv-card .mv-bild { margin: 0 0 0.9rem; }
.mv-card .mv-bild img { aspect-ratio: 4 / 5; }
.mv-card .mv-bild figcaption { display: none; }
.is-style-stage .mv-card { border-top-color: var(--wp--custom--stage-line); }
.mv-eckdaten { gap: 1rem 2rem; border-block: 1px solid var(--wp--preset--color--linie); padding-block: 1rem; margin-block: 1.5rem; }
.mv-fakt { margin: 0; font-size: 0.95rem; }
.mv-fakt span { display: block; margin-bottom: 0.3rem; font-family: var(--wp--preset--font-family--mono); font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--stein); }
.mv-hinweis { border-left: 3px solid var(--wp--custom--signal); padding: 0.8rem 1rem; background: var(--wp--preset--color--papier); font-size: 0.95rem; }
.is-style-papier .mv-hinweis { background: var(--wp--preset--color--kalk); }
.is-style-stage .mv-hinweis { background: transparent; }
.mv-label { margin-bottom: 0.3rem; }
.mv-bild { margin-block: 1.5rem; }
.mv-bild img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; }
.mv-bild.mv-chart img { aspect-ratio: auto; object-fit: contain; }
.mv-bild img[src$="/pace4.svg"], .mv-bild img[src$="/lageplan.svg"] { aspect-ratio: auto; object-fit: contain; }
.mv-bild figcaption { margin-top: 0.4rem; font-family: var(--wp--preset--font-family--mono); font-size: 0.7rem; color: var(--wp--preset--color--stein); }
.is-style-stage .mv-bild figcaption { color: var(--wp--custom--stage-muted); }
.mv-galerie { gap: 1rem; }
.mv-galerie .mv-bild { margin: 0; }
.mv-hero-cols { gap: var(--wp--preset--spacing--50); align-items: center; }
.mv-hero-media .mv-bild { margin: 0; }
.mv-hero-media .mv-bild img { aspect-ratio: 1 / 1; }
.wp-block-details { border-top: 1px solid var(--wp--preset--color--linie); padding-block: 0.9rem; margin: 0; }
.wp-block-details:last-of-type { border-bottom: 1px solid var(--wp--preset--color--linie); }
.wp-block-details summary { font-weight: 600; cursor: pointer; }
.wp-block-details[open] > summary { margin-bottom: 0.6rem; }
.wp-block-details > :not(summary) { max-width: 70ch; }
.mv-table { font-size: 0.9rem; }
.mv-table th { text-align: left; font-family: var(--wp--preset--font-family--mono); font-size: 0.7rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--stein); }
.mv-table th, .mv-table td { border: 0; border-bottom: 1px solid var(--wp--preset--color--linie); padding: 0.6rem 0.9rem 0.6rem 0; vertical-align: top; overflow-wrap: break-word; hyphens: auto; }
/* Journal: category filter as one row of links */
.mv-filter { display: flex; flex-wrap: wrap; gap: 0.4rem 1.25rem; font-size: 0.9rem; margin-block: 0.5rem 2rem; }
/* WooCommerce shop: the sort select has a fixed width and pushed the page 19 px past a 360 px screen */
@media (max-width: 781px) {
	.wp-block-woocommerce-catalog-sorting { flex: 1 1 100%; min-width: 0; }
	.wp-block-woocommerce-catalog-sorting select.orderby { width: 100%; max-width: 100%; }
}
/* WooCommerce product pages: the block template's SKU/category line is English-only and not needed */
.wp-block-woocommerce-product-meta { display: none; }
.mv-kasten > :first-child { margin-top: 0; }
.mv-kasten > :last-child { margin-bottom: 0; }
.mv-autor { font-size: 0.9rem; }
.mv-release span { display: inline-block; min-width: 14rem; font-family: var(--wp--preset--font-family--mono); font-size: 0.75rem; color: var(--wp--preset--color--stein); }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
