*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f5f0;color:#10252d;font:16px/1.65 Arial,sans-serif}header.sitehead{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#071b24;color:white;position:relative;z-index:3}.logo{font:700 20px Georgia,serif;letter-spacing:.15em;text-decoration:none;color:white}.logo i{font-style:normal;color:#8ed4d0}.tag{display:block;font:8px Arial,sans-serif;letter-spacing:.18em;color:#9eb6bb;margin-top:3px}nav{display:flex;gap:19px;align-items:center}nav a{color:#dbe6e7;text-decoration:none;font-size:12px}.contactlink{border:1px solid #8ed4d0;padding:9px 12px}.hero{min-height:690px;background:linear-gradient(90deg,rgba(3,18,27,.98) 0%,rgba(3,18,27,.86) 39%,rgba(3,18,27,.15) 72%),url('assets/hero-collaboration.png') center/cover no-repeat;color:white;display:flex;align-items:center;padding:8vw}.hero-inner{max-width:790px}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:bold;color:#8ed4d0;margin-bottom:18px}.ink{color:#2a7779}.hero h1,.pagehero h1{font:56px/1.04 Georgia,serif;margin:0 0 28px;letter-spacing:-.025em}.hero p,.pagehero p{font-size:20px;max-width:780px;color:#e4ecec}.buttons{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-block;text-decoration:none;padding:13px 18px;font-weight:bold;font-size:13px}.light{background:white;color:#10252d}.line{border:1px solid rgba(255,255,255,.5);color:white}.dark{background:#0b2832;color:white}.outline{border:1px solid #173d45;color:#173d45}.statement{max-width:1000px;margin:auto;padding:90px 7vw;text-align:center}.statement h2,.section-title h2,.contact h2,.photo-band h2,.split h2,.pagebody h2{font:42px/1.1 Georgia,serif;margin:0 0 20px}.statement p{font-size:21px;color:#486067}.work,.pagebody{padding:85px 7vw;background:white}.section-title{max-width:850px;margin-bottom:42px}.section-title p,.pagebody .lede{font-size:18px;color:#536a70}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8dfdd;border:1px solid #d8dfdd}.cards article{background:#f8f8f5;padding:32px;min-height:310px}.cards h3,.achievements h3,.project-list h3{font:24px Georgia,serif}.cards p{color:#52666b}.evidence{margin-top:22px;padding-top:17px;border-top:1px solid #d3ddda;display:flex;flex-direction:column;gap:6px}.evidence b{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#2a7779}.evidence a{font-size:12px;line-height:1.35;color:#34575d;text-decoration:none}.visual-strip{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:12px;padding:12px 7vw 80px;background:white}.visual-strip img,.photo-grid img{width:100%;height:280px;object-fit:cover;display:block}.photo-band{min-height:470px;background:linear-gradient(90deg,rgba(5,25,34,.93),rgba(5,25,34,.45)),url('assets/frames/VIDEO-2026-09-28-06-55-40_0.75.jpg') center/cover;color:white;display:flex;align-items:center;padding:7vw}.photo-band>div{max-width:680px}.photo-band p{font-size:19px;color:#dce6e6}.track,.projects,.research{padding:90px 7vw}.track{background:#e8efed}.numbers{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #afc2c0;border-bottom:1px solid #afc2c0;margin-bottom:50px}.numbers div{padding:28px 20px;border-right:1px solid #afc2c0}.numbers b{display:block;font:46px Georgia,serif}.numbers small{font-size:13px}.achievements{display:grid;grid-template-columns:repeat(2,1fr);gap:30px 70px}.projects{background:white}.project-list{border-top:1px solid #ccd5d3}.project-list>div{display:grid;grid-template-columns:50px 1fr 2fr;gap:25px;padding:28px 0;border-bottom:1px solid #ccd5d3;align-items:start}.project-list h3{margin:0}.project-list p{margin:0;color:#52666b}.project-list a{grid-column:3;color:#176c70}.research{background:#f6f5f0}.inventions{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:38px 0;border-top:1px solid #cbd5d2;border-bottom:1px solid #cbd5d2}.inventions h3{font:24px Georgia,serif}.inventions p{color:#52666b}.patentlinks a{display:block;color:#214d55;text-decoration:none;padding:11px 0;border-bottom:1px solid #d7dfdd}.contact{background:#092630;color:white;padding:75px 7vw;display:flex;justify-content:space-between;align-items:center;gap:50px}.contact>div{max-width:720px}.contact p{font-size:18px;color:#d6e2e2}footer{background:#06171e;color:#b8c8ca;padding:32px 7vw;display:flex;justify-content:space-between;align-items:center;font-size:13px}.pagehero{min-height:470px;background:#092630;color:white;padding:95px 7vw 70px;display:flex;align-items:end}.pagehero.finance{background:linear-gradient(90deg,rgba(3,20,30,.92),rgba(3,20,30,.35)),url('assets/gallery/PHOTO-2026-09-28-06-22-46(9).jpg') center/cover}.pagehero.catchment{background:linear-gradient(90deg,rgba(3,28,29,.92),rgba(3,28,29,.35)),url('assets/gallery/PHOTO-2026-09-28-06-58-30(2).jpg') center/cover}.pagehero.recent{background:linear-gradient(90deg,rgba(3,20,30,.92),rgba(3,20,30,.25)),url('assets/gallery/PHOTO-2026-09-28-06-22-46(10).jpg') center/cover}.split{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:85px 7vw;background:#f6f5f0}.split p{color:#50666c;font-size:18px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.three>div{background:#eef3f1;padding:28px}.three h3{font:23px Georgia,serif;margin-top:0}.mechanism{background:#092630;color:white;padding:80px 7vw}.mechanism h2{font:40px Georgia,serif}.flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:18px;align-items:center;margin-top:40px}.flow div{background:#123842;padding:28px;min-height:150px}.flow b{font:22px Georgia,serif}.arrow{font-size:28px;color:#8ed4d0}.note{font-size:13px;color:#73888d;margin-top:25px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:40px}.activity{display:grid;grid-template-columns:280px 1fr;gap:38px;padding:35px 0;border-top:1px solid #cad5d2}.activity img{width:100%;height:210px;object-fit:cover}.activity h3{font:28px Georgia,serif;margin:0 0 8px}.activity time{font-size:11px;letter-spacing:.12em;color:#2a7779;font-weight:bold}.external{color:#176c70;font-weight:bold;text-decoration:none}.placeholder{border:1px dashed #8aa2a2;padding:25px;color:#718184;background:#f7f8f5;margin-top:28px}.compact-research{padding-top:70px}
@media(max-width:950px){nav a:not(.contactlink){display:none}.hero h1,.pagehero h1{font-size:43px}.cards,.three,.photo-grid{grid-template-columns:1fr}.visual-strip{grid-template-columns:1fr 1fr}.visual-strip img{height:220px}.split{grid-template-columns:1fr;gap:20px}.flow{grid-template-columns:1fr}.arrow{transform:rotate(90deg);text-align:center}.achievements,.inventions{grid-template-columns:1fr}.project-list>div{grid-template-columns:35px 1fr}.project-list p,.project-list a{grid-column:2}.activity{grid-template-columns:1fr}.contact{display:block}.contact .btn{margin-top:20px}.photo-band{min-height:390px}.numbers{grid-template-columns:1fr 1fr}}
/* v6 homepage refinements */
.brand{display:block;width:315px;max-width:32vw}.brand img{display:block;width:100%;height:auto}.footer-brand{width:285px;max-width:45vw;height:auto}.hero{background:linear-gradient(90deg,rgba(3,18,27,.97) 0%,rgba(3,18,27,.83) 43%,rgba(3,18,27,.25) 78%),url('assets/gallery/hero-presenting.jpg') center 42%/cover no-repeat}
.cards{gap:18px;background:transparent;border:0}.work-card{padding:0!important;display:flex;flex-direction:column;min-height:610px!important;border:1px solid #d8dfdd;overflow:hidden}.card-image{height:190px;display:flex;align-items:flex-end;padding:24px;position:relative;background-position:center;background-size:cover}.card-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,18,27,.08),rgba(3,18,27,.78))}.card-image h3{position:relative;color:white;margin:0;font-size:25px}.card-body{padding:25px 28px 28px;display:flex;flex:1;flex-direction:column}.card-body>p{min-height:125px}.card-body .evidence{margin-top:auto}.work-card.cell .card-image{background-image:url('assets/gallery/PHOTO-2026-09-28-06-22-46(14).jpg')}.work-card.ice .card-image{background-image:url('assets/frames/VIDEO-2026-09-28-06-55-40_0.75.jpg')}.work-card.media .card-image{background-image:url('assets/gallery/PHOTO-2026-09-28-07-39-00(8).jpg')}.work-card.tissues .card-image{background-image:url('assets/gallery/microscopy.jpg')}.work-card.scale .card-image{background-image:url('assets/gallery/scaleup.jpg')}.work-card.environment .card-image{background-image:url('assets/gallery/environment.jpg')}.five{grid-template-columns:repeat(2,1fr)}.five>div:last-child{grid-column:1/-1;max-width:900px}.no-numbers>div{grid-template-columns:1fr 2fr;}.no-numbers>div h3{grid-column:1}.no-numbers>div p,.no-numbers>div a{grid-column:2}.inventions .patentlinks>p{color:#52666b}.sitehead{gap:24px}
@media(max-width:950px){.brand{width:235px;max-width:62vw}.hero{background-position:58% center}.work-card{min-height:0!important}.card-body>p{min-height:0}.five{grid-template-columns:1fr}.five>div:last-child{grid-column:auto}.no-numbers>div{grid-template-columns:1fr}.no-numbers>div h3,.no-numbers>div p,.no-numbers>div a{grid-column:1}}

/* v7: Global Catchment evidence section uses a single contextual background image */
.catchment-evidence{position:relative;background:linear-gradient(rgba(248,250,252,.91),rgba(248,250,252,.94)),url("assets/gallery/PHOTO-2026-09-28-06-58-30(2).jpg") center/cover no-repeat;background-attachment:scroll}
.catchment-evidence .section-title,.catchment-evidence .three{position:relative;z-index:1}
/* v8 Finance the Future imagery */
.pagehero.finance{position:relative;background-image:linear-gradient(90deg,rgba(4,28,47,.93) 0%,rgba(4,28,47,.78) 45%,rgba(4,28,47,.30) 100%),url('assets/finance-future-flowers.png');background-size:cover;background-position:center 38%;}
.finance-workshop{position:relative;background-image:linear-gradient(90deg,rgba(5,32,51,.94),rgba(5,32,51,.72)),url('assets/finance-kew-flowers.png');background-size:cover;background-position:center;color:#fff;padding:88px max(6vw,40px);}
.finance-workshop .eyebrow{color:#9edce7}.finance-workshop h2{max-width:720px}.finance-workshop p{max-width:700px;color:rgba(255,255,255,.88);font-size:1.08rem;line-height:1.7}
@media(max-width:760px){.pagehero.finance{background-position:60% center}.finance-workshop{padding:64px 24px}}

/* v9: approved logo + SLTB hero */
.brand{width:300px;max-width:31vw;overflow:hidden}.brand img{width:100%;height:72px;object-fit:contain;object-position:left center}.footer-brand{width:300px;height:auto;object-fit:contain}.hero{background:linear-gradient(90deg,rgba(3,18,27,.96) 0%,rgba(3,18,27,.83) 40%,rgba(3,18,27,.22) 73%),url('assets/hero-peter-sltb.jpg') center 44%/cover no-repeat}.sitehead{overflow:hidden}
@media(max-width:950px){.brand{width:220px;max-width:58vw}.brand img{height:64px}.hero{background-position:42% center}}
/* v11 — richer recent activity and speaking photography */
.speaking-band{display:grid;grid-template-columns:.9fr 1.4fr;gap:42px;align-items:center;background:#0d263c;color:white;padding:72px max(5vw,32px);margin-top:30px}.speaking-band h2{font-size:clamp(2rem,4vw,3.8rem);margin:.35rem 0 1rem}.speaking-band p{max-width:620px;color:#d9e5ef}.speaking-montage{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:10px;height:360px}.speaking-montage img{width:100%;height:100%;object-fit:cover;border-radius:4px}.speaking-montage img:first-child{object-position:center}
.recent-rich{max-width:1240px}.upcoming-event{display:grid;grid-template-columns:340px 1fr;gap:36px;align-items:center;background:#eef5fa;padding:24px;margin:0 0 70px}.upcoming-event img{width:100%;height:210px;object-fit:cover}.upcoming-event time,.activity-card time{font-size:.75rem;letter-spacing:.08em;font-weight:700;color:#2876a6}.upcoming-event h3{font-size:2rem;margin:.4rem 0}.compact{margin-bottom:24px}.presentation-showcase{margin:20px 0 80px}.presentation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.presentation-grid figure,.visual-strip figure{margin:0;position:relative;overflow:hidden;background:#071d2e}.presentation-grid img{width:100%;height:310px;object-fit:cover;display:block}.presentation-grid figcaption,.visual-strip figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 16px 14px;color:white;background:linear-gradient(transparent,rgba(3,19,31,.9));font-weight:650}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:0 0 80px}.activity-card{background:white;border:1px solid #dfe7ec}.activity-card img{width:100%;height:260px;object-fit:cover}.activity-card div{padding:22px}.activity-card h3{margin:.4rem 0 .65rem;font-size:1.45rem}.future-scientists{display:grid;grid-template-columns:.8fr 1.4fr;gap:45px;align-items:center;background:#f4f8fa;padding:46px;margin:30px 0 80px}.future-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.future-grid img{width:100%;height:350px;object-fit:cover}.visual-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.visual-strip img{width:100%;height:280px;object-fit:cover;display:block}
@media(max-width:850px){.speaking-band,.future-scientists,.upcoming-event{grid-template-columns:1fr}.speaking-montage{height:auto;grid-template-columns:1fr}.speaking-montage img{height:260px}.presentation-grid,.activity-grid,.visual-strip{grid-template-columns:1fr}.presentation-grid img,.activity-card img,.visual-strip img{height:280px}.future-grid img{height:260px}}
/* v14 — Recent Activity restored from v8 structure, with agreed later updates only */
.pagehero.recent.recent-v14{background:linear-gradient(90deg,rgba(3,20,30,.92),rgba(3,20,30,.28)),url('assets/recent/93667773-CB51-4A5E-BD39-73B3E71B34C5.jpeg') center 38%/cover no-repeat}
.recent-timeline .activity{grid-template-columns:280px 1fr;align-items:center}
.recent-timeline .activity>img,.recent-timeline .logo-panel{width:100%;height:210px;object-fit:cover;display:block}
.logo-panel{background:#fff;display:flex!important;align-items:center;justify-content:center;padding:40px;border:1px solid #e2e7e5}
.logo-panel img{max-width:100%;max-height:100%;width:auto!important;height:auto!important;object-fit:contain!important}
.recent-timeline .presentation-showcase{margin-top:75px;padding-top:55px;border-top:1px solid #cad5d2}
.recent-timeline .future-scientists{margin-bottom:0}
@media(max-width:950px){.recent-timeline .activity{grid-template-columns:1fr}.recent-timeline .activity>img,.recent-timeline .logo-panel{height:260px}}

/* v15 image-only updates */
.hero{background:linear-gradient(90deg,rgba(3,18,27,.96) 0%,rgba(3,18,27,.83) 40%,rgba(3,18,27,.22) 73%),url('assets/recent/homepage-butterfly.jpeg') center/cover no-repeat}
.speaking-montage img:first-child{object-position:72% center}

/* V22: rotating full-image presentation slideshow */
.speaking-montage{position:relative;display:block;height:420px;overflow:hidden;border-radius:4px;background:#0d263c}
.speaking-montage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:4px;opacity:0;animation:speakingSlideshow 12s infinite ease-in-out}
.speaking-montage img:nth-child(1){animation-delay:0s}
.speaking-montage img:nth-child(2){animation-delay:4s}
.speaking-montage img:nth-child(3){animation-delay:8s}
@keyframes speakingSlideshow{0%{opacity:0}5%{opacity:1}28.333%{opacity:1}33.333%{opacity:0}100%{opacity:0}}
@media(max-width:850px){.speaking-montage{height:360px}.speaking-montage img{height:100%;object-fit:contain}}
@media(prefers-reduced-motion:reduce){.speaking-montage img{animation:none;opacity:0}.speaking-montage img:first-child{opacity:1}}

/* V23 — mobile optimisation only. Desktop V22 remains unchanged. */
@media(max-width:700px){
  /* 1. Header/navigation: retain the existing mobile navigation approach, with more breathing room. */
  header.sitehead{height:72px;padding:0 20px;gap:12px}
  .brand{width:190px;max-width:58vw}
  .brand img{height:56px}
  nav{gap:0}
  .contactlink{padding:8px 10px;font-size:11px;white-space:nowrap}

  /* 2. Homepage hero: calmer type scale, natural mobile wrapping and phone-specific focal point. */
  .hero{min-height:610px;padding:72px 24px 58px;background-position:48% center}
  .hero h1{font-size:38px;line-height:1.06;margin-bottom:22px}
  .hero h1 br{display:none}
  .hero p{font-size:18px;line-height:1.55}

  /* 3. Tighter vertical rhythm on phones, without changing content or order. */
  .statement{padding:58px 24px}
  .work,.pagebody{padding:58px 24px}
  .track,.projects,.research{padding:58px 24px}
  .split{padding:58px 24px}
  .mechanism{padding:58px 24px}
  .speaking-band{padding:54px 24px;margin-top:20px;gap:28px}
  .compact-research{padding-top:52px}
  .statement h2,.section-title h2,.contact h2,.photo-band h2,.split h2,.pagebody h2{font-size:34px}
  .section-title{margin-bottom:30px}

  /* 4. Cards/projects: preserve the one-column stack, with more compact mobile spacing. */
  .cards{gap:14px}
  .card-image{height:175px;padding:20px}
  .card-body{padding:22px 22px 24px}
  .three{gap:14px;margin-top:28px}
  .three>div{padding:22px}
  .project-list>div{gap:12px;padding:22px 0}

  /* 5. V22 slideshow: keep full photographs visible while avoiding an oversized mobile panel. */
  .speaking-montage{height:300px}
  .speaking-montage img{object-fit:contain}

  /* 6. Track-record figures: one deliberate column on narrow screens. */
  .numbers{grid-template-columns:1fr;margin-bottom:38px}
  .numbers div{padding:18px 10px;border-right:0;border-bottom:1px solid #afc2c0}
  .numbers div:last-child{border-bottom:0}
  .numbers b{font-size:40px}

  /* 7. Secondary-page heroes: smaller type/padding and portrait-friendly focal points. */
  .pagehero{min-height:390px;padding:70px 24px 48px}
  .pagehero h1{font-size:38px;line-height:1.06;margin-bottom:22px}
  .pagehero h1 br{display:none}
  .pagehero p{font-size:18px;line-height:1.55}
  .pagehero.finance{background-position:60% center}
  .pagehero.catchment{background-position:58% center}
  .pagehero.recent.recent-v14{background-position:54% center}
  .finance-workshop{padding:54px 24px}
  .flow{margin-top:28px}

  /* 8. Recent Activity: use a less aggressive crop on phone photographs. */
  .recent-timeline .activity{gap:22px;padding:28px 0}
  .recent-timeline .activity>img{height:auto;max-height:360px;object-fit:contain;background:#eef2f1}
  .recent-timeline .logo-panel{height:220px}
  .presentation-grid img,.activity-card img,.visual-strip img{height:auto;max-height:360px;object-fit:contain;background:#071d2e}
  .future-grid img{height:auto;max-height:360px;object-fit:contain;background:#eef2f1}
  .recent-timeline .presentation-showcase{margin-top:52px;padding-top:42px}

  /* 9. Contact/footer: tighter spacing and comfortable tap targets. */
  .contact{padding:52px 24px;gap:24px}
  .contact .btn{margin-top:18px;min-height:46px;padding:13px 18px}
  footer{padding:26px 24px;gap:18px;align-items:flex-start}
  .footer-brand{width:220px;max-width:58vw}
}

@media(max-width:480px){
  footer{flex-direction:column}
  .hero h1,.pagehero h1{font-size:35px}
  .statement h2,.section-title h2,.contact h2,.photo-band h2,.split h2,.pagebody h2{font-size:32px}
}

/* Mobile navigation only. */
.mobile-actions{display:none}
@media(max-width:950px){
 header.sitehead{overflow:visible}
 .mobile-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}
 .mobile-actions .contactlink{color:#dbe6e7;text-decoration:none;font-size:11px;white-space:nowrap;padding:8px 10px}
 .menu-toggle{border:1px solid #8ed4d0;background:transparent;color:#dbe6e7;padding:8px 10px;font:11px Arial,sans-serif;cursor:pointer;white-space:nowrap;min-height:36px}
 .menu-toggle:focus-visible,.mobile-actions a:focus-visible{outline:2px solid white;outline-offset:3px}
 header.sitehead>nav{display:none;position:absolute;top:100%;left:0;right:0;background:#071b24;padding:12px 20px 20px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #34505a;box-shadow:0 8px 16px rgba(0,0,0,.18);max-height:calc(100dvh - 82px);overflow-y:auto}
 header.sitehead>nav.is-open{display:flex}
 header.sitehead>nav a:not(.contactlink){display:block;padding:12px 8px;font-size:14px}
 header.sitehead>nav .contactlink{display:none}
 header.sitehead .brand{flex-shrink:1;min-width:0}
}

/* Requested heading spacing and full ageing collage in its existing image frame. */
.mobile-heading-space{display:none}
@media(max-width:700px){.mobile-heading-space{display:inline}}
.recent-timeline .activity>img.ageing-collage{object-fit:contain}
