/*
 * Acoperișuri Vest — layout: bara de sus, antetul și subsolul (desktop).
 * Sursa: Main.dc.html (blocurile „Bara de sus”, „Antet”, „Subsol” + regulile .nav / .foot).
 * Meniul mobil și bara fixă de jos stau în mobile.css.
 */

/* Pe paginile mai scurte decât fereastra (ex. căutare fără rezultat) <main> se întinde, ca subsolul să ajungă
   până jos (fără fâșia de fundal gri sub el); pe paginile lungi nu schimbă nimic. border-box: padding-ul de sub
   bara fixă de pe telefon (mobile.css) intră în înălțimea minimă. */
body{display:flex;flex-direction:column;box-sizing:border-box;min-height:100vh;min-height:100dvh}
body>main{flex:1 0 auto}
/* bara de administrare împinge <html> în jos cu 32 / 46 px: fără ea, pagina scurtă s-ar derula cu atât */
body.admin-bar{min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px)}
@media screen and (max-width:782px){
  body.admin-bar{min-height:calc(100vh - 46px);min-height:calc(100dvh - 46px)}
}

/* În design antetul și subsolul au line-height-ul implicit (normal), nu 1.5 din base.css. */
.av-topbar,.av-header,.foot{line-height:normal}

/* Pe fond închis inelul de focus e roșul „pe fond închis” (#E0675B: 5,7:1 față de #0E1012, 3,4:1 față de haloul alb). */
.av-topbar,.av-header,.foot,.av-bar{--av-focus:var(--av-red-on-dark)}

/* Ținta linkului „Sari la conținut” primește focus din site.js; fără contur pe tot <main>
   (inelul :focus-visible al elementelor interactive rămâne). */
#continut:focus,#continut:focus-visible{outline:none;box-shadow:none}

/* ---------- Bara de sus ---------- */

.av-topbar{background:var(--av-graphite-deep);color:var(--av-text-on-dark-3)}
.av-topbar__in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:9px;padding-bottom:9px;font-size:13px}
.av-topbar__group{display:flex;flex-wrap:wrap;gap:8px 24px}
.av-topbar__lead{color:var(--av-text-on-dark);font-size:11px}
.av-topbar a{color:var(--av-text-on-dark-2);text-decoration:none}
.av-topbar a:hover{color:var(--av-white)}
/* sub 1440 bara rămâne pe un rând: lista zonelor cedează spațiul și se taie cu „…” (sub 900 px bara e ascunsă) */
@media (min-width:900px){
  .av-topbar__in,.av-topbar__group{flex-wrap:nowrap;white-space:nowrap}
  .av-topbar__group{min-width:0}
  .av-topbar__group:first-child{flex:0 1 auto}
  .av-topbar__group:last-child{flex:none}
  .av-topbar__lead{flex:none}
  .av-topbar__group>.hide-sm{min-width:0;overflow:hidden;text-overflow:ellipsis}
}

/* ---------- Antet ---------- */

.av-header{background:var(--av-graphite);border-bottom:1px solid var(--av-line-dark)}
.av-header__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding-top:18px;padding-bottom:18px}

.av-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--av-white)}
.av-brand:hover{color:var(--av-white)}
.av-brand svg{flex:none}
.av-brand__text{display:flex;flex-direction:column;line-height:1}
.av-brand__name{font-size:20px;color:var(--av-white)}
.av-brand__tag{font-size:10px;color:var(--av-text-on-dark-3);margin-top:5px}

.nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 26px}
.nav a{color:var(--av-text-on-dark);text-decoration:none;font-weight:500;font-size:15px;padding:10px 4px}
.nav a:hover{color:var(--av-white)}
.nav a[aria-current]{color:var(--av-white);box-shadow:inset 0 -2px 0 var(--av-red)}
/* min-height: 48 px ca .btn din referință și sub 1100 px, unde .nav a primește 44 px (mai specific decât .btn) */
.nav .av-nav__call{min-height:48px;padding:0 18px;margin-left:8px;box-shadow:none}
.nav .av-nav__call svg{flex:none}

/* ---------- Subsol ---------- */

.foot{background:var(--av-graphite-deep);color:var(--av-text-on-dark-3);padding:64px 0 28px}
.foot a{color:var(--av-text-on-dark-2);text-decoration:none;font-size:14px}
.foot a:hover{color:var(--av-white)}
.foot a[aria-current]{color:var(--av-white)}

.av-foot__in{display:flex;flex-direction:column;gap:44px}
.av-foot__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px}
.av-foot__brand{display:flex;flex-direction:column;gap:14px}
.av-foot__name{font-size:20px;color:var(--av-white)}
.av-foot__company{font-size:14px;line-height:1.7}
.av-foot__col{display:flex;flex-direction:column;gap:10px}
.av-foot__title{font-size:11px;color:var(--av-white)}
.foot .av-foot__tel{color:var(--av-white);font-weight:600;font-size:16px}
.av-foot__program{font-size:14px}
.av-foot__legal{display:flex;gap:14px;margin-top:6px}
.foot .av-foot__legal a{font-size:12px}

.av-foot__bottom{border-top:1px solid var(--av-line-dark);padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}
.av-foot__domain{font-size:10px}

/* ---------- Ținte de atingere ≥ 44 px (SPEC §7, V4-44) ----------
   Sub 1100 px și pe orice ecran tactil (tabletă, iPad orizontal); cu mouse peste 1100 px nu se schimbă nimic.
   Sub 900 px bara de sus și subsolul mare sunt ascunse, iar meniul mobil are regulile lui (mai specifice). */
@media (max-width:1099.98px),(pointer:coarse){
  /* bara de sus: linkurile ocupă toată înălțimea barei (35 → 44 px) */
  .av-topbar__in{padding-top:0;padding-bottom:0}
  .av-topbar__in,.av-topbar__group{align-items:center}
  .av-topbar a{display:inline-flex;align-items:center;min-height:44px}
  /* antetul: sigla 35 → 44 px, meniul 39 → 44 px; rândul nu crește (butonul de telefon are 48 px) */
  .av-brand{min-height:44px}
  .nav a{display:inline-flex;align-items:center;min-height:44px}
  /* subsolul: un link pe rând de 44 px, fără spațiu între ele (zonele nu se suprapun) */
  .av-foot__col{gap:0}
  .av-foot__col>a{display:flex;align-items:center;align-self:flex-start;min-height:44px}
  .av-foot__legal{gap:0;margin-top:0}
  .foot .av-foot__legal a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
}
