@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=Figtree:wght@300;400;500;600&family=Syne:wght@700;800&display=swap');

:root {
  --navy:       #071428;
  --navy-2:     #0E2141;
  --blue:       #1B4FFF;
  --blue-soft:  #EEF2FF;
  --teal:       #00B4C5;
  --teal-soft:  #E6F9FB;
  --bg:         #F3F6FF;
  --surface:    #FFFFFF;
  --text:       #0D1F3C;
  --muted:      #4C6080;
  --light:      #8090B0;
  --border:     #D5E0F5;
  --shadow-sm:  0 1px 8px rgba(7,20,40,.06);
  --shadow:     0 4px 24px rgba(7,20,40,.10);
  --radius:     8px;
  --radius-lg:  14px;
  --font-d:     'Plus Jakarta Sans', sans-serif;
  --font-logo:  'Syne', sans-serif;
  --font-b:     'Figtree', sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-b);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{cursor:pointer;border:none;background:none;font-family:inherit;}

h1,h2,h3,h4,h5{font-family:var(--font-d);line-height:1.2;color:var(--navy);}
h1{font-size:clamp(2.1rem,5vw,3.6rem);font-weight:800;}
h2{font-size:clamp(1.45rem,3vw,2.1rem);font-weight:700;}
h3{font-size:clamp(1rem,2vw,1.22rem);font-weight:700;}
p{color:var(--muted);line-height:1.8;}
p.lead{font-size:1.08rem;color:var(--text);}

