/*
Theme Name: CISD 2026
Description: Tema proprie CISD. Antet, meniu și footer fixe; toate stilurile paginilor sunt aici, paginile conțin doar HTML. Fără JavaScript.
Version: 2.4.0
Author: CISD
Text Domain: cisd-2026
*/

/* ===== Tokens =====
   Viridis: paleta-standard a graficelor științifice; câte o culoare pentru fiecare facultate. */
:root{
 --ink:#1d2125;--muted:#5b636b;--rule:#dfe2e6;--soft:#f3f4f6;--paper:#fff;
 --link:#3b528b;
 --soc:#440154;--eco:#3b528b;--geo:#21918c;--pol:#5ec962;--eur:#fde725;--mat:#9aa1a8;
 --viridis:linear-gradient(90deg,#440154 0%,#3b528b 25%,#21918c 50%,#5ec962 75%,#fde725 100%);
 --sans:'Schibsted Grotesk',system-ui,sans-serif;
 --serif:'Source Serif 4',Georgia,serif;
}
*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.7;overflow-x:hidden;font-variant-numeric:oldstyle-nums}
h1,h2,h3,h4{font-family:var(--sans);color:var(--ink);font-weight:600;letter-spacing:-.015em;margin:0}
a{color:var(--link);text-underline-offset:3px}
a:focus-visible,summary:focus-visible{outline:2px solid var(--link);outline-offset:3px}
img{max-width:100%;height:auto}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}

