/* cjp site template – direction "albastru instituțional". Mobile-first, system fonts, no external resources. */

:root {
  --cjp-pri: #0d4f8b;
  --cjp-pri-dark: #083a68;
  --cjp-pri-soft: #eaf2fa;
  --cjp-acc: #f2b01e;
  --cjp-bg: #f4f7fb;
  --cjp-card: #fff;
  --cjp-ink: #1a1a1a;
  --cjp-mute: #4a5566;
  --cjp-line: #cdd9e6;
  --cjp-warn: #b42318;
  --cjp-on-pri: #fff;
  --cjp-focus: #ffbf47;
  --cjp-radius: 6px;
  --cjp-max: 1240px;
  --cjp-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  /* Bootstrap variables used by core layouts (buttons, pagination, alerts, forms) */
  --bs-body-font-family: var(--cjp-font);
  --bs-body-color: var(--cjp-ink);
  --bs-body-bg: var(--cjp-bg);
  --bs-link-color: var(--cjp-pri);
  --bs-link-color-rgb: 13, 79, 139;
  --bs-link-hover-color: var(--cjp-pri-dark);
  --bs-link-hover-color-rgb: 8, 58, 104;
  --bs-border-color: var(--cjp-line);
}

html { font-size: 112.5%; scroll-behavior: smooth; scroll-padding-top: 5.5rem; }
html[data-cjp-font="-1"] { font-size: 100%; }
html[data-cjp-font="1"] { font-size: 125%; }
html[data-cjp-font="2"] { font-size: 137.5%; }

body { margin: 0; font-family: var(--cjp-font); font-size: 1rem; line-height: 1.6; color: var(--cjp-ink); background: var(--cjp-bg); }
a { color: var(--cjp-pri); text-underline-offset: .15em; }
a:hover { color: var(--cjp-pri-dark); }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4 { line-height: 1.25; color: var(--cjp-ink); }
h1 { font-size: 1.75rem; margin: 0 0 .5rem; }
h2 { font-size: 1.35rem; }
h3 { font-size: 1.15rem; }