.container{max-width:1120px;margin:0 auto;padding:0 24px;}
.container-narrow{max-width:780px;margin:0 auto;padding:0 24px;}
.section{padding:80px 0;}
.section-alt{background:#fff;}

/* NAV */
.nav{position:sticky;top:0;z-index:100;background:rgba(7,20,40,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);}
.nav-inner{max-width:1120px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:64px;}
.nav-logo{font-family:var(--font-logo);font-weight:800;font-size:.9rem;letter-spacing:.07em;text-transform:uppercase;color:#fff;}
.nav-logo span{color:var(--teal);}
.nav-links{display:flex;align-items:center;gap:4px;}
.nav-links>a,.nav-dropdown>a{font-size:.85rem;font-weight:500;color:rgba(255,255,255,.7);padding:8px 13px;border-radius:6px;transition:all .2s;font-family:var(--font-b);}
.nav-links>a:hover,.nav-dropdown>a:hover,.nav-links>a.active{color:#fff;background:rgba(255,255,255,.09);}
.nav-dropdown{position:relative;}
.nav-dropdown-menu{position:absolute;top:calc(100% + 10px);left:0;background:var(--navy-2);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:8px;min-width:248px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .2s;box-shadow:0 16px 48px rgba(0,0,0,.35);}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;transform:none;}
.nav-dropdown-menu a{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;font-family:var(--font-b);color:rgba(255,255,255,.7);border-radius:6px;transition:all .2s;}
.nav-dropdown-menu a:hover{color:#fff;background:rgba(255,255,255,.08);}
.study-num{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal);min-width:18px;font-family:var(--font-b);}
.nav-badge{font-size:.6rem;background:var(--teal);color:var(--navy);font-weight:700;padding:2px 6px;border-radius:100px;text-transform:uppercase;letter-spacing:.06em;}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-b);font-weight:600;font-size:.875rem;padding:11px 22px;border-radius:var(--radius);transition:all .2s;}
.btn-primary{background:var(--blue);color:#fff;}
.btn-primary:hover{background:#1340D8;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,79,255,.35);}
.btn-outline{border:1.5px solid rgba(255,255,255,.35);color:#fff;}
.btn-outline:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.7);}
.btn-navy{background:var(--navy);color:#fff;}
.btn-navy:hover{background:var(--navy-2);transform:translateY(-1px);box-shadow:var(--shadow);}
.btn-ghost{color:var(--blue);font-weight:600;font-size:.875rem;font-family:var(--font-b);}
.btn-ghost:hover{color:#1340D8;text-decoration:underline;}
.btn-sm{padding:8px 16px;font-size:.8rem;}

/* BADGES */
.badge{display:inline-block;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;border-radius:100px;font-family:var(--font-b);}
.badge-blue{background:var(--blue-soft);color:var(--blue);}
.badge-teal{background:var(--teal-soft);color:#007A88;}
.badge-navy{background:rgba(7,20,40,.07);color:var(--navy);}
.badge-green{background:#EDFDF4;color:#0A7A45;}
.badge-orange{background:#FFF4EC;color:#B04A00;}
.badge-yellow{background:#FEFCE8;color:#92400E;}

/* SECTION LABEL */
.section-label{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-family:var(--font-b);font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);}
.section-label::before{content:'';display:block;width:22px;height:2px;background:var(--blue);flex-shrink:0;}
.section-header{margin-bottom:48px;}
.section-header h2{margin-bottom:10px;}
.section-header p{max-width:540px;}

/* HERO */
.hero{background:var(--navy);padding:96px 24px 80px;position:relative;overflow:hidden;}
.hero-dots{position:absolute;inset:0;opacity:.12;background-image:radial-gradient(circle,rgba(0,180,197,.9) 1px,transparent 1px);background-size:34px 34px;}
.hero-glow{position:absolute;top:-80px;right:-80px;width:500px;height:500px;background:radial-gradient(circle,rgba(27,79,255,.25) 0%,transparent 65%);border-radius:50%;}
.hero-glow-2{position:absolute;bottom:-60px;left:20%;width:300px;height:300px;background:radial-gradient(circle,rgba(0,180,197,.15) 0%,transparent 70%);border-radius:50%;}
.hero-inner{max-width:1120px;margin:0 auto;position:relative;z-index:1;}
.hero-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-family:var(--font-b);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);}
.hero-eyebrow::before{content:'';display:block;width:28px;height:2px;background:var(--teal);}
.hero h1{color:#fff;max-width:740px;margin-bottom:20px;}
.hero h1 em{font-style:normal;color:var(--teal);}
.hero-lead{color:rgba(255,255,255,.62);font-size:1.05rem;max-width:560px;margin-bottom:36px;line-height:1.75;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:40px;margin-top:64px;padding-top:40px;border-top:1px solid rgba(255,255,255,.1);flex-wrap:wrap;}
.hero-stat-val{font-family:var(--font-d);font-size:2.1rem;font-weight:800;color:#fff;line-height:1;}
.hero-stat-lbl{font-size:.7rem;color:rgba(255,255,255,.45);margin-top:5px;text-transform:uppercase;letter-spacing:.07em;font-family:var(--font-b);}

/* PILLARS */
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
.pillar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s;}
.pillar:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.pillar-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.pi-blue{background:var(--blue-soft);}
.pi-teal{background:var(--teal-soft);}
.pi-navy{background:rgba(7,20,40,.06);}
.pillar h3{font-size:.98rem;margin-bottom:8px;}
.pillar p{font-size:.875rem;}

/* STUDY CARDS */
.studies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;}
.study-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;}
.study-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.study-card-bar{height:3px;}
.sc-blue{background:linear-gradient(90deg,var(--blue),#5B8BFF);}
.sc-teal{background:linear-gradient(90deg,var(--teal),#00D4A7);}
.sc-navy{background:linear-gradient(90deg,var(--navy),#1B4FFF);}
.sc-green{background:linear-gradient(90deg,#10B981,#00C4A7);}
.sc-purple{background:linear-gradient(90deg,#7C3AED,#1B4FFF);}
.sc-rose{background:linear-gradient(90deg,#E11D48,#9333EA);}
.study-card-body{padding:26px;flex:1;display:flex;flex-direction:column;}
.study-card-meta{display:flex;gap:8px;align-items:center;margin-bottom:14px;flex-wrap:wrap;}
.sc-num{font-family:var(--font-b);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--light);}
.study-card h3{font-size:1.03rem;margin-bottom:10px;color:var(--navy);line-height:1.3;}
.study-card p{font-size:.85rem;flex:1;margin-bottom:20px;line-height:1.7;}
.study-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid var(--border);}
.sc-year{font-size:.78rem;color:var(--light);font-weight:500;}

/* TEAM CARDS */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;}
.team-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 26px;box-shadow:var(--shadow-sm);}
.team-photo-wrap{margin-bottom:16px;}
.team-photo{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid var(--blue-soft);}
.team-photo-init{width:68px;height:68px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-size:1.1rem;font-weight:800;color:var(--teal);}
.team-role{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);font-weight:700;font-family:var(--font-b);margin-bottom:4px;}
.team-name{font-size:1.1rem;margin-bottom:12px;}
.team-bio{font-size:.875rem;color:var(--muted);line-height:1.75;margin-bottom:16px;}
.team-contacts{display:flex;flex-direction:column;gap:6px;}
.team-contact{font-size:.82rem;color:var(--blue);font-weight:500;}
.team-contact:hover{text-decoration:underline;}

/* STUDY PAGE */
.study-hero{background:var(--navy);padding:68px 24px 60px;position:relative;overflow:hidden;}
.study-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(0,180,197,.7) 1px,transparent 1px);background-size:26px 26px;opacity:.09;}
.study-hero-inner{max-width:1120px;margin:0 auto;position:relative;z-index:1;}
.study-back{font-size:.8rem;color:rgba(255,255,255,.45);margin-bottom:18px;display:inline-flex;align-items:center;gap:6px;transition:color .2s;font-family:var(--font-b);}
.study-back:hover{color:rgba(255,255,255,.85);}
.study-hero h1{color:#fff;font-size:clamp(1.45rem,3.5vw,2.3rem);max-width:680px;margin-bottom:14px;}
.study-hero-sub{color:rgba(255,255,255,.55);max-width:580px;margin-bottom:22px;font-family:var(--font-b);}
.study-badges{display:flex;gap:9px;flex-wrap:wrap;}
.study-layout{max-width:1120px;margin:0 auto;padding:56px 24px 80px;display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start;}
.study-main{min-width:0;}
.study-sidebar{position:sticky;top:80px;}
.study-section{margin-bottom:44px;padding-bottom:44px;border-bottom:1px solid var(--border);}
.study-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.study-section h2{font-size:1.2rem;margin-bottom:14px;}
.study-section p{margin-bottom:14px;font-size:.95rem;}
.study-section p:last-child{margin-bottom:0;}
.study-section ul{list-style:disc;padding-left:22px;display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.study-section ul li{font-size:.9rem;color:var(--muted);line-height:1.6;}
.study-meta-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-sm);margin-bottom:14px;}
.smc-title{font-family:var(--font-b);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--light);margin-bottom:14px;}
.smc-row{display:flex;justify-content:space-between;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--border);gap:12px;}
.smc-row:last-child{border-bottom:none;padding-bottom:0;}
.smc-key{font-size:.78rem;color:var(--light);font-weight:500;flex-shrink:0;font-family:var(--font-b);}
.smc-val{font-size:.82rem;color:var(--text);font-weight:600;text-align:right;font-family:var(--font-b);}

/* PDF MODAL */
.pdf-btn{display:flex;align-items:center;gap:10px;width:100%;background:var(--blue-soft);color:var(--blue);border:1px solid rgba(27,79,255,.2);border-radius:var(--radius);padding:12px 18px;font-weight:600;font-size:.85rem;font-family:var(--font-b);cursor:pointer;transition:all .2s;margin-bottom:10px;}
.pdf-btn:hover{background:var(--blue);color:#fff;}
.pdf-btn-dl{display:flex;align-items:center;gap:10px;width:100%;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:var(--radius);padding:10px 18px;font-size:.82rem;font-family:var(--font-b);font-weight:500;cursor:pointer;transition:all .2s;}
.pdf-btn-dl:hover{border-color:var(--blue);color:var(--blue);}
.modal-overlay{position:fixed;inset:0;background:rgba(7,20,40,.75);backdrop-filter:blur(6px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:all .25s;}
.modal-overlay.open{opacity:1;visibility:visible;}
.modal-box{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:920px;height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,.35);transform:scale(.96);transition:transform .25s;}
.modal-overlay.open .modal-box{transform:scale(1);}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--border);flex-shrink:0;}
.modal-title{font-family:var(--font-d);font-size:.85rem;font-weight:700;color:var(--navy);}
.modal-close{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--muted);background:var(--bg);font-size:1.1rem;transition:all .2s;border:none;cursor:pointer;}
.modal-close:hover{background:var(--border);}
.modal-body{flex:1;overflow:hidden;}
.modal-body iframe{width:100%;height:100%;border:none;}

/* EMA STREAM CARDS */
.stream-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:18px;}
.stream-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;box-shadow:var(--shadow-sm);}
.stream-num{font-family:var(--font-b);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);margin-bottom:5px;}
.stream-card h4{font-size:.98rem;margin-bottom:7px;font-family:var(--font-d);}
.stream-card p{font-size:.875rem;margin:0;line-height:1.7;}

/* CTA */
.cta-banner{background:var(--navy);padding:72px 24px;position:relative;overflow:hidden;}
.cta-banner::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(27,79,255,.3) 1px,transparent 1px);background-size:44px 44px;opacity:.08;}
.cta-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;position:relative;z-index:1;}
.cta-text h2{color:#fff;max-width:500px;margin-bottom:10px;}
.cta-text p{color:rgba(255,255,255,.55);max-width:460px;}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0;}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.contact-section h2{margin-bottom:14px;}
.contact-section>p{margin-bottom:28px;}
.contact-detail{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px;}
.cd-icon{width:40px;height:40px;background:var(--blue-soft);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;}
.cd-label{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--light);font-weight:700;font-family:var(--font-b);margin-bottom:2px;}
.cd-val{font-size:.88rem;color:var(--text);font-weight:500;font-family:var(--font-b);}
.cd-val a{color:var(--blue);}
.cd-val a:hover{text-decoration:underline;}
.collab-card{background:var(--navy);border-radius:var(--radius-lg);padding:32px;}
.collab-card h3{color:var(--teal);margin-bottom:10px;font-size:1.1rem;}
.collab-card>p{color:rgba(255,255,255,.6);font-size:.88rem;margin-bottom:22px;}
.collab-types{display:flex;flex-direction:column;gap:10px;}
.collab-type{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:rgba(255,255,255,.06);border-radius:8px;font-size:.875rem;color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.07);}
.ct-icon{font-size:1rem;flex-shrink:0;padding-top:2px;}
.collab-type strong{color:#fff;}
.affil-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;margin-top:18px;box-shadow:var(--shadow-sm);}
.affil-section-label{font-family:var(--font-b);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--light);margin-bottom:12px;}
.affil-divider{height:1px;background:var(--border);margin:16px 0;}

