:root {
  --ink:#17322c;
  --muted:#587068;
  --paper:#f7f8f4;
  --white:#ffffff;
  --sage:#dfe8df;
  --mint:#edf3ef;
  --teal:#2f6f64;
  --deep:#123f39;
  --gold:#c39a57;
  --line:#d7e0db;
  --shadow:0 18px 50px rgba(19,63,57,.08);
  --radius:22px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.nav{position:sticky;top:0;z-index:20;background:rgba(247,248,244,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(215,224,219,.8)}
.nav-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.02em}
.mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--deep),var(--teal));position:relative;box-shadow:var(--shadow)}
.mark:after{content:"";position:absolute;left:10px;right:10px;top:17px;height:3px;border-radius:3px;background:#fff;box-shadow:0 -7px 0 rgba(255,255,255,.72),0 7px 0 rgba(255,255,255,.45)}
.links{display:flex;gap:24px;font-size:.95rem;color:var(--muted)}
.links a:hover,.links a[aria-current="page"]{color:var(--deep)}
.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;background:var(--deep);color:#fff;font-weight:700;font-size:.94rem;transition:.2s}
.nav-cta:hover,.button:hover{transform:translateY(-1px);background:#0b332e}
.button.secondary{background:transparent;color:var(--deep);border:1px solid var(--line)}
.hero{padding:92px 0 76px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:66px;align-items:center}
.kicker{display:inline-flex;gap:8px;align-items:center;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:800;color:var(--teal)}
.kicker:before{content:"";width:26px;height:2px;background:var(--gold)}
h1{font-size:clamp(3rem,6vw,6.2rem);line-height:.96;letter-spacing:-.055em;margin:18px 0 28px;max-width:900px}
.hero p{font-size:1.18rem;color:var(--muted);max-width:700px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero-art{min-height:520px;position:relative}
.orb{position:absolute;border-radius:50%;filter:blur(0)}
.orb.a{width:370px;height:370px;right:10px;top:30px;background:radial-gradient(circle at 35% 35%,#ffffff 0 8%,#dce9e3 9% 34%,#9dbdb2 35% 55%,#2f6f64 56% 100%);box-shadow:0 30px 80px rgba(18,63,57,.20)}
.orb.b{width:180px;height:180px;left:4px;bottom:28px;background:#e6d7bd;opacity:.9}
.orb.c{width:110px;height:110px;right:40px;bottom:5px;background:#17322c}
.thread{position:absolute;left:50px;right:15px;top:110px;height:270px;border:2px solid rgba(255,255,255,.82);border-color:rgba(255,255,255,.8) transparent transparent transparent;border-radius:50%;transform:rotate(-22deg)}
.float-card{position:absolute;left:0;top:92px;width:235px;padding:22px;border-radius:20px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7)}
.float-card strong{display:block;font-size:2rem;line-height:1.1;color:var(--deep)}
.float-card span{font-size:.86rem;color:var(--muted)}
.section{padding:84px 0}
.section.white{background:var(--white)}
.section.dark{background:var(--deep);color:#eef6f3}
.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start;margin-bottom:42px}
.section h2{font-size:clamp(2.1rem,4vw,4rem);line-height:1.03;letter-spacing:-.04em;margin:0}
.lede{font-size:1.1rem;color:var(--muted);margin:0}
.dark .lede{color:#c5d8d2}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 8px 30px rgba(19,63,57,.04)}
.card .num{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800}
.card h3{font-size:1.35rem;line-height:1.2;margin:22px 0 12px}
.card p{color:var(--muted);margin:0}
.card .arrow{display:inline-block;margin-top:22px;color:var(--deep);font-weight:800}
.statement{padding:50px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,#edf3ef,#f9f7f0);font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.2;letter-spacing:-.03em}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.project{padding:32px;border-radius:24px;background:#194b44;border:1px solid rgba(255,255,255,.1)}
.project small{color:#9fc1b8;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.project h3{font-size:1.6rem;line-height:1.15;margin:12px 0}
.project p{color:#d2e2dd;margin-bottom:0}
.project-team{display:block;margin-top:18px;padding-top:15px;border-top:1px solid rgba(255,255,255,.14);color:#a9d8d2;font-size:.82rem;line-height:1.5}
.quote{font-size:clamp(1.8rem,3.6vw,3.5rem);line-height:1.15;letter-spacing:-.04em;max-width:980px}
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.person{padding:24px;border-top:1px solid var(--line)}
.person h3{margin:0 0 4px;font-size:1.15rem}.person p{margin:0;color:var(--muted);font-size:.93rem}
.page-hero{padding:32px 0 30px}.page-hero h1{
  font-size:clamp(2rem,4vw,3.2rem);margin: 6px 0 10px;max-width:1000px}.page-hero p{font-size:1.2rem;color:var(--muted);max-width:760px}
.content-grid{display:grid;grid-template-columns:280px 1fr;gap:70px}.side{position:sticky;top:110px;align-self:start}.side a{display:block;padding:9px 0;color:var(--muted);font-size:.94rem}.side a:hover{color:var(--deep)}
.prose{max-width:780px}.prose h2{font-size:2.2rem;margin:50px 0 16px}.prose h3{font-size:1.35rem;margin:34px 0 12px}.prose p,.prose li{color:#49625b}.prose strong{color:var(--ink)}
.tag{display:inline-block;padding:7px 11px;border-radius:999px;background:var(--mint);color:var(--teal);font-weight:800;font-size:.78rem;margin:0 6px 6px 0}
.project-list{display:grid;gap:20px}.project-detail{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff}.project-detail h2{margin:0 0 10px;font-size:1.8rem}.meta{font-size:.88rem;color:var(--teal);font-weight:700;margin-bottom:18px}.metric{display:inline-block;padding:8px 12px;border-radius:12px;background:#f0f3ef;font-weight:800;margin-top:10px}
.footer{padding:54px 0 34px;background:#0d302b;color:#d8e7e2}.footer-grid{display:grid;grid-template-columns:1.4fr .6fr .6fr;gap:40px}.footer h3{color:#fff;margin-top:0}.footer a,.footer p{color:#b9d0c9}.copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;margin-top:42px;font-size:.84rem;color:#93b1a9}
@media(max-width:900px){.links{display:none}.hero-grid,.section-head,.content-grid{grid-template-columns:1fr}.hero-art{min-height:390px}.cards,.people{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.section-head{gap:22px}.side{position:static}.footer-grid{grid-template-columns:1fr}.hero{padding-top:64px}.float-card{left:8px}.orb.a{width:290px;height:290px}.container{width:min(var(--max),calc(100% - 28px))}}

/*test*/
.uni-bar{background:#111;color:#fff;font-size:.86rem}.uni-bar .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy small{font-size:.68rem;color:var(--muted);font-weight:600;margin-top:5px}.nav-cta{display:none}.hero{padding-top:72px}.hero-grid{grid-template-columns:1.28fr .72fr}h1{font-size:clamp(2.9rem,5.5vw,5.4rem);line-height:1.01}.hero-art{min-height:430px}.research-figure{position:absolute;inset:18px 0 10px 20px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.research-figure:before,.research-figure:after{content:"";position:absolute;background:var(--line)}.research-figure:before{left:33%;top:0;bottom:0;width:1px}.research-figure:after{left:66%;top:0;bottom:0;width:1px}.data-line{position:absolute;left:0;right:0;top:46%;height:2px;background:linear-gradient(90deg,transparent,var(--teal) 12%,var(--teal) 28%,transparent 28%,transparent 34%,var(--gold) 34%,var(--gold) 56%,transparent 56%,transparent 63%,var(--deep) 63%,var(--deep) 90%,transparent)}.figure-label{position:absolute;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.figure-label.one{left:4%;top:25%}.figure-label.two{left:38%;top:58%}.figure-label.three{left:70%;top:24%}.figure-note{position:absolute;right:8px;bottom:14px;max-width:210px;font-family:Georgia,serif;font-style:italic;color:var(--muted);font-size:.92rem}.output-strip{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:34px}.output-item{background:var(--white);padding:25px}.output-item .type{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;color:var(--teal)}.output-item h3{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;line-height:1.28;margin:9px 0 8px;font-weight:500}.output-item p{font-size:.88rem;color:var(--muted);margin:0}.output-item a,.pub-item a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}.academic-note{border-left:3px solid var(--gold);padding:4px 0 4px 22px;margin:30px 0;color:var(--muted);max-width:850px}.pub-section{margin:46px 0}.pub-section h2{font-size:2rem;border-bottom:1px solid var(--line);padding-bottom:12px}.pub-item{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.pub-year{font-weight:800;color:var(--teal)}.pub-item h3{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;line-height:1.35;margin:0 0 7px;font-weight:500}.pub-item p{margin:3px 0;color:var(--muted);font-size:.92rem}.news-list{border-top:1px solid var(--line)}.news-row{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.news-row h3{margin:0 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;font-weight:500}.news-row p{margin:0;color:var(--muted);font-size:.92rem}.footer .affiliation{font-size:.86rem;color:#9fc1b8;margin-top:14px}@media(max-width:900px){.output-strip{grid-template-columns:1fr}.uni-bar .container{padding:9px 0}.pub-item,.news-row{grid-template-columns:1fr;gap:6px}.hero-art{min-height:310px}}

/* v3: University affiliation, PPIE and collaboration */
.uoe-lockup{display:flex;align-items:center;gap:14px;min-width:230px}.uoe-lockup img{width:205px;max-height:64px;object-fit:contain;object-position:left center}.uoe-fallback{font-family:Georgia,"Times New Roman",serif;font-size:.9rem;line-height:1.08;letter-spacing:.015em;border-left:3px solid #d50032;padding-left:12px;color:#111}.uoe-fallback strong{display:block;font-size:1.18rem;font-weight:500}.logo-note{font-size:.7rem;color:var(--muted);margin-top:4px}.partner-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f7f5ef}.partner-inner{display:grid;grid-template-columns:.65fr 1.35fr;gap:48px;align-items:center;padding:38px 0}.partner-name{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1}.partner-copy p{margin:.3rem 0;color:var(--muted)}.ppie-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ppie-card{border-top:4px solid var(--gold);padding:26px;background:var(--white);border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.ppie-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;font-weight:500;margin:.35rem 0 .6rem}.ppie-card p{color:var(--muted);font-size:.94rem}.report-link{display:block;margin-top:14px;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;font-weight:700}.method-chain{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:30px 0}.method-chain div{background:var(--white);padding:22px}.method-chain b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.1rem;margin-bottom:5px}.method-chain span{font-size:.84rem;color:var(--muted)}
@media(max-width:900px){.partner-inner,.ppie-grid,.method-chain{grid-template-columns:1fr}.uoe-lockup{display:none}}

/* V4 — Edinburgh navy / clinical informatics palette */
:root{
  --ink:#082b59;
  --muted:#526782;
  --paper:#f5f8fc;
  --white:#ffffff;
  --sage:#eaf6f5;
  --mint:#eef9f7;
  --teal:#07998d;
  --deep:#062f62;
  --gold:#6c5bc7;
  --line:#d9e3ef;
  --shadow:0 16px 42px rgba(6,47,98,.10);
  --radius:16px;
}
body{background:var(--paper);color:var(--ink)}
.uni-bar{background:linear-gradient(90deg,#062f62,#063b76);color:#fff;border:0}
.uni-bar .container{min-height:36px;font-size:.8rem}
.uni-bar .uoe-lockup{display:flex;align-items:center;gap:12px}
.uni-bar .uoe-lockup img{height:24px;width:auto;filter:brightness(0) invert(1)}
.uni-bar .uoe-fallback{font-family:Georgia,"Times New Roman",serif;letter-spacing:.015em;color:#fff}
.nav{top:36px;background:rgba(255,255,255,.97);border-bottom:1px solid #dbe6f2;box-shadow:0 3px 16px rgba(6,47,98,.05)}
.nav-inner{height:82px}
.brand{gap:10px;min-width:280px}
.brand .mark{display:none}
.group-brand-icon{height:auto;width:100px;object-fit:contain;flex:0 0 auto}
.brand-copy{font-size:1rem;color:#082b59}.brand-copy small{color:#07998d;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;margin-top:5px}
.links{gap:18px;font-size:.88rem;color:#173b68}.links a{padding:29px 0 25px;border-bottom:3px solid transparent}.links a:hover,.links a[aria-current="page"]{color:#07998d;border-bottom-color:#07998d}
.button,.nav-cta{border-radius:6px;background:#07998d;padding:13px 22px}.button:hover,.nav-cta:hover{background:#067b73}.button.secondary{background:#fff;color:#062f62;border:1px solid #2b62a0}
.hero{background:linear-gradient(115deg,#f7fbff 0%,#ecf7fb 52%,#f3f0ff 100%);padding:74px 0 70px}
.hero h1,.page-hero h1,.section h2{color:#062f62}
.hero p,.lede,.card p,.prose p,.prose li{color:#526782}
.kicker{color:#1764aa}.kicker:before{background:#07998d}
.research-figure{border-color:#b9cde2;background:radial-gradient(circle at 75% 25%,rgba(108,91,199,.12),transparent 28%),radial-gradient(circle at 35% 62%,rgba(7,153,141,.12),transparent 34%)}
.research-figure:before,.research-figure:after{background:#c9d7e8}.data-line{height:3px;background:linear-gradient(90deg,transparent,#07998d 12%,#07998d 28%,transparent 28%,transparent 34%,#6c5bc7 34%,#6c5bc7 56%,transparent 56%,transparent 63%,#1764aa 63%,#1764aa 90%,transparent)}
.figure-label{color:#365b87}.figure-note{color:#526782}
.section.white{background:#fff}.section.dark{background:linear-gradient(135deg,#062f62,#064877)}.dark .lede{color:#cfdded}
.section.dark h2{color:#fff}
.card{border-color:#dbe6f2;box-shadow:0 7px 22px rgba(6,47,98,.045)}.card:nth-child(1){background:linear-gradient(145deg,#f4fcfb,#fff)}.card:nth-child(2){background:linear-gradient(145deg,#f6f3ff,#fff)}.card:nth-child(3){background:linear-gradient(145deg,#eef7ff,#fff)}
.card .num{color:#07998d}.card h3{color:#082b59}.card .arrow{color:#1764aa}
.statement{border-color:#dbe6f2;background:linear-gradient(135deg,#edf8fb,#f5f2ff)}
.partner-band{background:#eef8fb;border-top:1px solid #d9e7f2;border-bottom:1px solid #d9e7f2}.partner-name{color:#082b59}.partner-copy a{color:#07998d}
.ppie-card{background:#fff;border-color:#dce5f0}.ppie-card:nth-child(2){background:#f6f3ff}.report-link{color:#1764aa}
.project{background:#0b4475;border-color:rgba(255,255,255,.1)}.project small{color:#8fe1d8}.project p{color:#d4e2f1}
.tag{background:#e8f7f5;color:#087f76}.metric{background:#eef4fa;color:#082b59}
.output-strip{border-color:#dbe6f2;background:#dbe6f2}.output-item{background:#fff}.output-item .type,.pub-year{color:#07998d}.output-item a,.pub-item a{color:#082b59;text-decoration-color:#6c5bc7}
.academic-note{border-left-color:#6c5bc7}.page-hero{background:linear-gradient(110deg,#f5faff,#f6f3ff)}
.footer{background:linear-gradient(90deg,#052a57,#073b70);color:#dce7f3}.footer a,.footer p{color:#c4d4e7}.footer .affiliation{color:#8fd9d2}
.footer-brand-row{display:flex;align-items:center;gap:22px;margin-bottom:18px}.footer-group-logo{max-width:270px;background:#fff;border-radius:8px;padding:7px 10px}.footer-uoe{border-left:1px solid rgba(255,255,255,.3);padding-left:22px;font-family:Georgia,"Times New Roman",serif;color:#fff;font-size:1.12rem;line-height:1.05}
.institution-wordmark{display:flex;align-items:center;gap:10px}.institution-mark{width:30px;height:30px;border:2px solid rgba(255,255,255,.88);border-radius:50%;display:grid;place-items:center;font:700 .63rem Georgia,serif}.institution-name{font-family:Georgia,"Times New Roman",serif;font-size:.95rem;line-height:1;color:#fff}
@media(max-width:900px){.nav{top:54px}.uni-bar .container{min-height:54px}.brand{min-width:0}.brand-copy{font-size:.88rem}.group-brand-icon{height:48px;width:39px}.links{display:none}.footer-brand-row{align-items:flex-start;flex-direction:column}.footer-uoe{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.2);padding-top:14px}}
.person-photo {
    width: 150px;
    height: 150px;
    object-fit: cover;
    object-position: center;
    border-radius: 50%;
    display: block;
    margin-bottom: 1.25rem;
}
/* =========================================================
   FINAL HEADER + GROUP LOGO OVERRIDES
   Keep this section at the very bottom of styles.css
   ========================================================= */

/* Main navigation bar */
.nav {
    position: sticky;
    top: 36px;
    z-index: 20;
    background: rgba(255,255,255,0.97);
    border-bottom: 1px solid #dbe6f2;
    box-shadow: 0 3px 16px rgba(6,47,98,0.05);
}

/* Contents of navigation */
.nav-inner {
    min-height: 82px;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

/* Clickable group logo */
.brand {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: 280px;
    padding: 8px 0;
}

/* NEW horizontal Clinical Language Informatics logo */
.brand .group-brand-icon {
    display: block;
    width: 280px;
    height: auto;
    max-width: 280px;
    max-height: 66px;
    object-fit: contain;
    object-position: left center;
}

/* Hide old text branding completely */
.brand-copy,
.brand .brand-copy {
    display: none !important;
}

/* Hide old generated icon */
.brand .mark {
    display: none !important;
}

/* Navigation links */
.links {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    font-size: 0.84rem;
    color: #173b68;
}

.links a {
    padding: 29px 0 25px;
    border-bottom: 3px solid transparent;
}

.links a:hover,
.links a[aria-current="page"] {
    color: #07998d;
    border-bottom-color: #07998d;
}


/* -------------------------
   MOBILE
   ------------------------- */

@media (max-width: 900px) {

    .nav {
        top: 54px;
    }

    .nav-inner {
        min-height: 72px;
    }

    .brand .group-brand-icon {
        width: 230px;
        max-width: 230px;
        height: auto;
        max-height: 58px;
    }

    .brand-copy {
        display: none !important;
    }

    .links {
        display: none;
    }
}


/* Very small phones */
@media (max-width: 480px) {

    .brand .group-brand-icon {
        width: 200px;
        max-width: 200px;
    }
}
/* =========================================================
   UNIVERSITY OF EDINBURGH TOP BAR
   ========================================================= */

.uni-bar {
    background: linear-gradient(90deg, #062f62, #063b76);
    color: #ffffff;
}

.uni-bar .container {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

/* University logo */
.uni-bar .uoe-lockup {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.uni-bar .uoe-lockup img {
    display: block;
    width: auto;
    height: 40px;
    max-width: 300px;
    max-height: 40px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

/* Fallback shown if SVG is unavailable */
.uni-bar .uoe-fallback {
    color: #ffffff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
    line-height: 1.05;
    border: 0;
    padding: 0;
}

/* Text on opposite side */
.uni-bar > .container > span {
    color: #e3edf7;
    font-size: 0.86rem;
    letter-spacing: 0.015em;
}

/* Main navigation now sits below the taller UoE bar */
.nav {
    top: 58px;
}

/* Mobile */
@media (max-width: 900px) {

    .uni-bar .container {
        min-height: 58px;
    }

    .uni-bar .uoe-lockup {
        display: flex !important;
    }

    .uni-bar .uoe-lockup img {
        height: 36px;
        max-height: 36px;
    }

    .uni-bar > .container > span {
        display: none;
    }

    .nav {
        top: 58px;
    }
}
/* Keep the University bar and main navigation fixed together */

.uni-bar {
    position: sticky;
    top: 0;
    z-index: 30;
    background: #062f62;
    color: white;
}

.uni-bar .container {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.uni-bar .uoe-lockup {
    display: flex !important;
    align-items: center;
}

.uni-bar .uoe-lockup img {
    display: block;
    height: 42px;
    width: auto;
    max-height: 42px;
    filter: brightness(0) invert(1);
}

.uni-bar .uoe-fallback {
    color: white;
    border: 0;
    padding: 0;
}

.uni-group-name {
    color: #dce8f5;
    font-size: 0.85rem;
}


/* Main navigation sticks directly underneath */

.nav {
    position: sticky;
    top: 0;
    z-index: 29;
    background: rgba(255,255,255,0.97);
}

/* One-page foundation */
.output-grid{grid-template-columns:repeat(3,1fr)}
section[id]{scroll-margin-top:150px}
.menu-toggle{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}
.menu-toggle span:not(.sr-only){display:block;height:2px;margin:5px 0;background:var(--deep)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact-tab{font-weight:800}
.contact-section{background:linear-gradient(115deg,#edf8fb,#f5f2ff)}
.contact-panel{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}
.contact-panel h2{margin:10px 0 0}
.contact-panel p{margin:0 0 24px;color:var(--muted);font-size:1.08rem}
.footer.footer{padding:24px 0}
.footer-simple{display:flex;align-items:center;justify-content:space-between;gap:28px}
.footer-simple p{margin:0;font-size:.86rem}
.header-uoe{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:3px;border-radius:3px;background:#062f62;overflow:hidden}
.header-uoe img{display:block;width:46px;height:45px;object-fit:contain;filter:brightness(0) invert(1)}
.hero{padding:50px 0 48px}
.hero h1{font-size:clamp(2.7rem,4.8vw,4.65rem);margin:14px 0 20px}
.hero p{font-size:1.08rem}
.hero-art{min-height:340px}
.team-list{grid-template-columns:repeat(6,1fr)}
.team-list .person{grid-column:span 2;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.team-list .lead-person{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
.team-list .lead-person .portrait-crop{margin:0}
.team-list .lead-person .affiliation-logo{margin:0;width:180px}
.team-list .person:nth-last-child(-n+2){grid-column:span 3}
.team-list .person-photo{width:112px;height:112px}
.portrait-crop{width:112px;height:112px;margin-bottom:1.25rem;overflow:hidden;border-radius:50%;background:#f5f5f5}
.portrait-crop img{display:block;width:180%;max-width:none;height:auto;transform:translate(-22%,0)}
.lead-person .portrait-crop img{width:215%;transform:translate(-19%,-1%)}
.affiliation-logo{display:block;width:145px;max-height:54px;object-fit:contain;object-position:left center;margin-top:14px}
.lead-person p strong{color:var(--deep)}
.person-projects{display:block;margin-top:14px;color:var(--teal);font-size:.78rem;font-weight:800;line-height:1.45}
.team-note{max-width:900px;margin:34px 0 0;padding-left:20px;border-left:3px solid var(--gold);color:var(--muted)}
@media(max-width:900px){
  section[id]{scroll-margin-top:90px}
  .output-grid{grid-template-columns:1fr}
  .menu-toggle{display:block;flex:0 0 auto}
  .menu-toggle{order:3}
  .nav-inner{position:relative}
  .brand{min-width:0}
  .brand .group-brand-icon{width:210px;max-width:210px}
  .header-uoe{order:2;margin-left:auto;padding:3px}
  .header-uoe img{width:42px;height:41px}
  .links{display:none;position:absolute;left:0;right:0;top:100%;padding:10px 20px 18px;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 14px 25px rgba(6,47,98,.12)}
  .links.is-open{display:grid}
  .links a{padding:11px 0;border:0}
  .contact-panel{grid-template-columns:1fr;gap:24px}
  .footer-simple{align-items:flex-start;flex-direction:column}
  .hero{padding:42px 0 38px}
  .hero-art{min-height:250px}
  .team-list{grid-template-columns:1fr}
  .team-list .person,.team-list .person:nth-last-child(-n+2),.team-list .lead-person{grid-column:auto}
  .team-list .lead-person{grid-template-columns:auto 1fr}
  .team-list .lead-person .affiliation-logo{grid-column:2;width:145px}
}
@media(max-width:600px){
  .brand .group-brand-icon{width:155px;max-width:155px}
  .header-uoe img{width:38px;height:37px}
  .header-uoe{padding:2px}
  .team-list .lead-person{grid-template-columns:1fr}
  .team-list .lead-person .affiliation-logo{grid-column:auto}
}
