/* The approved homepage composition. Other public flows keep their own layout. */
.home-page{--container:1920px}
.home-page .container{width:calc(100% - clamp(40px,6vw,120px))}
.home-page .site-header{background:#07101fe8;border-bottom-color:transparent}
.home-page .header-inner{min-height:88px}
.home-page .wordmark{font-size:1.7rem}
.home-page .navigation>a{font-size:1rem;font-weight:500}
.home-page .navigation{gap:clamp(20px,2vw,40px)}
.home-hero{background:#07101f url('/assets/starfield.png') center/cover no-repeat}
.home-hero:before,.home-hero:after{display:none}
.home-hero-inner{position:relative;isolation:isolate;max-width:2160px;margin-inline:auto;min-height:700px;aspect-ratio:1590/900}
.home-hero-art{position:absolute;inset:0;z-index:-1;margin:0;pointer-events:none}
.home-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.home-hero-copy{position:absolute;top:11%;left:4.4%;width:46%;z-index:1}
.home-hero h1{font-size:clamp(2.65rem,3.8vw,5.1rem);line-height:1.17;letter-spacing:-.035em}
.home-hero h1 span{color:var(--orange)}
.home-hero-description{font-size:clamp(1.125rem,1.55vw,1.875rem);line-height:1.55;color:#c2cee2;margin:22px 0 0;max-width:30em}
.home-platform-label{position:absolute;left:8.9%;bottom:23%;width:12%;min-width:148px;max-width:260px;color:#c2cee2;font-size:clamp(.9375rem,1.15vw,1.4rem);line-height:1.24;text-decoration:none}
.home-platform-label>span:first-child{display:block}
.home-platform-status{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #91bce4;border-radius:100px;min-height:38px;padding:7px 13px;margin-top:10px;font-size:.875rem;white-space:nowrap;background:#0c20374d}
.home-platform-status .status-mark{width:8px;height:8px}
.home-platform-label:hover{color:#fff}
.home-platform-label:hover .home-platform-status{border-color:var(--orange)}
.home-hero-actions{position:absolute;bottom:5.5%;left:0;right:0;display:flex;justify-content:center;gap:16px;padding:0 30px}
.home-hero-actions .button{font-size:clamp(1rem,1.2vw,1.25rem);font-weight:600;min-height:52px;padding:12px 27px;min-width:185px;letter-spacing:0}
.home-hero-actions .button-outline{background:#142b45b3;border-color:#86b6e3;color:#f3f6fc;backdrop-filter:blur(8px)}
.home-hero-actions .button-outline:hover{background:#203e60}
.home-page .section-intro,.home-page .approach-intro>p:last-child,.home-page .contact-section p{max-width:none}
.home-page .capability p{max-width:none}
.home-page .section-heading,.home-page .approach-grid,.home-page .faq-grid,.home-page .contact-grid{gap:clamp(40px,5vw,100px)}
.home-page .service{min-width:0;overflow-wrap:anywhere}
.home-page .service h3{line-height:1.25}
@media(min-width:1600px){.home-page .section{padding:110px 0}.home-page .capability{padding:36px}.home-page .service>p,.home-page .section-intro{font-size:1.0625rem}}
@media(max-width:1100px){
 .home-page .navigation{gap:18px}.home-page .navigation>a{font-size:.875rem}.home-page .wordmark{font-size:1.35rem}
 .home-hero-inner{min-height:630px}.home-hero-copy{top:10%;width:48%}.home-hero h1{font-size:clamp(2.3rem,3.8vw,2.65rem)}
 .home-platform-label{left:6%;bottom:23%;font-size:.9375rem;width:15%}.home-hero-actions{gap:10px;padding:0 24px}
 .home-hero-actions .button{min-width:0;padding:12px 20px;font-size:.9375rem}
}
@media(max-width:900px){
 .home-page .container{width:calc(100% - 48px)}
 .home-hero-inner{aspect-ratio:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);padding:40px 24px 42px}
 .home-hero-copy{position:relative;inset:auto;width:100%;max-width:680px}
 .home-hero h1{font-size:clamp(2.125rem,5.8vw,3.7rem);line-height:1.15}
 .home-hero-description{font-size:1.125rem;margin-top:20px;max-width:36em}.desktop-break{display:none}
 .home-hero-art{position:relative;inset:auto;z-index:0;margin:-18px -24px -34px;aspect-ratio:1590/992}
 .home-hero-art img{height:auto;object-fit:contain}
 .home-platform-label{position:relative;inset:auto;width:auto;max-width:600px;font-size:1.0625rem;line-height:1.5;margin:0 0 24px}
 .home-platform-status{font-size:.875rem;margin-top:9px;min-height:38px}
 .home-hero-actions{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:12px}
 .home-hero-actions .button{padding:12px 16px;min-height:50px;font-size:1rem;text-align:center}
}
@media(max-width:720px){
 .home-page .container{width:calc(100% - 40px)}.home-page .header-inner{min-height:72px}
 .home-page .navigation{gap:8px}.home-page .navigation>a{font-size:1rem}.home-page .wordmark{font-size:1.3rem}
 .home-page .founder-block{width:calc(100% - 40px);margin-top:46px}
 .home-hero-inner{padding:32px 20px 38px}.home-hero-art{margin:-10px -20px -16px}
 .home-hero-description{font-size:1rem}.home-platform-label{font-size:1rem}
}
@media(max-width:420px){
 .home-page .container{width:calc(100% - 32px)}.home-page .founder-block{width:calc(100% - 32px)}
 .home-page .site-header .wordmark{font-size:1.15rem}.home-hero-inner{padding:28px 16px 34px}
 .home-hero h1{font-size:clamp(1.7rem,7.5vw,2rem);letter-spacing:-.04em}.home-hero-art{margin:-6px -16px -4px}
 .home-hero-actions{gap:10px}.home-hero-actions .button{padding:11px 9px;font-size:.875rem}
}
@media(max-width:320px){
 .home-page .container{width:calc(100% - 24px)}.home-page .founder-block{width:calc(100% - 24px)}
 .home-page .site-header .wordmark{font-size:.95rem}.home-hero-inner{padding-inline:12px}.home-hero-art{margin-inline:-12px}
 .home-hero-actions{grid-template-columns:minmax(0,1fr)}.home-hero h1{font-size:1.65rem}
}

/* Five sections, with room to read every section on smaller screens. */
.home-page{--home-header-height:88px}
.home-page .home-scene{scroll-margin-top:0}
.scene-navigation{position:fixed;z-index:19;right:12px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:2px}
.scene-navigation a{position:relative;display:grid;place-items:center;width:38px;height:38px;text-decoration:none}
.scene-dot{width:7px;height:7px;border-radius:50%;background:#9bb3d1;box-shadow:0 0 0 3px #07101f9c;transition:background .2s,transform .2s}
.scene-navigation a[aria-current="location"] .scene-dot{background:var(--orange);transform:scale(1.6);box-shadow:0 0 14px #ff8c3266}
.scene-name{position:absolute;right:38px;white-space:nowrap;padding:5px 12px;border:1px solid #7190b14a;border-radius:7px;background:#0b1a2e;color:#dbe6f7;font-size:.8rem;opacity:0;transform:translateX(6px);pointer-events:none;transition:opacity .2s,transform .2s}
.scene-navigation a:hover .scene-name,.scene-navigation a:focus-visible .scene-name{opacity:1;transform:none}
.scroll-cue{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;min-height:44px;color:#b5c9e3;text-decoration:none;font-size:.75rem;letter-spacing:.04em}
.scroll-cue:hover{color:#fff}
.mouse-outline{display:block;width:17px;height:26px;border:1px solid currentColor;border-radius:12px;padding-top:5px;text-align:center}
.mouse-outline>span{display:block;width:2px;height:5px;margin:auto;border-radius:2px;background:var(--orange);animation:mouse-wheel 1.8s ease-in-out infinite}
.scroll-chevron{font-size:1.2rem;line-height:1}
@keyframes mouse-wheel{0%,100%{transform:translateY(0);opacity:1}60%{transform:translateY(7px);opacity:.3}}
.home-page .services-section .section-heading{margin-bottom:34px}
.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}
.audience{position:relative;display:flex;align-items:center;gap:28px;padding:23px 28px;border-left:2px solid #5e94cb;border-radius:0 14px 14px 0;background:linear-gradient(105deg,#1935538c,#101f3244)}
.audience-employer{border-left-color:var(--orange);background:linear-gradient(105deg,#623c2844,#101f3244)}
.audience .eyebrow{font-size:.65rem;margin-bottom:8px}
.audience h3{font-size:1.25rem;line-height:1.3}
.audience p:last-child{font-size:.875rem;color:var(--muted);margin:10px 0 0;max-width:48em}
.audience .text-link{flex-shrink:0;font-size:.875rem;white-space:nowrap;color:#c6ddf7}
.audience-employer .text-link{color:#ffb782}
.home-page .founder-block{display:grid;grid-template-columns:minmax(220px,.95fr) 1fr 1.05fr;gap:36px;padding:0;border:0;background:none;margin-top:42px;align-items:center}
.founder-photo{position:relative;isolation:isolate;margin:0;min-width:0;aspect-ratio:4/3}
.founder-photo:before{content:none}
.founder-photo img{display:block;width:100%;height:100%;object-fit:contain}
.home-page .founder-block .eyebrow{font-size:.7rem;letter-spacing:.12em;margin-bottom:12px}
.home-page .founder-block h3{font-size:clamp(1.6rem,2vw,2.1rem)}
.home-page .founder-role{font-size:.95rem;max-width:26em}
.home-page .founder-description{grid-column:auto;font-size:1rem;max-width:34em}
.home-page .contact-scene{background:#0b1727}
.home-page .contact-scene .faq-section{padding:56px 0 44px}
.home-page .contact-scene .contact-section{padding:48px 0 54px}
.home-page .contact-scene .faq-section h2{font-size:clamp(1.8rem,2.7vw,2.6rem)}

/* The opaque cards act as screens: bodies stay behind, faces peek around the sides. */
.home-page .capability-grid{padding:12px 175px 0 175px;gap:18px}
.home-page .platform-section .capability{border-color:#78b9f066;box-shadow:0 0 28px #4b9ae52a,0 12px 28px #02081470,inset 0 1px 0 #c4e1ff14}
.home-page .platform-section .capability-primary{border-color:#81baff80;box-shadow:0 0 36px #4b9ae53b,0 14px 32px #02081470,inset 0 1px 0 #c4e1ff18}
.home-page .platform-section .capability-ai{border-color:#edaa7080;box-shadow:0 0 34px #f08a3536,0 12px 28px #02081470,inset 0 1px 0 #ffddbb14}
.home-page .platform-section .capability-process{border-color:#dfa87466;box-shadow:0 0 26px #e6923526,0 12px 28px #02081470,inset 0 1px 0 #ffddbb14}
.recruitment-character-scene,.human-character-scene{position:relative;isolation:isolate;min-width:0}
.recruitment-character-scene{grid-row:span 2}
.human-character-scene{grid-column:span 2}
.recruitment-character-scene .capability-primary,.human-character-scene .capability-ai{position:relative;z-index:1;height:100%;grid-row:auto;grid-column:auto}
.home-page .platform-section .capability-ai{padding:30px;min-height:260px}
.platform-robot{position:absolute;left:-172px;top:42px;width:220px;max-width:none;height:auto;z-index:0;pointer-events:none;filter:drop-shadow(0 0 18px #66a7ff33)}
.platform-human{position:absolute;right:-172px;top:38px;width:250px;max-width:none;height:auto;z-index:0;pointer-events:none;filter:drop-shadow(0 0 18px #ff8c3222)}
@media(min-width:1101px) and (min-height:720px){
 .home-page .home-scene{min-height:calc(100svh - var(--home-header-height))}
 .home-hero{display:grid;align-items:center}
 .home-hero-inner{width:min(100%,2160px);min-height:0;aspect-ratio:auto;height:calc(100svh - var(--home-header-height));max-height:1220px}
 .home-hero-art{display:flex;align-items:center;justify-content:center}
 .home-hero-art img{width:auto;max-width:none;height:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
 .home-hero-actions{bottom:76px}
 .home-hero-copy{top:10%}
 .home-hero h1{font-size:clamp(2.6rem,3.5vw,5rem)}
 .home-hero-description{font-size:clamp(1.125rem,1.35vw,1.65rem)}
 .home-page .services-section,.home-page .approach-section,.home-page .platform-section{display:flex;flex-direction:column;justify-content:center;padding:40px 0}
 .home-page .services-section .section-heading{margin-bottom:24px}
 .home-page .services-section h2{font-size:clamp(2.3rem,2.9vw,3.1rem)}
 .home-page .services-section .eyebrow{margin-bottom:18px}
 .home-page .services-section .service{padding-top:20px}
 .home-page .services-section .service-top{margin-bottom:14px}
 .home-page .services-section .service h3{font-size:clamp(1.65rem,2.3vw,2.2rem);margin-bottom:0}
 .home-page .services-section .service>p{font-size:.95rem;margin:14px 0 0;line-height:1.65}
 .home-page .services-section .service ul{margin:12px 0 14px}
 .home-page .services-section .service li{padding:3px 0}
 .home-page .services-section .service-link{padding-top:10px;min-height:40px}
 .home-page .services-section .audience-grid{margin-top:26px}
 .home-page .services-section .audience{padding:18px 24px;gap:12px}
 .home-page .services-section .audience .eyebrow{margin-bottom:6px}
 .home-page .services-section .audience p:last-child{line-height:1.5;margin-top:8px}
 .home-page .section-heading{margin-bottom:34px}
 .home-page .platform-section{padding:28px 0}
 .home-page .platform-section .section-heading{margin-bottom:24px}
 .home-page .platform-section .eyebrow{margin-bottom:18px}
 .home-page .platform-section h2{font-size:clamp(2.3rem,2.9vw,3.1rem)}
 .home-page .platform-section .capability{padding:24px}
 .home-page .platform-section .capability-top{margin-bottom:22px}
 .home-page .platform-section .capability-ai{min-height:220px;padding:24px}
 .home-page .platform-section .capability-ai h3{font-size:1.9rem}
 .home-page .platform-section .capability-learning h3,.home-page .platform-section .capability-process h3{font-size:1.35rem}
 .home-page .platform-section .capability p{line-height:1.6}
 .home-page .platform-section .capability-primary h3{font-size:clamp(1.75rem,2.15vw,2.4rem)}
 .home-page .platform-section .capability-tags{margin:20px 0 25px}
 .home-page .platform-section .platform-footnote{margin-top:12px}
 .home-page .platform-section .module-directory{margin-top:14px}
 .home-page .platform-section .module-directory>summary{padding:16px 2px;min-height:68px}
 .home-page .platform-section .module-directory strong{display:inline;margin-right:18px}
 .home-page .platform-section .module-preview{display:inline;margin-top:0}
 .home-page .approach-intro>p:last-child{margin-top:20px}
 .home-page .contact-scene{display:flex;flex-direction:column;justify-content:center}
}
@media(max-width:1400px){
 .audience{align-items:flex-start;flex-direction:column;gap:15px;padding:20px 24px}
 .audience-grid{gap:24px;margin-top:30px}
 .home-page .capability-grid{padding-left:150px;padding-right:150px}
 .platform-robot{width:190px;left:-148px}
 .platform-human{width:218px;right:-150px}
 .home-page .founder-block{gap:26px;grid-template-columns:minmax(210px,.9fr) 1fr 1fr}
}
@media(max-width:1100px){
 .scene-navigation{display:none}
 .home-hero-actions{bottom:70px}
 .scroll-cue{bottom:12px}
 .home-page .founder-block{grid-template-columns:minmax(240px,.9fr) 1.4fr}
 .home-page .founder-description{grid-column:2}
 .founder-photo{grid-row:span 2}
 .home-page .capability-grid{padding-left:125px;padding-right:122px}
 .platform-robot{width:158px;left:-123px}
 .platform-human{width:176px;right:-121px;top:38px}
}
@media(max-width:900px){
 .scroll-cue{position:relative;inset:auto;transform:none;justify-self:center;margin-top:18px}
 .home-hero-actions{position:relative;inset:auto}
 .home-page .capability-grid{padding-left:111px;padding-right:106px}
 .human-character-scene{grid-column:auto}
 .home-page .platform-section .capability-ai{min-height:340px;padding:26px}
 .platform-robot{width:140px;left:-109px;top:48px}
 .platform-human{width:150px;right:-104px;top:48px}
 .home-page .founder-block{grid-template-columns:minmax(200px,.8fr) 1.2fr;gap:16px 25px}
}
@media(max-width:720px){
 .home-page{--home-header-height:72px}
 .audience-grid{grid-template-columns:1fr;gap:18px;margin-top:34px}
 .audience{padding:23px 24px}
 .home-page .founder-block{grid-template-columns:1fr;gap:24px;margin-top:40px}
 .founder-photo{grid-row:auto;width:min(100%,480px);aspect-ratio:4/3}
 .home-page .founder-description{grid-column:auto;max-width:40em}
 .home-page .founder-role{max-width:none}
 .home-page .capability-grid{padding:0;gap:22px}
 .recruitment-character-scene{grid-row:auto;margin-left:94px}
 .human-character-scene{margin-right:104px}
 .platform-robot{left:-94px;top:52px;width:120px}
 .platform-human{right:-104px;top:52px;width:150px}
 .home-page .platform-section .capability-ai{padding:26px;min-height:300px}
 .home-page .contact-scene .faq-section{padding:48px 0 38px}
 .home-page .contact-scene .contact-section{padding:44px 0 54px}
}
@media(max-width:420px){
 .home-page .capability-primary{padding:24px}
 .home-page .capability-primary h3{font-size:1.75rem}
 .home-page .platform-section .capability-ai{padding:24px}
 .home-page .capability-ai h3{padding:0;font-size:1.6rem}
 .home-page .capability-primary .text-link{font-size:.875rem}
 .scroll-cue{margin-top:12px;font-size:.7rem}
 .home-page .founder-block{gap:22px}
}
@media(max-width:320px){
 .recruitment-character-scene{margin-left:40px}.human-character-scene{margin-right:42px}
 .platform-robot{width:78px;left:-43px;top:60px}.platform-human{width:84px;right:-42px;top:60px}
 .home-page .capability-primary{padding:18px}.home-page .platform-section .capability-ai{padding:18px;min-height:0}
 .home-page .capability-primary h3{font-size:1.45rem}.home-page .capability-ai h3{font-size:1.4rem}
 .home-page .capability-top{flex-wrap:wrap;gap:7px;letter-spacing:.04em}
 .audience{padding:20px}.audience h3{font-size:1.15rem}
}
@media(max-width:360px){
 .platform-robot,.platform-human{display:none}
 .recruitment-character-scene,.human-character-scene{margin-inline:0}
}
@media(prefers-reduced-motion:reduce){.mouse-outline>span{animation:none}.scene-dot,.scene-name{transition:none}}
@media(forced-colors:active){
 .platform-robot,.platform-human{display:none}
 .home-page .platform-section .capability{box-shadow:none}
 .home-page .capability-grid{padding:0}.recruitment-character-scene,.human-character-scene{margin:0}
 .scene-dot{background:LinkText;box-shadow:none}.scene-navigation a[aria-current="location"] .scene-dot{background:Highlight;box-shadow:none}
 .scene-name,.audience{color:CanvasText;background:Canvas;border:1px solid CanvasText}
 .founder-photo:before{display:none}.founder-photo img{mask-image:none}
 .scroll-cue{color:LinkText;position:relative;inset:auto;transform:none;justify-content:center;margin-top:20px}
}
@media(forced-colors:active){
 .platform-robot,.platform-human{display:none}.home-page .capability-grid{padding-top:0}.home-page .platform-section .capability-ai{padding-right:30px;min-height:0}
 .home-hero{background:Canvas;color:CanvasText}
 .home-hero-art{display:none}.home-hero-inner{aspect-ratio:auto;min-height:0;display:block;padding:32px 24px}
 .home-hero-copy,.home-platform-label,.home-hero-actions{position:relative;inset:auto;width:auto;max-width:none}
 .home-platform-label{display:block;margin:30px 0}.home-hero-actions{flex-wrap:wrap;padding:0}
 .home-hero-actions .button-outline,.home-platform-status{color:CanvasText;background:Canvas;border-color:CanvasText}
}