/* PAGE HERO */
.page-hero{background:var(--navy);padding:64px 24px;position:relative;overflow:hidden;}
.page-hero-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(0,180,197,.8) 1px,transparent 1px);background-size:32px 32px;opacity:.09;}
.page-hero-inner{max-width:1120px;margin:0 auto;position:relative;z-index:1;}
.page-hero h1{color:#fff;font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:10px;}
.page-hero p{color:rgba(255,255,255,.55);max-width:540px;font-family:var(--font-b);}

/* TEAM SECTIONS */
.team-section-head{margin-bottom:22px;}
.team-section-head h3{font-size:1.3rem;margin-bottom:7px;}
.team-section-head p{font-size:.9rem;max-width:620px;}
.team-card-placeholder{background:var(--surface);border:2px dashed var(--border);border-radius:var(--radius-lg);padding:26px;box-shadow:none;}
.team-card-placeholder h4{font-size:.95rem;margin-bottom:8px;color:var(--muted);}
.team-card-placeholder>p{font-size:.84rem;color:var(--light);line-height:1.7;}
.placeholder-field{display:flex;flex-direction:column;gap:6px;margin-top:12px;}
.pf{font-size:.78rem;color:var(--light);font-family:var(--font-b);padding:7px 12px;border:1px dashed var(--border);border-radius:6px;font-style:italic;}

/* FOOTER */
.footer{background:var(--navy);padding:36px 24px;border-top:1px solid rgba(255,255,255,.07);}
.footer-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;}
.footer-logo{font-family:var(--font-logo);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.6);}
.footer-logo span{color:var(--teal);}
.footer-copy{font-size:.75rem;color:rgba(255,255,255,.28);font-family:var(--font-b);}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;}
.footer-links a{font-size:.78rem;color:rgba(255,255,255,.38);transition:color .2s;font-family:var(--font-b);}
.footer-links a:hover{color:rgba(255,255,255,.8);}

