/* ============================================================ TOKENURI */
:root{
  --navy:#122A4E; --blue:#053B8A; --green:#4C8952;
  --navy-2:#1D3A63; --ink:#39465C; --muted:#66748C;
  --line:#E2E8F1; --line-2:#EDF1F7;
  --bg:#FFFFFF; --bg-2:#F7FAFD;
  --hero-a:#EFF5FC; --hero-b:#DCEAF9;

  --t-blue-bg:#E8F1FB;   --t-blue-ic:#1A62C4;
  --t-green-bg:#E5F2E8;  --t-green-ic:#347A40;
  --t-amber-bg:#FDF1DE;  --t-amber-ic:#A9700C;
  --t-purple-bg:#EFEAFA; --t-purple-ic:#6949B8;
  --t-teal-bg:#E1F2F2;   --t-teal-ic:#1F7B7B;
  --t-rose-bg:#FBE8EC;   --t-rose-ic:#B23F52;

  --r-s:.5rem; --r-m:.75rem; --r-l:1rem; --r-pill:999px;
  --sh-s:0 1px 2px rgba(18,42,78,.05);
  --sh-m:0 2px 4px rgba(18,42,78,.05), 0 10px 24px -14px rgba(18,42,78,.28);
  --sh-l:0 4px 8px rgba(18,42,78,.05), 0 18px 40px -20px rgba(18,42,78,.35);
  --font: "Inter Variable", Inter, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --design:1448;          /* latimea mockup-ului */
  --wrap-pct:91%;         /* mockup: 1292/1448 = 89.2%; putin mai lat pe ecrane mari */
  color-scheme:light;
}

/* Continutul umple ecranul, dar textul creste sub-liniar.
   Scalarea liniara (1.105vw = proportii identice cu mockup-ul) ajunge la 28px
   font de baza pe un 27", ceea ce e nefolosibil. Aici:
     1366px -> 16.0px    1920px -> 16.8px    2560px -> 17.8px    3440px -> 18.5px
   Latimea containerului creste in schimb pana la 2100px, deci pagina umple
   monitoarele mari fara ca literele sa devina uriase. */
html{font-size:16px}
@media (min-width:1024px){ html{font-size:clamp(16px, 0.156vw + 13.87px, 18.5px)} }

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:400 1rem/1.6 var(--font);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; height:auto; display:block}
a{color:var(--blue); text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{margin:0; color:var(--navy); font-family:var(--font); font-weight:600; line-height:1.2; text-wrap:balance}
p{margin:0}
ul{margin:0; padding:0; list-style:none}
.ico{flex:none}

.wrap{width:min(100% - 2.5rem, var(--wrap-pct)); max-width:2100px; margin-inline:auto}
.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}
.skip-link{position:absolute; left:-9999px; top:0; z-index:100; background:var(--navy); color:#fff; padding:.75rem 1.25rem; border-radius:0 0 var(--r-s) 0}
.skip-link:focus{left:0}
:where(a,button,input,summary,[tabindex]):focus-visible{outline:3px solid var(--blue); outline-offset:2px; border-radius:4px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important; transition-duration:.01ms!important}}

/* tonuri de culoare pentru pictograme */
.ton-blue{--tb:var(--t-blue-bg);--ti:var(--t-blue-ic)}
.ton-green{--tb:var(--t-green-bg);--ti:var(--t-green-ic)}
.ton-amber{--tb:var(--t-amber-bg);--ti:var(--t-amber-ic)}
.ton-purple{--tb:var(--t-purple-bg);--ti:var(--t-purple-ic)}
.ton-teal{--tb:var(--t-teal-bg);--ti:var(--t-teal-ic)}
.ton-rose{--tb:var(--t-rose-bg);--ti:var(--t-rose-ic)}

