/*
Theme Name: ERNILAC – Astra Production
Theme URI: https://ernilac.eu/
Description: Produkční vzhled ERNILAC převzatý z Playground v7; obsah zůstává ve WordPressu.
Author: ERNILAC
Template: astra
Version: 18.1.0
Text Domain: ernilac-astra-production
*/

:root {
  --ast-body-font-family: "Roboto", Arial, sans-serif;
  --ast-heading-font-family: "Roboto", Arial, sans-serif;
  --ern-blue: #004aad;
  --ern-blue-dark: #00377f;
  --ern-green: #7ed957;
  --ern-green-dark: #397b28;
  --ern-ink: #1b1b1b;
  --ern-text: #485460;
  --ern-muted: #697684;
  --ern-bg: #f5f7fa;
  --ern-surface: #ffffff;
  --ern-border: #dce3ea;
  --ern-shadow: 0 18px 45px rgba(24, 42, 68, .09);
  --ern-radius: 22px;
  --ern-wide: 1180px;
  --ern-reading: 760px;
}

html { scroll-behavior: smooth; }
body {
  background: var(--ern-surface);
  color: var(--ern-text);
  font-family: "Roboto", Arial, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
}
body, button, input, select, textarea { font-family: inherit; }
body.ernilac-demo-site,
body.ernilac-demo-site button,
body.ernilac-demo-site input,
body.ernilac-demo-site select,
body.ernilac-demo-site textarea,
body.ernilac-demo-site .menu-link,
body.ernilac-demo-site .entry-content,
body.ernilac-demo-site .entry-content p,
body.ernilac-demo-site .entry-content li,
body.ernilac-demo-site .entry-content a,
body.ernilac-demo-site .entry-content strong,
body.ernilac-demo-site .entry-title,
body.ernilac-demo-site h1,
body.ernilac-demo-site h2,
body.ernilac-demo-site h3,
body.ernilac-demo-site h4,
body.ernilac-demo-site h5,
body.ernilac-demo-site h6 {
  font-family: "Roboto", Arial, sans-serif !important;
}
a { color: var(--ern-blue); text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover, a:focus { color: var(--ern-blue-dark); }

h1, h2, h3, h4, h5, h6 {
  color: var(--ern-ink);
  font-family: inherit;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.13;
  margin-top: 0;
}
h1 { font-size: clamp(2.45rem, 5vw, 4.65rem); }
h2 { font-size: clamp(2rem, 3.7vw, 3.15rem); }
h3 { font-size: clamp(1.3rem, 2vw, 1.65rem); letter-spacing: -.02em; }
p { margin-bottom: 1.25em; }

/* Header: calm, legible, no decorative gradient. */
.site-header { position: relative; z-index: 50; }
.ast-primary-header-bar {
  background: rgba(255,255,255,.97) !important;
  border-bottom: 1px solid rgba(27,27,27,.10) !important;
  box-shadow: 0 6px 22px rgba(25,41,62,.04);
}
.ast-builder-grid-row { min-height: 84px; }
.site-branding img, .custom-logo { width: 178px; max-height: 62px; object-fit: contain; }
.ast-site-identity { padding: 0; }
.main-header-menu > .menu-item > .menu-link {
  color: var(--ern-ink);
  font-size: .94rem;
  font-weight: 600;
  padding: 0 15px;
  min-height: 84px;
  letter-spacing: -.01em;
  position: relative;
}
.main-header-menu > .menu-item > .menu-link::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 20px;
  height: 3px;
  border-radius: 5px;
  background: var(--ern-blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
}
.main-header-menu > .menu-item:hover > .menu-link::after,
.main-header-menu > .current-menu-item > .menu-link::after { transform: scaleX(1); }
.main-header-menu > .current-menu-item > .menu-link { color: var(--ern-blue); }
.ast-mobile-header-wrap .ast-primary-header-bar { min-height: 72px; }
.ast-button-wrap .menu-toggle.main-header-menu-toggle {
  color: var(--ern-ink);
  border: 1px solid var(--ern-border);
  border-radius: 12px;
  padding: 10px;
}
.ast-mobile-popup-drawer .ast-mobile-popup-inner { background: var(--ern-surface); }
.ast-mobile-popup-drawer .main-header-menu .menu-link { font-size: 1.1rem; font-weight: 600; padding: 16px 24px; }

/* Remove Astra's boxed-page residue; page content controls its own widths. */
.site-content .ast-container { max-width: none; padding: 0; display: block; }
.site-main, .content-area { width: 100%; margin: 0; }
.entry-content, .entry-content p { color: var(--ern-text); }
.entry-content > *:not(.alignfull):not(.ernilac-section) { max-width: var(--ern-wide); margin-left: auto; margin-right: auto; }
.ast-page-builder-template .entry-content > .alignfull { margin-left: 0; margin-right: 0; }

.ernilac-section { padding: 92px 24px; margin: 0; }
.ernilac-section--soft { background: var(--ern-bg); }
.ernilac-section--blue { background: var(--ern-blue); color: #fff; }
.ernilac-section--blue h2, .ernilac-section--blue h3, .ernilac-section--blue p { color: #fff; }
.ernilac-container { width: min(100%, var(--ern-wide)); margin: 0 auto; }
.ernilac-reading { width: min(100%, var(--ern-reading)); }
.ernilac-center { margin-inline: auto; text-align: center; }
.ernilac-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  color: var(--ern-blue);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ernilac-eyebrow::before { content: ""; width: 34px; height: 3px; background: var(--ern-green); border-radius: 5px; }
.ernilac-lead { max-width: 720px; font-size: clamp(1.08rem, 1.8vw, 1.28rem); color: var(--ern-muted); line-height: 1.62; }
.ernilac-section-head { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 42px; }
.ernilac-section-head > div { max-width: 760px; }
.ernilac-section-head p { margin-bottom: 0; }

.ernilac-hero {
  overflow: hidden;
  padding-top: 102px;
  padding-bottom: 104px;
  background:
    linear-gradient(90deg, rgba(0,74,173,.045) 1px, transparent 1px),
    linear-gradient(rgba(0,74,173,.045) 1px, transparent 1px),
    #fff;
  background-size: 64px 64px;
}
.ernilac-hero-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); gap: 72px; align-items: center; }
.ernilac-hero h1 { max-width: 800px; margin-bottom: 26px; }
.ernilac-hero h1 span { color: var(--ern-blue); }
.ernilac-hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }

/* Homepage v4: the photograph starts directly under the header. */
.home .site-content,
.home .content-area,
.home .site-main,
.home .ast-article-single,
.home article.page,
.home .entry-content {
  margin: 0 !important;
  padding: 0 !important;
}
.home .site-content .ast-container { margin-top: 0 !important; padding-top: 0 !important; }
.home .entry-content > .ernilac-home-hero {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.ernilac-home-hero {
  position: relative;
  width: 100%;
  min-height: clamp(560px, 67vh, 760px);
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #10243d;
  color: #fff;
  isolation: isolate;
}
.ernilac-home-hero > img {
  position: absolute;
  z-index: -3;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
}
.ernilac-home-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5,22,45,.83) 0%, rgba(5,22,45,.58) 45%, rgba(5,22,45,.20) 76%, rgba(5,22,45,.14) 100%),
    linear-gradient(0deg, rgba(4,19,39,.52) 0%, transparent 42%);
}
.ernilac-home-hero__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: min(100%, var(--ern-wide));
  min-height: inherit;
  margin: 0 auto;
  padding: 72px 24px 62px;
}
.ernilac-home-hero__copy { max-width: 820px; }
.ernilac-home-hero .ernilac-eyebrow { color: rgba(255,255,255,.88); }
.ernilac-home-hero .ernilac-eyebrow::before { background: var(--ern-green); }
.ernilac-home-hero h1 {
  max-width: 850px;
  margin: 0 0 24px;
  color: #fff;
  font-size: clamp(2.55rem, 5.4vw, 4.9rem);
  text-shadow: 0 3px 24px rgba(0,0,0,.24);
}
.ernilac-home-hero h1 span { color: var(--ern-green); }
.ernilac-home-hero .ernilac-lead {
  max-width: 690px;
  margin: 0;
  color: rgba(255,255,255,.93);
  text-shadow: 0 2px 16px rgba(0,0,0,.2);
}
.ernilac-home-hero .ernilac-button--ghost {
  border-color: rgba(255,255,255,.72);
  background: rgba(255,255,255,.10);
  color: #fff !important;
  backdrop-filter: blur(7px);
}
.ernilac-home-hero .ernilac-button--ghost:hover { background: #fff; color: var(--ern-blue) !important; }
.ernilac-home-hero__meta {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 28px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  color: #fff;
}
.ernilac-home-hero__meta span { display: block; }
.ernilac-home-hero__meta strong { color: #fff; font-size: .96rem; }
.ernilac-home-hero__meta small { color: rgba(255,255,255,.78); font-size: .82rem; }
.ernilac-home-hero__badge {
  flex: 0 0 auto;
  padding: 9px 14px;
  border: 1px solid rgba(255,255,255,.50);
  border-radius: 999px;
  background: rgba(5,20,40,.34);
  color: #fff;
  font-size: .76rem;
  font-weight: 700;
  backdrop-filter: blur(8px);
}
.ernilac-partners-section { padding-top: 66px; padding-bottom: 66px; background: #fff; }
.ernilac-section-head--compact { margin-bottom: 28px; }
.ernilac-section-head--compact h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); margin-bottom: 0; }
.ernilac-partners-panel {
  display: grid;
  grid-template-columns: minmax(0,1fr) 1px minmax(300px,.82fr);
  gap: 38px;
  align-items: center;
  padding: 34px 38px;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: var(--ern-surface);
  box-shadow: 0 12px 34px rgba(24,42,68,.045);
}
.ernilac-partners-panel img { display: block; width: 100%; height: auto; }
.ernilac-partners-panel .ernilac-interreg-logo { width: min(100%, 820px); justify-self: center; }
.ernilac-partners-divider { width: 1px; height: 72%; min-height: 92px; background: var(--ern-border); }
.ernilac-overview-section { padding-top: 72px; padding-bottom: 72px; }
.ernilac-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 23px;
  border: 2px solid var(--ern-blue);
  border-radius: 999px;
  background: var(--ern-blue);
  color: #fff !important;
  font-size: .94rem;
  font-weight: 700;
  text-decoration: none !important;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.ernilac-button:hover { background: var(--ern-blue-dark); transform: translateY(-2px); box-shadow: 0 12px 26px rgba(0,74,173,.22); }
.ernilac-button--ghost { background: #fff; color: var(--ern-blue) !important; }
.ernilac-button--ghost:hover { background: var(--ern-bg); }
.ernilac-button--light { background: #fff; color: var(--ern-blue) !important; border-color: #fff; }
.ernilac-button--light:hover { background: var(--ern-bg); }

.ernilac-hero-visual { position: relative; min-height: 480px; }
.ernilac-visual-board {
  position: absolute;
  inset: 20px 10px 20px 30px;
  border: 1px solid var(--ern-border);
  border-radius: 34px;
  background: #fff;
  box-shadow: var(--ern-shadow);
  overflow: hidden;
}
.ernilac-visual-board::before { content: ""; display: block; height: 14px; background: var(--ern-blue); }
.ernilac-visual-route { position: absolute; inset: 85px 52px 70px; }
.ernilac-visual-route svg { width: 100%; height: 100%; overflow: visible; }
.ernilac-visual-label {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--ern-border);
  box-shadow: 0 10px 25px rgba(20,42,70,.10);
  color: var(--ern-ink);
  font-size: .78rem;
  font-weight: 700;
}
.ernilac-visual-label::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--ern-green); }
.ernilac-visual-label--one { left: 3px; top: 105px; }
.ernilac-visual-label--two { right: -4px; top: 230px; }
.ernilac-visual-label--three { left: 60px; bottom: 18px; }

.ernilac-stats { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--ern-border); border-radius: var(--ern-radius); background: #fff; overflow: hidden; }
.ernilac-stat { padding: 30px 34px; }
.ernilac-stat + .ernilac-stat { border-left: 1px solid var(--ern-border); }
.ernilac-stat strong { display: block; color: var(--ern-ink); font-size: 1.35rem; line-height: 1.2; margin-bottom: 5px; }
.ernilac-stat span { color: var(--ern-muted); font-size: .92rem; }

.ernilac-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.ernilac-card {
  position: relative;
  padding: 34px;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.055);
}
.ernilac-card h3 { margin-bottom: 13px; }
.ernilac-card p:last-child { margin-bottom: 0; }
.ernilac-card-number { display: inline-flex; width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 50%; background: rgba(126,217,87,.20); color: var(--ern-green-dark); font-weight: 800; margin-bottom: 25px; }
.ernilac-card-link { display: inline-flex; margin-top: 18px; font-weight: 700; text-decoration: none; }

