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

:root {
  --salubris-pri: #1b5e20;
  --salubris-pri-dark: #144818;
  --salubris-pri-soft: #f1f8e9;
  --salubris-acc: #7cb342;
  --salubris-bg: #f6faf1;
  --salubris-card: #fff;
  --salubris-ink: #1a1a1a;
  --salubris-mute: #4a5566;
  --salubris-line: #d3e0c8;
  --salubris-warn: #b42318;
  --salubris-on-pri: #fff;
  --salubris-focus: #ffbf47;
  --salubris-radius: 6px;
  --salubris-max: 1240px;
  --salubris-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(--salubris-font);
  --bs-body-color: var(--salubris-ink);
  --bs-body-bg: var(--salubris-bg);
  --bs-link-color: var(--salubris-pri);
  --bs-link-color-rgb: 27, 94, 32;
  --bs-link-hover-color: var(--salubris-pri-dark);
  --bs-link-hover-color-rgb: 20, 72, 24;
  --bs-border-color: var(--salubris-line);
}

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

body { margin: 0; font-family: var(--salubris-font); font-size: 1rem; line-height: 1.6; color: var(--salubris-ink); background: var(--salubris-bg); }
a { color: var(--salubris-pri); text-underline-offset: .15em; }
a:hover { color: var(--salubris-pri-dark); }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4 { line-height: 1.25; color: var(--salubris-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(--salubris-focus); outline-offset: 2px; box-shadow: 0 0 0 5px #0b0c0c; }
main:focus { outline: none; box-shadow: none; }

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

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

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

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

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

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

@media (min-width: 992px) {
  .salubris-nav__burger { display: none; } /* on desktop the tabs are always visible */
  .salubris-js .salubris-nav__tabs, .salubris-nav__tabs { display: flex; flex-wrap: wrap; gap: 0 .15rem; padding: 0; }
  .salubris-nav__tab { border: 0; }
  .salubris-nav__tab.has-panel:not(:has(.is-wide)) { position: relative; }
  .salubris-nav__tablink { width: auto; min-height: 52px; padding: .75rem .65rem; gap: .45rem; border-radius: var(--salubris-radius) var(--salubris-radius) 0 0; font-size: .9rem; }
  .salubris-nav__tablink[aria-expanded="true"], .salubris-nav__tab.is-open > .salubris-nav__tablink { background: var(--salubris-card); color: var(--salubris-pri); text-decoration: none; }
  .salubris-nav__tablink[aria-expanded="true"] .salubris-nav__chev { background: var(--salubris-pri-soft); }
  .salubris-nav__chev { width: 1.35rem; height: 1.35rem; }
  /* the white tab is joined to the panel below it */
  .salubris-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(--salubris-pri); border-radius: 0 var(--salubris-radius) var(--salubris-radius) var(--salubris-radius); box-shadow: 0 12px 24px rgba(10, 40, 14, .18); }
  .salubris-nav__tab:nth-last-child(-n+3) .salubris-nav__panel:not(.is-wide) { left: auto; right: 0; border-radius: var(--salubris-radius) 0 var(--salubris-radius) var(--salubris-radius); }
  .salubris-nav__panel.is-wide { left: 24px; right: 24px; max-width: none; border-radius: 0 0 var(--salubris-radius) var(--salubris-radius); }
  .salubris-nav__cols { columns: 2 14rem; column-gap: 2rem; }
  .salubris-nav__panel.is-wide .salubris-nav__cols { columns: 4 13rem; }
  .salubris-nav__links a, .salubris-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(.salubris-js) .salubris-nav__panel { display: none; }
  html:not(.salubris-js) .salubris-nav__tab:hover > .salubris-nav__panel, html:not(.salubris-js) .salubris-nav__tab:focus-within > .salubris-nav__panel { display: block; }
}

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

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

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

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

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

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

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

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

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

/* campaign videos: the YouTube player is loaded only after a click (no request to YouTube before) */
.salubris-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, #1b5e20 60%, #33691e); }
.salubris-mod--videos .salubris-mod__title { color: #fff; }
.salubris-mod--videos .salubris-mod__title::before { background: #aed581; }
.salubris-videos { display: grid; gap: .9rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.salubris-video { position: relative; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #0a2a0d; }
.salubris-video--main { grid-column: 1 / -1; }
@media (min-width: 992px) { .salubris-videos { grid-template-columns: 2fr 1fr 1fr; grid-template-rows: auto auto; } .salubris-video--main { grid-column: 1; grid-row: 1 / span 2; } }
.salubris-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); }
.salubris-video__poster:hover, .salubris-video__poster:focus-visible { color: #fff; }
.salubris-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: salubris-ping-white 2.6s ease-out infinite; }
.salubris-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 #1b5e20; }
.salubris-video--main .salubris-video__play { width: 5.5rem; height: 5.5rem; margin: -2.75rem 0 0 -2.75rem; }
.salubris-video--main .salubris-video__play::before { left: 2.1rem; top: 1.6rem; border-width: 1.15rem 0 1.15rem 1.8rem; }
.salubris-video__poster:hover .salubris-video__play { transform: scale(1.08); }
@keyframes salubris-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); } }
.salubris-video__label { position: relative; font-weight: 700; font-size: .95rem; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }
.salubris-video__label small { display: block; font-weight: 400; font-size: .75rem; opacity: .9; }
.salubris-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.salubris-videos__note { margin: .9rem 0 0; font-size: .8rem; color: rgba(255, 255, 255, .85); }
html.salubris-hc .salubris-mod--videos { background: #000; border: 2px solid #fff; }
html.salubris-hc .salubris-video__poster { background: #000; border: 1px solid #ffff00; }

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

/* PDF preview button and dialog */
.salubris-pdfbtn { display: inline-flex; align-items: center; gap: .3rem; min-height: 36px; margin: .15rem 0 .15rem .5rem; padding: .15rem .7rem; border: 1px solid var(--salubris-pri); border-radius: 999px; background: var(--salubris-card); color: var(--salubris-pri); font: inherit; font-size: .8rem; font-weight: 600; vertical-align: middle; cursor: pointer; }
.salubris-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; }
.salubris-pdfbtn:hover { background: var(--salubris-pri); color: var(--salubris-on-pri); }
.salubris-noscroll { overflow: hidden; }
.salubris-pdf { width: min(1100px, 96vw); height: min(92vh, 1000px); max-width: none; max-height: none; padding: 0; border: 0; border-radius: 12px; background: var(--salubris-card); color: var(--salubris-ink); box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.salubris-pdf[open] { display: flex; flex-direction: column; }
.salubris-pdf::backdrop { background: rgba(8, 30, 12, .72); }
.salubris-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(--salubris-line); }
.salubris-pdf__title { margin: 0; font-size: 1rem; flex: 1 1 14rem; overflow-wrap: anywhere; }
.salubris-pdf__actions { display: flex; flex-wrap: wrap; gap: .4rem; }
.salubris-pdf__btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 .9rem; border: 1px solid var(--salubris-pri); border-radius: var(--salubris-radius); background: var(--salubris-card); color: var(--salubris-pri); font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; }
.salubris-pdf__btn:hover, .salubris-pdf__btn--close { background: var(--salubris-pri); color: var(--salubris-on-pri); }
.salubris-pdf__hint { margin: 0; padding: .35rem 1rem; font-size: .8rem; color: var(--salubris-mute); }
.salubris-pdf__frame { flex: 1; width: 100%; border: 0; background: #525659; }

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

/* ---------------------------------------------------------------- footer */
.salubris-foot { background: var(--salubris-pri-dark); color: var(--salubris-on-pri); font-size: .9rem; }
.salubris-foot a { color: var(--salubris-on-pri); }
.salubris-foot__in { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1.25rem 2rem; padding-top: 2rem; padding-bottom: 1rem; }
.salubris-foot .salubris-mod__title { color: var(--salubris-on-pri); font-size: 1rem; }
.salubris-foot .salubris-mod__title::before { background: var(--salubris-on-pri); }
.salubris-foot ul { list-style: none; margin: 0; padding: 0; }
.salubris-foot li { padding: .2rem 0; }
.salubris-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); }
.salubris-foot__legal p { margin: 0; }

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

