/* ============================================================
   New Medical Buzău — Refresh vizual modern (2026)
   modern.css — incarcat ULTIMUL, suprascrie stilurile vechi
   ============================================================ */

:root{
  --nm-purple:#6A1187;
  --nm-purple-d:#4a0a66;
  --nm-purple-l:#8a1bb0;
  --nm-orange:#F17601;
  --nm-orange-l:#ff9a2e;
}

.nm-wrap{ max-width:1180px; margin:0 auto; padding:0 22px; box-sizing:border-box; }
.nm-header *, .nm-topbar *, .nm-footer *{ box-sizing:border-box; }

/* ---------------- TOPBAR ---------------- */
.nm-topbar{ background:var(--nm-purple-d); color:#e9d8f2; font-size:13px; }
.nm-topbar .nm-wrap{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center;
  gap:4px 28px; padding-top:8px; padding-bottom:8px;
}
.nm-topbar-item{ white-space:nowrap; display:inline-flex; align-items:center; gap:6px; }
.nm-topbar a{ color:#fff; text-decoration:none; }
.nm-topbar a:hover{ text-decoration:underline; }

/* ---------------- NAVBAR ---------------- */
.nm-header{
  position:sticky; top:0; z-index:1000;
  background:linear-gradient(90deg,var(--nm-purple) 0%,var(--nm-purple-l) 100%);
  box-shadow:0 4px 20px rgba(40,0,60,.28);
}
.nm-header-inner{ display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:74px; }
.nm-brand{ display:flex; align-items:center; flex:0 0 auto; }
.nm-brand img{ height:50px; width:auto; display:block; background:#fff; border-radius:12px; padding:7px 12px; box-shadow:0 3px 10px rgba(0,0,0,.18); transition:transform .2s; }
.nm-brand:hover img{ transform:scale(1.04); }

.nm-nav{ display:flex; align-items:center; gap:2px; flex-wrap:wrap; justify-content:flex-end; }
.nm-nav a{
  position:relative; color:#fff; text-decoration:none; text-transform:uppercase;
  font-size:13px; font-weight:700; letter-spacing:.3px; white-space:nowrap;
  padding:11px 13px; border-radius:9px; line-height:1.15;
  transition:color .2s, background .2s, transform .15s;
}
.nm-nav a::after{
  content:""; position:absolute; left:13px; right:13px; bottom:7px; height:2px;
  background:var(--nm-orange-l); border-radius:2px;
  transform:scaleX(0); transform-origin:center; transition:transform .28s cubic-bezier(.2,.8,.2,1);
}
.nm-nav a:hover{ background:rgba(255,255,255,.14); transform:translateY(-2px); }
.nm-nav a:hover::after{ transform:scaleX(1); }
.nm-nav a:active{ transform:translateY(0) scale(.97); }
.nm-nav a.is-active{ color:var(--nm-purple); background:#fff; box-shadow:0 4px 12px rgba(0,0,0,.18); }
.nm-nav a.is-active::after{ display:none; }

/* CTA Rezultate analize */
.nm-nav a.nm-cta{
  background:linear-gradient(90deg,var(--nm-orange),var(--nm-orange-l)); color:#fff;
  box-shadow:0 5px 14px rgba(241,118,1,.5); margin-left:8px;
}
.nm-nav a.nm-cta::after{ display:none; }
.nm-nav a.nm-cta:hover{ transform:translateY(-2px) scale(1.04); box-shadow:0 9px 22px rgba(241,118,1,.65); }

/* hamburger */
.nm-toggle{ display:none; }
.nm-burger{ display:none; flex-direction:column; gap:5px; cursor:pointer; padding:9px; }
.nm-burger span{ width:27px; height:3px; background:#fff; border-radius:3px; transition:.25s; }

@media (max-width:1024px){
  .nm-burger{ display:flex; }
  .nm-nav{
    position:fixed; top:0; right:-110%; height:100vh; width:280px; max-width:84vw;
    background:var(--nm-purple); flex-direction:column; align-items:stretch;
    justify-content:flex-start; gap:3px; padding:84px 16px 24px;
    box-shadow:-10px 0 36px rgba(0,0,0,.35); transition:right .32s ease; overflow-y:auto;
  }
  .nm-toggle:checked ~ .nm-nav{ right:0; }
  .nm-nav a{ font-size:15px; padding:14px 14px; border-radius:10px; white-space:normal; }
  .nm-nav a::after{ display:none; }
  .nm-nav a.nm-cta{ margin-left:0; margin-top:8px; text-align:center; }
  .nm-toggle:checked ~ .nm-burger span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
  .nm-toggle:checked ~ .nm-burger span:nth-child(2){ opacity:0; }
  .nm-toggle:checked ~ .nm-burger span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }
}

/* ---------------- FOOTER ---------------- */
.nm-footer{ background:linear-gradient(180deg,#4a0a66,#360749); color:#e7d6f1; margin-top:40px; }
.nm-footer-grid{
  display:grid; grid-template-columns:1.4fr 1.3fr 1fr 1fr; gap:34px;
  padding-top:46px; padding-bottom:38px;
}
.nm-footer h4{ color:#fff; font-size:16px; margin:0 0 14px; padding-bottom:9px; border-bottom:2px solid rgba(255,255,255,.16); text-transform:uppercase; letter-spacing:.5px; }
.nm-footer p{ margin:0 0 12px; line-height:1.65; font-size:14px; }
.nm-footer a{ color:#f0c9ff; text-decoration:none; transition:color .15s; }
.nm-footer a:hover{ color:#fff; text-decoration:underline; }
.nm-footer ul{ list-style:none; margin:0; padding:0; }
.nm-footer ul li{ margin:0 0 10px; font-size:13.5px; line-height:1.5; }
.nm-footer ul li b{ color:#fff; }
.nm-foot-logo{ height:56px; background:#fff; border-radius:12px; padding:8px 12px; margin-bottom:14px; }
.nm-foot-fb{ display:inline-flex; align-items:center; gap:9px; margin-top:6px; font-weight:bold; }
.nm-foot-fb img{ width:30px; height:30px; }
.nm-foot-link{ display:inline-block; margin-top:6px; font-weight:bold; color:#FFB23E !important; }
.nm-foot-bottom{ background:rgba(0,0,0,.28); }
.nm-foot-bottom .nm-wrap{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:14px; padding-bottom:14px; font-size:12.5px; color:#c9b3da; }

@media (max-width:900px){ .nm-footer-grid{ grid-template-columns:1fr 1fr; gap:28px; } }
@media (max-width:560px){ .nm-footer-grid{ grid-template-columns:1fr; } }

/* ---------------- SIDEBAR (left.php) butoane moderne ---------------- */
#left > a[href]{
  font-size:15px !important; font-weight:700 !important; color:#fff !important;
  text-decoration:none !important; display:flex !important; align-items:center; justify-content:center;
  width:auto !important; margin:0 3px 12px 3px !important; padding:13px 14px !important;
  border-radius:12px !important; text-align:center !important; letter-spacing:.3px;
  box-shadow:0 4px 12px rgba(0,0,0,.16) !important; transition:transform .15s, box-shadow .15s, filter .15s;
}
#left > a[href]:hover{ transform:translateY(-2px); box-shadow:0 8px 18px rgba(0,0,0,.26) !important; filter:brightness(1.08); }
#left > a[href^="promotii"]{ background:linear-gradient(90deg,#6A1187,#8a1bb0) !important; }
#left > a[href^="angajari"]{ background:linear-gradient(90deg,#6A1187,#8a1bb0) !important; }
#left > a[href^="ziar"]{ background:linear-gradient(90deg,#F17601,#ff9a2e) !important; }
#left blink{ text-decoration:none; }

/* ---------------- POLISH GENERAL CONTINUT ---------------- */
.tail-content h2,
#container h2,
.blog-featured h2,
.item-page h2{ color:var(--nm-purple); }

/* carduri usoare pe casetele sidebar */
.stylebox1-title h3{ color:var(--nm-purple) !important; }

/* pagina rezultate-analize: scoate fundalul grafic vechi din hero-ul violet */
.tail-header .header{ background:none !important; }

/* ============================================================
   MOBIL / TABLETĂ — conținut fluid (layout vechi era fix 999px)
   ============================================================ */
@media (max-width:1024px){
  /* container principal devine fluid */
  .main{ width:auto !important; min-width:0 !important; max-width:100% !important; }
  .tail-content .content{ padding:14px 12px !important; }

  /* conținut deasupra, sidebar dedesubt (stivuit) */
  .tail-content .content > .clear{ display:flex !important; flex-direction:column !important; }
  #container{ order:1; width:auto !important; float:none !important; padding:0 !important; overflow:visible !important; }
  #left{ order:2; float:none !important; width:100% !important; margin-top:24px; }
  #left .left-indent, #left .moduletable, #left .stylebox1-center,
  #left .stylebox1-indent, #left .stylebox1-text{ width:auto !important; }

  /* media și casete cu lățimi fixe → fluide */
  #container img, #container iframe, .content img, .content iframe{ max-width:100% !important; height:auto !important; }
  #container [style*="width:"], .tail-content .content [style*="width:"]{ max-width:100% !important; }

  /* tabele late → scrollabile pe orizontală în interiorul lor */
  .tail-content table{ display:block !important; width:100% !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch; }

  /* pagina rezultate-analize: caseta logo + formular login stivuite */
  .labcontainer > div[style]{ float:none !important; width:auto !important; min-width:0 !important; display:block !important; box-sizing:border-box; margin:0 auto 16px !important; max-width:520px; }
  .labcontainer .login{ float:none !important; min-width:0 !important; width:auto !important; margin:0 0 18px !important; display:block !important; }
  .custom[style*="padding-top"]{ padding-top:20px !important; }

  /* formulare: câmpuri full-width pe mobil */
  .tail-content input[type=text], .tail-content input[type=password],
  .tail-content textarea, .tail-content select{ max-width:100% !important; box-sizing:border-box; }

  /* titluri din conținut: fără indent fix (ex. ziar.php avea margin-left:240px) */
  #container h2{ margin-left:0 !important; }

  /* galeria de ziare: grilă adaptivă, fără goluri */
  .row-box-33{ display:grid !important; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)) !important; gap:16px !important; }
  .row-box-33 .item{ width:auto !important; float:none !important; clear:none !important; margin:0 !important; }
}

/* spațiere ceva mai mică pe telefoane mici */
@media (max-width:560px){
  .nm-brand img{ height:42px; }
  .tail-content .content{ padding:12px 10px !important; }
}
