/* Discovery, applications and collaboration. */
.section { scroll-margin-top: 0; }
.section h2 { font-size: clamp(28.9px, 2.635vw, 42.5px); }
.premise.section { padding-top: 88px; padding-bottom: 88px; }
.possibilities { padding-bottom: 70px; }
.possibilities .feature-heading { margin-bottom: 64px; }
.future-journey { border-top: 1px solid #ffffff1c; }
.future-chapter { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 6%; align-items: center; position: relative; min-height: 650px; padding: 45px 0; border-bottom: 1px solid #ffffff1c; scroll-margin-top: 0; }
.future-visual { position: relative; height: 550px; min-width: 0; background: radial-gradient(ellipse at 48% 50%, #29345645, transparent 68%); overflow: clip; }
.future-visual .application-webgl { inset: 0 -5%; }
.future-visual > img { width: 80%; height: 80%; object-fit: contain; position: absolute; left: 10%; top: 10%; }
.future-visual.has-webgl > img { opacity: 0; }
.future-visual-note { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); color: #758199; font-size: 8px; letter-spacing: .08em; white-space: nowrap; }
.future-copy { padding: 30px 5px 30px 0; }
.future-domain { color: #bcb4de; font-size: 10px; letter-spacing: .1em; margin: 0 0 24px; }
.future-copy h3 { font-size: clamp(40px, 4.2vw, 65px); line-height: 1.08; }
.future-copy h3 em { display: inline-block; margin-top: 8px; }
.future-copy > p:not(.future-domain) { max-width: 390px; font-size: 14px; line-height: 1.9; margin: 28px 0 0; }
.future-horizon { display: block; margin-top: 34px; font-size: 9px; color: #858da1; }
.future-chapter:nth-child(even) { grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr); }
.future-chapter:nth-child(even) .future-visual { grid-column: 2; grid-row: 1; }
.future-chapter:nth-child(even) .future-copy { grid-column: 1; grid-row: 1; padding-left: 25px; }
.future-journey.is-scroll-driven .future-visual { transform: translateY(var(--scene-drift, 0px)); }
.future-chapter:before { content: ''; position: absolute; top: -1px; left: 0; width: 100%; height: 1px; background: #c1b5dc; transform: scaleX(var(--chapter-progress, 0)); transform-origin: left; opacity: .6; }
.future-context { font-size: 11px; margin: 30px 0 0; color: #8b96aa; }
.orbion-section { padding-block: 100px; }
.collaboration-invitation { position: relative; text-align: center; padding-top: 135px; padding-bottom: 80px; background: radial-gradient(ellipse at 50% 10%, #51456829, transparent 60%); }
.collaboration-invitation > h2 { font-size: clamp(37.4px, 4.59vw, 68.85px); line-height: 1; letter-spacing: -.04em; }
.collaboration-invitation > h2 em { display: inline-block; margin-top: 12px; }
.invitation-intro { font-size: 15px; line-height: 1.85; margin: 35px auto 0; }
.collaboration-paths { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px; max-width: 1010px; margin: 65px auto 45px; text-align: left; }
.collaboration-paths article { padding-top: 23px; border-top: 1px solid #ffffff24; }
.collaboration-paths h3 { font-size: 22.95px; }
.collaboration-paths p { font-size: 12px; line-height: 1.85; color: #939fb2; margin: 15px 0 0; }
.collaborate-cta { display: inline-flex; align-items: center; gap: 55px; min-height: 60px; padding: 18px 27px; background: var(--cream); color: var(--ink); font-size: 13px; transition: background .2s, transform .2s; }
.collaborate-cta span { font-size: 24px; }
.collaborate-cta:hover { background: #fff4e4; transform: translateY(-2px); }
.collaboration-invitation .status-note { justify-content: center; font-size: 10px; line-height: 1.8; max-width: 600px; margin: 36px auto 0; }

.discovery-path { display: grid; grid-template-columns: repeat(3, 1fr); gap: 55px; margin-top: 55px; }
.discovery-path article { border-top: 1px solid #ffffff24; padding-top: 22px; }
.discovery-path h3 { font-size: 22.95px; color: #e4deed; }
.discovery-path p { font-size: 12px; line-height: 1.8; max-width: 310px; margin-bottom: 0; }
.future-copy h3 { font-size: clamp(28.9px, 2.89vw, 44.2px); }
@media (min-width: 701px) and (max-width: 1000px) {
 .future-chapter { min-height: 550px; gap: 3%; }
 .future-visual { height: 470px; }
 .future-copy h3 { font-size: 29.75px; }
 .collaboration-paths, .discovery-path { gap: 25px; }
}
@media (max-width: 700px) {
 .premise.section { padding-block: 60px; }
 .possibilities .feature-heading { margin-bottom: 35px; }
 .future-chapter, .future-chapter:nth-child(even) { display: flex; flex-direction: column; gap: 0; min-height: 0; padding: 28px 0 50px; }
 .future-visual { height: 350px; width: calc(100% + 7vw); }
 .future-copy, .future-chapter:nth-child(even) .future-copy { padding: 25px 0 0; width: 100%; }
 .future-domain { font-size: 9px; margin-bottom: 20px; }
 .future-copy h3 { font-size: clamp(36px, 10vw, 50px); }
 .future-copy > p:not(.future-domain) { font-size: 13px; line-height: 1.8; margin-top: 23px; }
 .future-horizon { font-size: 9px; margin-top: 23px; }
 .future-context { font-size: 10px; line-height: 1.8; }
 .orbion-section { padding-block: 65px; }
 .collaboration-invitation { padding-top: 80px; padding-bottom: 60px; }
 .collaboration-invitation > h2 { font-size: clamp(29.75px, 7.055vw, 46.75px); }
 .invitation-intro { font-size: 13px; margin-top: 26px; }
 .collaboration-paths { grid-template-columns: 1fr; gap: 26px; margin: 43px auto 37px; }
 .collaboration-paths article { padding-top: 20px; }
 .collaboration-paths h3 { font-size: 22.95px; }
 .collaboration-paths p { margin-top: 10px; }
 .collaborate-cta { width: 100%; justify-content: space-between; }
 .collaboration-invitation .status-note { font-size: 9px; text-align: left; }
}

@media (max-width: 700px) {
 .discovery-path { grid-template-columns: 1fr; gap: 25px; margin-top: 35px; }
 .discovery-path article { padding-top: 18px; }
 .discovery-path h3 { font-size: 21.25px; }
 .future-copy h3 { font-size: clamp(26.35px, 7.395vw, 36.55px); }
}
@media (max-width: 360px) { .future-visual { height: 310px; } }
@media (prefers-reduced-motion: reduce) { .future-journey.is-scroll-driven .future-visual { transform: none; } }
.motion-off .future-journey.is-scroll-driven .future-visual { transform: none; }
@media print { .site-header { position: static; } .future-visual { transform: none !important; } .future-chapter { break-inside: avoid; } }

/* The closing company section uses Orbion's warm editorial palette. */
@font-face { font-family: OrbionLexend; src: url('assets/lexend-regular.woff') format('woff'); font-weight: 400; font-display: swap; }
.orbion-section { padding-block: 90px; background: #f3f0e9; color: #201b15; border: 0; font-family: OrbionLexend, Arial, sans-serif; }
.orbion-section h2 { font-family: Georgia, serif; font-size: clamp(30.6px, 3.145vw, 49.3px); line-height: 1.12; letter-spacing: -.035em; }
.orbion-section h2 em { color: #867361; }
.orbion-section .orbion-large { width: 160px; filter: brightness(0); margin-bottom: 32px; }
.orbion-section .prose .large { color: #201b15; font-size: 18px; line-height: 1.7; }
.orbion-section .prose p { color: #625c54; font-size: 13px; line-height: 1.85; }
.orbion-section .inline-arrow { color: #201b15; border-color: #a89e8d; font-size: 12px; }
.orbion-section .foundation { gap: 45px; margin-top: 50px; }
.orbion-section .foundation span { color: #746c61; border-color: #d4cdc0; font-size: 10px; }
footer .footer-logo { width: 420px; max-width: 100%; }
@media(max-width:700px) {
 .orbion-section { padding-block: 60px; }
 .orbion-section h2 { font-size: 32.3px; }
 .orbion-section .split { gap: 34px; }
 .orbion-section .foundation { gap: 22px; }
 .orbion-section .foundation span { font-size: 9px; }
 footer .footer-logo { width: 288.75px; }
}

/* Precise text underlining, with the arrow aligned independently. */
.orbion-section .inline-arrow { display: inline-flex; align-items: center; gap: 18px; min-width: 0; width: fit-content; padding: 5px 0; border: 0; line-height: 1.5; }
.orbion-section .inline-arrow .orbion-link-label { font-size: inherit; text-decoration: underline; text-decoration-color: #a89e8d; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.orbion-section .inline-arrow svg { display: block; width: 20px; height: 20px; flex: none; }
.eyebrow { text-transform: none; }

/* v11: editorial depth, useful applications and a clear invitation. */
.ui-icon { width: 22px; height: 22px; display: block; flex: none; }
.dialog-close { display: grid; place-items: center; min-width: 44px; min-height: 44px; }
.contact-address, .contact-options a, .contact-options button { display: inline-flex; align-items: center; gap: 10px; }
.contact-address .ui-icon, .contact-options .ui-icon { width: 20px; height: 20px; }
.contact-options [hidden] { display: none; }
.research-context { margin-top: 58px; max-width: 1060px; }
.research-context-intro { max-width: 790px; font-size: 16px; line-height: 1.8; color: #c0c7d4; }
.research-background { border-block: 1px solid #ffffff24; margin-top: 27px; }
.research-background summary { list-style: none; min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 24px; cursor: pointer; font-size: 15px; color: var(--cream); }
.research-background summary::-webkit-details-marker { display: none; }
.research-background .details-icon { width: 20px; height: 20px; transition: transform .25s; }
.research-background[open] .details-icon { transform: rotate(45deg); }
.research-background-content { padding: 0 0 28px; }
.research-background-content > p { max-width: 790px; font-size: 15px; line-height: 1.8; margin: 0 0 25px; }
.research-papers { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin: 30px 0; }
.research-papers a { position: relative; display: flex; flex-direction: column; gap: 12px; padding: 24px 45px 24px 24px; border: 1px solid #ffffff24; transition: background .2s, border-color .2s; }
.research-papers a:hover { background: #bcb4de09; border-color: #bcb4de66; }
.research-papers .ui-icon { position: absolute; top: 24px; right: 16px; width: 18px; height: 18px; }
.paper-type { font-size: 12px; color: #bcb4de; }
.research-papers strong { font-weight: 400; font-size: 20px; line-height: 1.35; color: #eee9f2; }
.paper-detail { font-size: 12px; line-height: 1.6; color: #a8b3c8; }
.research-background-content .research-scope { font-size: 13px; color: #a8b3c8; margin-bottom: 0; }
.discovery-path p { font-size: 14px; }
.future-domain { font-size: 12px; }
.future-copy > p:not(.future-domain) { font-size: 16px; line-height: 1.8; max-width: 440px; }
.application-validation { display: block; margin-top: 20px; font-size: 14px; color: #a5b0c5; }
#future-research { min-height: 710px; }
#future-research .future-copy h3 { font-size: clamp(32.3px, 3.145vw, 49.3px); }
#future-research .future-visual { height: 600px; }
.future-chapter:not(:first-child) { min-height: 580px; }
.future-chapter:not(:first-child) .future-visual { height: 470px; }
.collaboration-paths { grid-template-columns: 1fr 1fr; max-width: 810px; gap: 65px; }
.collaboration-paths p { font-size: 16px; color: #b2bdcf; }
.collaborate-cta { min-width: 250px; justify-content: center; font-size: 15px; }
.collaboration-next-step { max-width: 480px; margin: 22px auto 0; font-size: 15px; line-height: 1.8; }
.collaboration-invitation .status-note { font-size: 12px; color: #a6b2c5; }
@media (max-width: 700px) {
 .research-context { margin-top: 38px; }
 .research-context-intro, .research-background-content > p { font-size: 16px; }
 .research-papers { grid-template-columns: 1fr; gap: 16px; margin-block: 22px; }
 .research-papers a { padding: 22px 45px 22px 20px; }
 .research-background-content .research-scope { font-size: 14px; }
 .discovery-path p, .future-copy > p:not(.future-domain), .collaboration-paths p, .invitation-intro { font-size: 16px; }
 .future-domain { font-size: 12px; }
 #future-research { min-height: 0; }
 #future-research .future-visual { height: 380px; }
 #future-research .future-copy h3 { font-size: clamp(28.9px, 7.99vw, 38.25px); }
 .future-chapter:not(:first-child) { min-height: 0; }
 .future-chapter:not(:first-child) .future-visual { height: 320px; }
 .collaboration-paths { grid-template-columns: 1fr; gap: 28px; }
 .collaboration-next-step { font-size: 15px; padding-inline: 8px; }
 .collaboration-invitation .status-note { font-size: 12px; }
 .collaborate-cta { justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .research-background .details-icon { transition: none; } }
.motion-off .research-background .details-icon { transition: none; }
