:root {
  --page:#f4f8f6; --surface:#fff; --ink:#071c24; --muted:#52656a; --accent:#08a486;
  --accent-dark:#05715f; --line:rgba(7,28,36,.1); --line-strong:rgba(7,28,36,.19);
  --soft-accent:rgba(8,164,134,.11); --section-tint:rgba(229,240,235,.54);
  --wash-one:rgba(8,164,134,.1); --wash-two:rgba(54,112,194,.08);
  --brand-gradient:linear-gradient(145deg,#0bb394,#056c74); --brand-shadow:rgba(8,164,134,.22);
  --visual-background:#dce8e6;
}
.brand-name-long { margin-left:2px; color:var(--muted); font-size:.76rem; font-weight:650; letter-spacing:0; }
.nav-links a[aria-current="page"] { color:var(--ink); }
.nav-links a[aria-current="page"]::after { content:""; display:block; height:2px; margin-top:5px; border-radius:99px; background:var(--accent); }
.bntrg-hero > .reveal, .page-hero > .reveal { opacity:1; transform:none; transition:none; }
.bntrg-hero h1 { max-width:760px; font-size:clamp(3.1rem,6.3vw,5.7rem); }
.lab-photo { isolation:isolate; border-color:rgba(7,28,36,.12); box-shadow:0 28px 80px rgba(7,48,52,.16); }
.lab-photo img { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:55% center; }
.lab-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(3,27,33,.45),transparent 45%); pointer-events:none; }
.lab-photo figcaption { position:absolute; right:22px; bottom:20px; left:22px; z-index:2; color:#f3fffc; font-size:.82rem; font-weight:700; letter-spacing:.02em; }
.link-grid a { color:inherit; text-decoration:none; transition:transform 160ms ease, box-shadow 160ms ease; }
.link-grid a:hover, .link-grid a:focus-visible { transform:translateY(-4px); box-shadow:0 20px 55px rgba(7,28,36,.08); }
.link-grid a > strong { display:block; margin-top:25px; color:var(--accent-dark); font-size:.85rem; }
.page-hero { min-height:510px; display:flex; flex-direction:column; justify-content:center; padding-block:90px; }
.page-hero h1 { max-width:960px; }
.split-page-hero { min-height:650px; display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.9fr); align-items:center; gap:clamp(45px,8vw,100px); }
.split-page-hero .lab-photo { min-height:440px; }
@media (max-width:900px) { .split-page-hero { min-height:auto; grid-template-columns:1fr; padding-block:70px; } .split-page-hero .lab-photo { min-height:400px; } }
@media (max-width:640px) { .bntrg-hero h1,.page-hero h1 { font-size:clamp(2.8rem,13vw,3.55rem); } .page-hero { min-height:430px; padding-block:65px; } .lab-photo,.split-page-hero .lab-photo { min-height:330px; } }
