/* All custom styles stay inside the Minimal Home template. */
#page.eems-minimal {
    --eems-navy: #0d2843;
    --eems-gold: #efb13c;
    --eems-blue: #367fbd;
    --eems-muted: #bfcedd;
    max-width: none;
    background: #fff;
    color: var(--eems-navy);
    font: 15px/1.6 'AvenirPro', Arial, sans-serif;
}

.eems-minimal .eems-shell { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.eems-minimal :is(h1, h2, h3) { font-family: Georgia, 'Times New Roman', serif; font-weight: 700; letter-spacing: -.02em; }
.eems-minimal a { text-decoration: none; }
.eems-minimal a:focus-visible,
.eems-minimal button:focus-visible { outline: 3px solid var(--eems-gold); outline-offset: 4px; }
.eems-minimal [hidden] { display: none !important; }
.eems-minimal .skip-link:focus { top: 12px; left: 12px; z-index: 100; }

.eems-minimal .eems-header { background: var(--eems-navy); color: #fff; }
.eems-minimal .eems-header__inner { display: flex; align-items: center; gap: 28px; min-height: 70px; padding: 10px 24px; }
.eems-minimal .eems-brand { display: flex; align-items: center; gap: 12px; color: #fff; flex-shrink: 0; }
.eems-minimal .eems-brand__badge { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; border-radius: 10px; background: var(--eems-gold); color: var(--eems-navy); font-size: 12px; font-weight: 700; }
.eems-minimal .eems-brand strong { display: block; max-width: 240px; font-size: 13px; line-height: 1.4; }
.eems-minimal .eems-brand small { display: block; font-size: 10px; color: #91a5b9; line-height: 1.4; }
.eems-minimal .eems-navigation { margin-left: auto; }
.eems-minimal .eems-menu { display: flex; align-items: center; gap: 3px; margin: 0; padding: 0; list-style: none; }
.eems-minimal .eems-menu li { position: relative; margin-bottom:5px; }
.eems-minimal .eems-menu a { display: block; padding: 8px 10px; border-bottom: 0; border-radius: 6px;border:1px solid #DDDDDD20; background: transparent; color: #c6d2df; font-size: 13px; white-space: nowrap; }
.eems-minimal .eems-menu :is(a:hover, a:focus-visible, a[aria-current]),
.eems-minimal .eems-menu .current-menu-item > a,
.eems-minimal .eems-menu .current-menu-ancestor > a { background: #28415b; color: #fff; }
.eems-minimal .eems-menu .menu-item-has-children > a::after { content: ''; display: inline-block; width: 5px; height: 5px; margin-left: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); vertical-align: 3px; }
.eems-minimal .eems-menu .sub-menu { display: none; position: absolute; z-index: 10; left: 0; top: 100%; min-width: 180px; margin: 0; padding: 8px; list-style: none; background: var(--eems-navy); border-radius: 6px; }
.eems-minimal .eems-menu li:hover > .sub-menu,
.eems-minimal .eems-menu li:focus-within > .sub-menu { display: block; }
.eems-minimal .eems-languages { display: flex; gap: 5px; flex-shrink: 0; }
.eems-minimal .eems-languages :is(a, span) { padding: 3px 12px; border: 1px solid #456079; border-radius: 20px; color: #c6d2df; font-size: 12px; line-height: 1.5; }
.eems-minimal .eems-languages [aria-current] { border-color: var(--eems-gold); background: var(--eems-gold); color: var(--eems-navy); font-weight: 700; }
.eems-minimal .eems-menu-toggle { border: 1px solid #456079; border-radius: 6px; padding: 7px 10px; background: transparent; color: #fff; font: inherit; cursor: pointer; }

.eems-minimal .eems-hero { padding: 80px 0 64px; background: linear-gradient(115deg, #123256, #1c497b 64%, #1c527f); color: #fff; }
.eems-minimal .eems-hero__grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 48px; }
.eems-minimal .eems-hero__copy { min-width: 0; }
.eems-minimal .eems-funding-badge { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 22px; padding: 5px 14px; border: 1px solid #efb13c38; border-radius: 24px; background: #efb13c1c; color: #f5c365; font-size: 11px; font-weight: 600; }
.eems-minimal .eems-swiss-cross { display: inline-grid; place-items: center; width: 12px; height: 12px; background: #df3948; color: #fff; font: 11px/1 Arial, sans-serif; }
.eems-minimal .eems-hero h1 { margin: 0 0 22px; color: #fff; font-size: clamp(34px, 3.2vw, 46px); line-height: 1.1; overflow-wrap: break-word; }
.eems-minimal .eems-hero h1 :is(span, strong, em) { color: var(--eems-gold); font-style: normal; }
.eems-minimal .eems-hero__lead { color: #cbd8e6; font-size: 15px; line-height: 1.85; }
.eems-minimal .eems-hero__lead p { margin: 0; }
.eems-minimal .eems-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.eems-minimal .eems-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 46px; padding: 10px 20px; border: 1px solid #b9d0e554; border-radius: 9px; color: #fff; font: 700 15px/1.4 Georgia, 'Times New Roman', serif; }
.eems-minimal .eems-button--gold { border-color: var(--eems-gold); background: var(--eems-gold); color: var(--eems-navy); }
.eems-minimal .eems-button--soft { background: #ffffff12; }
.eems-minimal .eems-button:hover { box-shadow: 0 0 0 2px #ffffff30; }
.eems-minimal .eems-grant-logo { display: block; width: 280px; max-width: 100%; height: 38px; margin-top: 18px; object-fit: contain; object-position: left center; }
.eems-minimal .eems-visual { position: relative; overflow: hidden; margin: 0; border-radius: 14px; background: #213c58; }
.eems-minimal .eems-visual :is(img, video) { display: block; width: 100%; height: 100%; object-fit: cover; }
.eems-minimal .eems-hero__visual { height: 320px; box-shadow: 0 20px 36px #071a3333; }
.eems-minimal .eems-visual figcaption { position: absolute; bottom: 16px; left: 16px; max-width: calc(100% - 32px); padding: 7px 13px; border-radius: 7px; background: #0d2843e8; color: #fff; font-size: 12px; line-height: 1.5; pointer-events: none; }
.eems-minimal .eems-hero__visual:has(video) figcaption { top: 16px; bottom: auto; }

.eems-minimal .eems-stats { background: var(--eems-navy); color: #b4c2d2; }
.eems-minimal .eems-stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 30px 0; }
.eems-minimal .eems-stats__grid > div { display: flex; flex-direction: column; align-items: center; text-align: center; }
.eems-minimal .eems-stats dt { font-size: 12px; font-weight: 400; }
.eems-minimal .eems-stats dd { order: -1; margin: 0 0 3px; color: var(--eems-gold); font: 700 30px/1.3 Georgia, 'Times New Roman', serif; }
.eems-minimal .eems-information { background: #fff; padding: 24px 0 0; }
.eems-minimal .eems-information__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; padding: 0 24px; }
.eems-minimal .eems-information__grid > div { padding: 17px 20px; border-left: 4px solid var(--eems-blue); border-radius: 12px; box-shadow: 0 5px 24px #0d28430c; }
.eems-minimal .eems-information dt { margin-bottom: 5px; color: #626971; font-size: 10px; font-weight: 400; letter-spacing: 2px; text-transform: uppercase; }
.eems-minimal .eems-information dd { margin: 0; font-size: 13px; line-height: 1.4; }

.eems-minimal .eems-section { padding-top: 42px; padding-bottom: 42px; }
.eems-minimal .eems-research { background: #f4f7fb; }
.eems-minimal .eems-eyebrow { margin: 0 0 8px; color: #357bb3; font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; }
.eems-minimal .eems-research h2 { margin: 0 0 26px; color: var(--eems-navy); font-size: clamp(28px, 2.4vw, 36px); line-height: 1.2; }
.eems-minimal .eems-research__grid { display: grid; grid-template-columns: 2fr 1fr; gap: 12px; }
.eems-minimal .eems-research .eems-visual { height: 220px; }
.eems-minimal .eems-research .eems-visual::after { content: ''; position: absolute; inset: 50% 0 0; background: linear-gradient(transparent, #0d2843bb); pointer-events: none; }
.eems-minimal .eems-research figcaption { z-index: 1; bottom: 10px; left: 14px; padding: 0; background: transparent; }
.eems-minimal .eems-editor-content { font-size: 16px; line-height: 1.7; }
.eems-minimal .eems-project-details { max-width: 900px; font-size: 16px; line-height: 1.8; }
.eems-minimal .eems-project-details h2 { margin: 0 0 24px; font-size: 32px; }
html.eems-modal-open { overflow: hidden; }
.eems-minimal .eems-project-modal { width: min(680px, calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 48px); margin: auto; padding: 0; border: 0; border-radius: 20px; background: #fff; color: #172a3b; box-shadow: 0 24px 80px #061b4266; font: 14px/1.6 Arial, sans-serif; }
.eems-minimal .eems-project-modal[open] { display: flex; flex-direction: column; }
.eems-minimal .eems-project-modal::backdrop { background: #0a2443b3; backdrop-filter: blur(6px); }
.eems-minimal .eems-project-modal__header { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-shrink: 0; padding: 22px 28px; background: linear-gradient(115deg, #102d4d, #1c4d81); color: #fff; }
.eems-minimal .eems-project-modal__header .eems-eyebrow { margin: 0 0 3px; color: var(--eems-gold); }
.eems-minimal .eems-project-modal__header h2 { margin: 0; color: #fff; font-size: 23px; line-height: 1.25; }
.eems-minimal .eems-project-modal__close { display: grid; place-items: center; flex-shrink: 0; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; background: #ffffff15; color: #fff; font: 300 30px/1 Arial, sans-serif; cursor: pointer; }
.eems-minimal .eems-project-modal__close:hover { background: #ffffff30; }
.eems-minimal .eems-project-modal__body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 22px 28px 24px; }
.eems-minimal .eems-project-facts { margin: 0; }
.eems-minimal .eems-project-facts > div { display: grid; grid-template-columns: 35% minmax(0, 1fr); gap: 18px; padding: 12px 0; border-bottom: 1px solid #e5e7eb; }
.eems-minimal .eems-project-facts dt { padding-top: 2px; color: #686f78; font-size: 11px; font-weight: 700; line-height: 1.5; letter-spacing: .025em; text-transform: uppercase; }
.eems-minimal .eems-project-facts dd { margin: 0; overflow-wrap: anywhere; }
.eems-minimal .eems-project-note { margin-top: 20px; padding: 17px 18px; border-left: 4px solid var(--eems-blue); border-radius: 10px; background: #f4f7fb; line-height: 1.75; }
.eems-minimal .eems-project-note p { margin: 0 0 12px; }
.eems-minimal .eems-project-note p:last-child { margin-bottom: 0; }
.eems-minimal .eems-project-modal__footer { display: flex; justify-content: flex-end; flex-shrink: 0; padding: 16px 28px; border-top: 1px solid #e5e7eb; }
.eems-minimal .eems-project-modal__footer .eems-button { min-height: 38px; padding: 8px 24px; border: 0; background: var(--eems-navy); cursor: pointer; }
.eems-minimal .eems-partners { display: grid; gap: 32px; padding-top: 42px; padding-bottom: 56px; }
.eems-minimal .eems-partner { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; border: 1px solid #e5eaf0; border-radius: 16px; background: #f4f7fb; }
.eems-minimal .eems-partner__media { position: relative; min-height: 360px; margin: 0; background: #e5eaf0; }
.eems-minimal .eems-partner__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.eems-minimal .eems-partner__content { align-self: center; padding: clamp(24px, 3vw, 40px); }
.eems-minimal .eems-partner__logo { display: block; width: 180px; max-width: 100%; height: 60px; margin-bottom: 24px; object-fit: contain; object-position: left; }
.eems-minimal .eems-partner h2 { margin: 0 0 20px; color: var(--eems-navy); font-size: clamp(24px, 2.3vw, 30px); line-height: 1.25; }
.eems-minimal .eems-partner__description { color: #42566b; font-size: 15px; line-height: 1.8; }
.eems-minimal .eems-partner__description p { margin: 0 0 20px; }
.eems-minimal .eems-partner--empa .eems-partner__media { order: 2; }
.eems-minimal .eems-partner--empa .eems-partner__content { order: 1; }
.eems-minimal .eems-partner--text-only { grid-template-columns: 1fr; }
@media (max-width: 760px) {
    .eems-minimal .eems-partner { grid-template-columns: 1fr; }
    .eems-minimal .eems-partner__media { min-height: 0; aspect-ratio: 4 / 3; }
    .eems-minimal .eems-partner--empa .eems-partner__media { order: 0; }
}
.eems-minimal .eems-footer { padding: 48px 0 24px; background: var(--eems-navy); color: #9aadc0; font: 12px/1.9 Arial, sans-serif; }
.eems-minimal .eems-footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 60px; padding-bottom: 38px; }
.eems-minimal .eems-footer p { margin: 0 0 6px; }
.eems-minimal .eems-footer .eems-footer__brand { margin-bottom: 2px; color: #fff; font-size: 17px; font-weight: 700; }
.eems-minimal .eems-footer h2 { margin: 0 0 10px; color: #a2b3c4; font: 700 11px/1.6 Arial, sans-serif; letter-spacing: 2px; text-transform: uppercase; }
.eems-minimal .eems-footer ul { margin: 0; padding: 0; list-style: none; }
.eems-minimal .eems-footer li { margin: 0 0 2px; }
.eems-minimal .eems-footer a { color: #9aadc0; }
.eems-minimal .eems-footer a:hover { color: #fff; text-decoration: underline; }
.eems-minimal .eems-footer__bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-top: 18px; border-top: 1px solid #ffffff1a; font-size: 11px; }
.eems-minimal .eems-footer__bottom p { margin: 0; }
.eems-minimal .eems-footer__legal ul { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 7px; }
.eems-minimal .eems-footer__legal li { margin: 0; }
.eems-minimal .eems-footer__funding { padding: 2px 12px; border: 1px solid #ffffff1a; border-radius: 20px; }

@media (max-width: 1100px) {
    .eems-minimal .eems-header__inner { padding-right: 0; padding-left: 0; gap: 16px; }
    .eems-minimal .eems-menu a { padding: 8px; font-size: 12px; }
    .eems-minimal .eems-brand strong { max-width: 200px; font-size: 12px; }
}

@media (max-width: 960px) {
    .eems-minimal .eems-header__inner { flex-wrap: wrap; }
    .eems-minimal .eems-menu-toggle { margin-left: auto; }
    .eems-minimal .eems-navigation { order: 4; width: 100%; margin-left: 0; padding: 0 0 10px; }
    .eems-minimal .eems-menu { align-items: stretch; flex-wrap: wrap; }
    .eems-minimal .eems-menu .sub-menu { position: static; display: block; }
    .eems-minimal .eems-menu a { font-size: 14px; }
    .eems-minimal .eems-hero { padding: 52px 0; }
    .eems-minimal .eems-hero__grid { gap: 28px; }
    .eems-minimal .eems-hero__visual { height: 300px; }
    .eems-minimal .eems-button { padding: 10px 14px; font-size: 14px; }
    .eems-minimal .eems-information__grid { grid-template-columns: repeat(2, 1fr); padding: 0; }
}

@media (max-width: 680px) {
    .eems-minimal .eems-footer { padding-top: 32px; }
    .eems-minimal .eems-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; padding-bottom: 28px; }
    .eems-minimal .eems-footer__about { grid-column: 1 / -1; }
    .eems-minimal .eems-footer__bottom { align-items: flex-start; flex-direction: column; gap: 12px; }
    .eems-minimal .eems-project-modal { max-height: calc(100dvh - 24px); border-radius: 16px; }
    .eems-minimal .eems-project-modal__header { padding: 18px 20px; }
    .eems-minimal .eems-project-modal__header h2 { font-size: 20px; }
    .eems-minimal .eems-project-modal__body { padding: 12px 20px 20px; }
    .eems-minimal .eems-project-modal__footer { padding: 14px 20px; }
    .eems-minimal .eems-shell { width: calc(100% - 32px); }
    .eems-minimal .eems-header__inner { gap: 10px; }
    .eems-minimal .eems-brand strong { max-width: 140px; font-size: 11px; }
    .eems-minimal .eems-brand { gap: 8px; }
    .eems-minimal .eems-brand__badge { width: 38px; height: 38px; }
    .eems-minimal .eems-languages :is(a, span) { padding: 3px 8px; }
    .eems-minimal .eems-menu-toggle { font-size: 12px; padding: 6px 8px; }
    .eems-minimal .eems-hero { padding: 40px 0; }
    .eems-minimal .eems-hero__grid,
    .eems-minimal .eems-research__grid,
    .eems-minimal .eems-partners { grid-template-columns: 1fr; }
    .eems-minimal .eems-funding-badge { font-size: 10px; padding: 5px 9px; }
    .eems-minimal .eems-hero__visual { height: 250px; }
    .eems-minimal .eems-stats__grid { grid-template-columns: repeat(2, 1fr); gap: 22px; padding: 26px 0; }
    .eems-minimal .eems-information__grid { gap: 10px; }
    .eems-minimal .eems-information__grid > div { padding: 14px; }
    .eems-minimal .eems-section { padding-top: 32px; padding-bottom: 32px; }
    .eems-minimal .eems-partners { gap: 24px; }
}

@media (max-width: 390px) {
    .eems-minimal .eems-languages { order: 3; margin-left: auto; }
    .eems-minimal .eems-brand strong { max-width: 125px; }
    .eems-minimal .eems-information__grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
    .eems-minimal .eems-project-facts > div { grid-template-columns: 1fr; gap: 4px; }
}
.eems-minimal .entry-content .wp-block-paragraph { padding-bottom: 10px; }
