/* EndoVia — optical glass. Surface system v1; no additional images or libraries. */
:root{
 --glass-surface:rgba(255,255,255,.86);--glass-solid:#F5F7F8;--glass-edge:rgba(255,255,255,.94);
 --glass-line:rgba(14,110,138,.16);--glass-shadow:0 12px 38px rgba(10,58,92,.065),inset 0 1px 0 rgba(255,255,255,.98);
 --glass-radius:24px;--glass-small:16px;--glass-blur:14px;--glass-transition:180ms;
}
body{background:var(--frost)}
main{background:radial-gradient(ellipse 75% 700px at 100% 0,rgba(160,218,226,.30),transparent 80%),radial-gradient(ellipse 60% 550px at 0 900px,rgba(204,233,238,.25),transparent 85%)}
/* Only moving navigation, filter tray and the single form use backdrop blur. */
body>header.nav{width:calc(100% - 40px);margin:12px auto;top:12px;border:1px solid var(--glass-edge);border-radius:20px;background:var(--glass-surface);box-shadow:var(--glass-shadow);padding-left:max(24px,calc((100vw - 1312px)/2 - 20px));padding-right:max(24px,calc((100vw - 1312px)/2 - 20px));-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}
body>header.nav.nav-scrolled{box-shadow:0 8px 28px rgba(10,58,92,.10),inset 0 1px 0 var(--white)}
body>header.nav.nav-away{transform:translateY(calc(-100% - 26px));box-shadow:none}
body>header.nav:focus-within{transform:none}
.nav .button{background:rgba(255,255,255,.72);border-color:var(--glass-line)}
.nav .button:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}
/* The original scientific photography supplies the material and light. */
.v2-homehero,.topic-platform{border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);border-radius:var(--glass-radius)}
.topic-partnerships .topic-media,.topic-about .topic-media,.topic-resources .topic-media,.topic-contact .topic-media,.program-image>img,.visual,.science-panel{border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);border-radius:var(--glass-radius)}
.topic-copy h1 span{color:var(--graphite)}
.v2-intro{background:transparent}
.image-pair img{border:1px solid var(--glass-edge);box-shadow:0 8px 26px rgba(10,58,92,.08)}
/* Frosted cards are painted surfaces, not dozens of GPU blur layers. */
.resource,.person,.personmini,.stage,.question{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,255,255,.76));border:1px solid var(--glass-edge);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow)}
.resource{padding:30px;margin:0 0 18px;gap:30px}
.resource:last-child{border-bottom:1px solid var(--glass-edge)}
.resource h3{line-height:1.22}
.person{padding:16px 16px 8px}.person .portrait{border-radius:var(--glass-small)}
.person h3,.person>p{margin-left:8px;margin-right:8px}
.personmini{padding:20px}.personmini img{border-radius:12px;flex-shrink:0}
.stage{padding:28px;margin-bottom:16px}.stage:last-child{border-bottom:1px solid var(--glass-edge)}
.question{padding:28px 26px 24px 104px}.question .reading-symbol{left:24px;top:28px}
.question p:last-child{margin-bottom:0}
.questionlist{gap:20px 24px}
.resource-symbol,.section-symbol,.contact-symbol,.question .reading-symbol{background:linear-gradient(145deg,var(--white),var(--ice));border:1px solid var(--glass-edge);box-shadow:0 4px 14px rgba(10,58,92,.05),inset 0 1px 0 var(--white)}
.page-platform .process-overview .step .reading-symbol{background:linear-gradient(140deg,var(--white),var(--ice));border:1px solid var(--white);box-shadow:var(--glass-shadow)}
/* Keep the dark scientific chapter deliberate and comfortably legible. */
.v2-workflow{background:radial-gradient(ellipse at 0 0,rgba(14,110,138,.36),transparent 68%),var(--navy)}
.v2-workflow .workflow-track .reading-symbol{background:var(--ice);border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 1px 0 var(--white)}
.filters{display:inline-flex;width:fit-content;max-width:100%;padding:8px;gap:6px;background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:28px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.filters button{background:transparent;border-color:transparent;color:var(--navy)}
.filters button:hover{background:var(--ice);color:var(--navy)}
.filters button[aria-pressed=true]{background:var(--navy);color:var(--white);border-color:var(--navy)}
.contactgrid form{background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}
.contactgrid form input:not([type=checkbox]),.contactgrid form select,.contactgrid form textarea{background:rgba(255,255,255,.88);border:1px solid var(--graphite);border-radius:10px;padding:13px 14px}
.contactgrid form input:user-invalid,.contactgrid form textarea:user-invalid,.contactgrid form select:user-invalid{border-color:var(--error);background:var(--error-light)}
.prototype-note,.formstate{border-radius:var(--glass-small)}
.button{background:var(--ocean);color:var(--white);border-color:var(--ocean)}
.button:hover{background:var(--navy);border-color:var(--navy);color:var(--white)}
.button.secondary{background:var(--glass-surface);color:var(--navy);border-color:var(--glass-line)}
.button.secondary:hover{background:var(--ice);color:var(--navy)}
/* Long reading surfaces remain opaque and unblurred. */
.page-article main,.page-legal main{background:var(--frost)}
.legal-body{background:var(--white);border:1px solid var(--cloud);border-radius:var(--glass-radius);padding:36px 40px}
.legal-draft{background:var(--ice);box-shadow:inset 0 1px 0 var(--white)}
.legal-toc{padding:18px;background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:var(--glass-small)}
.cta{background:linear-gradient(120deg,var(--ice),var(--frost) 65%,var(--white));border-top:1px solid var(--white)}
.language-switch{width:fit-content;max-width:100%;padding:6px 16px;border:1px solid rgba(204,233,238,.3);border-radius:99px;background:rgba(204,233,238,.06)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .resource,.personmini{transition:border-color var(--glass-transition),box-shadow var(--glass-transition)}
 .resource:hover,.personmini:hover{border-color:rgba(14,110,138,.32);box-shadow:0 14px 40px rgba(10,58,92,.10),inset 0 1px 0 var(--white)}
 .button{transition:background var(--glass-transition),color var(--glass-transition),transform var(--glass-transition)}
}
@media(max-width:800px){
 body>header.nav{width:calc(100% - 24px);margin:10px auto;top:0;padding-left:16px;padding-right:16px;border-radius:16px;-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(255,255,255,.96)}
 .navlinks{border:1px solid var(--glass-edge);border-radius:16px;background:var(--white);margin-top:8px;box-shadow:var(--glass-shadow);max-height:calc(100dvh - 112px)}
 .resource{padding:24px 20px;gap:14px;border-radius:20px}
 .personmini{padding:16px;gap:16px}.personmini img{width:72px;height:84px}
 .stage{padding:24px 20px}.question{padding:24px 20px 24px 88px}.question .reading-symbol{left:18px;top:24px;width:50px;height:50px}
 .filters{border-radius:22px}.filters,.contactgrid form{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(255,255,255,.96)}
 .legal-body{padding:24px 20px}.legal-layout{gap:24px}.legal-toc{padding:20px}
 .language-switch{flex-wrap:wrap}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body>header.nav,.filters,.contactgrid form{background:var(--white)}}
@media(prefers-reduced-transparency:reduce){body>header.nav,.filters,.contactgrid form,.resource,.person,.personmini,.stage,.question,.legal-toc{background:var(--white);-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){body>header.nav,.resource,.personmini,.button{transition:none}}
@media(forced-colors:active){body>header.nav,.resource,.person,.personmini,.stage,.question,.filters,.contactgrid form{border:1px solid CanvasText;box-shadow:none;background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}}
:where(a,button,input,select,textarea):focus-visible{box-shadow:0 0 0 3px var(--white)}
@media print{body,main{background:white}.resource,.person,.personmini,.stage,.question,.contactgrid form,.legal-body{box-shadow:none;backdrop-filter:none}}
@media(max-width:480px){
 .questionlist{grid-template-columns:minmax(0,1fr)}
 .question{min-width:0;padding:22px}
 .question .reading-symbol{position:static;margin-bottom:18px}
 .question h3{overflow-wrap:anywhere}
 .personmini>div{min-width:0}
}
/* Evidence shares the contained photographic hero used by Platform. */
.topic-programs.evidence-wide{margin:20px 24px 0;border:1px solid var(--glass-edge);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow);background:var(--frost);min-height:600px}
.topic-programs.evidence-wide>.wrap{min-height:600px;padding:64px 56px}
.topic-programs.evidence-wide .topic-copy{max-width:560px}
.topic-programs.evidence-wide h1{font-size:clamp(39px,4.35vw,62px);line-height:1.13;letter-spacing:-.035em}
.topic-programs.evidence-wide h2{font-size:clamp(25px,2.4vw,34px);line-height:1.25;max-width:460px}
.topic-programs.evidence-wide .topic-description{font-size:17px;line-height:1.65;max-width:440px}
.topic-programs.evidence-wide:after{background:linear-gradient(90deg,var(--frost) 0%,rgba(245,247,248,.98) 30%,rgba(245,247,248,.88) 42%,rgba(245,247,248,0) 70%)}
@media(min-width:801px) and (max-width:1150px){
 .topic-programs.evidence-wide,.topic-programs.evidence-wide>.wrap{min-height:560px}
 .topic-programs.evidence-wide>.wrap{padding:54px 40px}
 .topic-programs.evidence-wide .topic-copy{max-width:48%}
 .topic-programs.evidence-wide h1{font-size:48px}
 .topic-programs.evidence-wide:after{background:linear-gradient(90deg,var(--frost) 0%,var(--frost) 36%,rgba(245,247,248,.88) 51%,transparent 78%)}
}
@media(max-width:800px){
 .topic-programs.evidence-wide{margin:12px 12px 0;border-radius:20px;min-height:0}
 .topic-programs.evidence-wide>.wrap{min-height:0;padding:36px 24px 280px;display:block}
 .topic-programs.evidence-wide .topic-copy{max-width:100%}
 .topic-programs.evidence-wide h1{font-size:clamp(35px,6.6vw,49px)}
 .topic-programs.evidence-wide h2{font-size:26px;line-height:1.25}
 .topic-programs.evidence-wide .topic-description{font-size:16px;margin-bottom:0}
 .topic-programs.evidence-wide .topic-media{inset:auto 0 0;width:100%;height:320px}
 .topic-programs.evidence-wide .topic-photo{object-position:55% center}
 .topic-programs.evidence-wide:after{background:linear-gradient(180deg,var(--frost) 0%,var(--frost) 46%,rgba(245,247,248,.92) 60%,transparent 83%)}
}
/* Team section labels and the single, genuine brand mark in the footer. */
.team-section-heading{display:flex;align-items:center;gap:24px;margin-bottom:36px}
.team-section-heading .section-symbol{flex:0 0 76px;margin:0}
.team-section-heading h2{margin:0;min-width:0}
.team-section-heading+.founders{margin-top:0}
.v2-footer{background:radial-gradient(ellipse at 100% 0,rgba(14,110,138,.44),transparent 62%),linear-gradient(125deg,var(--deep),var(--navy));border-top:1px solid rgba(204,233,238,.28)}
.v2-footer .footer-brand{padding:48px 0 52px;margin:32px 0;border-top:1px solid rgba(204,233,238,.22);border-bottom:1px solid rgba(204,233,238,.22)}
.v2-footer .footer-brand img{display:block;width:min(100%,1000px);height:auto;margin:auto;filter:brightness(0) invert(1);opacity:.96}
body>header.nav .navlinks .button{background:var(--ocean);border-color:var(--ocean);color:var(--white);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 14px rgba(10,58,92,.12)}
body>header.nav .navlinks .button:after{background:var(--white);color:var(--navy)}
body>header.nav .navlinks .button:hover{background:var(--navy);border-color:var(--navy);color:var(--white)}
body>header.nav .navlinks .button:focus-visible{outline-color:var(--navy);box-shadow:0 0 0 3px var(--white)}
@media(max-width:800px){.team-section-heading{gap:18px;margin-bottom:28px}.team-section-heading .section-symbol{flex-basis:60px;width:60px;height:60px}.team-section-heading .section-symbol img{width:30px;height:30px}.team-section-heading h2{font-size:clamp(26px,6vw,35px)}.v2-footer .footer-brand{padding:32px 0;margin:28px 0}}