.ernilac-compass-promo { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.85fr); gap: 58px; align-items: center; padding: 58px; border-radius: 30px; background: var(--ern-blue); box-shadow: 0 20px 55px rgba(0,74,173,.20); }
.ernilac-compass-promo h2, .ernilac-compass-promo p { color: #fff; }
.ernilac-compass-promo .ernilac-eyebrow { color: #fff; }
.ernilac-compass-list { display: grid; gap: 12px; }
.ernilac-compass-list div { display: flex; gap: 13px; align-items: center; padding: 17px 19px; border-radius: 15px; background: rgba(255,255,255,.11); color: #fff; font-weight: 600; }
.ernilac-compass-list b { display: inline-flex; width: 28px; height: 28px; align-items:center; justify-content:center; border-radius:50%; background:var(--ern-green); color:var(--ern-ink); }

.ernilac-news-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.ernilac-news-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--ern-border); border-radius: var(--ern-radius); background: #fff; overflow: hidden; box-shadow: 0 12px 34px rgba(24,42,68,.055); }
.ernilac-news-card__image { display: block; aspect-ratio: 16/9; overflow: hidden; background: var(--ern-bg); }
.ernilac-news-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.ernilac-news-card:hover img { transform: scale(1.025); }
.ernilac-news-card__body { display:flex; flex-direction:column; flex:1; padding: 27px; }
.ernilac-news-card__meta { color: var(--ern-muted); font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.ernilac-news-card h3 { margin: 10px 0 12px; font-size: 1.38rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ernilac-news-card h3 a { color: var(--ern-ink); text-decoration: none; }
.ernilac-news-card p { font-size: .95rem; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ernilac-news-card__more { margin-top: auto; font-weight: 700; text-decoration: none; }

.ernilac-team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.ernilac-person { border: 1px solid var(--ern-border); border-radius: var(--ern-radius); overflow: hidden; background: #fff; }
.ernilac-person__top { display:grid; grid-template-columns: 126px minmax(0,1fr); gap: 21px; align-items:center; padding: 24px 24px 20px; }
.ernilac-person img { width: 126px; aspect-ratio: 4/5; object-fit: cover; object-position: top center; border-radius: 16px; background: var(--ern-bg); }
.ernilac-person h3 { font-size: 1.2rem; margin: 0 0 8px; }
.ernilac-person__role { color: var(--ern-blue); font-size: .83rem; font-weight: 700; line-height: 1.4; }
.ernilac-person__body { padding: 0 24px 25px; font-size: .92rem; }
.ernilac-person__body p { margin: 0; }

.ernilac-gallery { display: grid; grid-template-columns: repeat(12,1fr); gap: 18px; }
.ernilac-gallery figure { margin: 0; border-radius: 20px; overflow: hidden; background: var(--ern-bg); }
.ernilac-gallery figure:nth-child(1), .ernilac-gallery figure:nth-child(4) { grid-column: span 7; }
.ernilac-gallery figure:nth-child(2), .ernilac-gallery figure:nth-child(3), .ernilac-gallery figure:nth-child(5), .ernilac-gallery figure:nth-child(6) { grid-column: span 5; }
.ernilac-gallery img { width:100%; height:100%; min-height:300px; object-fit:cover; transition: transform .35s ease; }
.ernilac-gallery figure:hover img { transform:scale(1.02); }

.ernilac-page-hero { padding-top: 82px; padding-bottom: 70px; background: var(--ern-bg); border-bottom: 1px solid var(--ern-border); }
.ernilac-page-hero h1 { max-width: 900px; margin-bottom: 22px; }
.ernilac-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border: 1px solid var(--ern-border); background: var(--ern-border); border-radius: var(--ern-radius); overflow: hidden; }
.ernilac-fact { background:#fff; padding:25px 28px; }
.ernilac-fact dt { color: var(--ern-muted); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.ernilac-fact dd { margin:6px 0 0; color:var(--ern-ink); font-weight:700; }
.ernilac-prose { width:min(100%, var(--ern-reading)); }
.ernilac-prose h2 { margin-top: 2em; }
.ernilac-prose li { margin-bottom: .65em; }

.ernilac-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:36px; }
.ernilac-step { padding:24px; border:1px solid var(--ern-border); border-radius:18px; background:#fff; }
.ernilac-step b { display:block; color:var(--ern-blue); font-size:.78rem; text-transform:uppercase; letter-spacing:.09em; margin-bottom:8px; }
.ernilac-step span { color:var(--ern-ink); font-weight:700; }
.ernilac-powerbi-shell { margin-top:46px; border:1px solid var(--ern-border); border-radius:26px; background:#fff; box-shadow:var(--ern-shadow); overflow:hidden; }
.ernilac-powerbi-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:19px 24px; border-bottom:1px solid var(--ern-border); background:#fff; }
.ernilac-powerbi-bar strong { color:var(--ern-ink); }
.ernilac-powerbi-bar span { color:var(--ern-muted); font-size:.86rem; }
.ernilac-powerbi-frame { position:relative; width:100%; min-height:760px; background:var(--ern-bg); }
.ernilac-powerbi-frame iframe { display:block; width:100%; height:760px; border:0; }
.ernilac-notice { padding:22px 25px; border-left:5px solid var(--ern-green); border-radius:12px; background:rgba(126,217,87,.12); }
.ernilac-notice p:last-child { margin-bottom:0; }

/* Single articles */
.single-post .site-content .ast-container { max-width: 900px; padding: 72px 24px 96px; }
.single-post .entry-title { font-size: clamp(2.2rem,4vw,3.7rem); }
.single-post .entry-meta { color: var(--ern-muted); }
.single-post .entry-content { font-size: 1.05rem; }
.single-post .entry-content > * { max-width: var(--ern-reading); margin-left:auto; margin-right:auto; }
.single-post .post-thumb img { border-radius: var(--ern-radius); }
.comments-area, .post-navigation { display:none; }

.site-footer { margin-top:0; }
.site-primary-footer-wrap { display:none; }
.site-below-footer-wrap { background:var(--ern-ink) !important; color:rgba(255,255,255,.72); border:0 !important; padding:28px 24px; }
.site-below-footer-wrap a { color:#fff; }
.ast-footer-copyright { font-size:.88rem; }

@media (max-width: 980px) {
  .main-header-menu > .menu-item > .menu-link { padding: 0 10px; }
  .ernilac-hero-grid, .ernilac-compass-promo { grid-template-columns:1fr; }
  .ernilac-hero-visual { min-height:400px; max-width:650px; width:100%; margin-inline:auto; }
  .ernilac-cards, .ernilac-news-grid, .ernilac-team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ernilac-section { padding-top:72px; padding-bottom:72px; }
}
@media (max-width: 700px) {
  body { font-size:16px; }
  .ernilac-section { padding:58px 21px; }
  .ernilac-hero { padding-top:66px; padding-bottom:70px; }
  .ernilac-hero-grid { gap:38px; }
  .ernilac-hero-copy { max-width: none; }
  .ernilac-partners-section { padding-top:48px; padding-bottom:48px; }
  .ernilac-partners-panel { grid-template-columns:1fr; gap:24px; padding:24px; }
  .ernilac-partners-divider { width:100%; height:1px; min-height:0; }
  .ernilac-hero-visual { min-height:340px; }
  .ernilac-visual-board { inset:8px; }
  .ernilac-visual-label { font-size:.69rem; padding:8px 10px; }
  .ernilac-stats, .ernilac-cards, .ernilac-news-grid, .ernilac-team-grid, .ernilac-facts, .ernilac-steps { grid-template-columns:1fr; }
  .ernilac-stat + .ernilac-stat { border-left:0; border-top:1px solid var(--ern-border); }
  .ernilac-section-head { display:block; }
  .ernilac-section-head .ernilac-button { margin-top:18px; }
  .ernilac-compass-promo { padding:34px 25px; border-radius:24px; }
  .ernilac-person__top { grid-template-columns:100px minmax(0,1fr); padding:20px; }
  .ernilac-person img { width:100px; }
  .ernilac-person__body { padding:0 20px 22px; }
  .ernilac-gallery { grid-template-columns:1fr; }
  .ernilac-gallery figure:nth-child(n) { grid-column:auto; }
  .ernilac-gallery img { min-height:230px; }
  .ernilac-powerbi-frame, .ernilac-powerbi-frame iframe { min-height:620px; height:620px; }
  .ernilac-powerbi-bar { align-items:flex-start; flex-direction:column; }
  .site-branding img, .custom-logo { width:145px; }
}

/* ERNILAC demo v2 --------------------------------------------------------- */
.ernilac-language-menu {
  display: flex;
  align-items: center;
  margin-left: 8px;
  padding-left: 18px;
  border-left: 1px solid var(--ern-border);
}
.ernilac-language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px;
  border: 1px solid var(--ern-border);
  border-radius: 999px;
  background: var(--ern-bg);
}
.ernilac-language-switcher a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 30px;
  padding: 0 8px;
  border-radius: 999px;
  color: var(--ern-muted);
  font-size: .75rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}
.ernilac-language-switcher a:hover,
.ernilac-language-switcher a:focus,
.ernilac-language-switcher a.is-active {
  background: #fff;
  color: var(--ern-blue);
  box-shadow: 0 3px 10px rgba(24,42,68,.08);
}

.ernilac-hero-photo {
  position: relative;
  min-height: 520px;
  margin: 0;
  border-radius: 30px;
  overflow: hidden;
  background: var(--ern-bg);
  box-shadow: 0 26px 70px rgba(24,42,68,.16);
}
.ernilac-hero-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,42,92,.02) 40%, rgba(0,42,92,.48) 100%);
  pointer-events: none;
}
.ernilac-hero-photo > img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  object-position: center;
}
.ernilac-photo-caption {
  position: absolute;
  z-index: 2;
  left: 26px;
  right: 26px;
  bottom: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: #fff;
}
.ernilac-photo-caption strong {
  display: block;
  color: #fff;
  font-size: 1.12rem;
  line-height: 1.2;
}
.ernilac-photo-caption span {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,.82);
  font-size: .86rem;
}
.ernilac-photo-badge {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: var(--ern-blue) !important;
  font-size: .76rem !important;
  font-weight: 800;
  letter-spacing: .03em;
}
.ernilac-photo-badge::before {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--ern-green);
}

.ernilac-intro-band {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) repeat(3,minmax(0,.7fr));
  gap: 1px;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  overflow: hidden;
  background: var(--ern-border);
}
.ernilac-intro-band > div {
  padding: 28px 30px;
  background: #fff;
}
.ernilac-intro-band__lead {
  background: var(--ern-blue) !important;
}
.ernilac-intro-band__lead strong,
.ernilac-intro-band__lead span { color: #fff; }
.ernilac-intro-band strong {
  display: block;
  color: var(--ern-ink);
  font-size: 1.16rem;
  line-height: 1.25;
}
.ernilac-intro-band span {
  display: block;
  margin-top: 7px;
  color: var(--ern-muted);
  font-size: .88rem;
  line-height: 1.45;
}

.ernilac-split {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(360px,.85fr);
  gap: 68px;
  align-items: center;
}
.ernilac-split--reverse > :first-child { order: 2; }
.ernilac-split--reverse > :last-child { order: 1; }
.ernilac-project-photo {
  position: relative;
  margin: 0;
  border-radius: 26px;
  overflow: hidden;
  background: #fff;
  box-shadow: var(--ern-shadow);
}
.ernilac-project-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.ernilac-project-photo figcaption {
  padding: 17px 20px;
  border-top: 1px solid var(--ern-border);
  color: var(--ern-muted);
  font-size: .84rem;
}
.ernilac-check-list {
  display: grid;
  gap: 13px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}
.ernilac-check-list li {
  position: relative;
  padding-left: 34px;
  color: var(--ern-ink);
  font-weight: 600;
}
.ernilac-check-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: .05em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: rgba(126,217,87,.22);
  color: var(--ern-green-dark);
  font-size: .78rem;
  font-weight: 900;
}

.ernilac-principles {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 22px;
}
.ernilac-principle {
  padding: 30px;
  border-top: 4px solid var(--ern-blue);
  border-radius: 0 0 var(--ern-radius) var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.055);
}
.ernilac-principle:nth-child(2) { border-top-color: var(--ern-green); }
.ernilac-principle:nth-child(3) { border-top-color: var(--ern-ink); }
.ernilac-principle h3 { margin-bottom: 10px; }
.ernilac-principle p:last-child { margin-bottom: 0; }

