/* Portal styles never enter the isolated Resume document. */
:root{--space-panel:#151f30;--space-line:#2b3b52;--space-ink:#eaf1ff;--space-muted:#9eafc9;--space-accent:#92bfff}
:root[data-theme=light]{--space-panel:#fff;--space-line:#d7e0ed;--space-ink:#1d3150;--space-muted:#60738e;--space-accent:#245cd6}
body[data-surface]{color:var(--space-ink)}
.home-shell{position:relative;z-index:1;max-width:1380px;padding:0 48px}.galaxy-backdrop{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:#050919}.galaxy-drift{position:absolute;inset:-7%;background:url('/mascot/galaxy.webp') center 42%/cover no-repeat;opacity:.72;transform-origin:center;animation:galaxy-drift 150s ease-in-out infinite alternate;will-change:transform}.galaxy-shade{position:absolute;inset:0;background:linear-gradient(180deg,#04071522,#050a1855 45%,#060a19e8 100%)}#galaxy-stars{position:absolute;inset:0;width:100%;height:100%;opacity:.75}
.home-shell .site-header{border-bottom-color:#ffffff1b;color:#eaf1ff}.home-shell .wordmark,.home-shell .header-note{color:#eaf1ff}.home-shell .wordmark-dot{color:#94bfff}.home-shell .intro{padding:45px 0 35px}.home-shell .intro h1{font-size:clamp(34px,3.6vw,53px);font-weight:550;color:#f2f5ff;line-height:1.27;letter-spacing:-2px}.home-shell .intro .eyebrow{color:#a6c7ff}.home-shell .intro p{color:#b3bfd5;line-height:1.8;bottom:40px}.home-shell .theme-toggle{background:#101a2bb8;color:#d8e6ff;border-color:#ffffff35}.home-shell .site-footer{border-color:#ffffff1c;color:#91a1bd;margin-top:38px}
.three-worlds{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portal-grid .portal{position:relative;border:1px solid #ffffff28;background:linear-gradient(160deg,#1b2a43b5,#10192dc9);border-radius:24px;overflow:hidden;backdrop-filter:blur(16px);box-shadow:0 18px 50px #01030b25;transform:none!important;transition:border-color .3s,box-shadow .3s,background .3s}.three-worlds .portal:hover,.three-worlds .portal:focus-visible{border-color:#bedaffb5;box-shadow:0 0 0 1px #a7cfff25,0 20px 55px #01030b55}.three-worlds .resume-portal{--portal-glow:#9d9efc}.three-worlds .selectstar-portal{--portal-glow:#56c5e9}.three-worlds .personal-portal{--portal-glow:#d2b6ed}
.portal-grid .portal-art{position:relative;aspect-ratio:1.15;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 50% 80%,color-mix(in srgb,var(--portal-glow,#7da6ff) 16%,transparent),transparent 67%)}.portal-grid .portal-art:before{content:"";position:absolute;left:13%;right:13%;bottom:8%;height:22%;background:radial-gradient(ellipse,#8bbaff26,transparent 70%);filter:blur(12px);z-index:0}
.portal-grid .portal-art>img.pose-idle,.portal-grid .portal-art>img.pose-active{position:absolute;inset:3% 3% 0;width:94%;height:94%;object-fit:contain;object-position:center bottom;transform:none;filter:drop-shadow(0 14px 18px #03091835);transition:opacity .42s ease,transform .55s cubic-bezier(.2,.7,.2,1);z-index:1}.portal-grid .portal-art>img.pose-active{opacity:0;transform:scale(.94) rotate(-3deg)}.portal:hover .portal-art.has-swap>.pose-idle,.portal:focus-visible .portal-art.has-swap>.pose-idle{opacity:0;transform:scale(.97)}.portal:hover .portal-art.has-swap>.pose-active,.portal:focus-visible .portal-art.has-swap>.pose-active{opacity:1;transform:scale(1) rotate(0deg)}.portal-orbit{position:absolute;width:73%;height:29%;left:13.5%;bottom:9%;border:1px solid #a4bcff25;border-radius:50%;transform:rotate(-10deg)}
.portal-grid .portal-copy{padding:22px 28px 26px;color:#eaf0ff;border-top:1px solid #ffffff0c}.portal-grid .portal-title h2{font-size:31px;color:#f0f5ff;letter-spacing:-.7px}.portal-grid .portal-index{font-size:10px;color:#a7bad7;letter-spacing:1px}.portal-grid .portal-index>span:not(.private-badge){color:#a7bad7}.portal-grid .portal-copy>p{font-size:13px;color:#c4cfe2;line-height:1.8;margin-bottom:12px}.portal-grid .portal-detail{color:#94a8c9;font-size:11px}.portal-grid .arrow{color:#b6d1ff;font-size:25px}.portal-grid .private-badge{color:#b8c8e4;border:1px solid #ffffff25;background:#15243b;padding:3px 7px;border-radius:12px;font-size:9px;letter-spacing:0;margin-left:auto}.portal-grid .portal-art .company-stamp{position:absolute;right:15px;bottom:10px;width:38px;height:38px;object-fit:contain;inset:auto 15px 10px auto;transform:none!important;filter:none;z-index:3;opacity:.9}.home-shell .portal:focus-visible{outline:3px solid #c5dcff;outline-offset:5px}
.spaces-hub,.demo-shell,.personal-shell{max-width:1280px;padding:0 42px}.spaces-hub .hub-main{padding-top:35px}.spaces-hub .hub-intro h1{font-size:clamp(32px,3.2vw,43px);line-height:1.3;margin:15px 0;letter-spacing:-1.4px}.spaces-hub .hub-intro p{color:var(--space-muted)}.spaces-hub .hub-intro>img{width:225px;height:225px;margin-right:30px}.inline-company-logo{vertical-align:middle;object-fit:contain;margin-right:8px;width:28px;height:28px}.spaces-hub .hub-section-label{margin-top:22px}.spaces-hub .tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.spaces-hub .tool-card{border:1px solid var(--space-line);background:var(--space-panel);padding:0 27px 25px;overflow:hidden;box-shadow:none;transform:none}.spaces-hub .tool-card:hover{transform:none;border-color:var(--space-accent);box-shadow:0 12px 36px #00102b18}
.tool-illustration{position:relative;height:235px;flex-shrink:0;overflow:hidden;display:grid;place-items:center;margin:0 -27px 20px;background:radial-gradient(ellipse at 50% 75%,#75a5ff13,transparent 65%)}.tool-illustration img{position:absolute;inset:2%;height:96%;width:96%;object-fit:contain;transition:transform .4s ease}.tool-card:hover .tool-illustration img,.tool-card:focus-visible .tool-illustration img{transform:rotate(-3deg) scale(1.04)}.tool-illustration .tool-number{position:absolute;right:25px;top:22px;color:var(--space-muted)}.spaces-hub .tool-card h3{font-size:24px;color:var(--space-ink);margin-top:7px}.spaces-hub .tool-card p{font-size:12px;color:var(--space-muted)}.spaces-hub .tool-action{font-size:12px;border-top-color:var(--space-line);color:var(--space-accent)}.spaces-hub .tool-eyebrow{font-size:9px;color:var(--space-accent)}
.demo-heading{padding:20px 0 28px}.demo-heading h1{font-size:clamp(34px,3.6vw,48px);line-height:1.25;letter-spacing:-1.5px;margin:17px 0}.demo-heading p{color:var(--space-muted);font-size:13px}.demo-portals{grid-template-columns:1fr 1fr;gap:28px;max-width:1050px;margin:0 auto}.demo-portals .portal{background:var(--space-panel);border-color:var(--space-line)}.demo-portals .portal-art{aspect-ratio:1.6;--portal-glow:#7aaeff}.demo-portals .portal-title h2{color:var(--space-ink);font-size:30px}.demo-portals .portal-copy{color:var(--space-ink)}.demo-portals .portal-copy>p{color:var(--space-muted)}.demo-launch{display:flex;justify-content:space-between;border-top:1px solid var(--space-line);padding-top:15px;margin-top:20px;font-size:13px;color:var(--space-accent)}.demo-portals .portal:focus-visible{outline:3px solid var(--space-accent);outline-offset:4px}.demo-portals .portal:hover .pose-idle{transform:rotate(-2deg) scale(1.035)}
.construction-main{text-align:center;max-width:620px;margin:0 auto;padding:20px 0 36px}.construction-art{position:relative;width:min(390px,90vw);margin:0 auto}.construction-art img{position:relative;width:100%;height:auto;object-fit:contain}.construction-halo{position:absolute;inset:15% 7%;border-radius:50%;background:radial-gradient(circle,#6d9eff20,transparent 70%)}.construction-main h1{font-size:clamp(32px,4vw,46px);line-height:1.25;letter-spacing:-1.5px;margin:16px 0}.construction-main p{color:var(--space-muted);font-size:13px;line-height:1.8}.home-return{max-width:295px;margin:28px auto 0;text-decoration:none}.personal-shell .site-footer{margin-top:12px}
@keyframes galaxy-drift{0%{transform:translate3d(-1.2%,-.5%,0) scale(1.03) rotate(-.6deg)}100%{transform:translate3d(1.2%,.8%,0) scale(1.08) rotate(.7deg)}}
@media(min-width:1500px){.home-shell .intro{padding-top:55px}.home-shell .portal-art{aspect-ratio:1.17}}
@media(max-width:1000px){.home-shell{padding:0 28px}.three-worlds{gap:15px}.portal-grid .portal-copy{padding:20px}.portal-grid .portal-title h2{font-size:27px}.portal-grid .portal-copy>p{font-size:12px}.home-shell .intro p{position:static;text-align:left}.spaces-hub .tool-grid{gap:16px}.tool-illustration{height:205px}.spaces-hub .tool-card{padding-right:20px;padding-left:20px}}
@media(max-width:760px){.home-shell,.spaces-hub,.demo-shell,.personal-shell{padding:0 20px}.home-shell .site-header{gap:10px}.home-shell .header-note{display:none}.home-shell .intro{padding:30px 0 25px}.home-shell .intro h1{font-size:36px;letter-spacing:-1.3px}.three-worlds{grid-template-columns:1fr;max-width:500px;margin:auto;gap:22px}.portal-grid .portal-art{aspect-ratio:1.5}.portal-grid .portal-title h2{font-size:30px}.portal-grid .portal-copy{padding:20px 25px 24px}.home-shell .site-footer{margin-top:30px}.spaces-hub .tool-grid{grid-template-columns:1fr;max-width:500px;margin:auto}.tool-illustration{height:240px}.spaces-hub .hub-intro>img{width:140px;height:170px;margin:0 -8px 0 0}.spaces-hub .hub-intro h1{font-size:29px}.spaces-hub .hub-intro .eyebrow{font-size:9px}.spaces-hub .hub-intro p{max-width:220px;font-size:11px}.inline-company-logo{width:22px;height:22px}.demo-portals{grid-template-columns:1fr;max-width:500px}.demo-portals .portal-art{aspect-ratio:1.45}.demo-heading{padding:18px 0 24px}.construction-art{width:min(340px,85vw)}.personal-shell .site-header .theme-toggle,.demo-shell .site-header .theme-toggle{display:none}}
@media(prefers-reduced-motion:reduce){.galaxy-drift{animation:none;will-change:auto}.portal-grid .portal-art>img,.tool-illustration img{transition:none}.tool-card:hover .tool-illustration img,.demo-portals .portal:hover .pose-idle{transform:none}#galaxy-stars{display:none}}