/* ============================================================= BUTOANE */
.btn{
  display:inline-flex; align-items:center; gap:.5rem; justify-content:center;
  font-weight:600; font-size:.875rem; line-height:1; padding:.72rem 1.15rem;
  border-radius:var(--r-s); border:1.5px solid transparent; cursor:pointer;
  transition:background-color .15s, border-color .15s, color .15s;
}
.btn:hover{text-decoration:none}
.btn-blue{background:var(--blue); color:#fff}
.btn-blue:hover{background:#032F70}
.btn-green{background:var(--green); color:#fff; border-radius:var(--r-pill); padding:.66rem 1.1rem}
.btn-green:hover{background:#33693B}
.btn-ghost{background:#fff; color:var(--navy); border-color:var(--line)}
.btn-ghost:hover{border-color:var(--blue); color:var(--blue)}
.btn-outline{background:transparent; color:var(--navy); border-color:var(--line); border-radius:var(--r-s)}
.btn-outline:hover{border-color:var(--navy)}

/* ============================================================== ANTET */
.site-head{background:#fff; border-bottom:1px solid var(--line-2); position:sticky; top:0; z-index:40}
.head-in{display:flex; align-items:center; gap:1.5rem; min-height:4.875rem}
.brand{display:flex; align-items:center; gap:.7rem; color:var(--navy)}
.brand:hover{text-decoration:none}
.brand-mark{
  width:2.875rem; height:2.875rem; flex:none; border-radius:var(--r-m);
  display:grid; place-items:center; background:var(--t-blue-bg); color:var(--blue);
}
.brand-mark img{width:2.875rem; height:2.875rem; object-fit:contain; border-radius:var(--r-m)}
.brand-name{display:flex; flex-direction:column; line-height:1.22}
.brand-l1{font-family:var(--font); font-weight:600; font-size:1.0625rem; color:var(--navy)}
.brand-l2{font-family:var(--font); font-weight:600; font-size:1.0625rem; color:var(--navy)}

.nav-main{margin-left:auto; display:flex; align-items:center; gap:1.9rem}
.nav-list{display:flex; align-items:center; gap:1.55rem}
.nav-list a{color:var(--navy); font-size:.875rem; font-weight:500; padding:.35rem 0; display:block; position:relative}
.nav-list a:hover{color:var(--blue); text-decoration:none}
.nav-list .current-menu-item>a,.nav-list .current_page_item>a{color:var(--blue)}
.nav-list .current-menu-item>a::after,.nav-list .current_page_item>a::after{
  content:""; position:absolute; left:0; right:0; bottom:-2px; height:2px; background:var(--blue); border-radius:2px;
}

/* ---- meniuri derulante ---------------------------------------------------
   Pe ecran lat submeniul se deschide la trecerea cu mouse-ul SI la focus din
   tastatura (:focus-within), deci merge si fara JavaScript. Butonul cu sageata
   il face utilizabil si pe ecrane tactile, unde „hover” nu exista.
   Pe telefon devine acordeon; pana se incarca JS-ul, submeniurile stau
   deschise, ca meniul sa fie complet chiar daca scriptul nu ajunge. */
.nav-list li{position:relative}
.nav-list .sub-menu{
  display:none; position:absolute; top:100%; left:-.9rem; z-index:30;
  min-width:14rem; padding:.45rem; margin:0; list-style:none;
  background:#fff; border:1px solid var(--line); border-radius:var(--r-m);
  box-shadow:var(--sh-l);
}
.nav-list .menu-item-has-children:hover > .sub-menu,
.nav-list .menu-item-has-children:focus-within > .sub-menu,
.nav-list .menu-item-has-children > .nav-sub-toggle[aria-expanded="true"] + .sub-menu{display:block}
.nav-list .sub-menu a{padding:.5rem .7rem; border-radius:var(--r-s); font-size:.875rem; white-space:nowrap}
.nav-list .sub-menu a:hover{background:var(--bg-2)}
.nav-list .sub-menu .current-menu-item>a{color:var(--blue); background:var(--t-blue-bg)}
.nav-list .sub-menu .current-menu-item>a::after{display:none}

.nav-sub-toggle{
  background:none; border:0; padding:.2rem; margin-left:.25rem; cursor:pointer;
  color:var(--muted); display:inline-flex; align-items:center; border-radius:var(--r-s);
}
.nav-sub-toggle:hover{color:var(--blue)}
.nav-sub-toggle .ico{transition:transform .15s}
.nav-sub-toggle[aria-expanded="true"] .ico{transform:rotate(180deg)}
.nav-list .menu-item-has-children > a{display:inline-block}
.nav-toggle{
  margin-left:auto; display:none; align-items:center; gap:.5rem; background:#fff;
  border:1.5px solid var(--line); border-radius:var(--r-s); padding:.6rem .9rem;
  color:var(--navy); font:600 .92rem var(--font); cursor:pointer;
}

/* =============================================================== HERO */
.hero{position:relative; padding-bottom:0}
.hero-bg{
  position:absolute; inset:0 0 92px 0;
  background:linear-gradient(100deg,var(--hero-a) 0%,var(--hero-b) 34%,var(--hero-b) 44%,rgba(255,255,255,0) 62%);
  z-index:-1;
}
.hero-in{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.06fr); gap:1.5rem; align-items:start; padding:0}
.hero-txt{padding:1.3rem 0 0 1.5rem}
.hero-h{font-size:1.95rem; line-height:1.02; display:flex; flex-direction:column; gap:0}
.hero-h1{color:var(--navy)}
.hero-h2{color:var(--green)}
.hero-p{margin:.55rem 0 0; color:var(--ink); font-size:.8125rem; line-height:1.5; max-width:29rem}
.hero-btns{display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.3rem}
.hero-img{position:relative; margin-right:-5.4vw}
.hero-img img{width:100%; height:19.3rem; object-fit:cover; border-radius:0;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 17%);
  mask-image:linear-gradient(to right,transparent 0,#000 17%)}

/* cele 4 carduri suprapuse */
.cards{display:grid; grid-template-columns:repeat(4,1fr); gap:.75rem; width:76.8%; margin-top:-3.5rem; position:relative; z-index:2}
.card{
  background:#fff; border:1px solid var(--line-2); border-radius:var(--r-m);
  box-shadow:var(--sh-m); padding:.8rem .85rem; display:flex; gap:.65rem; align-items:flex-start;
}
.card-ico{width:2.25rem; height:2.25rem; flex:none; border-radius:var(--r-m); display:grid; place-items:center; background:var(--tb); color:var(--ti)}
.card-body{display:flex; flex-direction:column; gap:.2rem; min-width:0}
.card-h{font-family:var(--font); font-weight:600; font-size:.875rem; color:var(--navy); line-height:1.25}
.card-p{font-size:.75rem; color:var(--muted); line-height:1.38}

/* ============================================== SECTIUNI GENERICE */
.sec{padding:1.7rem 0 0}
.eyebrow{
  font-family:var(--font); font-size:.6875rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; margin:0 0 .9rem;
}
.eyebrow-green{color:#2F6B39}
.eyebrow-navy{color:var(--navy)}
.sec-head{display:flex; align-items:baseline; justify-content:space-between; gap:1rem; flex-wrap:wrap}
.sec-head .eyebrow{margin-bottom:1.15rem}
.lnk{display:inline-flex; align-items:center; gap:.3rem; font-size:.75rem; font-weight:600; color:var(--blue)}
.gol{color:var(--muted); padding:1.5rem 0}

/* ========================================== CIFRE + NOUTATI (2 coloane) */
.split{display:grid; grid-template-columns:minmax(0,.83fr) minmax(0,1fr); gap:1.4rem; padding-top:1.7rem}
.col-noutati{border-left:1px solid var(--line); padding-left:1.4rem}

.stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(0,1fr)); gap:.6rem}
.stat{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-m);
  padding:.85rem .4rem .8rem; text-align:center; display:flex; flex-direction:column; align-items:center; gap:.35rem;
  box-shadow:var(--sh-s);
}
.stat-ico{width:2.1rem; height:2.1rem; border-radius:var(--r-pill); display:grid; place-items:center; background:var(--tb); color:var(--ti); margin-bottom:.15rem}
.stat-n{font-family:var(--font); font-size:1.6rem; font-weight:700; color:var(--navy); line-height:1; font-variant-numeric:tabular-nums}
.stat-l{font-size:.6875rem; color:var(--muted); line-height:1.3}

.news{display:grid; grid-template-columns:repeat(3,1fr); gap:.85rem}
.news-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:1.6rem}
.news-item{background:#fff; border:1px solid var(--line-2); border-radius:var(--r-m); overflow:hidden; box-shadow:var(--sh-s); display:flex}
.news-item>article{display:flex; flex-direction:column; width:100%}
.news-media{position:relative; display:block; background:var(--bg-2)}
.news-media img{width:100%; aspect-ratio:16/5; object-fit:cover}
.news-media-empty{display:block; width:100%; aspect-ratio:16/5; background:linear-gradient(135deg,var(--hero-a),var(--hero-b))}
.news-date{
  position:absolute; left:.5rem; bottom:.5rem; background:rgba(255,255,255,.94); color:var(--navy);
  font-size:.58rem; font-weight:700; letter-spacing:.05em; padding:.2rem .42rem; border-radius:.28rem;
}
.news-h{font-size:.875rem; line-height:1.28; padding:.65rem .75rem 0}
.news-h a{color:var(--navy)}
.news-h a:hover{color:var(--blue); text-decoration:none}
.news-p{font-size:.75rem; color:var(--muted); line-height:1.45; padding:.3rem .75rem 0}
.news-more{padding:.5rem .75rem .8rem; margin-top:auto}
.news-more a{display:inline-flex; align-items:center; gap:.28rem; font-size:.75rem; font-weight:600; color:var(--blue)}

/* ======================================================= ACCES RAPID */
.quick{display:grid; grid-template-columns:repeat(6,1fr); gap:.6rem; width:78.7%}
.quick-item{border-radius:var(--r-m); background:var(--tb)}
.quick-item>a{display:flex; align-items:center; gap:.55rem; padding:.7rem .65rem; color:inherit; height:100%}
.quick-item>a:hover{text-decoration:none}
.quick-item:hover{filter:brightness(.975)}
.quick-ico{width:2.05rem; height:2.05rem; flex:none; border-radius:var(--r-s); display:grid; place-items:center; background:#fff; color:var(--ti)}
.quick-body{display:flex; flex-direction:column; gap:.1rem; min-width:0}
.quick-h{font-family:var(--font); font-weight:600; font-size:.8125rem; color:var(--navy); line-height:1.2}
.quick-p{font-size:.6875rem; color:var(--muted); line-height:1.3}

/* =========================================================== GALERIE */
.gallery{display:grid; grid-template-columns:repeat(6,1fr); gap:.6rem}
.gallery img{width:100%; aspect-ratio:2/1; object-fit:cover; border-radius:var(--r-m)}

/* ============================================================ VALORI */
.valori{display:grid; grid-template-columns:minmax(0,.63fr) minmax(0,2.05fr) minmax(0,1.02fr); gap:1.4rem; align-items:start}
.valori-intro p{color:var(--ink); font-size:.8125rem; line-height:1.5}
.valori-intro .btn{margin-top:.85rem}
.valori-list{display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; border-left:1px solid var(--line); padding-left:1.8rem}
.valori-list li{display:flex; flex-direction:column; align-items:center; text-align:center; gap:.15rem}
.val-ico{width:2.1rem; height:2.1rem; border-radius:var(--r-pill); display:grid; place-items:center; background:var(--tb); color:var(--ti); margin-bottom:.15rem}
.val-h{font-family:var(--font); font-weight:600; font-size:.8125rem; color:var(--navy)}
.val-p{font-size:.6875rem; color:var(--muted); line-height:1.4}
.citat{margin:0; background:var(--bg-2); border:1px solid var(--line-2); border-radius:var(--r-m); padding:1rem 1.1rem; position:relative}
.citat-mark{color:var(--blue); opacity:.35; display:block; margin-bottom:.4rem}
.citat blockquote{margin:0}
.citat blockquote p{font-family:var(--font); font-size:.875rem; line-height:1.5; color:var(--navy)}
.citat figcaption{margin-top:.55rem; font-size:.6875rem; color:var(--muted)}

/* ============================================================ SUBSOL */
.site-foot{background:var(--navy); color:#D7E1EF; margin-top:1.9rem}
.foot-in{display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1.05fr) minmax(0,1.15fr) minmax(0,.85fr); gap:1.6rem; padding:1.7rem 0 1.1rem}
.site-foot .brand-name .brand-l1,.site-foot .brand-name .brand-l2{color:#fff}
.brand-mark-foot{background:rgba(255,255,255,.1); color:#fff}
.foot-brand{display:flex; flex-direction:column; gap:.6rem}
.foot-brand>.brand-mark{margin-bottom:-.3rem}
.foot-brand .brand-name{flex-direction:column}
.foot-adr{display:flex; gap:.45rem; font-size:.75rem; color:#B9C8DC; line-height:1.5}
.foot-adr .ico{margin-top:.15rem; flex:none; opacity:.8}
.foot-h{font-family:var(--font); font-size:.6875rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#fff; margin:0 0 .75rem}
.foot-list{display:flex; flex-direction:column; gap:.45rem}
.foot-list li{display:flex; gap:.5rem; align-items:center; font-size:.75rem; color:#C6D3E4}
.foot-list .ico{opacity:.75; flex:none}
.foot-list a{color:#C6D3E4}
.foot-list a:hover{color:#fff}
.foot-links-grid{display:grid; grid-template-columns:1fr 1fr; gap:1.2rem}
.foot-social{display:flex; gap:.6rem; flex-wrap:wrap}
.foot-social a{width:2.25rem; height:2.25rem; border-radius:var(--r-pill); background:#1C62C9; color:#fff; display:grid; place-items:center}
.foot-social a:hover{background:#2E76DE}
.foot-bar{display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; padding:.75rem 0 .95rem; border-top:1px solid rgba(255,255,255,.12)}
.foot-copy{font-size:.6875rem; color:#A9BAD1}
.foot-legal{display:flex; gap:1.4rem; flex-wrap:wrap}
.foot-legal a{font-size:.6875rem; color:#A9BAD1}
.foot-legal a:hover{color:#fff}

/* ================================================ PAGINI INTERIOARE */
.page-head{background:linear-gradient(160deg,var(--hero-a),#fff); border-bottom:1px solid var(--line-2); padding:2.6rem 0}
.page-h{font-size:clamp(2.125rem, 1.2vw + 1rem, 2.7rem)}
.breadcrumb{font-size:.85rem; color:var(--muted); margin-bottom:.6rem; display:flex; gap:.5rem; flex-wrap:wrap}
.page-meta{display:flex; align-items:center; gap:.4rem; margin-top:.7rem; font-size:.88rem; color:var(--muted)}
.page-search{margin-top:1.2rem; max-width:26rem}
.single-media{margin:0 0 1.8rem}
.single-media img{width:100%; border-radius:var(--r-l)}
.proza{max-width:none}
.proza>*{max-width:70ch}
.proza>.single-media{max-width:none}
.proza p,.proza ul,.proza ol,.proza blockquote,.proza table{margin:0 0 1.15rem}
.proza ul,.proza ol{padding-left:1.3rem}
.proza ul{list-style:disc} .proza ol{list-style:decimal}
.proza li{margin-bottom:.4rem}
.proza h2{font-size:1.5rem; margin:2.2rem 0 .8rem}
.proza h3{font-size:1.2rem; margin:1.8rem 0 .6rem}
.proza blockquote{border-left:3px solid var(--green); padding-left:1.1rem; color:var(--navy)}
.proza img{border-radius:var(--r-m)}
.proza table{width:100%; border-collapse:collapse; font-size:.92rem}
.proza th,.proza td{border:1px solid var(--line); padding:.6rem .8rem; text-align:left}
.proza th{background:var(--bg-2); color:var(--navy)}
.rezultate{display:flex; flex-direction:column; gap:1.6rem}
.rezultate h2{font-size:1.15rem}
.rezultate p{color:var(--muted); margin-top:.3rem}
.post-nav{display:flex; gap:1rem; justify-content:space-between; padding:2.5rem 0 0; flex-wrap:wrap}
.post-nav-a{flex:1 1 260px; border:1px solid var(--line); border-radius:var(--r-m); padding:.9rem 1.1rem; color:var(--navy); font-weight:600}
.post-nav-a span{display:block; font-size:.76rem; font-weight:600; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; margin-bottom:.25rem}
.post-nav-next{text-align:right}
.paginare,.navigation.pagination{margin-top:2.5rem; display:flex; justify-content:center}
.nav-links{display:flex; gap:.4rem; flex-wrap:wrap}
.page-numbers{display:grid; place-items:center; min-width:2.5rem; height:2.5rem; padding:0 .6rem; border:1px solid var(--line); border-radius:var(--r-s); color:var(--navy); font-weight:600; font-size:.9rem}
.page-numbers.current{background:var(--navy); color:#fff; border-color:var(--navy)}
a.page-numbers:hover{border-color:var(--blue); color:var(--blue); text-decoration:none}
.cautare{display:flex; gap:.5rem}
.cautare input{flex:1; border:1.5px solid var(--line); border-radius:var(--r-s); padding:.7rem .9rem; font:inherit; font-size:.95rem; color:var(--navy); background:#fff}
.cautare input:focus{border-color:var(--blue); outline:none}
.cautare button{background:var(--navy); color:#fff; border:0; border-radius:var(--r-s); padding:0 1rem; cursor:pointer}

/* ======================================================== RESPONSIVE */
@media (max-width:1180px){
  .quick{grid-template-columns:repeat(3,1fr)}
  .gallery{grid-template-columns:repeat(3,1fr)}
  .valori{grid-template-columns:1fr 1fr; gap:1.8rem}
  .valori-list{grid-template-columns:repeat(4,1fr); border-left:0; padding-left:0; grid-column:1 / -1; order:3; border-top:1px solid var(--line); padding-top:1.6rem}
  .citat{order:2}
}
@media (max-width:1024px){
  .cards,.quick{width:100%}
  .split{grid-template-columns:1fr; gap:2.6rem}
  .col-noutati{border-left:0; padding-left:0; border-top:1px solid var(--line); padding-top:2.4rem}
  .cards{grid-template-columns:repeat(2,1fr); margin-top:-3rem}
  .hero-in{grid-template-columns:1fr; padding:2.4rem 0 4.5rem}
  .hero-bg{background:linear-gradient(170deg,var(--hero-a),var(--hero-b) 70%,#fff)}
  .hero-img{margin-right:0}
  /* Pe o singura coloana textul nu mai sta langa imagine, deci retragerea
     din stanga il scotea din alinierea cu restul paginii. */
  .hero-txt{padding:1.3rem 0 0}
  .hero-img img{
    border-radius:var(--r-l);
    /* min(16rem,38vw) dadea 148px pe un telefon de 390px: fotografia era
       taiata intr-o fasie. Acum pastreaza o inaltime utila si pe ecran mic. */
    height:clamp(12rem,55vw,16rem);
    /* Masca de estompare spre stanga e gandita pentru asezarea pe doua
       coloane, unde imaginea intra sub text. Pe o coloana doar stergea
       marginea stanga a fotografiei. */
    -webkit-mask-image:none; mask-image:none;
  }
}
@media (max-width:900px){
  .nav-toggle{display:inline-flex}
  .nav-main{
    position:absolute; left:0; right:0; top:100%; background:#fff; border-bottom:1px solid var(--line);
    flex-direction:column; align-items:stretch; gap:0; padding:.5rem 1.25rem 1.25rem; display:none;
    box-shadow:var(--sh-l); max-height:calc(100dvh - 4.875rem); overflow-y:auto;
  }
  .nav-main.is-open{display:flex}
  .site-head{position:relative}
  .nav-list{flex-direction:column; align-items:stretch; gap:0}
  .nav-list li{border-bottom:1px solid var(--line-2)}
  .nav-list a{padding:.85rem 0; font-size:1rem}
  .nav-list .current-menu-item>a::after,.nav-list .current_page_item>a::after{display:none}

  /* Submeniul devine listă indentată în interiorul hamburgerului. */
  .nav-list li{position:static}
  .nav-list .sub-menu{
    position:static; display:block; min-width:0; padding:0 0 .5rem .9rem; margin:0;
    border:0; border-radius:0; box-shadow:none; background:transparent;
  }
  /* Odată ce JS-ul a pornit, submeniurile pornesc închise și se deschid din buton. */
  .nav-list.js-gata .sub-menu{display:none}
  .nav-list.js-gata .nav-sub-toggle[aria-expanded="true"] + .sub-menu{display:block}
  .nav-list .sub-menu li{border-bottom:0}
  .nav-list .sub-menu a{padding:.6rem 0; font-size:.9375rem; color:var(--ink); white-space:normal}
  .nav-list .sub-menu a:hover{background:transparent; color:var(--blue)}

  /* Titlul si sageata pe acelasi rand, sageata la capat. */
  .nav-list .menu-item-has-children{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between}
  .nav-list .menu-item-has-children > a{flex:1}
  .nav-list .menu-item-has-children > .sub-menu{flex:1 0 100%}
  .nav-sub-toggle{padding:.85rem .3rem}
  .nav-cta{margin-top:1rem; align-self:flex-start}
  .foot-in{grid-template-columns:1fr 1fr; gap:2rem}
}
@media (max-width:700px){
  .news{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}
  .quick{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr}
  .valori{grid-template-columns:1fr}
  .valori-list{grid-template-columns:1fr 1fr}
  .cards{grid-template-columns:1fr; margin-top:-2rem}
  .foot-in{grid-template-columns:1fr}
  .hero-btns .btn{flex:1 1 100%}
  .post-nav-next{text-align:left}
  /* 1.95rem cu line-height 1.02 se rupea pe doua randuri lipite pe telefon */
  .hero-h{font-size:1.65rem; line-height:1.14}
  /* 13px e prea mic pentru textul principal pe un ecran mic */
  .hero-p{font-size:.9375rem}
}
@media (max-width:480px){
  /* numele scolii nu trebuie sa se rupa in mijlocul lui „Nr. 1” */
  .brand-l1,.brand-l2{font-size:.84rem; white-space:nowrap}
  .brand-mark{width:2.5rem; height:2.5rem}
  .brand-mark img{width:2.5rem; height:2.5rem}
  .nav-toggle{padding:.55rem .7rem}
  .nav-toggle-txt{display:none}
}
@media (max-width:360px){
  .quick,.gallery,.valori-list{grid-template-columns:1fr}
  .brand-l1,.brand-l2{font-size:.78rem}
}

/* ====================================================== REVISTA SCOLII */
.proza>.revista-card,
.revista-card{
  display:grid; grid-template-columns:minmax(0,.62fr) minmax(0,1fr); gap:1.8rem;
  align-items:center; background:var(--bg-2); border:1px solid var(--line);
  border-radius:var(--r-l); padding:1.5rem; margin:0 0 2rem;
  max-width:none;   /* bate .proza>*{max-width:70ch} — aceeasi specificitate, dar mai jos in fisier */
}
/* wpautop lasa paragrafe goale care ocupa celule din grila */
.revista-card>p:empty{display:none}
.revista-cover{display:block; border-radius:var(--r-m); overflow:hidden; box-shadow:var(--sh-l)}
.revista-cover img{width:100%; height:auto; display:block; transition:transform .25s}
.revista-cover:hover img{transform:scale(1.02)}
.revista-info{display:flex; flex-direction:column; gap:.7rem}
.revista-eyebrow{
  font-size:.6875rem; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:#2F6B39; margin:0;
}
.revista-info .revista-h{margin:0; font-size:1.6rem}
.revista-info>*{max-width:none}
.revista-info p{margin:0; font-size:.9375rem; line-height:1.55; color:var(--ink)}
.revista-btns{margin:.4rem 0 0}
.revista-nota{font-size:.75rem; color:var(--muted)}
@media (max-width:760px){
  .revista-card{grid-template-columns:1fr; gap:1.2rem; padding:1.1rem}
  .revista-cover{max-width:16rem; margin-inline:auto}
}

/* ================================================== SECTIUNI SI ATASAMENTE */
/* Adaugate odata cu panoul: eticheta de sectiune si lista de descarcari. */
.page-meta-sectiune{
  display:inline-flex; align-items:center; padding:.15rem .6rem; border-radius:var(--r-pill);
  background:var(--t-purple-bg); color:var(--t-purple-ic);
  font-size:.6875rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
}
.page-meta-sectiune:hover{text-decoration:none; background:#E4DCF7}

.descarcari{margin:2.4rem 0 0; padding-top:1.6rem; border-top:1px solid var(--line)}
.descarcari-h{font-size:1.0625rem; margin:0 0 .8rem}
.descarcari-lista{display:grid; gap:.5rem; max-width:38rem}
.descarcari-lista a{
  display:flex; align-items:center; gap:.6rem;
  background:var(--bg-2); border:1px solid var(--line); border-radius:var(--r-s);
  padding:.7rem .9rem; color:var(--navy); font-weight:600; font-size:.9375rem;
}
.descarcari-lista a:hover{border-color:var(--blue); color:var(--blue); text-decoration:none}
.descarcari-lista .ico{flex:none; color:var(--muted)}
.descarcari-nume{min-width:0; word-break:break-word}
.descarcari-tip{margin-left:auto; font-size:.75rem; font-weight:400; color:var(--muted); white-space:nowrap}
@media (max-width:480px){
  .descarcari-lista a{flex-wrap:wrap}
  .descarcari-tip{margin-left:0; width:100%}
}

/* ================================================== FILTRE SI DOCUMENTE */
/* Barele de filtrare (categorii de stiri si de documente) si lista de
   documente administrative. */
.filtre{display:flex; gap:.45rem; flex-wrap:wrap; margin:0 0 2rem}
.filtru{
  display:inline-flex; align-items:center; padding:.45rem .85rem;
  border:1px solid var(--line); border-radius:var(--r-pill);
  font-size:.8125rem; font-weight:600; color:var(--ink); background:#fff;
}
a.filtru:hover{border-color:var(--blue); color:var(--blue); text-decoration:none}
.filtru.e-activ{background:var(--navy); border-color:var(--navy); color:#fff}

.doc-lista{display:grid; gap:.75rem}
.doc-item{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-m);
  padding:1.1rem 1.25rem; box-shadow:var(--sh-s);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,20rem); gap:1.2rem; align-items:center;
}
.doc-txt{min-width:0}
.doc-h{font-size:1.0625rem; margin:0 0 .3rem}
.doc-h a{color:var(--navy)}
.doc-h a:hover{color:var(--blue); text-decoration:none}
.doc-p{margin:0 0 .5rem; font-size:.9375rem; color:var(--ink); line-height:1.55}
.doc-meta{display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; margin:0; font-size:.8125rem; color:var(--muted)}
.doc-tag{
  display:inline-flex; padding:.15rem .6rem; border-radius:var(--r-pill);
  background:var(--t-blue-bg); color:var(--t-blue-ic);
  font-size:.6875rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
}
.doc-tag:hover{text-decoration:none; background:#D8E8FA}

.doc-fisiere{display:grid; gap:.35rem; margin:0; min-width:0}
.doc-fisier{
  display:flex; align-items:center; gap:.5rem;
  background:var(--bg-2); border:1px solid var(--line); border-radius:var(--r-s);
  padding:.55rem .75rem; font-size:.875rem; font-weight:600; color:var(--navy);
}
.doc-fisier:hover{border-color:var(--blue); color:var(--blue); text-decoration:none}
.doc-fisier .ico{flex:none; color:var(--muted)}
.doc-fisier-nume{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.doc-fisier-tip{margin-left:auto; font-size:.6875rem; font-weight:400; color:var(--muted); white-space:nowrap}
.doc-intro{font-size:1.0625rem; color:var(--navy); font-weight:500; margin:0 0 1.2rem}

/* eticheta de categorie pe cardurile de stiri */
.news-tag{
  display:inline-flex; padding:.15rem .55rem; border-radius:var(--r-pill);
  background:var(--t-purple-bg); color:var(--t-purple-ic);
  font-size:.625rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  margin-bottom:.4rem;
}
.news-tag:hover{text-decoration:none; background:#E4DCF7}

@media (max-width:900px){
  .doc-item{grid-template-columns:1fr; gap:.9rem}
}
@media (max-width:480px){
  .doc-item{padding:1rem}
  .doc-fisier{flex-wrap:wrap}
  .doc-fisier-tip{margin-left:0; width:100%}
}