@media(max-width:800px){.study-layout{grid-template-columns:1fr;}.contact-grid{grid-template-columns:1fr;}.cta-inner{flex-direction:column;}.hero-stats{gap:24px;}}
@media(max-width:640px){.nav-links{display:none;}.studies-grid{grid-template-columns:1fr;}.team-grid{grid-template-columns:1fr;}.pillars{grid-template-columns:1fr;}.section{padding:52px 0;}}

/* LANG SWITCH */
.lang-switch{display:flex;align-items:center;gap:5px;margin-left:14px;padding-left:14px;border-left:1px solid rgba(255,255,255,.15);}
.lang-current{font-size:.78rem;font-weight:700;color:#fff;font-family:var(--font-b);letter-spacing:.04em;}
.lang-other{font-size:.78rem;font-weight:500;color:rgba(255,255,255,.42);font-family:var(--font-b);letter-spacing:.04em;transition:color .2s;}
.lang-other:hover{color:rgba(255,255,255,.85);}
.lang-sep{font-size:.78rem;color:rgba(255,255,255,.22);font-family:var(--font-b);}

/* ═══════════════════════════════════════════════════════
   MOBILE IMPROVEMENTS
   ═══════════════════════════════════════════════════════ */

/* ── Hamburger button ── */
.nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 36px;
  height: 36px;
  padding: 6px;
  border-radius: 6px;
  cursor: pointer;
  background: none;
  border: none;
  flex-shrink: 0;
  transition: background .2s;
}
.nav-hamburger:hover { background: rgba(255,255,255,.08); }
.nav-hamburger span {
  display: block;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: all .25s;
  transform-origin: center;
}
.nav-hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-hamburger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── Mobile nav overlay ── */
.nav-mobile-menu {
  display: none;
  position: absolute;
  top: 64px;
  left: 0; right: 0;
  background: var(--navy-2);
  border-bottom: 1px solid rgba(255,255,255,.1);
  padding: 12px 0 20px;
  box-shadow: 0 8px 32px rgba(0,0,0,.4);
  z-index: 99;
}
.nav-mobile-menu.open { display: block; }
.nav-mobile-menu a {
  display: block;
  padding: 11px 24px;
  font-size: .9rem;
  font-family: var(--font-b);
  font-weight: 500;
  color: rgba(255,255,255,.75);
  transition: color .15s, background .15s;
}
.nav-mobile-menu a:hover,
.nav-mobile-menu a.active { color: #fff; background: rgba(255,255,255,.06); }
.nav-mobile-section {
  font-size: .62rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(255,255,255,.3);
  font-family: var(--font-b);
  padding: 14px 24px 4px;
}
.nav-mobile-menu .nav-mobile-study {
  padding-left: 38px;
  font-size: .85rem;
  color: rgba(255,255,255,.6);
}
.nav-mobile-divider {
  height: 1px;
  background: rgba(255,255,255,.07);
  margin: 8px 24px;
}
.nav-mobile-lang {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px 4px;
}
.nav-mobile-lang .lang-current { font-size: .8rem; font-weight: 700; color: #fff; }
.nav-mobile-lang .lang-other   { font-size: .8rem; color: rgba(255,255,255,.4); }
.nav-mobile-lang .lang-sep     { font-size: .8rem; color: rgba(255,255,255,.2); }

/* ── nav must be relative so overlay positions under it ── */
.nav { position: relative; z-index: 100; }
.nav-inner { position: relative; }

/* ── Hero mobile ── */
@media (max-width: 640px) {
  .nav-hamburger { display: flex; }
  .nav-links { display: none; }

  .hero { padding: 56px 20px 48px; }
  .hero h1 { font-size: 2rem; }
  .hero-lead { font-size: .95rem; }
  .hero-actions { flex-direction: column; gap: 10px; }
  .hero-actions .btn { width: 100%; justify-content: center; }
  .hero-stats { gap: 20px; padding-top: 28px; margin-top: 40px; }
  .hero-stat-val { font-size: 1.7rem; }
  .hero-stats > div { min-width: 80px; }

  /* Section spacing */
  .section { padding: 44px 0; }
  .section-header { margin-bottom: 28px; }
  .container, .container-narrow { padding: 0 18px; }

  /* Pillar cards */
  .pillars { gap: 14px; }
  .pillar { padding: 24px 20px; }

  /* Study cards */
  .studies-grid { gap: 14px; }
  .study-card-body { padding: 20px; }

  /* Team cards */
  .team-grid { gap: 18px; }
  .team-card { padding: 22px 20px; }

  /* CTA banner */
  .cta-banner { padding: 48px 20px; }
  .cta-inner { flex-direction: column; gap: 20px; }
  .cta-actions .btn { width: 100%; justify-content: center; }

  /* Page hero */
  .page-hero { padding: 44px 20px; }
  .page-hero h1 { font-size: 1.9rem; }

  /* Study hero */
  .study-hero { padding: 44px 20px 40px; }
  .study-hero h1 { font-size: 1.35rem; }

  /* Study layout: sidebar goes ABOVE content on mobile */
  .study-layout {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 32px 18px 56px;
  }
  /* Swap order: sidebar first, main content second */
  .study-sidebar { order: -1; position: static; }
  .study-main    { order:  1; }

  /* Study meta card */
  .study-meta-card { padding: 18px; }

  /* Contact page */
  .contact-grid { gap: 28px; }
  .affil-card { padding: 20px; }

  /* Collab card */
  .collab-card { padding: 24px 20px; }
  .collab-types { gap: 8px; }
  .collab-type { font-size: .82rem; }

  /* Footer */
  .footer { padding: 28px 18px; }
  .footer-inner { flex-direction: column; gap: 12px; text-align: center; }
  .footer-links { justify-content: center; }

  /* Stream cards (EMA) */
  .stream-card { padding: 18px 20px; }

  /* PDF modal */
  .modal-box { height: 92vh; border-radius: 10px 10px 0 0; }
  .modal-overlay { padding: 0; align-items: flex-end; }
}

/* ── Tablet tweaks (641–900px) ── */
@media (min-width: 641px) and (max-width: 900px) {
  .hero-stats { gap: 28px; }
  .study-layout { grid-template-columns: 1fr; gap: 36px; }
  .study-sidebar { position: static; order: -1; }
  .contact-grid { grid-template-columns: 1fr; gap: 32px; }
  .cta-inner { flex-direction: column; gap: 20px; }
  .cta-actions .btn { width: auto; }
}

.news-logo-elsevier img { object-fit: contain; padding: 6px; }