/* ===== Antet ===== */
.site-nav{background:var(--paper);border-bottom:1px solid var(--rule);position:relative;z-index:50}
.site-nav:before{content:"";display:block;height:4px;background:var(--viridis)}
.site-nav .wrap{display:flex;align-items:center;justify-content:space-between;height:80px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:44px;height:44px;display:block}
.brand span{font-family:var(--sans);font-weight:700;font-size:21px;color:var(--ink);letter-spacing:.01em}
.menu{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.menu li{position:relative;margin:0}
.menu a{display:block;font-family:var(--sans);font-weight:500;font-size:16px;color:var(--ink);text-decoration:none;padding:8px 12px}
.menu>li>a{border-bottom:2px solid transparent}
.menu>li>a:hover{color:var(--link)}
.menu>li.on>a{border-bottom-color:var(--link)}
.menu ul{display:none;position:absolute;top:100%;left:0;min-width:200px;list-style:none;margin:0;padding:6px 0;background:var(--paper);border:1px solid var(--rule);box-shadow:0 18px 40px -18px rgba(29,33,37,.35)}
.menu li:hover>ul,.menu li:focus-within>ul{display:block}
.menu ul a{padding:9px 18px;font-size:15px}
.menu ul a:hover{background:var(--soft);color:var(--link)}
.burger{display:none}
@media(max-width:960px){
 .site-nav .wrap{height:68px}
 .menu-desk{display:none}
 .burger{display:block}
 .burger summary{list-style:none;cursor:pointer;font-family:var(--sans);font-weight:600;font-size:15px;padding:8px 14px;border:1px solid var(--rule);border-radius:4px}
 .burger summary::-webkit-details-marker{display:none}
 .burger[open] .menu{display:block;position:absolute;left:0;right:0;top:72px;background:var(--paper);padding:8px 24px 18px;border-bottom:1px solid var(--rule)}
 .burger .menu ul{display:block;position:static;border:0;box-shadow:none;padding:0 0 0 14px}
}

/* ===== Conținutul paginii ===== */
.site-main{min-height:50vh}
.entry>p,.entry>h1,.entry>h2,.entry>h3,.entry>ul,.entry>ol,.entry>blockquote{max-width:760px;margin-left:auto;margin-right:auto;padding:0 24px}

/* Titlul paginilor interioare */
.ph{padding:72px 0 0}
.ph h1{font-size:clamp(38px,5.2vw,64px);line-height:1.05;font-weight:600;max-width:900px}
.ph .sub{margin:14px 0 0;font-family:var(--sans);font-size:clamp(20px,2.4vw,26px);color:var(--muted);font-weight:400}
.ph .lede{max-width:720px;margin:22px 0 0;color:var(--muted)}
.ph:after{content:"";display:block;max-width:1152px;margin:48px auto 0;height:1px;background:var(--rule)}
.ph .wrap+.wrap{margin-top:0}
.pback{display:inline-block;margin-bottom:18px;font-family:var(--sans);font-size:15px;text-decoration:none}

/* Secțiuni */
.sec{padding:80px 0}
.sec+.sec{padding-top:0}
.sec.tint{background:var(--soft);padding-top:80px}
.sec.tint+.sec{padding-top:80px}
.split{display:grid;grid-template-columns:4fr 8fr;gap:56px}
.split>h2{font-size:clamp(26px,3vw,34px);line-height:1.15}
.prose p{margin:0 0 1.1em;max-width:68ch}

/* Butoane */
.btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:16px;text-decoration:none;color:#fff;background:var(--ink);padding:13px 24px;border-radius:4px;border:1px solid var(--ink)}
.btn:hover{background:var(--link);border-color:var(--link)}
.btn.line{background:transparent;color:var(--ink)}
.btn.line:hover{background:var(--ink);color:#fff}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* ===== Home ===== */
.hero{padding:96px 0 0}
.hero h1{font-size:clamp(42px,6.6vw,88px);line-height:1;font-weight:600;letter-spacing:-.03em;max-width:15ch}
.hero .intro{max-width:62ch;margin:32px 0 36px;font-size:19px;color:var(--muted)}
.legend{display:grid;grid-template-columns:repeat(5,1fr);margin-top:80px;list-style:none;padding:0}
.legend li{margin:0;padding:18px 18px 0 0;font-family:var(--sans);font-size:15px;line-height:1.35;color:var(--ink);border-top:14px solid}
.legend li:nth-child(1){border-color:var(--soc)}
.legend li:nth-child(2){border-color:var(--geo)}
.legend li:nth-child(3){border-color:var(--eco)}
.legend li:nth-child(4){border-color:var(--pol)}
.legend li:nth-child(5){border-color:var(--eur)}
.areas{list-style:none;margin:8px 0 28px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.areas li{margin:0;padding:14px 0;border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:17px}
.areas li span{display:inline-block;width:34px;color:var(--muted)}
.objectives{list-style:none;margin:0;padding:0;columns:2;column-gap:56px}
.objectives li{break-inside:avoid;margin:0 0 26px;font-size:17px;line-height:1.6;color:var(--muted)}
.objectives li b{font-family:var(--sans);font-weight:600;color:var(--ink)}

/* ===== Team ===== */
.fac{padding:64px 0 16px}
.fac h2{display:flex;align-items:center;gap:14px;font-size:22px;margin-bottom:36px}
.fac h2:before{content:"";width:16px;height:16px;border-radius:2px;background:var(--c,var(--mat));flex:none}
.fac.soc{--c:var(--soc)}.fac.eco{--c:var(--eco)}.fac.geo{--c:var(--geo)}.fac.mat{--c:var(--mat)}
.people{display:grid;grid-template-columns:repeat(5,1fr);gap:36px 24px}
.person .photo{aspect-ratio:4/5;background:var(--soft);border-radius:4px;overflow:hidden;margin:0 0 16px;border-bottom:4px solid var(--c,var(--mat))}
.person .photo img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1);transition:filter .3s}
.person:hover .photo img{filter:none}
.person h3{font-size:17px;line-height:1.3;font-weight:600}
.person p{margin:4px 0 0;font-family:var(--sans);font-size:15px;color:var(--muted)}
.person.lead p{color:var(--ink);font-weight:500}

/* ===== Events ===== */
.session{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.session .about h2{font-size:clamp(28px,3vw,36px);margin-bottom:22px}
.session .about p{margin:0 0 14px;color:var(--muted)}
.facts{margin:28px 0 0;display:grid;grid-template-columns:auto 1fr;gap:10px 20px;font-family:var(--sans);font-size:16px}
.facts dt{color:var(--muted)}
.facts dd{margin:0;font-weight:500}
.agenda{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.agenda>li{display:grid;grid-template-columns:120px 1fr;gap:24px;margin:0;padding:22px 0;border-bottom:1px solid var(--rule)}
.agenda time{font-family:var(--sans);font-weight:600;font-size:16px;font-variant-numeric:tabular-nums lining-nums}
.agenda .talk+.talk{margin-top:18px}
.agenda .talk p{margin:0;font-size:16px;line-height:1.5}
.agenda .talk strong{display:block;margin-top:4px;font-family:var(--sans);font-weight:600;font-size:16px}
.agenda .talk.first strong{margin:0 0 4px}
.agenda li.pause{padding:12px 0}
.agenda li.pause em{color:var(--muted);font-size:16px}

/* ===== Opportunities ===== */
.call{border:1px solid var(--rule);border-radius:6px;background:var(--paper)}
.call-head{padding:32px 36px}
.call-head h2{font-size:clamp(24px,2.8vw,32px)}
.call-head .date{margin:6px 0 0;font-family:var(--sans);font-size:15px;color:var(--muted)}
.langs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule)}
.lang{padding:32px 36px;font-size:16px;line-height:1.65}
.lang+.lang{border-left:1px solid var(--rule)}
.lang .code{display:inline-block;font-family:var(--sans);font-weight:700;font-size:14px;margin-bottom:12px;color:var(--muted)}
.lang p{margin:0 0 14px}
.lang h3{font-size:16px;margin:24px 0 8px}
.lang ul{margin:0 0 8px;padding-left:20px}
.lang li{margin:0 0 6px}
.lang .note{color:var(--muted)}
.call-docs{display:flex;flex-wrap:wrap;gap:12px;padding:24px 36px;border-top:1px solid var(--rule);background:var(--soft);border-radius:0 0 6px 6px}
.result{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:24px 36px;border-top:1px solid var(--rule)}
.result p{margin:0;font-family:var(--sans)}
.result p span{display:block;font-size:15px;color:var(--muted)}
details.call>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px}
details.call>summary::-webkit-details-marker{display:none}
details.call>summary:after{content:"+";flex:none;font-family:var(--sans);font-size:28px;line-height:1;color:var(--muted)}
details[open].call>summary:after{content:"\2212"}
.past-title{font-size:clamp(26px,3vw,34px);margin-bottom:28px}

/* ===== Research (arhive și articole) ===== */
.rtabs{display:flex;gap:4px;flex-wrap:wrap;margin:40px 0 8px;border-bottom:1px solid var(--rule)}
.rtabs a{font-family:var(--sans);font-weight:500;font-size:17px;color:var(--muted);text-decoration:none;padding:12px 16px;margin-bottom:-1px;border-bottom:2px solid transparent}
.rtabs a:hover{color:var(--ink)}
.rtabs a.on{color:var(--ink);border-bottom-color:var(--ink)}
.rlist{list-style:none;margin:0;padding:0}
.rlist li{display:grid;grid-template-columns:1fr auto;gap:12px 40px;align-items:start;margin:0;padding:32px 0;border-bottom:1px solid var(--rule)}
.rlist h2{font-size:21px;line-height:1.35;max-width:60ch}
.rlist h2 a{color:var(--ink);text-decoration:none}
.rlist h2 a:hover{color:var(--link)}
.rlist p{grid-column:1;margin:0;font-size:16px;line-height:1.6;color:var(--muted);max-width:75ch}
.rlist .btn{grid-column:2;grid-row:1/span 2;align-self:center;white-space:nowrap}
.single-entry{padding:56px 0 96px}
.rpage{padding-bottom:96px}