/* focus: visible on light and dark backgrounds */
:focus-visible { outline: 3px solid var(--cjp-focus); outline-offset: 2px; box-shadow: 0 0 0 5px #0b0c0c; }
main:focus { outline: none; box-shadow: none; }

.cjp-container { width: 100%; max-width: var(--cjp-max); margin: 0 auto; padding: 0 16px; }
@media (min-width: 768px) { .cjp-container { padding: 0 24px; } }

.cjp-skip { position: absolute; left: 8px; top: -100px; z-index: 1000; padding: .6rem 1rem; background: var(--cjp-focus); color: #0b0c0c; font-weight: 700; border-radius: var(--cjp-radius); }
.cjp-skip:focus { top: 8px; color: #0b0c0c; }

/* ---------------------------------------------------------------- utility bar */
.cjp-util { background: var(--cjp-pri-dark); color: var(--cjp-on-pri); font-size: .85rem; }
.cjp-util a { color: var(--cjp-on-pri); }
.cjp-util__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .25rem 1rem; padding-top: .35rem; padding-bottom: .35rem; }
.cjp-util__contact { margin: 0; display: flex; flex-wrap: wrap; gap: .1rem 1.1rem; }
.cjp-a11y { display: flex; gap: .4rem; }
.cjp-a11y[hidden] { display: none; }
.cjp-a11y button { min-width: 44px; min-height: 44px; padding: 0 .6rem; border: 1px solid rgba(255, 255, 255, .6); border-radius: var(--cjp-radius); background: transparent; color: var(--cjp-on-pri); font: inherit; font-weight: 600; cursor: pointer; }
.cjp-a11y button:hover, .cjp-a11y button[aria-pressed="true"] { background: var(--cjp-on-pri); color: var(--cjp-pri-dark); }

/* ---------------------------------------------------------------- header */
.cjp-head { background: var(--cjp-card); border-bottom: 1px solid var(--cjp-line); }
.cjp-head__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1rem; padding-bottom: 1rem; }
.cjp-brand { display: flex; align-items: center; gap: .8rem; text-decoration: none; color: var(--cjp-ink); min-height: 44px; }
.cjp-brand:hover { color: var(--cjp-pri); }
.cjp-brand__logo { width: 48px; height: 48px; flex: none; }
.cjp-brand__name { display: block; font-size: 1.1rem; font-weight: 700; line-height: 1.2; }
.cjp-brand__tagline { display: block; font-size: .8rem; color: var(--cjp-mute); }
.cjp-partner { height: 48px; width: auto; }
.cjp-search { flex: 1 1 18rem; max-width: 30rem; }
@media (min-width: 768px) { .cjp-brand__logo { width: 56px; height: 56px; } .cjp-brand__name { font-size: 1.2rem; } }

/* search fields (header module, list search, hero) share one look: input + button on the right */
.cjp-search form, .cjp-list__search, .cjp-hero__search { display: flex; margin: 0; border: 2px solid var(--cjp-pri); border-radius: var(--cjp-radius); background: var(--cjp-card); overflow: hidden; }
.cjp-search .input-group, .cjp-search .mod-finder__search { display: flex; flex: 1; flex-wrap: nowrap; }
.cjp-search input, .cjp-list__search input, .cjp-hero__search input { flex: 1; min-width: 0; min-height: 44px; border: 0; border-radius: 0; padding: .5rem .75rem; font: inherit; color: var(--cjp-ink); background: transparent; }
.cjp-search button, .cjp-list__search button, .cjp-hero__search button { flex: none; min-height: 44px; min-width: 4.5rem; border: 0; border-radius: 0; padding: 0 1rem; background: var(--cjp-pri); color: var(--cjp-on-pri); font: inherit; font-weight: 600; cursor: pointer; }
.cjp-search button:hover, .cjp-list__search button:hover, .cjp-hero__search button:hover { background: var(--cjp-pri-dark); }
.cjp-search label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------------------------------------------------------------- main menu (mobile first: accordion) */
.cjp-nav { background: var(--cjp-pri); color: var(--cjp-on-pri); }
.cjp-nav > .cjp-container { position: relative; }
.cjp-nav ul { list-style: none; margin: 0; padding: 0; }
.cjp-nav__burger { display: flex; align-items: center; gap: .6rem; width: 100%; min-height: 48px; padding: 0; border: 0; background: transparent; color: var(--cjp-on-pri); font: inherit; font-weight: 700; cursor: pointer; }
.cjp-nav__burger[hidden] { display: none; }
.cjp-nav__burger-icon, .cjp-nav__burger-icon::before, .cjp-nav__burger-icon::after { display: block; width: 20px; height: 2px; background: currentColor; position: relative; }
.cjp-nav__burger-icon::before, .cjp-nav__burger-icon::after { content: ""; position: absolute; left: 0; }
.cjp-nav__burger-icon::before { top: -6px; }
.cjp-nav__burger-icon::after { top: 6px; }
.cjp-js .cjp-nav__tabs { display: none; }
.cjp-js .cjp-nav.is-open .cjp-nav__tabs { display: block; padding-bottom: .75rem; }
.cjp-nav__tab { border-top: 1px solid rgba(255, 255, 255, .25); }
.cjp-nav__tablink { display: flex; align-items: center; justify-content: space-between; gap: .75rem; width: 100%; min-height: 48px; padding: .6rem 0; border: 0; background: transparent; color: var(--cjp-on-pri); font: inherit; font-weight: 600; text-align: left; text-decoration: none; cursor: pointer; }
a.cjp-nav__tablink:hover, .cjp-nav__tablink:hover { color: var(--cjp-on-pri); text-decoration: underline; }
.cjp-nav__tab.is-active > .cjp-nav__tablink { text-decoration: underline; text-decoration-thickness: 3px; }
/* round chip with a chevron that turns when the panel opens */
.cjp-nav__chev { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: rgba(255, 255, 255, .18); }
.cjp-nav__chev::before { content: ""; width: .45rem; height: .45rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .2s; }
.cjp-nav__tablink[aria-expanded="true"] .cjp-nav__chev::before { transform: translateY(2px) rotate(-135deg); }
.cjp-nav__panel { background: var(--cjp-card); color: var(--cjp-ink); border-radius: var(--cjp-radius); margin: 0 0 .75rem; padding: .5rem 1rem; border-left: 4px solid var(--cjp-acc); }
.cjp-js .cjp-nav__panel { display: none; }
.cjp-js .cjp-nav__tab.is-open > .cjp-nav__panel { display: block; }
.cjp-nav__group { break-inside: avoid; padding: .35rem 0 .6rem; }
.cjp-nav__grouptitle, .cjp-nav__overview { margin: .3rem 0; font-size: .75rem; letter-spacing: .07em; text-transform: uppercase; font-weight: 700; color: var(--cjp-mute); }
.cjp-nav__grouptitle a, .cjp-nav__overview a { color: var(--cjp-mute); }
.cjp-nav__links a, .cjp-nav__links .is-heading { display: block; padding: .45rem 0 .45rem .75rem; border-left: 2px solid var(--cjp-line); color: var(--cjp-ink); text-decoration: none; min-height: 44px; }
.cjp-nav__links a:hover, .cjp-nav__links a[aria-current] { border-left-color: var(--cjp-pri); color: var(--cjp-pri); text-decoration: underline; }
.cjp-nav__links--sub { margin-left: .9rem; font-size: .92rem; }

@media (min-width: 1480px) {
  .cjp-nav__burger { display: none; } /* on desktop the tabs are always visible */
  .cjp-js .cjp-nav__tabs, .cjp-nav__tabs { display: flex; flex-wrap: wrap; gap: 0 .15rem; padding: 0; }
  .cjp-nav__tab { border: 0; }
  .cjp-nav__tab.has-panel:not(:has(.is-wide)) { position: relative; }
  .cjp-nav__tablink { width: auto; min-height: 52px; padding: .75rem .65rem; gap: .45rem; border-radius: var(--cjp-radius) var(--cjp-radius) 0 0; font-size: .9rem; }
  .cjp-nav__tablink[aria-expanded="true"], .cjp-nav__tab.is-open > .cjp-nav__tablink { background: var(--cjp-card); color: var(--cjp-pri); text-decoration: none; }
  .cjp-nav__tablink[aria-expanded="true"] .cjp-nav__chev { background: var(--cjp-pri-soft); }
  .cjp-nav__chev { width: 1.35rem; height: 1.35rem; }
  /* the white tab is joined to the panel below it */
  .cjp-nav__panel { position: absolute; z-index: 50; top: 100%; left: 0; margin: 0; padding: 1.1rem 1.4rem .6rem; min-width: 22rem; max-width: 36rem; border: 0; border-bottom: 3px solid var(--cjp-pri); border-radius: 0 var(--cjp-radius) var(--cjp-radius) var(--cjp-radius); box-shadow: 0 12px 24px rgba(10, 40, 14, .18); }
  .cjp-nav__tab:nth-last-child(-n+3) .cjp-nav__panel:not(.is-wide) { left: auto; right: 0; border-radius: var(--cjp-radius) 0 var(--cjp-radius) var(--cjp-radius); }
  .cjp-nav__panel.is-wide { left: 24px; right: 24px; max-width: none; border-radius: 0 0 var(--cjp-radius) var(--cjp-radius); }
  .cjp-nav__cols { columns: 2 14rem; column-gap: 2rem; }
  .cjp-nav__panel.is-wide .cjp-nav__cols { columns: 4 13rem; }
  .cjp-nav__links a, .cjp-nav__links .is-heading { padding: .3rem 0 .3rem .7rem; min-height: 0; font-size: .92rem; }
  /* without JavaScript the panels open on hover and keyboard focus */
  html:not(.cjp-js) .cjp-nav__panel { display: none; }
  html:not(.cjp-js) .cjp-nav__tab:hover > .cjp-nav__panel, html:not(.cjp-js) .cjp-nav__tab:focus-within > .cjp-nav__panel { display: block; }
}

.cjp-top-a { background: transparent; border: 0; margin-top: -2.2rem; position: relative; z-index: 2; }
.cjp-banner + .cjp-top-a .cjp-mod { background: var(--cjp-card); border-radius: 14px; box-shadow: 0 8px 28px rgba(10, 40, 14, .12); padding: .8rem 1.1rem; }

.cjp-top-a { background: var(--cjp-card); border-bottom: 1px solid var(--cjp-line); }
.cjp-top-a .cjp-mod { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; padding: .7rem 0; }
.cjp-top-a .cjp-mod__title { font-size: .9rem; margin: 0 .25rem 0 0; }
.cjp-chips { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.cjp-chips a { display: inline-flex; align-items: center; min-height: 44px; padding: .3rem .9rem; border-radius: 999px; background: var(--cjp-pri-soft); color: var(--cjp-pri); font-weight: 600; font-size: .88rem; text-decoration: none; }
.cjp-chips a:hover, .cjp-chips a[aria-current] { background: var(--cjp-pri); color: var(--cjp-on-pri); }
.cjp-chips__n { font-weight: 400; opacity: .8; }
.cjp-chips__label { margin: 0 .35rem 0 0; font-weight: 700; font-size: .9rem; }
.cjp-top-a .mod-custom { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.cjp-archive { padding: .7rem 1rem; border-left: 4px solid var(--cjp-warn); background: #fdf3f2; border-radius: var(--cjp-radius); color: var(--cjp-ink); }
html.cjp-hc .cjp-archive { background: #000; color: #fff; border-left-color: #ffff00; }
.cjp-list__years { margin: 0 0 .9rem; }
html.cjp-hc .cjp-chips a[aria-current] { background: #ffff00; color: #000; }

.cjp-page { padding-top: 1.25rem; padding-bottom: 2rem; }
.cjp-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
@media (min-width: 992px) { .has-sidebar .cjp-grid { grid-template-columns: minmax(0, 1fr) 20rem; gap: 2rem; } }
.cjp-mod { margin: 0 0 1.5rem; }
.cjp-mod__title { display: flex; align-items: center; gap: .5rem; font-size: 1.2rem; margin: 0 0 .75rem; }
.cjp-mod__title::before { content: ""; width: 6px; height: 1.1em; border-radius: 3px; background: var(--cjp-acc); }

/* scroll reveal (class added by template.js only when motion is allowed) */
.cjp-reveal { opacity: 0; transform: translateY(14px); transition: opacity .5s ease var(--cjp-delay, 0ms), transform .5s ease var(--cjp-delay, 0ms); }
.cjp-reveal.is-in { opacity: 1; transform: none; }

/* latest articles (core mod_articles) as rows with date */

.cjp-urg { padding: 1rem; background: var(--cjp-card); border: 2px solid var(--cjp-warn); border-radius: var(--cjp-radius); }
.cjp-urg__nr { display: inline-flex; align-items: center; min-height: 44px; font-size: 2rem; font-weight: 800; line-height: 1; color: var(--cjp-warn); text-decoration: none; }

/* ---------------------------------------------------------------- article */
.cjp-article { background: var(--cjp-card); border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); padding: 1.25rem; }
@media (min-width: 768px) { .cjp-article { padding: 2rem 2.25rem; } }
.cjp-article__meta { display: flex; flex-wrap: wrap; gap: .25rem 1.25rem; margin: 0 0 1.25rem; font-size: .85rem; color: var(--cjp-mute); }
.cjp-article__body { max-width: 75ch; }
.cjp-article__body table { display: block; width: 100%; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.cjp-article__body td, .cjp-article__body th { border: 1px solid var(--cjp-line); padding: .4rem .6rem; vertical-align: top; }
.cjp-article__body a[href$=".pdf" i], .cjp-article__body a[href$=".doc" i], .cjp-article__body a[href$=".docx" i], .cjp-article__body a[href$=".xls" i], .cjp-article__body a[href$=".xlsx" i] { overflow-wrap: anywhere; }
.cjp-article__tags { margin-top: 1.5rem; padding-top: .75rem; border-top: 1px solid var(--cjp-line); }
.cjp-article__tags ul { display: flex; flex-wrap: wrap; gap: .4rem; list-style: none; margin: 0; padding: 0; }
.cjp-article__tags a { display: inline-block; padding: .15rem .6rem; border-radius: 999px; background: var(--cjp-pri-soft); color: var(--cjp-pri); font-size: .8rem; text-decoration: none; }
.cjp-article__tags a:hover { background: var(--cjp-pri); color: var(--cjp-on-pri); }
/* guide pages: answer first, numbered steps, attention boxes */
.cjp-lead { font-size: 1.08rem; padding: .9rem 1.1rem; border-radius: var(--cjp-radius); background: var(--cjp-pri-soft); }
.cjp-steps { counter-reset: step; list-style: none; padding: 0; }
.cjp-steps > li { counter-increment: step; position: relative; padding: .2rem 0 .9rem 2.9rem; }
.cjp-steps > li::before { content: counter(step); position: absolute; left: 0; top: 0; width: 2rem; height: 2rem; border-radius: 50%; background: var(--cjp-pri); color: var(--cjp-on-pri); font-weight: 700; display: flex; align-items: center; justify-content: center; }
.cjp-box { margin: 1rem 0; padding: .8rem 1rem; border-radius: var(--cjp-radius); border-left: 4px solid var(--cjp-acc); background: #eaf2fa; }
.cjp-box p { margin: 0; }
.cjp-box--warn { border-left-color: #b54708; background: #fff6ed; }
.cjp-source { margin-top: 1.5rem; font-size: .85rem; color: var(--cjp-mute); }
html.cjp-hc .cjp-lead, html.cjp-hc .cjp-box { background: #000; color: #fff; border: 1px solid #fff; }

.cjp-transcript { margin: 0 0 1.5rem; padding: 0 0 1rem; border-bottom: 1px dashed var(--cjp-line); }
.cjp-transcript__note { font-size: .85rem; color: var(--cjp-mute); font-style: italic; }

/* category heading and description from the core layout */
.com-content-category h1 { margin-bottom: 1rem; }
.category-desc { max-width: 75ch; margin-bottom: 1rem; }

/* ---------------------------------------------------------------- lists */
.cjp-list__search { max-width: 36rem; margin-bottom: .75rem; }
.cjp-list__new { margin: 0 0 .75rem; }
.cjp-list__new .btn { min-height: 44px; display: inline-flex; align-items: center; gap: .35rem; }
.cjp-list__count { font-size: .9rem; color: var(--cjp-mute); margin: 0 0 .75rem; }
.cjp-list__rows { list-style: none; margin: 0 0 1rem; padding: 0; background: var(--cjp-card); border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); }
.cjp-list__row { display: flex; gap: .3rem 1rem; padding: .7rem 1rem; border-top: 1px solid var(--cjp-line); flex-wrap: wrap; }
.cjp-list__row:first-child { border-top: 0; }
.cjp-list__row time { flex: none; width: 6.5em; color: var(--cjp-mute); font-size: .88rem; font-variant-numeric: tabular-nums; padding-top: .1rem; }
.cjp-list__row a { flex: 1 1 16rem; text-decoration: none; }
.cjp-list__row a:hover { text-decoration: underline; }
.cjp-list__pages { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem; }
.cjp-list__counter { margin: 0; font-size: .85rem; color: var(--cjp-mute); }
.pagination { --bs-pagination-color: var(--cjp-pri); --bs-pagination-hover-color: var(--cjp-pri-dark); --bs-pagination-active-bg: var(--cjp-pri); --bs-pagination-active-border-color: var(--cjp-pri); --bs-pagination-padding-x: .85rem; --bs-pagination-padding-y: .55rem; flex-wrap: wrap; margin: 0; }
.btn-primary { --bs-btn-bg: var(--cjp-pri); --bs-btn-border-color: var(--cjp-pri); --bs-btn-hover-bg: var(--cjp-pri-dark); --bs-btn-hover-border-color: var(--cjp-pri-dark); --bs-btn-active-bg: var(--cjp-pri-dark); }

/* previous / next article (core "Content - Page Navigation" plugin) */
.pagenavigation { margin-top: 1.5rem; }
.pagenavigation .pagination { gap: .5rem; }
.pagenavigation .btn { --bs-btn-bg: var(--cjp-card); --bs-btn-color: var(--cjp-pri); --bs-btn-border-color: var(--cjp-pri); --bs-btn-hover-bg: var(--cjp-pri); --bs-btn-hover-color: var(--cjp-on-pri); --bs-btn-hover-border-color: var(--cjp-pri); min-height: 44px; display: inline-flex; align-items: center; }

/* contact block (footer and contact page) */
.cjp-contact { display: grid; grid-template-columns: minmax(0, 1fr); gap: .1rem 1rem; margin: 0; }
.cjp-contact dt { font-size: .75rem; letter-spacing: .05em; text-transform: uppercase; font-weight: 700; opacity: .85; margin-top: .55rem; }
.cjp-contact dd { margin: 0; overflow-wrap: anywhere; }
@media (min-width: 768px) { .cjp-main .cjp-contact { grid-template-columns: 14rem minmax(0, 1fr); } .cjp-main .cjp-contact dt { margin-top: .3rem; } }
.cjp-foot .cjp-contact dt:first-child { margin-top: 0; }

/* campaign videos: the YouTube player is loaded only after a click (no request to YouTube before) */
.cjp-mod--videos { margin-top: 1rem; padding: 1.5rem; border-radius: 16px; color: #fff; background: radial-gradient(circle at 15% 20%, rgba(174, 213, 129, .25), transparent 45%), linear-gradient(135deg, #0f3a13, #0d4f8b 60%, #33691e); }
.cjp-mod--videos .cjp-mod__title { color: #fff; }
.cjp-mod--videos .cjp-mod__title::before { background: #ffd166; }
.cjp-videos { display: grid; gap: .9rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cjp-video { position: relative; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #0a2a0d; }
.cjp-video--main { grid-column: 1 / -1; }
@media (min-width: 992px) { .cjp-videos { grid-template-columns: 2fr 1fr 1fr; grid-template-rows: auto auto; } .cjp-video--main { grid-column: 1; grid-row: 1 / span 2; } }
.cjp-video__poster { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: .4rem; padding: 1rem; color: #fff; text-decoration: none; background: linear-gradient(160deg, rgba(255, 255, 255, .08), rgba(0, 0, 0, .35)), repeating-linear-gradient(115deg, rgba(255, 255, 255, .04) 0 14px, transparent 14px 28px); }
.cjp-video__poster:hover, .cjp-video__poster:focus-visible { color: #fff; }
.cjp-video__play { position: absolute; left: 50%; top: 45%; width: 4.2rem; height: 4.2rem; margin: -2.1rem 0 0 -2.1rem; border-radius: 50%; background: rgba(255, 255, 255, .95); box-shadow: 0 0 0 0 rgba(255, 255, 255, .5); transition: transform .2s; animation: cjp-ping-white 2.6s ease-out infinite; }
.cjp-video__play::before { content: ""; position: absolute; left: 1.6rem; top: 1.25rem; border-style: solid; border-width: .85rem 0 .85rem 1.35rem; border-color: transparent transparent transparent #0d4f8b; }
.cjp-video--main .cjp-video__play { width: 5.5rem; height: 5.5rem; margin: -2.75rem 0 0 -2.75rem; }
.cjp-video--main .cjp-video__play::before { left: 2.1rem; top: 1.6rem; border-width: 1.15rem 0 1.15rem 1.8rem; }
.cjp-video__poster:hover .cjp-video__play { transform: scale(1.08); }
@keyframes cjp-ping-white { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .45); } 80%, 100% { box-shadow: 0 0 0 1.2rem rgba(255, 255, 255, 0); } }
.cjp-video__label { position: relative; font-weight: 700; font-size: .95rem; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }
.cjp-video__label small { display: block; font-weight: 400; font-size: .75rem; opacity: .9; }
.cjp-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cjp-videos__note { margin: .9rem 0 0; font-size: .8rem; color: rgba(255, 255, 255, .85); }
html.cjp-hc .cjp-mod--videos { background: #000; border: 2px solid #fff; }
html.cjp-hc .cjp-video__poster { background: #000; border: 1px solid #ffff00; }

/* document type and size (added by the cjp system plugin) */
.cjp-file { display: inline-block; margin-left: .35rem; padding: 0 .45rem; border-radius: 4px; background: var(--cjp-pri-soft); color: var(--cjp-mute); font-size: .75rem; font-weight: 600; white-space: nowrap; vertical-align: middle; }
html.cjp-hc .cjp-file { background: #000; color: #fff; border: 1px solid #fff; }

/* PDF preview button and dialog */
.cjp-pdfbtn { display: inline-flex; align-items: center; gap: .3rem; min-height: 36px; margin: .15rem 0 .15rem .5rem; padding: .15rem .7rem; border: 1px solid var(--cjp-pri); border-radius: 999px; background: var(--cjp-card); color: var(--cjp-pri); font: inherit; font-size: .8rem; font-weight: 600; vertical-align: middle; cursor: pointer; }
.cjp-pdfbtn::before { content: ""; width: .95rem; height: .95rem; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat; }
.cjp-pdfbtn:hover { background: var(--cjp-pri); color: var(--cjp-on-pri); }
.cjp-noscroll { overflow: hidden; }
.cjp-pdf { width: min(1100px, 96vw); height: min(92vh, 1000px); max-width: none; max-height: none; padding: 0; border: 0; border-radius: 12px; background: var(--cjp-card); color: var(--cjp-ink); box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.cjp-pdf[open] { display: flex; flex-direction: column; }
.cjp-pdf::backdrop { background: rgba(6, 29, 55, .72); }
.cjp-pdf__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1rem; padding: .7rem 1rem; border-bottom: 1px solid var(--cjp-line); }
.cjp-pdf__title { margin: 0; font-size: 1rem; flex: 1 1 14rem; overflow-wrap: anywhere; }
.cjp-pdf__actions { display: flex; flex-wrap: wrap; gap: .4rem; }
.cjp-pdf__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 .9rem; border: 1px solid var(--cjp-pri); border-radius: var(--cjp-radius); background: var(--cjp-card); color: var(--cjp-pri); font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; }
.cjp-pdf__btn:hover, .cjp-pdf__btn--close { background: var(--cjp-pri); color: var(--cjp-on-pri); }
.cjp-pdf__hint { margin: 0; padding: .35rem 1rem; font-size: .8rem; color: var(--cjp-mute); }
.cjp-pdf__frame { flex: 1; width: 100%; border: 0; background: #525659; }

/* breadcrumbs */
.mod-breadcrumbs__wrapper .breadcrumb { --bs-breadcrumb-margin-bottom: .75rem; font-size: .85rem; }

/* ---------------------------------------------------------------- footer */
.cjp-foot { background: var(--cjp-pri-dark); color: var(--cjp-on-pri); font-size: .9rem; }
.cjp-foot a { color: var(--cjp-on-pri); }
.cjp-foot__in { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1.25rem 2rem; padding-top: 2rem; padding-bottom: 1rem; }
.cjp-foot .cjp-mod__title { color: var(--cjp-on-pri); font-size: 1rem; }
.cjp-foot .cjp-mod__title::before { background: var(--cjp-on-pri); }
.cjp-foot ul { list-style: none; margin: 0; padding: 0; }
.cjp-foot li { padding: .2rem 0; }
.cjp-foot__legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; padding-top: .75rem; padding-bottom: 1rem; border-top: 1px solid rgba(255, 255, 255, .25); }
.cjp-foot__legal p { margin: 0; }

/* ---------------------------------------------------------------- error page */
.cjp-error { background: var(--cjp-card); border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); padding: 2rem; }
.cjp-error__debug { white-space: pre-wrap; font-size: .8rem; }

/* ================================================================ direction B (28.10.2026): photographic hero, glass layers, picture cards.
   No stock photos: blue gradients; white text always sits on a dark blue background. */
:root {
  --cjp-head-h: 4.5rem;
  --cjp-night: #08210d;
  --cjp-glass: rgba(255, 255, 255, .13);
  --cjp-glass-dark: rgba(6, 31, 58, .46);
  --cjp-glass-line: rgba(255, 255, 255, .26);
  --cjp-shadow: 0 18px 44px rgba(6, 31, 58, .16);
  --cjp-radius: 12px;
}
body { letter-spacing: .003em; }
h1, h2, h3 { letter-spacing: -.012em; }
.cjp-mod__title { font-size: 1.35rem; margin-bottom: 1rem; }

/* utility bar */
.cjp-util { background: #061a0a; font-size: .8rem; }
.cjp-util a { text-decoration: none; }
.cjp-util a:hover { text-decoration: underline; color: #fff; }
.cjp-util__account { display: flex; align-items: center; gap: .9rem; margin-left: auto; }
.cjp-util__account form { margin: 0; }
.cjp-util__account a, .cjp-util__logout { display: inline-flex; align-items: center; min-height: 44px; }
.cjp-util__logout { padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.cjp-util__in { gap: 0 1rem; }

/* header: dark glass, sticky; on the home page it floats transparent over the photo until the page is scrolled (template.js sets .is-scrolled) */
.cjp-head { position: sticky; top: 0; z-index: 60; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: .75rem; padding: 0 16px; color: #fff; border: 0;
  background: linear-gradient(180deg, #0d3413, #061f3a); box-shadow: 0 1px 0 rgba(255, 255, 255, .08), 0 12px 30px rgba(5, 22, 42, .28); -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); transition: background .3s, box-shadow .3s; }
.cjp-head__in { display: contents; }
.cjp-head .cjp-nav, .cjp-head .cjp-nav > .cjp-container { display: contents; }
.is-home .cjp-head { height: var(--cjp-head-h); grid-template-rows: var(--cjp-head-h); margin-bottom: calc(var(--cjp-head-h) * -1); background: linear-gradient(180deg, rgba(5, 23, 44, .62), rgba(5, 23, 44, 0)); box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.is-home .cjp-head.is-scrolled { background: rgba(6, 31, 58, .8); box-shadow: 0 1px 0 rgba(255, 255, 255, .1), 0 14px 34px rgba(5, 22, 42, .3); -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); }
.cjp-brand { grid-column: 1; grid-row: 1; min-height: var(--cjp-head-h); color: #fff; }
.cjp-brand:hover { color: #fff; }
.cjp-brand__logo { width: 44px; height: 44px; padding: 4px; border-radius: 12px; background: #fff; box-sizing: border-box; }
.cjp-brand__name { font-size: 1.02rem; letter-spacing: -.005em; }
.cjp-brand__tagline { display: none; color: rgba(255, 255, 255, .72); }
.cjp-partner { display: none; }
.cjp-search { grid-column: 1 / -1; grid-row: 2; max-width: none; margin: 0 0 .5rem; }
.is-home .cjp-search { display: none; }
.cjp-search form { border: 1px solid var(--cjp-glass-line); border-radius: 999px; background: var(--cjp-glass); }
.cjp-search input { color: #fff; padding-inline: 1.1rem .5rem; }
.cjp-search input::placeholder { color: rgba(255, 255, 255, .78); }
.cjp-search button { background: var(--cjp-acc); color: #061f3a; border-radius: 0 999px 999px 0; }
.cjp-search button:hover { background: #ffd166; }

/* menu: mobile = burger at the right of the brand, glass sheet below */
.cjp-nav { background: transparent; border: 0; color: #fff; }
.cjp-nav__burger { grid-column: 2; grid-row: 1; width: auto; min-height: 44px; padding: 0 .9rem; border: 1px solid var(--cjp-glass-line); border-radius: 999px; background: var(--cjp-glass); color: #fff; }
.cjp-nav__tabs { grid-column: 1 / -1; grid-row: 3; }
.cjp-js .cjp-nav.is-open .cjp-nav__tabs { margin: .35rem 0 .5rem; padding: .35rem .9rem .6rem; border: 1px solid var(--cjp-glass-line); border-radius: 18px; background: rgba(6, 31, 58, .92); }
.cjp-nav__burger, .cjp-nav__tablink { color: #fff; }
.cjp-nav__tab { border-top-color: rgba(255, 255, 255, .16); }
.cjp-nav__tab:first-child { border-top: 0; }
a.cjp-nav__tablink:hover, .cjp-nav__tablink:hover { color: #fff; }
.cjp-nav__chev { background: rgba(255, 255, 255, .16); }
.cjp-nav__panel { background: #fff; border-left-color: var(--cjp-acc); border-radius: 14px; }

@media (min-width: 1480px) {
  .cjp-head { grid-template-columns: auto minmax(0, 1fr); column-gap: 1.5rem; min-height: var(--cjp-head-h); padding-block: 0; padding-inline: max(24px, calc((100% - var(--cjp-max)) / 2 + 24px)); }
  .cjp-brand__logo { width: 48px; height: 48px; }
  .cjp-brand__name { font-size: 1.12rem; }
  .cjp-head .cjp-nav__tabs, .cjp-js .cjp-head .cjp-nav__tabs { grid-column: 2; grid-row: 1; align-self: stretch; justify-content: flex-end; flex-wrap: nowrap; gap: 0; }
  .cjp-nav__tab { display: flex; min-width: 0; }
  /* full names of the top-level items: long ones break into two lines instead of widening the row */
  .cjp-nav__tablink { align-self: stretch; align-items: center; min-height: 0; padding: 0 .4rem; gap: .2rem; white-space: normal; line-height: 1.15; text-align: left; border-radius: 0; font-size: .85rem; }
  .cjp-nav__tab.is-open > .cjp-nav__tablink, .cjp-nav__tablink[aria-expanded="true"] { background: rgba(255, 255, 255, .14); color: #fff; }
  .cjp-nav__tablink[aria-expanded="true"] .cjp-nav__chev { background: rgba(255, 255, 255, .24); }
  .cjp-nav__tab.is-active > .cjp-nav__tablink { box-shadow: inset 0 -3px 0 var(--cjp-acc); }
  .cjp-nav__panel { background: rgba(255, 255, 255, .97); border: 0; border-bottom: 3px solid var(--cjp-acc); border-radius: 0 0 16px 16px; box-shadow: 0 24px 50px rgba(5, 22, 42, .3); }
  .cjp-nav__tab:nth-last-child(-n+3) .cjp-nav__panel:not(.is-wide) { border-radius: 0 0 16px 16px; }
  .cjp-nav__panel.is-wide { left: 50%; right: auto; width: min(var(--cjp-max), calc(100vw - 48px)); transform: translateX(-50%); border-radius: 0 0 20px 20px; }
  .cjp-search { grid-column: 1 / -1; grid-row: 2; max-width: 26rem; margin: 0 0 .6rem auto; width: 100%; }
  .cjp-search form { min-height: 44px; }
}
@media (min-width: 1400px) {
  .cjp-head { grid-template-columns: auto minmax(0, 1fr) auto; }
  .cjp-search { grid-column: 3; grid-row: 1; width: 13rem; max-width: none; margin: 0; }
}
@media (min-width: 1400px) { .cjp-brand__tagline { display: block; } }

/* ---------------------------------------------------------------- home: photo hero */
.cjp-banner { position: relative; isolation: isolate; overflow: hidden; color: #fff; background-color: var(--cjp-night); }
/* hero photo (Pexels, free licence; see CREDITE-IMAGINI.md), mirrored so that the people sit on the right, away from the text */
.cjp-banner::before { content: ""; position: absolute; inset: 0; z-index: -2; background: url("../images/photos/hero.jpg") center / cover no-repeat, linear-gradient(120deg, #083a68 0%, #0d4f8b 55%, #1668b3 100%); }
.cjp-hero__shade { position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, rgba(5, 25, 48, .6) 0%, rgba(5, 25, 48, .15) 30%, rgba(5, 25, 48, .25) 62%, rgba(5, 25, 48, .88) 100%), linear-gradient(90deg, rgba(6, 27, 52, .92) 0%, rgba(6, 27, 52, .68) 50%, rgba(6, 27, 52, .08) 100%); }
@media (max-width: 767px) { .cjp-hero__shade { background: linear-gradient(180deg, rgba(5, 25, 48, .72) 0%, rgba(5, 25, 48, .6) 45%, rgba(5, 25, 48, .92) 100%), linear-gradient(90deg, rgba(6, 27, 52, .55), rgba(6, 27, 52, .45)); } }
.cjp-hero { display: flex; align-items: center; min-height: min(88vh, 46rem); padding-block: calc(var(--cjp-head-h) + 2.5rem) 9rem; }
.cjp-hero__text { width: 100%; min-width: 0; max-width: 46rem; }
.cjp-hero__kicker { display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1.1rem; padding: .4rem 1rem; border: 1px solid var(--cjp-glass-line); border-radius: 999px; background: var(--cjp-glass); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); color: #fff; font-size: .82rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
.cjp-hero__kicker::before { content: ""; width: .5rem; height: .5rem; border-radius: 50%; background: #ffd166; animation: cjp-ping 2.4s ease-out infinite; }
@keyframes cjp-ping { 0% { box-shadow: 0 0 0 0 rgba(174, 213, 129, .7); } 80%, 100% { box-shadow: 0 0 0 .7rem rgba(174, 213, 129, 0); } }
@media (prefers-reduced-motion: reduce) { .cjp-hero__kicker::before { animation: none; } }
.cjp-hero h1 { max-width: 20ch; margin: 0 0 1rem; font-size: clamp(2.15rem, 1rem + 4.4vw, 4.2rem); line-height: 1.04; letter-spacing: -.028em; color: #fff; text-shadow: 0 2px 24px rgba(0, 0, 0, .35); }
.cjp-hero h1 span { background: linear-gradient(90deg, #d7efb5, #fff 90%); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: none; }
.cjp-hero__lead { max-width: 44ch; margin: 0 0 1.75rem; font-size: 1.12rem; color: rgba(255, 255, 255, .92); }
.cjp-hero__search { max-width: 40rem; padding: .4rem; border: 1px solid var(--cjp-glass-line); border-radius: 999px; background: var(--cjp-glass); box-shadow: 0 24px 60px rgba(0, 0, 0, .4); -webkit-backdrop-filter: blur(16px) saturate(140%); backdrop-filter: blur(16px) saturate(140%); overflow: visible; }
.cjp-hero__search input { min-height: 54px; padding-left: 1.4rem; border-radius: 999px 0 0 999px; background: rgba(255, 255, 255, .96); font-size: 1.05rem; }
.cjp-hero__search button { min-height: 54px; min-width: 6rem; border-radius: 0 999px 999px 0; background: var(--cjp-acc); color: #061f3a; font-weight: 700; }
.cjp-hero__search button:hover { background: #ffd166; }
.cjp-hero__quick { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem .6rem; margin: 1.1rem 0 0; font-size: .88rem; color: rgba(255, 255, 255, .88); }
.cjp-hero__quick a { display: inline-flex; align-items: center; border-radius: 999px; text-decoration: none; min-height: 40px; padding-inline: .95rem; border: 1px solid var(--cjp-glass-line); background: var(--cjp-glass); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: #fff; }
.cjp-hero__quick a:hover { background: #fff; color: var(--cjp-pri-dark); }
.cjp-hero__wave, .cjp-hero__art, .cjp-hero__bg { display: none; }

/* picture cards that overlap the bottom of the hero */
.cjp-top-b { position: relative; z-index: 5; margin-top: -7.5rem; }
.cjp-top-b > .cjp-mod { margin-bottom: 0; }
.cjp-top-b .cjp-mod__title { margin-bottom: .9rem; color: #fff; font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; text-shadow: 0 1px 8px rgba(0, 0, 0, .5); }
.cjp-top-b .cjp-mod__title::before { background: #ffd166; }
.cjp-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1rem; list-style: none; margin: 0; padding: 0; }
@media (min-width: 992px) { .cjp-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.cjp-card { position: relative; isolation: isolate; display: flex; align-items: flex-end; height: 100%; min-height: 12.5rem; padding: .7rem; overflow: hidden; border: 1px solid rgba(255, 255, 255, .2); border-radius: 20px; background: #0c2d12; color: #fff; text-decoration: none; box-shadow: var(--cjp-shadow); transition: transform .25s, box-shadow .25s; }
.cjp-card::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(5, 23, 44, .05) 25%, rgba(5, 23, 44, .75) 100%), var(--photo) center / cover no-repeat; transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
.cjp-card:hover { color: #fff; transform: translateY(-4px); box-shadow: 0 26px 54px rgba(6, 31, 58, .3); }
.cjp-card:hover::before { transform: scale(1.07); }
.cjp-card::after { content: "→"; position: absolute; right: .9rem; top: .8rem; display: flex; align-items: center; justify-content: center; width: 2.2rem; height: 2.2rem; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--cjp-pri-dark); font-weight: 700; opacity: 0; transform: translate(-6px, 6px); transition: opacity .25s, transform .25s; }
.cjp-card:hover::after, .cjp-card:focus-visible::after { opacity: 1; transform: none; }
.cjp-card__glass { display: flex; align-items: center; gap: .85rem; width: 100%; padding: .8rem .95rem; border: 1px solid var(--cjp-glass-line); border-radius: 15px; background: var(--cjp-glass-dark); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%); }
.cjp-card svg { flex: none; box-sizing: content-box; width: 1.45rem; height: 1.45rem; padding: .55rem; border-radius: 12px; background: rgba(255, 255, 255, .2); color: #fff; transition: background .25s, color .25s; }
.cjp-card:hover svg { background: #fff; color: var(--cjp-pri-dark); }
.cjp-card strong { display: block; font-size: 1.05rem; line-height: 1.25; color: #fff; }
.cjp-card__txt span { display: block; margin-top: .1rem; font-size: .85rem; line-height: 1.35; color: rgba(255, 255, 255, .88); }
.cjp-card--comunicate { --photo: url("../images/photos/comunicate.jpg"); }
.cjp-card--formulare { --photo: url("../images/photos/formulare.jpg"); }
.cjp-card--bilete { --photo: url("../images/photos/bilete.jpg"); }
.cjp-card--cariera { --photo: url("../images/photos/cariera.jpg"); }
.cjp-card--comunitare { --photo: url("../images/photos/comunitare.jpg"); }
.cjp-card--contact { --photo: url("../images/photos/contact.jpg"); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .cjp-card__glass { background: rgba(6, 31, 58, .82); }
  .cjp-hero__search, .cjp-hero__kicker, .cjp-hero__quick a { background: rgba(6, 31, 58, .55); }
  .cjp-head, .is-home .cjp-head.is-scrolled { background: #061f3a; }
}

/* news as picture cards */
.cjp-mod--mod_articles { margin-top: 2.25rem; }
.cjp-news { display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 1.1rem; margin: 0; padding: 0; list-style: none; background: none; border: 0; }
@media (min-width: 992px) { .cjp-news { grid-template-columns: repeat(3, minmax(0, 1fr)); } .cjp-news__item:first-child { grid-column: span 2; } }
.cjp-news__item { padding: 0; border: 0; }
.cjp-news__card { position: relative; display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid var(--cjp-line); border-radius: 20px; background: var(--cjp-card); box-shadow: 0 8px 24px rgba(6, 31, 58, .08); transition: transform .25s, box-shadow .25s; }
.cjp-news__card:hover { transform: translateY(-4px); box-shadow: var(--cjp-shadow); }
.cjp-news__img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
@media (min-width: 992px) {
  .cjp-news__item:first-child .cjp-news__img { flex: none; height: 22rem; aspect-ratio: auto; }
  .cjp-news__item:nth-child(2) .cjp-news__img { flex: 1 1 auto; height: 0; min-height: 12rem; aspect-ratio: auto; }
}
.cjp-news__card:hover .cjp-news__img { transform: scale(1.04); }
.cjp-news__card { isolation: isolate; }
.cjp-news__date { position: absolute; left: .8rem; top: .8rem; padding: .25rem .75rem; border: 1px solid var(--cjp-glass-line); border-radius: 999px; background: rgba(6, 31, 58, .8); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: #fff; font-size: .78rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.cjp-news__body { padding: 1rem 1.15rem 1.2rem; }
.cjp-news__cat { margin: 0 0 .35rem; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--cjp-pri); }
.cjp-news__title { margin: 0; font-size: 1.05rem; line-height: 1.35; font-weight: 650; }
.cjp-news__title a { color: var(--cjp-ink); text-decoration: none; }
.cjp-news__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.cjp-news__card:hover .cjp-news__title a { color: var(--cjp-pri); }
.cjp-news__item:first-child .cjp-news__title { font-size: 1.3rem; }

/* inner pages: breadcrumbs on a photo band, softer cards */
.cjp-pagehead { padding: 1.1rem 0 1.25rem; color: #fff; background-color: var(--cjp-night); background-size: cover; background-position: center 55%; background-image: linear-gradient(90deg, rgba(6, 27, 52, .93), rgba(6, 27, 52, .6)); }
.cjp-pagehead .breadcrumb { margin: 0; padding: 0; --bs-breadcrumb-margin-bottom: 0; --bs-breadcrumb-divider-color: rgba(255, 255, 255, .6); --bs-breadcrumb-item-active-color: #fff; font-size: .88rem; }
.cjp-pagehead a { color: #fff; }
.cjp-pagehead .mod-breadcrumbs__wrapper, .cjp-pagehead .mod-breadcrumbs { margin: 0; }
.cjp-article, .cjp-list__rows, .cjp-error { border-radius: 20px; box-shadow: 0 8px 28px rgba(6, 31, 58, .07); }
.cjp-page { padding-top: 1.75rem; }
.is-home .cjp-page { padding-top: 0; }
.com-content-category h1, .cjp-article__head h1 { font-size: clamp(1.7rem, 1.2rem + 1.6vw, 2.3rem); letter-spacing: -.02em; }

/* footer: photo under a deep green veil */
.cjp-foot { background: linear-gradient(rgba(5, 23, 44, .93), rgba(5, 23, 44, .97)); }
.cjp-foot .cjp-mod__title { font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; }
.cjp-foot__in { padding-top: 2.75rem; }

@media (prefers-reduced-motion: reduce) {
  .cjp-card, .cjp-card::before, .cjp-card::after, .cjp-news__card, .cjp-news__img, .cjp-head { transition: none; }
}

.cjp-gallery { list-style: none; margin: 1rem 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr)); gap: .6rem; }
.cjp-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--cjp-radius); }

/* long unbroken strings (e-mail addresses, file names, "a/b/c" lists) must wrap at 320 px */
.cjp-main, .cjp-article, .cjp-article__body, .cjp-list { min-width: 0; overflow-wrap: anywhere; }
.cjp-article__body img, .cjp-article__body table { max-width: 100%; }
@media (max-width: 400px) { .cjp-article { padding: 1rem .85rem; } }

.cjp-article__body td, .cjp-article__body th { overflow-wrap: normal; }
.cjp-article__body a[href^="mailto:"] { overflow-wrap: anywhere; }
a[href^="tel:"] { white-space: nowrap; }
/* data tables with data-label cells become one card per row on small screens */
@media (max-width: 600px) {
  .cjp-stack, .cjp-stack tbody, .cjp-stack tr, .cjp-stack th, .cjp-stack td { display: block; width: auto; }
  .cjp-stack caption { display: block; width: auto; padding: 0 0 .5rem; text-align: left; font-weight: 700; }
  .cjp-stack thead { position: absolute; left: -9999px; }
  .cjp-stack tr { margin: 0 0 .8rem; padding: .6rem .85rem; border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); background: var(--cjp-card); }
  .cjp-stack th[scope="row"] { padding: 0 0 .3rem; border: 0; font-size: 1.05rem; }
  .cjp-stack td { padding: .15rem 0; border: 0; }
  .cjp-stack td::before { content: attr(data-label) ": "; font-weight: 700; }
}

/* ---------------------------------------------------------------- high contrast mode (button in the utility bar) */
html.cjp-hc {
  --cjp-pri: #ffff00;
  --cjp-pri-dark: #000;
  --cjp-pri-soft: #000;
  --cjp-acc: #ffff00;
  --cjp-bg: #000;
  --cjp-card: #000;
  --cjp-ink: #fff;
  --cjp-mute: #fff;
  --cjp-line: #fff;
  --cjp-warn: #ffff00;
  --cjp-on-pri: #000;
  --cjp-focus: #00ffff;
  --bs-body-color: #fff;
  --bs-body-bg: #000;
  --bs-link-color: #ffff00;
  --bs-link-color-rgb: 255, 255, 0;
  --bs-link-hover-color: #fff;
}
html.cjp-hc a { color: #ffff00; text-decoration: underline; }
html.cjp-hc .cjp-util, html.cjp-hc .cjp-foot { color: #fff; border-bottom: 1px solid #fff; }
html.cjp-hc .cjp-util a, html.cjp-hc .cjp-foot a { color: #ffff00; }
html.cjp-hc .cjp-a11y button { color: #fff; border-color: #fff; }
html.cjp-hc .cjp-a11y button[aria-pressed="true"] { background: #ffff00; color: #000; }
html.cjp-hc .cjp-nav { background: #000; border-block: 2px solid #fff; }
html.cjp-hc .cjp-nav__tablink, html.cjp-hc .cjp-nav__burger { color: #fff; }
html.cjp-hc .cjp-nav__tablink[aria-expanded="true"] { background: #ffff00; color: #000; }
html.cjp-hc .cjp-nav__chev { background: transparent; border: 1px solid currentColor; }
html.cjp-hc .cjp-nav__panel { background: #000; color: #fff; border: 2px solid #fff; box-shadow: none; }
html.cjp-hc .cjp-nav__links a { color: #ffff00; border-left-color: #fff; }
html.cjp-hc .cjp-nav__grouptitle, html.cjp-hc .cjp-nav__grouptitle a { color: #fff; }
html.cjp-hc .cjp-banner { background: #000; border-bottom: 2px solid #fff; }
html.cjp-hc .cjp-hero__bg, html.cjp-hc .cjp-hero__art, html.cjp-hc .cjp-hero__wave { display: none; }
html.cjp-hc .cjp-hero h1 span { background: none; color: #ffff00; }
html.cjp-hc .cjp-hero__kicker, html.cjp-hc .cjp-hero__quick a { border-color: #fff; background: #000; color: #fff; }
html.cjp-hc .cjp-hero__search { background: #000; border: 2px solid #fff; box-shadow: none; }
html.cjp-hc .cjp-banner + .cjp-top-a { margin-top: 0; }
html.cjp-hc .cjp-banner + .cjp-top-a .cjp-mod { box-shadow: none; border: 1px solid #fff; }
html.cjp-hc .cjp-card svg { background: #000; color: #ffff00; border: 1px solid #ffff00; }
html.cjp-hc .cjp-pdfbtn, html.cjp-hc .cjp-pdf__btn { background: #000; color: #ffff00; border-color: #ffff00; }
html.cjp-hc .cjp-pdf { background: #000; color: #fff; border: 2px solid #fff; }
html.cjp-hc .cjp-search form, html.cjp-hc .cjp-list__search, html.cjp-hc .cjp-hero__search { border-color: #fff; }
html.cjp-hc .cjp-search button, html.cjp-hc .cjp-list__search button, html.cjp-hc .cjp-hero__search button, html.cjp-hc .btn-primary { background: #ffff00; color: #000; border-color: #ffff00; }
html.cjp-hc input { color: #fff; background: #000; }
html.cjp-hc .cjp-chips a, html.cjp-hc .cjp-article__tags a { background: #000; color: #ffff00; border: 1px solid #ffff00; }
html.cjp-hc .cjp-card strong { color: #ffff00; }
html.cjp-hc img { filter: grayscale(.2) contrast(1.1); }
html.cjp-hc { --bs-secondary-color: #fff; --bs-breadcrumb-item-active-color: #fff; --bs-breadcrumb-divider-color: #fff; }
html.cjp-hc .breadcrumb-item.active { color: #fff; }
html.cjp-hc .cjp-foot .cjp-mod__title { color: #fff; }
html.cjp-hc .cjp-foot .cjp-mod__title::before { background: #ffff00; }
html.cjp-hc .pagenavigation .btn, html.cjp-hc .pagination .page-link { background: #000; color: #ffff00; border-color: #ffff00; }
html.cjp-hc .pagination .active > .page-link { background: #ffff00; color: #000; }

/* ---------------------------------------------------------------- reduced motion (last, so it wins over the rules above) */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .cjp-card, .cjp-card::after, .cjp-card svg, .cjp-nav__chev::before { transition: none; }
  .cjp-card:hover { transform: none; }
  .cjp-hero__bg span, .cjp-hero__kicker::before, .cjp-hero__bar, .cjp-hero__float, .cjp-video__play { animation: none; }
  .cjp-hero__pulse { animation: none; stroke-dashoffset: 0; }
}
html.cjp-hc .cjp-banner, html.cjp-hc .cjp-hero h1, html.cjp-hc .cjp-hero__lead, html.cjp-hc .cjp-hero__quick { color: #fff; }
html.cjp-hc .cjp-hero__quick a:hover { background: #ffff00; color: #000; }
html.cjp-hc .cjp-util__login a { color: #ffff00; }

/* Embedded Google Sheets (private zone): the sheet fills the page like a native part of the site */
.cjp-article:has(.cjp-embed) { padding: 0; border: 0; background: transparent; }
.cjp-article:has(.cjp-embed) .cjp-article__meta { display: none; }
.cjp-article:has(.cjp-embed) .cjp-article__body { max-width: none; }
.cjp-embed { margin: 0 0 .75rem; border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); overflow: hidden; background: #fff; }
.cjp-embed iframe { display: block; width: 100%; height: max(730px, calc(100vh - 10rem)); border: 0; }

/* Layout "sheet": the embedded sheet as a full page, with a slim bar instead of the site header */
body.is-sheet { margin: 0; background: #fff; }
.cjp-sheetpage { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.cjp-sheetpage__in { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
.cjp-sheetbar { display: flex; align-items: center; gap: .75rem 1.25rem; flex-wrap: wrap; padding: .5rem .9rem; background: var(--cjp-pri-dark); color: var(--cjp-on-pri); }
.cjp-sheetbar__back { color: var(--cjp-on-pri); font-weight: 600; text-decoration: underline; white-space: nowrap; }
.cjp-sheetbar__title { margin: 0; color: var(--cjp-on-pri); font-size: 1rem; line-height: 1.3; font-weight: 600; }
.cjp-sheetframe { display: flex; flex: 1 1 auto; min-height: 0; }
.cjp-sheetframe .cjp-embed { flex: 1 1 auto; margin: 0; border: 0; border-radius: 0; }
.cjp-sheetframe .cjp-embed iframe { height: calc(100vh - 3rem); height: calc(100dvh - 3rem); min-height: 480px; }
.cjp-sheetframe .cjp-embed__more { display: none; }
html.cjp-hc .cjp-sheetbar { background: #000; border-bottom: 2px solid #ffff00; }
html.cjp-hc .cjp-sheetbar__back, html.cjp-hc .cjp-sheetbar__title { color: #ffff00; }

/* high contrast: photos and glass are removed, text on plain black */
html.cjp-hc .cjp-head, html.cjp-hc .is-home .cjp-head, html.cjp-hc .is-home .cjp-head.is-scrolled { background: #000; border-bottom: 2px solid #fff; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.cjp-hc .cjp-brand__logo { background: #fff; }
html.cjp-hc .cjp-search form { border: 2px solid #fff; background: #000; }
html.cjp-hc .cjp-search input { color: #fff; }
html.cjp-hc .cjp-search button { background: #ffff00; color: #000; }
html.cjp-hc .cjp-nav__burger { background: #000; border-color: #fff; color: #fff; }
html.cjp-hc .cjp-js .cjp-nav.is-open .cjp-nav__tabs { background: #000; border: 2px solid #fff; }
html.cjp-hc .cjp-hero__shade { display: none; }
html.cjp-hc .cjp-hero h1, html.cjp-hc .cjp-hero__lead { color: #fff; text-shadow: none; }
html.cjp-hc .cjp-hero__search button { background: #ffff00; color: #000; }
html.cjp-hc .cjp-card { background: #000; border: 2px solid #fff; box-shadow: none; }
html.cjp-hc .cjp-card::before { display: none; }
html.cjp-hc .cjp-card__glass { background: #000; border: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.cjp-hc .cjp-card strong { color: #ffff00; }
html.cjp-hc .cjp-card svg { background: #000; color: #ffff00; border: 1px solid #ffff00; }
html.cjp-hc .cjp-news__card { background: #000; border: 2px solid #fff; box-shadow: none; }
html.cjp-hc .cjp-news__date { background: #000; border-color: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.cjp-hc .cjp-news__cat { color: #fff; }
html.cjp-hc .cjp-news__title a { color: #ffff00; }
html.cjp-hc .cjp-pagehead { background: #000; border-bottom: 2px solid #fff; }
html.cjp-hc .cjp-foot { background: #000; }
html.cjp-hc .cjp-article, html.cjp-hc .cjp-list__rows { box-shadow: none; }

.cjp-news__img--none { display: block; width: 100%; aspect-ratio: 3 / 2; background: linear-gradient(135deg, var(--cjp-pri), var(--cjp-pri-dark)); }

/* longer institution name: the brand may wrap on two lines */
.cjp-brand__name { max-width: 13.5rem; }
@media (min-width: 1400px) { .cjp-brand__name { max-width: none; } }
@media (min-width: 1480px) {
  .cjp-nav__chev, .cjp-nav__tablink[aria-expanded="true"] .cjp-nav__chev { width: 1rem; height: 1rem; background: transparent; }
  .cjp-brand__name { max-width: 11rem; }
}
@media (min-width: 1400px) { .cjp-brand__name { max-width: 15rem; } }

/* desktop header on two rows: brand + search, then the tabs on the full width (eleven top-level items do not fit next to the brand) */
@media (min-width: 1480px) {
  :root { --cjp-head-h: 7.4rem; }
  .cjp-head, .cjp-head .is-home { grid-template-columns: auto minmax(0, 1fr); grid-template-rows: 4.1rem 3.3rem; }
  .is-home .cjp-head { grid-template-rows: 4.1rem 3.3rem; }
  .cjp-brand { grid-column: 1; grid-row: 1; min-height: 4.1rem; }
  .cjp-brand__name { max-width: none; }
  .cjp-search, .is-home .cjp-search { display: block; grid-column: 2; grid-row: 1; justify-self: end; width: 18rem; margin: 0; }
  .cjp-head .cjp-nav__tabs, .cjp-js .cjp-head .cjp-nav__tabs { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; border-top: 1px solid rgba(255, 255, 255, .14); }
}

/* ------------------------------------------------------------ filtered document lists (Bilete tratament, Cariera ...), news lists by year, declarations */
.cjp-docs__bar { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .75rem 1rem; margin: 0 0 .5rem; padding: .9rem 1rem; background: var(--cjp-pri-soft); border-radius: var(--cjp-radius); }
.cjp-docs__field { display: flex; flex-direction: column; gap: .25rem; min-width: 9rem; }
.cjp-docs__field:last-of-type { flex: 1 1 14rem; }
.cjp-docs__field label { font-size: .85rem; font-weight: 700; color: var(--cjp-ink); }
.cjp-docs__field select, .cjp-docs__field input { min-height: 44px; padding: .4rem .6rem; border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); font: inherit; color: var(--cjp-ink); background: var(--cjp-card); }
.cjp-docs__bar button { min-height: 44px; padding: 0 1rem; border: 2px solid var(--cjp-pri); border-radius: var(--cjp-radius); background: transparent; color: var(--cjp-pri); font: inherit; font-weight: 600; cursor: pointer; }
.cjp-docs__bar button:hover { background: var(--cjp-pri); color: var(--cjp-on-pri); }
.cjp-docs__year > h2 { margin: 1.4rem 0 .5rem; padding-bottom: .3rem; border-bottom: 2px solid var(--cjp-pri); }
.cjp-docs__grp h3 { margin: 1rem 0 .3rem; font-size: 1.05rem; color: var(--cjp-pri); }
.cjp-docs__grp ul { margin-bottom: .5rem; }
.cjp-list__year { margin: 1.4rem 0 .5rem; padding-bottom: .3rem; border-bottom: 2px solid var(--cjp-pri); font-size: 1.35rem; }
.cjp-decl__year { margin: 1rem 0 .3rem; font-size: 1.35rem; }
.cjp-decl__rows { list-style: none; margin: 0 0 1rem; padding: 0; background: var(--cjp-card); border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); }
.cjp-decl__row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .4rem 1.5rem; padding: .75rem 1rem; border-top: 1px solid var(--cjp-line); }
.cjp-decl__row:first-child { border-top: 0; }
.cjp-decl__who { display: flex; flex-direction: column; flex: 1 1 14rem; }
.cjp-decl__role { font-size: .88rem; color: var(--cjp-mute); }
.cjp-decl__files { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .9rem; }
.cjp-decl__files a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }
html.cjp-hc .cjp-docs__bar { background: #000; border: 1px solid #fff; }
html.cjp-hc .cjp-docs__field label, html.cjp-hc .cjp-docs__grp h3 { color: #ffff00; }
html.cjp-hc .cjp-docs__bar button { border-color: #ffff00; color: #ffff00; }
html.cjp-hc .cjp-decl__rows { box-shadow: none; }
html.cjp-hc .cjp-banner::before { display: none; }

/* declarations: year filter as a list + person page */
.cjp-decl__filter { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin: 0 0 1rem; }
.cjp-decl__filter label { font-weight: 700; }
.cjp-decl__filter select { min-height: 44px; min-width: 8rem; padding: .3rem .8rem; border: 1px solid var(--cjp-line); border-radius: var(--cjp-radius); background: var(--cjp-card); color: inherit; font: inherit; }
.cjp-decl__filter button { min-height: 44px; padding: .3rem 1.1rem; border: 0; border-radius: var(--cjp-radius); background: var(--cjp-pri); color: var(--cjp-on-pri); font: inherit; font-weight: 700; cursor: pointer; }
.cjp-decl__all { margin-top: 1.5rem; }
html.cjp-hc .cjp-decl__filter select, html.cjp-hc .cjp-decl__filter button { background: #000; color: #ffff00; border: 1px solid #ffff00; }

/* header logo: ministry + CNPP on a white plate; compact variant (crest + CNPP) below 1100px */
.cjp-brand__plate { display: block; height: 44px; width: auto; max-width: none; flex: none; }
.cjp-brand__plate--wide { display: none; }
@media (min-width: 1100px) {
  .cjp-brand__plate--wide { display: block; height: 60px; }
  .cjp-brand__plate--compact { display: none; }
}
@media (max-width: 640px) {
  .cjp-brand__text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
html.cjp-hc .cjp-brand__plate { outline: 2px solid #ffff00; }

/* desktop menu: wider header row, equal free space between the top-level items (long labels wrap on two lines) */
@media (min-width: 1480px) {
  .cjp-head { padding-inline: max(24px, calc((100% - 1640px) / 2)); }
  .cjp-head .cjp-nav__tabs, .cjp-js .cjp-head .cjp-nav__tabs { justify-content: space-between; }
  .cjp-head .cjp-nav__tab { flex: 1 1 auto; justify-content: center; }
  .cjp-head .cjp-nav__tablink { max-width: 8.6rem; padding: 0 .55rem; }
}
