
:root{color-scheme:dark;--ink:#eef9f4;--muted:#a5b8af;--accent:#53dfad;--bg:#081914}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}header{border-bottom:1px solid #ffffff1a}nav{max-width:1160px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{text-decoration:none;font-weight:800;letter-spacing:.02em;font-size:20px}.brand small{display:block;color:var(--accent);font-size:10px;letter-spacing:.25em;text-transform:uppercase}.links{display:flex;align-items:center;gap:22px}.links a{font-size:14px;text-decoration:none}.button{background:#66e4b5;color:#03281c;padding:13px 20px;border-radius:10px;font-weight:750;text-decoration:none;display:inline-block}.outline{background:transparent;color:#a6f5d5;border:1px solid #6be0b26b}.hero{max-width:1160px;margin:auto;padding:90px 24px 76px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:800;color:var(--accent)}h1{font-size:clamp(42px,6vw,76px);line-height:1.04;letter-spacing:-.05em;margin:16px 0 24px;max-width:700px}.hero p{color:var(--muted);font-size:18px;max-width:600px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-art{min-height:320px;border-radius:28px;background:radial-gradient(circle at 70% 25%,#286d50 0,transparent 38%),linear-gradient(145deg,#15382a,#0c241b);border:1px solid #b2ffcf25;display:flex;flex-direction:column;justify-content:end;padding:32px}.hero-art strong{font-size:25px}.hero-art span{color:#b2d3c0}.wrap{max-width:1160px;margin:auto;padding:0 24px}.notice{padding:20px 24px;border:1px solid #61ddae30;border-radius:16px;background:#102b20;color:#b7ddca}.section{padding:90px 0}.section h2{font-size:clamp(30px,4vw,44px);line-height:1.1;margin:10px 0}.sub{color:var(--muted);max-width:720px}.search-label{display:block;margin-top:28px;color:#b9d6c6;font-weight:700;font-size:14px}.search{width:100%;max-width:520px;margin-top:8px;padding:14px 16px;border:1px solid #91cdb44a;border-radius:10px;background:#10251c;color:#eef9f4;font:inherit}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}.card[hidden]{display:none}.card{background:#10251c;border:1px solid #d4ffe313;border-radius:18px;padding:24px;display:flex;flex-direction:column;min-height:220px}.card small{color:#74dfb0;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800}.card h3{font-size:21px;margin:9px 0}.card p{font-size:14px;color:#a5b8af;flex:1}.card button{border:0;background:none;text-align:left;padding:0;color:#75e6b6;font:inherit;font-weight:700;cursor:pointer}.cta{background:#103125;border:1px solid #75e6b637;border-radius:24px;padding:36px;display:flex;justify-content:space-between;align-items:center;gap:24px}.cta h2{margin:0;font-size:28px}.cta p{color:#aec7ba;margin:8px 0 0}footer{margin-top:85px;border-top:1px solid #ffffff1a;padding:32px 24px;color:#91aa9e;font-size:13px}footer div{max-width:1160px;margin:auto;display:flex;justify-content:space-between;gap:20px}dialog{width:min(680px,calc(100% - 28px));max-height:85vh;background:#10271e;color:var(--ink);border:1px solid #98e3bd38;border-radius:22px;padding:30px;box-shadow:0 20px 80px #0009}dialog::backdrop{background:#000b}dialog h2{font-size:32px;margin:8px 0}dialog h3{margin:24px 0 6px}dialog p,dialog li{color:#c0d3c8}.close{float:right;border:0;background:#ffffff18;color:white;border-radius:50%;font-size:24px;width:40px;height:40px;cursor:pointer}.source{color:#7ce3b5}.note{font-size:13px;color:#a0b9ab}@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:55px;gap:30px}.hero-art{min-height:180px}.grid{grid-template-columns:repeat(2,1fr)}.links>a:first-child{display:none}.cta{align-items:flex-start;flex-direction:column}.section{padding:60px 0}}@media(max-width:430px){.grid{grid-template-columns:1fr}.links{gap:8px}nav{padding:16px}.button{padding:11px 14px}}
.install-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.install-grid ol{padding-left:22px;color:var(--muted)}.install-grid li{margin-bottom:12px}.install-grid strong{color:var(--ink)}@media(max-width:760px){.install-grid{grid-template-columns:1fr}}

.brand{display:flex;align-items:center;gap:12px}.brand img{width:54px;height:54px;object-fit:contain;border-radius:12px}.brand small{margin-bottom:2px}.vial{height:190px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:14px;position:relative;margin-bottom:22px;overflow:hidden}.vial>img{height:100%;width:100%;object-fit:contain}.vial .vial-logo{position:absolute;top:42%;left:50%;transform:translateX(-50%);width:54px;height:42px;object-fit:contain}.card h3{margin-top:8px}.grid{align-items:stretch}.links a[aria-current=page]{color:var(--accent)}.research-intro{padding-top:56px}.research-intro h1{font-size:clamp(38px,5vw,58px)}.profile-link{color:var(--accent);font-weight:700;margin-top:16px}.home-install{padding-top:40px}@media(max-width:560px){nav{flex-wrap:wrap}.links{width:100%;justify-content:space-between}.links>a:first-child{display:block}.vial{height:170px}.grid{grid-template-columns:1fr}}

.profile-hero{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:center;padding:45px 0}.profile-hero .vial{height:390px;margin:0}.profile-hero .vial-logo{width:100px;height:85px}.profile-hero h1{font-size:clamp(40px,5vw,62px)}.article-layout{display:grid;grid-template-columns:220px 1fr;gap:45px;padding-bottom:45px}.article-layout aside{align-self:start;position:sticky;top:20px}.article-layout aside a{display:block;color:var(--muted);font-size:14px;margin:12px 0}.profile-copy{max-width:760px}.profile-copy section{padding:12px 0 20px;border-bottom:1px solid #ffffff16}.profile-copy h2{font-size:27px;line-height:1.25}.profile-copy p,.profile-copy li{color:#bdd0c6}.profile-copy p{line-height:1.85}.profile-copy ul{padding-left:22px}.reference-list a{color:var(--accent)}.badge{display:inline-block;border:1px solid #53dfad44;border-radius:100px;padding:6px 12px;font-size:12px;color:var(--accent)}.research-card{text-decoration:none}.research-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.research-card:hover{border-color:var(--accent)}@media(max-width:760px){.profile-hero{grid-template-columns:1fr;gap:25px}.profile-hero .vial{height:320px}.article-layout{grid-template-columns:1fr;gap:20px}.article-layout aside{position:static}.article-layout aside a{display:inline-block;margin:6px 12px 6px 0}}
.vial>img{transform:translateX(22%)}.vial .vial-logo{left:4%;top:46%;width:65px;height:65px;transform:none}.profile-hero .vial-logo{left:4%;top:46%;width:100px;height:100px}.vial .vial-logo{object-fit:contain}


/* Homepage vial showcase */
.offer-strip{display:flex;justify-content:center;gap:42px;flex-wrap:wrap;padding:12px 20px;background:#173e30;color:#c2f9df;font-size:12px;font-weight:750;letter-spacing:.03em}
.vial-stage{position:relative;isolation:isolate;min-height:500px;border-radius:32px;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#326e51,#143428 55%,#0d241c);border:1px solid #94deb23a;box-shadow:0 25px 80px #0003}
.stage-orbit{position:absolute;width:380px;height:380px;border:1px solid #a1edc52b;border-radius:50%;top:65px;left:calc(50% - 190px);box-shadow:0 0 0 40px #8deeb407,0 0 0 80px #8deeb405}
.stage-kicker{position:absolute;top:25px;left:25px;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#b3e7cb}
.showcase-vial{position:absolute;top:100px;width:145px;height:250px;background:#f8fbf9;border-radius:18px;box-shadow:0 25px 40px #0004;text-decoration:none;animation:vial-float 7s ease-in-out infinite;transition:box-shadow .25s;overflow:hidden}
.showcase-vial img{width:100%;height:195px;object-fit:contain;display:block}
.showcase-vial strong{position:absolute;bottom:14px;width:100%;text-align:center;color:#143729;font-size:15px}.vial-brand{position:absolute;bottom:42px;width:100%;text-align:center;color:#366a53;font-size:8px;font-weight:800;letter-spacing:.08em}
.vial-one{left:calc(50% - 72px);z-index:3;top:95px}.vial-two{left:calc(50% - 178px);top:132px;animation-delay:-2s;scale:.82}.vial-three{left:calc(50% + 34px);top:137px;animation-delay:-4s;scale:.82}
.showcase-vial:hover,.showcase-vial:focus-visible{box-shadow:0 0 0 3px #68e3b5,0 25px 40px #0005;z-index:4}
.stage-caption{position:absolute;bottom:62px;text-align:center;width:100%;padding:0 15px;font-size:18px;font-weight:750}.stage-caption small{display:block;font-size:11px;font-weight:400;color:#b7d0c2;margin-top:5px}
.motion-toggle{position:absolute;bottom:17px;right:20px;background:transparent;border:1px solid #bce9d34d;border-radius:20px;color:#bce9d3;padding:6px 12px;cursor:pointer;font:inherit;font-size:11px}
.paused .showcase-vial{animation-play-state:paused}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:8px 0 58px}.service-grid article{padding:28px;border:1px solid #84ccab2b;border-radius:20px;background:#0e261d}.service-grid article>span{color:var(--accent);font-size:27px;font-weight:800}.service-grid h2{font-size:19px;line-height:1.3}.service-grid p,.research-feature p{color:var(--muted);font-size:14px;line-height:1.8}
.research-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;padding:45px;margin-bottom:45px;border-radius:25px;background:linear-gradient(120deg,#1b4836,#10271e);border:1px solid #86ccac30}.research-feature h2{font-size:clamp(28px,4vw,42px);line-height:1.1;margin:15px 0}.feature-links{display:flex;flex-direction:column;justify-content:center;gap:12px}.feature-links a{display:flex;justify-content:space-between;border-bottom:1px solid #a5e0c53a;padding:14px;text-decoration:none;font-weight:700;transition:background .2s}.feature-links a:hover{background:#a5e0c510}
@keyframes vial-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-17px) rotate(3deg)}}
@media(max-width:700px){.offer-strip{gap:8px 20px;font-size:10px}.hero{gap:32px;padding-top:45px}.vial-stage{min-height:470px}.service-grid{grid-template-columns:1fr;gap:12px}.service-grid article{padding:22px}.research-feature{grid-template-columns:1fr;padding:26px;gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.showcase-vial{animation:none}.feature-links a,.showcase-vial{transition:none}.vial-stage:not(.paused) .showcase-vial{animation:vial-float 7s ease-in-out infinite}}

.showcase-vial .showcase-logo{position:absolute;left:8px;top:85px;width:46px;height:46px;object-fit:contain}
