/* ===== NextMedService.ro - service medical profesional (identitate familia NextFarma) ===== */
:root{
  --brand:#6a9a3c; --brand-600:#557d2e; --brand-700:#456425;
  --brand-2:#8bb85a; --brand-light:#9bc46b;
  --navy:#1b2c45; --ink:#4a4d54; --muted:#6b7886;
  --line:#e8ede2; --bg-soft:#f6f8f1;
  --accent-50:#eef5e2;
  --ok:#1e9e6a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Montserrat",system-ui,-apple-system,sans-serif;color:var(--ink);line-height:1.7;background:#fff}
h1,h2,h3,h4,h5{font-family:"Montserrat",sans-serif;color:var(--navy);font-weight:800;letter-spacing:-.01em;margin:0 0 .5rem;line-height:1.12}
a{color:var(--brand-600);text-decoration:none}
img{max-width:100%}
.container{max-width:1180px;margin:0 auto;padding:0 18px}
.section{padding:80px 0}
.section--alt{background:var(--bg-soft)}
.section--brand{background:linear-gradient(125deg,var(--brand-700),var(--brand) 70%);color:#fff}
.section--brand h2,.section--brand h3{color:#fff}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-600);background:var(--accent-50);padding:.45rem .9rem;border-radius:30px;margin-bottom:1rem}
.section--brand .eyebrow{background:rgba(255,255,255,.15);color:#fff}
.sec-head{text-align:center;max-width:720px;margin:0 auto 3rem}
.sec-head h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.1}
.sec-head p{color:var(--muted);margin:0}
.section--brand .sec-head p{color:#dcefff}

/* Buttons */
.btn{display:inline-block;border:0;border-radius:30px;font-weight:600;padding:.85rem 1.8rem;cursor:pointer;transition:.2s;font-family:inherit;font-size:1rem}
.btn-brand{background:var(--brand);color:#fff;box-shadow:0 10px 24px rgba(106,154,60,.35)}
.btn-brand:hover{background:var(--brand-600);color:#fff;transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--brand-700)}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.12)}
.btn-outline{border:2px solid var(--brand);color:var(--brand-600);background:transparent}
.btn-outline:hover{background:var(--brand);color:#fff}
.btn-ghost{border:2px solid rgba(255,255,255,.7);color:#fff;background:transparent}
.btn-ghost:hover{background:#fff;color:var(--brand-700)}

/* Topbar */
.topbar{background:var(--navy);color:#aebbc9;font-size:.85rem}
.topbar .container{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;padding-bottom:.5rem;gap:1rem;flex-wrap:wrap}
.topbar a{color:#cfd9e4}
.topbar i{color:var(--brand-light);margin-right:.35rem}

/* Navbar */
.nav-wrap{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .25s}
.nav-wrap.scrolled{box-shadow:0 4px 20px rgba(47,69,92,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.6rem 0}
.brand{display:flex;align-items:center}
.brand img{height:90px;width:auto;display:block}
@media(max-width:600px){.brand img{height:64px}}
.brand-fallback{font-weight:800;font-size:1.5rem;color:var(--navy)}
.brand-fallback span{color:var(--brand)}
.menu{display:flex;align-items:center;gap:.3rem;list-style:none;margin:0;padding:0}
.menu a{color:var(--navy);font-weight:600;padding:.5rem .9rem;border-radius:8px;position:relative}
.menu a:hover,.menu a.active{color:var(--brand-600)}
.menu .btn-phone{background:var(--brand);color:#fff;border-radius:30px;margin-left:.5rem;box-shadow:0 8px 18px rgba(106,154,60,.3)}
.menu .btn-phone:hover{background:var(--brand-600);color:#fff}
.nav-toggle{display:none;background:none;border:0;font-size:1.6rem;color:var(--navy);cursor:pointer}
@media(max-width:900px){
  .nav-toggle{display:block}
  .menu{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:.6rem;gap:.2rem;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.08);display:none}
  .menu.open{display:flex}
  .menu .btn-phone{margin:.4rem 0 0;text-align:center}
}

/* Hero (imagine background cover + parallax + overlay) */
.hero{position:relative;overflow:hidden;background:#152234 url('../img/gen/hero1.jpg') center center/cover no-repeat;background-attachment:fixed}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(18,30,48,.92),rgba(18,30,48,.7) 52%,rgba(60,90,33,.55))}
.hero .container{position:relative;z-index:2;padding-top:110px;padding-bottom:110px}
.hero-copy{max-width:980px}
.hero .eyebrow{background:rgba(255,255,255,.16);color:#fff}
.hero h1{font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.08;margin-bottom:1.1rem;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.25)}
.hero h1 span{color:var(--brand-light)}
.hero .lead{font-size:1.2rem;color:#e8edf2;max-width:900px;margin-bottom:1.6rem}
.hero ul.checks{list-style:none;padding:0;margin:0 0 1.8rem;max-width:900px}
.hero ul.checks li{display:flex;gap:.7rem;margin-bottom:.6rem;font-weight:500;color:#fff}
.hero ul.checks i{color:var(--brand-light);margin-top:.25rem}
.hero .cta{display:flex;gap:.8rem;flex-wrap:wrap}
@media(max-width:900px){.hero{background-attachment:scroll}}

/* Stats band */
.stats{background:var(--navy);color:#fff}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center;padding:40px 0}
.stats .n{font-size:2.4rem;font-weight:800;color:#fff;line-height:1}
.stats .l{color:#9fb2c5;font-size:.95rem;margin-top:.4rem}
@media(max-width:700px){.stats .grid{grid-template-columns:repeat(2,1fr);gap:1.6rem}}

/* Cards (servicii) */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media(max-width:900px){.grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;transition:.22s;height:100%}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(47,69,92,.12);border-color:transparent}
.card .ico{width:60px;height:60px;border-radius:16px;background:var(--accent-50);color:var(--brand-600);display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:1.1rem}
.card h3{font-size:1.2rem}
.card p{color:var(--muted);margin:0}

/* Avantaje (icon inline) */
.adv{display:flex;gap:1rem;align-items:flex-start}
.adv .ico{flex:0 0 52px;width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.adv h3{font-size:1.1rem;margin-bottom:.3rem}
.adv p{color:#dcefff;margin:0;font-size:.95rem}

/* Proces (pasi) */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}
.step{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 24px}
.step .num{width:46px;height:46px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.1rem}
.step h3{font-size:1.05rem}
.step p{color:var(--muted);margin:0;font-size:.92rem}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px}
@media(max-width:840px){.contact-grid{grid-template-columns:1fr}}
.field{display:block;width:100%;border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;margin-bottom:.9rem;font-family:inherit;font-size:1rem;color:var(--ink);background:#fff}
.field:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px rgba(106,154,60,.15)}
textarea.field{min-height:130px;resize:vertical}
.info-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px}
.info-card .row-i{display:flex;gap:.9rem;margin-bottom:1.1rem}
.info-card .row-i i{color:var(--brand-600);font-size:1.2rem;margin-top:.15rem}
.info-card strong{color:var(--navy)}
.field-file{display:block;margin-bottom:.9rem}
.field-file .ff-label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.5rem}
.file-drop{display:flex;flex-direction:column;align-items:center;gap:.25rem;width:100%;border:2px dashed var(--brand);border-radius:12px;padding:1.3rem 1rem;background:var(--accent-50);cursor:pointer;font-family:inherit;text-align:center;transition:.18s}
.file-drop:hover,.file-drop.drag{background:#e6f0d6;border-color:var(--brand-600)}
.file-drop i{font-size:1.6rem;color:var(--brand-600)}
.file-drop .fd-title{font-weight:700;color:var(--navy);font-size:.98rem}
.file-drop .fd-hint{font-size:.82rem;color:var(--muted)}
.file-list{list-style:none;margin:.7rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.file-item{display:flex;align-items:center;gap:.7rem;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem}
.file-item .fi-thumb{width:38px;height:38px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--accent-50)}
.file-item .fi-thumb--pdf{display:flex;align-items:center;justify-content:center;color:var(--brand-600);font-size:1.3rem;background:var(--accent-50)}
.ff-msg{display:none;margin:.5rem 0 0;font-size:.85rem;color:#b3261e;font-weight:600}
.ff-msg i{margin-right:.35rem}
.file-item .fi-info{flex:1;min-width:0}
.file-item .fi-name{display:block;font-size:.9rem;color:var(--navy);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-item .fi-size{font-size:.78rem;color:var(--muted)}
.file-item .fi-del{flex-shrink:0;border:0;background:#fdecec;color:#b3261e;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:.15s}
.file-item .fi-del:hover{background:#f8d4d4}
.file-addmore{align-self:flex-start;margin-top:.2rem;background:none;border:0;color:var(--brand-600);font-weight:600;font-size:.9rem;cursor:pointer;font-family:inherit;padding:.3rem 0}
.file-addmore i{margin-right:.35rem}
.form-msg{display:none;background:#eafaf1;border:1px solid #b7e4c9;color:#13794a;border-radius:12px;padding:1rem 1.2rem;margin-top:1rem;font-weight:600}
.form-msg i{margin-right:.4rem}
.form-msg--err{background:#fdecec;border-color:#f3c2c2;color:#b3261e}

/* Footer logo pe chip alb (vizibil pe fundal navy) */
.footer-logo{display:inline-block;background:#fff;border-radius:14px;padding:10px 16px}
.footer-logo img{height:54px;width:auto;display:block}

/* CTA band (fundal circuite) */
.cta-band{position:relative;background:var(--navy) url('../img/gen/circuit.jpg') center/cover no-repeat;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(27,44,69,.93),rgba(69,100,37,.80))}
.cta-band .container{position:relative;z-index:2;text-align:center;padding:70px 18px;color:#fff}
.cta-band h2{color:#fff;font-size:clamp(1.6rem,2.8vw,2.2rem);margin-bottom:.6rem}
.cta-band p{color:#e4efe0;max-width:640px;margin:0 auto 1.7rem;font-size:1.1rem}

/* Footer */
.footer{background:var(--navy);color:#9fb0c1;padding:60px 0 0}
.footer h5{color:#fff;font-size:1rem;margin-bottom:1rem}
.footer a{color:#9fb0c1}.footer a:hover{color:#fff}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin-bottom:.5rem}
.footer .social a{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:12px;background:rgba(255,255,255,.08);color:#fff;margin-right:8px}
.footer .social a:hover{background:var(--brand)}
.copyright{border-top:1px solid rgba(255,255,255,.08);margin-top:42px;padding:18px 0;font-size:.85rem;color:#8ea0b3}
.copyright .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.copyright a{color:#8ea0b3}.copyright a:hover{color:#fff}

/* Blog */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blog-grid{grid-template-columns:1fr}}
.post-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;height:100%;transition:.22s;text-decoration:none}
.post-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(47,69,92,.12);border-color:transparent}
.post-card .thumb{aspect-ratio:16/10;overflow:hidden;background:var(--accent-50)}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;transition:.3s}
.post-card:hover .thumb img{transform:scale(1.05)}
.post-card .pc-body{padding:22px;display:flex;flex-direction:column;flex:1}
.post-card .pc-tag{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-600);margin-bottom:.5rem}
.post-card h3{font-size:1.12rem;color:var(--navy);margin-bottom:.5rem}
.post-card p{color:var(--muted);font-size:.95rem;margin:0 0 1rem}
.post-card .pc-more{margin-top:auto;color:var(--brand-600);font-weight:600;font-size:.92rem}

/* Page hero (banner blog/articol) */
.page-hero{background:linear-gradient(125deg,var(--brand-700),var(--brand) 75%);color:#fff;padding:64px 0 56px;text-align:center}
.page-hero h1{color:#fff;font-size:clamp(1.9rem,3.4vw,2.6rem)}
.page-hero p{color:#e4efe0;max-width:700px;margin:.5rem auto 0}
.crumbs{font-size:.9rem;color:rgba(255,255,255,.85);margin-bottom:.8rem}
.crumbs a{color:#fff;text-decoration:underline}

/* Articol */
.article{max-width:820px;margin:0 auto}
.article figure{margin:2rem 0}
.article figure img{width:100%;border-radius:16px;box-shadow:0 18px 40px rgba(27,44,69,.14);display:block}
.article figcaption{color:var(--muted);font-size:.85rem;text-align:center;margin-top:.6rem}
.article h2{font-size:1.5rem;margin:2.2rem 0 .8rem}
.article h3{font-size:1.2rem;margin:1.6rem 0 .5rem}
.article p{margin:0 0 1.1rem;font-size:1.05rem}
.article ul{margin:0 0 1.2rem;padding-left:1.3rem}
.article li{margin-bottom:.5rem}
.article .lead-p{font-size:1.18rem;color:var(--navy);font-weight:500}

/* ===== Responsive fine-tuning ===== */
/* Tablete / mobil mare: reduce spațierea verticală */
@media(max-width:768px){
  .section{padding:56px 0}
  .hero .container{padding-top:76px;padding-bottom:76px}
  .cta-band .container{padding-top:56px;padding-bottom:56px}
  .sec-head{margin-bottom:2.2rem}
  .page-hero{padding:46px 0 40px}
  .footer{padding-top:48px}
}
/* Mobil: padding interior de 5% pentru tot conținutul */
@media(max-width:600px){
  .container{padding-left:5%;padding-right:5%}
  .cta-band .container{padding-left:5%;padding-right:5%}
  .section{padding:48px 0}
  .hero .container{padding-top:64px;padding-bottom:64px}
  .hero .lead{font-size:1.06rem}
  .hero .cta .btn{width:100%;text-align:center}
  .card{padding:24px}
  .info-card,.step{padding:24px 20px}
  .stats .n{font-size:2rem}
  .topbar{font-size:.78rem}
  .topbar .container{justify-content:center}
  .article h2{font-size:1.3rem}
  .article p,.article .lead-p{font-size:1rem}
  .copyright .container{justify-content:center;text-align:center}
}
/* Foarte mic: evită înghesuirea în topbar */
@media(max-width:380px){
  .topbar .container{flex-direction:column;gap:.2rem;text-align:center}
}

/* reveal */
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}
[data-reveal].vis{opacity:1;transform:none}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
