/* ==========================================================================
   Morad Foods — Design System (Archivo display + Poppins corporate)
   Casă de branduri FMCG. Editorial, premium, verde de brand.
   ========================================================================== */

:root {
	/* Paletă */
	--forest: #128D40;          /* verde benzi (20 iul. 2026): #0DB14B exact era prea strident — ton intermediar ales de Vlad; alb pe el ≈4.3:1 */
	--green: #0DB14B;
	--green-deep: #01693A;
	--green-soft: #EEF6EC;
	--brass: #C2A06B;          /* accent premium, restrâns (fundaluri deschise) */
	--brass-bright: #e8b657;   /* auriul pentru fundalurile verzi (cerință Vlad, 30 iul. 2026; înainte #F1E0B9) */
	--bone: #F6F7F2;
	--ink: #16201A;
	--muted: #6A726C;      /* audit 17 aug. 2026: #6E7670 dădea 4,40:1 pe fundalul paginii, sub AA; nuanța asta dă 4,66:1 și e practic identică vizual */
	--line: #E4E6DF;
	--white: #ffffff;

	/* Trepte piramidă (light premium -> dark economy) */
	--t-premium: #E8F0D6;
	--t-upper:   #C4E0A2;
	--t-main:    #84C98A;
	--t-afford:  #3BC16F;   /* intermediar între --t-main și --t-economy (progresia se termină pe verdele Morad) */
	--t-economy: #128D40;

	/* Tipografie */
	/* Archivo (grotesc) a înlocuit Fraunces (serif) pe 30 iul. 2026. Rezerva TREBUIE
	   să fie sans — cu Georgia/serif, o pagină fără fontul încărcat comuta pe alt registru. */
	--display: 'Archivo', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	--sans: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

	/* Spațiere & forme */
	--container: 1180px;
	--radius: 14px;
	--radius-lg: 24px;
	--shadow: 0 14px 40px rgba(13, 54, 25, .09);
	--shadow-hi: 0 26px 60px rgba(13, 54, 25, .16);
}

/* --- Base ---------------------------------------------------------------- */
body,
button, input, select, textarea,
.entry-content {
	font-family: var(--sans);
	color: var(--ink);
	font-weight: 400;
}
body { background: var(--white); }

/* Tracking-ul era −0.015em, calibrat pe Fraunces (serif, literă lată). Archivo e
   grotesc, cu literele deja apropiate: la aceeași valoare se înghesuie. */
h1, h2, h3, h4, h5, h6, .entry-title, .site-title { font-family: var(--display); color: var(--ink); font-weight: 600; line-height: 1.1; letter-spacing: -0.008em; }

/* body a — bate CSS-ul inline GeneratePress (a{text-decoration:underline}) */
body a { color: var(--green-deep); text-decoration: none; }
body a:hover { color: var(--green); }
/* underline doar pe link-urile din proză (accesibilitate) */
.entry-content a:not(.morad-btn), .morad-page__intro a, .morad-about__body a { text-decoration: underline; text-underline-offset: 3px; }