/* ================================================================ direction B (28.10.2026): photographic hero, glass layers, picture cards.
   Photos: stock photos from pexels.com (free licence), WebP in ../images/photos. White text on photos always sits on a dark green gradient. */
:root {
  --salubris-head-h: 4.5rem;
  --salubris-night: #08210d;
  --salubris-glass: rgba(255, 255, 255, .13);
  --salubris-glass-dark: rgba(8, 33, 13, .46);
  --salubris-glass-line: rgba(255, 255, 255, .26);
  --salubris-shadow: 0 18px 44px rgba(8, 33, 13, .16);
  --salubris-radius: 12px;
}
body { letter-spacing: .003em; }
h1, h2, h3 { letter-spacing: -.012em; }
.salubris-mod__title { font-size: 1.35rem; margin-bottom: 1rem; }

/* utility bar */
.salubris-util { background: #061a0a; font-size: .8rem; }
.salubris-util a { text-decoration: none; }
.salubris-util a:hover { text-decoration: underline; color: #fff; }
.salubris-util__account { display: flex; align-items: center; gap: .9rem; margin-left: auto; }
.salubris-util__account form { margin: 0; }
.salubris-util__account a, .salubris-util__logout { display: inline-flex; align-items: center; min-height: 44px; }
.salubris-util__logout { padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.salubris-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) */
.salubris-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, #0a2a0f); box-shadow: 0 1px 0 rgba(255, 255, 255, .08), 0 12px 30px rgba(4, 18, 7, .28); -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); transition: background .3s, box-shadow .3s; }
.salubris-head__in { display: contents; }
.salubris-head .salubris-nav, .salubris-head .salubris-nav > .salubris-container { display: contents; }
.is-home .salubris-head { height: var(--salubris-head-h); grid-template-rows: var(--salubris-head-h); margin-bottom: calc(var(--salubris-head-h) * -1); background: linear-gradient(180deg, rgba(4, 20, 8, .62), rgba(4, 20, 8, 0)); box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.is-home .salubris-head.is-scrolled { background: rgba(8, 33, 13, .8); box-shadow: 0 1px 0 rgba(255, 255, 255, .1), 0 14px 34px rgba(4, 18, 7, .3); -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); }
.salubris-brand { grid-column: 1; grid-row: 1; min-height: var(--salubris-head-h); color: #fff; }
.salubris-brand:hover { color: #fff; }
.salubris-brand__logo { width: 44px; height: 44px; padding: 4px; border-radius: 12px; background: #fff; box-sizing: border-box; }
.salubris-brand__name { font-size: 1.02rem; letter-spacing: -.005em; }
.salubris-brand__tagline { display: none; color: rgba(255, 255, 255, .72); }
.salubris-partner { display: none; }
.salubris-search { grid-column: 1 / -1; grid-row: 2; max-width: none; margin: 0 0 .5rem; }
.is-home .salubris-search { display: none; }
.salubris-search form { border: 1px solid var(--salubris-glass-line); border-radius: 999px; background: var(--salubris-glass); }
.salubris-search input { color: #fff; padding-inline: 1.1rem .5rem; }
.salubris-search input::placeholder { color: rgba(255, 255, 255, .78); }
.salubris-search button { background: var(--salubris-acc); color: #0b2a10; border-radius: 0 999px 999px 0; }
.salubris-search button:hover { background: #aed581; }

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

@media (min-width: 992px) {
  .salubris-head { grid-template-columns: auto minmax(0, 1fr); column-gap: 1.5rem; min-height: var(--salubris-head-h); padding-block: 0; padding-inline: max(24px, calc((100% - var(--salubris-max)) / 2 + 24px)); }
  .salubris-brand__logo { width: 48px; height: 48px; }
  .salubris-brand__name { font-size: 1.12rem; }
  .salubris-head .salubris-nav__tabs, .salubris-js .salubris-head .salubris-nav__tabs { grid-column: 2; grid-row: 1; align-self: stretch; justify-content: flex-end; flex-wrap: nowrap; gap: 0; }
  .salubris-nav__tab { display: flex; }
  .salubris-nav__tablink { align-self: stretch; align-items: center; min-height: 0; padding: 0 .75rem; white-space: nowrap; border-radius: 0; font-size: .93rem; }
  .salubris-nav__tab.is-open > .salubris-nav__tablink, .salubris-nav__tablink[aria-expanded="true"] { background: rgba(255, 255, 255, .14); color: #fff; }
  .salubris-nav__tablink[aria-expanded="true"] .salubris-nav__chev { background: rgba(255, 255, 255, .24); }
  .salubris-nav__tab.is-active > .salubris-nav__tablink { box-shadow: inset 0 -3px 0 var(--salubris-acc); }
  .salubris-nav__panel { background: rgba(255, 255, 255, .97); border: 0; border-bottom: 3px solid var(--salubris-acc); border-radius: 0 0 16px 16px; box-shadow: 0 24px 50px rgba(4, 18, 7, .3); }
  .salubris-nav__tab:nth-last-child(-n+3) .salubris-nav__panel:not(.is-wide) { border-radius: 0 0 16px 16px; }
  .salubris-nav__panel.is-wide { left: 50%; right: auto; width: min(var(--salubris-max), calc(100vw - 48px)); transform: translateX(-50%); border-radius: 0 0 20px 20px; }
  .salubris-search { grid-column: 1 / -1; grid-row: 2; max-width: 26rem; margin: 0 0 .6rem auto; width: 100%; }
  .salubris-search form { min-height: 44px; }
}
@media (min-width: 1200px) {
  .salubris-head { grid-template-columns: auto minmax(0, 1fr) auto; }
  .salubris-search { grid-column: 3; grid-row: 1; width: 13rem; max-width: none; margin: 0; }
}
@media (min-width: 1400px) { .salubris-brand__tagline { display: block; } }

/* ---------------------------------------------------------------- home: photo hero */
.salubris-banner { position: relative; isolation: isolate; overflow: hidden; color: #fff; background-color: var(--salubris-night); }
/* the photo is mirrored so that the truck sits on the right, away from the text */
.salubris-banner::before { content: ""; position: absolute; inset: 0; z-index: -2; background: url("../images/photos/hero-mobile.webp") 30% 82% / cover no-repeat; transform: scaleX(-1); }
@media (min-width: 768px) { .salubris-banner::before { background-image: url("../images/photos/hero.webp"); } }
.salubris-hero__shade { position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, rgba(5, 22, 9, .6) 0%, rgba(5, 22, 9, .15) 30%, rgba(5, 22, 9, .25) 62%, rgba(5, 22, 9, .88) 100%), linear-gradient(90deg, rgba(5, 26, 10, .92) 0%, rgba(5, 26, 10, .68) 50%, rgba(5, 26, 10, .08) 100%); }
@media (max-width: 767px) { .salubris-hero__shade { background: linear-gradient(180deg, rgba(5, 22, 9, .72) 0%, rgba(5, 22, 9, .6) 45%, rgba(5, 22, 9, .92) 100%), linear-gradient(90deg, rgba(5, 26, 10, .55), rgba(5, 26, 10, .45)); } }
.salubris-hero { display: flex; align-items: center; min-height: min(88vh, 46rem); padding-block: calc(var(--salubris-head-h) + 2.5rem) 9rem; }
.salubris-hero__text { width: 100%; min-width: 0; max-width: 46rem; }
.salubris-hero__kicker { display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1.1rem; padding: .4rem 1rem; border: 1px solid var(--salubris-glass-line); border-radius: 999px; background: var(--salubris-glass); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); color: #fff; font-size: .82rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
.salubris-hero__kicker::before { content: ""; width: .5rem; height: .5rem; border-radius: 50%; background: #aed581; animation: salubris-ping 2.4s ease-out infinite; }
@keyframes salubris-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) { .salubris-hero__kicker::before { animation: none; } }
.salubris-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); }
.salubris-hero h1 span { background: linear-gradient(90deg, #d7efb5, #fff 90%); -webkit-background-clip: text; background-clip: text; color: transparent; text-shadow: none; }
.salubris-hero__lead { max-width: 44ch; margin: 0 0 1.75rem; font-size: 1.12rem; color: rgba(255, 255, 255, .92); }
.salubris-hero__search { max-width: 40rem; padding: .4rem; border: 1px solid var(--salubris-glass-line); border-radius: 999px; background: var(--salubris-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; }
.salubris-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; }
.salubris-hero__search button { min-height: 54px; min-width: 6rem; border-radius: 0 999px 999px 0; background: var(--salubris-acc); color: #0b2a10; font-weight: 700; }
.salubris-hero__search button:hover { background: #aed581; }
.salubris-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); }
.salubris-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(--salubris-glass-line); background: var(--salubris-glass); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); color: #fff; }
.salubris-hero__quick a:hover { background: #fff; color: var(--salubris-pri-dark); }
.salubris-hero__wave, .salubris-hero__art, .salubris-hero__bg { display: none; }

/* picture cards that overlap the bottom of the hero */
.salubris-top-b { position: relative; z-index: 5; margin-top: -7.5rem; }
.salubris-top-b > .salubris-mod { margin-bottom: 0; }
.salubris-top-b .salubris-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); }
.salubris-top-b .salubris-mod__title::before { background: #aed581; }
.salubris-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) { .salubris-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.salubris-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(--salubris-shadow); transition: transform .25s, box-shadow .25s; }
.salubris-card::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(4, 20, 8, .05) 25%, rgba(4, 20, 8, .75) 100%), var(--photo) center / cover no-repeat; transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
.salubris-card:hover { color: #fff; transform: translateY(-4px); box-shadow: 0 26px 54px rgba(8, 33, 13, .3); }
.salubris-card:hover::before { transform: scale(1.07); }
.salubris-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(--salubris-pri-dark); font-weight: 700; opacity: 0; transform: translate(-6px, 6px); transition: opacity .25s, transform .25s; }
.salubris-card:hover::after, .salubris-card:focus-visible::after { opacity: 1; transform: none; }
.salubris-card__glass { display: flex; align-items: center; gap: .85rem; width: 100%; padding: .8rem .95rem; border: 1px solid var(--salubris-glass-line); border-radius: 15px; background: var(--salubris-glass-dark); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%); }
.salubris-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; }
.salubris-card:hover svg { background: #fff; color: var(--salubris-pri-dark); }
.salubris-card strong { display: block; font-size: 1.05rem; line-height: 1.25; color: #fff; }
.salubris-card__txt span { display: block; margin-top: .1rem; font-size: .85rem; line-height: 1.35; color: rgba(255, 255, 255, .88); }
.salubris-card--hotarari { --photo: url("../images/photos/hotarari.webp"); }
.salubris-card--contracte { --photo: url("../images/photos/contracte.webp"); }
.salubris-card--cantitati { --photo: url("../images/photos/cantitati.webp"); }
.salubris-card--tarife { --photo: url("../images/photos/tarife.webp"); }
.salubris-card--consultari { --photo: url("../images/photos/consultari.webp"); }
.salubris-card--selectiva { --photo: url("../images/photos/selectiva.webp"); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .salubris-card__glass { background: rgba(8, 33, 13, .82); }
  .salubris-hero__search, .salubris-hero__kicker, .salubris-hero__quick a { background: rgba(8, 33, 13, .55); }
  .salubris-head, .is-home .salubris-head.is-scrolled { background: #0a2a0f; }
}

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

/* inner pages: breadcrumbs on a photo band, softer cards */
.salubris-pagehead { padding: 1.1rem 0 1.25rem; color: #fff; background-color: var(--salubris-night); background-size: cover; background-position: center 55%; background-image: linear-gradient(90deg, rgba(5, 26, 10, .93), rgba(5, 26, 10, .6)), url("../images/photos/hero-mobile.webp"); }
.salubris-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; }
.salubris-pagehead a { color: #fff; }
.salubris-pagehead .mod-breadcrumbs__wrapper, .salubris-pagehead .mod-breadcrumbs { margin: 0; }
.salubris-article, .salubris-list__rows, .salubris-error { border-radius: 20px; box-shadow: 0 8px 28px rgba(8, 33, 13, .07); }
.salubris-page { padding-top: 1.75rem; }
.is-home .salubris-page { padding-top: 0; }
.com-content-category h1, .salubris-article__head h1 { font-size: clamp(1.7rem, 1.2rem + 1.6vw, 2.3rem); letter-spacing: -.02em; }

/* footer: photo under a deep green veil */
.salubris-foot { background: linear-gradient(rgba(4, 20, 8, .93), rgba(4, 20, 8, .97)), url("../images/photos/peisaj.webp") center / cover no-repeat; }
.salubris-foot .salubris-mod__title { font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; }
.salubris-foot__in { padding-top: 2.75rem; }

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

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

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

.salubris-article__body td, .salubris-article__body th { overflow-wrap: normal; }
.salubris-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) {
  .salubris-stack, .salubris-stack tbody, .salubris-stack tr, .salubris-stack th, .salubris-stack td { display: block; width: auto; }
  .salubris-stack caption { display: block; width: auto; padding: 0 0 .5rem; text-align: left; font-weight: 700; }
  .salubris-stack thead { position: absolute; left: -9999px; }
  .salubris-stack tr { margin: 0 0 .8rem; padding: .6rem .85rem; border: 1px solid var(--salubris-line); border-radius: var(--salubris-radius); background: var(--salubris-card); }
  .salubris-stack th[scope="row"] { padding: 0 0 .3rem; border: 0; font-size: 1.05rem; }
  .salubris-stack td { padding: .15rem 0; border: 0; }
  .salubris-stack td::before { content: attr(data-label) ": "; font-weight: 700; }
}

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

/* Embedded Google Sheets (private zone): the sheet fills the page like a native part of the site */
.salubris-article:has(.salubris-embed) { padding: 0; border: 0; background: transparent; }
.salubris-article:has(.salubris-embed) .salubris-article__meta { display: none; }
.salubris-article:has(.salubris-embed) .salubris-article__body { max-width: none; }
.salubris-embed { margin: 0 0 .75rem; border: 1px solid var(--salubris-line); border-radius: var(--salubris-radius); overflow: hidden; background: #fff; }
.salubris-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; }
.salubris-sheetpage { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.salubris-sheetpage__in { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
.salubris-sheetbar { display: flex; align-items: center; gap: .75rem 1.25rem; flex-wrap: wrap; padding: .5rem .9rem; background: var(--salubris-pri-dark); color: var(--salubris-on-pri); }
.salubris-sheetbar__back { color: var(--salubris-on-pri); font-weight: 600; text-decoration: underline; white-space: nowrap; }
.salubris-sheetbar__title { margin: 0; color: var(--salubris-on-pri); font-size: 1rem; line-height: 1.3; font-weight: 600; }
.salubris-sheetframe { display: flex; flex: 1 1 auto; min-height: 0; }
.salubris-sheetframe .salubris-embed { flex: 1 1 auto; margin: 0; border: 0; border-radius: 0; }
.salubris-sheetframe .salubris-embed iframe { height: calc(100vh - 3rem); height: calc(100dvh - 3rem); min-height: 480px; }
.salubris-sheetframe .salubris-embed__more { display: none; }
html.salubris-hc .salubris-sheetbar { background: #000; border-bottom: 2px solid #ffff00; }
html.salubris-hc .salubris-sheetbar__back, html.salubris-hc .salubris-sheetbar__title { color: #ffff00; }

/* high contrast: photos and glass are removed, text on plain black */
html.salubris-hc .salubris-head, html.salubris-hc .is-home .salubris-head, html.salubris-hc .is-home .salubris-head.is-scrolled { background: #000; border-bottom: 2px solid #fff; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.salubris-hc .salubris-brand__logo { background: #fff; }
html.salubris-hc .salubris-search form { border: 2px solid #fff; background: #000; }
html.salubris-hc .salubris-search input { color: #fff; }
html.salubris-hc .salubris-search button { background: #ffff00; color: #000; }
html.salubris-hc .salubris-nav__burger { background: #000; border-color: #fff; color: #fff; }
html.salubris-hc .salubris-js .salubris-nav.is-open .salubris-nav__tabs { background: #000; border: 2px solid #fff; }
html.salubris-hc .salubris-hero__shade { display: none; }
html.salubris-hc .salubris-hero h1, html.salubris-hc .salubris-hero__lead { color: #fff; text-shadow: none; }
html.salubris-hc .salubris-hero__search button { background: #ffff00; color: #000; }
html.salubris-hc .salubris-card { background: #000; border: 2px solid #fff; box-shadow: none; }
html.salubris-hc .salubris-card::before { display: none; }
html.salubris-hc .salubris-card__glass { background: #000; border: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.salubris-hc .salubris-card strong { color: #ffff00; }
html.salubris-hc .salubris-card svg { background: #000; color: #ffff00; border: 1px solid #ffff00; }
html.salubris-hc .salubris-news__card { background: #000; border: 2px solid #fff; box-shadow: none; }
html.salubris-hc .salubris-news__date { background: #000; border-color: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
html.salubris-hc .salubris-news__cat { color: #fff; }
html.salubris-hc .salubris-news__title a { color: #ffff00; }
html.salubris-hc .salubris-pagehead { background: #000; border-bottom: 2px solid #fff; }
html.salubris-hc .salubris-foot { background: #000; }
html.salubris-hc .salubris-article, html.salubris-hc .salubris-list__rows { box-shadow: none; }
/* meniul de pe telefon derulează în interiorul lui, pentru că antetul este sticky */
@media (max-width: 991.98px) {
  .salubris-js .salubris-nav.is-open .salubris-nav__tabs {
    max-height: calc(100vh - var(--salubris-head-h) - 1.5rem);
    max-height: calc(100dvh - var(--salubris-head-h) - 1.5rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
}
