/*
 * EvKitas Designsystem 2.0 · Editorial
 * YOOtheme Pro child theme: templates/yootheme_evkitas/css/custom.css
 * Native Builder structure, menus, dialogs and language switching remain intact.
 * Brand values are supplied by the native child Less styles and their presets.
 */

/* Internal aliases retain editable brand tokens from the compiled template style.
   No institution is inferred from URLs, menu IDs, language codes or logo names. */
:root {
    --evk-color-brand: var(--evk-brand, #59675a);
    --evk-color-action: var(--evk-brand-strong, #293d30);
    --evk-color-soft: var(--evk-brand-soft, #eef1eb);
    --evk-color-ink: var(--evk-ink, #22302b);
    --evk-color-muted: var(--evk-muted, #526052);
    --evk-color-paper: var(--evk-paper, #ffffff);
    --evk-color-line: var(--evk-line, #dce3d7);
    --evk-color-on-action: var(--evk-on-action, #ffffff);
    --evk-color-focus: var(--evk-focus, #035e75);
    --evk-font-body: var(--evk-body-font, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
    --evk-font-heading: var(--evk-heading-font, Manrope, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
    --evk-ui-content-width: var(--evk-content-width, 1280px);
    --evk-ui-radius-sm: var(--evk-radius-sm, 6px);
    --evk-ui-radius-md: var(--evk-radius-md, 10px);
    --evk-ui-radius-lg: var(--evk-radius-lg, 12px);
    --evk-ui-section-gap: var(--evk-section-gap, clamp(32px, 4vw, 56px));
    --evk-ui-grid-gap: var(--evk-grid-gap, clamp(16px, 2vw, 28px));
    --evk-ui-panel-padding: var(--evk-panel-padding, clamp(24px, 3vw, 40px));
    --evk-ui-control-height: var(--evk-control-height, 44px);
    --evk-ui-transition: var(--evk-transition, 200ms);
}

/* Only the YOOtheme frontend and explicitly labelled Builder components are
   styled. No administrator, editor, form renderer or customizer shell resets. */
.tm-page {
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    font-family: var(--evk-font-body);
    font-size: 18px;
    line-height: 1.7;
}

.tm-page :where(h1, h2, h3, h4, h5, h6, .uk-h1, .uk-h2, .uk-h3) {
    color: var(--evk-color-ink);
    font-family: var(--evk-font-heading);
    font-weight: 650;
    overflow-wrap: break-word;
}

.tm-page :where(h1, .uk-h1) {
    font-size: clamp(40px, 28px + 2vw, 62px);
    line-height: 1.1;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.tm-page :where(h2, .uk-h2) {
    font-size: clamp(1.75rem, 1.3rem + 1.3vw, 2.5rem);
    line-height: 1.2;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

.tm-page :where(h3, .uk-h3) {
    font-size: clamp(1.2rem, 1rem + 0.5vw, 1.5rem);
    line-height: 1.35;
    letter-spacing: -0.015em;
}

.tm-page :where(p, li, dd) { overflow-wrap: break-word; }
.tm-page :where(p, ul, ol) { margin-block: 0 1.15em; }
.tm-page :where(.el-content, .evk-hero-copy) > :last-child { margin-bottom: 0; }
.tm-page :where(.uk-text-muted, .el-meta) { color: var(--evk-color-muted) !important; }
.tm-page :where(.uk-container:not(.uk-container-expand)) { max-width: var(--evk-ui-content-width); }
.tm-page :where(main, .evk-footer) :where(p, ul, ol, dl) { max-width: 72ch; }
.tm-page :where(main, .evk-footer) a:not([class]) {
    color: var(--evk-color-action);
    text-decoration: underline;
    text-decoration-thickness: 0.075em;
    text-underline-offset: 0.2em;
}
.tm-page :where(a, button, input, select, textarea, summary, [role="button"]):focus-visible {
    outline: 3px solid var(--evk-color-focus);
    outline-offset: 4px;
}
.tm-page :where([id]) { scroll-margin-top: 6rem; }

/* Native buttons retain their Builder settings and link destinations. */
.tm-page .uk-button {
    min-height: var(--evk-ui-control-height);
    box-sizing: border-box;
    border-radius: 6px;
    font-family: var(--evk-font-body);
    font-size: 0.875rem;
    line-height: 1.4;
    padding: 13px 22px;
    text-transform: none;
    letter-spacing: 0;
    white-space: normal;
    transition: background-color var(--evk-ui-transition), color var(--evk-ui-transition), border-color var(--evk-ui-transition);
}
.tm-page .uk-button-primary,
.tm-page .uk-button-secondary {
    color: var(--evk-color-on-action);
    background: var(--evk-color-action);
    border-color: var(--evk-color-action);
}
.tm-page .uk-button-primary:hover,
.tm-page .uk-button-secondary:hover {
    color: var(--evk-color-on-action);
    background: var(--evk-color-ink);
    border-color: var(--evk-color-ink);
}
.tm-page .uk-button-default {
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    border: 1px solid var(--evk-color-line);
}
.tm-page .uk-button-default:hover {
    color: var(--evk-color-ink);
    background: var(--evk-color-soft);
    border-color: var(--evk-color-brand);
}
.tm-page .uk-button-text {
    min-height: var(--evk-ui-control-height);
    border-radius: 0;
    color: var(--evk-color-action);
    padding-inline: 0;
}

/* Compact classic header. UIkit still controls breakpoints, dropdown positioning,
   dialog visibility, Escape handling, focus behaviour and sticky behaviour. */
:where(.tm-header, .tm-header-mobile) .uk-navbar-container {
    background: var(--evk-color-paper);
    border-bottom: 1px solid var(--evk-color-line);
}
.tm-header .uk-navbar {
    gap: clamp(14px, 1.7vw, 26px);
    min-width: 0;
}
.tm-header :where(.uk-navbar-left, .uk-navbar-right) { gap: clamp(14px, 1.7vw, 26px); }
.tm-header :where(.uk-navbar-item, .uk-navbar-toggle) { min-height: 76px; }
.tm-header .uk-navbar-nav { gap: clamp(14px, 1.6vw, 26px); }
.tm-header .uk-navbar-nav > li > a {
    min-height: 76px;
    max-width: 11.5rem;
    padding: 12px 0;
    color: var(--evk-color-ink);
    font-family: var(--evk-font-body);
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: 0;
    white-space: normal;
    text-decoration: none;
    text-underline-offset: 0.5em;
}
.tm-header .uk-navbar-nav > .uk-active > a,
.tm-header .uk-navbar-nav > li > a[aria-current="page"] {
    text-decoration: underline;
    text-decoration-color: var(--evk-color-brand);
    text-decoration-thickness: 2px;
}
.tm-header .uk-logo,
.tm-header-mobile .uk-logo {
    color: var(--evk-color-ink);
    font-family: var(--evk-font-heading);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.035em;
    white-space: normal;
    text-decoration: none;
}
.tm-header .uk-logo { font-size: 1.375rem; max-width: 12rem; }
.tm-header-mobile .uk-logo { font-size: 1.3rem; max-width: 12rem; }
.tm-header .uk-logo img { max-height: 60px; width: auto; }
.tm-header-mobile .uk-logo img { max-height: 58px; width: auto; }
.tm-header-mobile .uk-navbar-item,
.tm-header-mobile .uk-navbar-toggle { min-height: 68px; }
.tm-header-mobile .uk-navbar-toggle {
    color: var(--evk-color-ink);
    min-width: var(--evk-ui-control-height);
}
.tm-header .uk-navbar-dropdown,
.tm-header-mobile .uk-navbar-dropdown {
    padding: 16px;
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-md);
    background: var(--evk-color-paper);
    box-shadow: 0 16px 42px rgb(0 0 0 / 8%);
}
.tm-header .uk-navbar-dropdown-nav > li > a {
    min-height: var(--evk-ui-control-height);
    padding: 10px 12px;
    border-radius: var(--evk-ui-radius-sm);
    color: var(--evk-color-ink);
    font-size: 0.9375rem;
    line-height: 1.5;
    white-space: normal;
}
.tm-header .uk-navbar-dropdown-nav > li > a:hover,
.tm-header .uk-navbar-dropdown-nav > .uk-active > a { background: var(--evk-color-soft); }

/* Add evk-facility-switcher to the native Joomla menu module. Its output,
   destinations, selection and language filtering remain Joomla responsibilities. */
.evk-facility-switcher :where(.uk-navbar-nav, .uk-subnav) > li > a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8125rem;
    text-transform: none;
}
.evk-facility-switcher :where(.uk-icon, .uk-navbar-parent-icon) { flex: 0 0 auto; }

/* The native Joomla language module is only styled, never rebuilt or filtered.
   Both native dropdown and language-list output are supported. */
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages {
    color: var(--evk-color-ink);
    font-family: var(--evk-font-body);
    font-size: 0.8125rem;
    line-height: 1.5;
}
.tm-header .mod-languages :where(a, button, span) {
    font-family: var(--evk-font-body);
    letter-spacing: normal;
    text-transform: none;
}
/* The native desktop language popup may be moved directly under body. */
@media (min-width: 1200px) {
    body > .uk-dropdown {
        min-width: min(18rem, calc(100vw - 32px));
        max-width: calc(100vw - 32px);
    }
    body > .uk-dropdown .uk-dropdown-nav > li > a {
        font-family: var(--evk-font-body);
        letter-spacing: normal;
        text-transform: none;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages :where(a, button) {
    min-height: var(--evk-ui-control-height);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--evk-color-ink);
    text-transform: none;
    text-decoration: none;
    white-space: normal;
}
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages select {
    min-height: var(--evk-ui-control-height);
    max-width: 100%;
    color: var(--evk-color-ink);
    background-color: var(--evk-color-paper);
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-sm);
    font: inherit;
}
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages .lang-active a {
    text-decoration: underline;
    text-decoration-color: var(--evk-color-brand);
    text-decoration-thickness: 2px;
    text-underline-offset: 0.25em;
}
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages :where(.dropdown-toggle, [data-bs-toggle="dropdown"]) {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 8px;
    background: transparent;
    border: 0;
    border-radius: var(--evk-ui-radius-sm);
}
:where(.tm-header, .tm-header-mobile, #tm-dialog-mobile) .mod-languages .dropdown-toggle::after {
    margin: 0 0 2px;
    vertical-align: middle;
    flex-shrink: 0;
}
#tm-dialog-mobile :where(.uk-offcanvas-bar, .uk-modal-dialog) {
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    padding: clamp(24px, 5vw, 40px);
}
#tm-dialog-mobile .uk-nav > li > a {
    min-height: 56px;
    padding-block: 16px;
    color: var(--evk-color-ink);
    font-size: 1.0625rem;
    line-height: 1.5;
    text-transform: none;
    letter-spacing: normal;
    border-bottom: 1px solid var(--evk-color-line);
}
#tm-dialog-mobile .uk-nav > .uk-active > a { font-weight: 600; }
#tm-dialog-mobile :where(.evk-facility-switcher, .mod-languages) { margin-top: 24px; }
#tm-dialog-mobile .mod-languages :where(a, button, select) { font-size: 1rem; }
#tm-dialog-mobile .mod-languages > .uk-subnav {
    margin-left: 0;
    max-width: 100%;
}
#tm-dialog-mobile .mod-languages > .uk-subnav > li {
    padding-left: 0;
    min-width: 0;
    max-width: 100%;
}
#tm-dialog-mobile .mod-languages .uk-subnav > li > a {
    max-width: 100%;
    font-size: 16px;
    letter-spacing: normal;
    text-transform: none;
    white-space: normal;
    overflow-wrap: anywhere;
}
/* Only the native dialog-mobile facility module emits this current-root text. */
#tm-dialog-mobile .evk-mobile-context {
    box-sizing: border-box;
    margin: 0;
    min-height: 72px;
    padding: 18px 72px 18px 24px;
    color: var(--evk-color-ink);
    background: var(--evk-color-soft);
    border-bottom: 3px solid var(--evk-color-brand);
    font-family: var(--evk-font-heading);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: normal;
    text-transform: none;
    overflow-wrap: break-word;
}
/* The verified native modal wraps this module in a relative uk-panel. Release
   only that wrapper so the context strip is anchored to the dialog itself. */
@supports selector(:has(*)) {
    #tm-dialog-mobile .uk-panel:has(> .evk-mobile-context) { position: static; }
    #tm-dialog-mobile .uk-modal-dialog:has(.evk-mobile-context) {
        position: relative;
        padding-top: 88px;
    }
    #tm-dialog-mobile .uk-modal-dialog:has(.evk-mobile-context) > .uk-modal-body {
        padding-top: 24px;
        /* UIkit writes a viewport min-height inline. Include the body's own
           padding, then deduct the context reserve and outer bottom padding.
           No fixed/max height: longer menus may still grow and scroll. */
        box-sizing: border-box !important;
        min-height: calc(100vh - 88px - clamp(24px, 5vw, 40px)) !important;
        min-height: calc(100dvh - 88px - clamp(24px, 5vw, 40px)) !important;
    }
    #tm-dialog-mobile .uk-modal-dialog .evk-mobile-context {
        position: absolute;
        inset: 0 0 auto;
        z-index: 1;
    }
    #tm-dialog-mobile .uk-modal-dialog:has(.evk-mobile-context) > :where(.uk-modal-close-default, .uk-modal-close-full) {
        z-index: 2;
        color: var(--evk-color-ink);
        background: transparent;
    }
}
.evk-facility-button {
    min-height: var(--evk-ui-control-height);
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--evk-font-body);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-transform: none;
    letter-spacing: normal;
    text-align: left;
}
.evk-facility-switcher .uk-dropdown {
    width: 280px;
    min-width: 240px;
    max-width: calc(100vw - 32px);
    padding: 12px;
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-md);
    background: var(--evk-color-paper);
    box-shadow: 0 16px 42px rgb(0 0 0 / 8%);
}
.evk-facility-switcher .uk-dropdown-nav > li > a {
    min-height: var(--evk-ui-control-height);
    display: flex;
    align-items: center;
    padding: 10px 12px;
    border-radius: var(--evk-ui-radius-sm);
    color: var(--evk-color-ink);
    font-size: 15px;
    line-height: 1.5;
    text-transform: none;
    letter-spacing: normal;
    white-space: normal;
}
.evk-facility-switcher .uk-dropdown-nav > .uk-active > a,
.evk-facility-switcher .uk-dropdown-nav > li > a:hover { background: var(--evk-color-soft); }