::selection { background: var(--green); color: #fff; }

/* --- Butoane ------------------------------------------------------------- */
.morad-btn {
	display: inline-flex; align-items: center; gap: .55rem;
	font-family: var(--sans); font-weight: 600; font-size: .98rem; line-height: 1;
	padding: 1rem 1.7rem; border-radius: 999px; cursor: pointer;
	/* Umplerea e `--green-deep`, nu `--green` (18 aug. 2026, decizie Vlad): alb pe
	   verdele deschis de brand dă 2,83:1, iar textul butonului are 15,7px, deci sub
	   pragul AA de 4,5. Pe verdele închis raportul urcă la 6,8:1. Verdele deschis
	   rămâne pe suprafețele mari și pe elementele decorative. */
	background: var(--green-deep); color: #fff; border: 1.5px solid var(--green-deep);
	transition: transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
	box-shadow: 0 8px 22px rgba(1, 105, 58, .24);
}
.morad-btn:hover { background: #01512D; border-color: #01512D; color: #fff; transform: translateY(-2px); box-shadow: 0 12px 28px rgba(1, 105, 58, .34); }
.morad-btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); box-shadow: none; }
.morad-btn--ghost:hover { background: rgba(255,255,255,.12); border-color: #fff; color: #fff; }
.morad-btn--outline { background: transparent; color: var(--green-deep); border-color: var(--green); box-shadow: none; }
.morad-btn--outline:hover { background: var(--green-deep); color: #fff; }

/* --- Header & nav (slim, sticky, premium) -------------------------------- */
.site-header {
	position: sticky; top: 0; z-index: 999;
	background: rgba(255, 255, 255, .82);
	border-bottom: 1px solid var(--line);
	box-shadow: 0 2px 14px rgba(13, 54, 25, .05);
	transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
	transform: translateZ(0); /* layer GPU — evită flicker-ul la scroll */
}
.site-header .inside-header { padding-top: 10px; padding-bottom: 10px; align-items: center; }
/* Logo mai mare cât pagina e sus (50px × 1.2 = 60px), revine la dimensiunea de bază
   după scroll, odată cu bara solidă. Header-ul e sticky, deci scurtarea nu mișcă
   conținutul paginii. Tranziția e anulată automat de regula reduced-motion. */
.site-logo img, .site-header .header-image {
	max-height: 60px; width: auto;
	transition: max-height .28s ease;
}
.morad-nav-solid .site-logo img, .morad-nav-solid .site-header .header-image { max-height: 50px; }
.site-header .main-title, .site-header .site-description {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(1px,1px,1px,1px); white-space: nowrap;
}

/* Top-level nav (specificitate ridicată ca să batem înălțimea implicită GeneratePress) */
.main-navigation .main-nav ul li a { font-family: var(--sans); font-weight: 500; letter-spacing: .015em; }
.site-header .main-navigation .main-nav > ul > li > a { font-size: .9rem; line-height: 50px; padding: 0 15px; position: relative; }
/* `sfHover` e clasa pusă de GeneratePress pe itemul cu submeniu deschis prin
   tastatură sau prin tap pe tabletă. Fără ea în listă, GP îi aplică albastrul
   lui implicit (--accent: #1e73be) în locul verdelui nostru. */
.main-navigation .main-nav > ul > li > a:hover,
.main-navigation .main-nav > ul > li.sfHover > a,
.main-navigation .main-nav ul li.current-menu-item > a { color: var(--green) !important; }
/* underline brass animat la hover (exceptând CTA) */
.main-navigation .main-nav > ul > li:not(.morad-nav-cta) > a::after {
	content: ""; position: absolute; left: 15px; right: 15px; bottom: 9px; height: 1.5px;
	background: var(--brass); transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
.main-navigation .main-nav > ul > li:not(.morad-nav-cta):hover > a::after,
.main-navigation .main-nav > ul > li.sfHover:not(.morad-nav-cta) > a::after,
.main-navigation .main-nav > ul > li.current-menu-item:not(.morad-nav-cta) > a::after { transform: scaleX(1); }

/* Dropdown — card premium */
.main-navigation .main-nav ul ul {
	background: #fff; border: 1px solid var(--line); border-top: 2px solid var(--brass);
	border-radius: 12px; box-shadow: var(--shadow); padding: 8px; min-width: 248px; margin-top: 4px;
}
/* Punte transparentă peste spațiul de 4px: pe desktop deschiderea e pur CSS
   (:hover), deci fără ea cursorul iese din li în drum spre panou și dropdown-ul
   se închide. Doar pe desktop — în meniul mobil panoul e în flux normal și
   banda ar înghiți tapul pe marginea de jos a itemului părinte. */
@media (min-width: 769px) {
	.main-navigation:not(.toggled) .main-nav ul ul::before {
		content: ""; position: absolute; inset-inline: 0; top: -6px; height: 6px;
	}
}
.main-navigation .main-nav ul ul li a {
	line-height: 1.35; padding: 11px 14px; border-radius: 8px; font-size: .9rem; font-weight: 500;
}
.main-navigation .main-nav ul ul li a::after { display: none; }
.main-navigation .main-nav ul ul li a:hover,
.main-navigation .main-nav ul ul li.sfHover > a,
.main-navigation .main-nav ul ul li a:focus-visible { background: var(--green-soft); color: var(--green-deep) !important; }

/* GeneratePress deschide dropdown-ul doar la :hover, deci cu Tab ajungeai pe
   linkuri invizibile (panoul stă la left:-99999px, dar rămâne în ordinea de
   tabulare). Aceleași declarații ca la hover, plus focus. */
.main-navigation:not(.toggled) ul li:focus-within > ul {
	left: auto; opacity: 1; pointer-events: auto; height: auto; overflow: visible;
}

/* Dropdown „Brandurile noastre" — lista brandurilor active, fiecare cu bulina
   propriei culori de identitate (variabila vine din ACF, vezi
   morad_nav_brand_link_atts). Numele nu se rup pe două rânduri. */
.main-navigation .main-nav ul li.morad-nav-branduri ul { min-width: 264px; }
.main-navigation .main-nav ul ul li.morad-nav-brand a {
	display: flex; align-items: center; gap: .62rem; white-space: nowrap;
}
.main-navigation .main-nav ul ul li.morad-nav-brand a::before {
	content: ""; flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%;
	background: var(--brand-dot, var(--brass));
	box-shadow: inset 0 0 0 1px rgba(13, 54, 25, .14);
}
/* Pe pagina unui brand rămâne marcat și părintele din nav. */
.main-navigation .main-nav ul li.current-menu-ancestor > a { color: var(--green) !important; }
.main-navigation .main-nav > ul > li.current-menu-ancestor:not(.morad-nav-cta) > a::after { transform: scaleX(1); }

/* Contact ca buton CTA în nav — pastilă PLINĂ (17 aug. 2026, cerință Vlad: perechea
   se citește mai bine cu Contact plin și Sesizări în contur).
   Verdele e `--green-deep`, nu `--green`: textul din nav are 14,4px/600, deci alb pe
   #0DB14B dă 2,9:1 și pică AA. Pe #01693A dă 6,7:1, iar culoarea o avea oricum textul
   butonului înainte. La hover NU se schimbă fondul, ci se adaugă umbră: orice verde
   mai deschis ar strica din nou contrastul. */
.main-navigation .main-nav ul li.morad-nav-cta { display: flex; align-items: center; }
.main-navigation .main-nav ul li.morad-nav-cta a {
	color: #fff !important; background: var(--green-deep); border: 1.5px solid var(--green-deep); border-radius: 999px;
	padding: 9px 20px; line-height: 1; margin-inline-start: 8px; font-weight: 600;
	transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.main-navigation .main-nav ul li.morad-nav-cta a:hover {
	background: var(--green-deep); color: #fff !important; border-color: var(--green);
	box-shadow: 0 6px 18px rgba(1, 105, 58, .30);
}

/* --- Header transparent peste hero (doar homepage) ----------------------- */
.home .site-header {
	position: fixed; left: 0; right: 0; top: var(--topbar-h, 40px);
	background: rgba(255, 255, 255, 0);
	border-bottom-color: transparent;
	box-shadow: none;
}
/* tranziție lină a culorii textului din nav la trecerea transparent → solid */
.home .main-navigation .main-nav > ul > li > a,
.home .site-logo img { transition: color .3s ease, filter .3s ease; }
/* navigația GeneratePress are fundal alb implicit — îl facem transparent peste hero */
.home .main-navigation,
.home .main-navigation .inside-navigation { background: transparent; }
/* ...DAR nu și când meniul de telefon e deschis: transparent, intrările cădeau direct
   peste video și peste titlul din hero, ilizibile (semnalat 17 aug. 2026). Panoul
   deschis redevine suprafață solidă, cu text închis, ca pe restul paginilor.
   `:not(.mobile-menu-control-wrapper)` e OBLIGATORIU: butonul hamburger stă într-un
   <nav> propriu care poartă tot clasa `main-navigation` și primește tot `.toggled`,
   deci fără excepție îi picta un pătrat alb sub X-ul alb. */
.home .main-navigation.toggled:not(.mobile-menu-control-wrapper),
.home .main-navigation.toggled:not(.mobile-menu-control-wrapper) .inside-navigation,
.home .main-navigation.toggled:not(.mobile-menu-control-wrapper) .main-nav,
.home .main-navigation.toggled:not(.mobile-menu-control-wrapper) .main-nav > ul { background: #fff; }
.home .main-navigation.toggled:not(.mobile-menu-control-wrapper) { box-shadow: 0 18px 34px rgba(13, 54, 25, .16); }
.home .main-navigation.toggled .main-nav > ul > li > a { color: var(--ink); text-shadow: none; }
.home .main-navigation.toggled .main-nav ul li.morad-nav-cta a { background: var(--green-deep); color: #fff !important; border-color: var(--green-deep); text-shadow: none; }
.home .main-navigation.toggled .main-nav ul li.morad-nav-cta-soft a { background: transparent; color: var(--green-deep) !important; border-color: var(--green); }
.home .main-navigation.mobile-menu-control-wrapper.toggled { background: transparent; box-shadow: none; }
.home .site-logo img { filter: brightness(0) invert(1) drop-shadow(0 1px 6px rgba(0,0,0,.35)); transition: filter .3s ease; }
/* Hamburgerul de pe homepage (reparat 17 aug. 2026): GeneratePress își scrie în
   <head> `.main-navigation .menu-toggle { color: var(--contrast) }`, adică ACEEAȘI
   specificitate ca `.home .menu-toggle`, dar mai târziu în cascadă — deci câștiga el
   și butonul rămânea gri închis peste video, practic invizibil pe telefon. Selector cu
   o clasă în plus, plus umbra pe care o are și logo-ul, pentru cadrele deschise. */
.home .main-navigation .menu-toggle,
.home .main-navigation .menu-toggle:hover,
.home .main-navigation .menu-toggle:focus {
	color: #fff; background: transparent; filter: drop-shadow(0 1px 6px rgba(0,0,0,.5));
}
@media (min-width: 769px) {
	.home .main-navigation .main-nav > ul > li > a { color: #fff; text-shadow: 0 1px 10px rgba(0,0,0,.45); }
	/* submeniul rămâne card alb cu text închis */
	.home .main-navigation .main-nav ul ul li a { color: var(--ink); text-shadow: none; }
}
/* Stare solidă la scroll (sau orice pagină non-home) */
.home.morad-nav-solid .site-header {
	position: fixed;
	background: rgba(255, 255, 255, .82);
	border-bottom-color: var(--line);
	box-shadow: 0 2px 14px rgba(13, 54, 25, .05);
}
.home.morad-nav-solid .site-logo img { filter: none; }
.home.morad-nav-solid .main-navigation .menu-toggle { color: var(--ink); filter: none; }
@media (min-width: 769px) {
	.home.morad-nav-solid .main-navigation .main-nav > ul > li > a { color: var(--ink); text-shadow: none; }
}

/* A doua pastilă din nav: „Sesizări" (17 aug. 2026, cerință client — canal vizibil
   pentru sugestii și reclamații). Rămâne SECUNDARĂ față de Contact: aceeași formă,
   dar contur neutru și greutate mai mică, ca ierarhia să nu se aplatizeze. Poartă
   ambele clase (`morad-nav-cta morad-nav-cta-soft`), deci moștenește geometria
   pastilei și scapă de sublinierea din nav. */
/* „Sesizări" = conturul verde pe care îl avea Contact înainte: secundar, dar clar
   din aceeași familie. Se umple doar cu verdele foarte deschis la hover, ca să nu
   ajungă identic cu butonul principal. */
.main-navigation .main-nav ul li.morad-nav-cta-soft a {
	background: transparent; color: var(--green-deep) !important; border-color: var(--green);
}
.main-navigation .main-nav ul li.morad-nav-cta-soft a:hover {
	background: var(--green-soft); color: var(--green-deep) !important; border-color: var(--green); box-shadow: none;
}
@media (min-width: 769px) {
	/* Peste hero-ul de pe homepage: alb plin pentru Contact (cel mai lizibil pe poză),
	   contur alb pentru Sesizări. */
	.home .main-navigation .main-nav ul li.morad-nav-cta a { background: #fff; color: var(--green-deep) !important; border-color: #fff; text-shadow: none; }
	.home .main-navigation .main-nav ul li.morad-nav-cta a:hover { background: #fff; color: var(--green-deep) !important; border-color: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.22); }
	.home .main-navigation .main-nav ul li.morad-nav-cta-soft a { background: transparent; color: #fff !important; border-color: rgba(255,255,255,.6); }
	.home .main-navigation .main-nav ul li.morad-nav-cta-soft a:hover { background: rgba(255,255,255,.16); color: #fff !important; border-color: #fff; box-shadow: none; }
	.home.morad-nav-solid .main-navigation .main-nav ul li.morad-nav-cta a { background: var(--green-deep); color: #fff !important; border-color: var(--green-deep); }
	.home.morad-nav-solid .main-navigation .main-nav ul li.morad-nav-cta a:hover { background: var(--green-deep); color: #fff !important; border-color: var(--green); box-shadow: 0 6px 18px rgba(1,105,58,.30); }
	.home.morad-nav-solid .main-navigation .main-nav ul li.morad-nav-cta-soft a { background: transparent; color: var(--green-deep) !important; border-color: var(--green); }
	.home.morad-nav-solid .main-navigation .main-nav ul li.morad-nav-cta-soft a:hover { background: var(--green-soft); color: var(--green-deep) !important; border-color: var(--green); box-shadow: none; }
}

@media (max-width: 768px) {
	/* În meniul hamburger pastilele devin rânduri. Cu două bucăți una sub alta
	   (Sesizări + Contact) se lipeau muchie în muchie, iar marginea de 8px le lăsa
	   decalate față de restul intrărilor: le aliniem la textul celorlalte și le
	   despărțim. */
	.main-navigation .main-nav ul li.morad-nav-cta a { margin-inline-start: 15px; margin-block: 5px; }
	.main-navigation .main-nav ul li:not(.morad-nav-cta) + li.morad-nav-cta a { margin-top: 12px; }
}

/* --- Topbar (deasupra header-ului) --------------------------------------- */
:root { --topbar-h: 40px; }
.morad-topbar { background: var(--green); color: #fff; }
.morad-topbar__inner { display: flex; align-items: center; justify-content: space-between; min-height: var(--topbar-h); }
.morad-topbar__social { display: flex; align-items: center; gap: 14px; }
.morad-topbar__social a { color: #fff; display: inline-flex; opacity: .88; transition: opacity .15s ease; }
.morad-topbar__social a:hover { opacity: 1; color: #fff; }
.morad-topbar__lang { display: flex; align-items: center; gap: 9px; }
/* Steaguri la opacitate PLINĂ (transparența le amesteca cu verdele și strica culorile);
   diferențierea activ/inactiv se face doar prin inelul alb. */
.morad-lang { display: inline-flex; position: relative; border-radius: 3px; line-height: 0; box-shadow: 0 1px 2px rgba(0,0,0,.25); transition: transform .15s ease, box-shadow .15s ease; }
/* Rotunjirea stă pe imagine, nu pe ancoră: ancora trebuie să rămână `overflow: visible`
   ca să poată crește zona de atingere pe telefon (mai jos). */
.morad-lang img { display: block; width: 22px; height: 15px; object-fit: cover; border-radius: 3px; }
.morad-lang.is-active { box-shadow: 0 0 0 2px #fff; }
a.morad-lang:hover { transform: translateY(-1px); box-shadow: 0 0 0 2px rgba(255,255,255,.75); }
/* Topbar-ul rămâne IDENTIC în toate limbile (și pe RTL): social stânga, steaguri
   dreapta, în aceeași ordine — altfel cine nu cunoaște limba nu mai găsește selectorul. */
html[dir="rtl"] .morad-topbar__inner { direction: ltr; }
/* Home: topbar fixat deasupra header-ului transparent */
.home .morad-topbar { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; }
/* Ținte de atingere pe telefon (audit 17 aug. 2026): iconurile sociale erau 16×16 și
   steagurile 22×15, adică sub minimul de 24px din WCAG 2.5.8 și greu de nimerit cu
   degetul. Zona clicabilă crește printr-un pseudo-element, deci desenul rămâne exact
   la fel; distanțele cresc puțin ca zonele să nu se suprapună între ele. */
@media (max-width: 900px) {
	.morad-topbar__social { gap: 16px; }
	.morad-topbar__lang { gap: 14px; }
	.morad-topbar__social a, .morad-lang { position: relative; }
	.morad-topbar__social a::after, .morad-lang::after { content: ""; position: absolute; inset: -12px -6px; }
}

/* --- Bandă statistici (dedicată, între „Cine suntem" și piramidă) --------- */
.morad-statband { padding: clamp(1.6rem, 3vw, 2.1rem) 0; }
.morad-statband__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.8rem 0; }
@media (min-width: 760px) { .morad-statband__grid { grid-template-columns: repeat(4, 1fr); gap: 0; } }
.morad-statband__item { text-align: center; padding: .2rem 1rem; position: relative; }
@media (min-width: 760px) {
	.morad-statband__item + .morad-statband__item::before {
		content: ""; position: absolute; inset-inline-start: 0; top: 12%; height: 76%; width: 1px; background: rgba(255,255,255,.18);
	}
}
/* `tabular-nums`: în timpul numărătorii cifrele au lățime egală, altfel valoarea
   saltă orizontal la fiecare cadru. */
.morad-statband__item b { display: block; font-family: var(--display); font-weight: 700; font-size: clamp(1.9rem, 3vw, 2.7rem); color: #fff; line-height: 1; font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }
/* Etichetele mici de sub cifre: ALB, nu auriu. Auriul #e8b657 dă doar 2.29:1 pe
   banda verde — sub pragul de 3:1 chiar pentru text mare. Aceeași opacitate .94 ca
   restul textelor mici pe verde (vezi blocul de lizibilitate de la finalul fișierului). */
.morad-statband__item span { display: block; margin-top: .55rem; font-family: var(--sans); font-size: .8rem; color: rgba(255,255,255,.94); letter-spacing: .03em; }

/* --- Layout utilities ---------------------------------------------------- */
.morad-container { max-width: var(--container); margin: 0 auto; padding: 0 28px; }
.morad-section { padding: clamp(1.9rem, 3.5vw, 2.6rem) 0; }
.morad-bone { background: var(--bone); }
.morad-soft { background: var(--green-soft); }
.morad-forest { background: var(--forest); color: #fff; }
.morad-forest h2, .morad-forest h3, .morad-forest .morad-eyebrow { color: #fff; }

.morad-eyebrow {
	display: inline-flex; align-items: center; gap: .5rem;
	font-family: var(--sans); text-transform: uppercase; letter-spacing: .18em;
	font-size: .72rem; font-weight: 600; color: var(--green-deep); margin: 0 0 1rem;
}
.morad-eyebrow::before { content: ""; width: 26px; height: 1.5px; background: var(--brass); display: inline-block; }
/* Pe telefon .72rem înseamnă 11,5px, iar textul e majuscule cu spațiere mare — la
   mărimea asta se citește greu. Urcă la 12px doar sub 560px; desktopul rămâne cum e. */
@media (max-width: 560px) { .morad-eyebrow { font-size: .75rem; letter-spacing: .14em; } }
.morad-forest .morad-eyebrow { color: var(--brass-bright); }
.morad-forest .morad-eyebrow::before { background: var(--brass-bright); }

.morad-head { max-width: 760px; margin: 0 0 1.8rem; }
.morad-head--center { margin-left: auto; margin-right: auto; text-align: center; }
.morad-title { font-size: clamp(1.9rem, 4vw, 3rem); font-weight: 700; margin: 0 0 1rem; }
.morad-lead { font-family: var(--sans); color: var(--muted); font-size: 1.1rem; line-height: 1.65; margin: 0; font-weight: 300; }
.morad-forest .morad-lead { color: rgba(255,255,255,.82); }

/* Home: container GeneratePress full-width, secțiuni 100% (fără 100vw) */
.home #page, .single-produs #page, .post-type-archive-produs #page,
.tax-brand #page, .page-template-template-branduri #page, .page-template-page-despre-noi #page, .page-template-page-cariere #page, .page-template-page-contact #page, .page-template-page-b2b #page, .page-template-page-sesizari #page { max-width: 100%; padding-left: 0; padding-right: 0; }
.home .site-content,
.tax-brand .site-content, .post-type-archive-produs .site-content, .single-produs .site-content, .page-template-template-branduri .site-content, .page-template-page-despre-noi .site-content, .page-template-page-cariere .site-content, .page-template-page-contact .site-content, .page-template-page-b2b .site-content, .page-template-page-sesizari .site-content { padding: 0; }
.home .content-area,
.tax-brand .content-area, .post-type-archive-produs .content-area, .single-produs .content-area, .page-template-template-branduri .content-area, .page-template-page-despre-noi .content-area, .page-template-page-cariere .content-area, .page-template-page-contact .content-area, .page-template-page-b2b .content-area, .page-template-page-sesizari .content-area { width: 100%; max-width: 100%; margin: 0; padding: 0; }
.home #main,
.tax-brand #main, .post-type-archive-produs #main, .single-produs #main, .page-template-template-branduri #main, .page-template-page-despre-noi #main, .page-template-page-cariere #main, .page-template-page-contact #main, .page-template-page-b2b #main, .page-template-page-sesizari #main { width: 100%; max-width: 100%; margin: 0; padding: 0; background: transparent; box-shadow: none; border: 0; }

/* ==========================================================================
   HERO
   ========================================================================== */
.morad-hero { position: relative; background: var(--forest); color: #fff; overflow: hidden;
	min-height: 100vh; min-height: 100svh; display: flex; align-items: center; }
/* Media umple hero-ul până sus. Varianta veche o cobora cu `top: clamp(80px,12vh,130px)`
   + mască de 130px, ca meniul transparent să aibă zonă neutră — dar asta lăsa sub bara
   verde o bandă închisă cu muchie vizibilă, care peste video arăta ca un dreptunghi
   lipit peste imagine. Lizibilitatea meniului o asigură acum doar scrimul de mai jos. */
.morad-hero__bg { position: absolute; inset: 0; background-size: cover; background-position: 78% center; opacity: .9; }
/* Videoul stă ÎN interiorul lui __bg ca să moștenească încadrarea și opacitatea. Sub el
   rămâne background-image (același cadru), deci dacă videoul nu pornește nu se vede nimic. */
.morad-hero__video { position: absolute; inset: 0; width: 100%; height: 100%;
	object-fit: cover; object-position: center; display: block; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .morad-hero__video { display: none; } }
/* Verde puternic doar în stânga, sub titlu; spre dreapta se retrage aproape complet,
   ca mâncarea din videoul de fundal să-și păstreze tonurile calde (varianta veche,
   opacă pe toată lățimea, era calibrată pe imaginea statică și făcea pâinea verzuie). */
.morad-hero__overlay { position: absolute; inset: 0;
	background: linear-gradient(95deg, rgba(7,30,16,.93) 0%, rgba(9,36,19,.74) 38%, rgba(11,42,22,.32) 68%, rgba(11,42,22,.06) 100%);
}
/* Pe RTL textul trece în dreapta, deci partea opacă trebuie oglindită — altfel titlul
   arab ar cădea peste zona aproape transparentă. */
html[dir="rtl"] .morad-hero__overlay {
	background: linear-gradient(265deg, rgba(7,30,16,.93) 0%, rgba(9,36,19,.74) 38%, rgba(11,42,22,.32) 68%, rgba(11,42,22,.06) 100%);
}
/* Scrim de sus pentru lizibilitatea header-ului transparent. Opririle intermediare
   imită o curbă ease-out: un gradient liniar simplu se termină cu o muchie vizibilă
   pe imagine, mai ales peste video. */
.morad-hero::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 210px; z-index: 1; pointer-events: none;
	background: linear-gradient(180deg,
		rgba(6,28,14,.62) 0%,
		rgba(6,28,14,.44) 26%,
		rgba(6,28,14,.24) 50%,
		rgba(6,28,14,.09) 74%,
		rgba(6,28,14,0) 100%); }
.morad-hero__inner { position: relative; z-index: 2; width: 100%; max-width: var(--container); margin: 0 auto; padding: clamp(6rem, 12vh, 9rem) 28px clamp(3rem, 8vh, 5rem); }
.morad-hero__content { max-width: 680px; }
.morad-hero__eyebrow { color: var(--brass-bright); }
.morad-hero__eyebrow::before { background: var(--brass-bright); }
.morad-hero__logo { height: 44px; width: auto; margin-bottom: 1.8rem; filter: brightness(0) invert(1); }
/* Greutatea 500 și tracking-ul −0.03em erau tăiate pe Fraunces: un serif cu tulpini
   groase și axă optică, care la 500 citea deja masiv. Archivo la 500 e vizibil mai
   subțire la aceeași mărime, iar strâns cu −0.03em se aglomerează. */
.morad-hero__title {
	color: #fff; font-family: var(--display); font-weight: 700;
	font-size: clamp(2.8rem, 7.5vw, 5.5rem); line-height: 1.06; letter-spacing: -0.02em; margin: 0 0 1.2rem;
}
.morad-hero__title em { font-style: italic; color: var(--brass-bright); }
.morad-hero__sub { font-family: var(--sans); font-weight: 300; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.55; color: rgba(255,255,255,.9); margin: 0 0 2.2rem; max-width: 560px; }
.morad-hero__cta { display: flex; flex-wrap: wrap; gap: .9rem; }
/* Proof slim — NU carduri */
.morad-hero__proof {
	position: relative; max-width: var(--container); margin: 0 auto;
	padding: 1.4rem 28px; border-top: 1px solid rgba(255,255,255,.16);
	display: flex; flex-wrap: wrap; gap: 1rem 2.5rem;
	font-family: var(--sans); color: rgba(255,255,255,.85); font-size: .92rem;
}
.morad-hero__proof b { color: #fff; font-weight: 600; }
.morad-hero__proof span { display: inline-flex; align-items: baseline; gap: .5rem; }

/* ==========================================================================
   DESPRE (editorial)
   ========================================================================== */
.morad-about__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; }
@media (min-width: 900px) { .morad-about__grid { grid-template-columns: 1.05fr .95fr; gap: 4rem; align-items: start; } }
.morad-about__quote {
	font-family: var(--display); font-weight: 500; font-style: italic;
	font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.3; color: var(--forest); margin: 0;
	border-inline-start: 3px solid var(--brass); padding-inline-start: 1.5rem;
}
.morad-about__body p { color: var(--muted); line-height: 1.75; font-size: 1.04rem; }
.morad-about__body p + p { margin-top: 1rem; }

/* Cei 3 piloni — bandă forest unificată, coloane numerotate (tradiție → creștere) */
.morad-pillars { display: grid; grid-template-columns: 1fr; margin-top: clamp(2.6rem, 5vw, 3.8rem);
	background: var(--forest); border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-hi);
	background-image: radial-gradient(120% 140% at 0% 0%, rgba(194,160,107,.14), transparent 55%); }
@media (min-width: 760px) { .morad-pillars { grid-template-columns: repeat(3, 1fr); } }
.morad-pillar { position: relative; padding: clamp(1.9rem, 3vw, 2.7rem); display: flex; flex-direction: column;
	transition: background .25s ease; }
.morad-pillar + .morad-pillar { border-top: 1px solid rgba(255,255,255,.1); }
@media (min-width: 760px) { .morad-pillar + .morad-pillar { border-top: 0; border-left: 1px solid rgba(255,255,255,.1); } }
.morad-pillar:hover { background: rgba(255,255,255,.045); }
.morad-pillar__icon { position: absolute; top: clamp(1.9rem, 3vw, 2.7rem); inset-inline-end: clamp(1.9rem, 3vw, 2.7rem);
	display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 13px;
	background: rgba(241,224,185,.16); color: var(--brass-bright); box-shadow: inset 0 0 0 1px rgba(241,224,185,.28);
	transition: transform .25s ease, background .25s ease; }
.morad-pillar:hover .morad-pillar__icon { transform: scale(1.08) rotate(-4deg); background: rgba(194,160,107,.24); }
.morad-pillar__icon svg { width: 24px; height: 24px; }
/* Numele valorii (Tradiție/Inovație/Creștere) în auriu, în locul fostelor cifre 01–03 */
.morad-pillar h3 { font-family: var(--display); font-weight: 600; font-size: clamp(1.8rem, 2.6vw, 2.3rem); line-height: 1.1; margin: 0 0 .9rem; color: var(--brass-bright); letter-spacing: -.01em; padding-inline-end: 60px; }
.morad-pillar p { margin: 0; color: rgba(255,255,255,.72); font-size: .96rem; line-height: 1.65; }

/* ==========================================================================
   SEMNĂTURĂ — Piramida de poziționare
   ========================================================================== */
.morad-pyramid-wrap { max-width: 1040px; margin: 0 auto; }
/* Geometria (refăcută 17 aug. 2026): treptele erau aproape la fel de late — 58% sus
   față de 100% jos — separate de 10px și cu colțuri rotunjite peste tot, deci se
   citeau ca cinci pastile suprapuse, nu ca o piramidă, și metafora „de la accesibil
   la premium" se pierdea. Acum panta e dublă (50% → 100%, pas de 12,5 puncte),
   spațiul dintre trepte e de 4px, iar treptele sunt mai joase: silueta se închide
   într-un triunghi citibil dintr-o privire. */
.morad-pyramid { display: flex; flex-direction: column; gap: 3px; align-items: center; }
.ptier {
	margin: 0 auto; width: 100%;
	/* Conținutul e CENTRAT, nu împins în capete (cerință Vlad, 18 aug.): cu trepte
	   scurte, eticheta lipită stânga și logo-urile lipite dreapta lăsau un gol la
	   mijloc și silueta se citea strâmb. Centrat, treapta e simetrică. */
	display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
	gap: clamp(.8rem, 2.2vw, 1.7rem);
	padding: .8rem clamp(.9rem, 2vw, 1.5rem);
	border-radius: 8px;
	transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.ptier:hover { transform: translateY(-3px) scale(1.012); box-shadow: var(--shadow-hi); z-index: 2; }
.ptier__label { font-family: var(--sans); font-weight: 600; text-transform: uppercase; letter-spacing: .14em; font-size: .68rem; opacity: .85; white-space: nowrap; }
.ptier__brands { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: clamp(.7rem, 1.8vw, 1.3rem); }
.ptier__brand { display: inline-flex; align-items: center; color: inherit; transition: transform .2s ease, opacity .2s ease; }
.ptier__brand:hover { transform: translateY(-1px); }
.ptier__logo { height: 22px; width: auto; max-width: 104px; object-fit: contain; display: block; }
/* recolorare monocrom în funcție de luminozitatea treptei (logo-urile sunt flat single-color cu text decupat) */
.ptier__logo--dark { filter: brightness(0); opacity: .82; }
.ptier__brand:hover .ptier__logo--dark { opacity: 1; }
.ptier__logo--light { filter: brightness(0) invert(1); opacity: .95; }
.ptier__brand:hover .ptier__logo--light { opacity: 1; }
/* text de rezervă (Elio, Rodna — până la logo mono) */
.ptier__logoname { font-family: var(--display); font-weight: 600; font-size: clamp(1rem, 2vw, 1.4rem); letter-spacing: -0.01em; color: inherit; }
.ptier__brand:hover .ptier__logoname { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }

/* lățimi crescătoare (ziggurat) + culori pe trepte */
/* Pantă dublată (18 aug., cerință Vlad): vârful la 25%, adică jumătate din cât era,
   restul micșorate proporțional, cu pas egal de 18,75 puncte. Așa treptele se citesc
   ca trepte — piramidă în trepte, nu teanc de bare. */
.ptier--premium  { width: 25%;    background: var(--t-premium); color: var(--ink); box-shadow: inset 0 0 0 1px rgba(194,160,107,.65); border-radius: 10px 10px 6px 6px; }
.ptier--upper    { width: 43.75%; background: var(--t-upper);   color: var(--ink); }
.ptier--main     { width: 62.5%;  background: var(--t-main);    color: #103a20; }
.ptier--afford   { width: 81.25%; background: var(--t-afford);  color: #103a20; }
.ptier--economy  { width: 100%;   background: var(--t-economy); color: #fff; border-radius: 6px 6px 12px 12px; }
/* Între 641 și 1000px panta se domolește: la 25% treapta de sus are sub 200px și
   eticheta ar cădea pe rândul de deasupra logo-urilor, iar vârful ar ieși mai înalt
   decât restul, exact ce strică ritmul de trepte. */
@media (max-width: 1000px) {
	.ptier--premium { width: 38%; }
	.ptier--upper   { width: 53.5%; }
	.ptier--main    { width: 69%; }
	.ptier--afford  { width: 84.5%; }
}
.ptier--main .ptier__label,
.ptier--afford .ptier__label,
.ptier--economy .ptier__label { opacity: .9; }

.morad-pyramid__axis { display: flex; justify-content: space-between; max-width: 880px; margin: 1.1rem auto 0; font-family: var(--sans); font-size: .76rem; letter-spacing: .04em; color: var(--muted); }
.morad-pyramid__axis span:last-child { color: var(--green-deep); font-weight: 600; }

/* ==========================================================================
   CATEGORII
   ========================================================================== */
/* Praguri (refăcute 17 aug. 2026): patru coloane de la 720px însemnau carduri de
   ~165px pe tabletă, cu titluri rupte în trei rânduri. Acum: 1 / 2 / 3 / 4 coloane. */
.morad-cats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.1rem; }
@media (min-width: 820px) { .morad-cats { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1100px) { .morad-cats { grid-template-columns: repeat(4, 1fr); } }
/* Rândurile se sincronizează între carduri prin subgrid: capul (icon + titlu) și
   descrierea stau pe aceleași două benzi în toată grila, deci un titlu de două
   rânduri nu mai coboară descrierea doar într-un card. Fără subgrid ar trebui o
   înălțime fixă rezervată, care lasă gol acolo unde titlul are un singur rând. */
@supports (grid-template-rows: subgrid) {
	.morad-cat { display: grid; grid-template-rows: subgrid; grid-row: span 2; align-content: start; }
}
.morad-cat { position: relative; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
	padding: 1.7rem 1.5rem 1.8rem; box-shadow: 0 6px 20px rgba(13,54,25,.04);
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease, background .35s ease; }
.morad-cat:hover { transform: translateY(-6px); box-shadow: var(--shadow-hi); border-color: transparent;
	background: linear-gradient(155deg, #15a44c 0%, var(--green-deep) 100%); }
/* glyph mare, decorativ, în colț */
.morad-cat::before { content: ""; position: absolute; inset-inline-end: -28px; bottom: -34px; width: 130px; height: 130px; border-radius: 50%;
	background: radial-gradient(circle, var(--green-soft) 0%, transparent 70%); opacity: .9; transition: opacity .35s ease; pointer-events: none; }
.morad-cat:hover::before { opacity: 0; }
/* Icon DEASUPRA titlului (reparat 17 aug. 2026). Așezate una lângă alta, iconul se
   centra pe verticală față de titlu, iar titlurile au 1 sau 2 rânduri — așa că
   iconurile din același rând ieșeau la înălțimi diferite, iar cardurile păreau
   descentrate. Stivuit, totul pornește de pe aceeași linie în toate cardurile, iar
   titlul are rezervate două rânduri, ca descrierile să înceapă la fel peste tot. */
.morad-cat__head { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: .85rem; margin-bottom: .8rem; }
.morad-cat__icon { position: relative; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 15px;
	background: linear-gradient(145deg, #e9f5e6, #d7eedd); color: var(--green-deep); box-shadow: inset 0 0 0 1px rgba(13,177,75,.12);
	transition: background .35s ease, color .35s ease, transform .3s ease, box-shadow .35s ease; }
.morad-cat__icon svg { width: 29px; height: 29px; }
.morad-cat:hover .morad-cat__icon { background: rgba(255,255,255,.16); color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.3); transform: scale(1.06) rotate(-3deg); }
.morad-cat__name { position: relative; font-family: var(--display); font-weight: 600; font-size: 1.12rem; line-height: 1.25; margin: 0; transition: color .3s ease; }
.morad-cat__desc { position: relative; font-family: var(--sans); color: var(--muted); font-size: .88rem; line-height: 1.5; margin: 0; transition: color .3s ease; }
.morad-cat:hover .morad-cat__name { color: #fff; }
.morad-cat:hover .morad-cat__desc { color: rgba(255,255,255,.88); }

/* Pe telefon două coloane lăsau ~110px de text, adică rânduri de patru cuvinte și
   titluri rupte în trei. Sub 560px trecem pe un card pe rând, cu iconul lângă titlu:
   se citește normal, iar înălțimea totală rămâne rezonabilă. */
@media (max-width: 560px) {
	.morad-cats { grid-template-columns: 1fr; gap: .8rem; }
	.morad-cat { display: block; padding: 1.15rem 1.2rem 1.3rem; }
	.morad-cat__head { flex-direction: row; align-items: center; gap: .8rem; margin-bottom: .55rem; }
	.morad-cat__icon { width: 46px; height: 46px; border-radius: 13px; }
	.morad-cat__icon svg { width: 25px; height: 25px; }
	.morad-cat__name { font-size: 1.05rem; }
	.morad-cat::before { width: 96px; height: 96px; bottom: -26px; inset-inline-end: -22px; }
}

/* ==========================================================================
   FABRICI
   ========================================================================== */
.morad-fac { display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 800px) { .morad-fac { grid-template-columns: 1fr 1fr; } }
.morad-fac__card { background: linear-gradient(160deg, rgba(255,255,255,.11), rgba(255,255,255,.05)); border: 1px solid rgba(255,255,255,.22); border-radius: var(--radius-lg); padding: 2rem; box-shadow: 0 20px 44px rgba(6, 58, 30, .30); }
.morad-fac__card h3 { color: #fff; font-size: 1.5rem; margin: 0 0 .2rem; }
.morad-fac__loc { font-family: var(--sans); color: var(--brass-bright); font-size: .82rem; text-transform: uppercase; letter-spacing: .12em; margin: 0 0 1rem; }
.morad-fac__card p { color: rgba(255,255,255,.82); line-height: 1.6; margin: 0; font-size: .96rem; }
.morad-fac__stats { display: flex; flex-wrap: wrap; gap: 1.5rem 3rem; margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid rgba(255,255,255,.14); }
.morad-fac__stat { display: flex; flex-direction: column; }
.morad-fac__stat b { font-family: var(--display); font-weight: 700; font-size: clamp(1.8rem, 3.5vw, 2.6rem); color: #fff; line-height: 1; }
.morad-fac__stat span { font-family: var(--sans); color: rgba(255,255,255,.94); font-size: .82rem; margin-top: .4rem; }

/* ==========================================================================
   CERTIFICĂRI
   ========================================================================== */
.morad-certs { display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 760px) { .morad-certs { grid-template-columns: repeat(3, 1fr); } }
.morad-cert { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 1.8rem; border-top: 3px solid var(--brass); }
.morad-cert h3 { font-family: var(--sans); font-weight: 700; font-size: 1.1rem; margin: 0 0 .4rem; letter-spacing: 0; }
.morad-cert p { color: var(--muted); font-size: .92rem; line-height: 1.55; margin: 0; }

/* ==========================================================================
   CARIERE
   ========================================================================== */
.morad-cariere__cta { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.8rem; }

/* Beneficii / cultură */
.morad-perks { display: grid; grid-template-columns: 1fr; gap: 1.2rem; margin-top: 2.4rem; }
@media (min-width: 640px) { .morad-perks { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .morad-perks { grid-template-columns: repeat(4, 1fr); } }
.morad-perk { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 1.8rem 1.6rem; transition: transform .22s ease, box-shadow .22s ease; }
.morad-perk:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.morad-perk__icon { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 14px; background: var(--green-soft); color: var(--green-deep); margin-bottom: 1rem; box-shadow: inset 0 0 0 1px rgba(1,105,58,.1); }
.morad-perk__icon svg { width: 25px; height: 25px; }
.morad-perk h3 { font-family: var(--display); font-weight: 600; font-size: 1.22rem; margin: 0 0 .4rem; color: var(--forest); letter-spacing: -.01em; }
.morad-perk p { margin: 0; color: var(--muted); font-size: .92rem; line-height: 1.6; }

/* Bloc de aplicare: text + formular */
.morad-apply { display: grid; grid-template-columns: 1fr; gap: 2.5rem; align-items: start; }
@media (min-width: 920px) { .morad-apply { grid-template-columns: .82fr 1.18fr; gap: 3.5rem; } }
.morad-apply__contact { list-style: none; margin: 1.6rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
.morad-apply__contact li { color: var(--muted); font-size: .98rem; }
.morad-apply__contact a { color: var(--green-deep); font-weight: 600; }

.morad-form { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1.6rem, 3vw, 2.5rem); box-shadow: var(--shadow); }
.morad-form__row { display: grid; grid-template-columns: 1fr; gap: 1.1rem; }
@media (min-width: 620px) { .morad-form__row { grid-template-columns: 1fr 1fr; } }
.morad-field { display: block; margin-bottom: 1.1rem; }
.morad-form__row .morad-field { margin-bottom: 0; }
.morad-form__row { margin-bottom: 1.1rem; }
.morad-field__label { display: block; font-family: var(--sans); font-weight: 600; font-size: .82rem; color: var(--forest); margin-bottom: .4rem; letter-spacing: .01em; }
.morad-field input, .morad-field select, .morad-field textarea {
	width: 100%; box-sizing: border-box; font-family: var(--sans); font-size: .98rem; color: var(--forest);
	background: var(--bone); border: 1px solid var(--line); border-radius: 11px; padding: .8rem .95rem; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.morad-field input::placeholder, .morad-field textarea::placeholder { color: #9aa39b; }
.morad-field input:focus, .morad-field select:focus, .morad-field textarea:focus { outline: none; border-color: var(--green); background: #fff; box-shadow: 0 0 0 3px rgba(13,177,75,.14); }
.morad-field textarea { resize: vertical; min-height: 96px; }
.morad-field--file input { padding: .65rem .95rem; background: #fff; cursor: pointer; }
.morad-field--file input::file-selector-button { font-family: var(--sans); font-weight: 600; font-size: .85rem; color: var(--green-deep); background: var(--green-soft); border: 0; border-radius: 8px; padding: .45rem .8rem; margin-inline-end: .8rem; cursor: pointer; transition: background .2s ease; }
.morad-field--file input::file-selector-button:hover { background: #dcefd9; }

.morad-field__hint { display: block; margin-top: .45rem; color: var(--muted); font-size: .85rem; line-height: 1.5; }

/* Alegerea sugestie / reclamație (pagina de sesizări): pastile, nu un select —
   e prima decizie a formularului și trebuie citită dintr-o privire. */
.morad-choice { border: 0; padding: 0; margin: 0 0 1.3rem; display: block; }
.morad-choice legend { padding: 0; }
.morad-choice__item { display: inline-flex; align-items: center; gap: .5rem; cursor: pointer;
	border: 1px solid var(--line); border-radius: 999px; padding: .55rem 1.05rem; margin-inline-end: .6rem;
	background: var(--bone); transition: border-color .2s ease, background .2s ease, color .2s ease; }
.morad-choice__item span { font-family: var(--sans); font-size: .95rem; font-weight: 600; color: var(--forest); }
.morad-choice__item input { width: 17px; height: 17px; accent-color: var(--green); margin: 0; }
.morad-choice__item:hover { border-color: var(--green); }
.morad-choice__item:has(input:checked) { background: var(--green-soft); border-color: var(--green); }
.morad-choice__item:has(input:focus-visible) { outline: 2px solid var(--green); outline-offset: 2px; }

/* Pașii de tratare a unei sesizări */
.morad-steps { list-style: none; counter-reset: pas; margin: 1.6rem 0 0; padding: 0; display: grid; gap: 1rem; }
.morad-steps li { counter-increment: pas; display: grid; grid-template-columns: auto 1fr; gap: .3rem .9rem; align-items: baseline; }
.morad-steps li::before { content: counter( pas, decimal-leading-zero ); grid-row: span 2;
	font-family: var(--display); font-size: 1.05rem; color: #8A6E42; }   /* brass închis: cel deschis dă 2,3:1 pe fundal bone */
.morad-steps li strong { font-family: var(--sans); font-size: .98rem; color: var(--forest); }
.morad-steps li span { grid-column: 2; color: var(--muted); font-size: .92rem; line-height: 1.55; }

.morad-check { display: flex; align-items: flex-start; gap: .6rem; margin-bottom: .8rem; cursor: pointer; }
.morad-check input { width: 18px; height: 18px; margin-top: .15rem; accent-color: var(--green); flex: 0 0 auto; }
.morad-check span { color: var(--muted); font-size: .9rem; line-height: 1.5; }

/* Honeypot anti-spam: câmp invizibil pentru oameni (nu display:none pe input,
   ca boții mai atenți să nu-l sară).
   ATENȚIE, reparat 17 aug. 2026: era scos din ecran cu `left: -9999px`. În LTR
   nu se vede, dar în RTL (arabă) depășirea spre stânga E derulabilă, deci fiecare
   pagină cu formular avea 11.439px de derulare orizontală în gol — și Contact AR,
   nu doar paginile noi. Ascundere prin decupare: ocupă 1px în layout, nu creează
   depășire în nicio direcție. */
.morad-hp { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
	overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.morad-form__notice { padding: .85rem 1.1rem; border-radius: 10px; font-size: .92rem; font-weight: 500; margin: 0 0 1.2rem; }
.morad-form__notice--ok { background: var(--green-soft); color: var(--green-deep); border: 1px solid #cfe6cc; }
.morad-form__notice--err { background: #FBEFEC; color: #9C3B22; border: 1px solid #EED4CB; }

/* Blocul de sesizare care apare în formularul de Contact când subiectul ales e
   „Sugestii și reclamații". Se desprinde de restul câmpurilor printr-o linie și un
   fundal ușor, ca să se vadă că e o secțiune care tocmai s-a deschis. */
.morad-form__sesizare { border: 1px solid var(--line); border-radius: 14px; background: var(--bone); padding: 1.1rem 1.1rem .3rem; margin-bottom: 1.1rem; }
.morad-form__sesizare[hidden] { display: none; }
.morad-form__hint { margin: 0 0 .9rem; font-family: var(--sans); font-size: .88rem; color: var(--muted); line-height: 1.5; }

.morad-form .g-recaptcha { margin: 1.2rem 0; }
/* Widgetul reCAPTCHA are 304px ficși. Formularul e element de grilă, iar acelea au
   `min-width: auto`, deci refuza să coboare sub lățimea widgetului: pe 360px cardul
   ieșea din ecran cu 25px și pagina se derula lateral (Contact, Cariere, Sesizări).
   Se repară în două locuri — grila are voie să strângă, iar widgetul se scalează. */
.morad-apply > * { min-width: 0; }
@media (max-width: 430px) {
	.morad-form { padding: 1.25rem; }
	.morad-form .g-recaptcha { overflow: hidden; height: 64px; }
	.morad-form .g-recaptcha > div { transform: scale(.82); transform-origin: left top; }
}
.morad-form__submit { margin-top: .4rem; }
.morad-form__note { margin: 1rem 0 0; color: var(--muted); font-size: .85rem; line-height: 1.55; }
.morad-form__note a { color: var(--green-deep); font-weight: 600; }

/* Locații — carduri simple (fundal deschis) */
.morad-locs { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin-top: 2.4rem; }
@media (min-width: 760px) { .morad-locs { grid-template-columns: 1fr 1fr; } }
.morad-loc { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; transition: transform .22s ease, box-shadow .22s ease; }
.morad-loc:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.morad-loc__img { aspect-ratio: 16 / 9; overflow: hidden; }
.morad-loc__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.morad-loc__body { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.4rem; }
.morad-loc__body h3 { font-family: var(--display); font-weight: 600; font-size: 1.4rem; margin: 0; color: var(--forest); }
.morad-loc__tag { font-family: var(--sans); font-weight: 600; font-size: .76rem; text-transform: uppercase; letter-spacing: .1em; color: var(--brass); white-space: nowrap; }

/* Posturi disponibile — listă compactă (accordion, fără JS) */
.morad-jobs { display: flex; flex-direction: column; gap: .7rem; margin-top: 2.2rem; max-width: 900px; margin-left: auto; margin-right: auto; }
.morad-job { background: #fff; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease; }
.morad-job[open] { border-color: var(--green); box-shadow: var(--shadow); }
.morad-job__head { display: flex; align-items: center; gap: 1rem; padding: 1rem 1.3rem; cursor: pointer; list-style: none; }
.morad-job__head::-webkit-details-marker { display: none; }
.morad-job__main { display: flex; flex-direction: column; gap: .15rem; min-width: 0; flex: 1 1 auto; }
.morad-job__title { font-family: var(--display); font-weight: 600; font-size: 1.18rem; color: var(--forest); line-height: 1.25; }
.morad-job__sumar { font-size: .88rem; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.morad-job__meta { display: flex; flex-wrap: wrap; gap: .4rem; flex: 0 0 auto; }
.morad-job__chip { font-family: var(--sans); font-weight: 600; font-size: .72rem; letter-spacing: .03em; text-transform: uppercase; color: var(--green-deep); background: var(--green-soft); padding: .32rem .6rem; border-radius: 999px; white-space: nowrap; }
.morad-job__chip--soft { color: var(--muted); background: var(--bone); }
.morad-job__toggle { position: relative; flex: 0 0 auto; width: 22px; height: 22px; }
.morad-job__toggle::before, .morad-job__toggle::after { content: ""; position: absolute; top: 50%; left: 50%; width: 12px; height: 2px; background: var(--green-deep); transform: translate(-50%, -50%); border-radius: 2px; transition: transform .25s ease, opacity .2s ease; }
.morad-job__toggle::after { transform: translate(-50%, -50%) rotate(90deg); }
.morad-job[open] .morad-job__toggle::after { opacity: 0; }
.morad-job__body { padding: 0 1.3rem 1.3rem; color: var(--muted); line-height: 1.7; }
.morad-job__body p { margin: 0 0 .8rem; }
.morad-job__apply { margin-top: .6rem; }
@media (max-width: 560px) { .morad-job__head { flex-wrap: wrap; } .morad-job__meta { order: 3; width: 100%; } }
.morad-jobs__empty { text-align: center; color: var(--muted); max-width: 600px; margin: 2rem auto 0; line-height: 1.7; }

/* Contact — listă date + hartă */
.morad-contact { list-style: none; margin: 1.9rem 0 0; padding: 0; display: flex; flex-direction: column; gap: 1.25rem; }
.morad-contact__item { display: flex; gap: .9rem; align-items: flex-start; }
.morad-contact__icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 13px; background: var(--green-soft); color: var(--green-deep); box-shadow: inset 0 0 0 1px rgba(1,105,58,.1); }
.morad-contact__icon svg { width: 22px; height: 22px; }
.morad-contact__label { display: block; font-family: var(--sans); font-weight: 600; font-size: .74rem; text-transform: uppercase; letter-spacing: .1em; color: var(--brass); margin-bottom: .2rem; }
.morad-contact__item a { color: var(--forest); font-weight: 600; }
.morad-contact__item a:hover { color: var(--green-deep); }
.morad-contact__item p { margin: 0; color: var(--muted); line-height: 1.5; }
.morad-contact__note { margin: 1.7rem 0 0; color: var(--muted); font-size: .9rem; line-height: 1.6; }
.morad-contact__note a { color: var(--green-deep); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.morad-contact__note a:hover { color: var(--green); }

.morad-map { line-height: 0; }
.morad-map iframe { width: 100%; height: clamp(320px, 38vw, 440px); border: 0; display: block; }

/* ==========================================================================
   EXPORT
   ========================================================================== */
.morad-export__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; align-items: center; }
@media (min-width: 860px) { .morad-export__grid { grid-template-columns: 1fr 1fr; gap: 4rem; } }
.morad-export__figs { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.morad-fig b { font-family: var(--display); font-weight: 700; font-size: clamp(2.2rem, 5vw, 3.4rem); color: var(--green-deep); line-height: 1; display: block; }
.morad-fig span { font-family: var(--sans); color: var(--muted); font-size: .9rem; line-height: 1.4; display: block; margin-top: .5rem; }

/* ==========================================================================
   CTA
   ========================================================================== */
.morad-cta { background: linear-gradient(120deg, var(--green-deep), var(--forest)); color: #fff; text-align: center; }   /* capătul deschis al degradeului era #0DB14B, prea slab sub text alb */
.morad-cta__title { color: #fff; font-size: clamp(1.8rem, 4vw, 2.8rem); margin: 0 0 .9rem; }
.morad-cta__text { font-family: var(--sans); color: rgba(255,255,255,.92); font-size: 1.05rem; margin: 0 auto 1.9rem; max-width: 560px; font-weight: 300; }

/* ==========================================================================
   FOOTER corporate
   ========================================================================== */
.morad-footer { background: var(--forest); color: rgba(255,255,255,.72); padding: clamp(3rem, 6vw, 5rem) 0 2.5rem; }
.morad-footer__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; }
@media (min-width: 760px) { .morad-footer__grid { grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 2rem; } }
.morad-footer__logo { height: 120px; width: auto; filter: brightness(0) invert(1); margin-bottom: 1rem; }
.morad-footer__tagline { font-family: var(--sans); font-size: .85rem; line-height: 1.55; max-width: 320px; margin: 0; }
.morad-footer__title { font-family: var(--sans); font-weight: 600; font-size: .72rem; text-transform: uppercase; letter-spacing: .14em; color: var(--brass-bright); margin: 0 0 .85rem; }
.morad-footer__col ul { list-style: none; margin: 0; padding: 0; }
.morad-footer__col li { margin-bottom: .15rem; font-family: var(--sans); font-size: .82rem; line-height: 1.4; color: rgba(255,255,255,.75); }
.morad-footer__col a { font-family: var(--sans); color: rgba(255,255,255,.75); font-size: .82rem; line-height: 1.4; }
.morad-footer__col a:hover { color: #fff; }
/* Pe telefon linkurile de footer aveau 20px înălțime, prea puțin pentru deget
   (audit 17 aug. 2026). Devin blocuri cu puțin aer, deci ~34px zonă de atins. */
@media (max-width: 768px) {
	.morad-footer__col li { margin-bottom: 0; }
	.morad-footer__col li a { display: inline-block; padding: .42rem 0; }
}
.morad-footer__company { font-weight: 600; color: #fff; margin-bottom: .4rem; }
/* bara de credits GP */
.site-info { background: #0a2a14; color: rgba(255,255,255,.6); font-family: var(--sans); font-size: .82rem; }
.site-info a { color: #fff; }

/* ==========================================================================
   ARHIVE & CARDURI PRODUS
   ========================================================================== */
.morad-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 2.5rem 0; }
@media (min-width: 480px) { .morad-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .morad-grid { grid-template-columns: repeat(3, 1fr); } }
.morad-card { border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; background: #fff;
	transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease; }
.morad-card:hover { box-shadow: 0 30px 64px rgba(13, 54, 25, .20); transform: translateY(-5px); border-color: transparent; }
.morad-card__link { display: block; color: inherit; }
.morad-card__media { position: relative; aspect-ratio: 1 / 1; background: var(--bone); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.morad-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.6,.2,1); }
.morad-card:hover .morad-card__img { transform: scale(1.07); }
.morad-card__img--placeholder, .morad-produs__packshot--placeholder { display: flex; align-items: center; justify-content: center; background: var(--bone); }
.morad-ph__logo { max-width: 55%; max-height: 50%; width: auto; height: auto; object-fit: contain; opacity: .22; filter: grayscale(1); }
.morad-produs__packshot--placeholder .morad-ph__logo { max-width: 45%; max-height: 45%; }
.morad-ph__mark { font-family: var(--display); font-weight: 600; font-size: clamp(2rem, 6vw, 3.5rem); color: var(--line); }
/* etichetă „Vezi produsul" la hover */
.morad-card__cta { position: absolute; left: 0; right: 0; bottom: 0; padding: 1.4rem 1.3rem .9rem;
	font-family: var(--sans); font-weight: 600; font-size: .82rem; color: #fff;
	background: linear-gradient(to top, rgba(13,54,25,.82), rgba(13,54,25,0));
	opacity: 0; transform: translateY(8px); transition: opacity .3s ease, transform .3s ease; }
.morad-card:hover .morad-card__cta { opacity: 1; transform: translateY(0); }
.morad-card__body { padding: 1.1rem 1.3rem 1.4rem; }
.morad-card__brand { display: block; font-family: var(--sans); text-transform: uppercase; letter-spacing: .12em; font-size: .68rem; color: var(--green-deep); font-weight: 600; margin-bottom: .4rem; }
.morad-card__title { font-family: var(--display); font-weight: 600; font-size: 1.2rem; margin: 0 0 .3rem; line-height: 1.18; }
.morad-card__gramaj { font-family: var(--sans); margin: 0; color: var(--muted); font-size: .88rem; }

.morad-archive__header { margin: 2rem 0 1rem; }
.morad-archive__eyebrow, .morad-produs__brand { font-family: var(--sans); text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; color: var(--green-deep); font-weight: 600; }
.morad-archive__title { font-size: clamp(2rem, 4vw, 3rem); margin: .4rem 0 .6rem; }
.morad-archive__desc { font-family: var(--sans); color: var(--muted); max-width: 760px; line-height: 1.65; }

/* Branduri grid (pagina Brandurile noastre) */
.morad-branduri { display: grid; grid-template-columns: 1fr; gap: 1.25rem; margin: 2.5rem 0 0; }
@media (min-width: 560px) { .morad-branduri { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .morad-branduri { grid-template-columns: repeat(4, 1fr); } }
.morad-brand-card { display: flex; flex-direction: column; color: inherit; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.morad-brand-card:hover { box-shadow: var(--shadow-hi); transform: translateY(-3px); }
.morad-brand-card__media { aspect-ratio: 1/1; background: #fff; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.morad-brand-card__media img { width: 100%; height: 100%; object-fit: cover; }
.morad-brand-card__media--ph { background: linear-gradient(135deg, var(--green), var(--green-deep)); color: #fff; font-family: var(--display); font-size: 2.4rem; font-weight: 600; }
.morad-brand-card__body { padding: 1.1rem 1.25rem 1.4rem; }
.morad-brand-card__name { font-family: var(--display); font-weight: 600; font-size: 1.18rem; margin: 0 0 .35rem; }
.morad-brand-card__desc { font-family: var(--sans); color: var(--muted); font-size: .88rem; line-height: 1.5; margin: 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

/* ==========================================================================
   PAGINA DE PRODUS
   ========================================================================== */
.morad-single .morad-container { max-width: 1080px; }
.morad-produs { display: grid; grid-template-columns: 1fr; gap: 2rem; padding: clamp(1.6rem, 4vw, 3rem) 0 clamp(2rem, 4vw, 3.4rem); }
@media (min-width: 800px) { .morad-produs { grid-template-columns: 42% 1fr; gap: clamp(2.5rem, 4vw, 4rem); align-items: start; } }
/* packshot moderat, în caseta soft */
.morad-produs__tile { background: var(--bone); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1.6rem, 3vw, 2.6rem); display: flex; align-items: center; justify-content: center; }
@media (min-width: 800px) { .morad-produs__media { position: sticky; top: 24px; } }
.morad-produs__packshot { width: 100%; height: auto; max-height: 420px; object-fit: contain; display: block; }
.morad-produs__packshot--placeholder { aspect-ratio: 1/1; width: 100%; }
/* galeria produsului: miniaturi sub packshot, imaginea mare deschide lightbox-ul */
.morad-produs__zoom { display: block; width: 100%; cursor: zoom-in; border-radius: 8px; }
.morad-produs__zoom:focus-visible { outline: 2px solid var(--green); outline-offset: 6px; }
.morad-produs__tile.is-foto { padding: 0; overflow: hidden; }
.morad-produs__tile.is-foto .morad-produs__packshot { max-height: none; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-lg); }
.morad-produs__gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap: .6rem; margin-top: .7rem; }
.morad-produs__thumb { appearance: none; -webkit-appearance: none; padding: 0; margin: 0; aspect-ratio: 1 / 1; border: 2px solid var(--line); border-radius: 12px; overflow: hidden; background: var(--bone); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.morad-produs__thumb:hover, .morad-produs__thumb:focus, .morad-produs__thumb:active, .morad-produs__thumb.is-active { background: var(--bone); color: inherit; } /* tema părinte pune fundal gri pe button:focus */
.morad-produs__thumb:hover { border-color: var(--green); transform: translateY(-2px); }
.morad-produs__thumb.is-active { border-color: var(--green); box-shadow: 0 0 0 3px rgba(13, 177, 75, .16); }
.morad-produs__thumb:focus-visible { outline: 2px solid var(--green); outline-offset: 3px; }
.morad-produs__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.morad-produs__thumb[data-fel="packshot"] img { object-fit: contain; padding: 10%; box-sizing: border-box; }
/* lightbox */
.morad-lightbox { position: fixed; inset: 0; z-index: 1000; background: rgba(22, 32, 26, .94); display: flex; align-items: center; justify-content: center; padding: 3rem; animation: morad-lb-in .18s ease; }
.morad-lightbox[hidden] { display: none; }
@keyframes morad-lb-in { from { opacity: 0; } to { opacity: 1; } }
.morad-lightbox__img { max-width: min(92vw, 1400px); max-height: 88vh; width: auto; height: auto; border-radius: 12px; box-shadow: 0 30px 80px rgba(0, 0, 0, .5); background: #fff; }
.morad-lightbox__close, .morad-lightbox__nav { position: absolute; appearance: none; -webkit-appearance: none; border: 0; width: 48px; height: 48px; border-radius: 50%; background: rgba(255, 255, 255, .12); color: #fff; font-size: 2rem; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s ease; }
.morad-lightbox__close:hover, .morad-lightbox__nav:hover, .morad-lightbox__close:focus, .morad-lightbox__nav:focus { background: var(--green); color: #fff; }
.morad-lightbox__close:focus-visible, .morad-lightbox__nav:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.morad-lightbox__close { top: 1.2rem; right: 1.2rem; }
.morad-lightbox__prev { left: 1.2rem; top: 50%; transform: translateY(-50%); }
.morad-lightbox__next { right: 1.2rem; top: 50%; transform: translateY(-50%); }
@media (max-width: 640px) { .morad-lightbox { padding: 1rem; } .morad-lightbox__prev { left: .5rem; } .morad-lightbox__next { right: .5rem; } .morad-lightbox__close { top: .6rem; right: .6rem; } }
/* info */
.morad-produs__brand { display: inline-block; font-family: var(--sans); text-transform: uppercase; letter-spacing: .14em; font-size: .74rem; color: var(--green-deep); font-weight: 600; margin-bottom: .5rem; }
.morad-produs__title { font-size: clamp(1.9rem, 3.6vw, 2.7rem); margin: 0 0 .35rem; line-height: 1.1; letter-spacing: -0.015em; }
.morad-produs__sub { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .8rem; margin: 0 0 1.3rem; }
.morad-produs__gramaj { font-family: var(--sans); color: var(--muted); font-size: 1rem; }
.morad-chip--vegan { font-family: var(--sans); font-weight: 600; font-size: .7rem; letter-spacing: .06em; text-transform: uppercase; color: var(--green-deep); background: var(--green-soft); border-radius: 999px; padding: .3rem .7rem; line-height: 1.35; white-space: normal; }
.morad-produs__lead { font-family: var(--sans); font-size: 1.02rem; line-height: 1.65; color: var(--ink); margin: 0 0 1.4rem; }
.morad-benefits { list-style: none; margin: 0 0 .4rem; padding: 0; display: flex; flex-direction: column; gap: .6rem; }
.morad-benefits li { display: flex; align-items: center; gap: .65rem; font-family: var(--sans); font-size: .95rem; color: var(--ink); }
.morad-benefits__ic { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; flex: 0 0 auto; border-radius: 8px; background: var(--green-soft); color: var(--green-deep); }
.morad-benefits__ic svg { width: 17px; height: 17px; }
.morad-produs__story { font-family: var(--sans); font-size: .98rem; line-height: 1.7; color: var(--muted); margin: 0; }
.morad-produs__block { margin-top: 1.6rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.morad-produs__label { font-family: var(--sans); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; font-size: .76rem; color: var(--ink); margin: 0 0 .8rem; }
.morad-produs__label span { color: var(--muted); font-weight: 600; }
.morad-produs__ingr { font-family: var(--sans); font-size: 1rem; line-height: 1.6; color: var(--muted); margin: 0; }
/* valori nutriționale cu bare */
.morad-nutri { display: flex; flex-direction: column; gap: .85rem; }
.morad-nutri__row.is-sub { padding-inline-start: 1rem; }
.morad-nutri__head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: .4rem; }
.morad-nutri__name { font-family: var(--sans); font-size: .95rem; color: var(--ink); }
.morad-nutri__row.is-sub .morad-nutri__name { color: var(--muted); font-size: .88rem; }
.morad-nutri__val { font-family: var(--sans); font-weight: 600; font-size: .95rem; color: var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
.morad-nutri__bar { display: block; height: 7px; border-radius: 999px; background: var(--green-soft); overflow: hidden; }
.morad-nutri__bar > span { display: block; height: 100%; border-radius: 999px; background: var(--green); }
.morad-nutri__note { font-family: var(--sans); font-size: .88rem; color: var(--muted); font-style: italic; margin: 0 0 .9rem; }
.morad-nutri__row.is-empty .morad-nutri__val { color: var(--muted); }
.morad-nutri__row.is-sub .morad-nutri__bar > span { background: var(--brass); }
/* meta detalii */
.morad-produs__meta { margin-top: 1.6rem; padding-top: 1.4rem; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: .4rem 2rem; color: var(--muted); font-family: var(--sans); font-size: .9rem; }
.morad-produs__meta strong { color: var(--ink); font-weight: 600; }
.morad-produs__meta span { font-variant-numeric: tabular-nums; }
/* carusel related */
.morad-related .morad-catgroup { margin-bottom: 0; }

.morad-page__intro { font-family: var(--sans); color: var(--muted); max-width: 760px; line-height: 1.7; }

/* ==========================================================================
   Responsive piramidă + accesibilitate
   ========================================================================== */
@media (max-width: 640px) {
	/* Pe telefon o pantă de 50% ar lăsa treapta de sus prea îngustă pentru logo-uri,
	   dar nici lățime egală nu e bine: metafora dispare. Pantă blândă, 84% → 100%. */
	.ptier { flex-direction: column; align-items: center; gap: .45rem; text-align: center; padding: .75rem .9rem; }
	.ptier__brands { justify-content: center; font-size: 1.1rem; }
	.ptier--premium { width: 84% !important; }
	.ptier--upper   { width: 88% !important; }
	.ptier--main    { width: 92% !important; }
	.ptier--afford  { width: 96% !important; }
	.ptier--economy { width: 100% !important; }
}
a:focus-visible, .morad-btn:focus-visible, .ptier:focus-visible { outline: 3px solid var(--brass); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }

/* ==========================================================================
   Adăugiri homepage v3 — logo-uri branduri, eyebrow piramidă, sigle, newsletter
   ========================================================================== */

/* Grid logo-uri branduri (deasupra piramidei) */
.morad-logos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin: 0 0 clamp(2rem, 4vw, 3rem); }
@media (min-width: 680px) { .morad-logos { grid-template-columns: repeat(4, 1fr); } }
.morad-logo { display: flex; flex-direction: column; align-items: center; gap: .7rem; padding: 1rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.morad-logo:hover { transform: translateY(-3px); box-shadow: var(--shadow-hi); border-color: transparent; }
.morad-logo__media { width: 100%; aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; overflow: hidden; border-radius: 10px; }
.morad-logo__media img { width: 100%; height: 100%; object-fit: cover; }
.morad-logo__media--ph { background: linear-gradient(135deg, var(--green), var(--green-deep)); color: #fff; font-family: var(--display); font-size: 2.2rem; font-weight: 600; }
.morad-logo__name { font-family: var(--sans); font-weight: 600; font-size: .92rem; letter-spacing: .01em; }

/* Eyebrow centrat deasupra piramidei */
.morad-pyramid__eyebrow { display: flex; justify-content: center; margin: 0 0 1.4rem; }

/* Sigle certificare */
.morad-cert { text-align: start; }
.morad-cert__logo { display: flex; align-items: center; height: 56px; margin-bottom: 1.1rem; }
.morad-cert__logo img { max-height: 56px; max-width: 170px; width: auto; object-fit: contain; }

/* Card de certificare cu PDF atașat — devine link către certificatul scanat. */
.morad-cert--doc { display: block; color: var(--ink); text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.morad-cert--doc:hover, .morad-cert--doc:focus-visible { transform: translateY(-3px); box-shadow: var(--shadow); border-color: var(--green); color: var(--ink); }
.morad-cert__doc { display: inline-flex; align-items: center; gap: .45rem; margin-top: 1.1rem; color: var(--green-deep); font-family: var(--sans); font-size: .82rem; font-weight: 600; letter-spacing: .01em; }
.morad-cert__doc svg { width: 16px; height: 16px; flex: 0 0 auto; }
.morad-cert--doc:hover .morad-cert__doc { text-decoration: underline; text-underline-offset: 3px; }

/* ==========================================================================
   PAGINA „DESPRE NOI" — split image/text, timeline, fabrici cu imagine
   ========================================================================== */
.morad-split { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; }
@media (min-width: 860px) { .morad-split { grid-template-columns: 1fr 1fr; gap: clamp(2.5rem, 4vw, 4rem); } }
.morad-split__media img { width: 100%; height: 100%; max-height: 440px; object-fit: cover; border-radius: var(--radius-lg); box-shadow: var(--shadow); display: block; }
.morad-split__text .morad-title { margin-top: .3rem; }

/* Îndemnul din „Unde ne găsești”: verde, pe un singur rând pe desktop.
   `nowrap` doar de la 860px în sus — pe mobil trebuie să se rupă, altfel iese din ecran. */
.morad-ask { color: var(--forest); font-weight: 500; }
@media (min-width: 860px) { .morad-ask { white-space: nowrap; } }

/* --- Colaj de familie de produse (intro B2B) ------------------------------------
   Decupaj cu fundal transparent, deci NU primește colțuri rotunjite, umbră sau
   `cover` — acelea presupun o fotografie dreptunghiulară. Produsele stau pe o linie
   de bază comună, așa că imaginea NU se retează: o tăietură ar reteza exact bazele
   și grupul ar părea suspendat. Se aliniază jos, ca linia de bază să cadă pe
   muchia secțiunii. */
/* `overflow-x: clip` (nu hidden): taie depășirea spre dreapta fără să creeze
   context de derulare, deci nu strică ancorele și poziționarea sticky. */
.morad-section--cutout { position: relative; overflow-x: clip; }
.morad-split--cutout { align-items: end; }
.morad-split--cutout .morad-split__media img {
	width: 100%; height: auto; max-height: 320px;
	object-fit: contain; object-position: bottom;
	border-radius: 0; box-shadow: none;
}
@media (min-width: 860px) {
	/* Coloana imaginii primește mai mult din grilă, iar imaginea e condusă de ÎNĂLȚIME,
	   nu de lățime — altfel rămâne mică, fiind o compoziție lată (16:9). Are voie să
	   depășească coloana spre dreapta; secțiunea taie surplusul. Baza ei se aliniază
	   cu baza blocului de text (`align-items: end`), deci grupul „stă" pe același rând. */
	.morad-split--cutout { grid-template-columns: .82fr 1.18fr; }
	/* `min-width: 0` e OBLIGATORIU: pistele `fr` au minim `auto`, deci o imagine mai
	   lată decât coloana ar dilata coloana și ar strivi textul în coloana vecină. */
	/* Ancorată la STÂNGA coloanei: surplusul de lățime iese spre marginea liberă din
	   dreapta paginii, nu peste text. Lipită la dreapta, acoperea paragraful și butonul. */
	.morad-split--cutout .morad-split__media { display: flex; justify-content: flex-start; min-width: 0; }
	.morad-split--cutout .morad-split__media img {
		width: auto; height: clamp(320px, 30vw, 420px);
		max-height: none; max-width: none;
		object-position: bottom left;
	}
}
.morad-split--rev .morad-split__media { order: -1; }
@media (min-width: 860px) { .morad-split--rev .morad-split__media { order: 0; } }

/* Timeline pe rail vertical, cu puncte; suportă și intervale de ani (2012–2020). */
/* --- Evoluția noastră: „year stations" -----------------------------------
   Șină cu toți anii vizibili (butoane) + fir brass care se umple până la
   stația activă; sub ea, scena forest cu anul uriaș în fontul display, brass-bright
   (scroller ascuns cu snap = suprafața de „scrub") și copy-ul care face
   crossfade. Navigarea e strict pe index (aterizează exact pe fiecare an). */
.morad-tl2 { --tle: cubic-bezier(.22, .61, .25, 1); margin-top: 2.4rem; }
.mtl-rail { position: relative; margin-bottom: 34px; }
.mtl-stations { display: flex; justify-content: space-between; align-items: flex-end; position: relative; }
.mtl-station { appearance: none; background: none; border: 0; cursor: pointer; display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 6px 2px 0; position: relative; z-index: 2; }
.mtl-station-year { font-family: var(--display); font-weight: 400; font-size: 1rem; letter-spacing: .02em; color: var(--muted); transition: color .4s var(--tle), transform .4s var(--tle); line-height: 1; white-space: nowrap; }
.mtl-station:hover .mtl-station-year { color: var(--green-deep); }
.mtl-station, .mtl-station:hover, .mtl-station:focus, .mtl-station:active { background: none; box-shadow: none; -webkit-tap-highlight-color: transparent; }
.mtl-station:hover .mtl-station-tick { background: var(--brass); border-color: var(--brass); box-shadow: 0 0 0 4px rgba(194, 160, 107, .2); }
.mtl-station:focus-visible { outline: none; }
.mtl-station:focus-visible .mtl-station-tick { box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--brass); }
.mtl-station-tick { width: 7px; height: 7px; transform: rotate(45deg); background: #fff; border: 1.5px solid var(--line); transition: background .4s var(--tle), border-color .4s var(--tle), box-shadow .4s var(--tle), transform .4s var(--tle); }
.mtl-station.is-passed .mtl-station-year { color: var(--ink); }
.mtl-station.is-passed .mtl-station-tick { background: var(--brass); border-color: var(--brass); }
.mtl-station.is-active .mtl-station-year { color: var(--green-deep); transform: translateY(-2px); }
.mtl-station.is-active .mtl-station-tick { transform: rotate(45deg) scale(1.5); background: var(--brass); border-color: var(--brass); box-shadow: 0 0 0 4px rgba(194, 160, 107, .22); }
.mtl-track { position: absolute; inset-inline: 0; bottom: 2.5px; height: 2px; background: var(--line); z-index: 0; }
.mtl-track-fill { position: absolute; inset-inline-start: 0; top: 0; height: 100%; width: 0; background: var(--brass); box-shadow: 0 0 12px rgba(194, 160, 107, .55); transition: width .55s var(--tle); }
.mtl-stage { position: relative; background: linear-gradient(150deg, var(--forest) 0%, var(--green-deep) 125%); border-radius: var(--radius-lg); box-shadow: var(--shadow); overflow: hidden; }
.mtl-stage::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(52% 90% at 18% 0%, rgba(255, 255, 255, .08), transparent 60%), radial-gradient(60% 100% at 100% 100%, rgba(1, 105, 58, .55), transparent 62%); }
.mtl-stage-inner { position: relative; z-index: 2; display: flex; align-items: center; gap: 2.4rem; padding: 38px 44px; }
.mtl-copy { display: grid; flex: 1; min-width: 0; }
.mtl-entry { grid-area: 1/1; min-width: 0; opacity: 0; transition: opacity .4s var(--tle), visibility 0s linear .4s; pointer-events: none; visibility: hidden; }
.mtl-entry.is-active { opacity: 1; pointer-events: auto; visibility: visible; transition: opacity .4s var(--tle); }
.mtl-entry h3 { font-family: var(--display); font-weight: 600; font-size: 1.7rem; line-height: 1.2; color: #fff; letter-spacing: .005em; margin: 0; }
.mtl-entry p { margin: 12px 0 0; font-family: var(--sans); font-size: .95rem; line-height: 1.7; color: rgba(246, 247, 242, .82); }
.mtl-nav { display: flex; gap: 12px; flex: 0 0 auto; }
.mtl-arrow { appearance: none; cursor: pointer; width: 44px; height: 44px; border-radius: 50%; background: transparent; border: 1px solid rgba(241, 224, 185, .45); color: var(--brass-bright); display: grid; place-items: center; padding: 0; transition: background .35s var(--tle), color .35s var(--tle), border-color .35s var(--tle), opacity .35s var(--tle); }
.mtl-arrow:focus, .mtl-arrow:active { background: transparent; color: var(--brass-bright); }
.mtl-arrow:hover:not(:disabled) { background: var(--brass-bright); color: var(--green-deep); border-color: var(--brass-bright); }
.mtl-arrow:focus-visible { outline: 2px solid var(--brass-bright); outline-offset: 3px; }
.mtl-arrow:disabled { opacity: .3; cursor: default; }
.mtl-arrow svg { display: block; }
html[dir="rtl"] .mtl-arrow svg { transform: scaleX(-1); }
@media (max-width: 980px) {
	.mtl-stage-inner { flex-direction: column; align-items: stretch; gap: 1.4rem; padding: 28px 26px 24px; }
	.mtl-nav { justify-content: flex-end; }
	.mtl-station-year { font-size: .8rem; }
}
@media (max-width: 640px) {
	.mtl-station:not(.is-active) .mtl-station-year { font-size: .62rem; }
	.mtl-entry h3 { font-size: 1.5rem; }
}

/* Misiune & Viziune — două carduri */
.morad-mv { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin-top: 2.2rem; }
@media (min-width: 800px) { .morad-mv { grid-template-columns: 1fr 1fr; gap: 2rem; } }
.morad-mv__item { background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1.7rem, 3vw, 2.5rem); }

/* --- „Ce ne ghidează” pe bandă verde, cu motiv discret (30 iul. 2026) ------------
   Motivul e frunza din setul propriu de iconuri, în auriu translucid — nu un pattern
   generic. Stă doar pe fond, la opacitate mică, deci se simte fără să concureze textul.
   Cardurile trec pe sticlă translucidă: pe verde, cardurile ALBE au fost respinse. */
.morad-section--guide {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'%3E%3Cg fill='none' stroke='%23e8b657' stroke-opacity='0.14' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M56 30C36 30 25 41 24 61c20 1 32-11 32-31Z'/%3E%3Cpath d='M24 61c8-13 20-24 32-31'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 210px 210px;
}
.morad-section--guide .morad-mv__item {
	background: linear-gradient(160deg, rgba(255,255,255,.11), rgba(255,255,255,.05));
	border-color: rgba(255,255,255,.22);
	box-shadow: 0 20px 44px rgba(6,58,30,.30);
}
.morad-section--guide .morad-mv__item h3 { color: #fff; }
.morad-section--guide .morad-mv__item p { color: rgba(255,255,255,.9); }

/* --- Linii verzi oblice pe fundal (categorii B2B) -------------------------------
   Regula vine DUPĂ `.morad-bone`, care setează `background` ca shorthand — invers,
   culoarea ar șterge imaginea. Liniile sunt subțiri și la 7% opacitate: la densitatea
   asta se citesc ca textură, nu ca dungi. Cardurile albe stau deasupra și rămân clare. */
.morad-section--lines {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Cpath d='M-7 7 7 -7M0 26 26 0M19 33 33 19' stroke='%23128D40' stroke-opacity='0.07' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E");
	background-repeat: repeat;
}
.morad-mv__item .morad-eyebrow { margin-bottom: .7rem; }
.morad-mv__item h3 { font-family: var(--display); font-weight: 600; font-size: clamp(1.35rem, 2.4vw, 1.65rem); margin: 0 0 .8rem; letter-spacing: -.01em; }
.morad-mv__item p { font-family: var(--sans); color: var(--muted); line-height: 1.75; font-size: 1rem; margin: 0; }

/* Chips categorii pe cardul de fabrică (fundal forest) */
.morad-fac__cats { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1.3rem; }
.morad-fac__cat { font-family: var(--sans); font-size: .76rem; letter-spacing: .015em; padding: .34rem .78rem; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; color: rgba(255,255,255,.85); }

/* fabrici cu imagine pe card (peste stilul de pe homepage) */
.morad-fac__img { margin: -2rem -2rem 1.4rem; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
.morad-fac__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.morad-certs--about { margin-top: clamp(2rem, 4vw, 3rem); }

/* ==========================================================================
   NEWSLETTER (înlocuiește CTA) — stil card premium cu offset verde
   ========================================================================== */
.morad-news {
	position: relative; overflow: hidden;
	background: var(--forest); color: #fff; border-radius: 26px;
	padding: clamp(1.5rem, 3vw, 2.1rem) clamp(2rem, 5vw, 3.4rem);
	display: flex; flex-direction: column; gap: 1.6rem;
	box-shadow: 8px 8px 0 var(--green-deep); /* dublura decalată: subțire, verde închis dar clar verde (#0a2a14 părea negru — respins) */
}
@media (min-width: 860px) {
	.morad-news { flex-direction: row; align-items: center; gap: 1.5rem; }
	.morad-news .morad-news__text { flex: 0 0 65%; max-width: none; }
	.morad-news .morad-news__action { flex: 1 1 auto; display: flex; justify-content: center; }
}
.morad-news__action { display: flex; flex-wrap: wrap; gap: .9rem; align-items: center; }
.morad-news__pattern { position: absolute; inset: 0; pointer-events: none; opacity: .5;
	background:
		radial-gradient(circle at 90% -10%, rgba(13,177,75,.35), transparent 45%),
		radial-gradient(circle at 8% 120%, rgba(13,177,75,.25), transparent 40%);
}
.morad-news__text { position: relative; max-width: 460px; }
.morad-news__title { color: #fff; font-family: var(--display); font-weight: 600; font-size: clamp(1.7rem, 3.4vw, 2.5rem); margin: 0 0 .5rem; line-height: 1.1; }
.morad-news__sub { color: rgba(255,255,255,.82); font-family: var(--sans); font-size: 1.02rem; line-height: 1.55; margin: 0; }
.morad-news__form { position: relative; display: flex; align-items: center; gap: .4rem;
	background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.28); border-radius: 999px;
	padding: .4rem .4rem .4rem 1.4rem; width: 100%; max-width: 520px; }
.morad-news__form input { flex: 1 1 auto; min-width: 0; background: transparent; border: 0; outline: none; color: #fff; font-family: var(--sans); font-size: 1rem; padding: .6rem 0; }
.morad-news__form input::placeholder { color: rgba(255,255,255,.6); }
.morad-news__form .morad-btn { flex: 0 0 auto; white-space: nowrap; }

/* --- Bară credits footer (fix vizibilitate + layout stânga/dreapta) ------- */
footer.site-info { background: #0a2a14 !important; color: rgba(255,255,255,.6); }
.site-info .inside-site-info { display: block; padding-top: 14px; padding-bottom: 14px; max-width: 100%; width: 100%; padding-left: 0; padding-right: 0; }
.morad-credits { display: flex; flex-direction: column; gap: .6rem; align-items: flex-start; font-family: var(--sans); font-size: .82rem; }
@media (min-width: 720px) { .morad-credits { flex-direction: row; align-items: center; justify-content: space-between; } }
.morad-credits__copy { color: rgba(255,255,255,.6); }
.morad-credits__legal { display: flex; flex-wrap: wrap; gap: 1.2rem; }
.morad-credits__legal a { color: rgba(255,255,255,.78); }
.morad-credits__legal a:hover { color: #fff; }
@media (max-width: 768px) { .morad-credits__legal a { display: inline-block; padding: .35rem 0; } }
.morad-news__action { position: relative; flex: 0 0 auto; }

/* --- Zid de logo-uri branduri (dale clickable) ---------------------------
   Flex cu wrap centrat: la 7 branduri rândul incomplet (3 dale) stă centrat
   sub rândul plin de 4, în loc să rămână agățat la stânga ca într-un grid. */
.morad-logowall { display: flex; flex-wrap: wrap; justify-content: center; gap: .9rem; margin: 0; }
.morad-logowall__item { flex: 0 0 calc(50% - .45rem); }
@media (min-width: 680px) {
	.morad-logowall { gap: 1.1rem; }
	.morad-logowall__item { flex-basis: calc(25% - .825rem); }
}
/* dală albă cu chenar fin — citește clar ca element apăsabil, fără săgeți */
.morad-logowall__item { position: relative; display: flex; align-items: center; justify-content: center; height: 118px; padding: 1.1rem 1.5rem;
	background: #fff; border: 1px solid var(--line); border-radius: var(--radius); cursor: pointer;
	box-shadow: 0 1px 2px rgba(13, 54, 25, .04);
	transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.morad-logowall__item:hover, .morad-logowall__item:focus-visible { transform: translateY(-5px); border-color: var(--green); box-shadow: var(--shadow); outline: none; }
.morad-logowall__item img { max-height: 66px; max-width: 100%; width: auto; object-fit: contain; transition: transform .25s ease; }
.morad-logowall__item:hover img { transform: scale(1.05); }
.morad-logowall__text { font-family: var(--display); font-weight: 600; font-size: 1.25rem; color: var(--forest); }

/* ==========================================================================
   PAGINĂ DE BRAND — hero showcase + nav categorii + gamă + CTA distribuție
   ========================================================================== */
/* --- Banner brand (split: text pe verde + poză lifestyle vizibilă) --- */
.morad-brandbanner { position: relative; overflow: hidden; background: var(--brand-ink, var(--forest)); color: #fff; }
/* banner fără poză: tentă subtilă din culoarea brandului */
.morad-brandbanner:not(.has-img) { background: linear-gradient(135deg, var(--brand-ink, var(--forest)) 0%, color-mix(in srgb, var(--brand-ink, var(--forest)) 72%, #06140c) 100%); }
.morad-brandbanner__inner { position: relative; z-index: 2; padding-top: clamp(2.2rem, 5vw, 3.6rem); padding-bottom: clamp(2.2rem, 5vw, 3.6rem); }
.morad-brandbanner__text { max-width: 620px; }
.morad-brandbanner__logo { display: inline-flex; align-items: center; justify-content: center; margin-bottom: 1rem;
	background: #fff; padding: .5rem .85rem; border-radius: 14px; box-shadow: 0 8px 22px rgba(0,0,0,.22); }
.morad-brandbanner__logo img { height: 74px; width: auto; max-width: 300px; object-fit: contain; display: block; }
/* utilitar: ascuns vizual, păstrat pentru screen-readers / SEO */
.morad-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.morad-brandbanner__title { color: #fff; font-size: clamp(2.3rem, 5vw, 3.6rem); font-weight: 700; margin: 0 0 .45rem; letter-spacing: -0.015em; }
.morad-brandbanner__range { font-family: var(--sans); font-weight: 600; font-size: clamp(.82rem, 1.3vw, .95rem); letter-spacing: .04em; text-transform: uppercase; color: var(--brass); margin: 0 0 1rem; }
.morad-brandbanner__tagline { font-family: var(--display); font-weight: 500; font-size: clamp(1.15rem, 2vw, 1.5rem); line-height: 1.32; color: #fff; max-width: 28ch; margin: 0 0 .9rem; }
.morad-brandbanner__desc { color: rgba(255,255,255,.8); font-family: var(--sans); font-weight: 300; font-size: 1rem; line-height: 1.6; max-width: 480px; margin: 0; }
.morad-brandbanner__social { display: flex; gap: .6rem; margin-top: 1.6rem; }
.morad-brandbanner__social a { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(255,255,255,.32); color: #fff; transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.morad-brandbanner__social a:hover { background: #fff; color: var(--forest); border-color: #fff; transform: translateY(-2px); }
.morad-brandbanner__social svg { width: 18px; height: 18px; }
/* poza lifestyle — pe mobil fundal în spatele textului (fade), pe desktop jumătatea dreaptă */
.morad-brandbanner.has-img { min-height: 440px; }
.morad-brandbanner__photo { position: absolute; inset: 0; z-index: 1; }
.morad-brandbanner__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
.morad-brandbanner.has-img .morad-brandbanner__photo::before { content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--brand-ink, var(--forest)) 58%, transparent) 0%,
		color-mix(in srgb, var(--brand-ink, var(--forest)) 68%, transparent) 30%,
		color-mix(in srgb, var(--brand-ink, var(--forest)) 80%, transparent) 55%,
		color-mix(in srgb, var(--brand-ink, var(--forest)) 89%, transparent) 78%,
		color-mix(in srgb, var(--brand-ink, var(--forest)) 95%, transparent) 100%); }
@media (min-width: 880px) {
	.morad-brandbanner.has-img .morad-brandbanner__photo { position: absolute; inset: 0 0 0 auto; width: 58%; }
	.morad-brandbanner.has-img .morad-brandbanner__photo img { height: 100%; }
	.morad-brandbanner.has-img .morad-brandbanner__photo::before { content: ""; position: absolute; inset: 0;
		/* fade progresiv (curbă ease-out în trepte fine) — tranziția veche în 3 stopuri era prea bruscă */
		background: linear-gradient(90deg,
			var(--brand-ink, var(--forest)) 0%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 87%, transparent) 12%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 68%, transparent) 26%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 46%, transparent) 40%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 27%, transparent) 54%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 12%, transparent) 68%,
			color-mix(in srgb, var(--brand-ink, var(--forest)) 4%, transparent) 82%,
			transparent 94%); }
	.morad-brandbanner.has-img .morad-brandbanner__text { max-width: 44%; }
	/* înălțime uniformă pe TOATE bannerele (ca la Mandy), cu sau fără poză; text centrat vertical */
	.morad-brandbanner .morad-brandbanner__inner { min-height: 640px; display: flex; flex-direction: column; justify-content: center; }
}

/* --- Banner „deschis”: culoarea de brand e luminoasă (piersica Capricii, cremul Topoloveni) —
       fundal = culoarea însăși, text închis (ink-ul derivat rămâne pentru accente) --- */
.morad-brandbanner--light { background: var(--brand); color: var(--ink); }
.morad-brandbanner--light:not(.has-img) { background: linear-gradient(135deg, var(--brand) 0%, color-mix(in srgb, var(--brand) 82%, #fff) 100%); }
.morad-brandbanner--light .morad-brandbanner__title { color: var(--ink); }
.morad-brandbanner--light .morad-brandbanner__range { color: var(--brand-ink, var(--green-deep)); }
.morad-brandbanner--light .morad-brandbanner__tagline { color: var(--ink); }
.morad-brandbanner--light .morad-brandbanner__desc { color: color-mix(in srgb, var(--ink) 78%, transparent); }
.morad-brandbanner--light .morad-brandbanner__social a { border-color: color-mix(in srgb, var(--ink) 30%, transparent); color: var(--ink); }
.morad-brandbanner--light .morad-brandbanner__social a:hover { background: var(--brand-ink, var(--ink)); border-color: var(--brand-ink, var(--ink)); color: #fff; }
.morad-brandbanner--light .morad-brandbanner__nav a { border-color: color-mix(in srgb, var(--ink) 30%, transparent); color: var(--ink); background: color-mix(in srgb, #fff 30%, transparent); }
.morad-brandbanner--light .morad-brandbanner__nav a:hover { background: var(--brand-ink, var(--ink)); border-color: var(--brand-ink, var(--ink)); color: #fff; }
.morad-brandbanner--light.has-img .morad-brandbanner__photo::before {
	background: linear-gradient(180deg,
		color-mix(in srgb, var(--brand) 58%, transparent) 0%,
		color-mix(in srgb, var(--brand) 68%, transparent) 30%,
		color-mix(in srgb, var(--brand) 80%, transparent) 55%,
		color-mix(in srgb, var(--brand) 89%, transparent) 78%,
		color-mix(in srgb, var(--brand) 95%, transparent) 100%); }
@media (min-width: 880px) {
	.morad-brandbanner--light.has-img .morad-brandbanner__photo::before {
		background: linear-gradient(90deg,
			var(--brand) 0%,
			color-mix(in srgb, var(--brand) 87%, transparent) 12%,
			color-mix(in srgb, var(--brand) 68%, transparent) 26%,
			color-mix(in srgb, var(--brand) 46%, transparent) 40%,
			color-mix(in srgb, var(--brand) 27%, transparent) 54%,
			color-mix(in srgb, var(--brand) 12%, transparent) 68%,
			color-mix(in srgb, var(--brand) 4%, transparent) 82%,
			transparent 94%); }
}

/* --- Navigare între branduri: două săgeți discrete în bannerul de brand, jos-dreapta --- */
.morad-brandbanner__nav { position: absolute; z-index: 3; inset-inline-end: clamp(1.1rem, 4vw, 2.6rem); bottom: clamp(1.1rem, 3vw, 1.8rem); display: flex; gap: .5rem; }
.morad-brandbanner__nav a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255,255,255,.42); color: #fff; background: rgba(9,28,17,.26); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.morad-brandbanner__nav svg { width: 14px; height: 14px; }
html[dir="rtl"] .morad-brandbanner__nav svg { transform: scaleX(-1); }
.morad-brandbanner__nav a:hover { background: #fff; color: var(--forest); border-color: #fff; transform: translateY(-2px); }

/* --- Grupe categorii (titlu centrat, vizual) --- */
.morad-catgroup { margin-bottom: clamp(2.6rem, 5vw, 4.2rem); }
.morad-catgroup:last-child { margin-bottom: 0; }
.morad-catgroup__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.6rem; }
.morad-catgroup__title-wrap { display: inline-flex; align-items: center; gap: .8rem; }
/* Iconul de categorie: implicit tentă palidă + glif închis. La brandurile cu culoare
   secundară (`brand_culoare_accent`) trece pe culoarea plină a brandului cu glif în accent
   — variabilele vin din taxonomy-brand.php doar acolo, restul cad pe fallback. */
.morad-catgroup__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--brand-accent-bg, var(--brand-wash, var(--green-soft))); color: var(--brand-accent, var(--brand-ink, var(--green-deep))); flex: 0 0 auto; }
.morad-catgroup__icon svg { width: 24px; height: 24px; }

/* ==========================================================================
   CARUSEL DE PACKSHOT-URI — trei benzi, cea din mijloc mai mare și inversă
   Pista conține setul de imagini de DOUĂ ori, iar animația o mută cu exact
   -50%: la reluare a doua copie stă unde era prima, deci bucla nu are cusătură.
   ========================================================================== */
/* Plăcile sunt albe, deci secțiunea are nevoie de fond ne-alb ca ele să se citească.
   Tentă verde slabă: separă de blocul crem de deasupra și aduce puțină culoare. */
.morad-section--reel { background: var(--green-soft); }
/* Titlul stă mai jos în ierarhie decât celelalte capete de secțiune (48px): aici
   conținutul sunt PRODUSELE, iar un titlu la fel de mare le concura. La corpul ăsta
   încape pe un rând, deci fără limită de lățime — pe ecrane înguste se rupe natural. */
.morad-section--reel .morad-head { margin-bottom: 2.4rem; }
/* Titlu „liniștit”: aceeași voce ca citatul din „Cine suntem” (verde forest, italic,
   greutate 500). Clasă PROPRIE, nu legată de `--reel`: secțiunea de carusel e folosită
   și pe „Brandurile noastre”, unde titlul e h1-ul paginii și trebuie să rămână mare. */
.morad-title--quiet {
	font-size: clamp(1.25rem, 2.2vw, 1.8rem);
	font-weight: 500; font-style: italic; color: var(--forest);
	line-height: 1.3; letter-spacing: -0.004em;
}
/* Pe arabă și chineză italicul nu există ca stil tipografic — rămâne drept. */
html[dir="rtl"] .morad-title--quiet,
html[lang="zh-CN"] .morad-title--quiet { font-style: normal; }

/* Lead-ul pe toată lățimea ar da rânduri prea lungi pentru citit. */
.morad-portfhero__head .morad-lead { max-width: 68ch; margin-inline: auto; }
.morad-reel { position: relative; display: grid; gap: clamp(.6rem, 1.4vw, 1.1rem); overflow: hidden; }
/* marginile se estompează, ca imaginile să nu fie tăiate brusc de bordul ecranului */
.morad-reel {
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
	        mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
}
.morad-reel__row { overflow: hidden; }
.morad-reel__track {
	display: flex; align-items: center; width: max-content;
	gap: var(--reel-gap, 1rem);
	animation: morad-reel-run linear infinite;
}
@keyframes morad-reel-run { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* Fiecare produs stă într-o PLACĂ PĂTRATĂ albă: packshot-urile au proporții foarte
   diferite (borcan înalt vs conservă lată) și, lăsate libere, se ciocnesc. Placa dă
   ordinea, iar imaginea se încadrează în ea cu `contain`. */
.morad-reel__item {
	flex: 0 0 auto; box-sizing: border-box;
	width: var(--reel-tile, 150px); height: var(--reel-tile, 150px);
	display: flex; align-items: center; justify-content: center;
	/* padding legat de PLACĂ, nu procentual: procentele s-ar calcula față de pistă,
	   care are `width: max-content` — dependență circulară, plăcile explodează */
	padding: calc(var(--reel-tile, 150px) * .12);
	background: #fff; border-radius: 18px;
	box-shadow: 0 1px 2px rgba(13, 54, 25, .04);
}
.morad-reel__item img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }

/* TREI mărimi și TREI viteze — asta dă adâncimea. Banda mare merge cel mai lent:
   la masă vizuală mare, aceeași viteză pare fugă. */
.morad-reel__row--1 { --reel-tile: clamp(96px, 11vw, 150px); --reel-gap: clamp(.5rem, 1.1vw, .9rem); }
.morad-reel__row--2 { --reel-tile: clamp(124px, 14.5vw, 200px); --reel-gap: clamp(.6rem, 1.4vw, 1.15rem); }
.morad-reel__row--3 { --reel-tile: clamp(78px, 8.6vw, 118px); --reel-gap: clamp(.4rem, .9vw, .75rem); }

.morad-reel__row--1 .morad-reel__track { animation-duration: 58s; }
.morad-reel__row--2 .morad-reel__track { animation-duration: 76s; animation-direction: reverse; }
.morad-reel__row--3 .morad-reel__track { animation-duration: 44s; }

@media (prefers-reduced-motion: reduce) {
	.morad-reel__track { animation: none; }
	/* fără mișcare pista ar arăta trunchiată — rămâne parcurgerea manuală */
	.morad-reel__row { overflow-x: auto; }
}

/* ==========================================================================
   INTRARE ÎN CASCADĂ — text hero + secțiuni la scroll
   REGULĂ DE SIGURANȚĂ: starea ascunsă se aplică DOAR dacă JS a pornit
   (`html.morad-anim`) ȘI utilizatorul nu a cerut mai puțină mișcare.
   Fără JS sau cu reduced-motion, totul rămâne vizibil normal — conținutul
   nu depinde niciodată de animație ca să existe.
   ========================================================================== */
@media (prefers-reduced-motion: no-preference) {
	.morad-anim .morad-rise {
		opacity: 0;
		transform: translateY(22px);
		transition: opacity .55s cubic-bezier(.22, .61, .36, 1),
		            transform .55s cubic-bezier(.22, .61, .36, 1);
		transition-delay: var(--d, 0ms);
		will-change: opacity, transform;
	}
	.morad-anim .morad-rise.is-in { opacity: 1; transform: none; }

	/* Hero: pornește mai de jos și aterizează cu un mic salt peste țintă. */
	.morad-anim .morad-hero .morad-rise {
		transform: translateY(30px);
		transition-duration: .72s;
		transition-timing-function: cubic-bezier(.22, 1.16, .36, 1);
	}
	/* Imaginile mari intră doar prin opacitate — deplasarea lor se vede ca zgâlțâială. */
	.morad-anim .morad-split__media.morad-rise,
	.morad-anim .morad-fac__img.morad-rise,
	.morad-anim .morad-article__media.morad-rise { transform: none; }
}

/* ==========================================================================
   NEWSROOM — lista de noutăți + articolul
   ========================================================================== */
.morad-posts { display: grid; grid-template-columns: 1fr; gap: 1.4rem; margin-top: 2.6rem; }
@media (min-width: 760px) { .morad-posts { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1080px) { .morad-posts { grid-template-columns: repeat(3, 1fr); } }
.morad-post { background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--brass);
	border-radius: var(--radius); overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.morad-post:hover { transform: translateY(-3px); box-shadow: var(--shadow); border-color: var(--green); }
.morad-post__link { display: flex; flex-direction: column; height: 100%; padding: 1.7rem; color: var(--ink); }
.morad-post__date { font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--brass); }
.morad-post__title { font-family: var(--display); font-weight: 600; font-size: 1.22rem; line-height: 1.3;
	margin: .7rem 0 .6rem; color: var(--forest); }
.morad-post__excerpt { font-size: .9rem; line-height: 1.6; color: var(--muted); margin: 0; }
.morad-post__more { margin-top: auto; padding-top: 1.2rem; font-size: .82rem; font-weight: 600; color: var(--green-deep); }
.morad-post:hover .morad-post__more { text-decoration: underline; text-underline-offset: 3px; }
.morad-newsroom__empty { text-align: center; margin-top: 2rem; }

.morad-pagination { margin-top: 2.6rem; text-align: center; }
.morad-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; height: 40px; padding: 0 .8rem; margin: 0 .18rem; border: 1px solid var(--line);
	border-radius: 999px; color: var(--ink); font-size: .9rem; }
.morad-pagination .page-numbers.current { background: var(--forest); border-color: var(--forest); color: #fff; font-weight: 600; }
.morad-pagination a.page-numbers:hover { border-color: var(--green); color: var(--green-deep); }

.morad-article__wrap { max-width: 760px; }
.morad-article__head { margin-bottom: 2.2rem; }
.morad-article__back { display: inline-block; font-size: .78rem; font-weight: 600; letter-spacing: .1em;
	text-transform: uppercase; color: var(--muted); margin-bottom: 1.4rem; }
.morad-article__back:hover { color: var(--green-deep); }
.morad-article__date { display: block; font-size: .74rem; font-weight: 600; letter-spacing: .12em;
	text-transform: uppercase; color: var(--brass); margin-bottom: .7rem; }
.morad-article__title { font-family: var(--display); font-weight: 700; font-size: clamp(1.9rem, 4vw, 2.9rem);
	line-height: 1.14; letter-spacing: -.012em; }
.morad-article__media { margin: 0 0 2.2rem; border-radius: var(--radius-lg); overflow: hidden; }
.morad-article__media img { display: block; width: 100%; height: auto; }
.morad-article__body { font-size: 1.02rem; line-height: 1.75; color: #3D463F; }
.morad-article__body p { margin: 0 0 1.15rem; }
.morad-article__body h2 { font-family: var(--display); font-weight: 600; font-size: 1.5rem; color: var(--forest);
	margin: 2.2rem 0 .8rem; line-height: 1.25; }
.morad-article__body ul { margin: 0 0 1.15rem 1.1rem; }
.morad-article__body li { margin-bottom: .45rem; }
.morad-article__body a { color: var(--green-deep); text-decoration: underline; text-underline-offset: 3px; }
.morad-article__body em { color: inherit; }
/* Nota de sursă de la finalul articolelor de presă */
.morad-article__body .morad-source { margin-top: 2.4rem; padding-top: 1.2rem; border-top: 1px solid var(--line);
	font-size: .84rem; color: var(--muted); }
.morad-catgroup__title { font-family: var(--display); font-weight: 600; font-size: clamp(1.4rem, 2.8vw, 2rem); margin: 0; letter-spacing: -0.015em; }
.morad-catgroup__count { font-family: var(--sans); font-weight: 600; font-size: .82rem; color: var(--brand-ink, var(--green-deep)); background: var(--brand-wash, var(--green-soft)); border-radius: 999px; padding: .2rem .7rem; line-height: 1.4; }
.morad-catgroup__nav { display: flex; gap: .5rem; flex: 0 0 auto; }
.morad-catnav { width: 40px; height: 40px; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 1.3rem; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: border-color .2s ease, color .2s ease, background .2s ease; }
.morad-catnav:hover { border-color: var(--brand-ink, var(--green)); color: var(--brand-ink, var(--green-deep)); }
.morad-catgroup.is-expanded .morad-catgroup__nav { display: none; }

/* carusel: 4 + 1/2 vizibile, scroll-snap; expandat = grid normal */
.morad-catgroup__track.is-carousel { display: flex; gap: 1.1rem; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .4rem; scrollbar-width: none; -ms-overflow-style: none; }
.morad-catgroup__track.is-carousel::-webkit-scrollbar { display: none; }
.morad-catgroup__track.is-carousel > .morad-card { flex: 0 0 calc((100% - 1.1rem) / 2); scroll-snap-align: start; }
@media (min-width: 560px) { .morad-catgroup__track.is-carousel > .morad-card { flex-basis: calc((100% - 2.2rem) / 3); } }
@media (min-width: 1000px) { .morad-catgroup__track.is-carousel > .morad-card { flex-basis: calc((100% - 3.3rem) / 4); } }
.morad-catgroup.is-expanded .morad-catgroup__track.is-carousel { display: grid; overflow: visible; }

/* buton „Vezi toate" */
.morad-catgroup__more { display: flex; justify-content: center; margin-top: 1.4rem; }
.morad-seeall { display: inline-flex; align-items: center; gap: .5rem; font-family: var(--sans); font-weight: 600; font-size: .9rem; color: var(--brand-ink, var(--green-deep)); background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: .6rem 1.4rem; cursor: pointer; box-shadow: 0 1px 2px rgba(13,54,25,.05); transition: border-color .2s ease, box-shadow .2s ease, color .2s ease; }
.morad-seeall:hover { border-color: var(--brand-ink, var(--green)); box-shadow: var(--shadow); }
.morad-seeall__chev { transition: transform .25s ease; font-size: .8rem; }
.morad-catgroup.is-expanded .morad-seeall__chev { transform: rotate(180deg); }

/* --- Carduri pe pagina de brand: doar packshotul în casetă albă, text dedesubt --- */
.morad-grid--brand { margin: 0; gap: 1.6rem 1.1rem; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 680px) { .morad-grid--brand { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .morad-grid--brand { grid-template-columns: repeat(4, 1fr); } }
.morad-grid--brand .morad-card { background: transparent; border: 0; box-shadow: none; border-radius: 0; overflow: visible; }
.morad-grid--brand .morad-card__media { aspect-ratio: 1 / 1; padding: 1.2rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; transition: box-shadow .3s ease, transform .3s ease; }
.morad-grid--brand .morad-card__img { object-fit: contain; }
.morad-grid--brand .morad-card__cta { display: none; }
.morad-grid--brand .morad-card__body { text-align: center; background: transparent; padding: .9rem .4rem 0; }
.morad-grid--brand .morad-card__title { font-size: 1.05rem; margin-bottom: .25rem; }
/* hover: zoom pe poză + umbră pe caseta albă */
.morad-grid--brand .morad-card:hover { transform: none; box-shadow: none; border-color: transparent; }
.morad-grid--brand .morad-card:hover .morad-card__media { transform: translateY(-4px); box-shadow: 0 22px 46px rgba(13, 54, 25, .20); }
.morad-grid--brand .morad-card:hover .morad-card__img { transform: scale(1.08); }
/* badge status produs (Nou / În curând) */
.morad-card__badge { position: absolute; top: 10px; inset-inline-start: 10px; z-index: 3; font-family: var(--sans); font-size: .64rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; padding: .3rem .6rem; border-radius: 999px; line-height: 1; color: #fff; }
.morad-card__badge.is-new { background: var(--brand-ink, var(--green-deep)); }   /* eticheta „Nou" are 10px: pe verdele deschis albul dădea 2,8:1 */
.morad-card__badge.is-soon { background: var(--brass); }

/* --- Bandă CTA distribuție --- */
.morad-brandcta { padding: clamp(2.6rem, 5vw, 4rem) 0; }
.morad-brandcta__inner { display: flex; flex-direction: column; gap: 1.6rem; align-items: flex-start; justify-content: space-between; }
@media (min-width: 800px) { .morad-brandcta__inner { flex-direction: row; align-items: center; gap: 3rem; } }
.morad-brandcta__text { max-width: 620px; }
.morad-brandcta__title { color: #fff; font-size: clamp(1.7rem, 3.5vw, 2.6rem); margin: .3rem 0 .7rem; }
.morad-brandcta__actions { display: flex; flex-wrap: wrap; gap: .8rem; flex: 0 0 auto; }
.morad-forest .morad-btn--outline { color: #fff; border-color: rgba(255,255,255,.55); background: transparent; }
.morad-forest .morad-btn--outline:hover { background: #fff; color: var(--green-deep); border-color: #fff; }
.morad-forest .morad-btn, .morad-news .morad-btn, .morad-cookie .morad-btn { background: #fff; color: var(--brand-ink, var(--green-deep)); border-color: #fff; box-shadow: 0 8px 22px rgba(0,0,0,.18); }
.morad-forest .morad-btn:hover, .morad-news .morad-btn:hover, .morad-cookie .morad-btn:hover { background: rgba(255,255,255,.92); color: var(--brand-ink, var(--green-deep)); }

/* pe pagina de brand brandul e redundant pe card */
.morad-grid--brand .morad-card__brand { display: none; }

/* ==========================================================================
   PAGINA „BRANDURILE NOASTRE" — director premium
   ========================================================================== */
.morad-brandlist { display: grid; gap: 1.25rem; }
.morad-brandrow { display: flex; flex-direction: column; gap: 1.2rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 1.6rem; transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease; }
.morad-brandrow:hover { box-shadow: var(--shadow-hi); transform: translateY(-3px); border-color: transparent; }
@media (min-width: 760px) { .morad-brandrow { flex-direction: row; align-items: center; gap: 2rem; padding: 1.6rem 2rem; } }
.morad-brandrow__logo { flex: 0 0 auto; width: 128px; height: 92px; display: flex; align-items: center; justify-content: center; background: var(--bone); border-radius: var(--radius); padding: .9rem; }
.morad-brandrow__logo img { max-width: 100%; max-height: 100%; object-fit: contain; transition: transform .25s ease; }
.morad-brandrow:hover .morad-brandrow__logo img { transform: scale(1.05); }
.morad-brandrow__logo--ph { background: linear-gradient(135deg, var(--green), var(--green-deep)); }
.morad-brandrow__logo--ph span { font-family: var(--display); font-weight: 600; font-size: 2rem; color: #fff; }
.morad-brandrow__body { flex: 1 1 auto; }
.morad-brandrow__body .morad-eyebrow { margin-bottom: .4rem; }
.morad-brandrow__name { font-family: var(--display); font-weight: 600; font-size: 1.5rem; margin: 0 0 .5rem; }
.morad-brandrow__name a { color: var(--ink); }
.morad-brandrow__name a:hover { color: var(--green-deep); }
.morad-brandrow__desc { font-family: var(--sans); color: var(--muted); font-size: .96rem; line-height: 1.55; margin: 0 0 .6rem; max-width: 640px; }
.morad-brandrow__cats { font-family: var(--sans); color: var(--green-deep); font-size: .82rem; margin: 0; }
.morad-brandrow__action { flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; }
@media (min-width: 760px) { .morad-brandrow__action { align-items: flex-end; text-align: end; } }
.morad-brandrow__count { font-family: var(--sans); color: var(--muted); font-size: .82rem; }

/* Elimină marginile implicite GeneratePress dintre secțiunile de pe homepage */
.home #main > section { margin-bottom: 0; margin-top: 0; }

/* ==========================================================================
   PAGINA BRANDURI v2 — grid premium logo-forward (inspirat CCEP)
   ========================================================================== */
.morad-brandgrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.4rem; }
@media (min-width: 620px) { .morad-brandgrid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .morad-brandgrid { grid-template-columns: repeat(4, 1fr); } }
.morad-brandtile { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; color: inherit;
	transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease; }
.morad-brandtile:hover { transform: translateY(-6px); box-shadow: var(--shadow-hi); border-color: transparent; }
.morad-brandtile__logo { display: flex; align-items: center; justify-content: center; height: 150px; background: var(--bone); padding: 1.6rem; text-align: center; }
.morad-brandtile__logo img { max-height: 78px; max-width: 82%; width: auto; object-fit: contain; transition: transform .35s ease; }
.morad-brandtile:hover .morad-brandtile__logo img { transform: scale(1.07); }
.morad-brandtile__logo--text { font-family: var(--display); font-weight: 600; font-size: 1.5rem; color: var(--forest); }
.morad-brandtile__body { display: flex; flex-direction: column; gap: .35rem; padding: 1.3rem 1.4rem 1.5rem; flex: 1; }
.morad-brandtile__tier { font-family: var(--sans); text-transform: uppercase; letter-spacing: .12em; font-size: .66rem; font-weight: 600; color: var(--green-deep); }
.morad-brandtile__name { font-family: var(--display); font-weight: 600; font-size: 1.35rem; line-height: 1.15; }
.morad-brandtile__desc { font-family: var(--sans); color: var(--muted); font-size: .86rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.morad-brandtile__link { margin-top: auto; padding-top: .9rem; font-family: var(--sans); font-weight: 600; font-size: .85rem; color: var(--green-deep); display: inline-flex; align-items: center; gap: .4rem; }
.morad-brandtile__link span { transition: transform .25s ease; }
.morad-brandtile:hover .morad-brandtile__link span { transform: translateX(4px); }

/* ==========================================================================
   PAGINA BRANDURI v3 — hero cu colaj packshots (stil CCEP)
   ========================================================================== */
.morad-portfhero { display: grid; grid-template-columns: 1fr; gap: 2.5rem; align-items: center; }
@media (min-width: 920px) { .morad-portfhero { grid-template-columns: .82fr 1.18fr; gap: 3.5rem; } }
.morad-portfhero__text .morad-title { margin-bottom: 1rem; }
.morad-portfhero__text .morad-lead { margin-bottom: 1.7rem; }
.morad-portfhero__text .morad-title { font-size: clamp(2.5rem, 5vw, 3.8rem); font-weight: 700; }
/* =========================================================
   CARUSEL DE BRANDURI în hero-ul paginii „Brandurile noastre”
   (17 aug. 2026). Fiecare cadru e acum o COMPOZIȚIE GATA FĂCUTĂ
   per brand, din `assets/img/brandhero/`. A înlocuit compunerea
   din CSS a packshot-urilor individuale (raporturi, suprapuneri
   și factor de încadrare calculate în PHP) — aceea nu ajungea
   niciodată la o compoziție bună.

   Imaginile au fundal ALB, ca pagina, deci nu au nevoie de
   decupare pe alfa și se așază fără nicio ramă.

   Trecerea rămâne o estompare pe CSS, fără JS: primul cadru e
   opac din start, deci conținutul se vede și cu animațiile
   oprite. Fereastra din @keyframes depinde de numărul de
   branduri, așa că se calculează în template (`--reel-n`) și se
   emite acolo, într-un bloc <style> de o linie.
   ========================================================= */
.morad-brandreel-wrap { display: grid; gap: .5rem; }
.morad-brandreel { position: relative; aspect-ratio: 3 / 2; }
.morad-brandreel__slide { position: absolute; inset: 0; opacity: 0; }
.morad-brandreel__slide:first-child { opacity: 1; }
.morad-brandreel__slide img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* Comanda manuală (17 aug. 2026, cerință Vlad): două săgeți discrete sub cadru, la
   capătul din dreapta. La primul clic reel-ul trece în `is-manual` — rotația automată
   se oprește definitiv, fiindcă un cadru care sare singur imediat după clic
   contrazice tocmai gestul utilizatorului. Estomparea o preia tranziția de aici,
   deci cadrele arată la fel ca în rotația automată.
   `is-jump` ține tranziția oprită pentru un frame, cât fixăm cadrul curent la
   trecerea din animație în stare: fără el, oprirea keyframe-urilor duce opacitatea
   la 0 și se vede o clipire. */
.morad-brandreel.is-manual .morad-brandreel__slide { animation: none; opacity: 0; transition: opacity .5s cubic-bezier(.22, .61, .25, 1); }
.morad-brandreel.is-manual .morad-brandreel__slide.is-active { opacity: 1; }
.morad-brandreel.is-jump .morad-brandreel__slide { transition: none; }
/* Cu rotația automată oprită de reduced-motion, săgețile rămân singurul mod de a
   vedea celelalte branduri — deci funcționează, dar schimbă cadrul sec, fără estompare. */
@media (prefers-reduced-motion: reduce) { .morad-brandreel.is-manual .morad-brandreel__slide { transition: none; } }

.morad-reelnav { display: flex; justify-content: flex-end; gap: .5rem; }
.morad-reelnav[hidden] { display: none; }
.morad-reelnav__btn {
	appearance: none; width: 38px; height: 38px; padding: 0; border-radius: 999px;
	border: 1px solid var(--line); background: #fff; color: var(--muted);
	display: grid; place-items: center; cursor: pointer;
	transition: border-color .25s ease, color .25s ease;
	-webkit-tap-highlight-color: transparent;
}
/* GeneratePress dă `background` ÎNCHIS și `color: #fff` pe `button:hover/:focus`, iar
   `button:focus` (0,1,1) bate clasa simplă (0,1,0) — deci se anulează AMÂNDOUĂ explicit.
   Doar fundalul nu ajunge: după clic butonul rămâne focalizat și chevronul rămâne alb
   pe alb, adică săgeata apăsată pare că dispare. */
.morad-reelnav__btn:focus, .morad-reelnav__btn:active { background: #fff; color: var(--muted); }
.morad-reelnav__btn:hover { background: #fff; border-color: var(--green); color: var(--green-deep); }
.morad-reelnav__btn:focus-visible { outline: 2px solid var(--green); outline-offset: 3px; }
.morad-reelnav__btn svg { display: block; }
html[dir="rtl"] .morad-reelnav__btn svg { transform: scaleX(-1); }

/* Colaj: produse plutitoare direct pe fundalul paginii — fără panou, înclinate, umbre fine */
.morad-portfhero__collage { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; align-items: center; }
.morad-portfhero__shot { display: flex; align-items: center; justify-content: center; }
.morad-portfhero__shot img { width: 100%; height: auto; max-height: 130px; object-fit: contain; filter: drop-shadow(0 18px 20px rgba(13,40,22,.22)); }

@media (min-width: 760px) {
	.morad-portfhero__collage { display: block; min-height: 520px; }
	.morad-portfhero__shot { position: absolute; animation: moradFloat 6s ease-in-out infinite; }
	.morad-portfhero__shot img { width: auto; max-height: none; filter: drop-shadow(0 28px 26px rgba(13,40,22,.26)); }
	.morad-portfhero__shot:nth-child(1) { top: 3%;  left: 2%; }    .morad-portfhero__shot:nth-child(1) img { height: 210px; transform: rotate(-12deg); }
	.morad-portfhero__shot:nth-child(2) { top: 28%; left: 34%; }   .morad-portfhero__shot:nth-child(2) img { height: 250px; transform: rotate(6deg); }
	.morad-portfhero__shot:nth-child(3) { top: 1%;  right: 4%; }   .morad-portfhero__shot:nth-child(3) img { height: 200px; transform: rotate(12deg); }
	.morad-portfhero__shot:nth-child(4) { bottom: 3%; left: 6%; }  .morad-portfhero__shot:nth-child(4) img { height: 182px; transform: rotate(-9deg); }
	.morad-portfhero__shot:nth-child(5) { bottom: 2%; right: 6%; } .morad-portfhero__shot:nth-child(5) img { height: 190px; transform: rotate(13deg); }
	.morad-portfhero__shot:nth-child(2) { animation-duration: 8s;   animation-delay: -1s; }
	.morad-portfhero__shot:nth-child(3) { animation-duration: 7.4s; animation-delay: -2.4s; }
	.morad-portfhero__shot:nth-child(4) { animation-duration: 8.4s; animation-delay: -.6s; }
	.morad-portfhero__shot:nth-child(5) { animation-duration: 7.8s; animation-delay: -3s; }
}
@keyframes moradFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }

/* perete logo-uri mai mare pe pagina de branduri */
.morad-logowall--lg .morad-logowall__item { height: 128px; }
.morad-logowall--lg .morad-logowall__item img { max-height: 84px; }

/* ============ ARHIVA DE PRODUSE: toolbar filtre + grid stil brand ============ */
.morad-archive__count { font-family: var(--sans); color: var(--muted); font-size: .85rem; margin: 0 0 1.2rem; }
.morad-archive__empty { font-family: var(--sans); color: var(--muted); margin: 2rem 0; }

.morad-toolbar { display: flex; flex-wrap: wrap; gap: 1rem 2rem; align-items: center; justify-content: space-between; margin: 1.8rem 0 1.4rem; padding-bottom: 1.4rem; border-bottom: 1px solid var(--line); }
.morad-filter, .morad-sort { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.morad-filter__label { font-family: var(--sans); font-size: .72rem; text-transform: uppercase; letter-spacing: .14em; color: var(--muted); font-weight: 600; margin-inline-end: .3rem; }
.morad-chip { font-family: var(--sans); font-size: .85rem; font-weight: 500; line-height: 1; padding: .5rem .9rem; border: 1px solid var(--line); border-radius: 999px; color: var(--ink); background: #fff; white-space: nowrap; transition: border-color .2s ease, color .2s ease, background .2s ease; }
.morad-chip:hover { border-color: var(--green); color: var(--green-deep); }
.morad-chip.is-active { background: var(--forest); border-color: var(--forest); color: #fff; }

/* În arhivă reafișăm brandul pe card (e ascuns pe pagina de brand). */
.morad-grid--archive .morad-card__brand { display: block; }

/* Paginare */
.morad-pagination { margin: 2.5rem 0 1rem; }
.morad-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; }
.morad-pagination .page-numbers { font-family: var(--sans); font-size: .9rem; font-weight: 500; min-width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 .6rem; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: #fff; transition: border-color .2s ease, color .2s ease, background .2s ease; }
.morad-pagination a.page-numbers:hover { border-color: var(--green); color: var(--green-deep); }
.morad-pagination .page-numbers.current { background: var(--forest); border-color: var(--forest); color: #fff; }
.morad-pagination .page-numbers.dots { border-color: transparent; background: transparent; }

/* =========================================================
   COOKIE CONSENT — banner fix jos, fără plugin
   ========================================================= */
.morad-cookie { position: fixed; inset: auto 0 0 0; z-index: 9999; background: var(--forest); color: #fff; box-shadow: 0 -8px 30px rgba(13, 54, 25, .25); }
.morad-cookie__inner { max-width: 1200px; margin: 0 auto; padding: 1rem 1.4rem; display: flex; align-items: center; justify-content: space-between; gap: 1.4rem; flex-wrap: wrap; }
.morad-cookie__text { margin: 0; font-size: .9rem; line-height: 1.55; color: #E8EFE7; flex: 1 1 380px; }
.morad-cookie__text a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.morad-cookie__text a:hover { color: #C4E0A2; }
.morad-cookie__actions { display: flex; gap: .7rem; flex-wrap: wrap; }
.morad-cookie__actions .morad-btn { padding: .55rem 1.2rem; font-size: .85rem; }
.morad-cookie__actions .morad-btn--outline { border-color: rgba(255, 255, 255, .5); color: #fff; background: transparent; }
.morad-cookie__actions .morad-btn--outline:hover { background: rgba(255, 255, 255, .12); border-color: #fff; color: #fff; }

/* =========================================================
   B2B & EXPORT — poziții de lider + documente descărcabile
   ========================================================= */
@media (min-width: 760px) { .morad-statband__grid--3 { grid-template-columns: repeat(3, 1fr); } }

.morad-docs { display: grid; grid-template-columns: 1fr; gap: 2rem; margin-top: 2.4rem; }
@media (min-width: 900px) { .morad-docs { grid-template-columns: 1fr 1fr; } }
.morad-docs__title { font-size: 1.05rem; margin: 0 0 .9rem; color: var(--forest); }
.morad-docs__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
/* Lista unică de documente, pe două coloane egale de la 900px în sus. Gruparea
   pe categorii lăsa 7 cataloage într-o coloană și un singur document în cealaltă. */
.morad-docs__list--doua { margin-top: 2.4rem; column-gap: 2rem; }
@media (min-width: 900px) { .morad-docs__list--doua { grid-template-columns: 1fr 1fr; } }
.morad-doc__link { display: flex; align-items: center; gap: .9rem; background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: .85rem 1.1rem; color: var(--ink); font-weight: 500; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.morad-doc__link:hover { transform: translateY(-2px); box-shadow: var(--shadow); border-color: var(--green); color: var(--green-deep); }
.morad-doc__icon { flex: 0 0 auto; display: inline-flex; width: 22px; height: 22px; color: var(--green-deep); }
.morad-doc__icon svg { width: 100%; height: 100%; }
.morad-doc__name { flex: 1 1 auto; font-size: .93rem; line-height: 1.4; }
.morad-doc__meta { flex: 0 0 auto; display: inline-flex; align-items: center; gap: .5rem; }
.morad-doc__chip { display: inline-flex; padding: .15rem .55rem; border-radius: 999px; background: var(--green-soft); color: var(--green-deep); font-size: .72rem; font-weight: 600; letter-spacing: .04em; }
.morad-doc__size { color: var(--muted); font-size: .78rem; }

/* =========================================================
   DE LA SURSĂ LA RAFT (Despre noi, #trasabilitate)
   ========================================================= */
/* Capul secțiunii folosește lățimea hărților (lead-ul lung ocupă mai puțin pe verticală) */
#trasabilitate .morad-head { max-width: none; }
#trasabilitate .morad-head .morad-lead { max-width: 1080px; margin-inline: auto; }
/* Hărțile stilizate (SVG inline generat, clase mm-*) */
.morad-chainmaps { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4rem; margin-top: clamp(1.6rem, 3vw, 2.4rem); }
@media (max-width: 880px) { .morad-chainmaps { grid-template-columns: 1fr; } }
.morad-mapcard { background: var(--bone); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 1.6rem 1.6rem 1.4rem; }
.morad-mapcard .mm-map { display: block; width: 100%; height: auto; }
.morad-mapcard h3 { margin: 1rem 0 .35rem; font-size: 1.12rem; }
.morad-mapcard p { margin: 0; color: var(--muted); font-size: .93rem; line-height: 1.55; }
.morad-mapcard__points { list-style: none; margin: .8rem 0 0; padding: 0; display: grid; gap: .55rem; }
.morad-mapcard__points li { display: flex; align-items: flex-start; gap: .6rem; font-size: .9rem; line-height: 1.5; color: var(--muted); }
.morad-mapcard__points svg { width: 17px; height: 17px; flex: 0 0 auto; margin-top: .18rem; color: var(--green-deep); }
.mm-land { fill: #E6EAE0; stroke: #D3DAD0; stroke-width: 1; stroke-linejoin: round; }
.mm-sea { fill: #FCFDF9; }
.mm-frame { fill: none; stroke: var(--line); stroke-width: 1; }
.mm-country { fill: #E6EAE0; stroke: #FCFDF9; stroke-width: .9; stroke-linejoin: round; }
.mm-country--ro { fill: #84C98A; stroke: #FCFDF9; }
.mm-route { fill: none; stroke: var(--forest); stroke-width: 1.4; opacity: .45; }
.mm-hq { fill: var(--green-deep); stroke: #fff; stroke-width: 1.5; }
.mm-hq-ring { fill: none; stroke: var(--green-deep); stroke-width: 1.5; opacity: .4; }
.mm-arc { fill: none; stroke: var(--forest); stroke-width: 1.5; opacity: .55; }
/* Iconul de magazin (capetele rutelor din țară): copertină + corp + ușă */
.mm-ico-a { fill: var(--green-deep); stroke: #fff; stroke-width: 1.2; paint-order: stroke; }
.mm-ico-b { fill: var(--forest); stroke: #fff; stroke-width: 1.2; paint-order: stroke; }
.mm-ico-d { fill: #fff; }
/* Pinul de locație (destinațiile de export) */
.mm-pin-b { fill: var(--brass); stroke: #fff; stroke-width: 1.2; paint-order: stroke; }
.mm-pin-c { fill: #fff; }

/* Journey: stepper orizontal în 7 pași — cercurile stau pe o linie de legătură
   fină (segmente între pași), numerotate cu numerale serif brass. Pe ecrane
   mici devine stepper vertical cu aceeași linie. */
.morad-journey { list-style: none; margin: clamp(2rem, 4vw, 3rem) 0 0; padding: 0; display: grid; grid-template-columns: repeat(7, 1fr); gap: .5rem; }
.morad-jstep { position: relative; text-align: center; padding: 0 .55rem; }
.morad-jstep::after { content: ""; position: absolute; top: 26px; inset-inline-start: calc(50% + 34px); inset-inline-end: calc(-50% + 34px); border-top: 1px solid var(--line); }
.morad-jstep:last-child::after { display: none; }
.morad-jstep__icon { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin: 0 auto .85rem; border-radius: 50%; background: var(--green-soft); color: var(--green-deep); }
.morad-jstep__icon svg { width: 24px; height: 24px; }
.morad-jstep__num { display: block; font-family: var(--display); font-weight: 600; font-size: .82rem; letter-spacing: .14em; color: var(--brass); margin-bottom: .3rem; }
.morad-jstep__body h3 { font-size: .95rem; line-height: 1.3; margin: 0 0 .3rem; }
.morad-jstep__body p { font-size: .8rem; line-height: 1.5; color: var(--muted); margin: 0; }
@media (max-width: 1024px) {
	.morad-journey { grid-template-columns: 1fr; gap: 0; max-width: 560px; margin-inline: auto; }
	.morad-jstep { display: grid; grid-template-columns: 52px 1fr; column-gap: 1.1rem; text-align: start; padding: 0 0 1.7rem; }
	.morad-jstep::after { top: 58px; bottom: 8px; inset-inline-start: 26px; inset-inline-end: auto; border-top: 0; border-inline-start: 1px solid var(--line); }
	.morad-jstep:last-child { padding-bottom: 0; }
	.morad-jstep__icon { margin: 0; }
}

/* Panoul de închidere: cele 7 garanții + angajamentul, într-un singur bloc.
   12 aug. 2026 (cerință Vlad): fundal VERDE. E sigiliul care închide lanțul de
   7 pași, deci verde plin — nu crem. Rămâne CARD (rotunjit, cu umbră), nu bandă
   pe toată lățimea: dedesubt urmează banda verde „Poziții de lider” și două
   suprafețe verzi lipite s-ar citi ca o singură pată. */
.morad-chainseal { margin-top: clamp(2.2rem, 4vw, 3rem); background: var(--forest); border: 0; border-radius: var(--radius-lg); padding: 2.2rem 2rem 2rem; box-shadow: 0 18px 40px rgba(6, 58, 30, .16); color: #fff; }
.morad-chainseal__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.3rem 1rem; }
.morad-chainseal__list li { flex: 0 1 132px; display: flex; flex-direction: column; align-items: center; gap: .6rem; text-align: center; font-size: .78rem; font-weight: 600; line-height: 1.4; color: #fff; }
/* Iconurile sunt `stroke: currentColor`, deci urmează culoarea de mai sus; auriul
   deschis le desprinde de text fără să adauge încă o culoare în paletă. */
.morad-chainseal__list svg { width: 21px; height: 21px; color: var(--brass-bright); }
/* Etichetele se rup uniform pe 2 rânduri (span îngust + balance); min-height
   păstrează alinierea și când traducerea încape pe un singur rând. */
.morad-chainseal__list span { max-width: 6.7rem; min-height: 2.8em; text-wrap: balance; }
.morad-chainseal__note { margin: 1.7rem 0 0; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.22); text-align: center; font-family: var(--display); font-style: italic; font-size: 1.1rem; line-height: 1.55; color: rgba(255,255,255,.96); }
html[dir="rtl"] .morad-chainseal__note, html[lang="zh-CN"] .morad-chainseal__note { font-style: normal; }
/* Pe telefon lista rămânea pe UN singur rând per garanție: baza de 132px + gap
   cerea 280px, iar în card încăpeau 270 — cu 10px sub prag. Ieșeau 7 rânduri și
   un card de 812px, adică (de la 12 aug.) o pată verde cât ecranul. Bază pe
   jumătate + padding lateral mai mic → 2 pe rând, 4 rânduri. */
@media (max-width: 560px) {
	.morad-chainseal { padding: 1.9rem 1.2rem 1.6rem; }
	.morad-chainseal__list li { flex: 0 1 calc(50% - .5rem); }
	.morad-chainseal__list span { max-width: none; }
	.morad-chainseal__note { font-size: 1rem; }
}

/* =========================================================
   RTL / ARABĂ — font + corecții specifice scriptului arab
   ========================================================= */
html[dir="rtl"] {
	--display: 'Cairo', 'Segoe UI', Tahoma, Arial, sans-serif;
	--sans: 'Cairo', 'Segoe UI', Tahoma, Arial, sans-serif;
}
/* Araba e script legat: letter-spacing rupe ligaturile. */
html[dir="rtl"] body, html[dir="rtl"] .morad-eyebrow, html[dir="rtl"] .morad-btn,
html[dir="rtl"] .morad-statband__item span, html[dir="rtl"] .morad-doc__chip,
html[dir="rtl"] .morad-filter__label, html[dir="rtl"] .morad-card__badge,
html[dir="rtl"] .morad-footer__title { letter-spacing: 0 !important; }
/* Italicele arată prost pe scriptul arab. */
html[dir="rtl"] em, html[dir="rtl"] i { font-style: normal; }
/* Banner de brand cu poză: pe RTL textul pornește din dreapta → poza trece
   în stânga și gradientul de lizibilitate se oglindește. */
@media (min-width: 880px) {
	html[dir="rtl"] .morad-brandbanner.has-img .morad-brandbanner__photo { inset: 0 auto 0 0; }
	html[dir="rtl"] .morad-brandbanner.has-img .morad-brandbanner__photo::before {
		background: linear-gradient(270deg, var(--brand-ink, var(--forest)) 0%, color-mix(in srgb, var(--brand-ink, var(--forest)) 60%, transparent) 26%, transparent 64%); }
}

/* =========================================================
   CHINEZĂ — font CJK + corecții specifice
   ========================================================= */
html[lang="zh-CN"] {
	--display: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
	--sans: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
}
/* Caracterele chineze nu folosesc italice și nici letter-spacing agresiv. */
html[lang="zh-CN"] em, html[lang="zh-CN"] i { font-style: normal; }
html[lang="zh-CN"] .morad-eyebrow, html[lang="zh-CN"] .morad-footer__title { letter-spacing: .06em; }

/* =========================================================
   LIZIBILITATE PE BENZILE VERZI (#0DB14B)
   Verdele benzilor rămâne EXACT (decizie 20 iul. 2026) — compensăm
   contrastul FĂRĂ a atinge fundalul: (1) alb plin în loc de alb
   estompat, (2) greutate/corp puțin mai mari pe textele mici,
   (3) text-shadow discret verde-închis (întărește muchia literelor,
   imperceptibil ca „efect"). Butoanele și câmpurile nu primesc umbră.
   ========================================================= */
.morad-forest, .morad-footer, .morad-cookie, .morad-news, .morad-hero__proof, .morad-cat:hover,
.morad-chainseal {
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
	text-shadow: 0 1px 2px rgba(6, 58, 30, .28);
}
.morad-forest .morad-btn, .morad-footer .morad-btn, .morad-cookie .morad-btn, .morad-news .morad-btn,
.morad-forest input, .morad-forest textarea, .morad-forest select,
.morad-news input, .morad-cookie input { text-shadow: none; }

/* Alb plin în loc de alb estompat */
.morad-forest .morad-lead { color: rgba(255,255,255,.96); }
/* Cifrele de piață („Poziții de lider”, Despre noi) stau de la 12 aug. 2026 pe
   bandă verde: implicit sunt verde-închis pe alb, adică ilizibile aici. */
.morad-forest .morad-fig b { color: #fff; }
.morad-forest .morad-fig span { color: rgba(255,255,255,.94); }
.morad-pillar p { color: rgba(255,255,255,.92); }
.morad-fac__card p { color: rgba(255,255,255,.94); }
.morad-fac__cat { color: rgba(255,255,255,.96); border-color: rgba(255,255,255,.34); }
.morad-cta__text { color: rgba(255,255,255,.97); }
.morad-news__sub { color: rgba(255,255,255,.95); }
.morad-hero__proof { color: rgba(255,255,255,.94); }
.morad-cookie__text { color: #fff; }
.morad-cat:hover .morad-cat__desc { color: rgba(255,255,255,.95); }

/* Footer: textele mici sunt punctul critic → alb aproape plin + corp și greutate ușor mărite */
.morad-footer { color: rgba(255,255,255,.9); }
.morad-footer__col li { color: rgba(255,255,255,.94); font-size: .88rem; font-weight: 500; }
.morad-footer__col a { color: rgba(255,255,255,.94); font-size: .88rem; font-weight: 500; }
.morad-footer__col a:hover { color: #fff; }

/* Banda de statistici: eticheta de sub cifră puțin mai mare și mai fermă */
.morad-statband__item span { font-size: .84rem; font-weight: 500; }

/* Secțiune fără spațiul obișnuit sus: banda de fotografii vine imediat sub zidul
   de logo-uri, cu care împarte fundalul, deci un gol mare între ele le-ar rupe. */
.morad-section--strans { padding-top: 0; }

/* ============================================================
   MOZAICUL DE FOTOGRAFII (homepage, sub zidul de logo-uri)
   ============================================================
   Prima fotografie ține două coloane și două rânduri; celelalte opt câte una,
   deci grila de 4 coloane iese exact plină pe trei rânduri. Static, ales de Vlad
   pe 1 sept. 2026 dintre trei variante — celelalte două, o bandă continuă și două
   benzi în sensuri opuse, au fost șterse cu tot cu codul lor. */
.morad-bento {
	display: grid; gap: clamp(.6rem, 1.1vw, 1rem);
	grid-template-columns: repeat(2, 1fr);
}
.morad-bento__item { margin: 0; overflow: hidden; border-radius: 14px; aspect-ratio: 4 / 3;
	box-shadow: 0 1px 2px rgba(22,32,26,.05), 0 8px 20px rgba(22,32,26,.06); }
.morad-bento__item img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 760px) {
	.morad-bento { grid-template-columns: repeat(4, 1fr); grid-auto-rows: 1fr; }
	.morad-bento__item--1 { grid-column: span 2; grid-row: span 2; aspect-ratio: auto; }
}

/* =========================================================================
 * Harta la cerere (Contact) și pagina 404 — audit 5 sept. 2026
 * ========================================================================= */
.morad-map__gate { line-height: 1.5; min-height: clamp(320px, 38vw, 440px); display: flex; align-items: center; justify-content: center; padding: 2rem 1.2rem; background-color: var(--bone); background-image: radial-gradient(var(--line) 1.2px, transparent 1.2px); background-size: 22px 22px; border-top: 1px solid var(--line); }
.morad-map__card { max-width: 560px; width: 100%; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1.4rem, 3vw, 2.2rem); text-align: center; box-shadow: var(--shadow); }
.morad-map__pin { display: inline-flex; width: 52px; height: 52px; border-radius: 50%; background: var(--green-soft); color: var(--green-deep); align-items: center; justify-content: center; margin-bottom: .9rem; }
.morad-map__pin svg { width: 26px; height: 26px; }
.morad-map__title { font-size: clamp(1.3rem, 2.4vw, 1.6rem); margin: 0 0 .35rem; }
.morad-map__addr { margin: 0 0 .8rem; color: var(--ink); font-weight: 500; }
.morad-map__note { margin: 0 0 1.2rem; color: var(--muted); font-size: .9rem; line-height: 1.55; }
.morad-map__actions { display: flex; flex-wrap: wrap; gap: .7rem; justify-content: center; }

.morad-404__hero { position: relative; overflow: hidden; padding-top: clamp(2.6rem, 6vw, 4.5rem); }
.morad-404__hero .morad-container { position: relative; }
.morad-404__hero .morad-eyebrow, .morad-404__hero .morad-title, .morad-404__hero .morad-lead { position: relative; z-index: 1; }
.morad-404__hero .morad-title, .morad-404__hero .morad-lead { max-width: 640px; }
.morad-404__num { position: absolute; right: 0; top: -.28em; font-family: var(--display); font-weight: 700; font-size: clamp(7rem, 24vw, 19rem); line-height: 1; letter-spacing: -.04em; color: var(--green-soft); pointer-events: none; user-select: none; z-index: 0; }
.morad-404__actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.6rem; }
.morad-404__sub { font-size: 1.15rem; margin: 0 0 1.1rem; text-align: center; }
.morad-404__branduri { padding-bottom: clamp(3rem, 6vw, 5rem); }
[dir="rtl"] .morad-404__num { right: auto; left: 0; }

/* Cache (7 sept. 2026): bannerul de cookie-uri vine ascuns în HTML și îl arată JS-ul doar fără cookie */
.morad-cookie[hidden] { display: none !important; }