/* ===== Footer ===== */
.site-foot{background:#000;color:#b9bec4;padding:64px 0 56px;font-family:var(--sans);font-size:15px;margin-top:0}
.site-foot .grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;gap:32px}
.site-foot h4{font-size:14px;font-weight:500;color:#80868d;margin:16px 0 4px;letter-spacing:0}
.site-foot h4:first-child{margin-top:0}
.site-foot p{margin:0 0 4px;color:#fff}
.site-foot a{color:#fff;text-decoration:none}
.site-foot a:hover{text-decoration:underline}
.site-foot .fbrand{text-align:right}
.site-foot .fbrand img{width:56px;height:56px;filter:invert(1);margin-bottom:12px}

/* ===== Mobil ===== */
@media(max-width:960px){
 .split,.session{grid-template-columns:1fr;gap:28px}
 .people{grid-template-columns:repeat(3,1fr)}
 .legend{grid-template-columns:1fr 1fr}
 .legend li{padding-bottom:18px}
 .objectives{columns:1}
 .langs{grid-template-columns:1fr}
 .lang+.lang{border-left:0;border-top:1px solid var(--rule)}
 .site-foot .grid{grid-template-columns:1fr 1fr}
 .site-foot .fbrand{text-align:left}
}
@media(max-width:600px){
 body{font-size:17px}
 .people{grid-template-columns:1fr 1fr;gap:28px 16px}
 .areas{grid-template-columns:1fr}
 .agenda>li{grid-template-columns:1fr;gap:6px}
 .call-head,.lang,.call-docs,.result{padding-left:20px;padding-right:20px}
 .rlist li{grid-template-columns:1fr}
 .rlist .btn{grid-column:1;grid-row:auto;justify-self:start}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.ph.tabbed:after{display:none}

/* ===== Rafinări 1.2.1 ===== */
body{color:#262b31;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
::selection{background:#cfe9e6;color:var(--ink)}
.prose a,.lang a{text-decoration-thickness:1px}

/* Antet: rămâne vizibil la derulare */
.site-nav{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px)}
.admin-bar .site-nav{top:32px}
@media(max-width:782px){.admin-bar .site-nav{top:46px}}
.site-nav .wrap{height:76px}
.brand img{width:40px;height:40px}
.brand span{font-size:20px}
.menu a{font-size:15.5px;padding:8px 13px}
.menu>li>a{border-bottom-width:2px;padding-bottom:6px}

/* Hero mai echilibrat */
.hero{padding:104px 0 0}
.hero h1{max-width:16ch;font-weight:600;letter-spacing:-.035em}
.hero .intro{font-size:19.5px;line-height:1.65;color:#4f575f}
.legend{margin-top:88px;gap:0 2px}
.legend li{border-top-width:12px;font-size:14.5px;color:#3a4047;padding-right:22px}

/* Ritm vertical uniform */
.sec{padding:96px 0}
.sec.tint{padding:96px 0}
.sec.tint+.sec{padding-top:96px}
.split{gap:72px}
.split>h2{font-weight:600;letter-spacing:-.02em}
.ph{padding:80px 0 0}
.ph h1{letter-spacing:-.03em}
.ph:after{margin-top:56px}

/* Liste */
.areas li{display:flex;gap:4px;align-items:baseline}
.areas li span{flex:none}
.objectives li{color:#59616a;margin-bottom:28px}

/* Team: proporții mai fine */
.fac{padding:72px 0 8px}
.fac+.fac{border-top:1px solid var(--rule)}
.fac h2{font-size:21px;margin-bottom:32px}
.person .photo{background:linear-gradient(180deg,#f3f4f6,#e9ebee);border-bottom-width:3px;margin-bottom:14px}
.person h3{font-size:16px}
.person p{font-size:14.5px}

/* Events */
.agenda{border-top-width:1px;border-top-color:var(--ink)}
.agenda>li{grid-template-columns:128px 1fr;padding:24px 0}
.agenda time{color:var(--ink)}
.agenda li.pause{background:repeating-linear-gradient(90deg,transparent 0 6px,rgba(29,33,37,.025) 6px 12px)}

/* Opportunities */
.call{box-shadow:0 1px 0 rgba(29,33,37,.04),0 24px 48px -32px rgba(29,33,37,.25)}
.lang h3{font-weight:600}
details.call>summary:hover h2{color:var(--link)}

/* Research */
.rlist li{padding:30px 0}
.rlist h2{font-weight:600;letter-spacing:-.01em}

/* Butoane */
.btn{transition:background .15s,border-color .15s,color .15s}
.btn:focus-visible{outline:2px solid var(--link);outline-offset:3px}

/* Footer */
.site-foot{padding:72px 0 64px}
.site-foot .grid{gap:40px}

/* ===== Publicațiile membrilor (OpenAlex) ===== */
.oa{margin-top:88px}
.oa-title{font-size:clamp(26px,3vw,34px);letter-spacing:-.02em}
.oa-note{margin:10px 0 0;font-family:var(--sans);font-size:15px;color:var(--muted)}
.oa-years{position:sticky;top:76px;z-index:5;display:flex;flex-wrap:wrap;gap:2px;margin:28px 0 8px;padding:10px 0;background:rgba(255,255,255,.96);border-bottom:1px solid var(--rule)}
.admin-bar .oa-years{top:108px}
.oa-years a{font-family:var(--sans);font-size:14px;font-variant-numeric:tabular-nums lining-nums;color:var(--muted);text-decoration:none;padding:4px 9px;border-radius:3px}
.oa-years a:hover{background:var(--soft);color:var(--ink)}
.oa-year{font-size:22px;margin:48px 0 4px;scroll-margin-top:150px;font-variant-numeric:lining-nums}
.oa-list{list-style:none;margin:0;padding:0}
.oa-list li{margin:0;padding:16px 0;border-bottom:1px solid var(--rule)}
.oa-t{margin:0;font-size:17px;line-height:1.45;max-width:85ch}
.oa-t a{color:var(--ink);text-decoration:none}
.oa-t a:hover{color:var(--link);text-decoration:underline}
.oa-m{margin:6px 0 0;font-family:var(--sans);font-size:14px;color:var(--link)}
.oa-m span{color:var(--muted)}
.oa-m span:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--rule);margin:0 10px;vertical-align:middle}
@media(max-width:600px){.oa-years{top:68px}.oa-m span{display:block}.oa-m span:before{display:none}}

/* =====================================================================
   1.4.0: atmosferă de centru de cercetare
   Motive: hârtie milimetrică (grila unui grafic), norul de puncte viridis,
   etichete de axă discrete. Doar stil; paginile rămân neschimbate.
   ===================================================================== */
:root{--grid:rgba(59,82,139,.07);--paper2:#f6f8fa}

/* Fundal de grafic pentru capetele de pagină */
.ph{position:relative;padding:88px 0 64px;background-color:var(--paper2);
 background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
 background-size:32px 32px;background-position:-1px -1px;border-bottom:1px solid var(--rule)}
.ph:after{display:none}
.ph:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--viridis)}
.ph h1{position:relative}
.ph .sub,.ph .lede{position:relative}
.ph.tabbed{padding-bottom:0}
.ph.tabbed:before{display:none}
.rtabs{margin-top:48px;border-bottom:0}
.rtabs a{background:transparent;border-radius:4px 4px 0 0}
.rtabs a.on{background:var(--paper);border-bottom-color:var(--paper);box-shadow:0 -1px 0 var(--rule),1px 0 0 var(--rule),-1px 0 0 var(--rule)}
.rpage{padding-top:24px}

/* Home: graficul de dispersie lângă titlu */
.hero{position:relative;overflow:hidden;padding:112px 0 0}
.hero:before{content:"";position:absolute;top:24px;right:max(-120px,calc(50% - 760px));width:min(54vw,760px);aspect-ratio:4/3;background:url('hero-plot.svg') no-repeat center/contain;opacity:.95;pointer-events:none}
.hero .wrap{position:relative}
.hero h1{max-width:14ch}
.hero .intro{max-width:52ch;background:linear-gradient(90deg,var(--paper) 70%,rgba(255,255,255,0))}
.legend{position:relative;background:var(--paper)}
@media(max-width:960px){.hero:before{opacity:.25;width:110vw;right:-30vw;top:0}.hero .intro{background:none}}

/* Secțiunile cu fond devin "foaie de calcul" discretă */
.sec.tint{background-color:var(--paper2);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px}
.split>h2{position:relative;padding-top:18px}
.split>h2:before{content:"";position:absolute;top:0;left:0;width:40px;height:3px;background:var(--ink)}

/* Obiective: fiecare ca o notă pe hârtie */
.objectives li{background:var(--paper);border:1px solid var(--rule);border-radius:6px;padding:18px 20px;margin-bottom:16px}

/* Team: portretele ca plăci de laborator */
.person .photo{background-color:#eef1f4;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:16px 16px}
a.person{display:block;color:inherit;text-decoration:none}
a.person h3{text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:text-decoration-color .2s}
a.person:hover h3,a.person:focus-visible h3{text-decoration-color:currentColor}
a.person .photo{transition:transform .25s ease}
a.person:hover .photo{transform:translateY(-3px)}

/* Events: ora ca pe axa timpului */
.agenda>li{position:relative}
.agenda time{color:var(--link)}
.agenda>li:not(.pause):before{content:"";position:absolute;left:-18px;top:30px;width:7px;height:7px;border-radius:50%;background:var(--geo)}
@media(max-width:600px){.agenda>li:before{display:none}}

/* Opportunities */
.call-head{background:linear-gradient(180deg,var(--paper2),var(--paper));border-radius:6px 6px 0 0}
.call .code{display:inline-block;padding:2px 8px;border-radius:3px;background:var(--soft);color:var(--ink)}
.call-docs{background-color:var(--paper2)}

/* Footer: banda viridis și un rând de identitate mai puternic */
.site-foot{position:relative}
.site-foot:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--viridis)}

/* ===== Profil de cercetător ===== */
.prof-head{background-color:var(--paper2);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:32px 32px;border-bottom:1px solid var(--rule);position:relative;padding:72px 0 56px}
.prof-head:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--viridis)}
.prof-head .wrap{display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:end}
.prof-photo{width:220px;aspect-ratio:4/5;object-fit:cover;border-radius:4px;border-bottom:4px solid var(--soc);background:#eef1f4;display:block}
.prof-back{display:inline-block;margin-bottom:16px;font-family:var(--sans);font-size:15px;text-decoration:none}
.prof-kicker{margin:0 0 8px;font-family:var(--sans);font-size:16px;color:var(--soc);font-weight:600}
.prof-head h1{font-size:clamp(38px,5vw,60px);line-height:1.02;letter-spacing:-.03em}
.prof-role{margin:14px 0 2px;font-family:var(--sans);font-size:18px;font-weight:500}
.prof-aff{margin:0 0 22px;color:var(--muted);font-size:17px}
.prof-links{display:flex;flex-wrap:wrap;gap:10px}
.prof-links .btn{font-size:15px;padding:10px 18px}
.prof-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--rule)}
.prof-facts li{margin:0;padding:24px 24px 26px 0;font-family:var(--sans)}
.prof-facts li+li{padding-left:24px;border-left:1px solid var(--rule)}
.prof-facts strong{display:block;font-weight:600;font-size:16px}
.prof-facts span{display:block;margin-top:2px;font-size:14.5px;color:var(--muted)}
.prof-body{display:grid;grid-template-columns:220px 1fr;gap:48px;padding:64px 0 96px}
.prof-toc{position:sticky;top:104px;align-self:start;font-family:var(--sans);font-size:15px}
.prof-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--rule)}
.prof-toc li{margin:0}
.prof-toc a{display:block;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;color:var(--muted);text-decoration:none}
.prof-toc a:hover{color:var(--ink);border-left-color:var(--soc)}
.prof-main section{padding:0 0 56px;margin:0 0 56px;border-bottom:1px solid var(--rule);scroll-margin-top:110px}
.prof-main section:last-child{border-bottom:0;margin-bottom:0}
.prof-main h2{font-size:clamp(24px,2.6vw,30px);margin-bottom:22px}
.prof-main h3{font-size:18px;margin:0 0 10px;line-height:1.35}
.prof-main p{margin:0 0 1em;max-width:70ch}
.prof-main .lead{font-size:20px;line-height:1.6;color:var(--ink)}
.projects{display:grid;gap:20px}
.project{border:1px solid var(--rule);border-radius:6px;padding:26px 28px;background:var(--paper)}
.project .tag{margin:0 0 6px;font-family:var(--sans);font-size:14px;font-weight:600;color:var(--soc)}
.project dl{display:grid;grid-template-columns:120px 1fr;gap:6px 16px;margin:14px 0 16px;padding:14px 16px;background:var(--paper2);border-radius:4px;font-size:15px}
.project dt{font-family:var(--sans);font-weight:600}
.project dd{margin:0}
.project p{font-size:16px}
.project .more{font-family:var(--sans);font-size:15px;font-weight:500}
.timeline{list-style:none;margin:0;padding:0}
.timeline li{display:grid;grid-template-columns:110px 1fr;gap:20px;margin:0;padding:14px 0;border-bottom:1px solid var(--rule);font-size:16px;line-height:1.55}
.timeline .y{font-family:var(--sans);font-weight:600;font-size:15px;font-variant-numeric:tabular-nums lining-nums}
.timeline .src{color:var(--muted)}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{margin:0;font-family:var(--sans);font-size:15px;padding:7px 14px;border:1px solid var(--rule);border-radius:999px;background:var(--paper)}
.pubs{margin:0 0 8px;padding-left:28px}
.pubs li{margin:0 0 14px;font-size:16px;line-height:1.6;padding-left:6px}
.pubs li::marker{font-family:var(--sans);font-size:14px;color:var(--muted)}
.pubs b{font-weight:600}
.prof-main .note{font-size:15px;color:var(--muted)}
.contact-box{background:var(--paper2);border:1px solid var(--rule);border-radius:6px;padding:20px 22px;margin-bottom:20px;font-size:16px}
.contact-box p{margin:0 0 4px}
.ids{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.ids li{margin:0;padding:14px 16px;border:1px solid var(--rule);border-radius:6px;font-family:var(--sans);font-size:15px}
.ids b{display:block;font-weight:500;font-size:13.5px;color:var(--muted);margin-bottom:2px}
@media(max-width:960px){
 .prof-head .wrap,.prof-body{grid-template-columns:1fr;gap:28px}
 .prof-photo{width:180px}
 .prof-toc{position:static}
 .prof-toc ol{display:flex;flex-wrap:wrap;gap:4px 16px;border:0}
 .prof-toc a{padding:4px 0;border:0}
 .prof-facts{grid-template-columns:1fr 1fr}
 .prof-facts li:nth-child(3){padding-left:0;border-left:0}
 .cols2{grid-template-columns:1fr;gap:0}
}
@media(max-width:600px){
 .project dl,.timeline li{grid-template-columns:1fr;gap:2px}
 .prof-facts{grid-template-columns:1fr}
 .prof-facts li+li{padding-left:0;border-left:0;border-top:1px solid var(--rule)}
}
/* Hero: graficul nu se suprapune peste titlu */
.hero h1{max-width:12ch}
.hero:before{top:64px;width:min(44vw,620px);right:max(-80px,calc(50% - 720px))}
@media(max-width:1180px){.hero:before{opacity:.35}}

/* =====================================================================
   2.0.0  "Observatorul de date"
   Zonele de sus: cer de noapte pe care datele strălucesc în viridis.
   Conținutul: luminos, pe carduri curate. Doar stil; paginile neschimbate.
   ===================================================================== */
:root{
 --night:#0a1524;--night2:#10233a;--night3:#16304f;
 --on-night:#eef3f9;--on-night-muted:#9fb1c8;--on-night-rule:rgba(255,255,255,.12);
 --teal:#1f9e89;--teal-hi:#35b779;
 --bg:#f6f8fb;--card:#fff;--shadow:0 1px 2px rgba(10,21,36,.05),0 12px 32px -16px rgba(10,21,36,.18);
 --radius:12px;
}
body{background:var(--bg)}
.site-main{background:var(--bg)}

/* ---------- Antet întunecat ---------- */
.site-nav{background:rgba(10,21,36,.92);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--on-night-rule)}
.site-nav:before{height:3px}
.brand img{filter:invert(1);border-radius:4px}
.brand span{color:#fff;letter-spacing:.04em}
.menu a{color:var(--on-night)}
.menu>li>a{border-radius:6px;border-bottom:0;padding:8px 14px}
.menu>li>a:hover{color:#fff;background:rgba(255,255,255,.08)}
.menu>li.on>a{color:#fff;background:rgba(255,255,255,.1);box-shadow:inset 0 -2px 0 var(--teal-hi)}
.menu ul{background:var(--night2);border:1px solid var(--on-night-rule);border-radius:10px;padding:8px;box-shadow:0 24px 48px -16px rgba(0,0,0,.5)}
.menu ul a{color:var(--on-night);border-radius:6px}
.menu ul a:hover{background:rgba(255,255,255,.08);color:#fff}
.burger summary{background:transparent;color:#fff;border-color:var(--on-night-rule)}
@media(max-width:960px){.burger[open] .menu{background:var(--night2);border-bottom-color:var(--on-night-rule)}}

/* ---------- Fundalul de "cer" comun pentru hero, capete de pagină, profil ---------- */
.hero,.ph,.prof-head{
 background-color:var(--night);
 background-image:
  radial-gradient(60% 80% at 85% 10%,rgba(33,145,140,.28),transparent 60%),
  radial-gradient(50% 70% at 10% 100%,rgba(68,1,84,.45),transparent 60%),
  radial-gradient(40% 50% at 55% 60%,rgba(59,82,139,.25),transparent 70%),
  radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.2px);
 background-size:auto,auto,auto,26px 26px;
 color:var(--on-night);border-bottom:0}

/* ---------- Home ---------- */
.hero{padding:120px 0 0;overflow:hidden}
.hero:before{background-image:url('hero-net.svg');opacity:1;top:20px;width:min(58vw,880px);aspect-ratio:9/7;right:max(-140px,calc(50% - 820px))}
.hero h1{color:#fff;font-weight:500;letter-spacing:-.04em;max-width:12ch;text-shadow:0 2px 40px rgba(10,21,36,.6)}
.hero .intro{color:var(--on-night-muted);background:none;max-width:54ch}
.hero .btn{background:var(--teal);border-color:var(--teal);color:#fff;padding:15px 28px;border-radius:999px;box-shadow:0 10px 30px -10px rgba(31,158,137,.8)}
.hero .btn:hover{background:var(--teal-hi);border-color:var(--teal-hi)}
.legend{background:transparent;margin-top:96px;gap:0}
.legend li{color:var(--on-night);border-top-width:4px;padding:18px 18px 40px 0;font-size:14.5px;position:relative}
.legend li:after{content:"";position:absolute;left:0;top:-4px;width:100%;height:4px;filter:blur(8px);opacity:.9;background:inherit}
.legend li:nth-child(1){box-shadow:0 -10px 24px -14px #440154}
.legend li:nth-child(2){box-shadow:0 -10px 24px -14px #21918c}
.legend li:nth-child(3){box-shadow:0 -10px 24px -14px #3b528b}
.legend li:nth-child(4){box-shadow:0 -10px 24px -14px #5ec962}
.legend li:nth-child(5){box-shadow:0 -10px 24px -14px #fde725}
@media(max-width:960px){.hero:before{opacity:.35;width:130vw;right:-50vw}}

/* ---------- Capete de pagină ---------- */
.ph{padding:96px 0 72px}
.ph:before{height:3px;bottom:0;opacity:.9}
.ph h1{color:#fff;font-weight:500;letter-spacing:-.035em}
.ph .sub{color:var(--teal-hi)}
.ph .lede{color:var(--on-night-muted)}
.ph .pback{color:var(--teal-hi)}
.ph.tabbed{padding-bottom:0}
.rtabs{margin-top:56px;gap:6px}
.rtabs a{color:var(--on-night-muted);border-radius:10px 10px 0 0;padding:14px 22px}
.rtabs a:hover{color:#fff;background:rgba(255,255,255,.06)}
.rtabs a.on{color:var(--ink);background:var(--bg);box-shadow:none;border-bottom-color:var(--bg)}

/* ---------- Secțiuni și carduri ---------- */
.sec{background:var(--bg)}
.sec.tint{background:#eef2f7;background-image:none}
.split>h2:before{background:var(--viridis);width:48px;height:4px;border-radius:2px}
.prose .areas li{border-bottom-color:#dde3ea}
.areas{gap:12px}
.areas li{background:var(--card);border:0;border-radius:10px;padding:16px 18px;box-shadow:var(--shadow)}
.objectives li{border:0;border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px;position:relative;overflow:hidden}
.objectives li:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--viridis)}

/* ---------- Team ---------- */
.fac{background:var(--bg)}
.fac+.fac{border-top:0}
.fac h2{font-weight:600}
.fac h2:before{border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 22%,transparent)}
.person{background:var(--card);border-radius:var(--radius);padding:10px 10px 18px;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}
a.person:hover,.person:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(10,21,36,.05),0 22px 40px -18px rgba(10,21,36,.3)}
a.person:hover .photo{transform:none}
.person .photo{border-radius:8px;border-bottom:0;position:relative}
.person .photo:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--c,var(--mat))}
.person h3,.person p{padding:0 6px}
.person h3{margin-top:2px}

/* ---------- Events ---------- */
.session .about h2{font-weight:600}
.facts{background:var(--card);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}
.agenda{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border-top:0;padding:6px 26px}
.agenda>li:last-child{border-bottom:0}
.agenda>li:not(.pause):before{left:-14px;background:var(--teal);box-shadow:0 0 0 4px rgba(31,158,137,.15)}
.agenda time{color:var(--teal)}
.agenda li.pause{background:none}
.agenda li.pause em{display:inline-block;background:#eef2f7;padding:3px 12px;border-radius:999px;font-size:14.5px}
.sec.tint .agenda{box-shadow:0 1px 2px rgba(10,21,36,.05),0 16px 36px -18px rgba(10,21,36,.25)}

/* ---------- Opportunities ---------- */
.call{border:0;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.call-head{background:var(--card);border-radius:0;position:relative}
.call-head:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--viridis)}
.langs{border-top-color:#e6ebf1}
.lang+.lang{background:#fafbfd;border-left-color:#e6ebf1}
.call .code{background:var(--night);color:#fff;font-size:12px;letter-spacing:.06em}
.call-docs{background:#f3f6fa;border-top-color:#e6ebf1;border-radius:0}
.call .btn{border-radius:999px}
.call .btn:not(.line){background:var(--night);border-color:var(--night)}
.call .btn:not(.line):hover{background:var(--teal);border-color:var(--teal)}
.result{background:var(--card)}
details.call>summary:after{width:36px;height:36px;border-radius:50%;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-size:22px}

/* ---------- Research ---------- */
.rpage{background:var(--bg);padding-top:40px}
.rlist{display:grid;gap:14px}
.rlist li{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 28px;border-bottom:0;transition:transform .2s ease}
.rlist li:hover{transform:translateY(-2px)}
.rlist .btn{border-radius:999px}
.oa-years{background:rgba(246,248,251,.94);backdrop-filter:blur(8px)}
.oa-years a.on,.oa-years a:hover{background:var(--night);color:#fff}
.oa-list{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px 24px}
.oa-list li:last-child{border-bottom:0}

/* ---------- Butoane generale ---------- */
.btn{border-radius:999px}
.btn.line{border-color:#cdd5df}

/* ---------- Profil ---------- */
.prof-head{padding:80px 0 64px}
.prof-head:before{height:3px;bottom:0}
.prof-head h1{color:#fff;font-weight:500}
.prof-kicker{color:var(--teal-hi)}
.prof-role{color:var(--on-night)}
.prof-aff{color:var(--on-night-muted)}
.prof-back{color:var(--teal-hi)}
.prof-photo{border-radius:14px;border-bottom:0;box-shadow:0 0 0 1px rgba(255,255,255,.15),0 30px 60px -20px rgba(0,0,0,.6)}
.prof-links .btn{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.22);color:#fff}
.prof-links .btn:hover{background:#fff;color:var(--ink);border-color:#fff}
.prof-links .btn:not(.line){background:var(--teal);border-color:var(--teal)}
.prof-links .btn:not(.line):hover{background:var(--teal-hi);border-color:var(--teal-hi);color:#fff}
.prof-facts{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border-bottom:0;margin-top:-36px;position:relative;padding:0 8px}
.prof-facts li{padding:22px 22px 24px}
.prof-facts li+li{padding-left:22px}
.prof-toc a:hover{border-left-color:var(--teal)}
.project{border:0;box-shadow:var(--shadow);border-radius:var(--radius);position:relative;overflow:hidden}
.project:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--viridis)}
.project .tag{color:var(--teal)}
.project dl{background:#f3f6fa}
.tags li{background:var(--card);border-color:#dde3ea}
.contact-box{background:var(--card);border:0;box-shadow:var(--shadow)}
.ids li{background:var(--card);border:0;box-shadow:var(--shadow)}

/* ---------- Footer ---------- */
.site-foot{background:var(--night);background-image:radial-gradient(50% 120% at 100% 0%,rgba(33,145,140,.18),transparent 60%)}
.site-foot:before{height:3px}

@media(max-width:960px){.prof-facts{margin-top:24px}}
/* Legenda facultăților: doar linia colorată strălucește */
.legend li{box-shadow:none!important;padding-bottom:18px}
.legend li:after{top:-4px;height:4px;filter:blur(6px);opacity:.85}
.legend li:nth-child(1):after{background:#7a1fa0}
.legend li:nth-child(2):after{background:#21918c}
.legend li:nth-child(3):after{background:#4f6ec0}
.legend li:nth-child(4):after{background:#5ec962}
.legend li:nth-child(5):after{background:#fde725}
.hero{padding-bottom:24px}

/* =====================================================================
   2.1.0  Mai modern: forme drepte, margini fine, fără butoane rotunde
   ===================================================================== */
:root{--radius:10px;--edge:1px solid #e2e8f0;--shadow:0 1px 0 rgba(10,21,36,.03),0 8px 24px -18px rgba(10,21,36,.25)}

/* Butoane: dreptunghiuri precise, colțuri mici */
.btn,.hero .btn,.call .btn,.rlist .btn,.prof-links .btn{border-radius:6px}
.btn{font-weight:600;letter-spacing:-.005em;padding:12px 22px}
.hero .btn{box-shadow:none;padding:15px 30px;position:relative}
.hero .btn:hover{transform:translateY(-1px)}
.btn.line{background:transparent;border:1px solid #c9d2de}
.btn.line:hover{border-color:var(--ink)}

/* Meniu: subliniere, nu pastilă */
.menu>li>a{background:none!important;border-radius:0;box-shadow:none!important;position:relative}
.menu>li>a:after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;background:var(--teal-hi);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.menu>li>a:hover:after,.menu>li.on>a:after{transform:scaleX(1)}
.menu ul{border-radius:8px}

/* Carduri: margine fină + umbră abia vizibilă */
.areas li,.objectives li,.person,.facts,.agenda,.call,.rlist li,.oa-list,.prof-facts,.project,.contact-box,.ids li{border:var(--edge);box-shadow:var(--shadow);border-radius:var(--radius)}
a.person:hover,.person:hover{box-shadow:0 1px 0 rgba(10,21,36,.03),0 18px 36px -20px rgba(10,21,36,.35);border-color:#cfd8e3}
.person .photo{border-radius:6px}
.rlist li:hover{transform:none;border-color:#cfd8e3}

/* Marcaje drepte */
.fac h2:before{border-radius:2px;width:10px;height:10px;box-shadow:none}
.tags li{border-radius:6px}
.agenda li.pause em{background:none;padding:0;border-radius:0;color:var(--muted)}
.agenda li.pause em:before{content:"";display:inline-block;width:28px;height:1px;background:#c9d2de;vertical-align:middle;margin-right:12px}
.agenda>li:not(.pause):before{border-radius:1px;width:6px;height:6px;box-shadow:none}
details.call>summary:after{border-radius:6px;width:34px;height:34px;background:transparent;border:1px solid #d5dde7}
.call .code{border-radius:4px}
.rtabs a{border-radius:6px 6px 0 0}
.oa-years a{border-radius:4px}

/* Tipografie mai tăioasă */
.split>h2,.session .about h2,.past-title,.oa-title,.prof-main h2{font-weight:600;letter-spacing:-.025em}
.ph h1,.hero h1,.prof-head h1{font-weight:500;letter-spacing:-.045em}

/* ===== Specializations ===== */
.programs{display:grid;gap:20px;padding-bottom:96px}
.program{display:grid;grid-template-columns:1fr 240px;gap:48px;align-items:center;background:var(--card);border:var(--edge);border-radius:var(--radius);box-shadow:var(--shadow);padding:40px 44px;position:relative;overflow:hidden}
.program:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c,var(--mat))}
.program.soc{--c:var(--soc)}.program.geo{--c:var(--geo)}.program.eco{--c:var(--eco)}
.program h2{font-size:clamp(24px,2.6vw,32px);font-weight:600;letter-spacing:-.025em}
.program-fac{margin:6px 0 18px;font-family:var(--sans);font-size:16px;color:var(--c,var(--muted));font-weight:500}
.program-text p:not(.program-fac){margin:0 0 24px;max-width:68ch;color:#3a424b}
.program-logo{display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:var(--paper2);border:var(--edge);border-radius:var(--radius);padding:28px}
.program-logo img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
@media(max-width:860px){.program{grid-template-columns:1fr;padding:28px 24px;gap:24px}.program-logo{max-width:180px;order:-1}}

/* =====================================================================
   2.4.0  Mai viu: un singur moment de mișcare, rețeaua în toate capetele
   de pagină, carduri cu margine viridis la hover, semnătură în footer
   ===================================================================== */

/* Legenda: patru facultăți */
.legend{grid-template-columns:repeat(4,1fr)}
.legend li:nth-child(4):after{background:#fde725}
@media(max-width:960px){.legend{grid-template-columns:1fr 1fr}}

/* Rețeaua de date respiră încet (singura animație din site) */
@keyframes cisd-drift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-18px,10px,0) scale(1.03)}100%{transform:translate3d(0,0,0) scale(1)}}
@keyframes cisd-glow{0%,100%{opacity:.85}50%{opacity:1}}
.hero:before{animation:cisd-drift 26s ease-in-out infinite,cisd-glow 9s ease-in-out infinite;will-change:transform}

/* Aceeași rețea, discretă, în dreapta tuturor capetelor de pagină */
.ph,.prof-head{overflow:hidden}
.ph>.wrap,.prof-head>.wrap{position:relative;z-index:1}
.ph:after,.prof-head:after{content:"";display:block;position:absolute;top:-30%;right:-6%;width:min(52vw,760px);aspect-ratio:9/7;margin:0;height:auto;max-width:none;background:url('hero-net.svg') no-repeat center/contain;opacity:.55;pointer-events:none;z-index:0}
.ph.tabbed:after{display:block}
@media(max-width:960px){.ph:after,.prof-head:after{opacity:.25;width:110vw;right:-40vw}}

/* Titlurile mari primesc o lumină fină */
.hero h1,.ph h1,.prof-head h1{background:linear-gradient(180deg,#fff 30%,#cfe3ef 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}

/* Carduri: margine în gradient viridis la hover */
.person,.rlist li,.call,.program,.project,.agenda,.objectives li{position:relative}
.person:after,.rlist li:after,.program:after,.project:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:var(--viridis);
 -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .25s ease;pointer-events:none}
.person:hover:after,.rlist li:hover:after,.program:hover:after,.project:hover:after{opacity:1}
.program:before{z-index:1}

/* Team: portretele trec din alb-negru în color cu o ușoară mărire */
.person .photo img{transition:filter .35s ease,transform .5s ease}
.person:hover .photo img{transform:scale(1.04)}

/* Butonul principal de pe Home: săgeată animată la hover, fără text nou */
.hero .btn{display:inline-flex;align-items:center;gap:10px}
.hero .btn:after{content:"";width:14px;height:2px;background:currentColor;transition:width .2s ease}
.hero .btn:hover:after{width:24px}

/* Footer: semnătura CISD, uriașă și discretă */
.site-foot{overflow:hidden}
.site-foot .wrap{position:relative;z-index:1}
.site-foot:after{content:"CISD";position:absolute;right:-1vw;bottom:-6vw;font-family:var(--sans);font-weight:700;font-size:min(26vw,360px);line-height:1;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.08);pointer-events:none}

@media(prefers-reduced-motion:reduce){.hero:before{animation:none}}
.legend li:nth-child(4){border-color:var(--eur)}