/* Builder component classes. Use UIkit's native rows, columns and gutters.
   CSS does not replace those grids with a second layout engine. */
.evk-section {
    --evk-section-pad-start: var(--evk-ui-section-gap);
    --evk-section-pad-end: var(--evk-ui-section-gap);
    padding-block: var(--evk-section-pad-start) var(--evk-section-pad-end);
}
/* These library sections intentionally set native padding to None. Restore only
   the central EvKitas rhythm when UIkit's !important utilities are present. */
.evk-section.uk-padding-remove-top { padding-top: var(--evk-section-pad-start) !important; }
.evk-section.uk-padding-remove-bottom { padding-bottom: var(--evk-section-pad-end) !important; }
.evk-section.uk-padding-remove-vertical { padding-block: var(--evk-section-pad-start) var(--evk-section-pad-end) !important; }
.evk-section-compact {
    --evk-section-pad-start: clamp(20px, 2.5vw, 36px);
    --evk-section-pad-end: clamp(20px, 2.5vw, 36px);
}
.evk-kicker {
    color: var(--evk-color-muted);
    font-family: var(--evk-font-body);
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.evk-kicker > :last-child { margin-bottom: 0; }
.evk-surface {
    padding: var(--evk-ui-panel-padding);
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-md);
}
.evk-surface-soft { background: var(--evk-color-soft); border-color: transparent; }
.evk-surface > :last-child { margin-bottom: 0; }
.evk-media { border-radius: var(--evk-ui-radius-md); }
.evk-media :where(img, video, .el-image),
img.evk-media,
video.evk-media {
    border-radius: var(--evk-ui-radius-md);
}
.evk-media img { display: block; max-width: 100%; }
.evk-image-caption { color: var(--evk-color-muted); font-size: 0.8125rem; line-height: 1.6; }

.evk-hero {
    --evk-section-pad-start: clamp(20px, 2.5vw, 36px);
    --evk-section-pad-end: clamp(12px, 1.5vw, 20px);
}
.evk-hero-copy {
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    padding-block: clamp(12px, 2vw, 28px);
    color: var(--evk-color-ink);
    background: transparent;
}
.evk-hero-copy :where(h1, .uk-h1) { max-width: 19ch; margin-block: 0.35em 0.4em; }
.evk-hero-copy :where(p, .el-content) { max-width: 52ch; color: var(--evk-color-muted); }
.evk-hero-copy :where(h2, .uk-h2) { font-size: clamp(1.375rem, 1.1rem + 0.7vw, 1.75rem); }
.evk-hero-copy .evk-kicker { margin-top: 0; }
.evk-hero-copy::before { content: ""; display: block; width: 40px; height: 4px; margin-bottom: 22px; background: var(--evk-color-brand); }
.evk-hero .evk-media { border-radius: var(--evk-ui-radius-lg); }
.evk-hero .evk-media :where(img, video, .el-image) {
    border-radius: var(--evk-ui-radius-lg);
    width: 100%;
    aspect-ratio: 1.2;
    object-fit: cover;
}
/* This source-verified leadership portrait retains its complete original frame.
   The ID belongs to our own Builder section, never to a Joomla menu item. */
