
:root{
  /* Paleta „BrainScan-fresh 2026" - violet electric + verde mint + coral */
  --orange:#6F42F3; --indigo:#171334; --blue:#2E1F6E; --teal:#22C77E; --violet:#FF5D73;
  --cream:#F6F4FF; --ink:#1A1A2E; --muted:#556070; --line:#E7E3FF;
  --accent:var(--orange); --accent2:var(--indigo);
  --grad-btn:linear-gradient(135deg,#8B68F6 0%,#6F42F3 100%);
  --radius:20px; --shadow:0 18px 50px rgba(23,19,52,.12);
}
body[data-world="wellness"]{--accent:#22C77E;--grad-btn:linear-gradient(135deg,#60E780 0%,#22C77E 100%)}
body[data-world="academia"]{--accent:#FF5D73;--grad-btn:linear-gradient(135deg,#FF8A9B 0%,#FF5D73 100%)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.display{font-family:'Sora',sans-serif;line-height:1.1;letter-spacing:-.02em;color:var(--indigo)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.eyebrow{font-weight:700;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-block;margin-bottom:14px}
.eyebrow.light{color:#C4B5FD}

.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:100px;font-weight:600;font-size:14.5px;font-family:'Sora';transition:transform .18s,box-shadow .18s,filter .18s;border:1.5px solid transparent;cursor:pointer;white-space:nowrap}
.btn-grad{background:var(--grad-btn);color:#fff}
.btn-grad:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(19,23,53,.22)}
.btn-white{background:#fff;color:var(--indigo)}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.22)}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn-ink{background:var(--indigo);color:#fff}
.btn-ink:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(11,18,81,.3)}
.btn-line{border-color:var(--line);color:var(--indigo);background:#fff}
.btn-line:hover{border-color:var(--accent);color:var(--accent)}
.btn-sm{padding:11px 20px;font-size:13.5px}
/* spatiere globala: butoanele si randurile de CTA nu se lipesc de text */
.cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:26px}
.rpage p+.btn,.rpage h1+.btn,.rpage h2+.btn,.rpage h3+.btn,.rpage ul+.btn,.rpage p+.cta-row{margin-top:24px}
.rpage .btn{margin-top:10px}
.rpage .card .btn{margin-top:auto}

/* Topbar */
/* bara albastra (telefon + selector de limba) ramane vizibila la scroll, iar meniul
   se lipeste imediat sub ea (42px = inaltimea .topbar .wrap) */
.topbar{background:var(--indigo);color:#cdd0e6;font-size:13px;position:sticky;top:0;z-index:61}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:42px;font-weight:500}
.topbar a{color:#eef0fb;display:inline-flex;align-items:center;gap:7px}
.topbar a:hover{color:#fff}
.topbar .tright{display:flex;gap:20px}
@media(max-width:720px){.topbar .tright a:not(.keep){display:none}}

/* World switcher */
.worlds{background:#f2f3fa;border-bottom:1px solid var(--line)}
.worlds .wrap{display:flex;gap:8px;align-items:stretch;height:56px}
.world{flex:1;display:flex;flex-direction:column;justify-content:center;padding:6px 18px;border-radius:0;position:relative;transition:.16s;border-bottom:3px solid transparent}
.world:hover{background:#eaecf6}
.world .wl{font-family:'Sora';font-weight:700;font-size:14.5px;color:var(--indigo);line-height:1.1}
.world .wt{font-size:11px;color:var(--muted);letter-spacing:.02em}
.world.active{background:#fff;border-bottom-color:var(--accent)}
.world.active .wl{color:var(--accent)}
@media(max-width:720px){.worlds .wrap{height:auto;padding:8px 14px}.world .wt{display:none}.world{padding:9px 10px;text-align:center}}

/* Nav + dropdowns */
header.nav{position:sticky;top:42px;z-index:60;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.nav .wrap{max-width:1340px}
.nav-inner{display:flex;align-items:center;gap:14px;height:72px}
.nav-logo{flex:0 0 auto}
.nav-logo img{height:34px;width:auto;max-width:none}
.nav-menu{display:flex;gap:10px;align-items:center;font-weight:500;font-size:13px;margin-left:auto}
.nav-item{position:relative}
.nav-item>a{color:#3a4064;transition:color .15s;display:inline-flex;align-items:center;gap:4px;padding:8px 0;white-space:nowrap}
.nav-item>a:hover,.nav-item.cur>a{color:var(--accent)}
.nav-item .caret{font-size:9px;opacity:.6}
.dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 40px rgba(19,23,53,.14);padding:10px;min-width:250px;opacity:0;visibility:hidden;transition:.18s;display:grid;gap:2px;z-index:70}
.nav-item:hover .dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(4px)}
.dropdown a{padding:10px 14px;border-radius:9px;font-size:13.5px;color:#3a4064;display:block}
.dropdown a:hover{background:var(--cream);color:var(--accent)}
.dropdown.scroll{min-width:250px}
.dropdown.scroll .dcats{display:grid;gap:2px;padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.dropdown.scroll .dcats a{display:block;padding:9px 14px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--indigo)}
.dropdown.scroll .dcats a:hover{background:var(--cream);color:var(--accent)}
.dropdown.scroll .dcats .nav-sub>a{display:flex;align-items:center;justify-content:space-between}
.dhead{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:2px 14px 8px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.dlist{max-height:min(62vh,430px);overflow-y:auto;overscroll-behavior:contain;display:grid;gap:2px}
.dlist::-webkit-scrollbar{width:8px}
.dlist::-webkit-scrollbar-thumb{background:#d3d7e6;border-radius:8px}
/* fiecare afecțiune → flyout la dreapta cu cele 11 subsecțiuni (poziționat via JS, atașat la body) */
.nav-sub>a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-radius:9px;font-size:13.5px;color:#3a4064}
.nav-sub>a:hover{background:var(--cream);color:var(--accent)}
.nav-sub .fly-caret{opacity:.45;font-size:16px;line-height:1}
.flyout{position:fixed;top:0;left:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 44px rgba(19,23,53,.18);padding:10px;min-width:250px;display:grid;gap:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s;z-index:200}
.flyout.open{opacity:1;visibility:visible;pointer-events:auto}
.nav-item.fly-open>.dropdown.scroll{opacity:1;visibility:visible;transform:translateX(-50%)}
.flyout .fhead{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:4px 14px 8px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.flyout a{padding:9px 14px;border-radius:9px;font-size:13px;color:#3a4064;display:block}
.flyout a:hover{background:var(--cream);color:var(--accent)}
.nav-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.nav-actions .btn{white-space:nowrap}
.nav-toggle{display:none;background:none;border:0;font-size:24px;color:var(--indigo);margin-left:auto}
@media(max-width:1360px){
  .nav-menu,.nav-actions .btn{display:none}
  .nav-toggle{display:block}
  /* ===== Meniu mobil: panou accordion (tap deschide în jos), fără hover ===== */
  .nav-menu.mob-open{
    display:flex;flex-direction:column;align-items:stretch;gap:0;
    position:absolute;top:100%;left:0;right:0;
    background:#fff;padding:6px 22px 18px;
    border-bottom:1px solid var(--line);box-shadow:0 24px 34px rgba(19,23,53,.14);
    max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain;z-index:90
  }
  .nav-menu.mob-open .nav-item{position:static;width:100%;border-bottom:1px solid #f1f2f8}
  .nav-menu.mob-open .nav-item:last-child{border-bottom:0}
  .nav-menu.mob-open .nav-item>a{
    display:flex;align-items:center;justify-content:space-between;width:100%;
    padding:15px 4px;font-size:16px;font-weight:600;color:var(--indigo)
  }
  .nav-menu.mob-open .nav-item .caret{font-size:12px;opacity:.6;transition:transform .2s}
  .nav-menu.mob-open .nav-item.open>a .caret{transform:rotate(180deg)}
  /* submeniuri: ascunse; apar în jos (accordion), mai mici + indentate */
  .nav-menu.mob-open .dropdown{
    position:static;transform:none;min-width:0;display:none;
    opacity:1;visibility:visible;box-shadow:none;border:0;background:transparent;
    padding:0 0 6px 10px;gap:0
  }
  .nav-menu.mob-open .nav-item.open>.dropdown{display:block}
  .nav-menu.mob-open .dropdown a{font-size:14px;padding:11px 12px;color:#556070;border-radius:8px}
  /* „Pentru" → „Afecțiuni & condiții medicale" (nav-sub cu flyout): încă un nivel accordion, mai mic */
  .nav-menu.mob-open .nav-sub>a{
    display:flex;align-items:center;justify-content:space-between;
    font-size:14px;padding:11px 12px;color:#556070
  }
  .nav-menu.mob-open .nav-sub .fly-caret{transition:transform .2s;opacity:.6}
  .nav-menu.mob-open .nav-sub.open>a .fly-caret{transform:rotate(90deg)}
  .nav-menu.mob-open .flyout{
    position:static;transform:none;min-width:0;display:none;
    opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:0;background:transparent;
    padding:0 0 4px 12px
  }
  .nav-menu.mob-open .nav-sub.open>.flyout{display:block}
  .nav-menu.mob-open .flyout .fhead{padding:8px 12px 4px;border:0;color:var(--muted)}
  .nav-menu.mob-open .flyout a{font-size:13px;padding:9px 12px}
}

/* Section base */
.sec{padding:84px 0}
.sec-sm{padding:56px 0}
.sec-head{text-align:center;max-width:820px;margin:0 auto 46px}
.sec-head h2{font-size:clamp(28px,4vw,46px);font-weight:800;margin-bottom:14px}
.sec-head p{color:var(--muted);font-size:17px}
/* Pe telefon, 84px sus + 84px jos intre doua sectiuni inseamna un sfert de ecran
   gol intre doua blocuri - respiratia care arata bine pe un monitor lat devine
   acolo drum de derulat. Aerul se injumatateste, ierarhia ramane. */
@media(max-width:760px){
  .sec{padding:44px 0}
  .sec-sm{padding:30px 0}
  .sec-head{margin-bottom:26px}
  .afsec{padding:38px 0}
}
.bg-cream{background:var(--cream)}

/* Footer */
footer{background:#120C30;color:#a9adcf;padding:62px 0 28px;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.7fr 1.3fr 1fr 1.1fr;gap:40px;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.1)}
/* locatii pe un rand (wrap la 2), banda full-width deasupra copyright-ului */
.foot-locs{padding:24px 0 6px;border-bottom:1px solid rgba(255,255,255,.1)}
.foot-locs h4{margin:0 0 14px}
.foot-locs .loc-list{display:flex;flex-wrap:wrap;gap:12px 28px}
.foot-locs .loc-list>div{flex:0 0 auto;font-size:13.5px;line-height:1.4}
footer .flogo{height:32px;width:auto;filter:brightness(0) invert(1);margin-bottom:18px}
footer h4{color:#fff;font-family:'Sora';font-size:14px;margin-bottom:16px;letter-spacing:.04em}
footer ul{list-style:none;display:grid;gap:9px}
footer a:hover{color:#fff}
.loc-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;font-size:13px}
.loc-list b{color:#fff;font-weight:600;font-family:'Sora';font-size:13px}
.loc-list span{color:#8a8fb5}
/* Siglele ANPC (SOL + SAL) in footer, ca pe originalul lor - si DOAR acolo.
   Erau lipite sub cardurile de locatii pe paginile de protocol si lipseau din
   footer cu totul (cerinta 6 din feedbackul clientei, 3 aug). Sunt obligatorii
   legal, deci nu se sterg, se muta. Selector cu „footer" in fata ca sa bata
   regula generica „img{height:auto}". */
.foot-anpc{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;margin:30px 0 0;padding-top:26px;border-top:1px solid rgba(255,255,255,.10)}
footer .foot-anpc img{height:52px;width:auto;max-width:none;max-height:52px;margin:0;border-radius:6px;box-shadow:none;display:block}
footer .foot-anpc a{display:block;line-height:0;opacity:.92;transition:opacity .15s}
footer .foot-anpc a:hover{opacity:1}
@media(max-width:520px){footer .foot-anpc img{height:44px;max-height:44px}}

.foot-bottom{padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px;color:#7c81a6}
.foot-bottom .powered a{color:#c9cdea;font-weight:600}
.foot-bottom .powered a:hover{color:#fff}
@media(max-width:1100px){.foot-grid{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:860px){.foot-grid{grid-template-columns:1fr;gap:28px}}

.wa{position:fixed;right:20px;bottom:20px;z-index:80;background:#25D366;color:#fff;font-weight:600;font-family:'Sora';font-size:14px;padding:13px 19px;border-radius:100px;display:inline-flex;gap:9px;align-items:center;box-shadow:0 12px 28px rgba(0,0,0,.28)}
.wa:hover{transform:translateY(-2px)}

/* ── Homepage: creierul în trei ── */
.home-hero{background:linear-gradient(180deg,rgba(11,18,81,.80),rgba(8,13,56,.90)),url(/_assets/wp-content/uploads/2025/07/medium-vecteezy_neural-connection-abstract-design_24496895_medium.jpg) center/cover no-repeat;color:#fff;position:relative;overflow:hidden}
/* același strat luminos ca pe af-hero (cerința Dariei: fundalul hero identic pe tot site-ul) */
.home-hero::before{content:"";position:absolute;inset:0;background:url(/_assets/wp-content/uploads/2025/07/medium-vecteezy_neural-connection-abstract-design_24496895_medium.jpg) center/cover no-repeat;opacity:.30;mix-blend-mode:screen;pointer-events:none}
.home-hero .wrap{padding:56px 28px 60px;position:relative;z-index:2}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:36px;align-items:center}
.home-hero h1{font-size:clamp(36px,5vw,62px);font-weight:800;color:#fff;margin:6px 0 20px;max-width:14ch}
.home-hero h1 .u{background:linear-gradient(120deg,#8B68F6,#60E780);-webkit-background-clip:text;background-clip:text;color:transparent}
.home-hero p.lede{font-size:clamp(16px,1.7vw,19px);color:#d6d9f2;max-width:52ch;margin-bottom:22px}
.home-hero .mini{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#C4B5FD}
.home-hero .hint{font-size:13.5px;color:#a9adcf;margin-top:14px}
.home-hero .hint-mobile{display:none}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:14px;text-align:center}.home-hero h1{margin-left:auto;margin-right:auto}.home-hero p.lede{margin-left:auto;margin-right:auto}.brain-art{order:-1}
  /* pe mobil: hint-ul deasupra creierului, centrat */
  .home-hero .hero-grid>div>.hint{display:none}
  .home-hero .hint-mobile{display:block;order:-2;margin:0 auto 6px;text-align:center}}

/* Creierul împărțit în trei (SVG interactiv) */
.brain-art{position:relative}
.brain3{width:100%;max-width:480px;margin:0 auto;display:block;overflow:visible;filter:drop-shadow(0 26px 55px rgba(0,0,0,.5))}
.brain3 .seg{cursor:pointer;transition:filter .2s}
.brain3 .seg:hover{filter:brightness(1.14)}
.brain3 .seg:hover .flabel{font-size:24px}
.brain3 .flabel{fill:#fff;font-family:'Sora';font-weight:800;font-size:22px;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:rgba(8,13,56,.35);stroke-width:5px;transition:font-size .18s}
.brain3 .ftag{fill:#fff;opacity:.9;font-family:'Inter';font-weight:600;font-size:11px;letter-spacing:.06em;text-anchor:middle;pointer-events:none;text-transform:uppercase}
.brain3 .gyri{fill:none;stroke:#0a1030;stroke-opacity:.26;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.brain3 .divider{stroke:#fff;stroke-opacity:.42;stroke-width:4;stroke-linecap:round}
.brain3 .outline{fill:none;stroke:#fff;stroke-opacity:.28;stroke-width:3}
.brain3.compact{max-width:400px}
/* highlight secțiune curentă: estompăm celelalte, evidențiem activa */
.brain3[data-active] .seg{transition:filter .25s,opacity .25s}
.brain3[data-active="clinic"] .seg:not(.seg-clinic) *,
.brain3[data-active="wellness"] .seg:not(.seg-wellness) *,
.brain3[data-active="academia"] .seg:not(.seg-academia) *{fill:#2a2f52}
.brain3[data-active="clinic"] .lbl-clinic,
.brain3[data-active="wellness"] .lbl-wellness,
.brain3[data-active="academia"] .lbl-academia{filter:drop-shadow(0 0 3px rgba(255,255,255,.85))}
.brain3[data-active="clinic"] text:not(.lbl-clinic),
.brain3[data-active="wellness"] text:not(.lbl-wellness),
.brain3[data-active="academia"] text:not(.lbl-academia){opacity:.35}
.brain-you{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:100px;padding:7px 15px;font-size:12.5px;font-weight:600;color:#fff;margin-bottom:16px}
.brain-you b{color:#fff}
/* Creierul anatomic real (recolorat pe 3 secțiuni) */
.brain3.brain-real,.brain3.brain-real.compact{max-width:560px;filter:drop-shadow(0 22px 45px rgba(0,0,0,.45))}
.brain-real .seg{cursor:pointer;transition:opacity .25s,filter .25s}
.brain-real .seg path{transition:fill .2s ease,filter .2s ease}
/* Wellness e formată din 2 forme - unific culoarea ca să arate ca o singură secțiune */
.brain-real .seg-wellness path{fill:#22C77E}
/* Hover desktop: zona se aprinde. Schimbarea de fill se repaintează fiabil în Safari
   (filter pe :hover nu se re-desenează - bug WebKit). :has() aprinde toată lumea
   deodată chiar dacă e împărțită în mai multe forme. */
.brain-real:has(.seg-clinic:hover) .seg-clinic path{fill:#8B68F6}
.brain-real:has(.seg-wellness:hover) .seg-wellness path{fill:#60E780}
.brain-real:has(.seg-academia:hover) .seg-academia path{fill:#FF8A9B}
.brain-real .fil5,.brain-real .fil6{pointer-events:none}
.brain-real text.blab{pointer-events:none;fill:#fff;font-family:'Sora',sans-serif;font-weight:800;font-size:30px;letter-spacing:.3px;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:rgba(6,10,40,.55);stroke-width:6px;stroke-linejoin:round}
.brain3[data-active="clinic"] .blab:not(.lbl-clinic),
.brain3[data-active="wellness"] .blab:not(.lbl-wellness),
.brain3[data-active="academia"] .blab:not(.lbl-academia){opacity:.32}
/* Animația creierului pe FILL (culoare) - merge fiabil și în Safari, unde animarea
   pe `filter` nu se redă. Fiecare lob se aprinde spre o nuanță mai vie și revine. */
@keyframes pulseClinic  {0%{fill:#6F42F3}7%{fill:#8B68F6}30%{fill:#8B68F6}37%{fill:#6F42F3}100%{fill:#6F42F3}}
@keyframes pulseWellness{0%{fill:#22C77E}7%{fill:#60E780}30%{fill:#60E780}37%{fill:#22C77E}100%{fill:#22C77E}}
@keyframes pulseAcademia{0%{fill:#FF5D73}7%{fill:#FF8A9B}30%{fill:#FF8A9B}37%{fill:#FF5D73}100%{fill:#FF5D73}}
/* pop subtil al întregului creier (transform - sigur în Safari) */
@keyframes brainPop{0%{transform:scale(.975)}55%{transform:scale(1.015)}100%{transform:scale(1)}}

/* Mobil (touch): animație infinită - lobii se aprind pe rând, ~1,5s fiecare */
@media(hover:none) and (pointer:coarse){
  .brain3[data-active=""] .seg-clinic path  {animation:pulseClinic 4.5s ease-in-out 0s infinite}
  .brain3[data-active=""] .seg-wellness path{animation:pulseWellness 4.5s ease-in-out 1.5s infinite}
  .brain3[data-active=""] .seg-academia path{animation:pulseAcademia 4.5s ease-in-out 3s infinite}
}
/* Desktop: o SINGURĂ dată la intrarea pe site - lobii pulsează pe rând (3x) + pop,
   ca să evidențieze că creierul e clickabil. */
@media(hover:hover) and (pointer:fine){
  .brain3[data-active=""].brain-real{animation:brainPop 1.1s cubic-bezier(.2,.8,.2,1) both}
  .brain3[data-active=""] .seg-clinic path  {animation:pulseClinic 1.5s ease-in-out .3s 3}
  .brain3[data-active=""] .seg-wellness path{animation:pulseWellness 1.5s ease-in-out .8s 3}
  .brain3[data-active=""] .seg-academia path{animation:pulseAcademia 1.5s ease-in-out 1.3s 3}
}
@media(prefers-reduced-motion:reduce){
  .brain3[data-active=""] .seg path,.brain3[data-active=""].brain-real{animation:none}
}

.lobes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1160px;margin:0 auto;padding:0 28px}
.lobe{border-radius:24px;padding:32px 30px 30px;color:#fff;position:relative;overflow:hidden;min-height:340px;display:flex;flex-direction:column;box-shadow:0 30px 60px rgba(8,13,56,.4);transition:transform .22s;text-align:left}
.lobe:hover{transform:translateY(-8px)}
.lobe.l1{background:linear-gradient(160deg,#8B68F6,#6F42F3)}
.lobe.l2{background:linear-gradient(160deg,#34D07A,#189A54)}
.lobe.l3{background:linear-gradient(160deg,#FF8A9B,#F5455E)}
.lobe .lnum{font-family:'Sora';font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.lobe h2{color:#fff;font-size:26px;font-weight:800;margin:10px 0 6px}
.lobe .lsub{font-size:13px;font-weight:700;letter-spacing:.03em;opacity:.92;margin-bottom:14px}
.lobe ul{list-style:none;display:grid;gap:7px;margin-bottom:auto}
.lobe li{font-size:13.5px;opacity:.96;display:flex;gap:8px}
.lobe li:before{content:"→";opacity:.7}
.lobe .go{margin-top:22px;display:inline-flex;align-items:center;gap:9px;font-weight:600;font-family:'Sora';font-size:14px;background:#fff;color:var(--indigo);padding:12px 20px;border-radius:100px;align-self:flex-start;transition:transform .16s}
.lobe .go:hover{transform:translateX(4px)}
.lobe .ghost{position:absolute;right:14px;bottom:-30px;font-family:'Sora';font-weight:800;font-size:150px;opacity:.12;line-height:1;pointer-events:none}

/* Announcement bar (homepage) */
.announce{background:linear-gradient(90deg,#6F42F3,#8B68F6 45%,#60E780);color:#fff;text-align:center;font-size:14px}
.announce .wrap{display:flex;gap:14px;justify-content:center;align-items:center;min-height:46px;flex-wrap:wrap;padding:8px 28px}
.announce b{font-weight:800}
.announce a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:600}

/* AudioBooks */
.abooks-sec{background:var(--cream)}
.abooks-sec .wrap{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding:70px 28px}
.abooks-sec img.books{width:100%;border-radius:18px}
.abooks-sec h2{font-size:clamp(28px,3.6vw,42px);font-weight:800;margin:6px 0 14px}
.abooks-sec p{color:var(--muted);font-size:16px;margin-bottom:22px}
.abooks-sec .row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:26px}
.abooks-sec .price{font-family:'Sora';font-weight:800;color:var(--accent);font-size:22px}
.video-wrap{border-radius:16px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:16/9;background:#000}
.video-wrap iframe{width:100%;height:100%;border:0;display:block}
@media(max-width:880px){.abooks-sec .wrap{grid-template-columns:1fr;gap:28px}}

/* Choose (Unde simți...) */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ccard{border-radius:24px;padding:36px 32px;color:#fff;position:relative;overflow:hidden;min-height:320px;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .22s}
.ccard:hover{transform:translateY(-6px)}
.ccard.c1{background:linear-gradient(155deg,#8B68F6,#6F42F3)}
.ccard.c2{background:linear-gradient(155deg,#26308f,#0B1251)}
.ccard.c3{background:linear-gradient(155deg,#34D07A,#189A54)}
.ccard .tag{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.ccard h3{font-size:25px;font-weight:800;color:#fff;margin:12px 0 12px}
.ccard p{font-size:15px;opacity:.94;margin-bottom:auto;color:#fff}
.ccard .go2{margin-top:24px;display:inline-flex;align-items:center;gap:9px;font-weight:600;font-family:'Sora';font-size:14px;background:#fff;color:var(--indigo);padding:13px 20px;border-radius:100px;align-self:flex-start;transition:transform .16s}
.ccard .go2:hover{transform:translateX(4px)}
.ccard .ghost-num{position:absolute;right:14px;bottom:-24px;font-family:'Sora';font-weight:800;font-size:140px;opacity:.13;line-height:1;pointer-events:none}
@media(max-width:860px){.card-grid{grid-template-columns:1fr}.ccard{min-height:auto}}

/* Studies list */
.studies{max-width:900px;margin:0 auto 40px;display:grid;gap:14px}
.studies .stitle{font-family:'Sora';font-weight:700;color:var(--indigo);font-size:17px;text-align:center;margin-bottom:6px}
.study{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;font-size:15px}
.study .dot{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;margin-top:2px}

/* Explain / Discovery */
.explain .wrap{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.explain h2{font-size:clamp(28px,3.8vw,44px);font-weight:800;margin:6px 0 8px}
.explain .qeeg{color:var(--muted);font-weight:600;margin-bottom:18px}
.explain p.lead{font-size:16px;color:#3a4064;margin-bottom:16px}
.disc{background:#fff;color:var(--indigo);border:1px solid #e7e9f4;border-radius:20px;padding:14px 30px;box-shadow:var(--shadow)}
.disc h3{color:var(--indigo);font-size:21px;margin:16px 0 6px}
.disc ul{list-style:none;display:grid;gap:0;margin:6px 0 16px}
.disc li{display:flex;gap:11px;align-items:flex-start;font-size:15px;line-height:1.55;color:#39406b;padding:11px 0;border-bottom:1px solid #eef0f8}
/* flex-ul e pentru rândurile cu bulină (.dot); pe text simplu cu <strong> inline ar rupe fraza în coloane */
.disc li:not(:has(.dot)){display:block}
.disc ul li:last-child{border-bottom:0}
.disc li b{color:var(--indigo)}
.disc li a{color:var(--orange)}
.disc .dot{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.disc .price{font-family:'Sora';font-weight:800;font-size:26px;color:var(--indigo);margin-bottom:14px}
/* Caseta de OFERTĂ (.disc care conține un preț): conținutul e scris pentru fundal închis
   (text deschis, buton alb, telefon alb) - deci o randăm ca un card indigo premium care iese în evidență. */
.disc:has(.price),.disc.disc-dark{background:linear-gradient(160deg,#1b2467,#0B1251);border-color:transparent;color:#eef0ff;box-shadow:0 22px 55px rgba(11,18,81,.30)}
.disc:has(.price) h3,.disc:has(.price) .price,.disc:has(.price) li b,.disc:has(.price) p b,.disc:has(.price) strong,.disc.disc-dark h3,.disc.disc-dark .price,.disc.disc-dark li b,.disc.disc-dark p b,.disc.disc-dark strong{color:#fff}
.disc:has(.price) li,.disc.disc-dark li{color:#dfe2f5;border-bottom-color:rgba(255,255,255,.16)}
.disc:has(.price) a[href^="tel"],.disc.disc-dark a[href^="tel"]{color:#fff}
.disc:has(.price) .btn-white,.disc.disc-dark .btn-white{box-shadow:0 10px 26px rgba(0,0,0,.22)}
/* imaginile block dintr-un container centrat (ex. banda „Am apărut și la", timeline) chiar pe mijloc */
[style*="text-align:center"] > img,[style*="text-align: center"] > img{margin-left:auto;margin-right:auto}
/* liste de afecțiuni ca link-carduri compacte + chip-uri + carduri-categorie (global) */
.aff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.aff-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px 22px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);font-weight:700;color:var(--indigo);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.aff-card:hover{transform:translateY(-3px);border-color:var(--orange);box-shadow:0 14px 26px rgba(11,18,81,.12)}
.aff-card .arw{color:var(--orange);font-weight:800;flex:0 0 auto}
.chip-row{display:flex;flex-wrap:wrap;gap:9px}
.chip{display:inline-block;padding:8px 15px;border-radius:999px;background:#f2f4fb;color:#2a3170;font-size:14px;font-weight:600;line-height:1.2}
.cond-grid{display:grid;grid-template-columns:1fr;gap:20px}
.cond-row3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.cond-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;box-shadow:var(--shadow)}
.cond-card h3{font-size:18px;font-weight:800;color:var(--indigo);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.cond-card h3::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--orange);flex:0 0 auto}
.cond-card.solo{display:flex;align-items:center;min-height:96px}
.cond-card.solo h3{margin:0}
.img-cap{max-width:640px!important;margin-left:auto;margin-right:auto}
@media(max-width:880px){.explain .wrap{grid-template-columns:1fr;gap:30px}}

/* Comparison table */
.cmp{overflow-x:auto;border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line)}
table.compare{border-collapse:collapse;width:100%;min-width:820px;font-size:13.5px;background:#fff}
table.compare th,table.compare td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
table.compare thead th{background:var(--indigo);color:#fff;font-family:'Sora';font-weight:600;position:sticky;top:0}
table.compare thead th:first-child{background:#080d38}
table.compare tbody td:first-child{font-weight:600;color:var(--indigo);background:var(--cream)}
table.compare tbody td:nth-child(2){background:#fff6f2;font-weight:500;color:#8a2b17}
table.compare tr:last-child td{border-bottom:0}

/* Results */
.results{display:grid;gap:16px;max-width:920px;margin:0 auto}
.ritem{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 26px;box-shadow:0 8px 24px rgba(19,23,53,.05)}
.ritem h4{font-size:18px;font-weight:700;color:var(--indigo);display:flex;gap:12px;align-items:center;margin-bottom:8px}
.ritem h4 .dot{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}
.ritem p{color:var(--muted);font-size:15px;padding-left:38px}

/* Steps / team / tech */
.step{margin-bottom:60px}
.step-h{display:flex;gap:16px;align-items:center;margin-bottom:24px}
.step-h .num{flex:0 0 auto;width:52px;height:52px;border-radius:14px;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-family:'Sora';font-weight:800;font-size:22px}
.step-h h3{font-size:clamp(24px,3vw,34px);font-weight:800}
.step>p{color:var(--muted);font-size:16px;max-width:820px;margin-bottom:24px}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.person{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 30px;box-shadow:var(--shadow)}
.person .role{color:var(--accent);font-weight:800;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase}
.person h4{font-family:'Sora';font-size:22px;font-weight:700;color:var(--indigo);margin:8px 0 8px}
.person .cred{color:var(--indigo);font-weight:600;font-size:13.5px;margin-bottom:12px}
.person p{color:var(--muted);font-size:14px}
@media(max-width:760px){.team-grid{grid-template-columns:1fr}}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tcard{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
/* Caseta de 190px fixa taia portretele intr-o banda ingusta - pe fotografii patrate
   (1000x1000, cum sunt cele ale fondatoarelor) ramanea o fasie din mijloc, adica
   barbie si umeri. 4/3 pastreaza persoana intreaga; `object-position` urca incadrarea,
   fiindca la portrete capul e sus, iar taierea trebuie sa cada in jos, nu peste fata. */
.tcard .imgwrap{aspect-ratio:4/3;background:#f0f2f8;overflow:hidden}
.tcard .imgwrap img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.tcard .body{padding:22px 24px}
.tcard .top{display:flex;align-items:center;gap:11px;margin-bottom:10px}
.tcard .n{font-family:'Sora';font-size:13px;font-weight:800;color:#fff;background:var(--grad-btn);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
.tcard b{font-family:'Sora';font-weight:700;font-size:17px;color:var(--indigo)}
.tcard .cap{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--accent);text-transform:uppercase;margin-bottom:8px}
.tcard .desc{font-size:13.5px;color:#4a5070;margin-bottom:14px}
.tcard .help{font-size:12.5px;font-weight:700;color:var(--indigo);margin-bottom:8px}
.tcard ul{list-style:none;display:grid;gap:7px}
.tcard li{font-size:13px;color:var(--muted);display:flex;gap:8px}
.tcard li:before{content:"✓";color:var(--teal);font-weight:800}
@media(max-width:960px){.tech-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.tech-grid{grid-template-columns:1fr}}
.mon-list{max-width:820px;margin:0 auto;list-style:none;display:grid;gap:12px}
.mon-list li{display:flex;gap:12px;font-size:15px;color:#3a4064}
.mon-list .dot{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;margin-top:2px}
.mon-note{max-width:820px;margin:22px auto 0;color:var(--muted);font-size:15px;font-style:italic;text-align:center}

/* Testimonials */
.tst{background:var(--cream)}
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tcell{background:#fff;border-radius:18px;padding:26px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.tcell .stars{color:#f5a623;font-size:15px;margin-bottom:10px;letter-spacing:2px}
.tcell p{font-size:14px;color:#3a4064;margin-bottom:16px}
.tcell .name{font-family:'Sora';font-weight:700;color:var(--indigo);margin-top:auto}
@media(max-width:900px){.tgrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.tgrid{grid-template-columns:1fr}}

/* Protocol include */
.protocol{background:radial-gradient(120% 130% at 20% 0%,#8B68F6,#6F42F3 40%,#171334 110%);color:#fff;padding:88px 0}
.protocol .sec-head h2{color:#fff}
.protocol .quote{text-align:center;font-family:'Sora';font-style:italic;font-size:20px;max-width:40ch;margin:0 auto 34px;color:#fff}
.incl{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:30px;max-width:860px;margin:0 auto;backdrop-filter:blur(4px)}
.incl h3{color:#fff;font-size:17px;margin-bottom:18px}
.incl .line{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:14.5px}
.incl .line span{color:#ffe;opacity:.95}
.incl .line b{color:#fff;white-space:nowrap;font-weight:700}
.incl .total{display:flex;justify-content:space-between;padding-top:16px;margin-top:6px;font-family:'Sora';font-weight:700;font-size:16px}
.incl .total .old{text-decoration:line-through;opacity:.7}
.protocol .final{text-align:center;margin-top:36px}
.protocol .price{font-family:'Sora';font-weight:800;font-size:30px;margin-bottom:22px}
@media(max-width:900px){.lobes{grid-template-columns:1fr}.lobe{min-height:auto}}

/* generic cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 26px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.card h3{font-size:19px;font-weight:800;color:var(--indigo);margin-bottom:8px}
.card p{color:var(--muted);font-size:14.5px;margin-bottom:14px}
.card .tag{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;display:block}
.card>.btn,.card .btn:last-child{margin-top:auto;align-self:flex-start}
.grid-2,.grid-3{align-items:stretch}
/* carduri feature cu gradient (ca pe originalul institutulbrainmap.ro) */
.grad-cards .card{background:linear-gradient(180deg,#141a6b 0%,#3a2566 42%,#8f2f36 100%);border:0;color:#fff}
.grad-cards .card h3,.grad-cards .card h4{color:#fff}
.grad-cards .card p,.grad-cards .card li,.grad-cards .card span{color:rgba(255,255,255,.92)}
.grad-cards .card .tag{color:#ffd9cf}
.grad-cards .card ul{color:rgba(255,255,255,.92)}
/* Video embed (hero) pe paginile Protocolul BrainMap */
.videobox{position:relative;aspect-ratio:16/9;max-width:860px;margin:26px auto;border-radius:20px;overflow:hidden;box-shadow:0 26px 64px rgba(11,18,81,.30)}
.videobox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Pagini condiție/articol (.rpage): mai mult gradient/culoare, imagini centrate curate (fără float) */
/* imaginile de conținut: plafonate + centrate. EXCLUS iconițele cu height inline (ex. iconițe de card),
   altfel se întind și primesc umbră => apar ca dreptunghiuri albe pe cardurile închise. */
.rpage .sec:not(.af-hero) img:not([style*="height:"]):not([style*="height :"]){max-width:min(380px,100%) !important;max-height:360px;width:auto;margin:16px auto !important;display:block;border-radius:14px;box-shadow:0 16px 38px rgba(11,18,81,.14)}
/* Ritmul textului în articole (cerința 17: „nu există spațiere între paragrafe").
   Resetul global pune margin:0 pe tot, așa că paragrafele se lipeau unul de altul
   și articolul se citea ca un zid. Spațiem DOAR între elemente consecutive de
   text - nu punem margine pe orice <p>, ca să nu se miște cardurile, panourile
   de formular și titlurile de secțiune. */
.rpage .sec p+p,
.rpage .sec p+ul,.rpage .sec p+ol,
.rpage .sec ul+p,.rpage .sec ol+p,
.rpage .sec h3+p,.rpage .sec h4+p,
.rpage .sec .sec-head+p,.rpage .sec .sec-head+ul,.rpage .sec .sec-head+ol{margin-top:18px}
.rpage .sec p+h3,.rpage .sec ul+h3,.rpage .sec ol+h3,
.rpage .sec p+h4,.rpage .sec ul+h4{margin-top:34px}
.rpage .sec .sec-head+h3{margin-top:22px}
.rpage .sec li+li{margin-top:9px}
.rpage .sec ul,.rpage .sec ol{padding-left:22px}
.rpage .sec blockquote{margin-top:22px;padding:16px 20px;border-left:4px solid var(--accent);background:#F6F4FF;border-radius:0 12px 12px 0}
/* în carduri/panouri rămâne compact - acolo nu e text curgător */
.rpage .card p+p,.rpage .ghid-panel p+p,.rpage .ghid-num p+p{margin-top:10px}

/* Captarea de email din caseta „Cum funcționează creierul tău?" a articolelor.
   Acolo statea shortcode-ul [sibwp_form id=4], care nu se randa nici la ei. */
.art-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.art-form input{flex:1 1 240px;min-width:0;padding:12px 15px;border:1px solid #d9dcea;border-radius:10px;font:inherit}
.art-form .btn{flex:0 0 auto;margin-top:0}
@media(max-width:520px){.art-form .btn{width:100%}}

/* Imaginile din coloanele two-col (LP-uri & co.): tăiate curat în rama rotunjită,
   umplu coloana în loc să plutească mici cu colțuri drepte. Selectorul repetă
   cele două :not() ca să bată la specificitate regula generică de imagini .rpage
   (altfel poza rămâne plafonată la 380px cu margini => „căsuță" albă în jur). */
.rpage .imgwrap{border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(11,18,81,.16);align-self:center}
.rpage .sec .imgwrap img:not([style*="height:"]):not([style*="height :"]),
.rpage .sec .imgwrap img{max-width:100% !important;width:100%;height:auto;max-height:560px;object-fit:cover;margin:0 !important;border-radius:0;box-shadow:none;display:block}

/* Linkurile-ancoră (#programare etc.) nu se mai ascund sub meniul sticky */
.rpage section[id]{scroll-margin-top:138px}

/* Formularul de programare (.pc-form) - LP-uri + /programare-consultatie-gratuita/.
   Markup-ul e simplu (label+input în div-uri), tot aspectul vine de aici:
   grid 2 coloane pentru datele de contact, câmpuri late pentru restul. */
.pc-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-top:8px}
.pc-form>div{grid-column:span 2;min-width:0}
.pc-form>div:nth-child(-n+4){grid-column:span 1}
.pc-row{display:contents}
.pc-lbl{display:block;font-weight:600;font-size:.95rem;color:var(--indigo,#0B1251);margin-bottom:7px}
.pc-form input[type=text],.pc-form input[type=email],.pc-form input[type=tel],
.pc-form select,.pc-form textarea{width:100%;padding:12px 14px;border:1px solid #d9dcea;border-radius:12px;font:inherit;color:inherit;background:#fff;transition:border-color .15s,box-shadow .15s}
/* Sageata de dropdown. `:not([multiple])` nu filtreaza nimic - e acolo doar ca sa
   urce specificitatea peste `.pc-form select{background:#fff}` din <style>-ul unor
   pagini: `background` e prescurtare, deci le stergea sageata si selectul arata ca
   un camp de text (appearance:none scoate si sageata nativa). */
.pc-form select:not([multiple]){appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230B1251' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.pc-form input:focus,.pc-form select:focus,.pc-form textarea:focus{outline:none;border-color:var(--accent,#ED4622);box-shadow:0 0 0 3px rgba(237,70,34,.14)}
/* Ora de contact: ora si minutul, doua selecturi pe acelasi rand. Merge pe orice
   formular (pc-form, lp-form, markup Fluent Forms), de aia nu e prins sub .pc-form.
   Minutul e mai ingust - are patru optiuni de doua caractere. */
.ora-grup{display:flex;gap:10px;align-items:center}
.ora-grup>select{flex:2 1 0;min-width:0}
.ora-grup>select[name="ora_minut"]{flex:1 1 0}
.ora-grup>select:disabled{opacity:.5;cursor:not-allowed}
.pc-form textarea{resize:vertical;min-height:110px}
.pc-checks{display:flex;flex-wrap:wrap;gap:8px}
.pc-checks label{display:flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid #d9dcea;border-radius:999px;background:#fff;cursor:pointer;user-select:none;transition:border-color .15s,background .15s}
.pc-checks input{accent-color:var(--accent,#ED4622);margin:0}
.pc-checks label:has(input:checked){border-color:var(--accent,#ED4622);background:#FFF3EF;font-weight:600}
.pc-terms{display:flex;gap:10px;align-items:flex-start;background:#F6F7FC;border:1px solid var(--line,#E3E6F2);border-radius:12px;padding:14px 16px}
.pc-terms input{accent-color:var(--accent,#ED4622);margin-top:4px;flex:0 0 auto}
.pc-terms label{font-size:.92rem;color:#4A4F6E;cursor:pointer}
.pc-form .btn{width:100%;text-align:center}
@media(max-width:640px){.pc-form{grid-template-columns:1fr}.pc-form>div,.pc-form>div:nth-child(-n+4),.pc-row>div{grid-column:span 1}}

/* Cuprinsul articolelor (generat din server, vezi injecteazaCuprins) */
.toc-sec .wrap{padding-top:0;padding-bottom:0}
.rpage .sec.toc-sec{padding:26px 0 0}
.toc{max-width:820px;margin:0 auto;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);
  border-radius:0 16px 16px 0;padding:22px 26px;box-shadow:0 10px 30px rgba(23,19,52,.07)}
.toc-titlu{font-size:15px!important;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)!important;margin-bottom:14px}
.toc ol{list-style:none;padding:0;margin:0;counter-reset:toc}
.toc li{margin:0}
.toc li+li{margin-top:9px!important}
.toc a{color:var(--indigo);font-weight:600;font-size:15.5px;line-height:1.5;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.toc a:hover{color:var(--accent);border-bottom-color:var(--accent)}
.toc .toc-h2::before{counter-increment:toc;content:counter(toc) ". ";color:var(--accent);font-weight:800}
.toc .toc-h3{padding-left:24px}
.toc .toc-h3 a{font-weight:500;font-size:14.5px;color:var(--muted)}
/* titlul spre care sari sa nu ramana lipit de bara de meniu */
.rpage h2[id],.rpage h3[id]{scroll-margin-top:138px}
@media(max-width:700px){.toc{padding:18px 20px}}

/* keyword highlight: „light bold" pe cuvinte cheie ca să iasă din blocul de text */
.rpage .kw{font-weight:600;color:var(--indigo)}
.rpage .sec.bg-cream{background:linear-gradient(180deg,#eef1fb,#e8ecfa)}
.rpage .sec:not(.bg-cream):not(.af-hero):nth-of-type(4n+1){background:linear-gradient(180deg,#fff,#f4f6fd)}
.rpage .sec-head h2{position:relative}
.rpage .sec-head[style*="left"] h2{padding-bottom:15px}
.rpage .sec-head[style*="left"] h2::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;border-radius:3px;background:var(--grad-btn)}
/* Locații ca grid de căsuțe mici EGALE cu fundal gradient (config-ul butonului), pe 2 rânduri */
/* Cerința 11 (captura din doc): căsuțele mov gradient „nu arată ok" - 6 pe rând,
   înghesuite, grele. Redesign: carduri albe în limbajul restului site-ului. */
.locbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;grid-auto-rows:1fr;gap:12px;margin:18px 0}
.locbox{background:#fff;color:#39406b;border:1px solid #e7e9f4;border-radius:14px;padding:14px 16px;box-shadow:0 8px 22px rgba(23,19,52,.06);display:flex;gap:11px;align-items:flex-start;height:100%}
.locbox .pin{flex:0 0 auto;width:30px;height:30px;border-radius:10px;background:#FFF3EF;display:grid;place-items:center;font-size:14px;line-height:1}
.locbox b{display:block;color:var(--indigo,#0B1251);font-family:'Sora';font-size:14px;font-weight:700;margin-bottom:3px;line-height:1.25}
.locbox em{color:#6B7194;font-size:12.5px;line-height:1.4;font-style:normal}
/* Caseta de OFERTĂ pe paginile Protocolul BrainMap - card indigo premium (ca semnătura BrainMap) */
.offer-box{background:linear-gradient(160deg,#1b2467,#0B1251);color:#eef0ff;border-radius:22px;padding:34px 34px 30px;margin:26px 0;box-shadow:0 22px 55px rgba(11,18,81,.30)}
.offer-box h3,.offer-box h4{color:#fff}
.offer-box h4{font-size:20px;margin:0 0 4px}
.offer-box h3{font-family:'Sora';font-weight:800;font-size:26px;margin:16px 0 6px}
.offer-box>p{color:#cfd3f0;margin:6px 0}
.offer-box .artlist ul{margin:12px 0}
.offer-box .artlist li{color:#e7e9ff;margin:8px 0}
.offer-box .artlist li a{color:#ffd0c4}
.offer-box a[href^="tel"]{color:#fff;font-weight:700}
.offer-box img{border-radius:12px;box-shadow:0 8px 22px rgba(0,0,0,.28)}
.rcard{display:grid;grid-template-columns:1fr minmax(240px,300px);gap:0 32px;align-items:stretch}
.rcard-txt{min-width:0}
.rcard-img{width:100%;height:auto;aspect-ratio:3/4;max-height:520px;object-fit:cover;border-radius:14px;margin:0;align-self:center;box-shadow:0 12px 30px rgba(0,0,0,.28)}
@media(max-width:820px){.grid-3{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.rcard{grid-template-columns:1fr}.rcard-img{aspect-ratio:16/10;max-height:220px;margin-top:6px}}

.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{background:#fff;border-radius:18px;padding:28px 22px;text-align:center;box-shadow:var(--shadow)}
.stat b{font-family:'Sora';font-size:clamp(30px,3.6vw,44px);font-weight:800;color:var(--accent);display:block;line-height:1}
.stat span{color:var(--muted);font-weight:500;font-size:14px;margin-top:10px;display:block;line-height:1.4}
@media(max-width:760px){.stat-grid{grid-template-columns:repeat(2,1fr)}}

.loc-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:14px;align-items:center}
/* Imaginile orașelor au fundal alb + umbră COAPTE în fișier → decupăm strâns pe
   cercul fotografiei (în interiorul măștii rotunde), altfel rămâne un chenar alb
   urât în jurul medalionului (feedback Daria, 31 iul).
   Zoomul e MĂSURAT, nu ghicit: în toate cele 10 fișiere medalionul plus umbra
   ocupă 83,5% din lățime, deci 1,2 îl încadrează exact, iar 1,26 mai mănâncă și
   inelul de umbră fără să atingă textul. Cu 1,42 cât era înainte tăiam 5% din
   fiecare margine a cercului, adică prima și ultima literă din numele orașului -
   „UCUREȘT", „IMIȘOAR" (cerinta 4 din feedbackul clientei, 3 aug). Peste 1,32
   literele ating marginea, deci 1,26 e maximul sigur.
   Marginile verticale sunt asimetrice pentru că umbra coborâtă mută centrul
   conținutului la 52%, nu la 50%. */
.loc{border-radius:50%;overflow:hidden;aspect-ratio:1;transition:transform .2s}
/* Selectorul lung NU e de decor: regula-ciocan de la „.rpage .sec:not(.af-hero) img"
   prinde orice imagine dintr-o secțiune .sec cu !important si i-ar pune max-width
   380px si margin 16px auto - medalionul iese oval, cu alb in colturi. Pe pagina de
   start nu se vedea, ca acolo secțiunea e .sec-sm; pe /brainmap-harta-creierului/ e
   .sec, si acolo se rupea. Acelasi tipar ca la .ghid-media si .split-media. */
.rpage .sec .wrap .loc-grid .loc.loc img,.loc img{width:142%!important;height:142%!important;max-width:none!important;max-height:none!important;display:block;margin:-21%!important;object-fit:cover;border-radius:0!important;box-shadow:none!important}
.loc:hover{transform:translateY(-5px)}
/* Nu toate paginile au aceleași orașe: una are 9 (fără Bacău), oferta de sărbători
   are 12 (cu Arad și Baia Mare). Modificatorii ăștia țin rândul plin, fără stil
   inline - care ar bate media query-urile de mai jos și ar rupe telefonul. */
.loc-grid.n9{grid-template-columns:repeat(9,1fr)}
.loc-grid.n12{grid-template-columns:repeat(12,1fr);gap:10px}
@media(max-width:1080px){.loc-grid,.loc-grid.n9,.loc-grid.n12{grid-template-columns:repeat(5,1fr);gap:20px}}
@media(max-width:600px){.loc-grid,.loc-grid.n9,.loc-grid.n12{grid-template-columns:repeat(3,1fr)}}

/* ── Pagină de afecțiune ── */
/* Hero-ul comun (~900 de pagini: afectiuni, articole, ghiduri, landing-uri).
   Varianta veche: aceeasi poza de neuroni pusa de doua ori, una peste alta, cu
   un voal uniform peste tot - fundalul iesea aglomerat exact sub titlu, iar
   titlul era 54px la weight 800, adica un zid de bold pe 4-5 randuri.
   Acum: voal in diagonala (dens la stanga, unde sta textul, transparent la
   dreapta, unde se vede desenul), stratul de neuroni se plimba lent, aurora in
   culoarea lumii si o intrare pe etaje. Titlul coboara la 700. */
.af-hero{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(120% 96% at 46% 40%,transparent 42%,rgba(4,6,28,.55) 100%),
    linear-gradient(96deg,rgba(7,11,42,.94) 0%,rgba(8,13,50,.82) 40%,rgba(10,15,62,.5) 66%,rgba(12,17,70,.34) 100%),
    linear-gradient(180deg,rgba(11,18,81,.62),rgba(8,13,56,.88)),
    url(/_assets/wp-content/uploads/2025/07/medium-vecteezy_neural-connection-abstract-design_24496895_medium.jpg) center/cover no-repeat}
/* stratul de neuroni care „respira" - acelasi desen, in screen, plimbat foarte
   incet. Pe .ghid-hero regula asta e inlocuita mai jos de aurora lui proprie. */
.af-hero::before{content:"";position:absolute;inset:-7%;pointer-events:none;
  background:url(/_assets/wp-content/uploads/2025/07/medium-vecteezy_neural-connection-abstract-design_24496895_medium.jpg) center/cover no-repeat;
  opacity:.26;mix-blend-mode:screen;will-change:transform;
  animation:afDrift 34s ease-in-out infinite alternate}
@keyframes afDrift{from{transform:scale(1.02) translate3d(-1.2%,-.8%,0)}to{transform:scale(1.11) translate3d(1.4%,1.2%,0)}}
/* aurora in culoarea lumii (violet / mint / coral), ca sa nu ramana un albastru
   plat. .ghid-hero are deja aurora lui, deci il sarim. */
.af-hero:not(.ghid-hero)::after{content:"";position:absolute;inset:-35% -10%;pointer-events:none;
  background:
    radial-gradient(32% 50% at 10% 24%,color-mix(in srgb,var(--accent) 44%,transparent),transparent 70%),
    radial-gradient(28% 44% at 84% 78%,rgba(34,199,126,.16),transparent 72%);
  animation:afAurora 30s ease-in-out infinite alternate}
@keyframes afAurora{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2.5%,1.5%,0) scale(1.09)}}
.af-hero>.wrap{position:relative;z-index:1}
.af-hero .wrap{padding:64px 28px 56px}
.af-hero .crumb{font-size:13px;color:#a9adcf;margin-bottom:14px}
.af-hero .crumb a{color:#cdd0e6}
.af-hero h1{color:#fff;font-size:clamp(30px,4.1vw,48px);font-weight:700;line-height:1.12;letter-spacing:-.025em;margin-bottom:18px;text-wrap:balance}
.af-hero p{font-size:clamp(16px,1.6vw,18.5px);color:#d6daf2;max-width:58ch;margin-bottom:24px;line-height:1.62}
.af-hero .cta-row{display:flex;gap:12px;flex-wrap:wrap}
/* intrarea pe etaje: fiecare bucata urca putin, la 70ms diferenta */
@keyframes afIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.af-hero .crumb,.af-hero>.wrap .eyebrow,.af-hero h1,.af-hero .lead,.af-hero>.wrap p,.af-hero .cta-row{
  animation:afIn .8s cubic-bezier(.22,.9,.28,1) both}
.af-hero>.wrap .eyebrow{animation-delay:.07s}
.af-hero h1{animation-delay:.14s}
.af-hero .lead,.af-hero>.wrap p{animation-delay:.22s}
.af-hero .cta-row{animation-delay:.3s}
@media(prefers-reduced-motion:reduce){
  .af-hero::before,.af-hero:not(.ghid-hero)::after,.af-hero .crumb,.af-hero>.wrap .eyebrow,
  .af-hero h1,.af-hero .lead,.af-hero>.wrap p,.af-hero .cta-row{animation:none}
}

/* subnav sticky (cele 11 secțiuni) */
.subnav{position:sticky;top:0;z-index:55;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 6px 18px rgba(19,23,53,.05)}
.subnav .wrap{display:flex;gap:4px;overflow-x:auto;padding:0 20px;scrollbar-width:thin}
.subnav a{white-space:nowrap;padding:15px 14px;font-size:13.5px;font-weight:600;color:#3a4064;border-bottom:3px solid transparent;transition:.15s}
.subnav a:hover{color:var(--accent)}
.subnav a.on{color:var(--accent);border-bottom-color:var(--accent)}

/* Banda de test gratuit - se pune imediat sub .subnav, pe paginile de afectiune
   care au un test propriu (insomnii -> /test-somn/). Componenta e comuna, ca sa
   arate la fel pe toate. Culoarea urmeaza lumea paginii (var(--accent)).
   Varianta veche era un dreptunghi plat, cu titlu de 27px la weight 800 - striga
   mai tare decat hero-ul de deasupra. Acum fundalul e viu (aurora + traseu EEG
   care curge), iar textul coboara in ierarhie: eyebrow discret, titlu 600, sub
   mai stins. Tot ce se misca se opreste la prefers-reduced-motion. */
.test-strip{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(114deg,#140E36 0%,#1C1450 40%,#2A1A70 76%,#331F80 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(255,255,255,.07)}
/* aurora: trei pete de lumina care se plimba lent - violetul lumii curente,
   mintul din Wellness si un violet deschis in coltul din dreapta-sus */
.test-strip::before{content:"";position:absolute;inset:-45% -12%;z-index:0;pointer-events:none;
  background:
    radial-gradient(38% 62% at 16% 32%,color-mix(in srgb,var(--accent) 62%,transparent),transparent 70%),
    radial-gradient(34% 56% at 70% 82%,rgba(34,199,126,.22),transparent 72%),
    radial-gradient(30% 52% at 93% 12%,rgba(139,104,246,.42),transparent 70%);
  animation:tsAurora 26s ease-in-out infinite alternate}
@keyframes tsAurora{from{transform:translate3d(-2.5%,-1.5%,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.1)}}
/* traseul EEG care curge prin banda - acelasi limbaj vizual ca .ghid-wave */
.test-strip::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.13;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='620' height='120' viewBox='0 0 620 120'%3E%3Cpath d='M0 60H118l13-33 11 60 14-45 10 18h64l12-22 10 40 13-30 9 12h112l14-38 12 66 13-48 10 20h71l12-24 11 42 13-32 9 14h56' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") repeat-x center/620px 120px;
  /* unda sta in jumatatea dreapta: peste text scadea lizibilitatea, iar coloana
     din dreapta avea oricum nevoie de ceva in spatele butonului */
  -webkit-mask-image:linear-gradient(90deg,transparent 34%,rgba(0,0,0,.45) 52%,#000 72%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent 34%,rgba(0,0,0,.45) 52%,#000 72%,#000 92%,transparent);
  animation:tsScan 22s linear infinite}
@keyframes tsScan{to{background-position:-620px center}}
.test-strip>.wrap{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:44px;padding-top:46px;padding-bottom:46px;flex-wrap:wrap}
/* halo in spatele butonului: da greutate coloanei din dreapta, acolo unde inainte
   era doar un buton plutind singur */
.test-strip>.wrap::before{content:"";position:absolute;z-index:-1;right:-90px;top:50%;translate:0 -50%;
  width:460px;height:460px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--accent) 42%,transparent),transparent 64%);
  animation:tsHalo 8s ease-in-out infinite}
@keyframes tsHalo{0%,100%{opacity:.55;transform:scale(.94)}50%{opacity:.9;transform:scale(1.04)}}
/* orbita punctata din jurul butonului - se roteste incet, cat sa se simta ca
   banda „traieste", nu cat sa fure atentia de la CTA */
.test-strip>.wrap::after{content:"";position:absolute;z-index:-1;right:6px;top:50%;
  width:278px;height:278px;margin-top:-139px;border-radius:50%;pointer-events:none;
  border:1px dashed rgba(255,255,255,.18);
  /* se stinge sus si jos, ca sa nu se vada taiata de marginea benzii */
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 26%,#000 74%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 26%,#000 74%,transparent);
  animation:tsOrbit 46s linear infinite}
@keyframes tsOrbit{to{transform:rotate(360deg)}}
.test-strip .ts-txt{min-width:0;flex:1 1 520px}
.test-strip .ts-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;font-weight:700;
  letter-spacing:.19em;text-transform:uppercase;color:rgba(255,255,255,.94);
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);
  border-radius:100px;padding:7px 16px 7px 13px;margin-bottom:18px}
.test-strip .ts-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:#5CF0A8;flex:0 0 auto;
  animation:tsDot 2.8s ease-out infinite}
@keyframes tsDot{0%{box-shadow:0 0 0 0 rgba(92,240,168,.65)}70%{box-shadow:0 0 0 10px rgba(92,240,168,0)}100%{box-shadow:0 0 0 0 rgba(92,240,168,0)}}
.test-strip b{display:block;font-family:'Sora',sans-serif;font-size:clamp(20px,2.15vw,25px);font-weight:600;
  letter-spacing:-.02em;line-height:1.3;color:#fff;max-width:24ch;text-wrap:balance}
.test-strip span.ts-sub{display:block;font-size:15.5px;line-height:1.62;color:rgba(255,255,255,.72);max-width:62ch;margin-top:12px}
.test-strip .btn{position:relative;overflow:hidden;flex:0 0 auto;margin:0;font-size:15.5px;font-weight:700;
  padding:18px 32px;background:#fff;color:#1B1145;
  box-shadow:0 20px 44px rgba(0,0,0,.3),0 0 0 8px rgba(255,255,255,.07)}
.test-strip .btn:hover{transform:translateY(-2px);box-shadow:0 26px 54px rgba(0,0,0,.36),0 0 0 10px rgba(255,255,255,.12)}
/* sclipirea care trece peste buton la fiecare 7s - suficient cat sa atraga ochiul,
   nu cat sa devina banner de reclama */
.test-strip .btn::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 34%,color-mix(in srgb,var(--accent) 22%,transparent) 48%,transparent 62%);
  transform:translateX(-120%);animation:tsShine 7s ease-in-out infinite}
@keyframes tsShine{0%,72%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@media(max-width:1080px){
  .test-strip b{max-width:none}
  /* butonul coboara sub text - orbita nu mai are pe ce sta centrata */
  .test-strip>.wrap::after{display:none}
}
@media(max-width:820px){
  .test-strip>.wrap{flex-direction:column;align-items:flex-start;gap:22px;padding-top:38px;padding-bottom:38px}
  /* pe coloana, flex-basis-ul de 520px devine INALTIME si lasa un gol urias
     intre text si buton */
  .test-strip .ts-txt{flex:0 0 auto}
  .test-strip>.wrap::before{right:-160px;width:340px;height:340px}
  .test-strip::after{-webkit-mask-image:linear-gradient(180deg,transparent 55%,#000);mask-image:linear-gradient(180deg,transparent 55%,#000)}
  .test-strip .btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .test-strip::before,.test-strip::after,.test-strip>.wrap::before,.test-strip .ts-eyebrow::before,.test-strip .btn::after{animation:none}
}

.afsec{padding:64px 0;border-bottom:1px solid var(--line)}
.afsec .lbl{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;display:block}
.afsec h2{font-size:clamp(26px,3.4vw,38px);font-weight:800;margin-bottom:14px}
.afsec .intro{color:var(--muted);font-size:16.5px;max-width:70ch;margin-bottom:26px}
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
/* grila de tipuri vine imediat dupa .split - fara asta primul card se lipeste
   de marginea de jos a imaginii din split-media */
.afsec .split+.type-grid{margin-top:34px}
.type-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #DED7F7;border-radius:14px;padding:18px 20px;font-weight:600;color:var(--indigo);font-size:14.5px;box-shadow:0 10px 26px rgba(23,19,52,.07);transition:.16s}
.type-btn:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px);box-shadow:var(--shadow)}
/* DOAR sageata se estompeaza. Regula veche era `.type-btn span` si prindea si
   `<span class="tt">` (titlul + descrierea, pe paginile de afectiuni) - tot
   cardul aparea spalacit, la 50% opacitate. */
.type-btn>span:last-child{opacity:.5;color:var(--accent);font-size:16px;flex:0 0 auto}
.type-btn:hover>span:last-child{opacity:1}
@media(max-width:820px){.type-grid{grid-template-columns:1fr}}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{background:var(--cream);border:1px solid var(--line);border-radius:100px;padding:9px 16px;font-size:13.5px;font-weight:600;color:var(--indigo)}
.linklist{display:grid;gap:10px;margin-top:6px}
.linklist a{display:flex;align-items:center;gap:10px;color:var(--indigo);font-weight:600;font-size:14.5px;padding:6px 0}
.linklist a:before{content:"↗";color:var(--accent)}
.linklist a:hover{color:var(--accent)}
.note{background:#fff6f2;border:1px solid #f6d9cd;border-radius:12px;padding:12px 16px;font-size:13px;color:#8a2b17;margin-top:16px}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:start}
@media(max-width:860px){.two-col{grid-template-columns:1fr;gap:22px}}
.price-tag{font-family:'Sora';font-weight:800;color:var(--accent);font-size:22px}

/* Ghiduri - „…este potrivit pentru tine dacă": o casetă cu contur portocaliu + cartea alături */
.ghid-fit{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center;max-width:1060px;margin:0 auto}
.ghid-fit.no-book{grid-template-columns:1fr;max-width:820px}
.ghid-box{background:#fff;border:1.5px solid var(--accent);border-radius:22px;padding:32px 36px;box-shadow:0 16px 40px rgba(111,66,243,.12)}
.checks{list-style:none;display:grid;gap:18px;margin:0;padding:0}
.checks li{position:relative;padding-left:36px;color:var(--muted);font-size:15.5px;line-height:1.6}
.checks li strong,.checks li b{color:var(--indigo)}
.checks li::before{content:"✓";position:absolute;left:0;top:-1px;color:var(--accent);font-size:19px;font-weight:800;line-height:1.5}
.rpage .sec .wrap .ghid-fit .ghid-book,.ghid-fit .ghid-book{width:100%!important;max-width:330px!important;height:auto!important;max-height:none!important;margin:0 auto!important;display:block;border-radius:14px!important;box-shadow:none!important;filter:drop-shadow(0 26px 38px rgba(11,18,81,.24))}
/* ---- Pagini de ghid: structura landing page-urilor originale (cerința 19) ------
   Pe original, hero-ul ține tot: titlu, text, formularul ȘI coperta. La noi
   formularul căzuse într-o secțiune albă de dedesubt, iar hero-ul rămăsese cu un
   buton singur - de-aia pagina se citea lungă și goală. Aducem formularul și
   cartea înapoi în hero, dar cu panou de sticlă în loc de câmpuri pe fundal gol,
   ca să rămână limbajul nostru vizual, nu al lor. */
.ghid-hero{position:relative;overflow:hidden}
.ghid-hero .wrap{padding:54px 28px 92px;position:relative;z-index:2}
/* aurora în spatele coperții: două pete de lumină (violetul brandului + mintul din
   Wellness) care se mișcă lent. Fără ea, fundalul de neuroni rămâne plat și mort. */
.ghid-hero::before{content:"";position:absolute;inset:-25% -12% -25% -12%;pointer-events:none;z-index:1;
  background:radial-gradient(42% 52% at 20% 28%,rgba(111,66,243,.55),transparent 70%),
             radial-gradient(38% 48% at 84% 68%,rgba(34,199,126,.26),transparent 72%);
  animation:ghidAurora 22s ease-in-out infinite alternate}
@keyframes ghidAurora{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.08)}}

/* Traseul EEG care taie hero-ul de secțiunea următoare: un semnal cerebral, nu o
   linie decorativă oarecare - asta face clinica. Pulsul îl parcurge la nesfârșit. */
.ghid-wave{position:absolute;left:0;right:0;bottom:-1px;z-index:3;line-height:0;pointer-events:none}
.ghid-wave svg{display:block;width:100%;height:118px}
.ghid-wave .val{fill:#eef1fb}
.ghid-wave .eeg-base{fill:none;stroke:rgba(196,181,253,.58);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ghid-wave .eeg-pulse{fill:none;stroke:#A78BFA;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;
  filter:drop-shadow(0 0 7px rgba(167,139,250,.95));stroke-dasharray:170 3000;stroke-dashoffset:3170;
  animation:ghidEeg 5.5s linear infinite}
@keyframes ghidEeg{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.ghid-hero::before,.ghid-wave .eeg-pulse{animation:none}}
.ghid-hero-grid{display:grid;grid-template-columns:1.22fr .78fr;gap:48px;align-items:center}
.ghid-hero h1{margin-bottom:16px;font-size:clamp(30px,3.5vw,44px)}
.ghid-hero p{margin-bottom:14px;max-width:52ch}
.ghid-hero .eyebrow{color:#C4B5FD}
/* subtitlurile urcate din secțiunea de sub hero rămâneau indigo pe fundal închis */
.ghid-hero h2,.ghid-hero h3{color:#fff}
.ghid-hero h3{font-size:clamp(18px,2vw,22px);margin-bottom:12px;opacity:.92}
.ghid-panel{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:22px 22px 20px;backdrop-filter:blur(10px);max-width:440px;margin-top:26px}
.ghid-panel label{display:block;color:#e8eaff;font-size:13.5px;font-weight:600;margin-bottom:12px}
/* Pe 14 pagini formularul importat avea el însuși class="card" - adică un card ALB
   în mijlocul panoului de sticlă. Îl dezbrăcăm: panoul e cardul, formularul doar
   ține câmpurile. */
.ghid-panel form,.ghid-panel .card{background:none!important;border:0!important;box-shadow:none!important;
  padding:0!important;margin:0!important;border-radius:0!important;
  display:flex!important;flex-direction:column;gap:0!important}
.ghid-panel h3{color:#fff;font-size:19px;margin:0 0 14px}
.ghid-panel form p{color:#c9cdf0!important;font-size:13.5px!important;text-align:center;margin:12px 0 0!important}
.ghid-panel .btn{margin-top:6px}
.ghid-panel input{width:100%;padding:13px 15px;border:1px solid rgba(255,255,255,.28);border-radius:11px;margin-top:6px;background:#fff;color:var(--ink);font:inherit}
.ghid-panel .btn{width:100%;justify-content:center;margin-top:4px}
.ghid-panel .hint{color:#c9cdf0;font-size:13.5px;text-align:center;margin-top:12px}
.rpage .af-hero.ghid-hero .ghid-hero-media img{width:100%!important;max-width:430px!important;height:auto!important;max-height:none!important;margin:0 auto!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 30px 46px rgba(0,0,0,.45))}
@media(max-width:900px){.ghid-hero-grid{grid-template-columns:1fr;gap:34px}.ghid-panel{max-width:none}}

/* „Acest ghid este potrivit pentru tine dacă": pe original sunt fișe numerotate,
   nu o listă înghesuită într-o cutie. Păstrăm ideea, dar cu numărul în pastilă
   cu gradientul nostru și o fotografie care umple ultima celulă. */
.ghid-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.ghid-num{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ghid-num:hover{transform:translateY(-6px);border-color:rgba(111,66,243,.38);box-shadow:0 26px 58px rgba(111,66,243,.20)}
.ghid-num .n{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;background:var(--grad-btn);color:#fff;font-family:'Sora',sans-serif;font-weight:800;font-size:17px;margin-bottom:15px}
.ghid-num p{color:var(--muted);font-size:15.5px;line-height:1.62;margin:0}
.ghid-num-media{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);min-height:220px}
.rpage .sec .wrap .ghid-num-media img,.ghid-num-media img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;object-fit:cover;border-radius:18px!important;box-shadow:none!important}
/* fotografia de lângă „În interior, vei descoperi": umplea doar jumătate din
   coloană și rămânea alb în jurul ei. O lăsăm să ocupe coloana. */
.rpage .sec .wrap .ghid-media img,.ghid-media img{width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;border-radius:18px!important;box-shadow:var(--shadow)!important}
@media(max-width:980px){.ghid-nums{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ghid-nums{grid-template-columns:1fr}.ghid-num-media{min-height:200px}}

/* .ghid-cut = coperta DECUPATĂ (PNG cu fundal transparent), pe toate paginile de ghid.
   Fără box-shadow și fără border-radius: o umbră dreptunghiulară peste un PNG
   transparent desenează un card alb în jurul cărții - exact „fundalul alb". Umbra o
   dăm din drop-shadow, care urmărește silueta. O lăsăm și mai mare, e produsul paginii.
   Fotografiile (cartea ținută în mână) sunt opace, NU primesc clasa asta și își
   păstrează colțurile rotunjite. Clasa e dublată în selector ca să bată regula
   generică de imagini din .rpage, fără să depindem de ordinea din fișier. */
.rpage .sec .wrap .ghid-cut.ghid-cut,.rpage .sec .ghid-cut.ghid-cut,.ghid-cut.ghid-cut{width:100%!important;max-width:460px!important;height:auto!important;max-height:none!important;margin:0 auto!important;display:block;background:none!important;border:0!important;padding:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 26px 38px rgba(11,18,81,.24))}
/* în „…este potrivit pentru tine dacă" coloana e mai îngustă (.75fr din 1060) */
.rpage .sec .wrap .ghid-fit .ghid-cut.ghid-cut,.ghid-fit .ghid-cut.ghid-cut{max-width:360px!important}
@media(max-width:860px){.ghid-fit{grid-template-columns:1fr;gap:28px}.ghid-box{padding:26px 24px}}

/* două coloane cu imaginea centrată pe verticală (nu lipită sus) */
.two-col.two-col-mid{align-items:center}
/* listă „În interior, vei descoperi" - titlu pe rândul lui, descrierea dedesubt, aliniate la chenar */
.inside-list{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
.inside-list li{display:block;padding:18px 26px;border-bottom:1px solid #eef0f8}
.inside-list li:last-child{border-bottom:0}
.inside-list li b{display:block;color:var(--indigo);font-family:'Sora';font-weight:700;font-size:15.5px;line-height:1.4;margin-bottom:5px}
.inside-list li b::before{content:"✓";color:var(--accent);font-weight:800;margin-right:9px}
.inside-list li span{display:block;color:var(--muted);font-size:14.5px;line-height:1.6;padding-left:24px}
/* notă de siguranță (ghid prevenția suicidului) */
.safety{display:flex;gap:18px;align-items:flex-start;background:#F3EFFF;border:1.5px solid var(--accent);border-radius:20px;padding:24px 26px}
.safety-ico{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-size:19px}
.safety h2{font-size:19px;line-height:1.45;color:var(--indigo);margin:0 0 10px;text-align:left}
.safety p{margin:0;color:#7a3a26;font-size:14.5px;line-height:1.6}
.safety p strong{color:var(--accent)}

/* Validare formulare (fără reîncărcarea paginii) */
.field-err{border-color:#e02b2b!important;background:#fff6f6!important}
.err-msg{display:block;margin:6px 2px 0;color:#d32020;font-size:13px;font-weight:600}
.form-msg{border-radius:12px;padding:11px 15px;margin-bottom:14px;font-size:14px;font-weight:600;line-height:1.5}
.form-err{background:#fdecec;border:1.5px solid #e02b2b;color:#c11f1f}
.form-ok{background:#eaf7ef;border:1.5px solid #2e9e5b;color:#1d7a44}

/* „Am apărut și la" - logo-urile media ca strip pe toată lățimea secțiunii */
.strip-label{text-align:center;font-family:'Sora';font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:52px 0 16px}
.logo-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:20px 26px;margin:18px 0 0}
.rpage .sec .wrap .logo-strip img,.logo-strip img{flex:1 1 0;min-width:0;width:auto!important;max-width:130px!important;height:52px!important;max-height:52px!important;margin:0!important;object-fit:contain;border-radius:0!important;box-shadow:none!important}
@media(max-width:820px){.logo-strip{justify-content:center;gap:20px;padding:20px}.rpage .sec .wrap .logo-strip img,.logo-strip img{flex:0 0 auto;height:34px!important;max-height:34px!important;max-width:100px!important}}

/* ===== Pagini de afecțiune (layout compact) ===== */
/* --- Pagina de afecțiune: layout compact, cu imagini și casete colorate --- */
.cond-hero .wrap{padding:60px 28px 56px}
.cond-hero .hero2{display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center}
.cond-hero .eyebrow{color:#C4B5FD;display:inline-flex;align-items:center;gap:9px}
/* linia scurta dinaintea supratitlului: ancoreaza coloana din stanga */
.cond-hero .eyebrow::before{content:"";width:26px;height:2px;border-radius:2px;flex:0 0 auto;
  background:linear-gradient(90deg,var(--accent),transparent)}
/* titlul: 38px la weight 700 in loc de 46px la 800. Pe coloana de ~620px,
   titlurile lungi de aici (95+ caractere) nu mai fac zid de bold. */
.cond-hero h1{font-size:clamp(27px,2.9vw,35px);font-weight:700;line-height:1.2;margin-bottom:18px;max-width:26ch}
.cond-hero .lead{font-size:clamp(16px,1.6vw,18.5px);color:#dfe2f5;margin-bottom:26px}
/* Poza din dreapta: era un dreptunghi 4/3 lipit, cu umbra neagra. Acum are rama
   subtire, halou in culoarea lumii, un degrade jos care o leaga de fundal si un
   Ken Burns foarte lent, cat sa nu para o poza de stock inghetata. */
.cond-media{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;background:#0B1251;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 34px 74px rgba(0,0,0,.45),0 0 70px -14px color-mix(in srgb,var(--accent) 55%,transparent);
  animation:afIn .9s cubic-bezier(.22,.9,.28,1) .18s both}
.cond-media::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(196deg,transparent 52%,rgba(7,11,42,.5) 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}
/* tenta in culoarea lumii peste poza de stock: fara ea, fiecare pagina are alta
   temperatura de culoare si poza pare lipita peste fundal, nu parte din el */
.cond-media::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:soft-light;
  background:linear-gradient(200deg,color-mix(in srgb,var(--accent) 62%,transparent),rgba(7,11,42,.55))}
.rpage .sec .wrap .cond-media.cond-media img,.rpage .cond-media.cond-media img{position:absolute;inset:0;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;object-fit:cover;border-radius:0;box-shadow:none;
  animation:afKen 26s ease-in-out infinite alternate}
@keyframes afKen{from{transform:scale(1)}to{transform:scale(1.07)}}
@media(max-width:900px){.cond-hero .hero2{grid-template-columns:1fr;gap:26px}.cond-hero h1{max-width:none}}
@media(prefers-reduced-motion:reduce){
  .cond-media,.rpage .cond-media.cond-media img{animation:none}
}

/* ===== Hero „Duotone": paginile care AU fotografie în hero (7 aug 2026) =====
   Varianta aleasă din cele unsprezece propuse. Poza nu mai stă într-o ramă în
   coloana din dreapta: umple jumătatea dreaptă a benzii, până la marginea
   ecranului, și se stinge spre text printr-o mască, deci nu mai are contur.
   E trecută prin alb-negru și recolorată în culoarea lumii (`mix-blend-mode:color`),
   ca banda să arate la fel pe toate paginile indiferent cât de caldă sau rece e
   fotografia de stoc - până acum fiecare pagină avea altă temperatură. Peste tot,
   o grilă fină de puncte care se plimbă foarte încet, pentru adâncime.

   Se aplică prin `:has(.cond-media)`, nu printr-o clasă nouă: paginile rămân
   neatinse, iar cele șase pagini legale care au `.cond-hero` fără fotografie
   (termeni, cookies, confidențialitate ×2 limbi) nu intră aici, cum e corect. */
.af-hero.cond-hero:has(.cond-media)>.wrap{padding-top:0;padding-bottom:0}
/* înălţimea o dă .hero2, nu .wrap: aşa .wrap are exact înălţimea benzii, iar poza
   pozitionată absolut faţă de el o acoperă cap-coadă, fără offseturi ghicite */
.cond-hero:has(.cond-media) .hero2{position:relative;min-height:clamp(420px,50vw,560px);
  padding:60px 0 56px;grid-template-columns:1.02fr .98fr;gap:40px}
.cond-hero:has(.cond-media) .hero2>div:first-child{position:relative;z-index:3;max-width:540px}
.cond-hero:has(.cond-media) h1{font-size:clamp(29px,3.6vw,44px);max-width:20ch;margin-bottom:14px}
.cond-hero:has(.cond-media) .lead{max-width:42ch}
/* grila de puncte, stinsă spre stânga ca să nu treacă peste text */
.cond-hero:has(.cond-media) .hero2::before{content:"";position:absolute;inset:-10% -4%;z-index:0;pointer-events:none;
  opacity:.5;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(80% 70% at 72% 50%,#000,transparent 78%);
  mask-image:radial-gradient(80% 70% at 72% 50%,#000,transparent 78%);
  animation:afGrila 24s linear infinite}
@keyframes afGrila{to{background-position:26px 26px}}
/* `right:calc(50% - 50vw)` scoate poza din .wrap până la marginea ecranului:
   50% din lăţimea lui .wrap minus jumătate de fereastră = exact marginea. */
.cond-hero:has(.cond-media) .cond-media{position:absolute;top:0;bottom:0;left:46%;
  right:calc(50% - 50vw);width:auto;height:auto;z-index:1;
  aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;background:none;
  -webkit-mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%)}
/* Cadrul e apropiat, nu doar poziţionat. Fotografiile astea sunt peisaje late în
   care omul ocupă treimea de jos, iar restul e fundal neclar: arătate întregi, nu
   se înţelege nimic din ele. `scale` le apropie, iar `transform-origin` ţine în
   cadru zona de interes (puţin sub mijloc, unde stă de obicei subiectul).
   Se reglează per pagină, fără CSS nou:
     <section class="af-hero cond-hero" style="--zoom:1.6;--crop:74%">
   --crop 0% ţine partea de sus a pozei, 100% partea de jos; --zoom 1 = fără apropiere.
   alb-negru dus în violetul lumii; `color` păstrează luminanţa şi îi ia doar culoarea */
.cond-hero:has(.cond-media) .cond-media img{filter:grayscale(1) contrast(1.12) brightness(.95);
  scale:var(--zoom,1.28);transform-origin:50% var(--crop,62%)}
.cond-hero:has(.cond-media) .cond-media::before{mix-blend-mode:color;box-shadow:none;
  background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 95%,transparent),rgba(34,199,126,.55))}
/* voalul dinspre text, ca titlul să rămână lizibil peste orice fotografie */
.cond-hero:has(.cond-media) .cond-media::after{z-index:2;box-shadow:none;
  background:linear-gradient(96deg,rgba(8,13,50,.92) 6%,rgba(8,13,50,.5) 34%,rgba(8,13,50,.08) 52%,transparent 64%)}
@media(max-width:900px){
  .cond-hero:has(.cond-media) .hero2{grid-template-columns:1fr;min-height:0;padding:48px 0 44px}
  .cond-hero:has(.cond-media) .cond-media{left:calc(50% - 50vw);opacity:.42;
    -webkit-mask-image:none;mask-image:none}
  .cond-hero:has(.cond-media) .cond-media::after{background:linear-gradient(180deg,rgba(7,11,42,.8),rgba(8,13,50,.92))}
}
@media(prefers-reduced-motion:reduce){.cond-hero:has(.cond-media) .hero2::before{animation:none}}

/* --- Duotone şi pe hero-urile de articol (clasa `art-hero`, pusă de
   `scripts/hero-articol.mjs`) --- Acolo fotografia stă sub titlu, pe tot latul,
   ca parte din text. CSS-ul o scoate din curgere şi o duce în jumătatea dreaptă,
   ca pe paginile de afecţiune, fără să mişte nimic din markup. `!important` nu e
   de decor: imaginile astea au stilurile scrise inline în pagină, iar inline bate
   foaia de stil. */
.af-hero.art-hero>.wrap{padding-top:0;padding-bottom:0}
/* containerul de text NU primeşte `position:relative`: dacă îl primeşte, devine el
   reperul pentru poziţionarea absolută a pozei, iar poza s-ar aşeza faţă de coloana
   de 600px, nu faţă de bandă. Textul urcă deasupra straturilor pe copii, nu pe el. */
.af-hero.art-hero>.wrap>div{max-width:540px!important;min-height:clamp(400px,46vw,520px);
  padding:60px 0 56px;display:flex;flex-direction:column;justify-content:center}
.af-hero.art-hero>.wrap>div>*:not(img){position:relative;z-index:3}
.af-hero.art-hero h1{margin-bottom:0}
.af-hero.art-hero>.wrap>div>img{position:absolute;top:0;bottom:0;left:46%;
  right:calc(50% - 50vw);width:auto!important;max-width:none!important;
  height:auto!important;max-height:none!important;margin:0!important;
  border-radius:0!important;box-shadow:none!important;object-fit:cover;
  z-index:0;filter:grayscale(1) contrast(1.12) brightness(.95);
  scale:var(--zoom,1.28);transform-origin:50% var(--crop,62%);
  -webkit-mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  animation:afKen 26s ease-in-out infinite alternate}
/* tenta de culoare şi voalul dinspre text stau pe pseudoelementele lui .wrap:
   `img` e o etichetă goală, nu poate avea ::before/::after ale ei */
.af-hero.art-hero>.wrap::after{content:"";position:absolute;top:0;bottom:0;left:46%;
  right:calc(50% - 50vw);z-index:1;pointer-events:none;mix-blend-mode:color;
  background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 95%,transparent),rgba(34,199,126,.55));
  -webkit-mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%)}
/* voalul se întinde pe toată lăţimea benzii, nu doar pe cutia lui .wrap: altfel
   se vede o muchie verticală acolo unde se termină containerul centrat */
.af-hero.art-hero>.wrap::before{content:"";position:absolute;top:0;bottom:0;
  left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:2;pointer-events:none;
  /* doua straturi: punctele deasupra, voalul dedesubt. Grila lipsea la articole
     si la cele pe doua coloane, iar fara ea varianta arata ca A, nu ca F. */
  /* Fără grila de puncte aici, intenţionat. Pe paginile de afecţiune ea stă pe un
     strat propriu şi e mascată, deci apare doar în dreptul fotografiei şi se stinge
     repede. Aici ar trebui să împartă stratul cu voalul, iar masca nu se poate pune
     pe un singur strat de fundal: punctele ies pe toată banda şi e mai zgomotos
     decât fără ele. */
  background:linear-gradient(96deg,rgba(8,13,50,.92) 6%,rgba(8,13,50,.5) 34%,rgba(8,13,50,.08) 52%,transparent 64%)}
@media(max-width:900px){
  .af-hero.art-hero>.wrap>div{max-width:none!important;min-height:0;padding:44px 0 40px}
  .af-hero.art-hero>.wrap>div>img{left:calc(50% - 50vw);opacity:.42;
    -webkit-mask-image:none;mask-image:none}
  .af-hero.art-hero>.wrap::after{left:calc(50% - 50vw);-webkit-mask-image:none;mask-image:none}
  .af-hero.art-hero>.wrap::before{background:linear-gradient(180deg,rgba(7,11,42,.8),rgba(8,13,50,.92))}
}
@media(prefers-reduced-motion:reduce){.af-hero.art-hero>.wrap>div>img{animation:none}}

/* --- Duotone şi pe hero-urile pe două coloane (clasele `g2-hero` + `g2-media`,
   puse de `scripts/hero-doua-coloane.mjs`) --- Imaginea stă deja în dreapta, dar
   într-o celulă cu ramă şi colţuri rotunde; o scoatem din coloană şi umple
   jumătatea benzii, ca pe celelalte pagini cu fotografie.
   Purtătorul imaginii e marcat din script, nu prins cu `:has(> img)`: structura
   interioară diferă de la pagină la pagină, iar `:has` prindea uneori grila
   întreagă şi golea hero-ul. */
/* `align-items:flex-start` nu e de prisos: paginile care aveau `.wrap` grila cu
   `align-items:center` isi pastreaza proprietatea cand trecem containerul pe flex
   coloana, iar acolo `center` inseamna centrare pe ORIZONTALA, deci textul pleaca
   din mijlocul benzii. */
.af-hero.g2-hero>.wrap{padding-top:0;padding-bottom:0;min-height:clamp(400px,46vw,520px);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  padding-block:56px 52px}
/* randul ramane grila cu doua coloane chiar daca a doua e acum absoluta, iar
   textul s-ar strange pe jumatate de latime: il trecem pe o singura coloana */
/* Randul NU primeste `position`: daca il primeste, devine el reperul si imaginea
   se aseaza fata de coloana de 620px in loc de banda intreaga. Ridicam in schimb
   textul, care oricum are nevoie de z-index: imaginea vine dupa el in cod si
   altfel s-ar picta peste. */
.af-hero.g2-hero>.wrap>*{max-width:540px;display:block!important}
.af-hero.g2-hero>.wrap>*>*:not(.g2-media){position:relative;z-index:3}
.af-hero.g2-hero .g2-media{position:absolute!important;top:0;bottom:0;left:46%;
  right:calc(50% - 50vw);width:auto!important;max-width:none!important;min-height:0!important;
  height:auto!important;margin:0!important;padding:0!important;display:block!important;
  z-index:0;overflow:hidden;border:0!important;border-radius:0!important;box-shadow:none!important;
  background:none!important;
  -webkit-mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%)}
/* purtatorul poate fi un container cu imaginea inauntru sau chiar imaginea */
.af-hero.g2-hero .g2-media>img,.af-hero.g2-hero img.g2-media{width:100%!important;max-width:none!important;
  height:100%!important;max-height:none!important;margin:0!important;padding:0!important;
  border-radius:0!important;box-shadow:none!important;object-fit:cover;
  scale:var(--zoom,1.28);transform-origin:50% var(--crop,62%);
  filter:grayscale(1) contrast(1.12) brightness(.95);
  animation:afKen 26s ease-in-out infinite alternate}
.af-hero.g2-hero .g2-media>.cap{display:none}
.af-hero.g2-hero>.wrap::after{content:"";position:absolute;top:0;bottom:0;left:46%;
  right:calc(50% - 50vw);z-index:1;pointer-events:none;mix-blend-mode:color;
  background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 95%,transparent),rgba(34,199,126,.55));
  -webkit-mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%);
  mask-image:radial-gradient(96% 155% at 88% 50%,#000 0,#000 24%,rgba(0,0,0,.62) 50%,rgba(0,0,0,.2) 70%,transparent 86%)}
.af-hero.g2-hero>.wrap::before{content:"";position:absolute;top:0;bottom:0;
  left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:2;pointer-events:none;
  /* doua straturi: punctele deasupra, voalul dedesubt. Grila lipsea la articole
     si la cele pe doua coloane, iar fara ea varianta arata ca A, nu ca F. */
  /* Fără grila de puncte aici, intenţionat. Pe paginile de afecţiune ea stă pe un
     strat propriu şi e mascată, deci apare doar în dreptul fotografiei şi se stinge
     repede. Aici ar trebui să împartă stratul cu voalul, iar masca nu se poate pune
     pe un singur strat de fundal: punctele ies pe toată banda şi e mai zgomotos
     decât fără ele. */
  background:linear-gradient(96deg,rgba(8,13,50,.92) 6%,rgba(8,13,50,.5) 34%,rgba(8,13,50,.08) 52%,transparent 64%)}
@media(max-width:900px){
  .af-hero.g2-hero>.wrap{min-height:0;padding-block:44px 40px}
  .af-hero.g2-hero>.wrap>*{max-width:none}
  .af-hero.g2-hero .g2-media{left:calc(50% - 50vw);opacity:.42;
    -webkit-mask-image:none;mask-image:none}
  .af-hero.g2-hero>.wrap::after{left:calc(50% - 50vw);-webkit-mask-image:none;mask-image:none}
  .af-hero.g2-hero>.wrap::before{background:linear-gradient(180deg,rgba(7,11,42,.8),rgba(8,13,50,.92))}
}
@media(prefers-reduced-motion:reduce){
  .af-hero.g2-hero .g2-media>img,.af-hero.g2-hero img.g2-media{animation:none}
}

/* ===== Hero „Rețea": paginile FĂRĂ nicio imagine în hero (7 aug 2026) =====
   Perechea variantei de mai sus. Aici nu e nimic de arătat în dreapta titlului,
   deci desenăm: o reţea de noduri şi legături care se trasează singură la
   încărcare, apoi nodurile pulsează. SVG-ul e pus în pagină de
   `scripts/hero-retea.mjs` (doar unde hero-ul chiar n-are `<img>`), nu din CSS:
   animaţiile dintr-un SVG folosit ca `background-image` nu rulează în toate
   browserele, iar aşa merge şi cu JavaScript oprit. */
.af-hero>.hv-net{position:absolute;right:2%;top:50%;transform:translateY(-50%);z-index:0;
  width:min(620px,52%);height:auto;pointer-events:none;
  -webkit-mask-image:radial-gradient(70% 70% at 60% 50%,#000,transparent 82%);
  mask-image:radial-gradient(70% 70% at 60% 50%,#000,transparent 82%)}
.hv-net .hv-linii path{fill:none;stroke:color-mix(in srgb,var(--accent) 70%,#fff);stroke-width:1.4;opacity:.55;
  stroke-dasharray:300;stroke-dashoffset:300;animation:afNet 2.2s ease-out forwards}
.hv-net .hv-linii path:nth-child(2){animation-delay:.12s}
.hv-net .hv-linii path:nth-child(3){animation-delay:.24s}
.hv-net .hv-linii path:nth-child(4){animation-delay:.36s}
.hv-net .hv-linii path:nth-child(5){animation-delay:.48s}
.hv-net .hv-linii path:nth-child(6){animation-delay:.6s}
.hv-net .hv-linii path:nth-child(7){animation-delay:.72s}
.hv-net .hv-linii path:nth-child(8){animation-delay:.84s}
.hv-net .hv-linii path:nth-child(9){animation-delay:.96s}
.hv-net .hv-linii path:nth-child(10){animation-delay:1.08s}
.hv-net .hv-linii path:nth-child(11){animation-delay:1.2s}
@keyframes afNet{to{stroke-dashoffset:0}}
.hv-net .hv-noduri circle{fill:color-mix(in srgb,var(--accent) 80%,#fff);
  filter:drop-shadow(0 0 8px color-mix(in srgb,var(--accent) 85%,transparent));
  transform-origin:center;transform-box:fill-box;animation:afNod 3.4s ease-in-out infinite}
.hv-net .hv-noduri circle:nth-child(2n){animation-delay:.7s;fill:rgba(34,199,126,.9)}
.hv-net .hv-noduri circle:nth-child(3n){animation-delay:1.4s}
@keyframes afNod{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.35);opacity:1}}
@media(max-width:900px){.af-hero>.hv-net{width:92%;opacity:.3;right:-12%}}
@media(prefers-reduced-motion:reduce){
  .hv-net .hv-linii path{animation:none;stroke-dashoffset:0}
  .hv-net .hv-noduri circle{animation:none}
}

/* ===== Secţiunea de eBook (7 aug 2026) =====
   Inainte: coperta cu butonul dedesubt, textul in dreapta, iar sub tot un titlu si
   un paragraf care repetau pretul - ramasite din migrarea WordPress, unde pretul
   era un element WooCommerce separat. Aparea de trei ori. Acum un card: coperta la
   stanga, textul la dreapta, pretul o singura data, langa buton. */
.ebook-card{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:38px;
  align-items:center;background:linear-gradient(180deg,#fff,#f6f8ff);
  border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:28px 32px}
.rpage .sec .wrap .ebook-card .ebook-cover img,.ebook-card .ebook-cover img{
  width:100%!important;max-width:240px!important;height:auto!important;max-height:none!important;
  margin:0!important;border-radius:12px;box-shadow:0 18px 40px rgba(11,18,81,.22);display:block}
.ebook-txt p{margin:0 0 14px}
.ebook-txt p:last-of-type{margin-bottom:0}
.ebook-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px}
.ebook-pret{font-family:'Sora';font-weight:800;font-size:26px;color:var(--accent);line-height:1}
@media(max-width:760px){
  .ebook-card{grid-template-columns:1fr;gap:22px;padding:22px}
  .ebook-card .ebook-cover{display:flex;justify-content:center}
  .rpage .sec .wrap .ebook-card .ebook-cover img{max-width:200px!important}
}

/* rând text + imagine, alternabil */
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:center}
.split.top{align-items:start}
.split.rev>.split-media{order:-1}
.split-media{position:relative;border-radius:20px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3;max-height:340px;background:#eef1fb}
/* imaginile nu ocupă loc degeaba: mai compacte + cele singulare nu se întind full-width */
.rpage .img-row .split-media:only-child{max-width:560px;margin-left:auto;margin-right:auto}
/* O listă lungă (checkbox-card cu ≥7 puncte) NU stă lângă imagine - imaginea urcă
   sus ca banner landscape, iar lista se întinde pe toată lățimea. */
.rpage .split:has(.checks li:nth-child(7)){display:block}
.rpage .split:has(.checks li:nth-child(7))>.split-media{aspect-ratio:16/6;max-height:260px;max-width:100%;margin:0 0 22px}
/* strip de statistici (cifre mari), fără imagini */
.rpage .stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:28px auto 0;max-width:1040px}
.rpage .stat-strip .stat{background:#fff;border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:16px;padding:24px 22px;box-shadow:var(--shadow);text-align:center}
.rpage .stat-strip .num{display:block;font-family:'Sora',sans-serif;font-weight:800;font-size:32px;color:var(--accent);line-height:1}
.rpage .stat-strip .lbl{display:block;margin-top:8px;color:var(--muted);font-size:14px;line-height:1.4}
.rpage .split,.rpage .steps,.rpage .type-grid,.rpage .img-row{margin:26px 0}
.rpage .sec .wrap .split-media.split-media img{position:absolute;inset:0;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;object-fit:cover;border-radius:0;box-shadow:none}
.split p{margin-bottom:12px}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:24px}.split.rev>.split-media{order:0}}

/* citate „ce auzi de la ceilalți" */
.quote-card{background:linear-gradient(155deg,#171334,#3D2A8C);color:#fff;border-radius:22px;padding:30px 32px;box-shadow:var(--shadow)}
.quote-card h3{color:#fff;font-size:17px;margin-bottom:18px}
.quote-card ul{list-style:none;display:grid;gap:14px;margin:0}
.quote-card li{position:relative;padding-left:30px;color:#dfe2f5;font-size:15px;line-height:1.55;font-style:italic}
.quote-card li::before{content:"“";position:absolute;left:0;top:-6px;font-size:30px;color:var(--accent);font-family:'Sora';line-height:1}
.quote-card li::after{content:"”";font-family:'Sora';font-size:30px;color:var(--accent);line-height:0;margin-left:6px;vertical-align:-14px}

/* casetă cu bife (contur portocaliu) */
/* Oferta de pe paginile de protocol: pretul si butonul „Programeaza online".
   Lipsea de tot (cerinta 5 din feedbackul clientei, 3 aug). Pe originalul lor sta
   sub lista de beneficii, in acelasi card, si deschide fluxul de programare.
   Butonul duce la /programeaza-brainmap/, care merge si daca MedSoft nu raspunde:
   degradeaza la formular de cerere, deci nu promitem o plata care nu functioneaza. */
.proto-oferta{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.proto-oferta .po-vechi{color:var(--muted);font-size:15px;margin:0 0 4px}
.proto-oferta .po-vechi s{opacity:.75}
.proto-oferta .po-azi{font-family:'Sora';font-weight:800;color:var(--indigo);font-size:19px;margin:0 0 18px}
.proto-oferta .po-azi b{color:var(--accent);font-size:27px;margin-left:4px}
.proto-oferta .btn{width:100%;text-align:center}
@media(min-width:520px){.proto-oferta .btn{width:auto}}

.checkbox-card{background:#fff;border:1.5px solid var(--accent);border-radius:20px;padding:26px 30px;box-shadow:0 16px 40px rgba(111,66,243,.10);margin:26px 0}
.checkbox-card h3{color:var(--indigo);font-size:18px;margin-bottom:16px}
.checks{list-style:none;display:grid;gap:14px;margin:0;padding:0}
.checks li{position:relative;padding-left:34px;color:var(--muted);font-size:15px;line-height:1.6}
.checks li b,.checks li strong{color:var(--indigo)}
.checks li::before{content:"✓";position:absolute;left:0;top:-1px;color:var(--accent);font-size:18px;font-weight:800}

/* tipuri de afecțiune - carduri */
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.type-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px 26px;box-shadow:var(--shadow);border-top:4px solid var(--accent)}
.type-card h3{font-size:17px;color:var(--indigo);margin-bottom:12px}
.type-card p,.type-card li{color:var(--muted);font-size:14.5px;line-height:1.6}
.type-card ul{list-style:none;display:grid;gap:8px;margin:0;padding:0}
.type-card ul li{position:relative;padding-left:18px}
.type-card ul li::before{content:"•";position:absolute;left:0;color:var(--accent);font-weight:800}
@media(max-width:900px){.type-grid{grid-template-columns:1fr}}

/* pași numerotați */
.steps{display:grid;gap:16px;max-width:900px}
.stepc{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 26px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}
.stepc .n{width:46px;height:46px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-family:'Sora';font-weight:800;font-size:18px}
.stepc p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}
.stepc p b{color:var(--indigo)}

/* Rând „poză + text scurt", varianta fără gol.
   Când textul de lângă poză are 2-3 rânduri, jumătatea lui de secțiune rămânea
   goală. Aici poza stă lângă blocul care are conținut REAL (pașii numerotați),
   iar propoziția de intro trece deasupra, pe toată lățimea. Poza se întinde pe
   toată înălțimea coloanei (object-fit:cover), deci cele două coloane se termină
   la aceeași linie - fără spațiu mort. */
.media-flow{display:grid;grid-template-columns:1fr minmax(280px,430px);gap:34px;align-items:stretch;margin:26px 0}
.media-flow .mf-intro{margin:0 0 18px;max-width:900px}
.media-flow .steps{max-width:none;margin:0}
.media-flow .mf-img{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 18px 42px rgba(11,18,81,.18);min-height:280px}
.rpage .sec .wrap .media-flow .mf-img img{width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;display:block;object-fit:cover;border-radius:18px}
@media(max-width:900px){
  .media-flow{grid-template-columns:1fr;gap:22px}
  .media-flow .mf-img{min-height:0;max-height:300px}
}

/* bandă gradient (ofertă / CTA) */
.band{background:var(--grad-btn);color:#fff;border-radius:24px;padding:38px 40px;box-shadow:0 26px 60px rgba(111,66,243,.22)}
.band h2{color:#fff;font-size:clamp(22px,2.6vw,30px);margin-bottom:14px}
.band p{color:#ffe9e2;margin-bottom:20px}
.band .checks li{color:#fff5f1}
.band .checks li::before{color:#fff}
.band .btn-white{background:#fff;color:var(--indigo)}

/* Lista de lucrari publicate (paginile de profil + /echipa/). Fiecare titlu e un
   link catre studiul real: un studiu pe care nu-l poti deschide nu convinge nici
   cititorul, nici Google. Inainte erau bifate ca o lista de bullet-uri, fara adresa. */
.pub-list{display:grid;gap:14px;max-width:920px}
.pub{background:#fff;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:14px;padding:18px 22px}
.pub a{color:var(--indigo);font-weight:600;font-size:15.5px;line-height:1.5;text-decoration:none}
.pub a:hover{text-decoration:underline}
.pub .meta{font-size:12.5px;color:var(--muted);margin-top:7px}

/* Cardurile fondatoarelor de pe /echipa/ */
.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
@media(max-width:860px){.founder-grid{grid-template-columns:1fr}}
.fcard{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.fcard .imgwrap{aspect-ratio:4/3;background:#f0f2f8;overflow:hidden}
.fcard .imgwrap img{width:100%;height:100%;object-fit:cover;display:block}
.fcard .body{padding:26px 28px 28px;display:flex;flex-direction:column;flex:1}
.fcard .cap{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--accent);text-transform:uppercase;margin-bottom:9px}
.fcard h3{font-size:22px;color:var(--indigo);margin-bottom:6px}
.fcard .rol{font-size:14.5px;color:var(--muted);margin-bottom:16px;line-height:1.55}
.fcard .btn{margin-top:auto;align-self:flex-start}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}
.chips span{font-size:12px;font-weight:600;color:var(--indigo);background:#f2f4fb;border:1px solid var(--line);border-radius:999px;padding:5px 11px}

/* card „antrenamente cerebrale" */
.nfb-card{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;background:linear-gradient(155deg,#0B1251,#161D88);color:#fff;border-radius:24px;padding:36px 38px;box-shadow:var(--shadow)}
.nfb-card h2{color:#fff;font-size:clamp(22px,2.4vw,28px);margin-bottom:12px}
.nfb-card p{color:#dfe2f5;font-size:15px;line-height:1.6;margin-bottom:18px}
.nfb-card .checks li{color:#e9ecff}
.nfb-card .checks li b{color:#fff}
.nfb-card .checks li::before{color:#ff9273}
.rpage .sec .wrap .nfb-card.nfb-card img{width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;border-radius:16px;box-shadow:none}
@media(max-width:900px){.nfb-card{grid-template-columns:1fr;gap:24px;padding:28px 24px}}

.studiu-link{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 22px;box-shadow:var(--shadow);color:var(--indigo);font-size:14.5px;line-height:1.5}
.studiu-link .ico{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--grad-btn);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}
.studiu-link b{display:block;margin-bottom:4px}
.studiu-link span{color:var(--muted);word-break:break-all;font-size:13px}

/* titlurile de secțiune aliniate cu conținutul (nu centrate ca bloc) */
.rpage .sec-head[style*="left"]{max-width:none;margin-left:0;margin-right:0;margin-bottom:32px}
.rpage .sec-head[style*="left"] h2{font-size:clamp(26px,3.2vw,38px)}
.rpage .sec-head[style*="left"] p{max-width:70ch}

.rpage .txtcol{max-width:900px}
.rpage .txtcol p{margin-bottom:14px}
/* txtwall = fallback lizibil (coloană) până la restructurarea pe secțiuni cu sens */
.rpage .txtwall{max-width:840px}
.rpage .txtwall>p{margin:0 0 14px;color:var(--muted);line-height:1.75}
.rpage .split:has(.txtwall){align-items:start}
.rpage h3.subhead{font-family:'Sora';font-weight:800;font-size:20px;color:var(--indigo);margin:34px 0 14px;padding-left:14px;border-left:4px solid var(--accent)}
.rpage p.hl{background:#F3EFFF;border-left:4px solid var(--accent);border-radius:0 12px 12px 0;padding:14px 18px;color:var(--indigo);font-weight:600;max-width:900px}
/* Chenare cu gradient (culori vechi) pentru texte lungi din paginile de condiție */
.rpage .benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin:26px 0 4px;max-width:1120px}
.rpage .benefit-card{position:relative;background:linear-gradient(158deg,#F6F3FF 0%,#fff 52%);border:1px solid var(--line);border-radius:18px;padding:26px 28px 24px 30px;box-shadow:var(--shadow);overflow:hidden}
.rpage .benefit-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#6F42F3,#FF5D73)}
.rpage .benefit-card h4{font-family:'Sora';font-weight:800;font-size:16.5px;line-height:1.3;color:var(--indigo);margin:0 0 12px}
.rpage .benefit-card p{color:var(--muted);font-size:14.5px;line-height:1.66;margin:0 0 10px}
.rpage .benefit-card p:last-child{margin-bottom:0}
.rpage .benefit-card a{color:var(--accent);font-weight:600}
/* Chenar plin cu gradient (accent puternic) */
.rpage .gradbox{background:linear-gradient(150deg,#171334 0%,#3D2A8C 58%,#6F42F3 100%);color:#fff;border-radius:22px;padding:30px 34px;box-shadow:0 24px 55px rgba(11,18,81,.28);max-width:1000px;margin:26px 0}
.rpage .gradbox h3,.rpage .gradbox h4{color:#fff;font-family:'Sora';font-weight:800;margin:0 0 12px}
.rpage .gradbox p{color:#dfe2f5;font-size:15px;line-height:1.7;margin:0 0 12px}
.rpage .gradbox p:last-child{margin-bottom:0}
.rpage .gradbox p strong,.rpage .gradbox p b,.rpage .gradbox a{color:#fff}
.img-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin:26px 0 0}
.studii-list{display:grid;gap:12px}

/* Linkurile din conținut: hover mov (cerut 31 iul) */
.rpage .sec a:not(.btn):hover{color:#6F42F3 !important}
footer a:hover{color:#8B68F6}


/* ══ Hero cu poză (.hero-x) ══════════════════════════════════════════════════
   Se pune peste .af-hero, pe paginile de articol: textul la stânga, poza la
   dreapta, pe fundalul violet al mărcii. Paginile care NU au clasa .hero-x
   rămân exact cum erau. Paralaxa după mouse stă în js/nav.js.
   Tot ce se mișcă se oprește la prefers-reduced-motion (jos de tot). */
se mută în redesign/css/brand.css (cu bump la ?v=) și
     structura se aplică pe restul paginilor cu un script. -->
<style>
/* ── Fundal: gradientul site-ului (violet electric peste indigo), nu poza plată ── */
.hero-x{position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(155deg,#120E30 0%,#1B1550 38%,#2A1A70 72%,#3A2288 100%)}
.hero-x::before,.hero-x::after{content:none}          /* stingem straturile vechi */
/* Plasă de siguranță: dacă o pagină rămâne și cu `art-hero`, regulile ei (coloană
   de 540px, poza scoasă din curgere) ar rupe grila de mai jos. Le anulăm aici. */
.hero-x.art-hero>.wrap>div{max-width:none!important;min-height:0;padding:0;display:block}
.hero-x.art-hero>.wrap::before,.hero-x.art-hero>.wrap::after{content:none}

/* poza de neuroni rămâne, dar doar ca textură discretă în dreapta */
.hero-x .hx-net{position:absolute;inset:-8%;z-index:0;pointer-events:none;opacity:.3;
  mix-blend-mode:screen;
  background:url(/_assets/wp-content/uploads/2025/07/medium-vecteezy_neural-connection-abstract-design_24496895_medium.jpg) center/cover no-repeat;
  -webkit-mask-image:linear-gradient(100deg,transparent 18%,rgba(0,0,0,.5) 46%,#000 78%);
  mask-image:linear-gradient(100deg,transparent 18%,rgba(0,0,0,.5) 46%,#000 78%);
  animation:hxDrift 38s ease-in-out infinite alternate}
@keyframes hxDrift{from{transform:scale(1.03) translate3d(-1.4%,-1%,0)}to{transform:scale(1.12) translate3d(1.6%,1.4%,0)}}

/* aurora: trei pete de lumină care se plimbă independent, în culorile mărcii */
.hero-x .hx-glow{position:absolute;z-index:0;border-radius:50%;pointer-events:none;filter:blur(10px)}
.hero-x .hx-g1{width:56vw;height:56vw;max-width:760px;max-height:760px;left:-14vw;top:-24vw;
  background:radial-gradient(circle,rgba(139,104,246,.55),transparent 66%);animation:hxFloat1 24s ease-in-out infinite alternate}
.hero-x .hx-g2{width:44vw;height:44vw;max-width:620px;max-height:620px;right:-8vw;bottom:-22vw;
  background:radial-gradient(circle,rgba(255,93,115,.32),transparent 68%);animation:hxFloat2 30s ease-in-out infinite alternate}
.hero-x .hx-g3{width:34vw;height:34vw;max-width:460px;max-height:460px;left:40%;bottom:-18vw;
  background:radial-gradient(circle,rgba(34,199,126,.26),transparent 68%);animation:hxFloat3 34s ease-in-out infinite alternate}
@keyframes hxFloat1{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(7%,5%,0) scale(1.14)}}
@keyframes hxFloat2{from{transform:translate3d(0,0,0) scale(1.08)}to{transform:translate3d(-8%,-6%,0) scale(1)}}
@keyframes hxFloat3{from{transform:translate3d(-5%,0,0) scale(.94)}to{transform:translate3d(6%,-4%,0) scale(1.12)}}

/* grilă fină de puncte, stinsă spre margini - dă adâncime fără să facă zgomot */
.hero-x .hx-dots{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(72% 68% at 30% 44%,#000,transparent 76%);
  mask-image:radial-gradient(72% 68% at 30% 44%,#000,transparent 76%)}

/* traseul EEG care se desenează o dată, jos de tot */
.hero-x .hx-eeg{position:absolute;left:0;right:0;bottom:-6px;z-index:0;height:150px;width:100%;pointer-events:none;opacity:.42;
  /* stins în stânga, ca să nu taie printre butoane */
  -webkit-mask-image:linear-gradient(90deg,transparent 6%,rgba(0,0,0,.35) 26%,#000 52%);
  mask-image:linear-gradient(90deg,transparent 6%,rgba(0,0,0,.35) 26%,#000 52%)}
.hero-x .hx-eeg path{stroke-dasharray:2400;stroke-dashoffset:2400;animation:hxDraw 4.5s cubic-bezier(.5,0,.2,1) .5s forwards}
@keyframes hxDraw{to{stroke-dashoffset:0}}

/* ── Conținut: text la stânga, poza la dreapta ── */
.hero-x>.wrap{position:relative;z-index:2;padding-top:0;padding-bottom:0}
.hero-x .hx-in{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center;
  padding:64px 0 76px;min-height:520px}
.hero-x .crumb{font-size:12.5px;color:#a6abd6;margin-bottom:16px;letter-spacing:.01em}
.hero-x .crumb a{color:#cfd3ee}
.hero-x .crumb a:hover{color:#fff}

.hero-x .hx-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.hero-x .hx-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 15px;border-radius:100px;
  font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#E4E1FF;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(6px)}
.hero-x .hx-chip i{width:7px;height:7px;border-radius:50%;background:#8B68F6;box-shadow:0 0 0 0 rgba(139,104,246,.75);
  animation:hxPulse 2.4s ease-out infinite}
@keyframes hxPulse{0%{box-shadow:0 0 0 0 rgba(139,104,246,.7)}70%{box-shadow:0 0 0 10px rgba(139,104,246,0)}100%{box-shadow:0 0 0 0 rgba(139,104,246,0)}}

.hero-x h1{color:#fff;font-size:clamp(30px,3.5vw,46px);font-weight:700;line-height:1.12;
  letter-spacing:-.026em;margin:0 0 20px;text-wrap:balance;max-width:21ch}
/* cuvântul-cheie primește gradientul mărcii + o sclipire care trece o dată prin el */
.hero-x h1 .hx-hl{position:relative;background:linear-gradient(103deg,#B49BFF 0%,#8B68F6 34%,#FF8A9B 78%,#FF5D73 100%);
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:hxShine 7s ease-in-out 1.2s infinite}
@keyframes hxShine{0%,70%,100%{background-position:0% 50%}35%{background-position:100% 50%}}

.hero-x .hx-lead{font-size:clamp(15.5px,1.42vw,18px);line-height:1.66;color:#cfd4f0;max-width:52ch;margin:0}
.hero-x .hx-rule{width:64px;height:3px;border-radius:3px;margin:0 0 22px;
  background:linear-gradient(90deg,#8B68F6,#FF5D73);transform-origin:left;animation:hxRule .9s cubic-bezier(.2,.9,.25,1) .45s both}
@keyframes hxRule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-x .cta-row{margin-top:30px;gap:12px}
.hero-x .btn{margin-top:0}
.hero-x .btn-grad{box-shadow:0 14px 34px rgba(111,66,243,.42)}
.hero-x .btn-grad:hover{box-shadow:0 18px 44px rgba(111,66,243,.55)}

/* ── Poza: ramă flotantă, halou în culoarea mărcii, inel punctat care se rotește ── */
.hero-x .hx-media{position:relative;display:flex;justify-content:center;align-items:center}
.hero-x .hx-halo{position:absolute;width:112%;height:112%;border-radius:50%;z-index:0;pointer-events:none;
  background:radial-gradient(circle,rgba(139,104,246,.42),transparent 62%);
  animation:hxBreath 9s ease-in-out infinite}
@keyframes hxBreath{0%,100%{opacity:.6;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}
.hero-x .hx-ring{position:absolute;z-index:0;width:min(112%,560px);aspect-ratio:1;border-radius:50%;
  border:1px dashed rgba(255,255,255,.2);animation:hxSpin 46s linear infinite}
.hero-x .hx-ring.r2{width:min(96%,480px);border-style:dotted;border-color:rgba(255,138,155,.24);
  animation:hxSpin 34s linear infinite reverse}
@keyframes hxSpin{to{transform:rotate(360deg)}}
.hero-x .hx-frame{position:relative;z-index:1;width:100%;border-radius:26px;overflow:hidden;
  border:1px solid rgba(255,255,255,.22);box-shadow:0 34px 80px rgba(6,8,40,.62),0 0 0 8px rgba(255,255,255,.045);
  animation:hxFloat 11s ease-in-out infinite}
@keyframes hxFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.hero-x .hx-frame img{width:100%!important;max-width:none!important;max-height:none!important;
  height:clamp(300px,32vw,420px)!important;object-fit:cover;margin:0!important;border-radius:0!important;
  box-shadow:none!important;display:block;animation:hxKen 30s ease-in-out infinite alternate}
@keyframes hxKen{from{transform:scale(1.02)}to{transform:scale(1.13)}}
/* voal cald peste poză, ca să se lege de fundal în loc să stea lipită deasupra */
.hero-x .hx-frame::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(18,14,48,0) 42%,rgba(18,14,48,.55) 100%),
             linear-gradient(120deg,rgba(111,66,243,.24),transparent 58%)}
/* cartonaș de sticlă peste colțul de jos */
.hero-x .hx-tag{position:absolute;z-index:2;left:-14px;bottom:24px;display:flex;align-items:center;gap:10px;
  padding:12px 18px;border-radius:16px;color:#fff;font-size:13.5px;font-weight:600;font-family:'Sora',sans-serif;
  background:rgba(20,15,52,.62);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);
  box-shadow:0 18px 40px rgba(6,8,40,.5)}
.hero-x .hx-tag span{width:9px;height:9px;border-radius:50%;background:#22C77E;animation:hxPulseG 2.6s ease-out infinite}
@keyframes hxPulseG{0%{box-shadow:0 0 0 0 rgba(34,199,126,.7)}70%{box-shadow:0 0 0 12px rgba(34,199,126,0)}100%{box-shadow:0 0 0 0 rgba(34,199,126,0)}}

/* trecerea spre secțiunea următoare, fără muchie dreaptă */
.hero-x .hx-fade{position:absolute;left:0;right:0;bottom:-1px;height:120px;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.06) 55%,rgba(255,255,255,.14))}

/* ── Intrarea pe etaje ── */
@keyframes hxUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-x .crumb,.hero-x .hx-chips,.hero-x h1,.hero-x .hx-lead,.hero-x .cta-row{
  animation:hxUp .85s cubic-bezier(.22,.9,.28,1) both}
.hero-x .hx-chips{animation-delay:.08s}
.hero-x h1{animation-delay:.16s}
.hero-x .hx-lead{animation-delay:.26s}
.hero-x .cta-row{animation-delay:.36s}
@keyframes hxMediaIn{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}
.hero-x .hx-media{animation:hxMediaIn 1.05s cubic-bezier(.22,.9,.28,1) .3s both}

/* mișcarea fină după mouse (o pune js/nav.js) */
.hero-x .hx-media,.hero-x .hx-net{transition:translate .5s cubic-bezier(.2,.8,.3,1)}

/* ── Telefon / tabletă ── */
@media(max-width:980px){
  .hero-x .hx-in{grid-template-columns:1fr;gap:34px;padding:44px 0 56px;min-height:0}
  .hero-x h1{max-width:22ch}
  .hero-x .hx-media{order:2;max-width:560px;margin:0 auto;width:100%}
  .hero-x .hx-net{-webkit-mask-image:linear-gradient(180deg,transparent 10%,#000 70%);mask-image:linear-gradient(180deg,transparent 10%,#000 70%)}
}
@media(max-width:560px){
  .hero-x .hx-tag{left:10px;bottom:14px;font-size:12.5px;padding:10px 14px}
  .hero-x .hx-frame img{height:230px!important}
  .hero-x .cta-row .btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .hero-x *,.hero-x *::before,.hero-x *::after{animation:none!important;transition:none!important}
  .hero-x .hx-eeg path{stroke-dashoffset:0}
  .hero-x h1 .hx-hl{background-position:0 50%}
}

/* ── Banda de categorii de pe /articole/ ──────────────────────────────────
   Cele 14 arhive de categorie erau in sitemap, dar nicio pagina nu le linkuia:
   auditul din 9 august le raporta ca „orfane" in toate cele trei limbi. Nu sunt
   pagini de umplutura - fiecare aduna zeci de articole, deci locul lor firesc e
   sus pe blog. Banda e compacta (nu 84px de padding ca sectiunile de continut):
   e un rand de navigare, nu o sectiune in sine. */
.sec-cat{padding:34px 0 6px}
.sec-cat .cat-titlu{font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b74a8;margin-bottom:14px}
.sec-cat .chip{transition:background .15s ease,color .15s ease}
.sec-cat .chip:hover{background:var(--indigo);color:#fff}
