:root{--bg:#edf2f4;--surface:#f8fafb;--line:#cbd8de;--ink:#223844;--muted:#536b78;--accent:#286e6a;--light:#e5edef;--dark-ink:#223844;--dark-muted:#536b78;--radius:12px;scroll-behavior:smooth;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid #e8a960;outline-offset:5px}p{margin:0 0 1em}h1,h2,h3{line-height:1.16;margin:0;font-weight:600;letter-spacing:-.035em}h2{font-size:clamp(2rem,3.8vw,3.4rem)}h3{font-size:1.3rem;letter-spacing:-.025em}.shell{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}section[id]{scroll-margin-top:90px}.eyebrow{text-transform:uppercase;font-size:.72rem;font-weight:650;letter-spacing:.16em;color:var(--accent);margin-bottom:24px}.site-header{position:sticky;top:0;background:rgba(237,242,244,.96);z-index:10;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.nav{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-weight:750;letter-spacing:.04em;font-size:1.4rem;white-space:nowrap}.brand span:last-child{font-weight:450;color:var(--accent);font-size:.8em}.brand-mark{color:var(--accent);margin-right:8px}.nav-links{display:flex;align-items:center;gap:34px;font-size:.88rem;color:var(--muted)}.nav-links a:hover{color:var(--accent)}.nav-paper{border-bottom:1px solid var(--accent);padding-block:6px;color:var(--ink)}.hero{padding-top:70px;padding-bottom:0}.status-dot{display:inline-block;background:var(--accent);width:6px;height:6px;border-radius:50%;margin-right:8px;vertical-align:middle}.hero-heading{display:grid;grid-template-columns:1.18fr 1fr;gap:65px;align-items:center}.hero h1{font-size:clamp(3rem,5.2vw,5rem);line-height:1.04;letter-spacing:-.055em}.hero h1 span{color:var(--accent);white-space:nowrap}.subtitle{font-size:clamp(1.2rem,2.1vw,1.8rem);line-height:1.35;letter-spacing:-.02em;margin-bottom:18px}.hero-description{font-size:.97rem;color:var(--muted);max-width:500px;margin:0}.hero-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:32px 0 38px}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:46px;border-radius:5px;padding:11px 21px;font-size:.86rem;font-weight:600;transition:background .2s,transform .2s}.primary{background:var(--accent);color:#fff}.primary:hover{background:#205b58;transform:translateY(-2px)}.secondary{border:1px solid #9eb5bf;color:var(--ink)}.secondary:hover{background:#dce8eb}.text-link{font-size:.8rem;display:inline-flex;align-items:center;gap:20px;color:var(--accent)}.text-link:hover{text-decoration:underline}.hero-actions>.text-link{margin-left:8px}.hero-figure{margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#e6e6e6}.hero-figure img{width:100%;height:auto}.hero-figure figcaption{background:var(--surface);display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.75rem;padding:13px 22px;letter-spacing:.015em}.hero-figure figcaption span:first-child{color:var(--ink)}.hero-figure figcaption span span{margin-inline:16px;color:var(--accent)}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--line);font-size:.82rem}.capabilities div{display:flex;gap:14px;align-items:baseline}.capabilities span{color:var(--accent);font-size:.7rem;font-family:monospace}.authors-section{padding:29px 0 46px}.authors{font-size:.88rem;margin-bottom:8px;color:var(--ink)}.authors sup{font-size:.6rem;color:var(--accent);margin-left:2px}.authors a:hover{text-decoration:underline}.affiliations{font-size:.76rem;color:var(--muted);max-width:960px}.affiliations summary{cursor:pointer;display:list-item;width:fit-content}.affiliations ol{padding-left:20px}.affiliations a{text-decoration:underline}.light-section{background:var(--light);color:var(--dark-ink);color-scheme:light}.light-section .eyebrow{color:var(--accent)}.overview-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px 90px}.muted-heading{color:#526e77}.overview-copy{padding-top:2px;color:var(--dark-muted);font-size:.98rem}.overview-copy .lead{font-size:1.35rem;line-height:1.5;color:var(--dark-ink)}.abstract{margin-top:25px;padding-top:17px;border-top:1px solid var(--line);font-size:.9rem}.abstract summary{cursor:pointer;color:var(--accent);font-weight:650}.abstract p{margin:18px 0 0;line-height:1.9}.workflow{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);padding-top:35px}.workflow .step{font-size:.7rem;color:var(--accent);text-transform:uppercase;letter-spacing:.13em}.workflow h3{margin:12px 0;font-size:1.2rem}.workflow p{font-size:.88rem;color:var(--dark-muted);margin:0;max-width:320px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:38px}.section-heading .eyebrow{margin-bottom:15px}.section-heading>p{max-width:390px;font-size:.9rem;color:var(--muted);margin:0}.light-section .section-heading>p{color:var(--dark-muted)}.demo-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{font-size:.78rem;cursor:pointer;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:30px;padding:8px 17px;min-height:40px}.filter span{font-size:.65rem;margin-left:5px}.filter.active{background:var(--accent);border-color:var(--accent);color:#fff}.filter:not(.active):hover{border-color:var(--accent);color:var(--ink)}.play-note{font-size:.72rem;color:var(--muted)}.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.demo-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);overflow:hidden;min-width:0}.demo-card[hidden]{display:none}.video-wrap{background:#080e15;line-height:0}.video-wrap video{width:100%;height:auto;aspect-ratio:1.855;display:block;object-fit:contain}.card-body{padding:23px 26px 25px}.card-meta{display:flex;justify-content:space-between;gap:15px;color:var(--accent);font-size:.67rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:11px}.card-body h3{margin-bottom:12px}.card-body p{font-size:.86rem;line-height:1.65;color:var(--muted);margin-bottom:16px;max-width:540px}.card-body .text-link{font-size:.72rem}.property-section{background:#e8eff1;border-block:1px solid var(--line)}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.property-grid .card-body{padding:23px}.property-grid h3{font-size:1.18rem}.figure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.figure-card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .2s}.figure-card:hover{border-color:#427d70}.figure-thumb{padding:20px;border-bottom:1px solid var(--line);height:330px;background:#fff}.figure-thumb img{width:100%;height:100%;object-fit:contain}.figure-caption{padding:24px 26px}.figure-caption .card-meta{color:#427064}.figure-caption h3{font-size:1.2rem;margin-bottom:10px}.figure-caption p{color:var(--dark-muted);font-size:.86rem;margin:0}.paper-section{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.paper-title{font-size:1.2rem;line-height:1.5;margin:25px 0 20px;max-width:500px}.resource-note{font-size:.85rem;color:var(--muted)}.paper-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.citation{min-width:0;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:25px}.citation-heading{display:flex;align-items:center;gap:14px;justify-content:space-between;margin-bottom:20px}.citation-heading h3{font-size:.9rem;letter-spacing:0}.citation button{cursor:pointer;font-size:.72rem;color:var(--accent);background:transparent;border:1px solid #9eb5bf;padding:7px 10px;border-radius:4px}.citation button:hover{background:#dce8eb}.citation pre{margin:0;font-size:.72rem;line-height:1.8;overflow-x:auto;color:var(--muted);tab-size:2}.copy-status{display:block;font-size:.72rem;color:var(--accent);margin-top:10px;min-height:1.5em}.site-footer{border-top:1px solid var(--line);padding:32px 0;color:var(--muted);font-size:.75rem}.site-footer>div{display:flex;justify-content:space-between;align-items:center;gap:24px}.site-footer p{margin:0}.site-footer .credits{margin-top:25px;font-size:.65rem;color:#5e7581}.credits a{text-decoration:underline}.site-footer a:hover{color:var(--ink)}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:30;background:var(--accent);color:#fff;padding:10px 18px}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1600px){.hero{padding-top:85px}}
@media(max-width:1050px){.shell{width:calc(100% - 56px)}.hero-heading{gap:36px;grid-template-columns:1.1fr 1fr}.hero h1{font-size:3.5rem}.subtitle{font-size:1.35rem}.hero-description{font-size:.87rem}.overview-grid{gap:45px}.section{padding-block:75px}.section-heading{gap:35px}.section-heading>p{max-width:310px}.property-grid{grid-template-columns:1fr}.property-grid .demo-card{display:grid;grid-template-columns:1.2fr 1fr;align-items:center}.figure-thumb{height:270px}.paper-section{gap:30px}.play-note{display:none}.capabilities{font-size:.74rem;gap:18px}}
@media(max-width:720px){.shell{width:calc(100% - 36px)}.nav{min-height:65px;gap:14px}.brand{font-size:1.2rem}.nav-links{gap:17px;font-size:.73rem}.nav-links>a:first-child{display:none}.hero{padding-top:43px}.eyebrow{font-size:.62rem;letter-spacing:.11em;margin-bottom:22px}.hero-heading{grid-template-columns:1fr;gap:24px}.hero h1{font-size:clamp(2.55rem,9.5vw,4rem)}.hero-intro{max-width:560px}.subtitle{font-size:1.35rem;max-width:430px}.hero-description{font-size:.9rem}.hero-actions{gap:10px;margin:26px 0 28px}.button{font-size:.76rem;padding:11px 15px;gap:12px}.hero-actions>.text-link{margin:8px 0;width:100%}.hero-figure figcaption{padding:11px 13px;font-size:.62rem;flex-direction:column;gap:4px}.capabilities{grid-template-columns:1fr;gap:11px;padding:22px 0;font-size:.8rem}.authors-section{padding-block:25px 32px}.authors{font-size:.79rem;line-height:1.9}.affiliations{font-size:.72rem}.section{padding-block:60px}.overview-grid{grid-template-columns:1fr;gap:27px}.overview-copy .lead{font-size:1.15rem}.overview-copy{font-size:.91rem}.workflow{grid-template-columns:1fr;gap:27px;padding-top:27px}.workflow p{max-width:none}.workflow h3{margin:7px 0}.section-heading{display:block;margin-bottom:27px}.section-heading>p{max-width:550px;margin-top:19px;font-size:.87rem}.filters{gap:6px}.filter{font-size:.7rem;padding:7px 12px}.demo-grid,.figure-grid{grid-template-columns:1fr;gap:22px}.card-body{padding:21px}.card-body h3{font-size:1.2rem}.property-grid .demo-card{display:block}.figure-thumb{height:280px}.figure-caption{padding:21px}.paper-section{grid-template-columns:1fr;gap:35px}.citation{padding:20px}.citation pre{font-size:.67rem}.site-footer>div{flex-wrap:wrap;gap:14px}.site-footer>div p{width:100%;order:3}.site-footer .credits{line-height:1.8}.hero-figure img{min-height:0}h2{font-size:2.25rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

/* Standalone result images, displayed after both video sections. */
.hero-figure>img{background:#fff;padding:20px}
.result-group{margin-top:46px}
.result-group>h3{font-size:1.5rem;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.result-group .figure-thumb{height:auto;padding:14px;background:#e6e6e6}
.result-group .figure-thumb img{width:100%;height:auto}
.result-group .figure-caption{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.result-group h4{margin:0;font-size:.95rem;font-weight:600;line-height:1.45}
.result-group .figure-caption>span{color:#427064}
@media(max-width:720px){.hero-figure>img{padding:9px}.result-group{margin-top:35px}.result-group .figure-thumb{padding:8px}.result-group .figure-caption{padding:16px}.result-group h4{font-size:.88rem}}

/* Keep all page sections within the same cool, low-contrast palette. */
.hero-figure>img{background:#f8fafb}.hero-figure{box-shadow:0 8px 30px rgba(34,56,68,.035)}
.demo-card,.figure-card,.citation{box-shadow:0 3px 14px rgba(34,56,68,.025)}
.light-section{border-block:1px solid #d8e2e6}

/* Use the project icon consistently in both brand links. */
.brand{display:inline-flex;align-items:center;gap:8px}
.brand-icon{width:36px;height:36px;object-fit:contain;flex:none}
@media(max-width:720px){.brand{gap:6px}.brand-icon{width:30px;height:30px}}

/* Readable text sizes without enlarging the display headings. */
body{font-size:1.0625rem}
.nav-links,.button,.text-link,.filter{font-size:1rem}
.hero-description,.overview-copy,.abstract,.section-heading>p{font-size:1.0625rem;line-height:1.75}
.workflow p,.card-body p,.resource-note,.figure-caption p{font-size:1rem;line-height:1.75}
.hero-figure figcaption,.capabilities,.affiliations{font-size:.9375rem;line-height:1.7}
.authors{font-size:1rem;line-height:1.85}
.authors sup{font-size:.75rem}
.eyebrow,.workflow .step,.card-meta,.play-note,.card-body .text-link,.citation button,.copy-status{font-size:.875rem}
.eyebrow{letter-spacing:.12em}
.card-meta{letter-spacing:.04em;flex-wrap:wrap}
.capabilities span,.filter span{font-size:.8125rem}
.result-group h4{font-size:1.0625rem;line-height:1.55}
.citation-heading{flex-wrap:wrap}
.citation-heading h3{font-size:1rem}
.citation pre{font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere}
.site-footer{font-size:.9375rem}
.site-footer .credits{font-size:.8125rem;line-height:1.8}
.hero-figure figcaption{flex-wrap:wrap}
@media(max-width:720px){
  .nav{flex-wrap:wrap}
  .nav-links{font-size:.875rem;gap:14px}
  .button,.text-link,.filter{font-size:.9375rem}
  .hero-description,.overview-copy,.abstract,.section-heading>p{font-size:1rem}
  .hero-figure figcaption,.affiliations,.eyebrow,.workflow .step,.card-meta{font-size:.875rem}
  .authors,.capabilities,.result-group h4{font-size:1rem}
  .filter{min-height:44px}
  .site-footer .credits{font-size:.8125rem}
}
@media(max-width:360px){.nav{padding-block:10px}.nav-links{width:100%;justify-content:space-between}section[id]{scroll-margin-top:120px}}

/* Independent carousels for each scientific result category. */
.results-carousels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}
.results-carousels .result-group{margin:0;min-width:0}
.results-carousels .result-group:last-child{grid-column:1/-1}
.results-carousels .result-group>h3{font-size:1.35rem;line-height:1.35;margin-bottom:18px}
.result-group .figure-grid{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;border-radius:var(--radius);scrollbar-width:thin}
.result-group.carousel-ready .figure-grid{scrollbar-width:none}
.result-group.carousel-ready .figure-grid::-webkit-scrollbar{display:none}
.result-group .figure-card{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;box-shadow:none}
.result-group .figure-caption{min-height:88px}
.result-group:last-child .figure-caption{min-height:68px}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.carousel-arrow{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid #9eb5bf;border-radius:50%;background:var(--surface);color:var(--accent);font-size:1.25rem;cursor:pointer}
.carousel-arrow:hover{background:#dce8eb;border-color:var(--accent)}
.carousel-dots{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;margin-inline:auto}
.carousel-dot{display:grid;place-items:center;width:32px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
.carousel-dot::after{content:"";width:8px;height:8px;border:1px solid #78969f;border-radius:50%;background:transparent;transition:background .2s,width .2s}
.carousel-dot[aria-pressed="true"]::after{width:22px;border-radius:5px;background:var(--accent);border-color:var(--accent)}
.carousel-dot:hover::after{background:#a1c4c0}
.carousel-count{font-size:.875rem;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:720px){
  .results-carousels{grid-template-columns:1fr;gap:36px}
  .results-carousels .result-group:last-child{grid-column:auto}
  .result-group .figure-caption,.result-group:last-child .figure-caption{min-height:80px}
  .carousel-controls{gap:8px}
  .carousel-dot{width:28px}
}
@media(max-width:360px){.carousel-dot{width:23px}.carousel-arrow{width:40px;height:40px}.carousel-controls{gap:5px}}

.carousel-playback{display:block;margin:8px 0 0 auto;min-height:44px;padding:6px 10px;border:0;border-radius:5px;background:transparent;color:var(--accent);font-size:.875rem;cursor:pointer}.carousel-playback:hover{background:#dce8eb}
@media(max-width:400px){.carousel-dot{width:20px}}