#evk-arche-noah-leitung-team-einstieg .evk-media :where(img, .el-image) {
    width: 100%;
    max-width: 492px;
    height: auto;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: 50% 50%;
    margin-inline: auto;
}
/* Native image nodes render nothing before a real image is selected. Only a
   genuinely element-empty sibling column is omitted, never content or menus.
   The native split returns automatically as soon as the image node renders. */
@supports selector(:has(*)) {
    .evk-hero .uk-grid:has(> .evk-hero-copy) > [class*="uk-width-"]:not(.evk-hero-copy):not(:has(*)) {
        display: none;
    }
    .evk-hero .uk-grid:has(> [class*="uk-width-"]:not(.evk-hero-copy):not(:has(*))) > .evk-hero-copy {
        width: 100%;
        min-height: 0;
    }
    .evk-hero .uk-grid:has(> [class*="uk-width-"]:not(.evk-hero-copy):not(:has(*))) > .evk-hero-copy :where(h1, .uk-h1) {
        max-width: 24ch;
    }
    .evk-hero .uk-grid:has(> [class*="uk-width-"]:not(.evk-hero-copy):not(:has(*))) > .evk-hero-copy :where(p, .el-content) {
        max-width: 66ch;
    }
}
.evk-shortcuts {
    --evk-section-pad-start: clamp(20px, 2.5vw, 32px);
    --evk-section-pad-end: clamp(24px, 3vw, 40px);
}
.evk-shortcuts .evk-surface { height: 100%; box-sizing: border-box; padding: clamp(20px, 2vw, 28px); }
.evk-shortcuts .evk-surface .el-title { margin-bottom: 16px; }
.evk-shortcuts .evk-surface .uk-button { margin-top: 8px; }

.evk-shortcuts .el-item {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 88px;
    padding: clamp(18px, 2vw, 26px);
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-sm);
}
.evk-shortcuts .el-title { margin: 0; font-size: 0.9375rem; font-weight: 500; line-height: 1.5; }
.evk-shortcuts .el-image { flex-shrink: 0; color: var(--evk-color-action); }
.evk-shortcuts a.el-item:hover { background: var(--evk-color-soft); text-decoration: none; }
.evk-shortcuts a.el-item:focus-visible { outline-offset: -4px; }
.evk-about .evk-media :where(img, .el-image) { width: 100%; aspect-ratio: 1.3; object-fit: cover; }
.evk-about :where(.el-content, p) { max-width: 50ch; }

.evk-facts {
    --evk-section-pad-start: clamp(24px, 3vw, 36px);
    --evk-section-pad-end: clamp(24px, 3vw, 36px);
    padding-block: var(--evk-section-pad-start) var(--evk-section-pad-end);
    border-top: 1px solid var(--evk-color-line);
    border-bottom: 1px solid var(--evk-color-line);
}
.evk-facts :where(h2, .uk-h2) { font-size: clamp(1.5rem, 1.2rem + 0.8vw, 2rem); }
.evk-facts .el-item { min-width: 0; }
.evk-facts .el-title { font-size: 0.8125rem; color: var(--evk-color-muted); line-height: 1.6; }
.evk-facts .el-content { font-size: 1rem; font-weight: 500; color: var(--evk-color-ink); line-height: 1.6; }
.evk-facts .uk-grid-divider > :not(.uk-first-column)::before { border-color: var(--evk-color-line); }

.evk-tour .el-image { border-radius: var(--evk-ui-radius-md); }
.evk-tour img.el-image { width: 100%; aspect-ratio: 1.3; object-fit: cover; }
.evk-tour .el-title { font-size: 1rem; line-height: 1.5; margin-top: 16px; }
.evk-tour .el-content { color: var(--evk-color-muted); font-size: 0.9375rem; }
.evk-tour :where(.uk-slidenav, .uk-icon-button) {
    min-width: var(--evk-ui-control-height);
    min-height: var(--evk-ui-control-height);
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    border: 1px solid var(--evk-color-line);
    border-radius: 50%;
}
.evk-editorial {
    --evk-section-pad-start: var(--evk-ui-panel-padding);
    --evk-section-pad-end: var(--evk-ui-panel-padding);
    padding-inline: var(--evk-ui-panel-padding);
    padding-block: var(--evk-section-pad-start) var(--evk-section-pad-end);
    background: var(--evk-color-soft);
    border-radius: var(--evk-ui-radius-lg);
}
.evk-editorial .evk-media img { width: 100%; aspect-ratio: 1.2; object-fit: cover; }
.evk-contact {
    --evk-section-pad-start: clamp(32px, 4vw, 56px);
    --evk-section-pad-end: clamp(32px, 4vw, 56px);
    padding-block: var(--evk-section-pad-start) var(--evk-section-pad-end);
    color: var(--evk-color-ink);
    background: var(--evk-color-soft);
}
.evk-contact :where(.el-content, p) { max-width: 55ch; }

.evk-downloads .el-item {
    padding-block: 22px;
    border-bottom: 1px solid var(--evk-color-line);
}
.evk-downloads .el-title { color: var(--evk-color-ink); font-size: 1.0625rem; line-height: 1.5; }
.evk-downloads :where(.el-meta, .el-content) { color: var(--evk-color-muted); font-size: 0.9375rem; }
.evk-downloads .el-link { min-height: var(--evk-ui-control-height); }
.evk-news .el-item {
    height: 100%;
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-md);
    background: var(--evk-color-paper);
}
.evk-news .el-image { border-radius: var(--evk-ui-radius-md) var(--evk-ui-radius-md) 0 0; }
.evk-news img.el-image { width: 100%; aspect-ratio: 1.6; object-fit: cover; }
.evk-news .el-title { color: var(--evk-color-ink); font-size: 1.25rem; line-height: 1.4; }
.evk-news .el-meta { font-size: 0.8125rem; }
.evk-news .el-content { color: var(--evk-color-muted); font-size: 1rem; line-height: 1.7; }
.evk-news .uk-subnav > * > :first-child {
    min-height: var(--evk-ui-control-height);
    padding: 10px 16px;
    border: 1px solid var(--evk-color-line);
    border-radius: 999px;
    color: var(--evk-color-ink);
    font-size: 0.875rem;
    text-transform: none;
}
.evk-news .uk-subnav > .uk-active > a { color: var(--evk-color-on-action); background: var(--evk-color-action); }

.evk-footer {
    padding-block: clamp(40px, 5vw, 64px);
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    border-top: 1px solid var(--evk-color-line);
}
.evk-footer :where(h3, .el-title) { font-size: 1rem; line-height: 1.5; }
.evk-footer :where(p, li, .el-content) { font-size: 0.9375rem; line-height: 1.8; }
.evk-footer .uk-nav > li > a {
    min-height: var(--evk-ui-control-height);
    color: var(--evk-color-ink);
    padding-block: 10px;
}
.evk-footer a:hover { text-decoration: underline; text-underline-offset: 0.2em; }
.evk-footer-meta { padding-block: 22px; border-top: 1px solid var(--evk-color-line); color: var(--evk-color-muted); font-size: 0.8125rem; }

