
:root {
  --navy: #0b1f49;
  --navy-2: #132f68;
  --blue: #1769aa;
  --cyan: #1ea4c9;
  --orange: #eb7d32;
  --ink: #132033;
  --muted: #64748b;
  --line: #dbe4ee;
  --soft: #f5f8fc;
  --white: #ffffff;
  --max: 1180px;
  --shadow: 0 18px 55px rgba(11,31,73,.12);
  --radius: 22px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--blue); }
img { max-width: 100%; display: block; }
button, input, select { font: inherit; }
.container { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; }
.site-header {
  position: sticky; top: 0; z-index: 1000;
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(219,228,238,.82);
}
.nav-wrap { min-height: 80px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: flex; align-items: center; gap: 13px; min-width: 210px; }
.brand-mark {
  width: 44px; height: 44px; border-radius: 50%; position: relative; flex: 0 0 auto;
  border: 1.5px solid var(--navy); background:
    radial-gradient(circle at 50% 50%, var(--orange) 0 3px, transparent 4px),
    linear-gradient(32deg, transparent 46%, rgba(23,105,170,.52) 47% 50%, transparent 51%),
    linear-gradient(148deg, transparent 46%, rgba(23,105,170,.52) 47% 50%, transparent 51%),
    linear-gradient(90deg, transparent 46%, rgba(11,31,73,.50) 47% 50%, transparent 51%);
}
.brand-mark::before, .brand-mark::after { content:""; position:absolute; inset:7px; border:1px solid rgba(11,31,73,.55); border-radius:50%; transform:rotate(27deg); }
.brand-mark::after { transform: rotate(87deg) scale(.74); }
.brand-text strong { display:block; color:var(--navy); font: 700 20px/1 Georgia, 'Times New Roman', serif; letter-spacing:.09em; }
.brand-text span { display:block; margin-top:4px; color:var(--muted); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.nav-links { display:flex; gap: 4px; align-items:center; list-style:none; padding:0; margin:0; }
.nav-links a { display:block; padding: 11px 10px; border-radius:10px; color:#34435a; font-size:14px; font-weight:650; }
.nav-links a:hover, .nav-links a.active { background:var(--soft); color:var(--navy); }
.nav-external { display:inline-flex; align-items:center; gap:8px; padding:10px 14px!important; border:1px solid var(--line); }
.nav-toggle { display:none; border:0; background:transparent; font-size:26px; padding:8px; color:var(--navy); cursor:pointer; }

.hero { position:relative; overflow:hidden; background: linear-gradient(135deg, #071a3d 0%, #0d2f68 60%, #124778 100%); color:white; }
.hero::before { content:""; position:absolute; inset:-20% -10%; background:
  radial-gradient(circle at 78% 25%, rgba(30,164,201,.22), transparent 24%),
  radial-gradient(circle at 20% 90%, rgba(235,125,50,.16), transparent 22%);
  pointer-events:none;
}
.hero-grid { position:relative; min-height: 650px; display:grid; grid-template-columns: 1.08fr .92fr; align-items:center; gap:70px; padding: 82px 0 88px; }
.kicker { display:inline-flex; align-items:center; gap:10px; color:#bfe9f5; font-size:12px; font-weight:750; text-transform:uppercase; letter-spacing:.14em; }
.kicker::before { content:""; width:28px; height:1px; background:var(--orange); }
.hero h1 { margin:22px 0 24px; font: 700 clamp(46px, 6.2vw, 82px)/.98 Georgia,'Times New Roman',serif; letter-spacing:-.04em; max-width:800px; }
.hero h1 span { color:#8edff0; }
.hero-lead { max-width:690px; font-size:19px; color:#d8e7f7; line-height:1.75; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; border-radius:999px; padding:13px 20px; font-weight:750; font-size:14px; border:1px solid transparent; transition:.2s ease; cursor:pointer; }
.btn-primary { background:white; color:var(--navy); }
.btn-primary:hover { transform:translateY(-2px); color:var(--navy); box-shadow:0 10px 25px rgba(0,0,0,.15); }
.btn-ghost { color:white; border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.06); }
.btn-ghost:hover { background:rgba(255,255,255,.12); color:white; }
.network-card { position:relative; aspect-ratio:1/1; max-width:480px; margin-left:auto; border:1px solid rgba(255,255,255,.18); border-radius:36px; background:rgba(255,255,255,.055); box-shadow:0 30px 80px rgba(0,0,0,.2); overflow:hidden; }
.network-card::before { content:""; position:absolute; inset:11%; border:1px solid rgba(255,255,255,.14); border-radius:50%; }
.network-card::after { content:""; position:absolute; inset:24%; border:1px dashed rgba(142,223,240,.25); border-radius:50%; }
.net-core { position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%); width:118px; height:118px; border-radius:50%; display:grid; place-items:center; text-align:center; background:white; color:var(--navy); font:700 20px/1.05 Georgia,serif; box-shadow:0 15px 40px rgba(0,0,0,.2); z-index:3; }
.net-node { position:absolute; z-index:4; min-width:104px; text-align:center; padding:9px 11px; border-radius:999px; font-size:11px; font-weight:750; background:rgba(7,21,47,.85); border:1px solid rgba(255,255,255,.18); color:#eef9ff; }
.n1{top:13%;left:11%}.n2{top:10%;right:7%}.n3{top:45%;left:2%}.n4{top:43%;right:0}.n5{bottom:12%;left:10%}.n6{bottom:9%;right:8%}
.net-line { position:absolute; height:1px; background:linear-gradient(90deg, transparent, rgba(142,223,240,.7), transparent); transform-origin:left center; z-index:1; }
.l1{width:42%;left:20%;top:26%;transform:rotate(31deg)} .l2{width:41%;left:52%;top:30%;transform:rotate(-31deg)}
.l3{width:40%;left:14%;top:51%;transform:rotate(0deg)} .l4{width:40%;left:53%;top:51%;transform:rotate(0deg)}
.l5{width:40%;left:20%;top:72%;transform:rotate(-32deg)} .l6{width:40%;left:52%;top:72%;transform:rotate(32deg)}
.hero-meta { display:flex; flex-wrap:wrap; gap:28px; padding-top:24px; margin-top:28px; border-top:1px solid rgba(255,255,255,.13); color:#c7dbef; font-size:12px; }
.hero-meta strong { color:white; display:block; font-size:14px; }

.section { padding: 92px 0; }
.section.soft { background:var(--soft); }
.section.dark { background:#071a3d; color:white; }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:38px; }
.eyebrow { color:var(--blue); text-transform:uppercase; letter-spacing:.13em; font-size:12px; font-weight:800; }
.section h2, .page-hero h1 { margin:8px 0 0; color:var(--navy); font:700 clamp(34px,4vw,54px)/1.06 Georgia,'Times New Roman',serif; letter-spacing:-.025em; }
.dark h2 { color:white; }
.section-sub { max-width:690px; color:var(--muted); font-size:17px; }
.dark .section-sub { color:#bed0e6; }
.text-link { color:var(--blue); font-weight:750; white-space:nowrap; }
.grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.card { background:white; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; box-shadow:0 8px 28px rgba(11,31,73,.05); }
.card-body { padding:26px; }
.card h3 { margin:0 0 12px; color:var(--navy); font-size:21px; line-height:1.25; }
.card p { color:var(--muted); margin:0; }
.research-card { position:relative; min-height:252px; padding:28px; border-radius:24px; background:white; border:1px solid var(--line); overflow:hidden; transition:.22s ease; }
.research-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.research-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:16px; margin-bottom:28px; font-weight:800; color:var(--navy); background:linear-gradient(135deg,#e9f8fb,#e9effc); border:1px solid #cfe4ed; }
.research-card h3 { color:var(--navy); margin:0 0 12px; font-size:21px; }
.research-card p { color:var(--muted); font-size:14px; }
.research-card::after { content:""; position:absolute; width:90px; height:90px; border-radius:50%; right:-40px; bottom:-45px; background:rgba(23,105,170,.06); }
.project-card { display:flex; flex-direction:column; min-height:100%; }
.project-art { min-height:175px; position:relative; overflow:hidden; background:linear-gradient(140deg,#081c42,#174c7c); }
.project-art::before { content:""; position:absolute; width:220px; height:220px; border:1px solid rgba(255,255,255,.18); border-radius:50%; top:-75px; right:-55px; }
.project-art::after { content:""; position:absolute; width:130px; height:130px; border:1px dashed rgba(142,223,240,.4); border-radius:30%; transform:rotate(32deg); bottom:-45px; left:-20px; }
.project-code { position:absolute; left:22px; bottom:19px; color:white; font:700 34px/1 Georgia,serif; letter-spacing:.03em; }
.project-chip { position:absolute; left:22px; top:20px; color:#cbefff; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.project-card:nth-child(2) .project-art { background:linear-gradient(140deg,#183f68,#13738d); }
.project-card:nth-child(3) .project-art { background:linear-gradient(140deg,#3f275b,#8c4d7a); }
.project-card:nth-child(4) .project-art { background:linear-gradient(140deg,#2a3b50,#506b78); }
.meta-line { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.tag { display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; background:#eef5fb; color:#3a5d7e; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.person-card { text-align:center; padding:28px 20px 26px; background:white; border:1px solid var(--line); border-radius:22px; }
.avatar { width:108px; height:108px; display:grid; place-items:center; margin:0 auto 20px; border-radius:50%; color:white; background:linear-gradient(135deg,var(--navy-2),var(--cyan)); font:700 30px/1 Georgia,serif; box-shadow: inset 0 0 0 5px rgba(255,255,255,.18); }
.person-card:nth-child(2n) .avatar { background:linear-gradient(135deg,#244b77,#6e86aa); }
.person-card:nth-child(3n) .avatar { background:linear-gradient(135deg,#264f64,#2791a9); }
.person-card h3 { margin:0; color:var(--navy); font-size:18px; }
.person-card p { margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.45; }
.stat-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:20px; overflow:hidden; margin-top:42px; }
.stat { background:white; padding:22px; text-align:center; }
.stat strong { display:block; color:var(--navy); font:700 30px/1 Georgia,serif; }
.stat span { display:block; margin-top:8px; color:var(--muted); font-size:12px; }
.pub-list { border-top:1px solid rgba(255,255,255,.15); }
.pub-row { display:grid; grid-template-columns:78px 1fr auto; gap:20px; align-items:start; padding:22px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.pub-year { color:#81d8ec; font-weight:800; }
.pub-title { color:white; font-weight:720; }
.pub-meta { color:#9fb5cd; font-size:13px; margin-top:4px; }
.pub-arrow { color:#8edff0; }

.page-hero { background:linear-gradient(180deg,#f6f9fc 0%,#fff 100%); border-bottom:1px solid var(--line); padding:68px 0 56px; }
.page-hero p { max-width:780px; margin:20px 0 0; font-size:18px; color:var(--muted); }
.breadcrumb { color:#7d8ba0; font-size:12px; text-transform:uppercase; letter-spacing:.12em; font-weight:750; }
.prose { max-width:840px; }
.prose h2 { margin-top:44px; font-size:30px; }
.prose h3 { margin-top:32px; color:var(--navy); font-size:21px; }
.prose p { color:#4d5d72; font-size:17px; }
.prose ul { color:#4d5d72; padding-left:22px; }
.prose li { margin:8px 0; }
.focus-panel { border-radius:26px; background:#071a3d; color:white; padding:38px; }
.focus-panel h3 { margin:0 0 18px; font:700 28px/1.1 Georgia,serif; }
.focus-panel p { color:#c2d4e9; }
.two-col-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:56px; align-items:start; }
.sidebar { position:sticky; top:120px; }
.sidebar-card { border:1px solid var(--line); border-radius:20px; padding:22px; margin-bottom:18px; }
.sidebar-card h4 { margin:0 0 12px; color:var(--navy); }
.sidebar-card a { display:block; padding:7px 0; color:var(--muted); font-size:14px; border-bottom:1px dashed #e4eaf0; }
.sidebar-card a:last-child { border:0; }

.filters { display:flex; flex-wrap:wrap; gap:10px; margin: 0 0 28px; }
.filter-btn { border:1px solid var(--line); background:white; color:#40546f; border-radius:999px; padding:8px 13px; font-size:12px; font-weight:750; cursor:pointer; }
.filter-btn.active, .filter-btn:hover { background:var(--navy); border-color:var(--navy); color:white; }
.search-row { display:flex; gap:12px; margin-bottom:24px; }
.search-box { width:100%; border:1px solid var(--line); border-radius:14px; padding:13px 15px; outline:none; }
.search-box:focus { border-color:#8fbad4; box-shadow:0 0 0 3px rgba(23,105,170,.08); }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.project-item.hidden { display:none; }
.project-item .card-body { min-height:220px; }
.project-item h3 { font-size:20px; }
.project-item .desc { font-size:14px; }

.table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:20px; background:white; }
.pub-table { width:100%; border-collapse:collapse; min-width:860px; }
.pub-table th { background:#f7f9fc; color:#41536c; font-size:11px; text-transform:uppercase; letter-spacing:.09em; text-align:left; padding:13px 15px; border-bottom:1px solid var(--line); }
.pub-table td { vertical-align:top; padding:15px; border-bottom:1px solid #edf1f5; font-size:13px; color:#506079; }
.pub-table tr:last-child td { border-bottom:0; }
.pub-table td.title-cell { color:var(--navy); font-weight:720; font-size:14px; }
.pub-count { color:var(--muted); font-size:13px; margin:10px 0 0; }

.timeline { position:relative; margin-top:24px; }
.timeline::before { content:""; position:absolute; left:17px; top:6px; bottom:6px; width:1px; background:var(--line); }
.timeline-item { position:relative; padding-left:56px; margin-bottom:30px; }
.timeline-dot { position:absolute; left:8px; top:4px; width:20px; height:20px; background:white; border:5px solid var(--blue); border-radius:50%; }
.timeline-item h3 { margin:0 0 5px; color:var(--navy); font-size:20px; }
.timeline-item .date { color:var(--blue); font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.09em; }
.timeline-item p { color:var(--muted); margin:8px 0 0; }

.logo-cloud { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.logo-box { min-height:110px; display:grid; place-items:center; text-align:center; padding:18px; border:1px solid var(--line); border-radius:18px; background:white; color:var(--navy); font-weight:800; }
.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:30px; }
.contact-card { border:1px solid var(--line); border-radius:24px; padding:30px; }
.contact-card h3 { margin:0 0 14px; color:var(--navy); }
.map-placeholder { min-height:390px; position:relative; overflow:hidden; border-radius:24px; background:
  linear-gradient(90deg, rgba(255,255,255,.8) 1px, transparent 1px),
  linear-gradient(rgba(255,255,255,.8) 1px, transparent 1px),
  #e9f1f6; background-size:34px 34px; border:1px solid var(--line); }
.map-placeholder::before { content:""; position:absolute; width:64%; height:180%; border:26px solid rgba(23,105,170,.18); border-radius:50%; left:18%; top:-40%; transform:rotate(22deg); }
.map-pin { position:absolute; left:52%; top:45%; transform:translate(-50%,-50%); width:48px; height:48px; border-radius:50% 50% 50% 0; transform-origin:center; rotate:-45deg; background:var(--navy); box-shadow:0 12px 28px rgba(11,31,73,.25); }
.map-pin::after { content:""; position:absolute; width:14px; height:14px; border-radius:50%; background:white; left:17px; top:17px; }
.map-label { position:absolute; left:50%; top:63%; transform:translateX(-50%); background:white; border:1px solid var(--line); border-radius:14px; box-shadow:0 12px 25px rgba(11,31,73,.1); padding:12px 16px; text-align:center; min-width:240px; color:var(--navy); font-size:13px; font-weight:750; }

.cta { border-radius:30px; padding:44px; background:linear-gradient(135deg,#0b1f49,#164f7f); color:white; display:flex; align-items:center; justify-content:space-between; gap:30px; overflow:hidden; position:relative; }
.cta::after { content:""; position:absolute; width:260px; height:260px; border:1px solid rgba(255,255,255,.12); border-radius:50%; right:-70px; top:-90px; }
.cta h3 { position:relative; z-index:1; margin:0 0 10px; font:700 30px/1.1 Georgia,serif; }
.cta p { position:relative; z-index:1; margin:0; color:#c8d9ea; max-width:720px; }
.cta .btn { position:relative; z-index:1; flex:0 0 auto; }

.site-footer { background:#06152f; color:#c5d2e2; padding:56px 0 24px; }
.footer-grid { display:grid; grid-template-columns:1.4fr .7fr .7fr .9fr; gap:42px; }
.footer-brand strong { color:white; font:700 24px/1 Georgia,serif; letter-spacing:.08em; }
.footer-brand p { color:#93a8c1; max-width:390px; font-size:13px; }
.site-footer h4 { color:white; margin:0 0 14px; font-size:13px; text-transform:uppercase; letter-spacing:.1em; }
.site-footer a { display:block; color:#9fb2c8; font-size:13px; margin:7px 0; }
.site-footer a:hover { color:white; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:38px; padding-top:20px; border-top:1px solid rgba(255,255,255,.1); color:#7f95ad; font-size:11px; }

.notice { padding:14px 16px; border-radius:14px; background:#fff8e8; color:#755c23; border:1px solid #f1dfb7; font-size:13px; }
.empty-state { display:none; padding:32px; text-align:center; color:var(--muted); border:1px dashed var(--line); border-radius:18px; }

@media (max-width: 1050px) {
  .nav-toggle { display:block; }
  .nav-links { display:none; position:absolute; left:20px; right:20px; top:88px; padding:12px; background:white; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); flex-direction:column; align-items:stretch; }
  .nav-links.open { display:flex; }
  .nav-links a { padding:11px 13px; }
  .hero-grid { grid-template-columns:1fr; gap:40px; min-height:auto; padding:70px 0; }
  .network-card { margin:0; width:min(480px,100%); }
  .grid-4 { grid-template-columns:repeat(2,1fr); }
  .project-grid, .grid-3 { grid-template-columns:repeat(2,1fr); }
  .two-col-layout { grid-template-columns:1fr; }
  .sidebar { position:static; }
  .footer-grid { grid-template-columns:1.2fr 1fr 1fr; }
  .footer-grid > div:last-child { grid-column:1/-1; }
}
@media (max-width: 720px) {
  .container { width:min(var(--max), calc(100% - 28px)); }
  .brand-text span { display:none; }
  .hero-grid { padding:55px 0 60px; }
  .hero h1 { font-size:46px; }
  .hero-lead { font-size:16px; }
  .network-card { aspect-ratio:auto; height:390px; }
  .section { padding:66px 0; }
  .section-head { display:block; }
  .section-head .text-link { display:inline-block; margin-top:14px; }
  .grid-2, .grid-3, .grid-4, .project-grid, .contact-grid { grid-template-columns:1fr; }
  .stat-strip { grid-template-columns:repeat(2,1fr); }
  .pub-row { grid-template-columns:60px 1fr; }
  .pub-arrow { display:none; }
  .page-hero { padding:48px 0 42px; }
  .cta { display:block; padding:34px 26px; }
  .cta .btn { margin-top:22px; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > div:first-child, .footer-grid > div:last-child { grid-column:1/-1; }
  .footer-bottom { display:block; }
  .footer-bottom span { display:block; margin:6px 0; }
  .logo-cloud { grid-template-columns:repeat(2,1fr); }
}

/* --- Home hero slider · v0.2 --- */
.hero-slider { position:relative; overflow:hidden; background:#071a3d; }
.hero-slider::before { z-index:0; }
.hero-viewport { position:relative; display:grid; }
.hero-slide {
  grid-area:1 / 1;
  position:relative;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:scale(1.012);
  transition:opacity .7s ease, transform .9s cubic-bezier(.2,.7,.2,1), visibility .7s;
}
.hero-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; transform:scale(1); z-index:2; }
.hero-slide .hero-grid { z-index:2; }
.hero-slide::before,
.hero-slide::after { content:""; position:absolute; pointer-events:none; }
.slide-identity { background:linear-gradient(135deg,#071a3d 0%,#0d2f68 60%,#124778 100%); }
.slide-identity::before { width:540px; height:540px; right:-90px; top:-150px; border-radius:50%; background:radial-gradient(circle,rgba(30,164,201,.18),transparent 67%); }
.slide-federated { background:linear-gradient(135deg,#071a3d 0%,#112b5c 48%,#153f67 100%); }
.slide-federated::before { inset:0; background:linear-gradient(120deg,transparent 0 55%,rgba(30,164,201,.06) 55% 56%,transparent 56% 68%,rgba(142,223,240,.05) 68% 69%,transparent 69%); }
.slide-sciml { background:linear-gradient(135deg,#071a3d 0%,#18365b 52%,#245364 100%); }
.slide-sciml::before { width:650px; height:650px; right:-180px; bottom:-360px; border:1px solid rgba(142,223,240,.12); border-radius:50%; box-shadow:0 0 0 80px rgba(142,223,240,.025),0 0 0 160px rgba(142,223,240,.018); }
.hero-slide .hero-copy > * { transform:translateY(18px); opacity:.2; transition:transform .7s ease, opacity .7s ease; }
.hero-slide.is-active .hero-copy > * { transform:translateY(0); opacity:1; }
.hero-slide.is-active .hero-copy > *:nth-child(2){transition-delay:.05s}.hero-slide.is-active .hero-copy > *:nth-child(3){transition-delay:.10s}.hero-slide.is-active .hero-copy > *:nth-child(4){transition-delay:.15s}.hero-slide.is-active .hero-copy > *:nth-child(5){transition-delay:.20s}
.slider-controls { position:absolute; z-index:10; left:50%; bottom:28px; transform:translateX(-50%); display:flex; align-items:center; justify-content:space-between; pointer-events:none; }
.slider-dots,.slider-arrows { display:flex; align-items:center; gap:9px; pointer-events:auto; }
.slider-dot { width:10px; height:10px; padding:0; border:0; border-radius:999px; background:rgba(255,255,255,.35); cursor:pointer; transition:.25s ease; box-shadow:0 0 0 1px rgba(255,255,255,.08); }
.slider-dot:hover { background:rgba(255,255,255,.7); }
.slider-dot.is-active { width:34px; background:#fff; }
.slider-arrow { width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.22); background:rgba(7,21,47,.38); backdrop-filter:blur(8px); color:white; display:grid; place-items:center; cursor:pointer; font-size:20px; line-height:1; transition:.2s ease; }
.slider-arrow:hover { background:white; color:var(--navy); transform:translateY(-2px); }
.slider-progress { position:absolute; z-index:11; left:0; right:0; bottom:0; height:3px; background:rgba(255,255,255,.08); overflow:hidden; }
.slider-progress span { display:block; height:100%; width:0; background:linear-gradient(90deg,var(--cyan),#8edff0); }
.slider-progress span.is-running { animation:sliderProgress 6.5s linear forwards; }
@keyframes sliderProgress { from{width:0} to{width:100%} }

/* Federated-learning visual */
.federated-visual { position:relative; width:min(480px,100%); aspect-ratio:1/1; margin-left:auto; border:1px solid rgba(255,255,255,.16); border-radius:36px; background:radial-gradient(circle at 50% 50%,rgba(30,164,201,.11),transparent 34%),rgba(255,255,255,.045); box-shadow:0 30px 80px rgba(0,0,0,.2); overflow:hidden; }
.federated-visual::before { content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1px); background-size:28px 28px; opacity:.22; mask-image:radial-gradient(circle at center,#000,transparent 73%); }
.fl-orbit { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); border:1px dashed rgba(142,223,240,.24); border-radius:50%; }
.fl-orbit-1 { width:62%; height:62%; }
.fl-orbit-2 { width:84%; height:84%; border-style:solid; border-color:rgba(255,255,255,.08); }
.fl-server { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:150px; height:150px; border-radius:32px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:linear-gradient(145deg,#fff,#e8f8fc); color:var(--navy); box-shadow:0 20px 50px rgba(0,0,0,.25); z-index:4; }
.fl-server-icon { width:48px; height:48px; border-radius:15px; display:grid; place-items:center; margin-bottom:9px; color:white; background:linear-gradient(135deg,var(--navy-2),var(--cyan)); font-weight:850; letter-spacing:.05em; }
.fl-server strong { font-size:14px; }
.fl-server small { margin-top:3px; color:#6e7f93; font-size:10px; }
.fl-client { position:absolute; z-index:5; width:110px; min-height:80px; padding:12px; border-radius:18px; background:rgba(7,21,47,.9); border:1px solid rgba(255,255,255,.18); color:white; box-shadow:0 10px 24px rgba(0,0,0,.16); }
.fl-client span { display:block; width:24px; height:17px; border:2px solid #8edff0; border-radius:4px; margin-bottom:8px; position:relative; }
.fl-client span::after { content:""; position:absolute; width:10px; height:2px; background:#8edff0; left:5px; bottom:-5px; }
.fl-client strong { display:block; font-size:11px; }.fl-client small{display:block;color:#a9bfd3;font-size:9px;margin-top:2px}
.fc1{left:8%;top:12%}.fc2{right:7%;top:17%}.fc3{left:7%;bottom:13%}.fc4{right:8%;bottom:10%}
.fl-pulse { position:absolute; z-index:2; width:7px; height:7px; border-radius:50%; background:#8edff0; box-shadow:0 0 14px #8edff0; }
.fp1{left:30%;top:33%;animation:flPulse1 3.8s linear infinite}.fp2{right:29%;top:36%;animation:flPulse2 4.2s linear infinite}.fp3{left:29%;bottom:31%;animation:flPulse3 4.6s linear infinite}.fp4{right:28%;bottom:29%;animation:flPulse4 4s linear infinite}
@keyframes flPulse1{50%{left:46%;top:47%}}@keyframes flPulse2{50%{right:45%;top:48%}}@keyframes flPulse3{50%{left:46%;bottom:47%}}@keyframes flPulse4{50%{right:45%;bottom:47%}}

/* Scientific-ML / Digital-Twin visual */
.twin-visual { position:relative; width:min(480px,100%); aspect-ratio:1/1; margin-left:auto; border:1px solid rgba(255,255,255,.16); border-radius:36px; background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025)); box-shadow:0 30px 80px rgba(0,0,0,.2); overflow:hidden; }
.twin-visual::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px); background-size:34px 34px; mask-image:linear-gradient(to bottom,#000,transparent); }
.twin-ring { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%) rotate(-18deg); border:1px solid rgba(142,223,240,.24); border-radius:50%; }
.tr1{width:78%;height:48%}.tr2{width:58%;height:76%;transform:translate(-50%,-50%) rotate(35deg);border-style:dashed}.tr3{width:88%;height:88%;border-color:rgba(255,255,255,.08)}
.twin-core { position:absolute; z-index:5; left:50%; top:50%; transform:translate(-50%,-50%); width:145px; height:145px; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:radial-gradient(circle at 35% 30%,#f7feff,#cceef5); color:var(--navy); box-shadow:0 18px 50px rgba(0,0,0,.25); }
.twin-core span { font:700 34px/1 Georgia,serif; color:var(--cyan); }.twin-core strong{font-size:13px;letter-spacing:.12em}.twin-core small{font-size:9px;color:#6b7c90;margin-top:2px}
.twin-card { position:absolute; z-index:6; min-width:126px; padding:12px 14px; border-radius:16px; background:rgba(7,21,47,.88); border:1px solid rgba(255,255,255,.16); box-shadow:0 10px 28px rgba(0,0,0,.18); display:flex; align-items:center; gap:9px; }
.twin-card b { width:28px; height:28px; border-radius:9px; display:grid; place-items:center; flex:0 0 auto; background:rgba(142,223,240,.13); color:#8edff0; font-size:9px; }.twin-card span{color:white;font-size:10px;font-weight:700}
.tc1{left:6%;top:12%}.tc2{right:6%;top:18%}.tc3{left:8%;bottom:13%}.tc4{right:7%;bottom:10%}
.equation { position:absolute; z-index:3; padding:7px 10px; border-radius:10px; color:#cde9f2; background:rgba(7,21,47,.42); border:1px solid rgba(255,255,255,.08); font:italic 12px/1.2 Georgia,serif; }
.eq1{left:24%;top:32%;transform:rotate(-7deg)}.eq2{right:19%;bottom:31%;transform:rotate(6deg)}

@media (max-width:1050px) {
  .slider-controls { bottom:18px; }
  .federated-visual,.twin-visual { margin:0; width:min(480px,100%); }
}
@media (max-width:720px) {
  .hero-slider .hero-grid { padding-bottom:86px; }
  .slider-controls { bottom:19px; }
  .slider-arrow { width:38px; height:38px; }
  .federated-visual,.twin-visual { height:360px; aspect-ratio:auto; }
  .fl-server { width:122px; height:122px; border-radius:26px; }
  .fl-client { width:92px; min-height:70px; padding:10px; }
  .fc1{left:5%;top:9%}.fc2{right:4%;top:13%}.fc3{left:4%;bottom:10%}.fc4{right:5%;bottom:8%}
  .twin-core { width:122px; height:122px; }
  .twin-card { min-width:108px; padding:9px; }
  .tc1{left:4%;top:9%}.tc2{right:4%;top:14%}.tc3{left:5%;bottom:10%}.tc4{right:4%;bottom:8%}
  .equation { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-slide,.hero-slide .hero-copy > * { transition:none!important; }
  .fl-pulse,.slider-progress span.is-running { animation:none!important; }
}


/* ==============================
   v0.3 — real content & media
   ============================== */
.brand-v03 { min-width: 248px; }
.brand-v03 .brand-text em { display:block; margin-top:4px; color:#8a98aa; font-style:normal; font-size:9px; letter-spacing:.075em; text-transform:uppercase; }
.institutional-strip { border-bottom:1px solid var(--line); background:#fff; }
.institutional-grid { min-height:126px; display:grid; grid-template-columns:.8fr 1.2fr; gap:36px; align-items:center; padding:22px 0; }
.institutional-copy { display:flex; flex-direction:column; gap:3px; }
.institutional-copy strong { color:var(--navy); font:700 20px/1.2 Georgia,serif; }
.institutional-copy > span:last-child { color:var(--muted); font-size:13px; }
.legacy-logo-card { min-height:82px; border:1px solid var(--line); border-radius:16px; display:grid; place-items:center; padding:10px 16px; background:#fff; overflow:hidden; position:relative; }
.legacy-logo-card img { max-height:76px; width:auto; object-fit:contain; position:relative; z-index:2; background:#fff; }
.legacy-logo-fallback { color:var(--navy); font:700 20px Georgia,serif; letter-spacing:.08em; position:absolute; }

.people-grid { align-items:stretch; }
.person-card-photo { transition:.22s ease; }
.person-card-photo:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.photo-avatar { width:132px; height:132px; display:grid; place-items:center; margin:0 auto 20px; border-radius:50%; color:#fff; background:linear-gradient(135deg,var(--navy-2),var(--cyan)); font:700 30px/1 Georgia,serif; position:relative; overflow:hidden; box-shadow:0 10px 30px rgba(11,31,73,.15), inset 0 0 0 5px rgba(255,255,255,.2); }
.photo-avatar span { position:relative; z-index:0; }
.photo-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:1; }
.home-photo-avatar { width:108px; height:108px; }
.person-card p strong { color:#41536b; font-weight:750; }

.research-media-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.research-media-card { background:#fff; border:1px solid var(--line); border-radius:24px; overflow:hidden; box-shadow:0 8px 28px rgba(11,31,73,.05); transition:.22s ease; }
.research-media-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.research-media-img { height:230px; display:grid; place-items:center; position:relative; overflow:hidden; background:linear-gradient(135deg,#edf6fb,#e8eff8); }
.research-media-img img { width:100%; height:100%; object-fit:contain; padding:22px; }
.research-media-img.research-app img { object-fit:cover; padding:0; }
.research-media-img.research-sciml img { object-fit:contain; padding:8px; }
.research-media-body { padding:24px 26px 28px; }
.research-media-body .research-icon { margin-bottom:18px; }
.research-media-body h3 { margin:0 0 10px; color:var(--navy); font-size:21px; }
.research-media-body p { margin:0; color:var(--muted); font-size:14px; }
.abstract-generative, .abstract-hpc { isolation:isolate; background:radial-gradient(circle at 70% 25%,rgba(30,164,201,.35),transparent 27%),linear-gradient(135deg,#081b41,#184d7c); color:#fff; }
.abstract-generative::before, .abstract-hpc::before { content:""; position:absolute; width:200px; height:200px; border:1px solid rgba(255,255,255,.25); border-radius:50%; }
.abstract-generative::after { content:"AI"; position:absolute; font:700 120px Georgia,serif; opacity:.06; }
.abstract-hpc::after { content:"∑"; position:absolute; font:700 145px Georgia,serif; opacity:.08; }
.abstract-generative span, .abstract-hpc span { font:700 36px Georgia,serif; letter-spacing:.08em; position:relative; z-index:2; }
.figure-card { background:#fff; border:1px solid var(--line); border-radius:24px; padding:18px; overflow:hidden; box-shadow:0 10px 35px rgba(11,31,73,.07); }
.figure-card img { width:100%; max-height:350px; object-fit:contain; border-radius:14px; background:#f8fafc; }
.figure-card small { display:block; color:var(--muted); margin-top:12px; font-size:11px; line-height:1.4; }

.project-media { min-height:190px; position:relative; overflow:hidden; background:linear-gradient(140deg,#081c42,#174c7c); }
.project-media-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.project-media-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,13,30,.02) 20%,rgba(4,13,30,.78) 100%); }
.project-media-overlay { position:absolute; inset:0; z-index:3; }
.project-media-overlay .project-chip { z-index:3; text-shadow:0 2px 10px rgba(0,0,0,.4); }
.project-media-overlay .project-code { z-index:3; text-shadow:0 3px 16px rgba(0,0,0,.6); }

.news-card { min-height:100%; }
.news-media { height:210px; position:relative; overflow:hidden; background:linear-gradient(135deg,#0b1f49,#1769aa); display:grid; place-items:center; }
.news-media img { width:100%; height:100%; object-fit:cover; }
.news-media.federated-news { background:#f7f9fc; }
.news-media.federated-news img { object-fit:contain; padding:20px; }
.compact-news .card-body { min-height:190px; }

@media (max-width: 1120px) {
  .brand-v03 .brand-text em { display:none; }
}
@media (max-width: 1050px) {
  .research-media-grid { grid-template-columns:repeat(2,1fr); }
  .institutional-grid { grid-template-columns:1fr; gap:14px; padding:20px 0; }
  .legacy-logo-card { min-height:70px; }
}
@media (max-width: 720px) {
  .brand-v03 { min-width:0; }
  .brand-v03 .brand-text span, .brand-v03 .brand-text em { display:none; }
  .research-media-grid { grid-template-columns:1fr; }
  .research-media-img { height:210px; }
  .legacy-logo-card img { max-height:58px; }
  .institutional-copy strong { font-size:18px; }
}

/* ==============================
   v0.4 — shorter slider + original round logo
   ============================== */
.brand-logo {
  width: 48px;
  height: 48px;
  object-fit: contain;
  flex: 0 0 auto;
}
.brand-v03 { gap: 12px; }
.hero-slider {
  background: linear-gradient(135deg, #06152f 0%, #0d2b59 58%, #11466f 100%);
}
.hero-grid {
  min-height: clamp(430px, 64vh, 540px);
  grid-template-columns: .9fr 1.1fr;
  align-items: center;
  gap: 40px;
  padding: 48px 0 84px;
}
.hero h1 {
  margin: 16px 0 18px;
  font-size: clamp(40px, 5.3vw, 70px);
  max-width: 640px;
}
.hero-lead {
  max-width: 620px;
  font-size: 17px;
  line-height: 1.7;
}
.hero-actions { margin-top: 28px; }
.hero-meta { gap: 22px; padding-top: 18px; margin-top: 20px; }
.hero-grid-visual { grid-template-columns: .88fr 1.12fr; }
.hero-media-panel {
  position: relative;
  height: 350px;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  box-shadow: 0 24px 60px rgba(0,0,0,.22);
}
.hero-media-panel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-media-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5,12,28,.02) 20%, rgba(5,12,28,.55) 100%);
}
.hero-media-contain img { object-fit: contain; background: rgba(255,255,255,.9); }
.hero-media-contain::after { background: linear-gradient(180deg, rgba(5,12,28,.00) 0%, rgba(5,12,28,.32) 100%); }
.hero-media-overlay {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 16px;
  z-index: 3;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
}
.hero-media-overlay strong {
  color: #fff;
  font: 700 28px/1 Georgia, 'Times New Roman', serif;
  letter-spacing: .04em;
  text-shadow: 0 4px 16px rgba(0,0,0,.5);
}
.hero-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(7,21,47,.72);
  color: #d9eff7;
  border: 1px solid rgba(255,255,255,.16);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
}
.slide-tuai::before,
.slide-flint::before,
.slide-gandalf::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.slide-tuai::before { background: radial-gradient(circle at 82% 18%, rgba(206,145,187,.22), transparent 22%); }
.slide-flint::before { background: radial-gradient(circle at 80% 22%, rgba(255,176,90,.18), transparent 20%); }
.slide-gandalf::before { background: radial-gradient(circle at 84% 18%, rgba(142,223,240,.18), transparent 20%); }
.slider-controls { bottom: 24px; }
.slider-progress { bottom: 0; }
.institutional-grid { min-height: 112px; }
.legacy-logo-card img { max-height: 72px; }

@media (max-width: 1050px) {
  .hero-grid,
  .hero-grid-visual {
    grid-template-columns: 1fr;
    min-height: auto;
    gap: 24px;
    padding: 42px 0 84px;
  }
  .hero-media-panel {
    margin: 0;
    height: 290px;
  }
}
@media (max-width: 720px) {
  .brand-logo { width: 42px; height: 42px; }
  .hero-grid,
  .hero-grid-visual { padding: 34px 0 82px; gap: 20px; }
  .hero h1 { font-size: clamp(32px, 9.6vw, 46px); }
  .hero-lead { font-size: 15px; line-height: 1.6; }
  .hero-media-panel { height: 220px; border-radius: 22px; }
  .hero-media-overlay { left: 12px; right: 12px; bottom: 12px; }
  .hero-chip { font-size: 9px; padding: 7px 10px; letter-spacing: .08em; }
  .hero-media-overlay strong { font-size: 20px; }
  .hero-meta { gap: 16px; }
  .legacy-logo-card img { max-height: 56px; }
}

/* ==============================
   v0.5 — slider correction + richer research visuals
   ============================== */
.hero-photo-panel img { object-fit: cover; }
.research-genai img,
.research-hpc img {
  object-fit: cover;
  padding: 0;
}
.figure-card img[src$="generative-ai.png"],
.figure-card img[src$="hpc.png"] {
  object-fit: cover;
  max-height: 320px;
}

/* ==============================
   v0.7 — 28/72 hero, local media, page cleanup
   ============================== */
.hero-slider-v07 .hero-grid-v07 {
  grid-template-columns: minmax(250px, 28fr) minmax(0, 72fr);
  gap: 30px;
  min-height: 390px;
  padding: 38px 0 72px;
}
.hero-slider-v07 .hero-copy-v07 h1 {
  margin: 14px 0 16px;
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.02;
  max-width: 430px;
}
.hero-slider-v07 .hero-copy-v07 .hero-lead {
  max-width: 410px;
  font-size: 15px;
  line-height: 1.62;
}
.hero-slider-v07 .hero-copy-v07 .hero-actions { margin-top: 24px; }
.hero-slider-v07 .hero-media-v07 {
  width: 100%;
  height: auto;
  aspect-ratio: 2048 / 716;
  border-radius: 22px;
  overflow: hidden;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 22px 54px rgba(0,0,0,.20);
}
.hero-slider-v07 .hero-media-v07 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.hero-slider-v07 .hero-media-light { background: #fff; }
.hero-slider-v07 .slider-controls { bottom: 20px; }

.home-people-layout {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 28px;
  align-items: stretch;
}
.home-group-photo {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid var(--line);
  box-shadow: 0 12px 38px rgba(11,31,73,.08);
  background: var(--soft);
}
.home-group-photo img {
  width: 100%;
  height: 100%;
  min-height: 330px;
  object-fit: cover;
}
.home-people-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  padding: 8px 4px;
}
.home-person-line {
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
}
.home-person-line:first-child { border-top: 1px solid var(--line); }
.home-person-line strong {
  display: block;
  color: var(--navy);
  font-size: 16px;
  margin-bottom: 4px;
}
.home-person-line span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.home-people-copy > .text-link { margin-top: 18px; }

.people-wide-photo { padding: 34px 0 0; background: #fff; }
.people-wide-photo-frame {
  position: relative;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid var(--line);
  box-shadow: 0 18px 50px rgba(11,31,73,.10);
  background: var(--soft);
}
.people-wide-photo-frame > img {
  width: 100%;
  aspect-ratio: 1600 / 560;
  object-fit: cover;
}
.people-wide-caption {
  display: grid;
  grid-template-columns: .55fr 1.45fr;
  gap: 22px;
  align-items: center;
  padding: 18px 22px;
  background: #fff;
}
.people-wide-caption strong { color: var(--navy); font-size: 16px; }
.people-wide-caption span { color: var(--muted); font-size: 13px; }
.people-grid .photo-avatar img { object-fit: cover; }

.project-tools-section {
  background: #fff;
  border-bottom: 1px solid var(--line);
  padding: 22px 0;
}
.project-tools-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
}
.project-tools-intro div { display: flex; flex-direction: column; gap: 3px; }
.project-tools-intro strong { color: var(--navy); font: 700 20px/1.25 Georgia,serif; }
.project-tools-intro > span { color: var(--muted); font-size: 13px; }
.project-section { padding-top: 46px; }
.project-item { transition: transform .2s ease, box-shadow .2s ease; }
.project-item:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.project-item-featured { border-color: #cbdbe9; }
.project-media-project { min-height: 178px; }
.project-media-project img { object-fit: cover; }
.project-media-project.project-media-contain img { object-fit: contain; background: #fff; padding: 8px; }
.project-media-project.project-media-contain::after { background: linear-gradient(180deg,rgba(4,13,30,0) 10%,rgba(4,13,30,.56) 100%); }

@media (max-width: 1050px) {
  .hero-slider-v07 .hero-grid-v07 {
    grid-template-columns: 1fr;
    gap: 22px;
    min-height: auto;
    padding: 34px 0 74px;
  }
  .hero-slider-v07 .hero-copy-v07 h1 { max-width: 720px; }
  .hero-slider-v07 .hero-copy-v07 .hero-lead { max-width: 680px; }
  .home-people-layout { grid-template-columns: 1fr; }
  .home-group-photo img { min-height: 0; aspect-ratio: 1600 / 560; }
}
@media (max-width: 720px) {
  .hero-slider-v07 .hero-grid-v07 { padding: 28px 0 70px; }
  .hero-slider-v07 .hero-copy-v07 h1 { font-size: clamp(30px, 9vw, 42px); }
  .hero-slider-v07 .hero-media-v07 { border-radius: 16px; }
  .people-wide-photo { padding-top: 22px; }
  .people-wide-photo-frame { border-radius: 18px; }
  .people-wide-caption { grid-template-columns: 1fr; gap: 4px; padding: 14px 16px; }
  .project-tools-intro { display: grid; gap: 8px; }
}
.home-group-photo { display:grid; place-items:center; }
.home-group-photo img {
  min-height: 0;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
}
.people-wide-photo-frame > img {
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
  background: var(--soft);
}


/* ==============================
   v0.8 — two-slide hero, strict 28/72 layout, no overlap
   ============================== */
.hero-slider-v08 .hero-grid-v08 {
  display: grid;
  grid-template-columns: minmax(0, 28fr) minmax(0, 72fr);
  gap: 24px;
  align-items: center;
  min-height: 350px;
  padding: 30px 0 66px;
}
.hero-slider-v08 .hero-copy-v08,
.hero-slider-v08 .hero-media-v08 {
  min-width: 0;
  max-width: 100%;
}
.hero-slider-v08 .hero-copy-v08 {
  overflow: hidden;
}
.hero-slider-v08 .hero-copy-v08 h1 {
  margin: 12px 0 14px;
  max-width: 100%;
  font-size: clamp(28px, 3.2vw, 43px);
  line-height: 1.04;
  overflow-wrap: normal;
  word-break: normal;
}
.hero-slider-v08 .hero-copy-v08 .hero-lead {
  margin: 0;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.55;
}
.hero-slider-v08 .hero-copy-v08 .hero-actions {
  margin-top: 20px;
}
.hero-slider-v08 .hero-media-v08 {
  width: 100%;
  aspect-ratio: 2048 / 716;
  height: auto;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 20px 50px rgba(0,0,0,.20);
  background: #fff;
}
.hero-slider-v08 .hero-media-v08 img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.hero-slider-v08 .slider-controls { bottom: 18px; }

@media (max-width: 1050px) {
  .hero-slider-v08 .hero-grid-v08 {
    grid-template-columns: minmax(0, 32fr) minmax(0, 68fr);
    gap: 20px;
  }
  .hero-slider-v08 .hero-copy-v08 h1 {
    font-size: clamp(27px, 3.5vw, 38px);
  }
}
@media (max-width: 820px) {
  .hero-slider-v08 .hero-grid-v08 {
    grid-template-columns: 1fr;
    gap: 20px;
    min-height: auto;
    padding: 30px 0 70px;
  }
  .hero-slider-v08 .hero-copy-v08 { overflow: visible; }
  .hero-slider-v08 .hero-copy-v08 h1 { max-width: 680px; }
  .hero-slider-v08 .hero-copy-v08 .hero-lead { max-width: 620px; }
}
@media (max-width: 520px) {
  .hero-slider-v08 .hero-grid-v08 { padding-top: 24px; }
  .hero-slider-v08 .hero-copy-v08 h1 { font-size: 31px; }
  .hero-slider-v08 .hero-media-v08 { border-radius: 14px; }
}

/* ==============================
   v1.1 — full-text static migration
   ============================== */
.nav-item { position: relative; }
.nav-menu-button {
  border: 0; background: transparent; color: #34435a; cursor: pointer;
  padding: 11px 10px; border-radius: 10px; font-size: 14px; font-weight: 650;
}
.nav-menu-button::after { content: "▾"; margin-left: 5px; font-size: 10px; opacity: .6; }
.nav-menu-button:hover, .nav-menu-button.active-parent { background: var(--soft); color: var(--navy); }
.nav-submenu {
  position: absolute; z-index: 1200; top: calc(100% + 8px); left: 0; min-width: 220px;
  list-style: none; margin: 0; padding: 9px; border: 1px solid var(--line); border-radius: 16px;
  background: #fff; box-shadow: var(--shadow); opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: .16s ease;
}
.nav-submenu-wide { min-width: 245px; }
.nav-submenu li { margin: 0; }
.nav-submenu a { padding: 9px 11px !important; border-radius: 9px; font-size: 13px !important; }
.has-submenu:hover > .nav-submenu,
.has-submenu:focus-within > .nav-submenu,
.has-submenu.open-submenu > .nav-submenu { opacity: 1; visibility: visible; transform: translateY(0); }

.research-v10-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; }
.research-v10-card {
  display: block; background: #fff; border: 1px solid var(--line); border-radius: 24px; overflow: hidden;
  box-shadow: 0 8px 28px rgba(11,31,73,.05); transition: .22s ease; min-width: 0;
}
.research-v10-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); color: inherit; }
.research-v10-card > img { width: 100%; aspect-ratio: 16/10; object-fit: cover; background: #071a3d; }
.research-v10-card > div { padding: 24px 25px 27px; }
.research-v10-card h3 { margin: 6px 0 10px; color: var(--navy); font-size: 21px; }
.research-v10-card p { margin: 0 0 12px; color: var(--muted); font-size: 14px; }
.research-num { font-size: 11px; letter-spacing: .13em; color: var(--cyan); font-weight: 800; }

.side-card { background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: 22px; margin-top: 18px; }
.side-card h4 { margin: 0 0 10px; color: var(--navy); }
.side-card a { display: block; color: var(--blue); font-weight: 700; margin-top: 8px; }
.side-card p { color: var(--muted); margin: 0; }
.predico-card { background: linear-gradient(145deg,#071a3d,#164b7e); color: white; }
.predico-card p { color: #d7e7f5; margin: 8px 0 20px; }
.predico-mark { display:block; font: 700 42px/1 Georgia,serif; color:#fff; letter-spacing:.02em; }

.events-v10-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; }
.event-card-v10 { display:block; border:1px solid var(--line); border-radius:22px; padding:26px; background:#fff; transition:.2s ease; }
.event-card-v10:hover { transform: translateY(-4px); box-shadow: var(--shadow); color: inherit; }
.event-card-v10 h3 { margin:10px 0; color:var(--navy); font-size:22px; }
.event-card-v10 p { color:var(--muted); margin:0 0 12px; }
.event-date-v10 { font-weight:800; color:var(--blue); margin-bottom:10px; }

.collab-logo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.collab-logo-card { border:1px solid var(--line); border-radius:20px; min-height:160px; padding:18px; background:#fff; display:grid; grid-template-rows:1fr auto; align-items:center; gap:10px; }
.collab-logo-card img { width:100%; height:105px; object-fit:contain; }
.collab-logo-card span { text-align:center; color:#55667a; font-size:12px; font-weight:700; }
.collab-partners { grid-template-columns:repeat(4,minmax(0,1fr)); }

.news-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.news-archive-card { min-height:100%; }
.news-archive-card h3 { margin-top:14px; }

.prose ul { color: var(--muted); padding-left: 20px; }
.prose li { margin: 7px 0; }

@media (max-width: 1180px) {
  .nav-wrap { gap: 16px; }
  .nav-links { gap: 1px; }
  .nav-links > li > a, .nav-menu-button { padding: 10px 7px; font-size: 13px; }
  .brand-v03 { min-width: 220px; }
}
@media (max-width: 1050px) {
  .research-v10-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .collab-logo-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .news-archive-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .nav-links { overflow: visible; }
  .nav-item { width: 100%; }
  .nav-menu-button { width: 100%; text-align: left; padding: 11px 13px; }
  .nav-submenu {
    position: static; min-width: 0; width: 100%; box-shadow: none; border: 0; border-left: 2px solid var(--line);
    border-radius: 0; margin: 0 0 4px 12px; padding: 2px 0 2px 8px; opacity: 1; visibility: visible;
    transform: none; display: none; background: transparent;
  }
  .has-submenu.open-submenu > .nav-submenu { display:block; }
  .has-submenu:hover > .nav-submenu:not(.force-open) { display:none; }
  .has-submenu.open-submenu:hover > .nav-submenu { display:block; }
}
@media (max-width: 720px) {
  .research-v10-grid, .events-v10-grid, .collab-logo-grid, .collab-partners, .news-archive-grid { grid-template-columns:1fr; }
}
@media (max-width: 1050px) {
  .nav-item { width:100%; }
  .nav-menu-button { width:100%; text-align:left; padding:11px 13px; }
  .nav-submenu {
    position:static; min-width:0; width:100%; box-shadow:none; border:0; border-left:2px solid var(--line);
    border-radius:0; margin:0 0 4px 12px; padding:2px 0 2px 8px; opacity:1; visibility:visible;
    transform:none; display:none; background:transparent;
  }
  .has-submenu.open-submenu > .nav-submenu { display:block; }
  .has-submenu:hover > .nav-submenu:not(.force-open) { display:none; }
  .has-submenu.open-submenu:hover > .nav-submenu { display:block; }
}
.map-embed { min-height: 430px; border:1px solid var(--line); border-radius:24px; overflow:hidden; background:var(--soft); position:relative; }
.map-embed iframe { width:100%; min-height:430px; border:0; display:block; }
.map-offline-note { padding:10px 14px; font-size:11px; color:var(--muted); background:#fff; border-top:1px solid var(--line); }
.person-link { display:inline-flex; margin-top:12px; font-size:12px; font-weight:800; color:var(--blue); }


/* v1.1 — full-text migration */
.longform h4{margin:28px 0 8px;color:var(--navy);font-size:18px}.longform ul{color:var(--muted);padding-left:22px}.longform li{margin:7px 0}.wide-prose{max-width:980px}.figure-caption{font-size:12px;color:#7c8aa0;font-style:italic;border-left:3px solid var(--cyan);padding-left:12px}.two-column-list{columns:2;column-gap:38px}.two-column-list li{break-inside:avoid}.content-table{width:100%;border-collapse:collapse;font-size:13px}.content-table th,.content-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}.content-table th{color:var(--navy);background:var(--soft)}.table-wrap{overflow-x:auto;margin:18px 0 30px}.event-longform{margin:0 auto}.event-back{margin-top:34px}.predico-logo-panel{border:1px solid var(--line);border-radius:24px;background:#fff;padding:24px;box-shadow:var(--shadow)}.predico-logo-panel img{width:100%;height:auto}.predico-logo-panel p{color:var(--muted);font-size:13px}.social-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.social-strip-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.social-strip-inner strong{display:block;color:var(--navy);font:700 19px/1.3 Georgia,serif;margin-top:5px}.linkedin-btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;background:#0a66c2;color:#fff!important;padding:12px 18px;font-weight:800;white-space:nowrap}.linkedin-icon{width:26px;height:26px;border-radius:6px;display:grid;place-items:center;background:#fff;color:#0a66c2;font:bold 18px Arial}.linkedin-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(10,102,194,.2)}@media(max-width:720px){.two-column-list{columns:1}.social-strip-inner{align-items:flex-start;flex-direction:column;padding:20px 0}.linkedin-btn{width:100%;justify-content:center}}


/* ==============================
   v1.2 — 2026 updates + publication automation
   ============================== */
.pub-sync-panel{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:28px;align-items:stretch;padding:28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#fff,#f4f8fc);margin-bottom:18px}.pub-sync-panel h2{font-size:30px;margin:7px 0 10px}.pub-sync-panel p{margin:0;color:var(--muted)}.pub-sync-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pub-sync-facts>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 10px;border-radius:18px;background:#fff;border:1px solid var(--line);text-align:center}.pub-sync-facts strong{font-size:24px;color:var(--navy);line-height:1.05}.pub-sync-facts span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:7px}.pub-source-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 20px;color:var(--muted);font-size:13px}.pub-source-row a{padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--blue);font-weight:700}.pub-note code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95em}.pub-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap;background:#edf5f8;color:#255b6b}.pub-status.accepted{background:#fff3e8;color:#9a501c}.pub-status.early{background:#f2ecff;color:#62479d}.pub-doi{display:block;margin-top:5px;color:#8291a4;font-size:10px;word-break:break-all}.featured-event{border-color:#b9d9e6;background:linear-gradient(145deg,#fff,#f2faff)}.event-source{margin-top:28px}.btn-outline{background:#fff;border-color:var(--line);color:var(--navy)}.btn-outline:hover{color:var(--blue);box-shadow:0 8px 20px rgba(11,31,73,.08)}.news-archive-card .text-link{display:inline-flex;margin-top:16px}.news-card{color:inherit}.news-card:hover{color:inherit;transform:translateY(-4px);box-shadow:var(--shadow)}.pub-row:hover{color:inherit;background:rgba(255,255,255,.025)}
@media(max-width:900px){.pub-sync-panel{grid-template-columns:1fr}.pub-sync-facts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.pub-sync-facts{grid-template-columns:1fr}.pub-sync-facts>div{align-items:flex-start;text-align:left}.search-row{display:grid;grid-template-columns:1fr}.search-row .search-box{max-width:none!important}}

/* ==============================
   v1.3 — Research page redesign
   ============================== */
.research-page-v13 { background:#fff; }
.research-hero-v13 { position:relative; overflow:hidden; color:#fff; background:linear-gradient(135deg,#06142f 0%,#0a2755 55%,#0c456a 100%); }
.research-hero-v13::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 75% 22%,rgba(30,164,201,.2),transparent 22%),radial-gradient(circle at 22% 90%,rgba(235,125,50,.13),transparent 20%); pointer-events:none; }
.research-hero-v13-grid { position:relative; z-index:2; min-height:620px; display:grid; grid-template-columns:1.03fr .97fr; gap:64px; align-items:center; padding:72px 0 78px; }
.research-hero-copy-v13 h1 { margin:18px 0 24px; max-width:760px; font:700 clamp(50px,6vw,80px)/.98 Georgia,'Times New Roman',serif; letter-spacing:-.045em; }
.research-hero-copy-v13 h1 span { color:#8edff0; }
.research-hero-copy-v13 > p { max-width:710px; color:#d8e7f7; font-size:18px; line-height:1.72; }
.research-hero-actions-v13 { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
.research-signature-v13 { display:flex; flex-wrap:wrap; gap:8px; margin-top:32px; }
.research-signature-v13 span { padding:7px 10px; border:1px solid rgba(255,255,255,.16); border-radius:999px; color:#d8e7f7; background:rgba(255,255,255,.045); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.research-orbit-v13 { position:relative; aspect-ratio:1/1; width:min(500px,100%); margin-left:auto; border-radius:38px; border:1px solid rgba(255,255,255,.13); background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018)); box-shadow:0 30px 90px rgba(0,0,0,.18); overflow:hidden; }
.research-orbit-v13::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px); background-size:32px 32px; mask-image:linear-gradient(#000,transparent 90%); }
.orbit-ring-v13 { position:absolute; left:50%; top:50%; border-radius:50%; border:1px solid rgba(142,223,240,.18); transform:translate(-50%,-50%); }
.orbit-ring-a { width:72%; height:72%; }
.orbit-ring-b { width:48%; height:48%; border-style:dashed; transform:translate(-50%,-50%) rotate(26deg); }
.orbit-core-v13 { position:absolute; z-index:4; left:50%; top:50%; width:150px; height:150px; transform:translate(-50%,-50%); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:#fff; color:var(--navy); box-shadow:0 20px 60px rgba(0,0,0,.25); text-align:center; }
.orbit-core-v13 img { width:60px; height:60px; object-fit:contain; margin-bottom:5px; }
.orbit-core-v13 strong { font:700 17px/1 Georgia,serif; letter-spacing:.08em; }
.orbit-core-v13 small { margin-top:5px; font-size:8px; text-transform:uppercase; letter-spacing:.08em; color:#77879a; }
.orbit-node-v13 { position:absolute; z-index:5; min-width:112px; padding:9px 12px; border-radius:16px; text-align:center; color:#f2fbff; background:rgba(7,21,47,.84); border:1px solid rgba(255,255,255,.16); font-size:10px; font-weight:800; line-height:1.25; box-shadow:0 10px 30px rgba(0,0,0,.16); }
.orbit-node-v13::before { content:""; position:absolute; width:7px; height:7px; border-radius:50%; background:#8edff0; box-shadow:0 0 14px #8edff0; }
.orbit-node-v13.o1{left:7%;top:14%}.orbit-node-v13.o2{right:5%;top:14%}.orbit-node-v13.o3{left:1%;top:48%}.orbit-node-v13.o4{right:1%;top:48%}.orbit-node-v13.o5{left:10%;bottom:12%}.orbit-node-v13.o6{right:8%;bottom:11%}
.orbit-node-v13.o1::before,.orbit-node-v13.o3::before,.orbit-node-v13.o5::before{right:-4px;top:50%}.orbit-node-v13.o2::before,.orbit-node-v13.o4::before,.orbit-node-v13.o6::before{left:-4px;top:50%}
.orbit-impact-v13 { position:absolute; z-index:3; color:#82d8eb; opacity:.72; font-size:8px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.oi1{left:37%;top:8%}.oi2{right:6%;top:36%}.oi3{left:7%;bottom:34%}.oi4{left:40%;bottom:5%}

.research-head-v13 { align-items:flex-end; }
.research-distinctive-v13 { background:#fff; }
.distinctive-grid-v13 { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.distinctive-grid-v13 article { position:relative; min-height:260px; padding:26px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(180deg,#fff,#f8fbfe); overflow:hidden; }
.distinctive-grid-v13 article::after { content:""; position:absolute; width:110px; height:110px; border-radius:50%; right:-56px; bottom:-56px; background:rgba(30,164,201,.08); }
.distinctive-grid-v13 article > span { display:inline-flex; color:var(--cyan); font-size:11px; font-weight:900; letter-spacing:.12em; }
.distinctive-grid-v13 h3 { color:var(--navy); font-size:20px; line-height:1.25; margin:36px 0 12px; }
.distinctive-grid-v13 p { color:var(--muted); font-size:14px; margin:0; }

.research-map-section-v13 { position:relative; overflow:hidden; }
.research-map-section-v13::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 80% 20%,rgba(30,164,201,.09),transparent 22%),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:auto,56px 56px; }
.research-map-shell-v13 { position:relative; z-index:2; display:grid; grid-template-columns:minmax(280px,.82fr) minmax(0,1.5fr); gap:18px; }
.research-pillar-list-v13 { display:flex; flex-direction:column; gap:8px; }
.research-pillar-btn-v13 { width:100%; position:relative; display:grid; grid-template-columns:38px 1fr; column-gap:12px; row-gap:2px; text-align:left; padding:16px 16px; border-radius:16px; border:1px solid rgba(255,255,255,.10); color:#d7e7f5; background:rgba(255,255,255,.035); cursor:pointer; transition:.18s ease; }
.research-pillar-btn-v13 span { grid-row:1/3; width:34px; height:34px; border-radius:11px; display:grid; place-items:center; background:rgba(142,223,240,.08); color:#8edff0; font-size:9px; font-weight:900; }
.research-pillar-btn-v13 b { font-size:13px; color:#eef9ff; line-height:1.25; }
.research-pillar-btn-v13 small { color:#91a8bf; font-size:10px; line-height:1.3; }
.research-pillar-btn-v13:hover { background:rgba(255,255,255,.065); transform:translateX(3px); }
.research-pillar-btn-v13.is-active { background:linear-gradient(135deg,rgba(30,164,201,.18),rgba(255,255,255,.06)); border-color:rgba(142,223,240,.36); }
.research-map-detail-v13 { min-height:520px; padding:34px; border-radius:26px; border:1px solid rgba(255,255,255,.12); background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); box-shadow:0 25px 70px rgba(0,0,0,.14); }
.research-detail-top-v13 { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; }
.research-detail-index-v13 { display:inline-flex; margin-bottom:14px; color:#8edff0; font-size:11px; font-weight:900; letter-spacing:.14em; }
.research-map-detail-v13 h3 { margin:7px 0 0; max-width:700px; color:#fff; font:700 clamp(28px,3.3vw,44px)/1.06 Georgia,'Times New Roman',serif; }
.research-detail-symbol-v13 { width:84px; height:84px; flex:0 0 auto; display:grid; place-items:center; border-radius:24px; background:rgba(142,223,240,.09); border:1px solid rgba(142,223,240,.22); color:#8edff0; font:700 22px Georgia,serif; }
.research-detail-copy-v13 { max-width:850px; margin:24px 0 28px; color:#bfd1e3; font-size:16px; line-height:1.72; }
.research-detail-columns-v13 { display:grid; grid-template-columns:.72fr 1.28fr; gap:26px; padding-top:22px; border-top:1px solid rgba(255,255,255,.10); }
.research-detail-columns-v13 h4 { margin:0 0 14px; color:#fff; font-size:12px; text-transform:uppercase; letter-spacing:.12em; }
.research-impact-tags-v13 { display:flex; flex-wrap:wrap; gap:8px; }
.research-impact-tags-v13 span { padding:7px 9px; border-radius:999px; color:#bdebf4; background:rgba(30,164,201,.08); border:1px solid rgba(142,223,240,.15); font-size:10px; font-weight:750; }
.research-mini-pubs-v13 { display:grid; gap:8px; }
.research-mini-pub-v13 { display:grid; grid-template-columns:46px 1fr; column-gap:10px; padding:10px 12px; border-radius:12px; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.07); color:inherit; }
.research-mini-pub-v13:hover { color:inherit; background:rgba(255,255,255,.07); }
.research-mini-pub-v13 > span { grid-row:1/3; color:#8edff0; font-weight:900; font-size:11px; }
.research-mini-pub-v13 b { color:#f1f7fb; font-size:11px; line-height:1.35; }
.research-mini-pub-v13 small { color:#8fa6bd; font-size:9px; margin-top:2px; }
.research-detail-footer-v13 { display:flex; justify-content:flex-end; margin-top:22px; }
.research-detail-footer-v13 a { color:#8edff0; font-size:12px; font-weight:850; }
.research-empty-v13 { color:#91a8bf; font-size:11px; }

.pillar-card-grid-v13 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.pillar-card-v13 { position:relative; min-height:390px; padding:18px 22px 24px; border:1px solid var(--line); border-radius:24px; background:#fff; overflow:hidden; transition:.2s ease; }
.pillar-card-v13:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.pillar-card-v13 h3 { color:var(--navy); font-size:22px; line-height:1.18; margin:8px 0 11px; }
.pillar-card-v13 p { color:var(--muted); font-size:14px; margin:0 0 18px; }
.pillar-card-v13 > a { position:absolute; left:22px; bottom:22px; color:var(--blue); font-size:12px; font-weight:850; }
.pillar-visual-v13 { position:relative; height:150px; margin:-2px -6px 18px; border-radius:18px; overflow:hidden; background:linear-gradient(145deg,#071a3d,#144b78); }
.pillar-visual-v13::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px); background-size:24px 24px; }
.p-federated .pillar-visual-v13 .node { position:absolute; z-index:3; width:22px; height:22px; border-radius:50%; background:#8edff0; box-shadow:0 0 0 7px rgba(142,223,240,.10); }
.p-federated .n-a{left:16%;top:22%}.p-federated .n-b{right:15%;top:18%}.p-federated .n-c{left:20%;bottom:18%}.p-federated .n-d{right:18%;bottom:22%}
.p-federated .pillar-visual-v13 i { position:absolute; z-index:4; left:50%; top:50%; width:54px; height:54px; transform:translate(-50%,-50%); border-radius:16px; background:#fff; box-shadow:0 15px 35px rgba(0,0,0,.22); }
.p-federated .pillar-visual-v13 i::before { content:"FL"; position:absolute; inset:0; display:grid; place-items:center; color:var(--navy); font-weight:900; }
.shield-visual-v13 b { position:absolute; z-index:4; left:50%; top:50%; transform:translate(-50%,-50%); width:74px; height:82px; clip-path:polygon(50% 0,94% 15%,87% 68%,50% 100%,13% 68%,6% 15%); display:grid; place-items:center; color:#fff; font-size:30px; background:linear-gradient(160deg,#1ea4c9,#1769aa); }
.shield-visual-v13 i { position:absolute; width:8px; height:8px; border-radius:50%; background:var(--orange); box-shadow:0 0 14px rgba(235,125,50,.7); }.shield-visual-v13 i:nth-of-type(1){left:22%;top:30%}.shield-visual-v13 i:nth-of-type(2){right:20%;top:25%}.shield-visual-v13 i:nth-of-type(3){right:26%;bottom:20%}
.equation-visual-v13 { display:flex; align-items:center; justify-content:center; gap:9px; color:#fff; font:italic 23px Georgia,serif; }.equation-visual-v13 b{position:relative;z-index:3;color:#fff}.equation-visual-v13 span{position:relative;z-index:3;color:#8edff0}
.latent-visual-v13 span { position:absolute; z-index:3; width:58px; height:58px; border-radius:18px; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.08); transform:rotate(25deg); }.latent-visual-v13 span:nth-child(1){left:19%;top:23%}.latent-visual-v13 span:nth-child(2){left:37%;top:41%;}.latent-visual-v13 span:nth-child(3){left:53%;top:20%;}.latent-visual-v13 span:nth-child(4){right:18%;bottom:22%;}.latent-visual-v13 span:nth-child(5){left:28%;bottom:13%; background:rgba(235,125,50,.14);}
.compute-visual-v13 { display:grid; grid-template-columns:repeat(3,52px); grid-auto-rows:40px; gap:11px; align-content:center; justify-content:center; }.compute-visual-v13 span{position:relative;z-index:3;border-radius:10px;background:rgba(142,223,240,.10);border:1px solid rgba(142,223,240,.25)}.compute-visual-v13 span::before{content:"";position:absolute;left:8px;right:8px;top:10px;height:4px;border-radius:4px;background:#8edff0;box-shadow:0 9px 0 rgba(235,125,50,.75),0 18px 0 rgba(255,255,255,.25)}
.twin-visual-v13 { display:flex; align-items:center; justify-content:center; gap:24px; }.twin-visual-v13 span{position:relative;z-index:4;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900}.twin-left{border:2px solid #8edff0;color:#8edff0}.twin-right{background:#fff;color:var(--navy)}.twin-visual-v13 i{position:relative;z-index:4;width:64px;height:2px;background:linear-gradient(90deg,#8edff0,#fff)}.twin-visual-v13 i::before,.twin-visual-v13 i::after{content:"";position:absolute;width:8px;height:8px;border-top:2px solid #fff;border-right:2px solid #fff;top:-3px}.twin-visual-v13 i::before{right:0;transform:rotate(45deg)}.twin-visual-v13 i::after{left:0;transform:rotate(-135deg)}

.impact-grid-v13 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.impact-grid-v13 article { min-height:260px; padding:22px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.impact-code-v13 { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:linear-gradient(135deg,#e9f7fb,#e8eefb); color:var(--navy); font-size:11px; font-weight:900; }
.impact-grid-v13 h3 { margin:20px 0 10px; color:var(--navy); font-size:18px; line-height:1.25; }
.impact-grid-v13 p { margin:0 0 18px; color:var(--muted); font-size:13px; }
.impact-grid-v13 article > div { display:flex; flex-wrap:wrap; gap:6px; }
.impact-grid-v13 article > div span { padding:5px 7px; border-radius:999px; background:#f0f5fa; color:#58718a; font-size:9px; font-weight:800; }

.research-now-grid-v13 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.research-now-card-v13 { min-height:310px; display:flex; flex-direction:column; padding:24px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(180deg,#fff,#f9fbfd); transition:.2s ease; }
.research-now-card-v13:hover { transform:translateY(-4px); box-shadow:var(--shadow); }
.research-now-top-v13 { display:flex; justify-content:space-between; align-items:center; }
.research-now-top-v13 > span { color:var(--navy); font-weight:900; }
.research-now-top-v13 small { color:#66798e; background:#edf3f8; padding:5px 8px; border-radius:999px; font-size:9px; font-weight:800; }
.research-now-theme-v13 { margin-top:24px; color:var(--cyan); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }
.research-now-card-v13 h3 { margin:8px 0 12px; color:var(--navy); font-size:18px; line-height:1.34; }
.research-now-card-v13 > p { margin:0; color:var(--muted); font-size:11px; }
.research-now-bottom-v13 { margin-top:auto; padding-top:18px; display:flex; justify-content:space-between; gap:15px; align-items:flex-end; border-top:1px solid var(--line); }
.research-now-bottom-v13 > span { max-width:75%; color:#718296; font-size:10px; }
.research-now-bottom-v13 a { color:var(--blue); font-size:11px; font-weight:850; white-space:nowrap; }
.research-loading-v13 { color:var(--muted); }

.deepdive-grid-v13 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.deepdive-card-v13 { min-height:240px; display:grid; grid-template-columns:50px 1fr; grid-template-rows:1fr auto; gap:16px; padding:28px; border-radius:24px; border:1px solid rgba(255,255,255,.13); background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.02)); color:inherit; }
.deepdive-card-v13:hover { color:inherit; background:rgba(255,255,255,.075); transform:translateY(-3px); }
.deepdive-card-v13 > span { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; background:rgba(142,223,240,.09); color:#8edff0; font-size:10px; font-weight:900; }
.deepdive-card-v13 h3 { margin:2px 0 10px; color:#fff; font-size:26px; }
.deepdive-card-v13 p { margin:0; color:#bcd0e3; font-size:14px; }
.deepdive-card-v13 > b { grid-column:2; color:#8edff0; font-size:12px; }

@media(max-width:1100px){.research-hero-v13-grid{grid-template-columns:1fr;gap:30px;min-height:auto;padding:64px 0}.research-orbit-v13{margin:0;width:min(560px,100%)}.distinctive-grid-v13{grid-template-columns:repeat(2,1fr)}.impact-grid-v13{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.research-map-shell-v13{grid-template-columns:1fr}.research-pillar-list-v13{display:grid;grid-template-columns:repeat(2,1fr)}.research-map-detail-v13{min-height:0}.pillar-card-grid-v13,.research-now-grid-v13{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.research-hero-v13-grid{padding:50px 0}.research-hero-copy-v13 h1{font-size:clamp(40px,12vw,58px)}.research-orbit-v13{border-radius:26px}.orbit-node-v13{min-width:92px;font-size:8px;padding:8px}.orbit-core-v13{width:120px;height:120px}.orbit-core-v13 img{width:48px;height:48px}.distinctive-grid-v13,.research-pillar-list-v13,.pillar-card-grid-v13,.impact-grid-v13,.research-now-grid-v13,.deepdive-grid-v13{grid-template-columns:1fr}.research-detail-columns-v13{grid-template-columns:1fr}.research-map-detail-v13{padding:24px}.research-detail-symbol-v13{width:62px;height:62px;border-radius:18px;font-size:17px}.distinctive-grid-v13 article{min-height:auto}.pillar-card-v13{min-height:370px}.impact-grid-v13 article{min-height:auto}.deepdive-card-v13{grid-template-columns:44px 1fr;padding:22px}}
@media(prefers-reduced-motion:reduce){.research-pillar-btn-v13,.pillar-card-v13,.research-now-card-v13,.deepdive-card-v13{transition:none!important}}
.research-pillar-btn-v13:focus-visible,.deepdive-card-v13:focus-visible,.pillar-card-v13 > a:focus-visible{outline:3px solid #8edff0;outline-offset:3px}


/* v1.3.1 — Digital Twin featured result + orbit label fit */
.orbit-core-v13 small {
  display:block;
  width:108px;
  max-width:108px;
  line-height:1.28;
  white-space:normal;
  overflow-wrap:normal;
  letter-spacing:.055em;
  text-align:center;
}
.research-mini-pub-v13.is-featured-v131 {
  position:relative;
  background:linear-gradient(135deg,rgba(235,125,50,.14),rgba(142,223,240,.08));
  border-color:rgba(235,125,50,.42);
  box-shadow:inset 3px 0 0 var(--orange),0 10px 26px rgba(0,0,0,.08);
}
.research-mini-pub-v13.is-featured-v131 b { color:#fff; font-size:11.5px; }
.research-mini-pub-v13.is-featured-v131 small { color:#f5b487; font-weight:800; }
.pillar-featured-paper-v131 {
  position:relative;
  z-index:5;
  display:flex;
  flex-direction:column;
  gap:5px;
  margin-top:auto;
  padding:13px 14px;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(235,125,50,.10),rgba(30,164,201,.07));
  border:1px solid rgba(235,125,50,.24);
  color:inherit;
}
.pillar-featured-paper-v131:hover { color:inherit; border-color:rgba(235,125,50,.48); transform:translateY(-1px); }
.pillar-featured-paper-v131 span { color:var(--orange); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.10em; }
.pillar-featured-paper-v131 b { color:var(--navy); font-size:11px; line-height:1.35; }
.pillar-featured-paper-v131 em { color:var(--blue); font-size:10px; font-style:normal; font-weight:850; }
.pillar-card-v13.p-twins { min-height:430px; }
@media(max-width:720px){
  .orbit-core-v13 small{width:88px;max-width:88px;font-size:7px;letter-spacing:.04em;line-height:1.22}
  .pillar-card-v13.p-twins{min-height:auto}
}

/* ==============================
   v1.4 — Outreach & Media
   ============================== */
.outreach-hero-v14 {
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%, rgba(30,164,201,.22), transparent 24%),
    radial-gradient(circle at 18% 88%, rgba(235,125,50,.14), transparent 25%),
    linear-gradient(135deg,#07152f 0%,#0a2858 62%,#0c4772 100%);
  padding:74px 0 76px;
}
.outreach-hero-v14::before {
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to right,#000,transparent 78%);
  pointer-events:none;
}
.outreach-hero-grid-v14 {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:66px;
  align-items:center;
}
.outreach-breadcrumb-v14 { color:#abc5df; margin-bottom:18px; }
.outreach-eyebrow-v14 { color:#91e2f1; }
.outreach-hero-v14 h1 {
  margin:10px 0 20px;
  font:700 clamp(44px,6vw,78px)/.98 Georgia,'Times New Roman',serif;
  letter-spacing:-.04em;
}
.outreach-hero-v14 p { max-width:760px; margin:0; color:#d8e7f5; font-size:18px; line-height:1.72; }
.outreach-hero-stats-v14 { display:flex; flex-wrap:wrap; gap:28px; margin-top:34px; padding-top:24px; border-top:1px solid rgba(255,255,255,.14); }
.outreach-hero-stats-v14 div { min-width:120px; }
.outreach-hero-stats-v14 strong { display:block; color:#fff; font-size:24px; line-height:1; }
.outreach-hero-stats-v14 span { display:block; color:#bcd0e4; font-size:11px; text-transform:uppercase; letter-spacing:.1em; margin-top:7px; }
.outreach-hero-mark-v14 {
  position:relative;
  min-height:320px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
  box-shadow:0 28px 70px rgba(0,0,0,.24);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  overflow:hidden;
}
.outreach-hero-mark-v14::after { content:""; position:absolute; width:260px; height:260px; border:1px solid rgba(142,223,240,.17); border-radius:50%; }
.outreach-hero-mark-v14 img { width:118px; height:118px; object-fit:contain; background:#fff; border-radius:50%; padding:10px; z-index:2; box-shadow:0 14px 40px rgba(0,0,0,.2); }
.outreach-hero-mark-v14 span { position:relative; z-index:2; margin-top:20px; font:700 28px Georgia,serif; letter-spacing:.18em; }
.outreach-hero-mark-v14 small { position:relative; z-index:2; margin-top:7px; color:#bfd5e8; max-width:230px; }
.outreach-featured-section-v14 { background:#fff; }
.outreach-featured-v14 {
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:42px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:30px;
  background:linear-gradient(145deg,#fff,#f7fafc);
  box-shadow:0 22px 60px rgba(11,31,73,.09);
}
.outreach-featured-media-v14 {
  position:relative;
  min-height:460px;
  border-radius:22px;
  overflow:hidden;
  background:#edf2f7;
  display:grid;
  place-items:center;
}
.outreach-featured-media-v14 > img { width:100%; height:100%; object-fit:cover; object-position:center; }
.outreach-cover-mini-v14 {
  position:absolute;
  left:18px;
  bottom:18px;
  width:132px;
  height:132px;
  border-radius:16px;
  overflow:hidden;
  border:6px solid rgba(255,255,255,.95);
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.outreach-cover-mini-v14 img { width:100%; height:100%; object-fit:cover; }
.outreach-featured-copy-v14 { padding:28px 24px 28px 8px; align-self:center; }
.outreach-kind-v14 { display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; background:#eaf6fa; color:#28657a; font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.outreach-outlet-v14 { margin-top:18px; color:var(--blue); font-weight:800; font-size:13px; letter-spacing:.05em; }
.outreach-featured-copy-v14 h3 { margin:8px 0 8px; color:var(--navy); font:700 clamp(34px,4vw,50px)/1.02 Georgia,serif; }
.outreach-authors-v14 { color:#52677e!important; font-weight:700; font-size:13px!important; }
.outreach-featured-copy-v14 > p:not(.outreach-authors-v14) { color:var(--muted); font-size:16px; line-height:1.72; }
.outreach-tags-v14 { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.outreach-tags-v14 span { padding:6px 9px; border-radius:999px; background:#eef4f9; color:#44647f; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.outreach-featured-button-v14 { background:var(--navy); color:#fff; border-color:var(--navy); }
.outreach-featured-button-v14:hover { color:#fff; }
.outreach-toolbar-v14 { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:18px; }
.outreach-toolbar-v14 h2 { margin:8px 0 0; color:var(--navy); font:700 clamp(34px,4vw,52px)/1.05 Georgia,serif; }
.outreach-filters-v14 { display:flex; flex-wrap:wrap; gap:8px; }
.outreach-filters-v14 button { border:1px solid var(--line); border-radius:999px; padding:9px 13px; background:#fff; color:#43556c; font-size:12px; font-weight:750; cursor:pointer; }
.outreach-filters-v14 button.is-active { background:var(--navy); color:#fff; border-color:var(--navy); }
.outreach-count-v14 { color:var(--muted); font-size:12px; margin-bottom:26px; }
.outreach-section-label-v14 { display:grid; grid-template-columns:180px 1fr; gap:24px; align-items:start; padding:18px 0 16px; border-top:1px solid var(--line); }
.outreach-section-label-v14 span { color:var(--navy); font-weight:850; font-size:12px; letter-spacing:.11em; text-transform:uppercase; }
.outreach-section-label-v14 p { margin:0; color:var(--muted); font-size:13px; }
.outreach-press-label-v14 { margin-top:46px; }
.outreach-grid-v14 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.outreach-card-v14 { position:relative; display:flex; flex-direction:column; min-height:360px; padding:24px; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 8px 26px rgba(11,31,73,.05); transition:transform .2s ease,box-shadow .2s ease; }
.outreach-card-v14:hover { transform:translateY(-4px); box-shadow:0 18px 42px rgba(11,31,73,.10); }
.outreach-card-v14[hidden] { display:none!important; }
.outreach-card-top-v14 { display:flex; align-items:start; justify-content:space-between; gap:12px; }
.outreach-card-top-v14 time { color:#8695a8; font-size:11px; white-space:nowrap; }
.outreach-card-v14 .outreach-outlet-v14 { margin-top:18px; }
.outreach-card-v14 h3 { margin:8px 0 10px; color:var(--navy); font-size:21px; line-height:1.24; }
.outreach-card-v14 > p:not(.outreach-authors-v14) { color:var(--muted); font-size:13px; line-height:1.6; }
.outreach-card-v14 .outreach-tags-v14 { margin-top:auto; margin-bottom:14px; padding-top:16px; }
.outreach-open-v14 { align-self:flex-start; font-size:12px; }
.outreach-cta-v14 { background:linear-gradient(135deg,#09204a,#0d4d77); }
.home-outreach-v14 { background:#f4f8fb; }
.home-outreach-grid-v14 { display:grid; grid-template-columns:1.4fr .8fr .8fr; gap:20px; }
.home-outreach-feature-v14,
.home-outreach-card-v14 { border:1px solid var(--line); border-radius:22px; background:#fff; overflow:hidden; }
.home-outreach-feature-v14 { display:grid; grid-template-columns:42% 58%; min-height:280px; }
.home-outreach-feature-v14 > img { width:100%; height:100%; object-fit:cover; }
.home-outreach-feature-v14 > div { padding:28px; align-self:center; }
.home-outreach-feature-v14 h3 { margin:8px 0 10px; color:var(--navy); font:700 30px/1.05 Georgia,serif; }
.home-outreach-feature-v14 p,
.home-outreach-card-v14 p { color:var(--muted); font-size:13px; }
.home-outreach-feature-v14 a,
.home-outreach-card-v14 a { color:var(--blue); font-weight:800; font-size:12px; }
.home-outreach-card-v14 { padding:26px; display:flex; flex-direction:column; }
.home-outreach-card-v14 > span { color:#658099; font-size:10px; text-transform:uppercase; letter-spacing:.09em; font-weight:800; }
.home-outreach-card-v14 h3 { color:var(--navy); font-size:21px; line-height:1.2; margin:10px 0 10px; }
.home-outreach-card-v14 a { margin-top:auto; padding-top:18px; }
@media (max-width:1050px) {
  .outreach-hero-grid-v14 { grid-template-columns:1fr; gap:30px; }
  .outreach-hero-mark-v14 { min-height:240px; }
  .outreach-featured-v14 { grid-template-columns:1fr; }
  .outreach-featured-media-v14 { min-height:360px; }
  .outreach-featured-copy-v14 { padding:12px 14px 18px; }
  .outreach-grid-v14 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-outreach-grid-v14 { grid-template-columns:1fr 1fr; }
  .home-outreach-feature-v14 { grid-column:1 / -1; }
}
@media (max-width:720px) {
  .outreach-hero-v14 { padding:56px 0 60px; }
  .outreach-hero-v14 h1 { font-size:44px; }
  .outreach-hero-v14 p { font-size:16px; }
  .outreach-hero-stats-v14 { gap:18px; }
  .outreach-hero-mark-v14 { min-height:210px; }
  .outreach-featured-media-v14 { min-height:290px; }
  .outreach-cover-mini-v14 { width:96px; height:96px; }
  .outreach-toolbar-v14 { align-items:flex-start; flex-direction:column; }
  .outreach-section-label-v14 { grid-template-columns:1fr; gap:4px; }
  .outreach-grid-v14 { grid-template-columns:1fr; }
  .outreach-card-v14 { min-height:0; }
  .home-outreach-grid-v14 { grid-template-columns:1fr; }
  .home-outreach-feature-v14 { grid-column:auto; grid-template-columns:1fr; }
  .home-outreach-feature-v14 > img { height:230px; }
}

/* ==============================
   v1.5 — Collaborations redesign
   ============================== */
.collab-hero-v15{position:relative;overflow:hidden;background:linear-gradient(135deg,#06152f 0%,#0a2854 58%,#0b4467 100%);color:#fff;padding:82px 0 76px}
.collab-hero-v15::before{content:"";position:absolute;inset:-30% 40% auto -10%;height:560px;background:radial-gradient(circle,rgba(30,164,201,.22),transparent 63%);pointer-events:none}
.collab-hero-v15::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-190px;top:-210px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018);pointer-events:none}
.collab-hero-grid-v15{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);gap:70px;align-items:end}
.collab-hero-v15 h1{font:700 clamp(52px,6vw,78px)/.96 Georgia,serif;letter-spacing:-.045em;margin:10px 0 24px;max-width:760px}
.collab-hero-v15 p{max-width:720px;color:#d4e6f4;font-size:18px;line-height:1.72;margin:0}
.collab-hero-actions-v15{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.collab-stats-v15{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.13);border-radius:28px;overflow:hidden;background:rgba(255,255,255,.045);backdrop-filter:blur(12px)}
.collab-stats-v15>div{padding:25px 24px;min-height:132px;border-right:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}
.collab-stats-v15>div:nth-child(2n){border-right:0}.collab-stats-v15>div:nth-last-child(-n+2){border-bottom:0}
.collab-stats-v15 strong{display:block;font:700 38px/1 Georgia,serif;color:#fff;margin-bottom:10px}.collab-stats-v15 span{display:block;color:#aecdde;font-size:11px;line-height:1.45;text-transform:uppercase;letter-spacing:.08em}
.collab-network-section-v15{background:#071a3d;color:#fff;overflow:hidden}.collab-network-section-v15 h2{color:#fff}.collab-network-section-v15 .section-sub{color:#b9cde0}
.collab-network-v15{position:relative;height:620px;max-width:1060px;margin:10px auto 0;border:1px solid rgba(255,255,255,.10);border-radius:38px;background:radial-gradient(circle at 50% 48%,rgba(30,164,201,.15),transparent 24%),linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.015));box-shadow:inset 0 0 80px rgba(0,0,0,.16);overflow:hidden}
.collab-network-lines-v15{position:absolute;inset:25px 25px 80px;width:calc(100% - 50px);height:calc(100% - 105px)}
.collab-network-core-v15{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);width:164px;height:164px;border-radius:50%;background:#fff;color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 24px 70px rgba(0,0,0,.32);z-index:3;text-align:center}
.collab-network-core-v15 img{width:68px;height:68px;object-fit:contain;margin-bottom:5px}.collab-network-core-v15 strong{font:700 19px Georgia,serif;letter-spacing:.05em}.collab-network-core-v15 span{font-size:9px;color:#728096;text-transform:uppercase;letter-spacing:.08em;margin-top:3px}
.collab-node-v15{position:absolute;z-index:4;width:178px;min-height:76px;border-radius:20px;border:1px solid rgba(255,255,255,.15);background:rgba(7,21,47,.82);color:#eaf7fd;padding:13px 15px;text-align:left;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.18);transition:.22s ease;backdrop-filter:blur(10px)}
.collab-node-v15:hover,.collab-node-v15.is-active{transform:translateY(-4px);border-color:#8edff0;background:rgba(16,65,98,.95);box-shadow:0 14px 36px rgba(30,164,201,.15)}
.collab-node-v15 b{display:block;font-size:13px}.collab-node-v15 span{display:block;color:#9fc3d7;font-size:10px;margin-top:3px}.node-fed-v15{left:7%;top:11%}.node-sciml-v15{left:41.5%;top:5%}.node-dt-v15{right:7%;top:11%}.node-health-v15{right:5%;bottom:23%}.node-hpc-v15{left:41.5%;bottom:16%}.node-ind-v15{left:5%;bottom:23%}
.collab-network-readout-v15{position:absolute;z-index:5;left:24px;right:24px;bottom:20px;min-height:68px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);display:grid;grid-template-columns:160px 1fr auto;gap:18px;align-items:center;padding:12px 15px;color:#dcecf6}
.collab-network-readout-v15>span{font-weight:900;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.collab-network-readout-v15>div{display:flex;gap:8px;flex-wrap:wrap}.collab-network-readout-v15>div span{border:1px solid rgba(255,255,255,.11);border-radius:999px;padding:5px 9px;font-size:9px;color:#d7e7f0}.collab-network-readout-v15 button{border:0;background:#fff;color:var(--navy);font-weight:800;border-radius:999px;padding:9px 13px;font-size:10px;cursor:pointer}
.tuai-network-row-v15{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.network-logo-v15{min-height:154px;border:1px solid var(--line);border-radius:20px;background:#fff;padding:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;transition:.2s ease}.network-logo-v15:hover{transform:translateY(-4px);box-shadow:var(--shadow);color:inherit}.network-logo-v15 img{width:100%;height:86px;object-fit:contain}.network-logo-v15 span{font-size:11px;font-weight:850;color:var(--navy);text-align:center}
.collab-directory-head-v15{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:22px}.collab-directory-head-v15 h2{margin:8px 0 8px;color:var(--navy);font:700 clamp(34px,4vw,52px)/1.05 Georgia,serif}.collab-directory-head-v15 p{color:var(--muted);max-width:680px}.collab-search-v15{width:min(360px,100%)}.collab-search-v15 input{width:100%;border:1px solid var(--line);border-radius:999px;padding:13px 17px;background:#fff;color:var(--ink);outline:none}.collab-search-v15 input:focus{border-color:#8bc9dc;box-shadow:0 0 0 3px rgba(30,164,201,.08)}
.collab-filter-row-v15,.collab-theme-filter-v15{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.collab-filter-row-v15{padding:14px 0}.collab-filter-row-v15 button,.collab-theme-filter-v15 button{border:1px solid var(--line);background:#fff;color:#42566d;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800;cursor:pointer}.collab-filter-row-v15 button.is-active,.collab-theme-filter-v15 button.is-active{background:var(--navy);color:#fff;border-color:var(--navy)}.collab-theme-filter-v15{padding:2px 0 14px}.collab-theme-filter-v15>span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#8491a1;margin-right:3px}.partner-count-v15{font-size:11px;color:var(--muted);padding:2px 0 16px}.partner-count-v15 strong{color:var(--navy);font-size:15px}
.partner-grid-v15{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.partner-card-v15{border:1px solid var(--line);border-radius:22px;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-height:300px;transition:.22s ease}.partner-card-v15:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c9d9e7}.partner-card-v15[hidden]{display:none!important}.partner-logo-v15{min-height:142px;padding:16px 18px;display:grid;place-items:center;background:linear-gradient(180deg,#fff,#f8fbfe);border-bottom:1px solid #edf1f5}.partner-logo-v15 img{width:100%;height:108px;object-fit:contain}.partner-body-v15{padding:17px 18px 18px;display:flex;flex-direction:column;flex:1}.partner-country-v15{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--cyan);font-weight:900}.partner-body-v15 h3{margin:7px 0 7px;color:var(--navy);font-size:17px;line-height:1.2}.partner-body-v15 p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.partner-tags-v15{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto;padding-top:15px}.partner-tags-v15 span{padding:5px 7px;border-radius:999px;background:#eef5fb;color:#46647c;font-size:8px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.country-reach-v15{position:relative;overflow:hidden}.country-reach-v15::after{content:"";position:absolute;right:-100px;bottom:-180px;width:520px;height:520px;border:1px solid rgba(255,255,255,.06);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.016)}.country-cloud-v15{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap}.country-cloud-v15 span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:999px;color:#dbeaf4;padding:9px 13px;font-size:11px;font-weight:750}
.collab-action-grid-v15{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.collab-action-card-v15{position:relative;min-height:285px;padding:25px;border-radius:24px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:.22s ease;overflow:hidden}.collab-action-card-v15::before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-45px;top:-50px;background:rgba(30,164,201,.07)}.collab-action-card-v15:hover{transform:translateY(-5px);box-shadow:var(--shadow);color:inherit}.collab-action-card-v15>span{position:relative;z-index:1;color:var(--cyan);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.collab-action-card-v15 h3{position:relative;z-index:1;color:var(--navy);font:700 27px/1.05 Georgia,serif;margin:19px 0 12px}.collab-action-card-v15 p{position:relative;z-index:1;color:var(--muted);font-size:13px;line-height:1.6;margin:0}.collab-action-card-v15 b{position:relative;z-index:1;margin-top:auto;padding-top:22px;color:var(--blue);font-size:10px;line-height:1.45}.collab-action-card-v15.featured{background:linear-gradient(145deg,#071a3d,#103c6d);border-color:#174a73}.collab-action-card-v15.featured h3{color:#fff}.collab-action-card-v15.featured p{color:#c7dcea}.collab-action-card-v15.featured b{color:#8edff0}
@media(max-width:1100px){.collab-hero-grid-v15{grid-template-columns:1fr;gap:40px}.collab-stats-v15{max-width:680px}.partner-grid-v15{grid-template-columns:repeat(3,minmax(0,1fr))}.tuai-network-row-v15{grid-template-columns:repeat(3,minmax(0,1fr))}.collab-action-grid-v15{grid-template-columns:repeat(2,minmax(0,1fr))}.collab-network-v15{height:690px}.collab-network-readout-v15{grid-template-columns:1fr}.collab-network-readout-v15 button{justify-self:start}}
@media(max-width:760px){.collab-hero-v15{padding:58px 0}.collab-hero-v15 h1{font-size:48px}.collab-stats-v15{grid-template-columns:1fr}.collab-stats-v15>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.09)!important;min-height:104px}.collab-stats-v15>div:last-child{border-bottom:0!important}.collab-network-v15{height:auto;min-height:760px;padding:24px 16px 150px}.collab-network-lines-v15{display:none}.collab-network-core-v15{top:118px;width:138px;height:138px}.collab-network-core-v15 img{width:56px;height:56px}.collab-node-v15{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%;margin-top:10px;transform:none!important}.collab-node-v15:first-of-type{margin-top:220px}.collab-network-readout-v15{left:15px;right:15px;bottom:16px}.tuai-network-row-v15{grid-template-columns:1fr 1fr}.collab-directory-head-v15{flex-direction:column;align-items:stretch}.collab-search-v15{width:100%}.partner-grid-v15{grid-template-columns:1fr 1fr}.collab-action-grid-v15{grid-template-columns:1fr}.partner-card-v15{min-height:280px}.country-cloud-v15{gap:7px}.country-cloud-v15 span{font-size:10px;padding:8px 10px}}
@media(max-width:500px){.partner-grid-v15,.tuai-network-row-v15{grid-template-columns:1fr}.collab-hero-v15 h1{font-size:42px}.collab-action-card-v15{min-height:240px}}

/* ==============================
   v1.6 — collaboration readout fix + Lab Wall gallery
   ============================== */

/* Collaboration network: keep the dynamic readout outside the diagram canvas. */
.collab-network-section-v15 .collab-network-readout-v15{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:min(1060px,100%);
  margin:16px auto 0;
  min-height:72px;
  border-radius:18px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
  display:grid;
  grid-template-columns:180px 1fr auto;
  gap:18px;
  align-items:center;
  padding:13px 16px;
  color:#dcecf6;
  box-shadow:0 10px 30px rgba(0,0,0,.10);
}
.collab-network-v15{height:540px;}
.collab-network-lines-v15{inset:20px;width:calc(100% - 40px);height:calc(100% - 40px)}
.collab-network-core-v15{top:50%}
.node-health-v15{bottom:12%}.node-hpc-v15{bottom:6%}.node-ind-v15{bottom:12%}
@media(max-width:1100px){
  .collab-network-v15{height:600px}
  .collab-network-section-v15 .collab-network-readout-v15{grid-template-columns:1fr}
  .collab-network-section-v15 .collab-network-readout-v15 button{justify-self:start}
}
@media(max-width:760px){
  .collab-network-v15{height:auto;min-height:760px;padding:24px 16px 24px}
  .collab-network-section-v15 .collab-network-readout-v15{margin-top:14px}
  .collab-network-core-v15{top:118px}
}

/* Gallery hero */
.gallery-hero-v16{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#071a3d 0%,#0d2f68 62%,#124778 100%);
  color:#fff;
  padding:78px 0 70px;
}
.gallery-hero-v16::before{
  content:"";
  position:absolute;
  inset:-120px -80px auto auto;
  width:460px;
  height:460px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 0 0 54px rgba(255,255,255,.025),0 0 0 108px rgba(255,255,255,.016);
}
.gallery-hero-grid-v16{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:70px;
  align-items:end;
}
.gallery-hero-v16 h1{
  margin:9px 0 20px;
  font:700 clamp(52px,6vw,80px)/.94 Georgia,serif;
  letter-spacing:-.045em;
}
.gallery-hero-v16 p{max-width:700px;color:#d6e6f3;font-size:18px;line-height:1.7;margin:0}
.gallery-hero-note-v16{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
  border-radius:28px;
  padding:28px 30px;
  backdrop-filter:blur(12px);
  box-shadow:0 20px 60px rgba(0,0,0,.16);
}
.gallery-hero-note-v16>span{display:block;color:#8edff0;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px}
.gallery-hero-note-v16 strong{display:block;font:700 29px/1.1 Georgia,serif;color:#fff;margin-bottom:11px}
.gallery-hero-note-v16 p{font-size:13px;color:#bcd1e2;line-height:1.6}

.gallery-section-v16{background:#f6f2e9}
.gallery-wall-v16{
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:26px;
  padding:58px 54px 64px;
  border-radius:34px;
  border:12px solid #8a5f34;
  background:
    radial-gradient(circle at 16px 16px,rgba(92,54,24,.16) 0 1px,transparent 1.5px),
    radial-gradient(circle at 5px 7px,rgba(255,255,255,.16) 0 1px,transparent 1.4px),
    linear-gradient(120deg,rgba(255,255,255,.035),rgba(72,43,18,.06)),
    #c49a68;
  background-size:22px 22px,18px 18px,auto,auto;
  box-shadow:inset 0 0 50px rgba(71,42,20,.22),0 28px 70px rgba(55,37,19,.12);
}
.gallery-wall-v16::before{
  content:"M.O.D.A.L. / LAB WALL";
  position:absolute;
  top:18px;
  left:28px;
  font:800 10px/1 ui-sans-serif,sans-serif;
  letter-spacing:.16em;
  color:rgba(68,41,18,.64);
}
.gallery-polaroid-v16,.gallery-sticky-v16{
  position:relative;
  z-index:1;
  transition:transform .22s ease,box-shadow .22s ease;
}
.gallery-polaroid-v16:hover,.gallery-sticky-v16:hover{z-index:4;transform:translateY(-5px) rotate(0deg)!important}
.gallery-polaroid-v16{
  margin:0;
  padding:13px 13px 20px;
  background:#fff;
  color:#162337;
  box-shadow:0 18px 35px rgba(65,38,16,.22),0 2px 5px rgba(65,38,16,.15);
  cursor:zoom-in;
}
.gallery-polaroid-v16 img{
  width:100%;
  height:100%;
  min-height:210px;
  max-height:390px;
  object-fit:cover;
  background:#eef2f6;
}
.gallery-polaroid-v16 figcaption{padding:14px 7px 0}
.gallery-polaroid-v16 figcaption strong{display:block;font:700 22px/1.1 Georgia,serif;color:var(--navy)}
.gallery-polaroid-v16 figcaption span{display:block;margin-top:5px;color:#7a6652;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.gallery-big-v16{grid-column:span 7;grid-row:span 2}.gallery-wide-v16{grid-column:span 6}.gallery-medium-v16{grid-column:span 4}.gallery-small-v16{grid-column:span 4}
.gallery-sticky-v16{
  grid-column:span 4;
  min-height:220px;
  padding:28px 25px 26px;
  color:#243047;
  box-shadow:0 16px 28px rgba(65,38,16,.18),0 2px 4px rgba(65,38,16,.12);
  display:flex;
  flex-direction:column;
}
.gallery-sticky-v16 small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:rgba(31,42,58,.62)}
.gallery-sticky-v16 strong{display:block;font:700 25px/1.08 Georgia,serif;margin:13px 0 9px;color:#15233b}
.gallery-sticky-v16 p{margin:0;color:#49586b;font-size:13px;line-height:1.55}
.gallery-sticky-v16 em{margin-top:auto;padding-top:18px;font-size:10px;font-style:normal;font-weight:900;color:#244b73}
.sticky-yellow-v16{background:#ffe979}.sticky-blue-v16{background:#bfeaf5}.sticky-pink-v16{background:#f6c7d7}.sticky-green-v16{background:#d6ebbd}.sticky-purple-v16{background:#d9cef5}
.gallery-tape-v16{
  position:absolute;
  z-index:5;
  width:84px;
  height:22px;
  top:-10px;
  left:50%;
  transform:translateX(-50%) rotate(-2deg);
  background:rgba(250,239,203,.82);
  box-shadow:0 1px 2px rgba(0,0,0,.08);
  border-left:1px solid rgba(120,100,70,.12);
  border-right:1px solid rgba(120,100,70,.12);
}
.gallery-pin-v16{
  position:absolute;
  z-index:5;
  width:16px;
  height:16px;
  border-radius:50%;
  top:9px;
  left:50%;
  transform:translateX(-50%);
  background:radial-gradient(circle at 35% 30%,#ffb29b 0 22%,#c5422a 24% 66%,#7f2719 68% 100%);
  box-shadow:0 3px 5px rgba(0,0,0,.25);
}
.tilt-left{transform:rotate(-2.4deg)}.tilt-right{transform:rotate(2.4deg)}.tilt-left-sm{transform:rotate(-1.1deg)}.tilt-right-sm{transform:rotate(1.1deg)}
.gallery-callout-v16{
  margin-top:34px;
  border-radius:26px;
  padding:26px 30px;
  border:1px solid var(--line);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.gallery-callout-v16 h3{margin:6px 0 5px;color:var(--navy);font:700 28px/1.1 Georgia,serif}.gallery-callout-v16 p{margin:0;max-width:720px;color:var(--muted)}
.gallery-lightbox-v16{
  position:fixed;
  inset:0;
  z-index:3000;
  display:none;
  place-items:center;
  padding:40px;
  background:rgba(4,11,25,.92);
  backdrop-filter:blur(10px);
}
.gallery-lightbox-v16.is-open{display:grid}
.gallery-lightbox-v16 img{max-width:min(1200px,92vw);max-height:82vh;object-fit:contain;border:10px solid #fff;box-shadow:0 28px 80px rgba(0,0,0,.45)}
.gallery-lightbox-v16 [data-gallery-lightbox-caption]{margin-top:14px;color:#dcecf6;font-size:13px;text-align:center;font-weight:700}
.gallery-lightbox-close-v16{position:absolute;right:24px;top:18px;width:45px;height:45px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;font-size:28px;cursor:pointer}

@media(max-width:1000px){
  .gallery-hero-grid-v16{grid-template-columns:1fr;gap:28px}
  .gallery-wall-v16{grid-template-columns:repeat(6,minmax(0,1fr));padding:50px 34px}
  .gallery-big-v16{grid-column:span 6}.gallery-wide-v16{grid-column:span 6}.gallery-medium-v16,.gallery-small-v16,.gallery-sticky-v16{grid-column:span 3}
}
@media(max-width:700px){
  .gallery-hero-v16{padding:58px 0}.gallery-hero-v16 h1{font-size:50px}
  .gallery-wall-v16{display:block;padding:48px 20px;border-width:8px}
  .gallery-polaroid-v16,.gallery-sticky-v16{margin:0 0 28px;transform:rotate(0deg)!important}
  .gallery-polaroid-v16 img{max-height:none;min-height:0}
  .gallery-callout-v16{align-items:flex-start;flex-direction:column}
  .gallery-lightbox-v16{padding:18px}.gallery-lightbox-v16 img{max-width:94vw;max-height:80vh;border-width:6px}
}

/* ==============================
   v1.7 — gallery wall rebuild
   ============================== */
.gallery-hero-v17{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#071a3d 0%,#0d2f68 62%,#124778 100%);
  color:#fff;
  padding:78px 0 72px;
}
.gallery-hero-v17::before{
  content:"";
  position:absolute;
  right:-100px;
  top:-120px;
  width:470px;
  height:470px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 0 0 56px rgba(255,255,255,.026),0 0 0 112px rgba(255,255,255,.018);
}
.gallery-hero-grid-v17{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:64px;
  align-items:end;
}
.gallery-hero-v17 h1{
  margin:9px 0 18px;
  font:700 clamp(52px,6vw,80px)/.94 Georgia,serif;
  letter-spacing:-.045em;
}
.gallery-hero-v17 p{max-width:720px;color:#d6e6f3;font-size:18px;line-height:1.72;margin:0}
.gallery-hero-note-v17{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
  border-radius:28px;
  padding:28px 30px;
  backdrop-filter:blur(12px);
  box-shadow:0 20px 60px rgba(0,0,0,.16);
}
.gallery-hero-note-v17 > span{display:block;color:#8edff0;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px}
.gallery-hero-note-v17 strong{display:block;font:700 29px/1.1 Georgia,serif;color:#fff;margin-bottom:11px}
.gallery-hero-note-v17 p{font-size:13px;color:#bcd1e2;line-height:1.65}

.gallery-section-v17{background:#f6f2e9}
.gallery-wall-v17{
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:34px;
  align-items:start;
  padding:62px 56px 66px;
  border-radius:34px;
  border:12px solid #8a5f34;
  background:
    radial-gradient(circle at 16px 16px,rgba(92,54,24,.16) 0 1px,transparent 1.5px),
    radial-gradient(circle at 5px 7px,rgba(255,255,255,.16) 0 1px,transparent 1.4px),
    linear-gradient(120deg,rgba(255,255,255,.035),rgba(72,43,18,.06)),
    #c49a68;
  background-size:22px 22px,18px 18px,auto,auto;
  box-shadow:inset 0 0 50px rgba(71,42,20,.22),0 28px 70px rgba(55,37,19,.12);
}
.gallery-wall-v17::before{
  content:"M.O.D.A.L. / LAB WALL";
  position:absolute;
  top:18px;
  left:28px;
  font:800 10px/1 ui-sans-serif,sans-serif;
  letter-spacing:.16em;
  color:rgba(68,41,18,.64);
}
.gallery-card-v17{
  position:relative;
  z-index:1;
  transition:transform .22s ease, box-shadow .22s ease;
}
.gallery-card-v17:hover{z-index:3;transform:translateY(-4px) rotate(0deg)!important}
.gallery-photo-v17{
  margin:0;
  padding:13px 13px 18px;
  background:#fff;
  color:#162337;
  box-shadow:0 18px 35px rgba(65,38,16,.22),0 2px 5px rgba(65,38,16,.15);
  cursor:zoom-in;
}
.gallery-photo-v17 img{
  width:100%;
  display:block;
  border:1px solid #e7edf3;
  background:#f4f7fa;
  object-fit:cover;
}
.gallery-photo-v17 img.fit-contain-v17{
  object-fit:contain;
  background:#f7f9fb;
  max-height:520px;
}
.gallery-photo-v17 figcaption{padding:13px 6px 0}
.gallery-photo-v17 figcaption strong{display:block;font:700 20px/1.1 Georgia,serif;color:var(--navy)}
.gallery-photo-v17 figcaption span{display:block;margin-top:5px;color:#7a6652;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}

.gallery-note-v17{
  min-height:210px;
  padding:24px 24px 22px;
  box-shadow:0 16px 28px rgba(65,38,16,.18),0 2px 4px rgba(65,38,16,.12);
  color:#223248;
  display:flex;
  flex-direction:column;
}
.gallery-note-v17 small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:rgba(31,42,58,.62)}
.gallery-note-v17 h3{margin:12px 0 8px;color:#15233b;font:700 23px/1.08 Georgia,serif}
.gallery-note-v17 p{margin:0;color:#49586b;font-size:13px;line-height:1.58}
.note-yellow-v17{background:#ffe979}
.note-blue-v17{background:#bfeaf5}
.note-green-v17{background:#d6ebbd}
.note-pink-v17{background:#f6c7d7}

.gallery-tape-v17{
  position:absolute;
  z-index:5;
  width:84px;
  height:22px;
  top:-10px;
  left:50%;
  transform:translateX(-50%) rotate(-2deg);
  background:rgba(250,239,203,.82);
  box-shadow:0 1px 2px rgba(0,0,0,.08);
  border-left:1px solid rgba(120,100,70,.12);
  border-right:1px solid rgba(120,100,70,.12);
}
.gallery-pin-v17{
  position:absolute;
  z-index:5;
  width:16px;
  height:16px;
  border-radius:50%;
  top:10px;
  left:50%;
  transform:translateX(-50%);
  background:radial-gradient(circle at 35% 30%,#ffb29b 0 22%,#c5422a 24% 66%,#7f2719 68% 100%);
  box-shadow:0 3px 5px rgba(0,0,0,.25);
}
.rot-left{transform:rotate(-1.65deg)}
.rot-right{transform:rotate(1.65deg)}
.rot-left-sm{transform:rotate(-.8deg)}
.rot-right-sm{transform:rotate(.8deg)}

.gspan-7{grid-column:span 7}
.gspan-5{grid-column:span 5}
.gspan-4{grid-column:span 4}
.gspan-3{grid-column:span 3}

.gallery-callout-v17{
  margin-top:34px;
  border-radius:26px;
  padding:26px 30px;
  border:1px solid var(--line);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.gallery-callout-v17 h3{margin:6px 0 5px;color:var(--navy);font:700 28px/1.1 Georgia,serif}
.gallery-callout-v17 p{margin:0;max-width:720px;color:var(--muted)}

@media(max-width:1100px){
  .gallery-hero-grid-v17{grid-template-columns:1fr;gap:28px}
  .gallery-wall-v17{grid-template-columns:repeat(8,minmax(0,1fr));padding:54px 36px 58px;gap:28px}
  .gspan-7,.gspan-5{grid-column:span 8}
  .gspan-4{grid-column:span 4}
  .gspan-3{grid-column:span 4}
}
@media(max-width:760px){
  .gallery-hero-v17{padding:58px 0}
  .gallery-hero-v17 h1{font-size:48px}
  .gallery-wall-v17{display:block;padding:46px 20px;border-width:8px}
  .gallery-card-v17{margin:0 0 28px;transform:rotate(0deg)!important}
  .gallery-card-v17:hover{transform:translateY(-2px)!important}
  .gallery-photo-v17 img.fit-contain-v17{max-height:none}
  .gallery-callout-v17{align-items:flex-start;flex-direction:column}
}

/* v1.8 · Institutional Research Stories and invited-talk poster. */
.outreach-institutional-v18 { background:#f6fafc; }
.outreach-institutional-v18 .outreach-card-v14 { min-height:335px; }
.outreach-institutional-subhead-v18 { margin-top:46px; }
.outreach-institutional-highlight-v18 { border:1px solid var(--line); background:#fff; border-radius:20px; padding:26px 30px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.outreach-institutional-highlight-v18 h3 { color:var(--navy); font-size:22px; margin:12px 0 8px; }
.outreach-institutional-highlight-v18 p { color:var(--muted); font-size:14px; line-height:1.6; margin:0; max-width:760px; }
.outreach-institutional-highlight-v18 .btn { white-space:nowrap; }
.event-poster-v18 { margin:26px 0 10px; padding:16px; border-radius:18px; background:#f4f8fb; text-align:center; }
.event-poster-v18 img { display:block; margin:auto; width:auto; max-width:100%; height:auto; max-height:850px; border-radius:8px; }
.event-poster-v18 figcaption { margin-top:8px; color:var(--muted); font-size:12px; }
@media(max-width:720px) { .outreach-institutional-highlight-v18 { flex-direction:column; align-items:flex-start; padding:22px; } .outreach-institutional-highlight-v18 .btn { white-space:normal; } }

/* ======================================================
   M.O.D.A.L. v1.9 — primary navigation, editorial pages,
   compact photo archive and publication result feedback.
   ====================================================== */
.nav-wrap{gap:14px}
.nav-links{gap:1px; flex-shrink:0}
.nav-links > li > a,.nav-links > li > .nav-menu-button{font-size:12.5px; padding:10px 7px}
.nav-links .nav-priority-v19{color:#092b54;font-weight:850;position:relative}
.nav-links .nav-priority-v19::after{content:"";position:absolute;bottom:5px;left:8px;right:8px;height:2px;border-radius:3px;background:#28a5c5;opacity:.65}
.nav-links .nav-priority-v19.active{background:#eaf4fa}
.nav-links a.nav-github-v19,.nav-links a.nav-github-v19:hover,.nav-links a.nav-github-v19.active{
  display:inline-flex;align-items:center;justify-content:center;
  background:#0a66c2!important;border:1px solid #0a66c2!important;
  color:white!important;font-weight:850;padding:10px 13px!important;
  border-radius:11px;box-shadow:0 6px 17px rgba(10,102,194,.14);
}
.nav-links a.nav-github-v19:hover{background:#094f9b!important;transform:translateY(-1px)}
.nav-links a:focus-visible,.nav-menu-button:focus-visible,.nav-toggle:focus-visible,.gallery-filter-v19:focus-visible,.gallery-show-more-v19:focus-visible{outline:3px solid #1ea4c9;outline-offset:3px}
@media(min-width:1281px){.nav-wrap.container{width:min(1340px,calc(100% - 36px));max-width:1340px}.brand-v03{min-width:230px}.brand-v03 .brand-text em{display:none}}
@media(max-width:1280px){
  .nav-wrap{min-height:75px}.nav-toggle{display:block}
  .nav-links{display:none;position:absolute;top:calc(100% + 6px);left:18px;right:18px;max-height:calc(100vh - 125px);overflow:auto;
    padding:15px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 45px rgba(6,22,47,.18);
    flex-direction:column;align-items:stretch;gap:3px;}
  .nav-links.open{display:flex}.nav-links>li,.nav-item{width:100%}
  .nav-links>li>a,.nav-links>li>.nav-menu-button{font-size:14px;padding:12px 14px;width:100%;text-align:left}
  .nav-links a.nav-github-v19{width:100%;justify-content:center;margin-top:6px}
  .nav-links .nav-priority-v19::after{left:14px;right:auto;width:48px}
  .nav-submenu{position:static;display:none;opacity:1;visibility:visible;transform:none;width:100%;min-width:0;border:0;border-left:2px solid var(--line);
    box-shadow:none;border-radius:0;margin:1px 0 4px 14px;padding:2px 0 2px 10px;background:transparent}
  .has-submenu.open-submenu>.nav-submenu,.has-submenu.open-submenu:hover>.nav-submenu{display:block}
  .has-submenu:hover>.nav-submenu:not(.force-open){display:none}
  .has-submenu.open-submenu:hover>.nav-submenu{display:block}
}
@media(max-width:450px){.nav-wrap{min-height:69px}.brand-logo{height:38px;width:38px}.brand-text strong{font-size:18px}}

.home-news-v19{background:linear-gradient(140deg,#ebf5fc 0%,#f7fafd 75%);border-top:1px solid #e3eefa;border-bottom:1px solid #e0edf8}
.home-news-v19 .news-card{border-color:#dce9f4;box-shadow:0 15px 40px rgba(11,45,94,.07)}
.home-news-v19 .eyebrow::before{content:"●";font-size:10px;color:#1ba0c6;margin-right:7px}

.pub-results-summary-v19{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:12px 21px;
  margin:0 0 16px;border:1px solid #cfdfee;border-radius:16px;background:linear-gradient(110deg,#f0f7fc,#fff)}
.pub-count-v19{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#3e5872;font-size:13px}
.pub-count-v19 strong{font-size:19px;color:#082c56;font-weight:850;font-variant-numeric:tabular-nums}
.pub-count-dot-v19{width:9px;height:9px;background:#1d9ab7;border-radius:50%;box-shadow:0 0 0 4px #d6eef3;margin-right:6px}
.pub-results-label-v19{color:#708398}
.pub-clear-v19{font-size:12px;font-weight:800;color:#0d568e;cursor:pointer;border:1px solid #cbdfee;background:white;padding:8px 12px;border-radius:999px;white-space:nowrap}
.pub-clear-v19:hover{background:#eaf3fa}
.pub-clear-v19[hidden]{display:none}
@media(max-width:640px){.pub-results-summary-v19{padding:12px 14px;flex-wrap:wrap;gap:6px}.pub-count-v19 strong{font-size:16px}.pub-results-label-v19{font-size:12px}}

/* Mission editorial redesign */
.mission-hero-v19{position:relative;background:#071936;color:white;overflow:hidden}
.mission-hero-v19::after{content:"";pointer-events:none;position:absolute;width:780px;height:780px;right:-260px;top:-300px;
  background:radial-gradient(circle,rgba(23,118,163,.28),transparent 65%)}
.mission-hero-grid-v19{display:grid;grid-template-columns:1.14fr .86fr;gap:50px;min-height:650px;align-items:center;padding:88px 0 96px;position:relative;z-index:2}
.mission-hero-copy-v19 h1{color:white;font:700 clamp(49px,5.2vw,76px)/1.04 Georgia,serif;letter-spacing:-.044em;margin:24px 0}
.mission-hero-copy-v19 h1 em{color:#9be5ee;font-weight:500;font-style:italic}
.mission-hero-copy-v19 p{font-size:18px;color:#d0e2f0;line-height:1.78;max-width:640px;margin:0}
.mission-hero-actions-v19{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}
.mission-primary-v19{color:#092245;background:#d9f5fa;border:1px solid #d9f5fa}
.mission-primary-v19:hover{background:white;color:#092245}
.mission-hero-line-v19{display:flex;flex-wrap:wrap;gap:14px 28px;border-top:1px solid #27415c;margin-top:42px;padding-top:21px;color:#92b2c9;font-size:11px;letter-spacing:.02em}
.mission-hero-diagram-v19{max-width:470px;margin-left:auto;width:100%;position:relative;padding:20px}
.mission-orbit-v19{position:relative;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(128,205,238,.22);
  box-shadow:inset 0 0 0 58px rgba(137,216,242,.025),inset 0 0 0 120px rgba(137,216,242,.015),0 0 50px rgba(17,99,166,.13)}
.mission-orbit-v19:before,.mission-orbit-v19:after{content:"";position:absolute;border-radius:50%;inset:17%;border:1px dashed rgba(141,217,242,.3)}
.mission-orbit-v19:after{inset:30%;border-style:solid;opacity:.45}
.mission-core-v19{position:relative;z-index:4;width:145px;height:145px;border-radius:50%;background:#f7fbfe;display:flex;align-items:center;justify-content:center;gap:7px;flex-direction:column;color:#0b2346;box-shadow:0 15px 50px rgba(0,0,0,.26)}
.mission-core-v19 img{width:62px;height:62px;object-fit:contain}.mission-core-v19 strong{font:800 16px Georgia,serif;letter-spacing:.08em}
.mission-orbit-node-v19{position:absolute;z-index:5;background:#12395b;border:1px solid #386482;padding:12px 14px;border-radius:14px;line-height:1.3;text-align:center;font-size:11px;color:#ecfbff;font-weight:760;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.mission-node-a{top:4%;left:8%}.mission-node-b{top:5%;right:-2%}.mission-node-c{bottom:6%;left:-5%}.mission-node-d{bottom:7%;right:4%}
.mission-diagram-footer-v19{text-align:center;color:#86b7d0;font-size:12px;font-weight:750;letter-spacing:.07em;margin-top:27px}
.mission-statement-grid-v19{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px}.mission-statement-grid-v19 h2{font:700 clamp(35px,4vw,52px)/1.12 Georgia,serif;letter-spacing:-.027em;margin-top:13px}
.mission-statement-grid-v19 h2 em{font-style:italic;font-weight:500;color:#167d9e}.mission-statement-grid-v19 p{color:#4b5d70;font-size:17px;line-height:1.78;margin:0 0 18px}
.mission-pillars-v19{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mission-pillars-v19 article{background:white;border:1px solid #dce7f0;border-radius:22px;padding:33px 30px 29px;min-height:315px;display:flex;flex-direction:column;box-shadow:0 10px 28px rgba(8,37,78,.035)}
.mission-pillar-number-v19{font-size:10px;font-weight:850;letter-spacing:.12em;color:#227c9a}
.mission-pillars-v19 h3{font:700 29px/1.17 Georgia,serif;color:var(--navy);margin:28px 0 11px}
.mission-pillars-v19 p{font-size:14px;color:#55677d;margin:0 0 25px}.mission-pillars-v19 a{margin-top:auto;color:#1769aa;font-size:12px;font-weight:850}
.mission-workflow-v19{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #ccdae9;margin-top:48px}
.mission-workflow-v19 article{padding:29px 22px 20px 2px;position:relative;border-right:1px solid #e2e8f0;margin-right:23px}
.mission-workflow-v19 article:last-child{border-right:0;margin-right:0}.mission-workflow-v19 article span{font:700 36px Georgia,serif;color:#bad6e6}
.mission-workflow-v19 article h3{font:700 24px Georgia,serif;margin:10px 0;color:#102b54}.mission-workflow-v19 article p{margin:0;font-size:14px;color:#596e80}
.mission-community-section-v19{background:#09244a;color:white;padding:0}
.mission-community-grid-v19{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:60px}
.mission-community-photo-v19{position:relative;min-height:430px;align-self:stretch;overflow:hidden}
.mission-community-photo-v19 img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.mission-community-photo-v19:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(0deg,rgba(0,13,31,.65),transparent)}
.mission-community-photo-v19 span{position:absolute;bottom:28px;left:30px;z-index:2;color:white;font-weight:850;font-size:13px}
.mission-community-copy-v19{padding:65px 20px 65px 0}.mission-community-copy-v19 .eyebrow{color:#95dbea}
.mission-community-copy-v19 h2{color:white;font-size:clamp(32px,3.5vw,48px);line-height:1.12}.mission-community-copy-v19 p{color:#c5d9e9;line-height:1.8;max-width:530px}
.mission-community-links-v19{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:29px}
.mission-community-links-v19 .text-link{color:#91e1eb}
.mission-impact-grid-v19{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mission-impact-grid-v19 a{padding:30px;border-radius:20px;background:#f4f8fc;border:1px solid #dce6f2;min-height:222px;display:flex;flex-direction:column;transition:.2s}
.mission-impact-grid-v19 a:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.mission-impact-grid-v19 span{color:#1769aa;letter-spacing:.12em;font-size:10px;text-transform:uppercase;font-weight:850}
.mission-impact-grid-v19 strong{font:700 23px/1.2 Georgia,serif;color:#102b54;margin:20px 0}
.mission-impact-grid-v19 em{margin-top:auto;color:#1b6395;font-size:12px;font-weight:850;font-style:normal}

/* PreDICO — academic spin-off, not a lab research pillar */
.predico-hero-v19{position:relative;background:linear-gradient(125deg,#0a263d 0%,#0b4252 65%,#107383 100%);color:white;overflow:hidden}
.predico-hero-v19:after{content:"";position:absolute;top:-200px;right:-100px;width:680px;height:680px;border-radius:50%;border:1px solid rgba(143,231,232,.15);box-shadow:0 0 0 82px rgba(143,231,232,.035),0 0 0 168px rgba(143,231,232,.024)}
.predico-hero-grid-v19{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:65px;padding:88px 0 94px;min-height:575px}
.predico-kicker-v19{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#b1f1ea;font-weight:850}
.predico-hero-copy-v19 h1{font:700 clamp(51px,5.3vw,75px)/1.04 Georgia,serif;letter-spacing:-.045em;margin:22px 0 21px;color:#fff}
.predico-hero-copy-v19 h1 em{font-weight:500;font-style:italic;color:#b5f6e4}.predico-hero-copy-v19 p{color:#d5e9eb;font-size:18px;max-width:610px;line-height:1.75}
.predico-actions-v19{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.predico-action-primary-v19{background:#dbf8ef;color:#103e41;border:1px solid #dbf8ef}
.predico-action-primary-v19:hover{color:#103e41;background:white}.predico-action-ghost-v19{color:white;background:rgba(255,255,255,.075);border:1px solid #4a8792}.predico-action-ghost-v19:hover{background:rgba(255,255,255,.14);color:white}
.predico-identity-v19{display:flex;flex-direction:column;gap:4px;padding-top:19px;margin-top:33px;border-top:1px solid #416c75;color:#b8d7db;font-size:11px}
.predico-identity-v19 strong{color:#f0fbfa;font-weight:800}
.predico-hero-visual-v19{position:relative;max-width:500px;width:100%;min-height:345px;padding:33px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:34px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 75px rgba(2,14,25,.16);backdrop-filter:blur(10px)}
.predico-hero-logo-v19{background:#fff;border-radius:22px;padding:19px 22px;width:min(100%,390px);position:relative;z-index:2;box-shadow:0 20px 48px rgba(0,0,0,.17)}
.predico-hero-logo-v19 img{width:100%;max-height:124px;object-fit:contain}
.predico-data-lines-v19{display:flex;align-items:flex-end;justify-content:center;height:82px;gap:15px;position:relative;z-index:1;margin-top:13px}
.predico-data-lines-v19 span{width:18px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#9ceacf,rgba(39,157,180,.2));height:40px;opacity:.85}
.predico-data-lines-v19 span:nth-child(2){height:70px}.predico-data-lines-v19 span:nth-child(3){height:52px}.predico-data-lines-v19 span:nth-child(4){height:78px}.predico-data-lines-v19 span:nth-child(5){height:57px}.predico-data-lines-v19 span:nth-child(6){height:38px}.predico-data-lines-v19 span:nth-child(7){height:63px}.predico-data-lines-v19 span:nth-child(8){height:48px}
.predico-data-label-v19{font-size:10px;color:#aee3db;letter-spacing:.17em;font-weight:850;margin-top:14px}.predico-data-label-v19 b{color:#6be1d9;margin:0 8px}
.predico-intro-grid-v19{display:grid;grid-template-columns:.91fr 1.09fr;gap:100px}.predico-intro-grid-v19 h2{font-size:clamp(36px,4vw,50px);line-height:1.13}.predico-intro-grid-v19 p{font-size:16px;line-height:1.8;color:#536779;margin:0 0 17px}
.predico-domains-v19{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.predico-domains-v19 article{background:#fff;border:1px solid #dce7ed;border-radius:22px;padding:25px 23px;display:flex;flex-direction:column;min-height:336px}
.predico-domain-index-v19{font-size:10px;letter-spacing:.12em;font-weight:850;color:#177d8c}
.predico-domain-symbol-v19{display:grid;place-items:center;width:75px;height:75px;border-radius:18px;margin:24px 0 14px;background:#e9f5f5;color:#19586c;font:800 18px Georgia,serif}
.predico-domains-v19 h3{font:700 24px/1.12 Georgia,serif;color:#0a2b4a;margin:0 0 12px}.predico-domains-v19 p{color:#536777;font-size:13px;margin:0 0 18px}
.predico-domain-foot-v19{font-size:10px;color:#2e8190;border-top:1px solid #deedf0;padding-top:14px;margin-top:auto;font-weight:750}
.predico-source-v19{font-size:12px;color:#72859a;margin:24px 0 0}.predico-source-v19 a{color:#0d7591;font-weight:850}
.predico-capabilities-grid-v19{display:grid;grid-template-columns:1.1fr .9fr;gap:65px;align-items:center}.predico-capabilities-grid-v19 h2{font-size:clamp(36px,4vw,50px);line-height:1.15}.predico-capabilities-grid-v19 p{color:#536777;font-size:16px;line-height:1.75}
.predico-inline-cta-v19{background:#0c4b64;color:white;border-radius:10px;margin-top:15px}.predico-inline-cta-v19:hover{color:white;background:#123e54}
.predico-stack-v19{display:grid;gap:7px}.predico-stack-v19 span{padding:17px 22px;border-radius:12px;background:#f1f8f8;border-left:5px solid #3fb3ae;color:#20566c;font-weight:800;font-size:13px;letter-spacing:.035em}
.predico-relationship-section-v19{background:#0a2c43;color:#effbff;padding:76px 0}.predico-relationship-grid-v19{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center}
.predico-relationship-section-v19 h2{color:#fff;font-size:clamp(36px,4vw,50px)}.predico-relationship-section-v19 .eyebrow{color:#96ddd9}.predico-relationship-section-v19 p{color:#b6d2dc;max-width:720px;line-height:1.75}
.predico-relationship-actions-v19{display:grid;gap:10px}.predico-relationship-actions-v19 a{padding:15px 18px;border-radius:11px;background:#18455f;color:#ecffff;font-size:13px;font-weight:850}.predico-relationship-actions-v19 a:hover{background:#2b6580;color:white}

/* Gallery v1.9: curated corkboard + bounded archive */
.gallery-hero-v19{background:linear-gradient(125deg,#071936 0%,#0e355c 88%);color:white;overflow:hidden}
.gallery-hero-grid-v19{display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:center;min-height:530px;padding:64px 0}
.gallery-hero-v19 h1{font:700 clamp(52px,6vw,79px)/1.02 Georgia,serif;letter-spacing:-.04em;color:white;margin:18px 0 24px}
.gallery-hero-v19 h1 em{font-weight:500;color:#97e4ee}.gallery-hero-v19 p{color:#d4e5ef;max-width:560px;font-size:18px;line-height:1.72}
.gallery-hero-cta-v19{display:inline-flex;align-items:center;gap:22px;padding:13px 0;margin-top:18px;color:#9ce8ef;font-weight:850;border-bottom:1px solid #75bfc6}
.gallery-hero-cta-v19:hover{color:white}.gallery-hero-cta-v19 span{font-size:25px;line-height:1}
.gallery-hero-images-v19{height:390px;position:relative;margin:10px 0}
.gallery-hero-images-v19 img{position:absolute;object-fit:cover;box-shadow:0 26px 60px rgba(0,0,0,.36);border:9px solid #fff;background:#fff}
.gallery-hero-img-back-v19{width:69%;height:250px;right:0;top:6px;transform:rotate(5deg)}
.gallery-hero-img-front-v19{width:75%;height:270px;left:0;bottom:8px;transform:rotate(-5deg)}
.gallery-hero-sticker-v19{position:absolute;right:5%;bottom:22px;transform:rotate(8deg);background:#ffe37c;color:#172b44;font:bold 20px Georgia,serif;padding:16px 19px;box-shadow:0 12px 30px rgba(0,0,0,.28)}
.gallery-hero-sticker-v19 b{color:#0b82a0}
.gallery-featured-section-v19{background:#f7f3e9}
.gallery-featured-wall-v19{gap:30px}
.gallery-featured-wall-v19 .gallery-photo-v17 img{height:clamp(220px,23vw,345px);object-fit:cover}
.gallery-featured-wall-v19 .gallery-note-v17{min-height:270px}
.gallery-note-link-v19{margin-top:auto;padding-top:15px;display:inline-block;color:#174e78;font-size:12px;font-weight:850;border-bottom:1px solid rgba(19,75,106,.3);align-self:flex-start}
.gallery-note-link-v19:hover{color:#061e3b}
.gallery-archive-section-v19{background:#fff;scroll-margin-top:92px}
.gallery-archive-toolbar-v19{background:#f4f8fb;border:1px solid #dce7ef;border-radius:21px;padding:16px 18px;margin-bottom:29px}
.gallery-filter-group-v19{display:flex;flex-wrap:wrap;gap:8px}
.gallery-filter-v19{border-radius:999px;background:white;border:1px solid #d5e2ec;padding:9px 16px;font-size:12px;font-weight:850;color:#456074;cursor:pointer;transition:.16s}
.gallery-filter-v19.is-active,.gallery-filter-v19:hover{background:#0b2d58;color:white;border-color:#0b2d58}
.gallery-archive-second-row-v19{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding-top:13px;border-top:1px solid #dce7ef}
.gallery-archive-count-v19{color:#335775;font-size:12px;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}
.gallery-archive-grid-v19{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.gallery-archive-card-v19{position:relative;background:#fff;overflow:hidden;border:1px solid #e1e9f0;border-radius:18px;box-shadow:0 9px 30px rgba(13,42,74,.06);margin:0;cursor:zoom-in;transition:transform .18s,box-shadow .18s}
.gallery-archive-card-v19:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(13,42,74,.13)}
.gallery-archive-card-v19[hidden]{display:none!important}
.gallery-archive-card-v19>img{width:100%;height:190px;object-fit:cover;background:#dce8f0}
.gallery-archive-card-v19 figcaption{padding:15px 17px 18px}.gallery-archive-card-v19 figcaption span{display:block;font-size:11px;color:#77899b}
.gallery-archive-card-v19 .gallery-card-kicker-v19{color:#1687a2;font-weight:850;letter-spacing:.08em;text-transform:uppercase;font-size:9px}
.gallery-archive-card-v19 figcaption strong{display:block;font:700 20px/1.2 Georgia,serif;color:#0b274d;margin:9px 0 6px}
.gallery-archive-card-v19 .gallery-zoom-v19{position:absolute;top:12px;right:12px;background:rgba(6,34,59,.83);border-radius:50%;width:33px;height:33px;display:grid;place-items:center;color:#fff;font-weight:850}
.gallery-archive-footer-v19{text-align:center;padding:32px 0 0}.gallery-archive-footer-v19 p{font-size:12px;color:#8494a6;margin:17px 0 0}
.gallery-show-more-v19{border:1px solid #1e628c;background:#0b355f;color:#fff;padding:13px 24px;border-radius:999px;font-size:13px;font-weight:850;cursor:pointer}
.gallery-show-more-v19:hover{background:#14577f}.gallery-show-more-v19[hidden],.gallery-archive-empty-v19[hidden]{display:none!important}
.gallery-archive-empty-v19{background:#f5f9fc;color:#5d7182;border-radius:14px;padding:25px;font-weight:750}
.gallery-outro-v19{background:#0c2547;color:#fff;padding:62px 0}.gallery-outro-inner-v19{display:flex;gap:30px;justify-content:space-between;align-items:center}
.gallery-outro-v19 h2{font-size:clamp(28px,3.5vw,44px);color:#fff;margin:10px 0}.gallery-outro-v19 p{color:#b9d0e1;margin:0}
.gallery-outro-v19 .eyebrow{color:#98ddea}.gallery-outro-inner-v19>div:last-child{display:flex;gap:12px;flex-wrap:wrap}.gallery-outro-link-v19{border:1px solid #6e8daa;color:#f2fcff}
.gallery-lightbox-v16 .gallery-lightbox-prev-v19,.gallery-lightbox-v16 .gallery-lightbox-next-v19{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;z-index:3;border:1px solid rgba(255,255,255,.35);background:rgba(13,32,59,.8);border-radius:50%;font-size:32px;line-height:1;color:white;cursor:pointer}
.gallery-lightbox-prev-v19{left:22px}.gallery-lightbox-next-v19{right:22px}

@media(max-width:1050px){
  .mission-hero-grid-v19,.predico-hero-grid-v19{grid-template-columns:1fr;gap:35px;padding:65px 0}
  .mission-hero-diagram-v19,.predico-hero-visual-v19{margin:0 auto}
  .mission-statement-grid-v19,.predico-intro-grid-v19{gap:42px}
  .mission-community-grid-v19{gap:35px}.mission-community-photo-v19{min-height:390px}
  .predico-domains-v19{grid-template-columns:repeat(2,minmax(0,1fr))}.predico-domains-v19 article{min-height:300px}
  .gallery-hero-grid-v19{grid-template-columns:1fr;min-height:auto}.gallery-hero-images-v19{width:min(570px,90%);margin:30px auto 0}
  .gallery-featured-wall-v19 .gallery-note-v17{min-height:245px}
  .gallery-archive-grid-v19{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .mission-hero-grid-v19,.predico-hero-grid-v19{padding:55px 0}
  .mission-hero-copy-v19 h1,.predico-hero-copy-v19 h1{font-size:clamp(43px,10.8vw,65px)}
  .mission-orbit-v19{max-width:350px;margin:auto}.mission-orbit-node-v19{font-size:9px;padding:9px}
  .mission-core-v19{width:112px;height:112px}.mission-core-v19 img{width:50px;height:50px}
  .mission-node-a{left:-2%}.mission-node-b{right:-4%}.mission-node-c{left:-6%}
  .mission-statement-grid-v19,.predico-intro-grid-v19{grid-template-columns:1fr;gap:23px}
  .mission-pillars-v19,.mission-impact-grid-v19{grid-template-columns:1fr}
  .mission-workflow-v19{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
  .mission-community-grid-v19{display:flex;flex-direction:column;gap:0}.mission-community-photo-v19{width:100%;min-height:290px}.mission-community-copy-v19{padding:37px 0 50px}
  .predico-domains-v19{grid-template-columns:1fr}.predico-domains-v19 article{min-height:275px}
  .predico-capabilities-grid-v19,.predico-relationship-grid-v19{grid-template-columns:1fr;gap:32px}
  .gallery-hero-v19 h1{font-size:clamp(48px,11vw,67px)}.gallery-hero-images-v19{height:285px}
  .gallery-hero-img-back-v19{height:190px}.gallery-hero-img-front-v19{height:205px}.gallery-hero-sticker-v19{font-size:14px;padding:11px}
  .gallery-featured-wall-v19 .gallery-photo-v17 img{height:auto;max-height:380px}
  .gallery-archive-grid-v19{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
  .gallery-archive-card-v19>img{height:175px}
  .gallery-archive-second-row-v19{flex-direction:column;align-items:flex-start}
  .gallery-outro-inner-v19{flex-direction:column;align-items:flex-start}
  .gallery-lightbox-prev-v19{left:4px}.gallery-lightbox-next-v19{right:4px}
  .gallery-lightbox-v16 .gallery-lightbox-prev-v19,.gallery-lightbox-v16 .gallery-lightbox-next-v19{top:auto;bottom:17px;transform:none;width:42px;height:42px}
}
@media(max-width:500px){
  .gallery-archive-grid-v19{grid-template-columns:1fr}.gallery-archive-card-v19{display:grid;grid-template-columns:40% 60%;min-height:154px}
  .gallery-archive-card-v19>img{height:100%;min-height:154px}
  .gallery-archive-card-v19 figcaption{padding:17px 16px;align-self:center}
  .gallery-archive-card-v19 figcaption strong{font-size:17px}
  .gallery-archive-card-v19 .gallery-zoom-v19{width:28px;height:28px;top:9px;right:9px}
  .gallery-filter-v19{font-size:11px;padding:8px 12px}
  .mission-workflow-v19{grid-template-columns:1fr}.mission-workflow-v19 article{margin:0;border-right:0;border-bottom:1px solid var(--line)}
  .predico-hero-visual-v19{min-height:260px}.predico-hero-logo-v19{padding:11px}.predico-data-label-v19{letter-spacing:.065em}
}
@media(prefers-reduced-motion:reduce){.gallery-archive-card-v19,.mission-impact-grid-v19 a{transition:none}}


/* ======================================================
   M.O.D.A.L. v1.9.1 — navigation restraint,
   four-card homepage news, and the SCULPT programme.
   ====================================================== */
.nav-links .nav-priority-v19::after{display:none}
.home-news-v19 .grid-3{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.home-news-v19 .news-card{min-width:0}
.home-news-v19 .news-card .card-body{padding:20px}
.home-news-v19 .news-card h3{font-size:19px;line-height:1.3}
.home-news-v19 .news-card p{font-size:13px;line-height:1.65}
.home-news-v19 .news-media{height:172px}
.news-card-invited-v191 .news-media{background:#0d3c7f}
.news-card-invited-v191 .news-media img{object-fit:cover;object-position:center center}
@media(max-width:1100px){.home-news-v19 .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:670px){.home-news-v19 .grid-3{grid-template-columns:1fr}.home-news-v19 .news-media{height:190px}}
.news-archive-upcoming-v191{border-color:#9bcbe6!important;background:linear-gradient(140deg,#f7fbff,#fff)}

.sculpt-project-card-v191{border-color:#9cc6e7;box-shadow:0 14px 30px rgba(7,43,84,.07)}
.sculpt-project-media-v191{position:relative;height:205px;background:radial-gradient(circle at 75% 40%,#217cc0 0,#0b477e 38%,#0b2045 100%);padding:27px 30px;color:white;overflow:hidden}
.sculpt-project-glow-v191{position:absolute;width:240px;height:240px;right:-40px;top:-65px;border:1px solid rgba(187,243,255,.4);border-radius:50%;box-shadow:0 0 0 38px rgba(145,216,252,.08),0 0 0 82px rgba(145,216,252,.05)}
.sculpt-project-headline-v191{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.sculpt-project-headline-v191 span{font-size:10px;letter-spacing:.17em;color:#bcecff;font-weight:800}
.sculpt-project-headline-v191 b{font-size:46px;line-height:1.1;letter-spacing:-.06em}
.sculpt-project-headline-v191 small{font-size:12px;opacity:.9;max-width:240px;line-height:1.5}
.sculpt-project-orbit-v191{position:absolute;right:57px;bottom:45px;width:80px;height:80px;border:2px dashed rgba(191,240,253,.45);border-radius:50%;transform:rotate(-22deg)}
.sculpt-project-orbit-v191 i{position:absolute;display:block;width:18px;height:18px;border-radius:50%;background:#38e3d5}
.sculpt-project-orbit-v191 i:nth-child(1){top:-8px;left:37px}.sculpt-project-orbit-v191 i:nth-child(2){bottom:7px;right:-10px;background:#7bc7ff}.sculpt-project-orbit-v191 i:nth-child(3){bottom:-6px;left:7px;background:#fbd892}
.sculpt-project-link-v191{display:inline-block;margin-top:15px}
.sculpt-page-v191 h2{font-size:clamp(29px,3.5vw,42px);line-height:1.14;color:#082748;letter-spacing:-.035em}
.sculpt-page-v191 p{line-height:1.78}
.sculpt-hero-v191{background:radial-gradient(circle at 94% 30%,#124976 0,#0b2b55 29%,#071936 85%);color:white;padding:88px 0 75px;overflow:hidden}
.sculpt-hero-layout-v191{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:60px;align-items:center}
.sculpt-kicker-v191{color:#9eddf2;letter-spacing:.13em;font-weight:800;font-size:11px}
.sculpt-kicker-v191 span{padding:0 7px;color:#5cc4db}
.sculpt-hero-v191 h1{font-size:clamp(70px,9vw,133px);line-height:.95;letter-spacing:-.075em;color:white;margin:23px 0 18px}
.sculpt-hero-v191 h1 span{color:#37d6c6}
.sculpt-tagline-v191{font-size:clamp(23px,2.7vw,34px);font-weight:650;line-height:1.25!important;max-width:610px;margin:0 0 22px}
.sculpt-tagline-v191 em{font-style:normal;color:#92ecf3}
.sculpt-intro-v191{max-width:640px;font-size:15px;color:#d2e4f3;margin:0 0 34px}
.sculpt-intro-v191 strong{color:white}
.sculpt-hero-actions-v191{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
.sculpt-secondary-link-v191{color:white;font-weight:750;text-decoration:none}
.sculpt-hero-visual-v191{border:1px solid rgba(183,240,255,.25);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.04));padding:25px 30px;border-radius:25px;box-shadow:0 35px 80px rgba(0,0,0,.14)}
.sculpt-visual-heading-v191{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#a4d8ee;text-align:center;margin-bottom:18px;font-weight:800}
.sculpt-node-v191{border:1px solid rgba(181,240,252,.43);background:rgba(6,29,62,.75);border-radius:15px;padding:14px 17px;display:flex;flex-direction:column;gap:3px;box-shadow:0 7px 22px rgba(0,0,0,.12)}
.sculpt-node-v191>span{font-size:10px;letter-spacing:.12em;color:#6ce4de;font-weight:800}
.sculpt-node-v191>strong{font-size:15px;color:#fff}
.sculpt-node-v191>small{font-size:11px;color:#bfd9e9}
.sculpt-node-twin-v191{background:#0a5582;border-color:#42dfcc}
.sculpt-flow-v191{text-align:center;color:#80dee5;font-size:19px;line-height:1.15;padding:5px}
.sculpt-visual-bifurcation-v191{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.sculpt-visual-bifurcation-v191 strong{font-size:13px}
.sculpt-visual-note-v191{font-size:10px;text-align:center;color:#9db5d2;margin-top:17px}
.sculpt-facts-v191{background:#edf7fc;border-bottom:1px solid #d1e5f0}
.sculpt-facts-grid-v191{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.sculpt-facts-grid-v191>div{padding:25px 22px 25px 0;display:flex;flex-direction:column;gap:8px}
.sculpt-facts-grid-v191 small,.sculpt-team-details-v191 small{font-size:10px;letter-spacing:.14em;font-weight:850;color:#497b9b}
.sculpt-facts-grid-v191 strong{font-size:16px;color:#0b2c50}
.sculpt-two-col-v191{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.sculpt-two-col-v191 p{color:#485e73;margin:0 0 19px}
.sculpt-work-grid-v191{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sculpt-work-grid-v191 article{border:1px solid #dbe8ef;border-radius:22px;background:white;padding:30px;box-shadow:0 10px 30px rgba(6,45,86,.035)}
.sculpt-work-index-v191{font-weight:850;font-size:11px;letter-spacing:.12em;color:#158b9a}
.sculpt-work-grid-v191 h3{font-size:23px;margin:24px 0 10px;color:#0b3057}
.sculpt-work-grid-v191 p{font-size:14px;color:#566b7a;min-height:145px}
.sculpt-work-grid-v191 article>span{font-size:11px;line-height:1.5;color:#2877a4;font-weight:750}
.sculpt-milestone-grid-v191{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:25px}
.sculpt-milestone-grid-v191>div{border-top:3px solid #3ea7bb;padding:20px 0}
.sculpt-milestone-grid-v191 b{font-size:18px;color:#0b3057}
.sculpt-milestone-grid-v191 p{font-size:13px;color:#526f82}
.sculpt-research-caveat-v191{font-size:12px;color:#7d8fa0}
.sculpt-team-layout-v191{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px}
.sculpt-team-layout-v191>div>p{color:#52697d;margin:20px 0}
.sculpt-team-details-v191{border:1px solid #d7e5ee;background:#fff;border-radius:22px;padding:12px 30px}
.sculpt-team-details-v191>div{display:flex;flex-direction:column;gap:6px;padding:21px 0;border-bottom:1px solid #e4edf2}
.sculpt-team-details-v191>div:last-child{border-bottom:0}
.sculpt-team-details-v191 strong{color:#0a2c51;font-size:17px}
.sculpt-team-details-v191 span{font-size:13px;color:#627889;line-height:1.6}
.sculpt-team-details-v191 a{align-self:flex-start;margin-top:7px}
@media(max-width:1000px){.sculpt-hero-layout-v191{gap:30px}.sculpt-work-grid-v191 article{padding:22px}.sculpt-work-grid-v191 p{min-height:0}}
@media(max-width:800px){.sculpt-hero-layout-v191,.sculpt-two-col-v191,.sculpt-team-layout-v191{grid-template-columns:1fr;gap:36px}.sculpt-hero-v191{padding:60px 0}.sculpt-facts-grid-v191{grid-template-columns:repeat(2,1fr)}.sculpt-work-grid-v191{grid-template-columns:1fr}.sculpt-milestone-grid-v191{grid-template-columns:repeat(2,1fr)}.sculpt-hero-visual-v191{max-width:610px}}
@media(max-width:530px){.sculpt-hero-v191 h1{font-size:76px}.sculpt-facts-grid-v191{grid-template-columns:1fr 1fr}.sculpt-facts-grid-v191>div{padding:16px 10px 16px 0}.sculpt-facts-grid-v191 strong{font-size:14px}.sculpt-milestone-grid-v191{grid-template-columns:1fr}.sculpt-hero-visual-v191{padding:15px}.sculpt-visual-bifurcation-v191{gap:6px}.sculpt-node-v191{padding:12px 9px}.sculpt-node-v191>strong{font-size:12px}}


/* v1.9.2 — Featured Atlante PRIN 2026 and enlarged photo archive */
.atlas-feature-v192{padding:30px 0 65px;background:#fff}
.atlas-feature-panel-v192{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:30px;align-items:center;min-height:385px;background:radial-gradient(ellipse at 0% 100%,#194f81 0%,#0b315b 45%,#061e3c 100%);border-radius:24px;color:white;overflow:hidden;box-shadow:0 17px 45px rgba(12,46,78,.12)}
.atlas-feature-copy-v192{padding:50px 0 52px 59px;max-width:665px;position:relative;z-index:1}
.atlas-eyebrow-v192{text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.105em;color:#a4e4ed;display:flex;align-items:center;gap:10px}
.atlas-live-dot-v192{width:8px;height:8px;border-radius:50%;background:#64edce;box-shadow:0 0 0 5px rgba(100,237,206,.11)}
.atlas-feature-v192 h2{font:700 clamp(42px,5vw,63px)/1.04 Georgia,serif;margin:24px 0 21px;letter-spacing:-.045em;color:#fff}
.atlas-feature-v192 h2 span{color:#62dfdf}
.atlas-feature-copy-v192>p{font-size:15px;line-height:1.85;color:#dcecf8;max-width:530px;margin:0 0 28px}
.atlas-feature-links-v192{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.atlas-primary-link-v192{display:inline-flex;align-items:center;gap:20px;background:#fff;color:#0b385d;text-decoration:none;padding:15px 20px;border-radius:9px;font-size:14px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.13);transition:transform .18s,box-shadow .18s}
.atlas-primary-link-v192:hover{transform:translateY(-2px);box-shadow:0 12px 27px rgba(0,0,0,.2);color:#0b385d}
.atlas-primary-link-v192 span{font-size:20px}
.atlas-meta-v192{font-size:11px;color:#a8cede;line-height:1.5;max-width:180px}
.atlas-preview-v192{margin:29px 29px 29px 0;border-radius:16px;background:#eef6fc;box-shadow:0 25px 60px rgba(1,9,27,.23);overflow:hidden;transform:rotate(1deg)}
.atlas-preview-top-v192{background:white;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 17px;border-bottom:1px solid #dbe7f2;color:#204469;font-size:13px}
.atlas-preview-top-v192>span:first-child{display:flex;gap:5px}.atlas-preview-top-v192 i{display:block;height:7px;width:7px;border-radius:50%;background:#b9cddd}.atlas-preview-top-v192 i:first-child{background:#37b9c3}.atlas-preview-top-v192 strong{font-size:13px}.atlas-preview-globe-v192{font-weight:900;font-size:17px;color:#287aa2}
.atlas-preview-stage-v192{position:relative;min-height:238px}
.atlas-preview-map-v192{display:block;width:100%;height:auto;max-height:278px}
.atlas-preview-foot-v192{color:#698299;padding:8px 15px 12px;text-align:center;font-size:10px;background:white}
.nav-submenu .atlas-nav-link-v192{color:#0f688d;font-weight:800}
.atlas-project-strip-v192{background:#f3f9fc;padding:24px 0 6px}
.atlas-project-strip-inner-v192{background:white;border:1px solid #d2e8f3;box-shadow:0 5px 20px rgba(10,55,89,.035);border-radius:16px;padding:24px 29px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.atlas-strip-label-v192{color:#247b9e;font-weight:800;font-size:10px;letter-spacing:.09em;text-transform:uppercase}
.atlas-project-strip-inner-v192 h2{font:700 26px/1.2 Georgia,serif;color:#102f51;margin:9px 0 6px}
.atlas-project-strip-inner-v192 p{color:#5a7081;font-size:13px;line-height:1.6;margin:0;max-width:690px}
.atlas-project-strip-action-v192,.atlas-prin-note-link-v192{white-space:nowrap;text-decoration:none;color:white!important;background:#0e5685;border-radius:9px;padding:14px 19px;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}
.atlas-project-strip-action-v192:hover,.atlas-prin-note-link-v192:hover{background:#0a385a}
.atlas-prin-note-v192{margin-top:23px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:25px;border:1px solid #d6e8f1;background:#f4fafc;padding:23px 28px;border-radius:17px}
.atlas-prin-note-v192 p{margin:7px 0 0;color:#4b6578;line-height:1.7;font-size:13px;max-width:800px}
.atlas-prin-note-v192 p strong{color:#123d60}
.atlas-news-v192{border-color:#b8dfec;background:linear-gradient(110deg,#f0fafe,#fff)}
.gallery-new-v192 img{color:#183c54}
@media(max-width:1000px){.atlas-feature-panel-v192{gap:18px}.atlas-feature-copy-v192{padding:35px 0 37px 34px}.atlas-feature-v192 h2{font-size:47px}.atlas-preview-v192{margin-right:16px}.atlas-meta-v192{max-width:none}}
@media(max-width:750px){.atlas-feature-v192{padding:12px 0 45px}.atlas-feature-panel-v192{grid-template-columns:1fr;gap:0}.atlas-feature-copy-v192{padding:37px 28px 20px;max-width:none}.atlas-feature-v192 h2{font-size:clamp(39px,10vw,58px)}.atlas-feature-copy-v192>p{font-size:14px}.atlas-preview-v192{margin:10px 26px 28px;transform:none}.atlas-project-strip-inner-v192,.atlas-prin-note-v192{flex-direction:column;align-items:flex-start}.atlas-project-strip-action-v192{width:100%}.atlas-prin-note-link-v192{width:100%}}
@media(max-width:430px){.atlas-feature-panel-v192{border-radius:16px}.atlas-feature-copy-v192{padding:29px 23px 12px}.atlas-preview-v192{margin:10px 14px 20px}.atlas-eyebrow-v192{font-size:10px}.atlas-primary-link-v192{width:100%;justify-content:space-between}.atlas-project-strip-inner-v192{padding:22px}.atlas-preview-stage-v192{min-height:0}}
@media(prefers-reduced-motion:reduce){.atlas-primary-link-v192{transition:none}}

/* v1.9.9 — partner cards: no clipped names/logos, resilient fallbacks */
.partner-grid-v15{grid-template-columns:repeat(4,minmax(0,1fr))}
.partner-card-v15{min-width:0;max-width:100%;overflow:hidden}
.partner-logo-v15{box-sizing:border-box;min-width:0;max-width:100%;overflow:hidden;padding:15px 18px;isolation:isolate;text-align:center}
.partner-logo-v15 img{display:block;min-width:0;max-width:100%;max-height:108px;height:auto;width:auto;object-fit:contain;margin:auto}
.partner-body-v15{min-width:0;overflow-wrap:anywhere;word-break:normal}
.partner-body-v15 h3{max-width:100%;overflow-wrap:anywhere;hyphens:auto;font-size:clamp(13px,1.18vw,17px);line-height:1.28}
.partner-body-v15 p{overflow-wrap:anywhere}
.partner-tags-v15{min-width:0;align-content:start}
.partner-tags-v15 span{max-width:100%;overflow-wrap:anywhere;text-align:center}
.partner-wordmark-v199{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;max-width:100%;width:100%;min-width:0;box-sizing:border-box;padding:5px 3px;min-height:93px;text-align:center}
.partner-wordmark-v199 .wordmark-main-v199{display:block;max-width:100%;color:#143d65;font-size:clamp(17px,1.8vw,27px);font-weight:900;line-height:1.05;letter-spacing:-.02em;overflow-wrap:anywhere}
.partner-wordmark-v199 .wordmark-sub-v199{display:block;max-width:100%;color:#52697f;font-size:clamp(10px,1.0vw,12px);font-weight:750;line-height:1.3;overflow-wrap:anywhere}
.wordmark-tps-v199 .wordmark-main-v199{color:#0d699b;font-size:clamp(32px,2.9vw,43px);letter-spacing:.04em}
.wordmark-elixir-v199 .wordmark-main-v199{color:#45424d;letter-spacing:.015em}
.wordmark-elixir-v199 .wordmark-sub-v199{color:#d16c17}
.wordmark-opiware-v199 .wordmark-main-v199{color:#18609a;letter-spacing:.02em}
.wordmark-kpmg-v199 .wordmark-main-v199{color:#00338d;font-size:clamp(26px,2.7vw,38px)}
.partner-wordmark-fallback-v199 .wordmark-main-v199{font-size:clamp(15px,1.4vw,21px);font-weight:800;line-height:1.2}
@media(max-width:1100px){.partner-grid-v15{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.partner-grid-v15{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-body-v15 h3{font-size:15px}.partner-wordmark-v199 .wordmark-main-v199{font-size:clamp(16px,2.8vw,24px)}}
@media(max-width:500px){.partner-grid-v15{grid-template-columns:1fr 1fr;gap:9px}.partner-logo-v15{min-height:92px;padding:10px 7px}.partner-logo-v15 img{max-height:75px}.partner-card-v15{min-height:240px;border-radius:15px}.partner-body-v15{padding:12px 10px}.partner-body-v15 h3{font-size:13px;line-height:1.24;overflow-wrap:anywhere}.partner-body-v15 p{font-size:10px}.partner-tags-v15{gap:3px;padding-top:9px}.partner-tags-v15 span{font-size:7px;padding:4px 5px}.partner-wordmark-v199{min-height:67px;padding:3px 1px}.partner-wordmark-v199 .wordmark-main-v199,.partner-wordmark-fallback-v199 .wordmark-main-v199{font-size:clamp(12px,3.2vw,19px)}.partner-wordmark-v199 .wordmark-sub-v199{font-size:9px}}
/* v1.9.9 — featured paper should flow INSIDE its Research pillar card, no absolute positioning */
.pillar-card-v13.p-twins{display:flex;flex-direction:column;min-height:430px;overflow:hidden}
.pillar-card-v13.p-twins > .pillar-featured-paper-v131{position:static;left:auto;right:auto;bottom:auto;top:auto;display:flex;flex-direction:column;gap:5px;flex:none;align-self:stretch;margin-top:auto;min-width:0;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;white-space:normal;text-decoration:none}
.pillar-card-v13.p-twins > .pillar-featured-paper-v131 b,.pillar-card-v13.p-twins > .pillar-featured-paper-v131 span{overflow-wrap:anywhere;white-space:normal}
.pillar-card-v13.p-twins > .pillar-featured-paper-v131:hover{transform:none}
@media(max-width:720px){.pillar-card-v13.p-twins{min-height:0}}
/* v1.9.9: narrow screens – group image must never force a wider grid */
.home-people-layout > *{min-width:0;max-width:100%}
.home-group-photo img{display:block;max-width:100%;height:auto}
@media(max-width:1050px){.home-people-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:420px){.home-people-copy > .text-link{white-space:normal;overflow-wrap:anywhere;max-width:100%}}