/* Polished single news detail. */
.ernilac-article { background: #fff; }
.ernilac-article-hero {
  padding: 92px 24px 74px;
  background: var(--ern-bg);
  border-bottom: 1px solid var(--ern-border);
}
.ernilac-article-hero__inner { max-width: 980px; }
.ernilac-article-hero h1 {
  max-width: 920px;
  margin-bottom: 24px;
  font-size: clamp(2.45rem,5.2vw,4.8rem);
}
.ernilac-article-hero .ernilac-lead { max-width: 780px; }
.ernilac-article-main { padding-top: 64px; }
.ernilac-article-image {
  width: min(100%, 1080px);
  margin: 0 auto 54px;
  border-radius: 26px;
  overflow: hidden;
  background: var(--ern-bg);
  box-shadow: var(--ern-shadow);
}
.ernilac-article-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.ernilac-article-body {
  width: min(100%, var(--ern-reading));
  margin: 0 auto;
  color: var(--ern-text);
  font-size: 1.08rem;
  line-height: 1.76;
}
.ernilac-article-body > p:first-child {
  color: var(--ern-ink);
  font-size: 1.18rem;
  line-height: 1.65;
}
.ernilac-article-body h2 {
  margin-top: 2.1em;
  margin-bottom: .7em;
  font-size: clamp(1.8rem,3vw,2.55rem);
}
.ernilac-article-body h3 {
  margin-top: 1.9em;
  margin-bottom: .65em;
}
.ernilac-article-body ul,
.ernilac-article-body ol { padding-left: 1.25em; }
.ernilac-article-body li { margin-bottom: .6em; }
.ernilac-article-body blockquote {
  margin: 2.2em 0;
  padding: 22px 26px;
  border-left: 5px solid var(--ern-green);
  border-radius: 0 14px 14px 0;
  background: var(--ern-bg);
  color: var(--ern-ink);
}
.ernilac-article-actions {
  width: min(100%, var(--ern-reading));
  margin: 48px auto 0;
  padding-top: 30px;
  border-top: 1px solid var(--ern-border);
}
.ernilac-related-news { border-top: 1px solid var(--ern-border); }
.single-post .site-content .ast-container { max-width: none; padding: 0; }
.single-post .entry-header,
.single-post .entry-content,
.single-post .post-thumb { max-width: none; }

@media (max-width: 1120px) {
  .ernilac-language-menu { margin-left: 2px; padding-left: 10px; }
  .ernilac-language-switcher a { min-width: 30px; padding-inline: 6px; }
  .main-header-menu > .menu-item > .menu-link { padding-inline: 9px; font-size: .88rem; }
}

@media (max-width: 980px) {
  .ernilac-intro-band { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ernilac-intro-band__lead { grid-column: 1 / -1; }
  .ernilac-split { grid-template-columns: 1fr; gap: 42px; }
  .ernilac-split--reverse > :first-child,
  .ernilac-split--reverse > :last-child { order: initial; }
  .ernilac-principles { grid-template-columns: 1fr; }
  .ernilac-language-menu {
    display: block;
    margin: 12px 24px 20px;
    padding: 18px 0 0;
    border-left: 0;
    border-top: 1px solid var(--ern-border);
  }
  .ernilac-language-switcher { width: max-content; }
}

@media (max-width: 700px) {
  .ernilac-hero-photo,
  .ernilac-hero-photo > img { min-height: 390px; }
  .ernilac-photo-caption { left: 18px; right: 18px; bottom: 18px; align-items: flex-start; flex-direction: column; gap: 11px; }
  .ernilac-intro-band { grid-template-columns: 1fr; }
  .ernilac-intro-band__lead { grid-column: auto; }
  .ernilac-article-hero { padding: 66px 21px 54px; }
  .ernilac-article-main { padding-top: 40px; }
  .ernilac-article-image { margin-bottom: 36px; border-radius: 18px; }
  .ernilac-article-body { font-size: 1rem; }
  .ernilac-project-photo { border-radius: 20px; }
}


@media (max-width: 768px) {
  .ernilac-home-hero { min-height: 650px; }
  .ernilac-home-hero > img { object-position: 57% center; }
  .ernilac-home-hero::before {
    background:
      linear-gradient(0deg, rgba(4,18,38,.88) 0%, rgba(4,18,38,.64) 60%, rgba(4,18,38,.30) 100%);
  }
  .ernilac-home-hero__inner { justify-content: flex-end; padding: 64px 21px 112px; }
  .ernilac-home-hero h1 { font-size: clamp(2.25rem, 11vw, 3.45rem); }
  .ernilac-home-hero .ernilac-lead { font-size: 1.04rem; }
  .ernilac-home-hero__meta { left: 21px; right: 21px; bottom: 22px; align-items: flex-start; }
  .ernilac-home-hero__meta small { display: none; }
  .ernilac-home-hero__badge { display: none; }
}


/* ERNILAC demo v5 --------------------------------------------------------- */
/* Hero contains only the actual introduction; project metadata now follows below. */
.ernilac-home-hero { min-height: clamp(540px, 62vh, 700px); }
.ernilac-home-hero__inner { padding-top: 78px; padding-bottom: 78px; }
.ernilac-home-hero__copy { max-width: 820px; }

.ernilac-project-facts {
  display: grid;
  grid-template-columns: 1.15fr .7fr 1fr;
  gap: 1px;
  margin-top: 28px;
  border: 1px solid var(--ern-border);
  border-radius: 18px;
  overflow: hidden;
  background: var(--ern-border);
}
.ernilac-project-facts > div { padding: 21px 24px; background: #fff; }
.ernilac-project-facts span {
  display: block;
  margin-bottom: 5px;
  color: var(--ern-muted);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.ernilac-project-facts strong { display: block; color: var(--ern-ink); font-size: 1rem; line-height: 1.35; }

/* The explanatory band is deliberately light, readable and no longer black-on-blue. */
.ernilac-overview-section { background: #fff; }
.ernilac-intro-band {
  grid-template-columns: minmax(0,1.65fr) repeat(2,minmax(0,.7fr));
  gap: 18px;
  padding: 18px;
  border-color: rgba(0,74,173,.16);
  background: #eef4fb;
  box-shadow: 0 15px 40px rgba(24,42,68,.05);
}
.ernilac-intro-band > div { border-radius: 14px; background: #fff; }
.ernilac-intro-band__lead {
  position: relative;
  background: #e6f0fc !important;
  border-left: 5px solid var(--ern-blue);
}
.ernilac-intro-band__lead strong { color: var(--ern-blue-dark) !important; font-size: clamp(1.3rem,2vw,1.75rem); }
.ernilac-intro-band__lead span { color: var(--ern-text) !important; font-size: .96rem; }

/* Menu mirrors the original information architecture, but with a clean submenu. */
.main-header-menu .sub-menu {
  min-width: 235px;
  padding: 9px;
  border: 1px solid var(--ern-border);
  border-top: 3px solid var(--ern-blue);
  border-radius: 0 0 15px 15px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(24,42,68,.14);
}
.main-header-menu .sub-menu .menu-link {
  min-height: auto;
  padding: 12px 14px;
  border-radius: 9px;
  color: var(--ern-ink);
  font-size: .9rem;
  font-weight: 600;
}
.main-header-menu .sub-menu .menu-link:hover,
.main-header-menu .sub-menu .current-menu-item > .menu-link { background: var(--ern-bg); color: var(--ern-blue); }

.ernilac-path-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px; }
.ernilac-path-card {
  display: block;
  padding: 42px;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  color: var(--ern-text);
  text-decoration: none;
  box-shadow: 0 12px 34px rgba(24,42,68,.055);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ernilac-path-card:hover { transform: translateY(-3px); border-color: rgba(0,74,173,.35); box-shadow: var(--ern-shadow); }
.ernilac-path-card > span { color: var(--ern-blue); font-size: .78rem; font-weight: 800; letter-spacing: .1em; }
.ernilac-path-card h2 { margin: 16px 0 13px; font-size: clamp(1.7rem,3vw,2.45rem); }
.ernilac-path-card p { color: var(--ern-text); }
.ernilac-path-card b { color: var(--ern-blue); }

.ernilac-story-grid { display: grid; gap: 28px; }
.ernilac-story {
  display: grid;
  grid-template-columns: minmax(300px,.8fr) minmax(0,1.2fr);
  gap: 0;
  align-items: stretch;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  overflow: hidden;
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.055);
}
.ernilac-story:nth-child(even) { grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); }
.ernilac-story:nth-child(even) img { order: 2; }
.ernilac-story img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; }
.ernilac-story > div { padding: 44px; align-self: center; }
.ernilac-story > div > span { color: var(--ern-blue); font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.ernilac-story h2 { margin: 13px 0 15px; font-size: clamp(1.65rem,3vw,2.5rem); }

.ernilac-output-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.ernilac-output-card { padding: 31px; border: 1px solid var(--ern-border); border-radius: var(--ern-radius); background: #fff; }
.ernilac-output-card > span { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: 50%; background: rgba(126,217,87,.2); color: var(--ern-green-dark); font-weight: 800; }
.ernilac-output-card h2 { margin: 20px 0 11px; font-size: 1.35rem; }
.ernilac-output-card p:last-child { margin-bottom: 0; }

@media (max-width: 1160px) {
  .main-header-menu > .menu-item > .menu-link { padding-left: 9px; padding-right: 9px; font-size: .87rem; }
  .ernilac-language-menu { margin-left: 2px; padding-left: 9px; }
}
@media (max-width: 980px) {
  .ernilac-project-facts, .ernilac-output-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ernilac-path-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .ernilac-home-hero { min-height: 590px; }
  .ernilac-home-hero__inner { justify-content: flex-end; padding-top: 62px; padding-bottom: 58px; }
  .ernilac-project-facts, .ernilac-output-grid { grid-template-columns: 1fr; }
  .ernilac-intro-band { grid-template-columns: 1fr; padding: 12px; }
  .ernilac-story, .ernilac-story:nth-child(even) { grid-template-columns: 1fr; }
  .ernilac-story:nth-child(even) img { order: 0; }
  .ernilac-story img { min-height: 235px; }
  .ernilac-story > div { padding: 28px 24px; }
}


/* ERNILAC demo v6: exact navigation hierarchy and a real language submenu. */
.main-header-menu > .ernilac-language-root {
  margin-left: 8px;
  padding-left: 14px;
  border-left: 1px solid var(--ern-border);
}
.main-header-menu > .ernilac-language-root > .menu-link {
  color: var(--ern-blue);
  font-weight: 700;
}
.main-header-menu > .ernilac-language-root > .menu-link::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--ern-green);
  box-shadow: 0 0 0 4px rgba(126,217,87,.16);
}
.main-header-menu > .ernilac-language-root > .menu-link::after {
  left: 14px;
  right: 14px;
}
.main-header-menu > .ernilac-language-root > .sub-menu {
  left: auto;
  right: 0;
  min-width: 170px;
}
.main-header-menu .ernilac-language-link > .menu-link {
  display: flex;
  align-items: center;
  gap: 10px;
}
.main-header-menu .ernilac-language-link > .menu-link::before {
  display: inline-flex;
  width: 30px;
  color: var(--ern-muted);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.main-header-menu .ernilac-language-cs > .menu-link::before { content: "CS"; }
.main-header-menu .ernilac-language-en > .menu-link::before { content: "EN"; }
.main-header-menu .ernilac-language-de > .menu-link::before { content: "DE"; }

@media (max-width: 1160px) {
  .main-header-menu > .ernilac-language-root { margin-left: 2px; padding-left: 8px; }
}
@media (max-width: 921px) {
  .ast-mobile-popup-content .ernilac-language-root {
    margin: 8px 18px 0;
    padding: 8px 0 0;
    border-top: 1px solid var(--ern-border);
    border-left: 0;
  }
  .ast-mobile-popup-content .ernilac-language-root > .menu-link {
    color: var(--ern-blue);
  }
  .ast-mobile-popup-content .ernilac-language-root > .sub-menu {
    min-width: 0;
    margin: 0 0 10px;
    padding: 4px 0 4px 16px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
  }
  .ast-mobile-popup-content .ernilac-language-link > .menu-link {
    padding-top: 11px;
    padding-bottom: 11px;
  }
}

/* ERNILAC demo v7: menu records are force-synchronized by the bootstrap plugin. */

/* Production integration -------------------------------------------------- */
/* The production header is deliberately independent of Astra Header Builder
   so imported legacy Customizer settings cannot alter the Playground layout. */
body.ernilac-production-site { margin:0; background:#fff; }
.ernilac-site-header {
  position:relative;
  z-index:80;
  width:100%;
  border-bottom:1px solid var(--ern-border);
  background:rgba(255,255,255,.98);
  box-shadow:0 5px 18px rgba(25,41,62,.035);
}
.ernilac-header-shell {
  display:grid;
  grid-template-columns:190px minmax(0,1fr) auto;
  align-items:stretch;
  width:min(calc(100% - 48px),1180px);
  min-height:96px;
  margin:0 auto;
}
.ernilac-brand { display:flex; align-items:center; color:var(--ern-ink); text-decoration:none; }
.ernilac-brand-logo { display:block; width:166px; max-width:100%; height:auto; max-height:68px; object-fit:contain; }
.ernilac-brand-text { font-size:1.5rem; font-weight:900; }
.ernilac-desktop-nav { min-width:0; display:flex; align-items:stretch; justify-content:flex-end; }
.ernilac-primary-menu {
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:0;
  width:100%;
  margin:0;
  padding:0;
  list-style:none;
}
.ernilac-primary-menu > li { position:relative; display:flex; align-items:stretch; margin:0; }
.ernilac-primary-menu a {
  display:flex;
  align-items:center;
  min-height:96px;
  padding:0 13px;
  color:var(--ern-ink);
  font-size:.91rem;
  font-weight:700;
  line-height:1.15;
  text-decoration:none;
  white-space:nowrap;
  position:relative;
}
.ernilac-primary-menu > li > a::after {
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:20px;
  height:3px;
  border-radius:99px;
  background:var(--ern-blue);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}
.ernilac-primary-menu > li:hover > a::after,
.ernilac-primary-menu > .current-menu-item > a::after,
.ernilac-primary-menu > .current-menu-ancestor > a::after { transform:scaleX(1); }
.ernilac-primary-menu > .current-menu-item > a,
.ernilac-primary-menu > .current-menu-ancestor > a { color:var(--ern-blue); }
.ernilac-primary-menu .sub-menu {
  position:absolute;
  z-index:100;
  top:calc(100% - 10px);
  left:0;
  display:none;
  min-width:240px;
  margin:0;
  padding:8px;
  list-style:none;
  border:1px solid var(--ern-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 40px rgba(24,42,68,.12);
}
.ernilac-primary-menu li:hover > .sub-menu,
.ernilac-primary-menu li:focus-within > .sub-menu { display:block; }
.ernilac-primary-menu .sub-menu li { position:relative; }
.ernilac-primary-menu .sub-menu a { min-height:auto; padding:11px 13px; border-radius:9px; white-space:normal; }
.ernilac-primary-menu .sub-menu a:hover { background:var(--ern-bg); color:var(--ern-blue); }
.ernilac-header-language {
  display:flex;
  align-items:center;
  margin-left:10px;
  padding-left:18px;
  border-left:1px solid var(--ern-border);
}
.ernilac-language-switcher { position:relative; }
.ernilac-language-switcher summary {
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 12px;
  color:var(--ern-blue-dark);
  font-size:.9rem;
  font-weight:700;
  cursor:pointer;
  list-style:none;
  white-space:nowrap;
}
.ernilac-language-switcher summary::-webkit-details-marker { display:none; }
.ernilac-language-switcher summary::after { content:"⌄"; color:var(--ern-blue); font-size:.9rem; }
.ernilac-language-dot { width:9px; height:9px; border-radius:50%; background:var(--ern-green); box-shadow:0 0 0 4px rgba(126,217,87,.18); }
.ernilac-language-switcher__menu {
  position:absolute;
  z-index:120;
  top:calc(100% + 4px);
  right:0;
  min-width:150px;
  padding:7px;
  border:1px solid var(--ern-border);
  border-radius:12px;
  background:#fff;
  box-shadow:0 15px 36px rgba(24,42,68,.12);
}
.ernilac-language-switcher:not([open]) .ernilac-language-switcher__menu { display:none; }
.ernilac-language-switcher__menu a { display:block; padding:9px 11px; border-radius:8px; color:var(--ern-ink); font-weight:600; text-decoration:none; }
.ernilac-language-switcher__menu a:hover,
.ernilac-language-switcher__menu a[aria-current="page"] { background:var(--ern-bg); color:var(--ern-blue); }
.ernilac-mobile-menu { display:none; align-self:center; justify-self:end; }
.ernilac-mobile-menu > summary { display:grid; gap:4px; width:44px; height:44px; place-content:center; border:1px solid var(--ern-border); border-radius:11px; cursor:pointer; list-style:none; }
.ernilac-mobile-menu > summary::-webkit-details-marker { display:none; }
.ernilac-mobile-menu > summary span { display:block; width:20px; height:2px; border-radius:2px; background:var(--ern-ink); }
.ernilac-mobile-menu > nav { position:absolute; left:0; right:0; top:100%; padding:18px 24px 24px; border-top:1px solid var(--ern-border); background:#fff; box-shadow:0 18px 32px rgba(24,42,68,.10); }
.ernilac-primary-menu--mobile { display:grid; }
.ernilac-primary-menu--mobile > li { display:block; }
.ernilac-primary-menu--mobile a { min-height:auto; padding:12px 0; white-space:normal; }
.ernilac-primary-menu--mobile > li > a::after { display:none; }
.ernilac-primary-menu--mobile .sub-menu { position:static; display:block; min-width:0; padding:0 0 0 16px; border:0; box-shadow:none; }
.ernilac-mobile-language { margin-top:14px; padding-top:14px; border-top:1px solid var(--ern-border); }

/* We render page content ourselves; reset Astra's container residue. */
.ernilac-front-page,
.ernilac-page-main { width:100%; margin:0; padding:0; }
.ernilac-front-page article,
.ernilac-front-page .entry-content { margin:0 !important; padding:0 !important; }
.ernilac-page-title-wrap { padding:72px 24px 24px; }
.ernilac-page-title-wrap h1 { margin:0; }
.ernilac-page-main .entry-content { width:min(calc(100% - 48px),var(--ern-wide)); margin:0 auto; padding:28px 0 84px; }
.ernilac-page-main .entry-content > .alignfull { width:100vw; max-width:none; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }

/* Gutenberg markup emitted by the reversible homepage migrator. */
.ernilac-front-page .entry-content > .wp-block-group.alignfull { width:100%; max-width:none; margin:0; }
.ernilac-home-hero > .wp-block-image.ernilac-home-hero__media {
  position:absolute;
  z-index:-3;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  margin:0;
}
.ernilac-home-hero > .wp-block-image.ernilac-home-hero__media img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 48%;
}
.ernilac-home-hero > .wp-block-group.ernilac-home-hero__inner { position:relative; z-index:1; }
.ernilac-home-hero__copy.wp-block-group { margin:0; }
.ernilac-home-hero .wp-block-buttons.ernilac-hero-actions { gap:14px; }
.ernilac-home-hero .wp-block-button.ernilac-button { margin:0; }
.ernilac-home-hero .wp-block-button.ernilac-button .wp-block-button__link { border:2px solid var(--ern-blue); border-radius:999px; background:var(--ern-blue); color:#fff; font-weight:700; padding:13px 22px; }
.ernilac-home-hero .wp-block-button.ernilac-button--ghost .wp-block-button__link { border-color:rgba(255,255,255,.75); background:rgba(255,255,255,.10); color:#fff; }
.ernilac-partners-panel.wp-block-columns {
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:30px;
}
.ernilac-partners-panel > .wp-block-column { display:flex; align-items:center; justify-content:center; min-width:0; }
.ernilac-partners-panel figure { margin:0; }
.ernilac-partners-panel img { max-height:105px; width:auto; max-width:100%; object-fit:contain; }
.ernilac-project-facts.wp-block-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; }
.ernilac-project-facts > .wp-block-column { margin:0; padding:21px 24px; background:#fff; }
.ernilac-project-facts .ernilac-fact-label { margin:0 0 5px; color:var(--ern-muted); font-size:.75rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.ernilac-project-facts .ernilac-fact-value { margin:0; color:var(--ern-ink); font-weight:700; line-height:1.35; }
.ernilac-home-news-query .wp-block-post-template { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin:0; padding:0; }
.ernilac-home-news-query .wp-block-post-template > li { display:flex; margin:0; }
.ernilac-home-news-card { display:flex; flex-direction:column; width:100%; min-width:0; overflow:hidden; border:1px solid var(--ern-border); border-radius:var(--ern-radius); background:#fff; box-shadow:0 12px 34px rgba(24,42,68,.055); }
.ernilac-home-news-card .wp-block-post-featured-image { margin:0; aspect-ratio:16/9; overflow:hidden; background:var(--ern-bg); }
.ernilac-home-news-card .wp-block-post-featured-image img { width:100%; height:100%; object-fit:cover; }
.ernilac-home-news-body { display:flex; flex:1; flex-direction:column; padding:27px; }
.ernilac-home-news-date { color:var(--ern-muted); font-size:.8rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.ernilac-home-news-card .wp-block-post-title { margin:10px 0 12px; font-size:1.38rem; }
.ernilac-home-news-card .wp-block-post-title a { color:var(--ern-ink); text-decoration:none; }
.ernilac-home-news-card .wp-block-post-excerpt { display:flex; flex:1; flex-direction:column; }
.ernilac-home-news-card .wp-block-post-excerpt__more-link { margin-top:auto; font-weight:700; }
.ernilac-cards.wp-block-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ernilac-cards > .wp-block-column.ernilac-card { display:flex; flex-direction:column; min-width:0; margin:0; }
.ernilac-cards .wp-block-buttons { margin-top:auto; }
.ernilac-cards .wp-block-button__link { background:transparent; color:var(--ern-blue); padding:0; font-weight:700; text-decoration:underline; }

.ernilac-site-footer { margin-top:0; background:#10243d; color:rgba(255,255,255,.76); }
.ernilac-footer-shell { display:flex; align-items:center; justify-content:space-between; gap:32px; width:min(calc(100% - 48px),1180px); min-height:116px; margin:0 auto; }
.ernilac-footer-brand img { width:130px; filter:brightness(0) invert(1); opacity:.92; }
.ernilac-footer-shell p { margin:0; color:inherit; font-size:.88rem; }

@media (max-width:1180px) {
  .ernilac-header-shell { grid-template-columns:170px minmax(0,1fr) auto; width:min(calc(100% - 36px),1180px); }
  .ernilac-brand-logo { width:150px; }
  .ernilac-primary-menu a { padding-inline:9px; font-size:.86rem; }
}
@media (max-width:980px) {
  .ernilac-header-shell { grid-template-columns:1fr auto; min-height:78px; }
  .ernilac-desktop-nav, .ernilac-header-language { display:none; }
  .ernilac-mobile-menu { display:block; }
  .ernilac-brand-logo { width:148px; max-height:56px; }
  .ernilac-home-news-query .wp-block-post-template,
  .ernilac-cards.wp-block-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .ernilac-header-shell { width:calc(100% - 32px); }
  .ernilac-home-news-query .wp-block-post-template,
  .ernilac-cards.wp-block-columns,
  .ernilac-project-facts.wp-block-columns { grid-template-columns:1fr; }
  .ernilac-footer-shell { flex-direction:column; align-items:flex-start; justify-content:center; padding:28px 0; }
}


/* ERNILAC production polish v3 ------------------------------------------- */
:root {
  --ern-shell: 1180px;
  --ern-gutter: 24px;
}

/* Header and language control: keep the exact Playground shell and remove
   glyph-dependent arrows that can render as a literal "v". */
.ernilac-header-shell {
  width: min(calc(100% - (2 * var(--ern-gutter))), var(--ern-shell));
  min-height: 88px;
  grid-template-columns: 176px minmax(0,1fr) auto;
}
.ernilac-brand-logo { width: 154px; max-height: 58px; }
.ernilac-primary-menu a { min-height: 88px; }
.ernilac-primary-menu > li > a::after { bottom: 16px; }
.ernilac-language-switcher summary { min-height: 46px; padding: 0 14px; border-radius: 999px; }
.ernilac-language-switcher summary::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: 3px;
  border-right: 2px solid var(--ern-blue);
  border-bottom: 2px solid var(--ern-blue);
  transform: translateY(-2px) rotate(45deg);
  transition: transform .18s ease;
}
.ernilac-language-switcher[open] summary::after { transform: translateY(2px) rotate(225deg); }

/* Homepage hero: same horizontal axis as the header, less vertical waste. */
.ernilac-home-hero { min-height: clamp(480px, 54vh, 610px); }
.ernilac-home-hero__inner {
  width: min(calc(100% - (2 * var(--ern-gutter))), var(--ern-shell));
  min-height: inherit;
  padding: 52px 0 48px;
}
.ernilac-home-hero__copy { max-width: 790px; }
.ernilac-home-hero h1 {
  max-width: 790px;
  margin-bottom: 20px;
  font-size: clamp(2.55rem, 4.45vw, 4.25rem);
  line-height: 1.06;
}
.ernilac-home-hero h1 .ernilac-title-accent { color: var(--ern-green); }
.ernilac-home-hero .ernilac-lead { max-width: 700px; font-size: clamp(1.02rem, 1.55vw, 1.18rem); }
.ernilac-home-hero .ernilac-hero-actions { margin-top: 24px; }

/* One rhythm for every green line + uppercase eyebrow. */
.ernilac-eyebrow {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  width: max-content;
  max-width: 100%;
  min-height: 18px;
  margin: 0 0 14px !important;
  padding: 0 !important;
  text-align: left !important;
}
.ernilac-eyebrow::before { flex: 0 0 34px; }
.ernilac-section-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: end;
  gap: 28px;
  margin-bottom: 34px;
}
.ernilac-section-head > .wp-block-group,
.ernilac-section-head > div { width: auto; max-width: 760px; margin: 0 !important; }
.ernilac-section-head .ernilac-eyebrow,
.ernilac-section-head h2 { margin-left: 0 !important; margin-right: 0 !important; text-align: left !important; }
.ernilac-home-news-section .ernilac-section-head { justify-items: stretch; }

/* Partners/facts: don't show empty grey columns when migration found fewer facts. */
.ernilac-project-facts.wp-block-columns { background: var(--ern-border); }
.ernilac-project-facts.wp-block-columns:has(> .wp-block-column:only-child) { grid-template-columns: 1fr; }
.ernilac-project-facts.wp-block-columns:has(> .wp-block-column:nth-child(2):last-child) { grid-template-columns: repeat(2,minmax(0,1fr)); }
.ernilac-project-facts > .wp-block-column { min-height: 96px; }

/* Page titles and generic Gutenberg content: compact, consistent, still fully editable. */
.ernilac-page-title-wrap {
  padding: 58px var(--ern-gutter) 28px;
  background: var(--ern-bg);
  border-bottom: 1px solid var(--ern-border);
}
.ernilac-page-title-wrap > .ernilac-container { width: min(100%, var(--ern-shell)); }
.ernilac-page-title-wrap h1 { max-width: 900px; font-size: clamp(2.15rem, 4.3vw, 3.65rem); }
.ernilac-page-main .entry-content {
  width: min(calc(100% - (2 * var(--ern-gutter))), var(--ern-shell));
  padding: 48px 0 78px;
}
.ernilac-page-main .entry-content h2 { margin-top: 1.8em; font-size: clamp(1.65rem, 3vw, 2.35rem); }
.ernilac-page-main .entry-content h3 { margin-top: 1.55em; }
.ernilac-page-main .entry-content .wp-block-image img,
.ernilac-page-main .entry-content .wp-block-gallery img { border-radius: 16px; }
.ernilac-page-main .entry-content iframe { display: block; width: 100%; max-width: 100%; border: 0; }
.ernilac-page-main .entry-content table { width: 100%; border-collapse: collapse; border: 1px solid var(--ern-border); border-radius: 14px; overflow: hidden; }
.ernilac-page-main .entry-content th,
.ernilac-page-main .entry-content td { padding: 14px 16px; border-bottom: 1px solid var(--ern-border); text-align: left; vertical-align: top; }

/* Project team: existing Gutenberg rows become the alternating cards from the demo.
   No names, bios or images are copied into the theme. */
.ernilac-context-team .ernilac-page-main .entry-content { max-width: var(--ern-shell); }
.ernilac-context-team .entry-content > .wp-block-columns {
  display: grid;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
  gap: 0;
  align-items: stretch;
  margin: 0 0 28px !important;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.055);
}
.ernilac-context-team .entry-content > .wp-block-columns:nth-of-type(even) { grid-template-columns: minmax(0,1.28fr) minmax(240px,.72fr); }
.ernilac-context-team .entry-content > .wp-block-columns:nth-of-type(even) > .wp-block-column:has(figure) { order: 2; }
.ernilac-context-team .entry-content > .wp-block-columns > .wp-block-column { min-width: 0; margin: 0; padding: 34px 38px; align-self: stretch; }
.ernilac-context-team .entry-content > .wp-block-columns > .wp-block-column:has(figure) { display: flex; align-items: stretch; justify-content: center; padding: 0; background: var(--ern-bg); }
.ernilac-context-team .entry-content > .wp-block-columns figure { width: 100%; height: 100%; min-height: 330px; margin: 0; }
.ernilac-context-team .entry-content > .wp-block-columns figure img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; border-radius: 0; }
.ernilac-context-team .entry-content > .wp-block-columns p:last-child { margin-bottom: 0; }

/* Project outputs: the existing WP list becomes a clean numbered card grid. */
.ernilac-context-outputs .entry-content > .wp-block-list {
  counter-reset: ernilac-output;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 22px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ernilac-context-outputs .entry-content > .wp-block-list > li {
  counter-increment: ernilac-output;
  position: relative;
  min-height: 180px;
  padding: 30px 30px 28px 76px;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.05);
}
.ernilac-context-outputs .entry-content > .wp-block-list > li::before {
  content: counter(ernilac-output, decimal-leading-zero);
  position: absolute;
  top: 28px;
  left: 28px;
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(126,217,87,.2);
  color: var(--ern-green-dark);
  font-size: .78rem;
  font-weight: 900;
}
.ernilac-context-outputs .entry-content > .wp-block-list > li strong { display: block; margin-bottom: 8px; color: var(--ern-ink); font-size: 1.08rem; }

/* Article detail: keep the demo hierarchy but stop spending half a screen on a title. */
.ernilac-article-hero { padding: 54px var(--ern-gutter) 40px; }
.ernilac-article-hero__inner { width: min(100%, var(--ern-shell)); max-width: var(--ern-shell); }
.ernilac-article-hero .ernilac-eyebrow { margin-bottom: 12px !important; }
.ernilac-article-hero h1 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(2.15rem, 4.1vw, 3.55rem);
  line-height: 1.04;
}
.ernilac-article-main { padding: 42px var(--ern-gutter) 72px; }
.ernilac-article-main > .ernilac-container { width: min(100%, var(--ern-shell)); }
.ernilac-article-image { width: min(100%, 980px); margin-bottom: 40px; border-radius: 20px; }
.ernilac-article-body { width: min(100%, 760px); }

/* Core and Photo Gallery pagination. */
.navigation.pagination .nav-links,
.wp-block-query-pagination,
[class*="bwg_nav_cont"] {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 34px auto 18px !important;
  padding: 0 !important;
}
.navigation.pagination .page-numbers,
.wp-block-query-pagination a,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] a,
[class*="bwg_nav_cont"] span,
[class*="bwg_nav_cont"] input,
[class*="bwg_nav_cont"] select {
  box-sizing: border-box;
  display: inline-flex !important;
  min-width: 42px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 8px 12px !important;
  border: 1px solid var(--ern-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--ern-ink) !important;
  font: inherit !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
.navigation.pagination .page-numbers.current,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] .current,
[class*="bwg_nav_cont"] [class*="current"] {
  border-color: var(--ern-blue) !important;
  background: var(--ern-blue) !important;
  color: #fff !important;
}
[class*="bwg_nav_cont"] input { width: 48px !important; text-align: center; }

/* Consistent footer/section boundaries. */
.ernilac-site-footer { border-top: 1px solid var(--ern-border); }

@media (max-width: 980px) {
  .ernilac-header-shell { min-height: 78px; }
  .ernilac-home-hero { min-height: 520px; }
  .ernilac-home-hero__inner { padding-top: 46px; padding-bottom: 46px; }
  .ernilac-section-head { grid-template-columns: 1fr; }
  .ernilac-section-head > .wp-block-buttons { justify-self: start; }
  .ernilac-context-team .entry-content > .wp-block-columns,
  .ernilac-context-team .entry-content > .wp-block-columns:nth-of-type(even) { grid-template-columns: 1fr; }
  .ernilac-context-team .entry-content > .wp-block-columns:nth-of-type(even) > .wp-block-column:has(figure) { order: 0; }
  .ernilac-context-team .entry-content > .wp-block-columns figure,
  .ernilac-context-team .entry-content > .wp-block-columns figure img { min-height: 300px; max-height: 440px; }
}
@media (max-width: 700px) {
  :root { --ern-gutter: 18px; }
  .ernilac-home-hero { min-height: 500px; }
  .ernilac-home-hero__inner { justify-content: center; padding: 42px 0; }
  .ernilac-home-hero h1 { font-size: clamp(2.2rem, 10vw, 3.25rem); }
  .ernilac-home-hero .ernilac-lead { font-size: 1rem; }
  .ernilac-context-outputs .entry-content > .wp-block-list { grid-template-columns: 1fr; }
  .ernilac-context-team .entry-content > .wp-block-columns > .wp-block-column { padding: 26px 22px; }
  .ernilac-article-hero { padding-top: 42px; padding-bottom: 30px; }
  .ernilac-article-main { padding-top: 30px; }
}

/* ERNILAC v4 --------------------------------------------------------------
   Final alignment pass against the Playground composition.
   Presentation only: no WordPress content or editor workflow is changed. */

/* Header and homepage hero share one exact horizontal shell. Gutenberg's
   constrained-layout margins must not re-center the hero copy inside it. */
.ernilac-home-hero__inner {
  box-sizing: border-box;
  width: min(calc(100% - (2 * var(--ern-gutter))), var(--ern-shell)) !important;
  max-width: var(--ern-shell) !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}
.ernilac-home-hero__inner > .ernilac-home-hero__copy,
.ernilac-home-hero__copy.wp-block-group {
  box-sizing: border-box;
  width: min(100%, 790px) !important;
  max-width: 790px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding: 0 !important;
}
.ernilac-home-hero__copy > .ernilac-eyebrow,
.ernilac-home-hero__copy > .ernilac-home-title,
.ernilac-home-hero__copy > .ernilac-lead,
.ernilac-home-hero__copy > .ernilac-hero-actions {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.ernilac-home-hero__copy > .ernilac-hero-actions {
  justify-content: flex-start !important;
}
.ernilac-home-hero {
  min-height: clamp(500px, 52vh, 590px);
}
.ernilac-home-hero__inner {
  padding-top: 46px !important;
  padding-bottom: 46px !important;
}
.ernilac-home-hero h1 {
  max-width: 780px;
  margin-bottom: 18px;
  font-size: clamp(2.45rem, 4.2vw, 4.05rem);
}
.ernilac-home-hero .ernilac-hero-actions {
  margin-top: 22px !important;
}

/* One predictable eyebrow rhythm everywhere. */
.ernilac-eyebrow,
.ernilac-section-head .ernilac-eyebrow,
.ernilac-article-hero .ernilac-eyebrow {
  gap: 10px !important;
  margin: 0 0 14px !important;
  line-height: 1.2 !important;
}
.ernilac-eyebrow::before {
  width: 34px !important;
  height: 3px !important;
  margin: 0 !important;
}

/* Homepage news: same title alignment and genuinely level CTAs. */
.ernilac-home-news-query .wp-block-post-template {
  align-items: stretch;
}
.ernilac-home-news-query .wp-block-post-template > li {
  align-self: stretch;
}
.ernilac-home-news-card,
.ernilac-home-news-body {
  height: 100%;
}
.ernilac-home-news-body {
  box-sizing: border-box;
}
.ernilac-home-news-card .wp-block-post-title {
  width: 100%;
  min-height: 3.2em;
  margin: 12px 0 14px !important;
  text-align: center !important;
  line-height: 1.18;
}
.ernilac-home-news-card .wp-block-post-title a {
  display: inline-block;
  text-align: center !important;
}
.ernilac-home-news-card .ernilac-home-news-date,
.ernilac-home-news-card .wp-block-post-date {
  width: 100%;
  text-align: center !important;
}
.ernilac-home-news-card .wp-block-post-excerpt {
  display: flex !important;
  flex: 1 1 auto;
  flex-direction: column;
  margin: 0 !important;
}
.ernilac-home-news-card .wp-block-post-excerpt__excerpt {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  margin: 0 !important;
}
.ernilac-home-news-card .wp-block-post-excerpt__more-text {
  margin: auto 0 0 !important;
  padding-top: 22px;
}
.ernilac-home-news-card .wp-block-post-excerpt__more-link {
  display: inline-flex;
  margin-top: auto !important;
  align-self: flex-start;
}

/* Article detail: compact headline block, image immediately follows it. */
.ernilac-article-hero {
  padding: 40px var(--ern-gutter) 30px !important;
}
.ernilac-article-hero h1 {
  max-width: 850px;
  font-size: clamp(2rem, 3.45vw, 3.05rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em;
}
.ernilac-article-hero .ernilac-lead {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: 1.05rem;
}
.ernilac-article-main {
  padding-top: 30px !important;
}
.ernilac-article-image {
  margin: 0 auto 32px !important;
}

/* Pagination: WordPress core + 10Web Photo Gallery. Hide plugin chrome and
   make every navigation control part of one compact row. */
.navigation.pagination,
.wp-block-query-pagination,
[class*="bwg_nav_cont"] {
  width: 100% !important;
  max-width: var(--ern-shell);
}
[class*="bwg_nav_cont"] > div,
[class*="bwg_nav_cont"] [class*="bwg_nav"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.navigation.pagination .page-numbers,
.wp-block-query-pagination a,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] a,
[class*="bwg_nav_cont"] button,
[class*="bwg_nav_cont"] span,
[class*="bwg_nav_cont"] input,
[class*="bwg_nav_cont"] select {
  min-width: 40px !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 11px !important;
  border: 1px solid var(--ern-border) !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: var(--ern-ink) !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  line-height: 38px !important;
  text-align: center !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}
[class*="bwg_nav_cont"] input {
  width: 48px !important;
  max-width: 48px !important;
}
.navigation.pagination .page-numbers:hover,
.wp-block-query-pagination a:hover,
[class*="bwg_nav_cont"] a:hover,
[class*="bwg_nav_cont"] button:hover {
  border-color: var(--ern-blue) !important;
  color: var(--ern-blue) !important;
}
.navigation.pagination .page-numbers.current,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] .current,
[class*="bwg_nav_cont"] [class*="current"] {
  border-color: var(--ern-blue) !important;
  background: var(--ern-blue) !important;
  color: #fff !important;
}

/* Team / outputs: keep content in Gutenberg but make the page feel like the
   same component system as the homepage. */
.ernilac-context-team .entry-content,
.ernilac-context-outputs .entry-content {
  padding-top: 42px;
}
.ernilac-context-team .entry-content > .wp-block-columns,
.ernilac-context-outputs .entry-content > .wp-block-list > li {
  transition: transform .18s ease, box-shadow .18s ease;
}
.ernilac-context-team .entry-content > .wp-block-columns:hover,
.ernilac-context-outputs .entry-content > .wp-block-list > li:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(24,42,68,.09);
}

@media (max-width: 700px) {
  .ernilac-home-hero { min-height: 480px; }
  .ernilac-home-hero__inner { padding-top: 38px !important; padding-bottom: 38px !important; }
  .ernilac-home-hero__copy { width: 100% !important; }
  .ernilac-home-news-card .wp-block-post-title { min-height: 0; }
  .ernilac-article-hero { padding-top: 34px !important; padding-bottom: 24px !important; }
}

/* ERNILAC v5 --------------------------------------------------------------
   Full-site polish while preserving WordPress editability. */

/* The final homepage no longer needs the generic "what the project offers"
   block. It remains recoverable/editable in Gutenberg but is not rendered. */
.home .ernilac-home-links-section { display: none !important; }

/* Hero: one CTA only, compact and aligned to the same shell as navigation. */
.home .ernilac-home-hero .ernilac-hero-actions { gap: 0 !important; }
.home .ernilac-home-hero .ernilac-hero-actions .wp-block-button:first-child .wp-block-button__link {
  min-width: 196px;
  justify-content: center;
}

/* Project outputs: every one of the six cards has the same visual hierarchy. */
.ernilac-context-outputs .ernilac-output-card-title {
  display: block;
  margin: 0 0 10px;
  color: var(--ern-ink);
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.22;
  letter-spacing: -.02em;
}
.ernilac-context-outputs .ernilac-output-card-copy {
  display: block;
  color: var(--ern-text);
  line-height: 1.55;
}

/* Shared full-width profile-card language used by Project Team and Stories. */
.ernilac-profile-list,
.ernilac-story-list {
  display: grid;
  gap: 28px;
  width: 100%;
}
.ernilac-profile-card {
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 14px 38px rgba(24,42,68,.06);
}
.ernilac-profile-card__media,
.success-story-photo-wrap {
  min-width: 0;
  background: var(--ern-bg);
}
.ernilac-profile-card__media figure,
.success-story-photo-wrap {
  width: 100%;
  height: 100%;
  min-height: 320px;
  margin: 0 !important;
}
.ernilac-profile-card__media img,
.success-story-photo-wrap img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 320px;
  margin: 0 !important;
  object-fit: cover;
  border-radius: 0 !important;
}
.ernilac-profile-card__body,
.success-story-main {
  min-width: 0;
  padding: 34px 38px;
}
.ernilac-profile-card__name {
  margin: 0 0 22px;
  font-size: clamp(1.6rem, 2.7vw, 2.15rem);
  line-height: 1.08;
}
.ernilac-profile-card__section { margin-top: 20px; }
.ernilac-profile-card__role {
  padding: 20px 22px;
  border-left: 4px solid var(--ern-green);
  border-radius: 0 14px 14px 0;
  background: var(--ern-bg);
}
.ernilac-profile-label {
  margin: 0 0 8px;
  color: var(--ern-blue);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.ernilac-profile-copy p,
.ernilac-profile-card__section p,
.ernilac-profile-more__content p { margin-bottom: 1em; }
.ernilac-profile-copy p:last-child,
.ernilac-profile-card__section p:last-child,
.ernilac-profile-more__content p:last-child { margin-bottom: 0; }
.ernilac-profile-more,
.ernilac-story-interview {
  margin-top: 22px;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: 14px;
  background: #fff;
}
.ernilac-profile-more > summary,
.ernilac-story-interview > summary {
  cursor: pointer;
  list-style: none;
  padding: 16px 48px 16px 18px;
  color: var(--ern-blue);
  font-weight: 800;
  position: relative;
}
.ernilac-profile-more > summary::-webkit-details-marker,
.ernilac-story-interview > summary::-webkit-details-marker { display: none; }
.ernilac-profile-more > summary::after,
.ernilac-story-interview > summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  font-size: 1.35rem;
  font-weight: 500;
}
.ernilac-profile-more[open] > summary::after,
.ernilac-story-interview[open] > summary::after { content: "−"; }
.ernilac-profile-more__content,
.ernilac-story-interview__content {
  padding: 4px 18px 20px;
  border-top: 1px solid var(--ern-border);
}

/* Stories: same person-card vocabulary, with an accented opening sentence and
   a single collapsible interview. */
.ernilac-story-profile { margin-bottom: 32px; }
.ernilac-profile-card--story { margin-bottom: 0; }
.ernilac-profile-card--story .success-story-main { padding: 34px 38px; }
.ernilac-profile-card--story .success-story-intro {
  margin: 0 0 20px !important;
  color: var(--ern-text);
  font-size: 1.04rem;
  line-height: 1.62;
}
.ernilac-story-lead-sentence {
  color: var(--ern-ink);
  font-size: 1.12em;
  font-weight: 800;
}
.ernilac-profile-card--story .success-story-info {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 24px;
  margin-top: 18px;
}
.ernilac-profile-card--story .success-story-info p {
  margin: 0 !important;
  padding: 12px 0;
  border-top: 1px solid var(--ern-border);
}
.ernilac-profile-card--story .success-story-info strong {
  color: var(--ern-blue) !important;
  font-size: .75rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.ernilac-story-interview { margin-top: 14px; }
.ernilac-story-interview__content { padding: 18px; background: var(--ern-bg); }
.ernilac-story-qa {
  display: grid;
  grid-template-columns: minmax(180px, .78fr) minmax(0, 1.65fr);
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid var(--ern-border);
}
.ernilac-story-qa:last-child { border-bottom: 0; }
.ernilac-story-question {
  color: var(--ern-blue-dark);
  font-weight: 800;
  line-height: 1.42;
}
.ernilac-story-answer {
  color: var(--ern-text);
  line-height: 1.62;
}

/* Project page: project metadata becomes a clean information panel; floated
   editorial images get proper breathing room; deliverables become cards. */
.ernilac-context-project .entry-content > .wp-block-table {
  margin: 0 0 52px !important;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.045);
}
.ernilac-context-project .wp-block-table table,
.ernilac-context-project .wp-block-table tbody { display: block; width: 100%; border: 0 !important; }
.ernilac-context-project .wp-block-table tr {
  display: grid;
  grid-template-columns: minmax(210px, .38fr) minmax(0, 1fr);
  border-bottom: 1px solid var(--ern-border);
}
.ernilac-context-project .wp-block-table tr:last-child { border-bottom: 0; }
.ernilac-context-project .wp-block-table td {
  display: block;
  padding: 15px 18px !important;
  border: 0 !important;
  background: #fff;
}
.ernilac-context-project .wp-block-table td:first-child {
  color: var(--ern-ink);
  font-weight: 800;
  background: var(--ern-bg);
}
.ernilac-context-project .wp-block-image.alignleft {
  float: left;
  width: min(42%, 460px) !important;
  margin: 8px 34px 24px 0 !important;
}
.ernilac-context-project .wp-block-image.alignright {
  float: right;
  width: min(42%, 460px) !important;
  margin: 8px 0 24px 34px !important;
}
.ernilac-context-project .entry-content::after { content: ""; display: table; clear: both; }
.ernilac-context-project .wp-block-list {
  clear: both;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 34px 0 46px !important;
  padding: 0 !important;
  list-style: none;
}
.ernilac-context-project .wp-block-list > li {
  position: relative;
  margin: 0 !important;
  padding: 18px 20px 18px 46px;
  border: 1px solid var(--ern-border);
  border-radius: 14px;
  background: #fff;
  list-style: none;
}
.ernilac-context-project .wp-block-list > li::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 25px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--ern-green);
  box-shadow: 0 0 0 5px rgba(126,217,87,.16);
}
.ernilac-context-project .wp-block-list strong { color: var(--ern-ink); font-weight: 800; }

/* Interactive Career Compass: intro -> heading -> video -> three readable
   steps -> Power BI. The source Gutenberg paragraphs remain untouched. */
.ernilac-context-tool .entry-content > p:first-child {
  max-width: 900px;
  margin-bottom: 34px;
  font-size: 1.08rem;
}
.ernilac-context-tool .entry-content > h3 {
  margin: 0 0 24px;
  font-size: clamp(1.65rem, 3vw, 2.3rem);
}
.ernilac-compass-video-wrap { margin: 0 0 34px; }
.ernilac-compass-video { margin: 0 !important; }
.ernilac-compass-video video {
  display: block;
  width: 100%;
  max-height: 650px;
  border-radius: 20px;
  background: #111;
  box-shadow: var(--ern-shadow);
}
.ernilac-compass-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 46px;
}
.ernilac-compass-step {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 14px;
  align-items: start;
  padding: 20px;
  border: 1px solid var(--ern-border);
  border-radius: 16px;
  background: var(--ern-bg);
}
.ernilac-compass-step__number {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(126,217,87,.22);
  color: var(--ern-green-dark);
  font-size: .78rem;
  font-weight: 900;
}
.ernilac-compass-step__copy { color: var(--ern-text); line-height: 1.55; }
.ernilac-compass-step__copy strong { color: var(--ern-ink); }
.ernilac-powerbi-embed {
  margin-top: 0 !important;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(24,42,68,.06);
}

@media (max-width: 900px) {
  .ernilac-profile-card { grid-template-columns: 1fr; }
  .ernilac-profile-card__media figure,
  .ernilac-profile-card__media img,
  .success-story-photo-wrap,
  .success-story-photo-wrap img { min-height: 280px; max-height: 430px; }
  .ernilac-story-qa { grid-template-columns: 1fr; gap: 8px; }
  .ernilac-context-project .wp-block-list,
  .ernilac-compass-steps { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .ernilac-profile-card__body,
  .success-story-main,
  .ernilac-profile-card--story .success-story-main { padding: 26px 22px; }
  .ernilac-profile-card--story .success-story-info { grid-template-columns: 1fr; }
  .ernilac-context-project .wp-block-table tr { grid-template-columns: 1fr; }
  .ernilac-context-project .wp-block-image.alignleft,
  .ernilac-context-project .wp-block-image.alignright {
    float: none;
    width: 100% !important;
    margin: 18px 0 26px !important;
  }
}


/* ERNILAC v6 targeted refinements ---------------------------------------- */

/* Pagination under news and galleries: keep it visible, centered and compact. */
.home .wp-block-query-pagination,
.home .navigation.pagination,
.ernilac-page-main .wp-block-query-pagination,
.ernilac-article .navigation.pagination,
.ernilac-article .wp-block-query-pagination,
[class*="bwg_nav_cont"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 26px auto 0 !important;
  text-align: center !important;
}
.home .wp-block-query-pagination > *,
.ernilac-page-main .wp-block-query-pagination > *,
.ernilac-article .navigation.pagination > *,
.ernilac-article .wp-block-query-pagination > *,
[class*="bwg_nav_cont"] > * {
  margin: 0 !important;
}
.navigation.pagination .nav-links,
.wp-block-query-pagination-numbers,
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
[class*="bwg_nav_cont"] .bwg_nav_button,
[class*="bwg_nav_cont"] .bwg_nav_button_wrap,
[class*="bwg_nav_cont"] .bwg_nav_cont,
[class*="bwg_nav_cont"] .bwg_nav_container {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Project page cleanup: remove white seams and make deliverable cards a neat 2-column grid. */
.ernilac-context-project .entry-content > .wp-block-table,
.ernilac-context-project .entry-content > .wp-block-table table,
.ernilac-context-project .entry-content > .wp-block-table tbody {
  margin-bottom: 0 !important;
  border-spacing: 0 !important;
}
.ernilac-context-project .entry-content > .wp-block-table { padding: 0 !important; }
.ernilac-context-project .wp-block-list {
  width: 100%;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.ernilac-context-project .wp-block-list > li {
  min-height: 100%;
  padding: 20px 22px 20px 48px;
}
.ernilac-context-project .wp-block-list > li:empty { display: none !important; }

/* Interactive tool: welcome copy flush-left, app subheading above steps, no accidental bold in step cards. */
.ernilac-context-tool .entry-content > p:first-child {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}
.ernilac-compass-app-heading {
  margin: 0 0 18px;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
}
.ernilac-compass-step__copy,
.ernilac-compass-step__copy strong {
  font-weight: 400 !important;
}
.ernilac-powerbi-embed { margin-top: 10px !important; }

/* Project team + success stories: smaller photos, slightly leaner typography, fixed media height. */
.ernilac-profile-card {
  grid-template-columns: minmax(130px, 185px) minmax(0, 1fr);
}
.ernilac-profile-card__media figure,
.success-story-photo-wrap {
  min-height: 220px;
  height: 100%;
}
.ernilac-profile-card__media img,
.success-story-photo-wrap img {
  min-height: 220px;
  max-height: 220px;
  object-position: center top;
}
.ernilac-profile-card__body,
.success-story-main,
.ernilac-profile-card--story .success-story-main {
  padding: 28px 30px;
  font-size: .98rem;
}
.ernilac-profile-card__name {
  margin-bottom: 18px;
  font-size: clamp(1.45rem, 2.3vw, 1.95rem);
}
.ernilac-profile-card__section { margin-top: 16px; }
.ernilac-profile-card__section--accent,
.ernilac-profile-card--story .success-story-intro {
  padding: 18px 20px;
  border-left: 4px solid var(--ern-green);
  border-radius: 0 14px 14px 0;
  background: var(--ern-bg);
}
.ernilac-profile-card__section--accent .ernilac-profile-copy p:last-child,
.ernilac-profile-card--story .success-story-intro:last-child { margin-bottom: 0; }
.ernilac-profile-card__section--accent + .ernilac-profile-card__section {
  margin-top: 18px;
}
.ernilac-profile-label {
  font-size: .72rem;
  letter-spacing: .08em;
}
.ernilac-profile-card__section p,
.ernilac-profile-copy p,
.ernilac-profile-card--story .success-story-intro,
.ernilac-profile-card--story .success-story-info p,
.ernilac-story-answer {
  font-size: .98rem;
  line-height: 1.58;
}
.ernilac-profile-card--story .success-story-intro {
  margin-bottom: 18px !important;
}
.ernilac-profile-card--story .success-story-info {
  gap: 8px 22px;
  margin-top: 14px;
}
.ernilac-story-interview {
  margin-top: 12px;
  background: var(--ern-bg);
}
.ernilac-story-interview > summary {
  padding: 16px 48px 16px 18px;
  border-left: 4px solid var(--ern-green);
  background: var(--ern-bg);
}
.ernilac-story-interview__content {
  padding: 0 18px 18px;
  background: #fff;
}

/* News/article detail: let the body and galleries use the full content container width. */
.ernilac-article-body {
  width: 100%;
  max-width: none;
}
.ernilac-article-body > p,
.ernilac-article-body > ul,
.ernilac-article-body > ol,
.ernilac-article-body > h2,
.ernilac-article-body > h3,
.ernilac-article-body > h4,
.ernilac-article-body > .wp-block-gallery,
.ernilac-article-body > .gallery,
.ernilac-article-body > figure,
.ernilac-article-body > .wp-block-image {
  max-width: 100%;
}
.ernilac-article-body > .wp-block-gallery,
.ernilac-article-body > .gallery,
.ernilac-article-body > .blocks-gallery-grid,
.ernilac-article-body .wp-block-image img {
  width: 100%;
}

@media (max-width: 900px) {
  .ernilac-context-project .wp-block-list { grid-template-columns: 1fr; }
  .ernilac-profile-card { grid-template-columns: 1fr; }
  .ernilac-profile-card__media figure,
  .ernilac-profile-card__media img,
  .success-story-photo-wrap,
  .success-story-photo-wrap img {
    min-height: 240px;
    max-height: 320px;
  }
}


/* ERNILAC v7 final targeted corrections --------------------------------- */

/* Project metadata: render the editable table as a clean edge-to-edge panel. */
.ernilac-context-project .ernilac-project-meta {
  width: 100%;
  margin: 0 0 52px;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: var(--ern-radius);
  background: #fff;
  box-shadow: 0 12px 34px rgba(24,42,68,.045);
}
.ernilac-context-project .ernilac-project-meta__row {
  display: grid;
  grid-template-columns: minmax(250px, .38fr) minmax(0, 1fr);
  border-bottom: 1px solid var(--ern-border);
}
.ernilac-context-project .ernilac-project-meta__row:last-child { border-bottom: 0; }
.ernilac-context-project .ernilac-project-meta__label,
.ernilac-context-project .ernilac-project-meta__value {
  padding: 15px 18px;
  line-height: 1.5;
}
.ernilac-context-project .ernilac-project-meta__label {
  color: var(--ern-ink);
  font-weight: 800;
  background: var(--ern-bg);
}
.ernilac-context-project .ernilac-project-meta__value { background: #fff; }
.ernilac-context-project .entry-content > .wp-block-table { display: none !important; }
.ernilac-context-project .entry-content > p:empty { display: none !important; }

/* Project deliverables: exactly six equal cards, all with a bold heading. */
.ernilac-context-project .wp-block-list {
  width: 100% !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 34px 0 46px !important;
}
.ernilac-context-project .wp-block-list:empty,
.ernilac-context-project .wp-block-list > li:empty { display: none !important; }
.ernilac-context-project .wp-block-list > li {
  min-height: 150px;
  padding: 20px 22px 20px 48px !important;
}
.ernilac-context-project .ernilac-project-card-title {
  display: block;
  margin: 0 0 8px;
  color: var(--ern-ink);
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.25;
}
.ernilac-context-project .ernilac-project-card-copy {
  display: block;
  color: var(--ern-text);
  line-height: 1.55;
}

/* Career Compass welcome copy: no narrow auto-centred reading column. */
body.ernilac-context-tool .ernilac-page-main .entry-content > p:first-child,
body.ernilac-context-tool .ernilac-page-main .entry-content > p:first-of-type {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 34px !important;
  padding: 0 !important;
  text-align: left !important;
}
.ernilac-context-tool .ernilac-compass-app-heading {
  margin: 0 0 18px !important;
  font-size: clamp(1.65rem, 3vw, 2.3rem) !important;
}
.ernilac-context-tool .ernilac-compass-step__copy,
.ernilac-context-tool .ernilac-compass-step__copy strong {
  font-weight: 400 !important;
}

/* Team + stories: small editorial portrait, full-width card, fixed media size. */
body.ernilac-context-team .ernilac-profile-card,
body.ernilac-context-stories .ernilac-profile-card {
  grid-template-columns: 180px minmax(0, 1fr) !important;
  align-items: start !important;
}
body.ernilac-context-team .ernilac-profile-card__media,
body.ernilac-context-stories .success-story-photo-wrap {
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 26px 20px !important;
  align-self: start !important;
  background: #fff !important;
}
body.ernilac-context-team .ernilac-profile-card__media figure,
body.ernilac-context-stories .success-story-photo-wrap {
  width: 130px !important;
  height: 165px !important;
  min-height: 0 !important;
  max-height: 165px !important;
  margin: 0 auto !important;
  overflow: hidden;
  border-radius: 14px;
}
body.ernilac-context-team .ernilac-profile-card__media img,
body.ernilac-context-stories .success-story-photo-wrap img {
  display: block !important;
  width: 130px !important;
  height: 165px !important;
  min-height: 0 !important;
  max-height: 165px !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 14px !important;
}
body.ernilac-context-team .ernilac-profile-card__body,
body.ernilac-context-stories .success-story-main {
  padding: 26px 30px 28px !important;
  font-size: .96rem !important;
}
body.ernilac-context-team .ernilac-profile-card__name,
body.ernilac-context-stories .ernilac-profile-card__name {
  margin: 0 0 16px !important;
  font-size: clamp(1.4rem, 2.2vw, 1.9rem) !important;
}
body.ernilac-context-team .ernilac-profile-card__section--accent,
body.ernilac-context-stories .success-story-intro {
  margin: 0 0 16px !important;
  padding: 16px 18px !important;
  border-left: 4px solid var(--ern-green) !important;
  border-radius: 0 12px 12px 0 !important;
  background: var(--ern-bg) !important;
}
body.ernilac-context-team .ernilac-profile-card__section:not(.ernilac-profile-card__section--accent) {
  margin-top: 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
body.ernilac-context-team .ernilac-profile-card__section p,
body.ernilac-context-stories .success-story-intro,
body.ernilac-context-stories .success-story-info p {
  font-size: .96rem !important;
  line-height: 1.55 !important;
}

/* Stories: same compact profile language, highlighted intro and calm interview shell. */
body.ernilac-context-stories .ernilac-story-profile { margin-bottom: 24px !important; }
body.ernilac-context-stories .ernilac-profile-card--story .success-story-info {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6px 20px !important;
  margin-top: 12px !important;
}
body.ernilac-context-stories .ernilac-profile-card--story .success-story-info p {
  padding: 9px 0 !important;
}
body.ernilac-context-stories .ernilac-story-interview {
  margin-top: 12px !important;
  border: 1px solid var(--ern-border) !important;
  background: var(--ern-bg) !important;
}
body.ernilac-context-stories .ernilac-story-interview > summary {
  padding: 15px 48px 15px 18px !important;
  border-left: 4px solid var(--ern-green) !important;
  background: var(--ern-bg) !important;
}
body.ernilac-context-stories .ernilac-story-interview__content {
  padding: 6px 18px 18px !important;
  background: #fff !important;
}
body.ernilac-context-stories .ernilac-story-qa {
  padding: 18px 0 !important;
  gap: 18px !important;
}

/* Article body and galleries use exactly the same width as the featured image. */
.single-post .ernilac-article-image,
.single-post .ernilac-article-body {
  width: min(100%, 1080px) !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.single-post .ernilac-article-body > * {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.single-post .ernilac-article-body .wp-block-gallery,
.single-post .ernilac-article-body .gallery,
.single-post .ernilac-article-body .blocks-gallery-grid,
.single-post .ernilac-article-body > .wp-block-image,
.single-post .ernilac-article-body > .wp-block-image img {
  width: 100% !important;
  max-width: none !important;
}

/* Pagination: simple one-row controls in the ERNILAC visual system. */
.navigation.pagination,
.wp-block-query-pagination,
[class*="bwg_nav_cont"] {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 28px auto 0 !important;
}
.navigation.pagination .nav-links,
.wp-block-query-pagination-numbers,
[class*="bwg_nav_cont"] > div,
[class*="bwg_nav_cont"] [class*="bwg_nav"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.navigation.pagination .page-numbers,
.wp-block-query-pagination a,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] a,
[class*="bwg_nav_cont"] button,
[class*="bwg_nav_cont"] span,
[class*="bwg_nav_cont"] input,
[class*="bwg_nav_cont"] select {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid var(--ern-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--ern-ink) !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}
.navigation.pagination .page-numbers.current,
.wp-block-query-pagination .current,
[class*="bwg_nav_cont"] .current,
[class*="bwg_nav_cont"] [class*="current"] {
  border-color: var(--ern-blue) !important;
  background: var(--ern-blue) !important;
  color: #fff !important;
}

@media (max-width: 900px) {
  .ernilac-context-project .ernilac-project-meta__row { grid-template-columns: 1fr; }
  .ernilac-context-project .wp-block-list { grid-template-columns: 1fr !important; }
  body.ernilac-context-team .ernilac-profile-card,
  body.ernilac-context-stories .ernilac-profile-card { grid-template-columns: 1fr !important; }
  body.ernilac-context-team .ernilac-profile-card__media,
  body.ernilac-context-stories .success-story-photo-wrap {
    padding: 22px 22px 0 !important;
  }
}


/* ERNILAC v8: editorial-source menu + truly centered compact profile media. */
body.ernilac-context-team .ernilac-profile-card__media,
body.ernilac-context-stories .success-story-photo-wrap {
  box-sizing: border-box !important;
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 26px 25px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  align-self: start !important;
  background: #fff !important;
}
body.ernilac-context-team .ernilac-profile-card__media figure {
  flex: 0 0 130px !important;
  width: 130px !important;
  height: 165px !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
}
body.ernilac-context-team .ernilac-profile-card__media img,
body.ernilac-context-stories .success-story-photo-wrap img {
  flex: 0 0 130px !important;
  display: block !important;
  width: 130px !important;
  height: 165px !important;
  min-width: 130px !important;
  min-height: 165px !important;
  max-width: 130px !important;
  max-height: 165px !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 14px !important;
}

@media (max-width: 900px) {
  body.ernilac-context-team .ernilac-profile-card__media,
  body.ernilac-context-stories .success-story-photo-wrap {
    width: 100% !important;
    max-width: none !important;
    padding: 22px !important;
    justify-content: flex-start !important;
  }
}


/* ERNILAC v9 --------------------------------------------------------------
   Language-safe menus, compact translated hero lead, deterministic story
   portraits, and real homepage-news pagination. */

/* EN/DE homepages inherited a long project summary from the original one-off
   migration. Keep it editorially present, but present it like the concise
   Playground lead instead of a large extra text block. */
.home .ernilac-home-hero .ernilac-lead {
  width: min(100%, 720px) !important;
  max-width: 720px !important;
  margin: 0 0 22px !important;
  font-size: clamp(.98rem, 1.35vw, 1.08rem) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden !important;
}

/* Stories only. Project-team cards are intentionally untouched in v9. */
body.ernilac-context-stories .ernilac-profile-card--story {
  grid-template-columns: 180px minmax(0, 1fr) !important;
  align-items: start !important;
}
body.ernilac-context-stories .ernilac-story-profile .success-story-photo-wrap {
  box-sizing: border-box !important;
  grid-column: 1 !important;
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  height: 217px !important;
  min-height: 217px !important;
  max-height: 217px !important;
  margin: 0 !important;
  padding: 26px 25px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  align-self: start !important;
  overflow: visible !important;
  background: #fff !important;
  border-radius: 0 !important;
}
body.ernilac-context-stories .ernilac-story-profile .success-story-photo-wrap img {
  box-sizing: border-box !important;
  flex: 0 0 130px !important;
  width: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;
  height: 165px !important;
  min-height: 165px !important;
  max-height: 165px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 14px !important;
}

.ernilac-home-news-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin: 30px auto 0;
}
.ernilac-home-news-pagination .ernilac-news-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  border: 1px solid var(--ern-border);
  border-radius: 11px;
  background: #fff;
  color: var(--ern-blue);
  font-size: .88rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  box-shadow: none;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
.ernilac-home-news-pagination a.ernilac-news-page:hover,
.ernilac-home-news-pagination a.ernilac-news-page:focus-visible {
  border-color: var(--ern-blue);
  color: var(--ern-blue-dark);
  transform: translateY(-1px);
}
.ernilac-home-news-pagination .ernilac-news-page.is-current {
  border-color: var(--ern-blue);
  background: var(--ern-blue);
  color: #fff;
}
.ernilac-home-news-pagination .ernilac-news-page--ellipsis {
  min-width: 28px;
  padding: 0 4px;
  border-color: transparent;
  background: transparent;
  color: var(--ern-muted);
}
.ernilac-home-news-pagination .ernilac-news-page--arrow {
  font-size: 1.15rem;
}

@media (max-width: 900px) {
  body.ernilac-context-stories .ernilac-profile-card--story {
    grid-template-columns: 1fr !important;
  }
  body.ernilac-context-stories .ernilac-story-profile .success-story-photo-wrap {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 22px !important;
    justify-content: center !important;
  }
}


/* ERNILAC v10 -------------------------------------------------------------
   Deterministic language menus and story media literally matching Team. */

/* Translated homepage lead must stay compact even when Polylang does not mark
   the translated page with WordPress' generic .home body class. */
.ernilac-home-hero .ernilac-lead {
  width: min(100%, 720px) !important;
  max-width: 720px !important;
  margin: 0 0 22px !important;
  font-size: clamp(.98rem, 1.35vw, 1.08rem) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
}

/* Stories: exact same 180px media rail + 130x165 portrait geometry as Team. */
body.ernilac-context-stories .ernilac-profile-card--story {
  grid-template-columns: 180px minmax(0, 1fr) !important;
  align-items: start !important;
}
body.ernilac-context-stories .ernilac-profile-card--story > .success-story-photo-wrap.ernilac-profile-card__media {
  box-sizing: border-box !important;
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 26px 25px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  align-self: start !important;
  background: #fff !important;
  overflow: visible !important;
}
body.ernilac-context-stories .ernilac-profile-card--story > .success-story-photo-wrap.ernilac-profile-card__media > figure {
  box-sizing: border-box !important;
  flex: 0 0 130px !important;
  width: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;
  height: 165px !important;
  min-height: 165px !important;
  max-height: 165px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
}
body.ernilac-context-stories .ernilac-profile-card--story > .success-story-photo-wrap.ernilac-profile-card__media > figure > img {
  display: block !important;
  width: 130px !important;
  min-width: 130px !important;
  max-width: 130px !important;
  height: 165px !important;
  min-height: 165px !important;
  max-height: 165px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 14px !important;
}

@media (max-width: 900px) {
  body.ernilac-context-stories .ernilac-profile-card--story {
    grid-template-columns: 1fr !important;
  }
  body.ernilac-context-stories .ernilac-profile-card--story > .success-story-photo-wrap.ernilac-profile-card__media {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 22px !important;
    justify-content: flex-start !important;
  }
}


/* ERNILAC v11 -------------------------------------------------------------
   Native Query Loop pagination now keys off the editor-authored block class,
   and the mobile navigation is intentionally a compact conventional menu. */
@media (max-width: 980px) {
  .ernilac-mobile-menu {
    position: static !important;
  }
  .ernilac-mobile-menu > nav {
    box-sizing: border-box !important;
    left: 0 !important;
    right: 0 !important;
    top: 100% !important;
    max-height: calc(100vh - 78px) !important;
    overflow-y: auto !important;
    padding: 10px max(18px, calc((100vw - min(100vw - 36px, 1180px)) / 2)) 16px !important;
    background: #fff !important;
    border-top: 1px solid var(--ern-border) !important;
    box-shadow: 0 18px 32px rgba(24,42,68,.12) !important;
  }
  .ernilac-primary-menu--mobile {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .ernilac-primary-menu--mobile > li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--ern-border) !important;
  }
  .ernilac-primary-menu--mobile > li:last-child {
    border-bottom: 0 !important;
  }
  .ernilac-primary-menu--mobile a {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 13px 4px !important;
    font-size: 1rem !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: normal !important;
  }
  .ernilac-primary-menu--mobile > .current-menu-item > a,
  .ernilac-primary-menu--mobile > .current-menu-ancestor > a {
    color: var(--ern-blue) !important;
  }
  .ernilac-primary-menu--mobile .sub-menu {
    position: static !important;
    display: block !important;
    min-width: 0 !important;
    margin: -3px 0 8px !important;
    padding: 0 0 0 18px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .ernilac-primary-menu--mobile .sub-menu li {
    margin: 0 !important;
    padding: 0 !important;
  }
  .ernilac-primary-menu--mobile .sub-menu a {
    padding: 8px 4px !important;
    color: var(--ern-muted) !important;
    font-size: .92rem !important;
    font-weight: 650 !important;
  }
  .ernilac-mobile-language {
    margin-top: 10px !important;
    padding-top: 10px !important;
  }
  .ernilac-mobile-language .ernilac-language-switcher summary {
    width: fit-content !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid var(--ern-border) !important;
    background: var(--ern-bg) !important;
  }
}

@media (max-width: 540px) {
  .ernilac-mobile-menu > nav {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}


/* ERNILAC v12 -------------------------------------------------------------
   Compact Polylang control beside the mobile burger, canonical Query Loop
   pagination, and restrained Photo Gallery pagination styling. */

/* The language UI is derived from Polylang; only the visual labels are compact. */
.ernilac-language-switcher summary {
  min-width: 66px;
  justify-content: center;
  text-transform: uppercase;
}
.ernilac-language-switcher__menu {
  min-width: 82px;
}
.ernilac-language-switcher__menu a {
  text-align: center;
  text-transform: uppercase;
}

/* 10Web Photo Gallery: keep its original working controls, but stop treating
   the current-page input and the "z 2 / of 2" text as active blue buttons. */
[class*="bwg_nav_cont"] {
  gap: 6px !important;
  margin: 24px auto 30px !important;
}
[class*="bwg_nav_cont"] a,
[class*="bwg_nav_cont"] button {
  display: inline-flex !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 1px solid var(--ern-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--ern-blue-dark) !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}
[class*="bwg_nav_cont"] a:hover,
[class*="bwg_nav_cont"] button:hover {
  border-color: var(--ern-blue) !important;
  background: var(--ern-bg) !important;
  color: var(--ern-blue) !important;
}
[class*="bwg_nav_cont"] span,
[class*="bwg_nav_cont"] span.current,
[class*="bwg_nav_cont"] [class*="current"]:not(input) {
  display: inline-flex !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 3px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ern-muted) !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}
[class*="bwg_nav_cont"] input,
[class*="bwg_nav_cont"] input[class*="current"] {
  box-sizing: border-box !important;
  display: inline-flex !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 4px !important;
  border: 1px solid var(--ern-blue) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--ern-blue-dark) !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  text-align: center !important;
  box-shadow: none !important;
}
[class*="bwg_nav_cont"] select {
  width: auto !important;
  min-width: 54px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 8px !important;
  border: 1px solid var(--ern-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--ern-ink) !important;
}

@media (max-width: 980px) {
  .ernilac-header-shell {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    column-gap: 8px !important;
    align-items: center !important;
  }
  .ernilac-desktop-nav {
    display: none !important;
  }
  .ernilac-header-language {
    display: flex !important;
    grid-column: 2 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    border-left: 0 !important;
  }
  .ernilac-mobile-menu {
    display: block !important;
    grid-column: 3 !important;
  }
  .ernilac-header-language .ernilac-language-switcher summary {
    min-width: 54px !important;
    min-height: 44px !important;
    padding: 0 10px !important;
    border: 1px solid var(--ern-border) !important;
    border-radius: 11px !important;
    background: #fff !important;
  }
  .ernilac-header-language .ernilac-language-dot {
    display: none !important;
  }
  .ernilac-header-language .ernilac-language-switcher__menu {
    right: 0 !important;
    min-width: 72px !important;
  }
  .ernilac-mobile-language {
    display: none !important;
  }
}

@media (max-width: 540px) {
  .ernilac-brand-logo {
    width: 132px !important;
  }
  .ernilac-header-language .ernilac-language-switcher summary {
    min-width: 50px !important;
    padding-inline: 8px !important;
  }
}


/* ERNILAC v13 -------------------------------------------------------------
   Real AJAX homepage-news pagination, single-shell language control and final
   Photo Gallery pagination alignment. */
.ernilac-home-news-region {
  width: 100%;
}
.ernilac-home-news-region .ernilac-home-news-query {
  transition: opacity .16s ease;
}
.ernilac-home-news-region.is-loading .ernilac-home-news-query {
  opacity: .42;
  pointer-events: none;
}
.ernilac-home-news-region.is-loading .ernilac-home-news-pagination {
  pointer-events: none;
}
.ernilac-home-news-posts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 26px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ernilac-home-news-posts > li {
  display: flex;
  margin: 0;
}

/* Old demo CSS styled the <details> itself as a pill and the new header also
   styles <summary>; neutralise the outer shell so mobile shows one clean box. */
.ernilac-header-language .ernilac-language-switcher {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* 10Web Photo Gallery keeps its own working pagination. Give the current-page
   input breathing room from the plugin's literal "z 2 / of 2" text. */
[class*="bwg_nav_cont"] {
  white-space: nowrap !important;
}
[class*="bwg_nav_cont"] input,
[class*="bwg_nav_cont"] input[class*="current"] {
  margin-left: 6px !important;
  margin-right: 10px !important;
}

@media (max-width: 980px) {
  .ernilac-home-news-posts {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 700px) {
  .ernilac-home-news-posts {
    grid-template-columns: 1fr;
  }
}


/* ERNILAC v14: article detail ends with chronological previous/next navigation. */
.single-post .ernilac-related-news {
  display: none !important;
}
.ernilac-post-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  width: min(100%, 1080px);
  margin: 58px auto 0;
  padding-top: 22px;
  border-top: 1px solid var(--ern-border);
}
.ernilac-post-nav__item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 7px;
  padding: 4px 28px 4px 0;
  color: var(--ern-ink);
  text-decoration: none !important;
}
.ernilac-post-nav__item--previous {
  grid-column: 1;
  text-align: left;
}
.ernilac-post-nav__item--next {
  grid-column: 2;
  padding-right: 0;
  padding-left: 28px;
  border-left: 1px solid var(--ern-border);
  text-align: right;
  align-items: flex-end;
}
.ernilac-post-nav__direction {
  color: var(--ern-ink);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.ernilac-post-nav__title {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  color: var(--ern-text);
  font-size: .96rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ernilac-post-nav__item:hover .ernilac-post-nav__direction,
.ernilac-post-nav__item:focus-visible .ernilac-post-nav__direction {
  color: var(--ern-blue);
}
.ernilac-post-nav__item:hover .ernilac-post-nav__title,
.ernilac-post-nav__item:focus-visible .ernilac-post-nav__title {
  color: var(--ern-ink);
}
.ernilac-post-nav__item:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--ern-blue) 28%, transparent);
  outline-offset: 6px;
  border-radius: 6px;
}
@media (max-width: 640px) {
  .ernilac-post-nav {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 44px;
    padding-top: 12px;
  }
  .ernilac-post-nav__item--previous,
  .ernilac-post-nav__item--next {
    grid-column: 1;
    padding: 16px 0;
    border-left: 0;
  }
  .ernilac-post-nav__item--next {
    border-top: 1px solid var(--ern-border);
  }
}


/* ERNILAC v15 -------------------------------------------------------------
   Final article navigation polish, explicit submenu affordance and the
   editable Career Compass resource-grid visual system. */

/* Previous/next article titles: one calm line, never a two-line block. */
.ernilac-post-nav__item { min-width: 0; }
.ernilac-post-nav__title {
  display: block !important;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
}

/* Keep a single-post document geometrically closed by the footer. */
body.single-post {
  min-height: 100vh;
  min-height: 100dvh;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  display: flex;
  flex-direction: column;
}
body.single-post .ernilac-site-header,
body.single-post .ernilac-site-footer { flex: 0 0 auto; }
body.single-post .ernilac-article { flex: 1 0 auto; }
body.single-post .ernilac-site-footer { margin-bottom: 0 !important; }

/* Editorial menu items with children get one restrained chevron. The label
   itself still comes 1:1 from Appearance -> Menus. */
.ernilac-menu-chevron {
  display: inline-block;
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  margin-left: 1px;
  border-right: 1.8px solid currentColor;
  border-bottom: 1.8px solid currentColor;
  opacity: .56;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .16s ease, opacity .16s ease;
}
.ernilac-primary-menu li.menu-item-has-children > a { gap: 7px; }
.ernilac-primary-menu li.menu-item-has-children:hover > a .ernilac-menu-chevron,
.ernilac-primary-menu li.menu-item-has-children:focus-within > a .ernilac-menu-chevron {
  opacity: .9;
  transform: translateY(2px) rotate(225deg);
}
.ernilac-primary-menu--mobile li.menu-item-has-children > a .ernilac-menu-chevron {
  margin-left: auto;
}
.ernilac-primary-menu--mobile li.menu-item-has-children:hover > a .ernilac-menu-chevron,
.ernilac-primary-menu--mobile li.menu-item-has-children:focus-within > a .ernilac-menu-chevron {
  transform: translateY(-2px) rotate(45deg);
}

/* Career Compass resource directory. The content is normal Gutenberg data;
   the theme only supplies the visual language. */
body.ernilac-context-resources .ernilac-page-main .entry-content {
  width: min(calc(100% - 48px), var(--ern-wide));
  padding-top: 34px;
}
.ernilac-resource-intro {
  max-width: 820px;
  margin: 0 0 42px !important;
  color: var(--ern-text);
  font-size: 1.08rem;
  line-height: 1.7;
}
.ernilac-resource-grid.wp-block-group {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
  max-width: none;
  margin: 0;
}
.ernilac-resource-card.wp-block-group {
  display: flex;
  min-width: 0;
  flex-direction: column;
  margin: 0;
  padding: 26px 25px 22px;
  overflow: hidden;
  border: 1px solid var(--ern-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(24,42,68,.055);
}
.ernilac-resource-card__number {
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  margin: 0 0 20px !important;
  border-radius: 50%;
  background: rgba(126,217,87,.20);
  color: var(--ern-green-dark);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .04em;
}
.ernilac-resource-card__title.wp-block-heading {
  margin: 0 0 17px !important;
  color: var(--ern-ink);
  font-size: 1.3rem;
  line-height: 1.18;
  letter-spacing: -.015em;
}
.ernilac-resource-list.wp-block-group {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
}
.ernilac-resource-item.wp-block-group {
  margin: 0;
  padding: 14px 0 15px;
  border-top: 1px solid var(--ern-border);
}
.ernilac-resource-item:first-child { border-top: 0; padding-top: 0; }
.ernilac-resource-item__title {
  margin: 0 0 4px !important;
  line-height: 1.35;
}
.ernilac-resource-item__title a {
  color: var(--ern-blue);
  font-weight: 800;
  text-decoration: none;
}
.ernilac-resource-item__title a:hover,
.ernilac-resource-item__title a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.ernilac-resource-item__desc {
  margin: 0 !important;
  color: var(--ern-muted);
  font-size: .9rem;
  line-height: 1.5;
}
.ernilac-resource-note {
  margin: 34px 0 0 !important;
  padding: 16px 18px;
  border-left: 4px solid var(--ern-green);
  border-radius: 0 12px 12px 0;
  background: var(--ern-bg);
  color: var(--ern-muted);
  font-size: .9rem;
}
@media (max-width: 980px) {
  .ernilac-resource-grid.wp-block-group { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  body.ernilac-context-resources .ernilac-page-main .entry-content { width: min(calc(100% - 36px), var(--ern-wide)); }
  .ernilac-resource-grid.wp-block-group { grid-template-columns: 1fr; gap: 16px; }
  .ernilac-resource-card.wp-block-group { padding: 22px 20px 18px; border-radius: 16px; }
  .ernilac-resource-intro { margin-bottom: 30px !important; font-size: 1rem; }
}

/* ERNILAC v18: compact native Gutenberg galleries in article details.
   Keep legacy/plugin galleries untouched; only core/gallery gets this layout. */
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 6px !important;
  align-items: stretch !important;
}
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images > figure.wp-block-image {
  width: auto !important;
  max-width: none !important;
  aspect-ratio: 4 / 3;
  margin: 0 !important;
  overflow: hidden;
}
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images > figure.wp-block-image > a,
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images > figure.wp-block-image > img,
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images > figure.wp-block-image > a > img {
  display: block;
  width: 100% !important;
  height: 100% !important;
}
.single-post .ernilac-article-body .wp-block-gallery.has-nested-images > figure.wp-block-image img {
  object-fit: cover !important;
  object-position: center center;
}

@media (max-width: 900px) {
  .single-post .ernilac-article-body .wp-block-gallery.has-nested-images {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 600px) {
  .single-post .ernilac-article-body .wp-block-gallery.has-nested-images {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* v18.1 — bundled Career Compass V3 on the interactive-tool page. */
.ernilac-compass-embed {
  width: 100%;
  max-width: 100%;
  margin: 10px auto 0;
  overflow: hidden;
}
.ernilac-compass-embed iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  border: 0;
}