/* Mobile-only progressive two-level navigation. Native routes/language markup
   remain the source; panes are created only after all native inputs are found. */
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-vacated { margin-top: 0 !important; padding-top: 0; min-height: 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-stage { position: relative; min-width: 0; width: 100%; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-pane { box-sizing: border-box; min-width: 0; margin: 0; inset: 0 auto auto 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-pane[hidden] { display: none !important; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-animating { overflow: hidden; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-animating > .evk-mobile-pane { pointer-events: none; will-change: transform; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 24px; align-items: stretch; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .evk-facility-switcher { display: block; min-width: 0; margin: 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .uk-button {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    min-width: 0;
    min-height: 56px;
    height: auto;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid var(--evk-color-line);
    border-radius: var(--evk-ui-radius-sm);
    color: var(--evk-color-ink);
    background: var(--evk-color-paper);
    text-align: left;
}
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .uk-button:hover { background: var(--evk-color-soft); }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .uk-button-text::before { display: none; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .uk-icon { flex: 0 0 auto; order: -1; }
#tm-dialog-mobile:focus { outline: none; }
#tm-dialog-mobile :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--evk-color-focus); outline-offset: 3px; }
#tm-dialog-mobile :where(a, button, input, select, textarea, summary, [tabindex]):focus:not(:focus-visible) { outline: none; }
#tm-dialog-mobile .uk-logo { display: inline-flex; margin-bottom: 16px; }
#tm-dialog-mobile .uk-logo :where(img, svg) { width: auto; height: auto; max-width: 150px; max-height: 64px; object-fit: contain; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-control-label { display: -webkit-box; flex: 1 1 auto; min-width: 0; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; }
#tm-dialog-mobile.evk-mobile-enhanced :where(.evk-mobile-page-menu a, .evk-mobile-controls button, .evk-mobile-pane .mod-languages a, .evk-mobile-facility-list a, .evk-mobile-back) {
    font-family: var(--evk-font-body);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: normal;
    text-transform: none;
    white-space: normal;
}
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-pane h2 { margin: 16px 0; font-family: var(--evk-font-body); font-size: 20px; font-weight: 600; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-back { padding: 8px 0; min-height: 44px; color: var(--evk-color-ink); }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-facility-list { padding: 0; margin: 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-facility-list a { min-height: 52px; padding: 14px 0; color: var(--evk-color-ink); border-bottom: 1px solid var(--evk-color-line); }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .evk-facility-switcher > [uk-dropdown] { display: none !important; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-languages .mod-languages { margin-top: 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-languages .mod-languages :where(ul, .dropdown-menu, .uk-dropdown) { display: block !important; position: static !important; transform: none !important; opacity: 1 !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; padding: 0; margin: 0; border: 0; box-shadow: none; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-languages .mod-languages li { display: block; width: 100%; padding: 0; margin: 0; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-languages .mod-languages a:not(.dropdown-toggle) { display: flex; width: 100%; min-height: 52px; padding: 14px 0; border-bottom: 1px solid var(--evk-color-line); }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-languages .mod-languages :where(.dropdown-toggle, [data-bs-toggle="dropdown"]) { display: none; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-native-language-trigger { display: none !important; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-routing { padding: 48px 16px; text-align: center; }
#tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-routing-label { margin: 16px 0 0; font-family: var(--evk-font-body); font-size: 18px; }

/* Content remains available at every breakpoint. Do not hide menu branches,
   gallery items, longer translations, or extra cards to force a tidy layout. */
@media (max-width: 1199px) {
    .tm-header .uk-navbar-nav { gap: 16px; }
    .tm-header .uk-navbar-nav > li > a { font-size: 0.75rem; }
    .tm-header :where(.uk-navbar-left, .uk-navbar-right) { gap: 18px; }
}
@media (max-width: 959px) {
    .tm-page :where(h1, .uk-h1) { font-size: clamp(36px, 26px + 2vw, 48px); }
    .evk-hero-copy { min-height: 0; }
    .evk-hero .evk-media :where(img, .el-image) { aspect-ratio: 1.2; }
    .evk-editorial {
        --evk-section-pad-start: clamp(24px, 4vw, 32px);
        --evk-section-pad-end: clamp(24px, 4vw, 32px);
        padding-inline: clamp(20px, 4vw, 32px);
    }
    .evk-facts .el-content { font-size: 0.9375rem; }
}
@media (max-width: 639px) {
    .tm-page :where(h1, .uk-h1) { font-size: clamp(32px, 26px + 1.8vw, 40px); }
    .tm-page :where(h2, .uk-h2) { font-size: clamp(1.5rem, 1.2rem + 1.5vw, 1.875rem); }
    .evk-hero { --evk-section-pad-start: 20px; }
    .evk-hero-copy { padding-block: 28px; }
    .evk-hero-copy :where(h1, .uk-h1) { font-size: clamp(32px, 26px + 1.8vw, 40px); max-width: 20ch; }
    .evk-shortcuts .evk-surface { padding: 20px; }
    .evk-shortcuts .el-item { min-height: 84px; padding: 18px 14px; gap: 10px; }
    .evk-shortcuts .el-title { font-size: 0.875rem; }
    .evk-contact .uk-button { width: 100%; }
    .evk-news .uk-subnav { row-gap: 8px; }
}
@media (prefers-reduced-motion: reduce) {
    .tm-page :where(.uk-button, .el-item, .el-image, .uk-slidenav) { transition: none; }
    .tm-page [uk-scrollspy] { animation: none !important; opacity: 1 !important; }
    .tm-page { scroll-behavior: auto; }
}
@media (forced-colors: active) {
    .tm-page :where(.uk-button, .evk-surface, .evk-shortcuts .el-item, .evk-news .el-item) { border: 1px solid ButtonText; }
    .tm-page :where(a, button, input, select, textarea, summary):focus-visible { outline-color: Highlight; }
}

/* Native facility logo integrated into the mobile context strip. */
#tm-dialog-mobile .uk-panel:has(> .evk-mobile-brandbar) { position: static; }
#tm-dialog-mobile .evk-mobile-brandbar {
 position:absolute; inset:0 0 auto; z-index:1; box-sizing:border-box;
 min-height:88px; padding:12px 64px 12px 24px; display:flex; align-items:center;
 background:var(--evk-color-soft); border-bottom:3px solid var(--evk-color-brand);
}
#tm-dialog-mobile .evk-mobile-brandbar .uk-logo { margin:0; min-height:44px; max-width:100%; }
#tm-dialog-mobile .evk-mobile-brandbar .uk-logo img { max-width:min(220px,100%); max-height:60px; }
#tm-dialog-mobile .evk-mobile-brandbar .evk-mobile-context {
 position:absolute; width:1px; height:1px; min-height:0; padding:0; margin:-1px;
 overflow:hidden; clip-path:inset(50%); border:0; white-space:nowrap;
}
/* Native header; wrapping remains available for longer translated menus. */
.tm-header :where(.uk-navbar-item,.uk-navbar-toggle),
.tm-header .uk-navbar-nav > li > a { min-height:60px; }
.tm-header .uk-logo img { max-height:48px; }

/* Editorial components, centrally shared by native Builder pages. */
.evk-hero > .uk-container > .uk-grid { align-items: center; }
.evk-hero .evk-media { overflow: hidden; }
.evk-hero .evk-media img { max-height: 540px; }
.evk-hero-actions { margin-top: 28px; }
.evk-hero-actions .uk-button { font-size: 16px; font-weight: 600; }
.evk-hero-actions .uk-button-text { text-decoration: underline; text-underline-offset: 5px; }
.evk-hero-copy .uk-panel { font-size: 18px; line-height: 1.65; }
.evk-section h2::before { content: ""; display: block; width: 32px; height: 3px; margin-bottom: 18px; background: var(--evk-color-brand); }
.evk-section .el-title::before { display: none; }
.evk-shortcuts .evk-surface { border-radius: 8px; box-shadow: none; }
.evk-shortcuts .evk-surface .el-title { font-size: 20px; font-weight: 650; line-height: 1.3; }
.evk-shortcuts .evk-surface .uk-button-default { border-width: 0 0 1px; border-radius: 0; padding: 8px 0; text-align: left; background: transparent; }
.evk-facility-cards .evk-facility-card { padding: 0 20px 22px; display: flex; flex-direction: column; overflow: hidden; }
.evk-facility-cards .evk-facility-card > .el-image,
.evk-facility-cards .evk-facility-card > picture { margin-inline: -20px; width: calc(100% + 40px); max-width: none; }
.evk-facility-cards .evk-facility-card .el-image { box-sizing: border-box; height: 160px; width: 100%; object-fit: cover; border-bottom: 5px solid var(--evk-card-accent, var(--evk-color-brand)); }
.evk-facility-cards .evk-card-logo .el-image { object-fit: contain; padding: 24px; background: #fff; }
.evk-facility-cards .el-content { font-size: 16px; line-height: 1.6; margin-bottom: 20px; }
.evk-facility-cards .evk-facility-card > :last-child { margin-top: auto !important; }
.evk-facility-sandweg { --evk-card-accent: #bb6c46; }
.evk-facility-arche-noah { --evk-card-accent: #b58b24; }
.evk-facility-wohlgemuth { --evk-card-accent: #71875c; }
.evk-facility-wannenbad { --evk-card-accent: #367b72; }
.evk-about .uk-grid > [class*="uk-width-"]:only-child,
.evk-editorial .uk-grid > [class*="uk-width-"]:only-child { width: 100%; }
.evk-about .uk-grid:has(> :only-child) .uk-panel { max-width: 78ch; }
.evk-editorial { border-radius: 0; padding-inline: 0; border-block: 1px solid var(--evk-color-line); }
.evk-facts { background: var(--evk-color-soft); }
.evk-tour .uk-panel { height: 100%; box-sizing: border-box; border-bottom: 1px solid var(--evk-color-line); padding-bottom: 24px; }
.evk-footer { background: var(--evk-color-soft); }
.tm-header .uk-navbar-left, .tm-header .uk-navbar-right { min-width: 0; }
.tm-header .uk-logo { font-size: 20px; font-weight: 650; letter-spacing: -0.035em; text-transform: none; }
.tm-header .uk-navbar-nav { flex-wrap: wrap; row-gap: 0; }
.tm-header .uk-navbar-nav > li > a { font-size: 14px; }
/* The native text-button theme may add an arrow. These controls already own one icon. */
#tm-dialog-mobile .evk-mobile-controls .uk-button::after,
#tm-dialog-mobile .evk-mobile-controls .uk-button::before { display: none !important; content: none !important; }
@media (max-width: 959px) {
 .evk-hero-copy { padding-block: 8px 0; }
 .evk-hero .evk-media img { aspect-ratio: 1.4; max-height: none; }
 .evk-editorial { padding-inline: 0; }
 .evk-facility-cards .evk-facility-card .el-image { height: 180px; }
}
@media (max-width: 639px) {
 .tm-page { font-size: 17px; line-height: 1.65; }
 .tm-page :where(h1,.uk-h1), .evk-hero-copy :where(h1,.uk-h1) { font-size: clamp(32px, 7.8vw, 42px); line-height: 1.1; }
 .evk-hero-copy { padding-block: 8px 0; }
 .evk-hero-copy .uk-panel { font-size: 17px; }
 .evk-hero-actions .uk-grid { display: block; }
 .evk-hero-actions .uk-grid > * { width: 100%; margin-top: 10px; }
 .evk-hero-actions .uk-button { display: flex; align-items: center; justify-content: center; width: 100%; }
 .evk-section { --evk-section-pad-start: 28px; --evk-section-pad-end: 28px; }
 .evk-shortcuts .evk-surface { padding: 22px; }
 .evk-facility-cards .evk-facility-card { padding: 0 20px 22px; }
 .evk-facility-cards .evk-facility-card .el-image { height: 160px; }
}

.tm-header-mobile .uk-logo { text-transform: none; }

/* Header controls share the typography of the native menu. */
.tm-header .mod-languages :where(a[role="button"],.uk-text-middle),
.tm-header .evk-facility-button {
 font-family:var(--evk-font-body);font-size:14px;font-weight:500;line-height:1.45;
 letter-spacing:0;text-transform:none;color:var(--evk-color-ink);opacity:1;
}
.tm-header .mod-languages a[role="button"],.tm-header .evk-facility-button {
 min-height:60px;display:inline-flex;align-items:center;gap:6px;padding:12px 0;margin:0;
}
.tm-header .evk-facility-button::before,.tm-header .evk-facility-button::after {content:none;display:none;}
.tm-header .mod-languages .uk-subnav {margin:0;}
.tm-header .mod-languages .uk-subnav > li {padding-left:0;}
.tm-header .mod-languages .uk-svg {width:16px;height:16px;}
/* Calm carrier sections without decorative rules. */
main:has(#evk-traeger-startseite-einstieg) .evk-hero-copy::before,
main:has(#evk-traeger-startseite-einstieg) .evk-section h2::before {display:none;}
main:has(#evk-traeger-startseite-einstieg) .evk-editorial {border:0;}
/* One compact shared footer. Release only the verified native position wrapper. */
.uk-container-expand:has(.evk-footer) {padding-inline:0;}
.uk-container-expand:has(.evk-footer) > .uk-grid {margin-left:0;}
.uk-container-expand:has(.evk-footer) > .uk-grid > .uk-width-1-1 {padding-left:0;}
.evk-footer {padding-block:16px;border-top:3px solid var(--evk-color-brand);}
.evk-footer > .uk-container > .uk-grid {align-items:center;row-gap:4px;}
.evk-footer h3 {font-family:var(--evk-font-body);font-size:14px;line-height:1.5;font-weight:600;margin:0;}
.evk-footer .evk-footer-links {display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0;}
.evk-footer-links > div,.evk-footer-links .uk-margin {margin:0 !important;}
.evk-footer-links .uk-subnav {display:flex;flex-wrap:wrap;gap:0;margin:0;}
.evk-footer-links .uk-subnav > li {display:flex;align-items:center;padding:0;margin:0;}
.evk-footer-links .uk-subnav > li + li::before,
.evk-footer-links > .evk-footer-staff::before {content:"|";color:var(--evk-color-muted);padding-inline:9px;font-size:12px;}
.evk-footer-links > .evk-footer-staff {display:flex;align-items:center;}
.evk-footer .evk-footer-links :where(a,.uk-subnav > li > a,.el-content) {
 font-family:var(--evk-font-body);font-size:12px;font-weight:400;letter-spacing:0;
 text-transform:none;color:var(--evk-color-ink);line-height:1.5;min-height:44px;
 display:inline-flex;align-items:center;padding:0;text-decoration:none;
}
.evk-footer .evk-footer-links a:hover {text-decoration:underline;}
/* Contact belongs to the current native root and remains selectable text. */
#tm-dialog-mobile .evk-mobile-contact {margin:24px 0 0;font-style:normal;font-size:13px;line-height:1.55;color:var(--evk-color-muted);}
#tm-dialog-mobile .evk-mobile-contact > :where(strong,span) {display:block;}
#tm-dialog-mobile .evk-mobile-contact strong {font-weight:600;color:var(--evk-color-ink);font-size:14px;}
#tm-dialog-mobile .evk-mobile-contact-actions {display:flex;flex-direction:column;gap:7px;margin-top:12px;}
#tm-dialog-mobile .evk-mobile-contact-actions a {display:flex;align-items:center;gap:9px;min-height:44px;box-sizing:border-box;padding:9px 12px;border:1px solid var(--evk-color-line);border-radius:6px;color:var(--evk-color-ink);font-size:12px;line-height:1.4;text-decoration:none;overflow-wrap:anywhere;}
#tm-dialog-mobile .evk-mobile-contact-actions .uk-icon {flex:0 0 16px;}
#tm-dialog-mobile .evk-mobile-contact-actions a:hover {background:var(--evk-color-soft);}
@media(max-width:959px) {
 .evk-footer {padding-block:12px;}
 .evk-footer .evk-footer-links {justify-content:flex-start;}
 .evk-footer .evk-footer-links a {font-size:11px;}
 .evk-footer-links .uk-subnav > li + li::before,
 .evk-footer-links > .evk-footer-staff::before {padding-inline:5px;}
}

/* Align native header groups on one baseline; preserve the language module. */
.tm-header .uk-navbar,.tm-header .uk-navbar-left,.tm-header .uk-navbar-right {align-items:center;}
.tm-header .mod-languages a[role="button"] {font-size:14px;}
/* The native nested-container rule removes padding; restore only footer content. */
.evk-footer > .uk-container {padding-inline:clamp(15px,3vw,40px);}

/* Body paragraph rhythm must not add a bottom margin to native navigation lists. */
.tm-header .uk-navbar-nav {margin-block:0;}

/* Native header links use an underline below their text, without theme pseudo-lines. */
.tm-header .uk-navbar-nav > li > a::before,
.tm-header .uk-navbar-nav > li > a::after {display:none;content:none;}
.tm-header .uk-navbar-nav > li > a:hover,
.tm-header .uk-navbar-nav > li > a:focus-visible {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.35em;}
.tm-header .mod-languages a[role="button"] .uk-text-middle::before {content:"Sprache: ";}
/* All four footer destinations share the same quiet button treatment. */
.evk-footer .evk-footer-links :where(a,.uk-subnav > li > a,.el-content) {
 text-decoration:none !important;padding:0;border:0;
 border-radius:0;background:transparent;box-sizing:border-box;
}
.evk-footer .evk-footer-links a:hover {background:transparent;text-decoration:underline !important;text-underline-offset:3px;}
.evk-footer .evk-footer-brand {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.evk-footer .evk-footer-brand h3 {flex:1;}
.evk-footer .evk-footer-mark {flex:0 0 48px;margin:0;width:48px;}
.evk-footer .evk-footer-mark img {display:block;max-width:48px;width:48px;height:40px;object-fit:contain;filter:brightness(0);}
/* Fill the viewport while allowing taller menus and contacts to scroll naturally. */
#tm-dialog-mobile .uk-modal-dialog {box-sizing:border-box;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;}
#tm-dialog-mobile .uk-modal-dialog > .uk-modal-body {box-sizing:border-box !important;width:100%;margin-block:0 !important;flex:1 0 auto;min-height:calc(100vh - 88px) !important;min-height:calc(100dvh - 88px) !important;}
@media(max-width:959px) {
 .evk-footer .evk-footer-links {row-gap:4px;}
 .evk-footer .evk-footer-links :where(a,.uk-subnav > li > a,.el-content) {font-size:11px;padding:0;}
 .evk-footer .evk-footer-mark {flex-basis:42px;width:42px;}
 .evk-footer .evk-footer-mark img {width:42px;max-width:42px;}
}

/* Keep each desktop menu on one row; use the native mobile header when space runs out. */
.tm-header .uk-navbar,.tm-header .uk-navbar-nav {flex-wrap:nowrap;}
.tm-header .uk-navbar-left,.tm-header .uk-navbar-right {flex:0 0 auto;}
.tm-header .uk-navbar-right {margin-left:auto;}
.tm-header .uk-navbar-nav > li > a,.tm-header .evk-facility-button,
.tm-header .mod-languages a[role="button"] {white-space:nowrap;max-width:none;}
@media(min-width:1200px) {
 .evk-header-compact .tm-header {position:absolute;inset-inline:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none;}
 .evk-header-compact .tm-header-mobile {display:block !important;}
}
/* Contact uses the same sliding pane and focus lifecycle as facility/language selection. */
#tm-dialog-mobile .evk-mobile-contact-pane .evk-mobile-contact {margin-top:20px;}
@media(max-height:740px) {
 #tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-page-menu .uk-nav > li > a {min-height:44px;padding-block:9px;}
 #tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls {margin-top:16px;gap:8px;}
 #tm-dialog-mobile.evk-mobile-enhanced .evk-mobile-controls .uk-button {min-height:44px;padding-block:10px;}
}

/* Give the one-line desktop navigation room independently of the body text width. */
.tm-header .uk-navbar-container > .uk-container {max-width:1600px;}

/* One native back arrow, and the carrier wordmark in the same mobile brand strip. */
#tm-dialog-mobile .evk-mobile-back::before,#tm-dialog-mobile .evk-mobile-back::after {content:none !important;display:none !important;}
#tm-dialog-mobile .evk-mobile-brandbar .uk-logo {font-size:18px;font-weight:650;line-height:1.2;}

/* News uses the native article model; the visual components remain central. */
.evk-news-filters {display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin:24px 0;}
.evk-news-filters label {display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--evk-color-muted);}
.evk-news-filters select {min-height:44px;min-width:190px;padding:9px 30px 9px 12px;border:1px solid var(--evk-color-line);border-radius:6px;background:var(--evk-color-paper);color:var(--evk-color-ink);font:inherit;}
.evk-news-filters .uk-button {min-height:44px;}
.evk-news-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.evk-news-card {min-width:0;border:1px solid var(--evk-color-line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;}
.evk-news-card > img {display:block;width:100%;aspect-ratio:1.6;object-fit:cover;}
.evk-news-card-copy {padding:24px;}
.evk-news-meta {font-size:13px;color:var(--evk-color-muted);}
.evk-news-card h3 {font-size:22px;line-height:1.3;margin:12px 0;}
.evk-news-card h3 a {color:var(--evk-color-ink);text-decoration:none;}
.evk-news-card h3 a:hover,.evk-news-read:hover {text-decoration:underline;}
.evk-news-card-copy > p:not(.evk-news-meta) {font-size:16px;line-height:1.6;}
.evk-news-read {display:inline-flex;min-height:44px;align-items:center;color:var(--evk-color-action);font-size:15px;}
.evk-news-empty {padding-block:24px;color:var(--evk-color-muted);font-size:16px;}
.evk-news-pagination {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;font-size:15px;}
.evk-news-pagination a {display:inline-flex;min-height:44px;align-items:center;}
@media(max-width:1199px){.evk-news-cards {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:639px){.evk-news-cards {grid-template-columns:1fr;}.evk-news-filters {align-items:stretch;flex-direction:column;}.evk-news-filters select {width:100%;}.evk-news-card-copy {padding:20px;}}

/* Shared frontend editorial workspace; no Builder-local style entries. */
.evk-editor-scope {padding-block:24px;border-bottom:1px solid var(--evk-color-line);}
.evk-editor-scope .uk-button {margin-block:12px 20px;}
.evk-editor-list {padding:0;list-style:none;}
.evk-editor-list li {display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:12px;border-bottom:1px solid var(--evk-color-line);}
.evk-editor-list a {min-height:44px;display:inline-flex;align-items:center;}
.evk-editor-list span,.evk-editor-hint {font-size:14px;color:var(--evk-color-muted);}
.com-content-form {max-width:1000px;margin-inline:auto;padding:24px 20px;}
.com-content-form :where(input[type=text],select,textarea) {max-width:100%;box-sizing:border-box;}
@media(max-width:639px){.evk-editor-list li {align-items:flex-start;flex-direction:column;gap:4px;}}

/* News images retain their full proportions; authenticated footer actions. */
.evk-news-card > img {width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;object-position:center;background:var(--evk-color-paper,#f4f1eb);}
.evk-news-detail-media {margin:0 0 32px;}
.evk-news-detail-image {padding:16px;border-radius:8px;background:var(--evk-color-paper,#f4f1eb);}
.evk-news-detail-image img {display:block;width:100%;height:auto;max-height:560px;object-fit:contain;object-position:center;}
.evk-news-detail-media figcaption {font-size:14px;line-height:1.5;color:var(--evk-color-muted,#666);margin-top:10px;text-align:center;}
.evk-footer-actions-row {display:none;}
.evk-footer-actions-row:has(.evk-footer-actions) {display:block;}
.evk-footer-actions {display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;}
.evk-footer .evk-footer-actions a,.evk-footer .evk-footer-actions button {display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 12px;border:1px solid currentColor;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:14px;line-height:1.3;text-decoration:none;cursor:pointer;}
.evk-footer .evk-footer-actions a:hover,.evk-footer .evk-footer-actions button:hover {background:rgba(0,0,0,.06);text-decoration:none;}
.evk-footer-actions form {margin:0;}
@media(max-width:639px){.evk-news-detail-image {padding:8px;}.evk-news-detail-image img {max-height:65vh;}.evk-footer-actions {justify-content:center;}}

/* News layout: edge-to-edge card images and a dedicated editorial article. */
.evk-news-card > img {width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;object-position:center;background:transparent;}
.evk-news-story {margin:0 auto;max-width:1200px;color:var(--evk-color-ink);}
.evk-news-story-heading {padding:clamp(24px,4vw,52px);background:var(--evk-color-action);color:var(--evk-color-on-action);border-radius:8px;margin-bottom:clamp(28px,4vw,48px);}
.evk-news-story-pills {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.evk-news-story-pill {display:inline-block;padding:6px 12px;border:1px solid rgba(255,255,255,.45);border-radius:999px;font-size:13px;line-height:1.4;color:inherit;}
.evk-news-story-category {background:rgba(255,255,255,.15);}
.evk-news-story-heading h1 {margin:0;color:inherit;font-size:clamp(28px,4vw,48px);line-height:1.15;overflow-wrap:anywhere;}
.evk-news-story-date {margin:18px 0 0;font-size:14px;color:inherit;}
.evk-news-story-content {display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(24px,4vw,48px);align-items:start;}
.evk-news-story-content.evk-news-story-no-image {grid-template-columns:minmax(0,1fr);max-width:840px;}
.evk-news-story-media {margin:0;min-width:0;}
.evk-news-story-media img {display:block;width:100%;height:auto;max-height:720px;object-fit:contain;object-position:top center;border-radius:6px;}
.evk-news-story-media figcaption {margin-top:10px;font-size:14px;line-height:1.5;color:var(--evk-color-muted);}
.evk-news-story-text {min-width:0;font-size:18px;line-height:1.75;overflow-wrap:anywhere;}
.evk-news-story-text > :first-child {margin-top:0;}
.evk-news-story-text img {max-width:100%;height:auto;}
.evk-news-story-links {margin-top:32px;padding-top:24px;border-top:1px solid var(--evk-color-line);}
.evk-news-story-links ul {display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:0;list-style:none;}
.evk-news-story-links li {margin:0!important;}
.evk-news-story-links a {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px solid var(--evk-color-action);border-radius:5px;background:var(--evk-color-action);color:var(--evk-color-on-action);font-size:16px;line-height:1.4;text-decoration:none;}
.evk-news-story-links a:hover {filter:brightness(.92);text-decoration:none;}
@media(max-width:767px){.evk-news-story-content {grid-template-columns:minmax(0,1fr);}.evk-news-story-media img {max-height:65vh;}.evk-news-story-text {font-size:17px;}.evk-news-story-links a {width:100%;box-sizing:border-box;}.evk-news-story-links li {flex:1 1 180px;}}
.tm-page .evk-news-story-links a,.tm-page .evk-news-story-links a:visited,.tm-page .evk-news-story-links a:hover,.tm-page .evk-news-story-links a:focus {color:#fff!important;background:var(--evk-color-action);}
.evk-news-link-unavailable {display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:10px 20px;border:1px solid var(--evk-color-line);border-radius:5px;background:#eef1eb;color:#526052;font-size:16px;line-height:1.4;cursor:default;}

/* Central job portal and private personnel workspace. */
.evk-jobs {max-width:1200px;margin-inline:auto;}
.evk-jobs a {overflow-wrap:anywhere;}
.evk-job-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.evk-job-card {display:flex;flex-direction:column;padding:28px;border:1px solid var(--evk-color-line);border-radius:8px;background:var(--evk-color-paper);min-width:0;}
.evk-job-card h3 {font-size:24px;line-height:1.25;margin:8px 0 16px;}
.evk-job-card h3 a {text-decoration:none;}
.evk-job-card > .evk-job-button {margin-top:auto;align-self:flex-start;}
.evk-job-eyebrow,.evk-job-meta,.evk-job-facilities {font-size:14px;line-height:1.5;color:var(--evk-color-muted);}
.tm-page .evk-jobs .evk-job-button,.tm-page .evk-jobs .evk-job-button:visited {display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:10px 18px;border:1px solid var(--evk-color-action);border-radius:5px;background:var(--evk-color-action);color:#fff!important;font:inherit;font-size:15px;line-height:1.4;text-decoration:none;cursor:pointer;}
.tm-page .evk-jobs .evk-job-button-secondary,.tm-page .evk-jobs .evk-job-button-secondary:visited {background:transparent;color:var(--evk-color-action)!important;}
.evk-job-filters {display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin-bottom:28px;}
.evk-job-filters label {flex:1 1 180px;}
.evk-jobs label {display:block;font-size:15px;font-weight:500;}
.evk-jobs :is(input:not([type=checkbox]),select,textarea) {display:block;width:100%;max-width:100%;box-sizing:border-box;padding:10px 12px;margin-top:7px;border:1px solid var(--evk-color-line);border-radius:4px;background:#fff;color:var(--evk-color-ink);font:inherit;font-size:16px;line-height:1.5;}
.evk-job-form {max-width:860px;display:grid;gap:20px;}
.evk-job-form fieldset {padding:20px;border:1px solid var(--evk-color-line);border-radius:6px;}
.evk-job-form legend {font-size:16px;font-weight:600;}
.evk-jobs .evk-job-checkbox {display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-weight:400;line-height:1.6;}
.evk-job-checkbox input {flex:none;}
.evk-job-form-columns {display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.evk-job-hint {font-size:14px;color:var(--evk-color-muted);line-height:1.6;}
.evk-job-honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.evk-job-detail-heading {padding:32px;background:var(--evk-color-soft);border-radius:8px;margin-bottom:32px;}
.evk-job-detail-heading h2 {font-size:clamp(28px,4vw,44px);line-height:1.2;margin-top:8px;}
.evk-job-detail-grid {display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:40px;align-items:start;}
.evk-job-facts {padding:28px;border:1px solid var(--evk-color-line);border-radius:8px;}
.evk-job-facts dt {font-size:14px;color:var(--evk-color-muted);margin-top:20px;}
.evk-job-facts dd {margin:4px 0 0;line-height:1.5;}
.evk-job-description {font-size:18px;line-height:1.7;min-width:0;overflow-wrap:anywhere;}
.evk-job-description h3 {margin-top:32px;}
.evk-job-application {margin-top:48px;padding-top:32px;border-top:1px solid var(--evk-color-line);scroll-margin-top:100px;}
.evk-job-pool-nav,.evk-job-row-actions,.evk-job-pagination {display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0;}
.evk-job-row-actions form {margin:0;}
.evk-job-pool-list > article,.evk-job-applicant {padding:24px 0;border-bottom:1px solid var(--evk-color-line);}
.evk-job-applicant form {max-width:700px;margin:20px 0;}
.evk-job-applicant details {padding:16px;border:1px solid var(--evk-color-line);border-radius:5px;margin-top:24px;}
@media(max-width:1199px){.evk-job-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){.evk-job-grid,.evk-job-detail-grid,.evk-job-form-columns {grid-template-columns:minmax(0,1fr);}.evk-job-card,.evk-job-facts,.evk-job-detail-heading {padding:22px;}.evk-job-filters {display:grid;grid-template-columns:minmax(0,1fr);}.evk-job-description {font-size:17px;}.evk-job-row-actions {align-items:stretch;}.evk-job-row-actions > * {flex:1 1 180px;}.evk-job-row-actions button {width:100%;}}
.evk-job-home-section {display:none;}
.evk-job-home-section:has(.evk-job-teaser) {display:block;}

/* Supporting our centres: centrally maintained, native Builder content. */
.evk-support-hero { background: #eee9f2; }
.evk-support-hero h1 { max-width: 18ch; }
.evk-support-hero .el-content { max-width: 760px; }
.evk-support-eyebrow { font-size: .8rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.evk-support-card { height: 100%; padding: clamp(24px,3vw,40px); background: #f4f2ee; border-top: 4px solid #7c388c; box-sizing: border-box; }
.evk-support-card .el-meta { color: #693279; font-weight: 700; }
.evk-support-card h3 { font-size: clamp(1.35rem,2vw,1.8rem); }
.evk-support-projects { align-items: stretch; }
.evk-donation-embed { width: 100%; min-width: 0; max-width: 900px; margin-inline: auto; background: #fff; border-radius: 8px; overflow: hidden; }
.evk-donation-embed iframe { display: block; width: 100%; max-width: 100%; border: 0; }
.evk-support-fallback { text-align: center; font-size: .9rem; }
.evk-support-faq { max-width: 900px; }
.evk-support-faq .uk-accordion-title { font-size: 1.15rem; line-height: 1.5; }
.evk-support-contact { background: #eee9f2; }
#evk-spendenformular { scroll-margin-top: 110px; }
@media(max-width:639px) { .evk-support-form .uk-container { padding-inline: 16px; } .evk-support-card { padding: 24px; } }

.evk-support h2::before { display: none; }

/* Carrier homepage refresh: native rows, editorial photos, clear rhythm. */
#evk-traeger-startseite-einstieg { background: #f0edf4; }
#evk-traeger-startseite-einstieg .evk-media img { aspect-ratio: 4/3; width:100%; object-fit:cover; border-radius: 18px 18px 54px 18px; }
.evk-stock-credit { font-size:11px; line-height:1.5; color:var(--evk-color-muted); margin-top:8px; }
.evk-stock-credit a { color:inherit; text-decoration:underline; text-underline-offset:2px; }
#evk-traeger-startseite-miteinander-1 { background:#f6f1e9; }
#evk-traeger-startseite-miteinander-1 > .uk-container > .uk-grid { align-items:center; }
.evk-home-family-media img { width:100%; aspect-ratio:4/5; max-height:520px; object-fit:cover; object-position:center; border-radius:22px; }
#evk-traeger-startseite-miteinander-2 { background:#eee9f2; }
#evk-traeger-startseite-miteinander-2 .evk-home-provider-copy { max-width:850px; }
.evk-home-values .el-title { font-size:1.2rem; }
.evk-home-values .el-content { font-size:.95rem; }
.evk-home-values { padding:24px; height:100%; background:rgba(255,255,255,.65); border-radius:12px; box-sizing:border-box; }
@media(min-width:960px) { #evk-traeger-startseite-miteinander-1 .evk-home-family-visual { order:-1; } }
@media(max-width:639px) { .evk-home-family-media img {max-height:420px;} }

/* Reserve the native text-button arrow's width beside its label. */
#evk-traeger-startseite-einstieg .evk-hero-actions .uk-button-text { padding-inline-end: 34px; }

/* Facility subpages: clear hierarchy without a stack of highlighted panels. */
.evk-subpage-section { background:var(--evk-color-paper); border:0; border-radius:0; padding-inline:0; --evk-section-pad-start:28px; --evk-section-pad-end:28px; }
.evk-subpage-section > .uk-container { max-width:1120px; }
.evk-subpage-intro { background:var(--evk-color-soft); --evk-section-pad-start:40px; --evk-section-pad-end:36px; margin-bottom:20px; }
.evk-subpage-intro .evk-hero-copy { min-height:0; padding-block:0; max-width:none; }
.evk-subpage-intro .evk-hero-copy::before,.evk-subpage-section h2::before { display:none; }
.evk-subpage-intro .evk-hero-copy h1 { max-width:none; font-size:clamp(30px,3.6vw,46px); line-height:1.17; margin-block:12px 0; }
.evk-subpage-intro .evk-kicker { font-size:12px; line-height:1.5; margin:0; }
.evk-subpage-reading-row { align-items:start; }
.evk-subpage-topic h2 { font-size:clamp(21px,2vw,26px); line-height:1.3; margin-top:0; max-width:24ch; }
.evk-subpage-section :where(.uk-panel,p,.el-content) { font-size:17px; line-height:1.7; }
.evk-subpage-section .evk-subpage-copy :where(.uk-panel,p,.el-content) { max-width:78ch; }
.evk-subpage-copy > :first-child { margin-top:0; }
.evk-subpage-copy > :last-child { margin-bottom:0; }
.evk-subpage-section .evk-surface { background:transparent; box-shadow:none; border:0; padding:0; }
.evk-subpage-section.evk-contact { background:var(--evk-color-soft); margin-top:20px; }
.evk-subpage-section .uk-list { margin-block:0; }
.evk-subpage-section .evk-download-row { background:transparent; }
@media(max-width:959px){ .evk-subpage-section {--evk-section-pad-start:22px;--evk-section-pad-end:22px;} .evk-subpage-intro {--evk-section-pad-start:28px;--evk-section-pad-end:28px;} .evk-subpage-topic h2{max-width:none;margin-bottom:8px;} }

.evk-subpage-section h2 {font-size:clamp(21px,2vw,26px);line-height:1.3;}

.evk-subpage-intro h1 {max-width:none;font-size:clamp(30px,3.6vw,46px);line-height:1.17;margin-block:12px 0;}

/* Editorial facility pages, approved concept: a continuous reading experience. */
.evk-story {background:var(--evk-color-paper);border:0;border-radius:0;padding-inline:0;--evk-section-pad-start:22px;--evk-section-pad-end:22px;}
.evk-story-hero > .uk-container,.evk-story-nav > .uk-container {max-width:1120px;}
.evk-story-hero {--evk-section-pad-start:36px;--evk-section-pad-end:8px;}
.evk-story h1 {font-size:clamp(31px,3.7vw,48px);line-height:1.16;max-width:none;letter-spacing:-.035em;margin-block:12px 16px;}
.evk-story h2::before,.evk-story .el-title::before {display:none;}
.evk-story .evk-kicker {font-size:12px;line-height:1.5;margin:0;color:var(--evk-color-brand);}
.evk-story-deck {font-size:clamp(17px,1.6vw,21px);line-height:1.55;max-width:72ch;margin-block:0 24px;}
.evk-story-banner {margin-top:24px;}
.evk-story-banner img {display:block;width:100%;aspect-ratio:3/1;object-fit:cover;object-position:center;border-radius:10px;}
.evk-story-hero .evk-stock-credit {margin-top:8px;font-size:11px;}
.evk-story-body > .uk-container {max-width:840px;}
.evk-story-body h2 {font-size:clamp(24px,2.4vw,31px);line-height:1.25;letter-spacing:-.025em;max-width:none;margin-block:0 16px;}
.evk-story-body h3,.evk-story-body .el-title {font-size:21px;line-height:1.35;}
.evk-story-body :where(p,.el-content,.uk-panel,ul,ol) {max-width:none;font-size:17px;line-height:1.7;}
.evk-story-body .uk-panel > :first-child {margin-top:0;}
.evk-story-body .evk-surface {background:transparent;border:0;box-shadow:none;padding:0;}
.evk-story-value > .uk-container {max-width:840px;}
.evk-story-value > .uk-container > .uk-grid > div {border-left:3px solid var(--evk-color-brand);padding-block:12px;padding-right:24px;background:var(--evk-color-soft);border-radius:0 10px 10px 0;}
.evk-story-value h2 {font-size:26px;}
.evk-story-secondary-image img {display:block;width:100%;aspect-ratio:2.5/1;object-fit:cover;object-position:center 55%;border-radius:10px;}
.evk-story-photo {--evk-section-pad-start:10px;--evk-section-pad-end:16px;}
.evk-story-photo .evk-stock-credit {font-size:11px;margin-top:8px;}
.evk-story-nav {--evk-section-pad-start:8px;--evk-section-pad-end:24px;}
.evk-story-links {display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px;}
.evk-story-links a {display:inline-flex;align-items:center;min-height:44px;border-bottom:2px solid var(--evk-color-line);color:var(--evk-color-ink);font-size:14px;text-decoration:none;}
.evk-story-links a:hover,.evk-story-links a:focus-visible {border-color:var(--evk-color-brand);}
.evk-story-mobile-nav {display:none;}
.evk-story-detail {--evk-section-pad-start:0px;--evk-section-pad-end:0px;}
.evk-story-accordion {margin:0;}
.evk-story-accordion > li {border-bottom:1px solid var(--evk-color-line);padding-block:18px;margin:0;}
.evk-story-accordion .uk-accordion-title {font-size:20px;line-height:1.4;font-weight:600;min-height:28px;}
.evk-story-accordion .uk-accordion-content {padding-block:2px 8px;margin-top:16px;}
.evk-story-body .evk-media img {max-width:360px;max-height:440px;object-fit:contain;aspect-ratio:auto;}
.evk-story-photo-placeholder {display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:24px;box-sizing:border-box;text-align:center;background:var(--evk-color-soft);border:1px dashed var(--evk-color-brand);border-radius:10px;margin-top:24px;}
.evk-story-photo-placeholder .el-title {font-size:26px;}
.evk-story-photo-placeholder .el-content {font-size:14px;}
.evk-story-pending {border-left:3px solid var(--evk-color-brand);background:var(--evk-color-soft);padding:20px 24px;border-radius:0 8px 8px 0;}
.evk-story-pending .el-title {font-size:20px;}
.evk-story-pending .el-content {font-size:15px;}
.evk-story {scroll-margin-top:86px;}
@media(max-width:639px){
 .evk-story {--evk-section-pad-start:18px;--evk-section-pad-end:18px;}
 .evk-story-hero {--evk-section-pad-start:24px;--evk-section-pad-end:0px;}
 .evk-story-hero h1 {font-size:32px;line-height:1.15;}
 .evk-story-deck {font-size:17px;}
 .evk-story-banner img {aspect-ratio:16/10;}
 .evk-story-secondary-image img {aspect-ratio:16/10;}
 .evk-story-links {display:none;}
 .evk-story-mobile-nav {display:block;padding:12px 16px;border-radius:8px;background:var(--evk-color-soft);font-size:15px;}
 .evk-story-mobile-nav summary {cursor:pointer;min-height:24px;font-weight:600;}
 .evk-story-mobile-nav nav {display:flex;flex-direction:column;padding-top:8px;}
 .evk-story-mobile-nav a {padding-block:10px;color:var(--evk-color-ink);line-height:1.4;}
 .evk-story-body h2 {font-size:25px;}
 .evk-story-value > .uk-container > .uk-grid > div {padding-right:16px;}
 .evk-story-detail {--evk-section-pad-start:0px;--evk-section-pad-end:0px;}
 .evk-story-pending {padding:16px 18px;}
}

/* Match the installed native div-based accordion renderer. */
.evk-story-banner img { aspect-ratio:4.2/1;max-height:280px; }
.evk-story-accordion > .el-item {border-bottom:1px solid var(--evk-color-line);padding-block:16px;margin:0;}
.evk-story-accordion a.uk-accordion-title {font-family:var(--evk-font-body);font-size:20px;font-weight:600;line-height:1.45;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px;text-decoration:none;}
.evk-story-accordion .uk-accordion-icon {flex:0 0 auto;margin:0;}
.evk-story .evk-stock-credit p {font-size:11px;line-height:1.5;}
.evk-story-nav .evk-story-links a {text-decoration:none;}
@media(max-width:639px){.evk-story-banner img{aspect-ratio:16/10;max-height:none;}.evk-story-accordion a.uk-accordion-title{font-size:18px;min-height:40px;}}
.evk-story-profile .uk-grid {align-items:center;}
.evk-story-profile .evk-media img {max-width:260px;max-height:330px;aspect-ratio:auto;object-fit:contain;}

/* Use the same design tokens and native hero as each facility homepage. */
.evk-story > .uk-container {max-width:var(--evk-ui-content-width);}
.evk-story {--evk-section-pad-start:var(--evk-ui-section-gap);--evk-section-pad-end:var(--evk-ui-section-gap);}
.evk-story-home-style {--evk-section-pad-start:clamp(20px,2.5vw,36px);--evk-section-pad-end:clamp(12px,1.5vw,20px);}
.evk-story-home-style .evk-hero-copy h1 {font-size:clamp(40px,28px + 2vw,62px);line-height:1.1;letter-spacing:-.035em;max-width:19ch;margin-block:.35em .4em;}
.evk-story-home-style .evk-hero-copy .evk-kicker {font-size:18px;line-height:1.65;letter-spacing:.1em;color:var(--evk-color-muted);}
.evk-story-home-style .evk-hero-copy .evk-story-deck {font-size:18px;line-height:1.65;max-width:52ch;color:var(--evk-color-muted);margin-block:0;}
.evk-story-body h2 {font-size:clamp(1.75rem,1.3rem + 1.3vw,2.5rem);line-height:1.2;letter-spacing:-.025em;}
.evk-story-body h3 {font-size:clamp(1.2rem,1rem + .5vw,1.5rem);line-height:1.35;}
.evk-story-body :where(p,.el-content,ul,ol) {font-size:18px;line-height:1.7;max-width:72ch;}
.evk-story-body .uk-panel {font-size:18px;line-height:1.7;}
.evk-story .evk-stock-credit p {font-size:11px;line-height:1.5;}
.evk-story-home-style .evk-media img,.evk-story-secondary-image img {border-radius:var(--evk-ui-radius-lg);}
.evk-story-value > .uk-container > .uk-grid > div {background:transparent;border:0;border-radius:0;padding-block:0;}
.evk-story-detail {--evk-section-pad-start:0px;--evk-section-pad-end:0px;}
@media(max-width:639px){
 .evk-story {--evk-section-pad-start:28px;--evk-section-pad-end:28px;}
 .evk-story-home-style {--evk-section-pad-start:20px;--evk-section-pad-end:12px;}
 .evk-story-home-style .evk-hero-copy h1 {font-size:clamp(32px,7.8vw,42px);line-height:1.1;}
 .evk-story-home-style .evk-hero-copy .evk-story-deck,.evk-story-home-style .evk-hero-copy .evk-kicker {font-size:17px;}
 .evk-story-body :where(p,.el-content,ul,ol),.evk-story-body .uk-panel {font-size:17px;line-height:1.65;}
 .evk-story-detail {--evk-section-pad-start:0px;--evk-section-pad-end:0px;}
}

/* French language selector: scope preserves every existing locale. */
html[lang^="fr"] .tm-header .mod-languages a[role="button"] .uk-text-middle::before { content: "Langue : "; }
