@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#0a1118;--panel:#101c26;--text:#eef3f5;--muted:#a0b2c0;--line:rgba(178,210,231,.17);--ice:#9bd9ed;--red:#ed5b68;--font:'DM Sans',sans-serif;--display:'Space Grotesk',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}body:before{content:'';position:absolute;top:0;left:25%;width:75%;height:900px;background:radial-gradient(ellipse at 70% 15%,#19314166,transparent 65%);z-index:-1;pointer-events:none}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--ice);outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(42px,5.3vw,78px)}h2{font-size:clamp(34px,4vw,55px)}h3{letter-spacing:-.025em}em{font-style:normal;color:var(--ice)}p{color:var(--muted)}.wrap{width:min(1320px,calc(100% - 104px));margin-inline:auto}.section{padding-block:110px}.eyebrow{font:500 11px/1.5 var(--font);letter-spacing:.16em;color:var(--ice);text-transform:uppercase}.skip{position:fixed;top:12px;left:12px;padding:8px 16px;background:var(--ice);color:var(--bg);transform:translateY(-200%);z-index:100}.skip:focus{transform:none}.nav{display:flex;align-items:center;justify-content:space-between;width:min(1320px,calc(100% - 104px));height:92px;margin:auto;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;gap:13px;align-items:center;font-family:var(--display);font-size:19px;letter-spacing:.02em;font-weight:600}.brand img{width:27px;height:30px;object-fit:contain}.brand small{font-size:11px;letter-spacing:.16em;font-weight:400;color:var(--muted)}.brand-slash{color:var(--red);padding-inline:5px}.nav nav{display:flex;gap:34px;align-items:center;font-size:13px}.nav nav a{color:#bac8d1;transition:color .2s}.nav nav a:hover,.nav nav a[aria-current]{color:var(--text)}.nav-contact{border:1px solid var(--line);padding:9px 16px;border-radius:5px}.nav-contact span{color:var(--ice);margin-left:12px}.hero{padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;min-height:700px}.hero h1{margin:24px 0 27px}.hero .lead{max-width:530px;font-size:17px;line-height:1.75}.signal{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red);margin-right:9px;box-shadow:0 0 15px #ed5b6855}.actions{display:flex;align-items:center;gap:26px;margin-top:36px;flex-wrap:wrap}.button{display:inline-flex;gap:28px;align-items:center;padding:14px 21px;font-size:13px;font-weight:600;border-radius:5px;transition:transform .2s,background .2s}.primary{background:#c7e6ee;color:#0b1820;border:1px solid #d4f0f5;box-shadow:0 5px 35px #77b8d00b}.primary:hover{background:#e7f7fa;transform:translateY(-2px)}.text-link{font-size:13px;color:#cfdae1;border-bottom:1px solid #687e8a;padding-bottom:3px}.text-link:hover{color:var(--ice)}.hero-note{display:flex;align-items:center;gap:12px;font-size:11px;color:#7f99aa;margin-top:43px}.fine-rule{width:30px;height:1px;background:var(--red)}.hero-visual{position:relative;margin-top:45px;border:1px solid #66839555;border-radius:14px;box-shadow:0 40px 100px #0008,0 0 90px #6ab3d113;background:linear-gradient(125deg,#182b3866,#101d27a6);padding:14px;transform:perspective(1200px) rotateY(-5deg) rotateX(2deg)}.hero-visual:before{content:'';position:absolute;width:55%;height:1px;top:-1px;left:8%;background:linear-gradient(90deg,transparent,var(--ice),#bb9feb,transparent)}.visual-label,.visual-footer{display:flex;justify-content:space-between;gap:15px;color:#8ea9ba;font-size:9px;letter-spacing:.12em;padding:2px 6px 13px}.status-dot{color:#c2dbe9}.status-dot:before{content:'';display:inline-block;width:4px;height:4px;background:#84bcae;border-radius:50%;margin-right:6px}.project-image{position:relative;overflow:hidden;background:linear-gradient(140deg,#182a36,#0a141d);border:1px solid var(--line);border-radius:8px}.project-image img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .5s}.project-image figcaption{position:absolute;bottom:10px;left:12px;background:#071019e8;color:#b8cbd8;font-size:9px;letter-spacing:.04em;padding:4px 8px;border:1px solid #a6ccdf22;border-radius:3px}.hero-shot{border-color:#839fb044}.hero-shot img{aspect-ratio:1.22;object-fit:cover;object-position:left top}.visual-footer{padding:13px 6px 1px;font-size:8px;letter-spacing:.05em}.principles{border-block:1px solid var(--line);background:#b1dbf803}.principles>div{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;color:#9eb2c0;font-size:12px}.principles i{font-style:normal;color:#577181;font-size:14px}.section-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:80px;align-items:end}.section-intro .eyebrow{grid-column:1/-1;margin-bottom:24px}.section-intro>p:last-child{max-width:440px;font-size:16px;padding-bottom:5px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.services article{position:relative;background:linear-gradient(125deg,#1b2e3d55,#15212c44);border:1px solid var(--line);border-radius:10px;padding:29px 28px 27px}.services article:before{content:'';position:absolute;top:-1px;left:30px;width:90px;height:1px;background:linear-gradient(90deg,var(--ice),transparent);opacity:.6}.service-num{font-size:11px;color:#668a9e}.services h3{font-size:21px;line-height:1.25;margin-top:32px;margin-bottom:19px;letter-spacing:-.025em}.services p{font-size:13px;line-height:1.8}.services ul{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid var(--line);padding-top:18px;color:#b4c5d0;font-size:12px}.services li{padding-block:3px}.services li:before{content:'↗';color:#719aaf;margin-right:10px}.work{padding-top:20px}.work-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.work-heading h2{margin-top:22px}.work-heading>p{font-size:13px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:48px 28px}.project-link{display:block}.project-link:hover .project-image img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;margin-top:20px;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#91adbf}.index{color:#5a788a}.project-card h3{font-size:27px;display:flex;justify-content:space-between;margin-top:10px}.project-card h3>span{font:24px var(--font);color:#87aabd}.project-card p{font-size:14px;margin-top:9px}.project-status{display:inline-block;font-size:10px;color:#8aabbd;margin-top:16px;border:1px solid var(--line);padding:3px 9px;border-radius:20px}.project-card .project-image img[src$='hyperion-mark.svg']{object-fit:contain;padding:55px}.process-section{border-block:1px solid var(--line);background:linear-gradient(120deg,#101e28,#0c151d)}.process-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-top:24px}.process-heading>p{max-width:400px;font-size:15px}.process{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:54px 0 0;counter-reset:step}.process li{border-top:1px solid #64869b66;padding-top:18px}.process li>span{font-size:10px;color:#85adbf;letter-spacing:.12em}.process h3{font-size:23px;margin:23px 0 13px}.process p{font-size:13px}.about{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:120px;padding-block:130px}.about-mark{display:flex;flex-direction:column;align-items:center;gap:40px;background:radial-gradient(ellipse,#2b152222,transparent 70%)}.about-mark img{max-width:180px;max-height:220px;object-fit:contain;filter:drop-shadow(0 0 45px #f4475533)}.about-mark span{font-size:10px;letter-spacing:.23em;color:#8099ac}.about h2{margin-top:24px;margin-bottom:27px}.about .lead{font-size:19px;color:#d0dde5;margin-bottom:19px}.about p{font-size:14px;margin-bottom:19px}.about .text-link{display:inline-block;margin-top:10px}.contact{border:1px solid #718fa144;border-radius:12px;background:radial-gradient(ellipse at 0 50%,#1b39485c,transparent 60%),linear-gradient(135deg,#14232f,#0e1922);padding:60px;display:grid;grid-template-columns:1.5fr 1fr;gap:70px;margin-bottom:100px;position:relative;overflow:hidden}.contact:before{content:'';width:30%;height:1px;background:linear-gradient(90deg,transparent,#98d7e9,transparent);position:absolute;top:0;left:10%}.contact h2{font-size:clamp(34px,3.9vw,52px);margin:23px 0}.contact p{max-width:530px;font-size:14px}.contact .button{margin-top:28px}.contact aside{align-self:center;border-left:1px solid var(--line);padding-left:40px}.contact-label{font-size:10px;letter-spacing:.15em;color:#7f9db0}.contact aside p{font-size:15px;line-height:2;margin:20px 0 30px;color:#9ab1c1}.contact strong{font-weight:500;color:#d1e5ee}.contact aside a{font-size:12px;color:var(--ice);word-break:break-word}footer{width:min(1320px,calc(100% - 104px));margin:auto;padding-block:32px 30px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:11px}footer .brand{font-size:14px;font-weight:500}footer>p{text-align:right;font-size:12px}footer>div{display:flex;gap:25px;color:#b2c9d5}footer>small{text-align:right;color:#627e91;font-size:10px}.case-main{padding-top:40px;padding-bottom:90px}.back{color:#9ab6c8;font-size:12px}.case-heading{padding:55px 0 40px;max-width:950px}.case-heading h1{margin:20px 0;font-size:clamp(42px,6vw,76px)}.case-heading .lead{font-size:23px;color:#a7c7d7}.case-meta{display:flex;gap:25px;flex-wrap:wrap;margin-top:25px;font-size:11px;color:#83a7bc}.case-meta span:first-child{color:#bddde8}.case-cover{max-height:620px}.case-cover img{aspect-ratio:2.05;object-fit:cover}.case-cover img[src$='hyperion-mark.svg']{object-fit:contain;padding:80px}.case-body{display:grid;grid-template-columns:1fr 2.2fr;gap:100px;padding-block:65px}.case-body aside>p{font-size:13px;margin-top:15px;margin-bottom:35px;max-width:300px}.tech{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.tech>span{font-size:10px;border:1px solid var(--line);padding:3px 9px;border-radius:4px;color:#99b6c9}.case-body section{margin-bottom:45px}.case-body h2{font-size:34px;line-height:1.2;margin:18px 0}.case-body section>p{font-size:16px;line-height:1.9;margin-top:18px}.implementation{padding-left:20px;color:var(--muted)}.implementation li{margin-block:16px;padding-left:8px;line-height:1.8}.implementation li::marker{color:var(--red)}.case-body .scope{padding:24px 28px;border-left:2px solid #517c93;background:#142a3944}.scope>p{font-size:13px!important;margin-top:12px!important}.case-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:30px}@media(min-width:1600px){.hero{min-height:760px}.hero-visual{margin-left:10px}}@media(max-width:1100px){.wrap,.nav,footer{width:calc(100% - 64px)}.hero{gap:30px;padding-top:70px;min-height:620px}.hero h1{font-size:55px}.hero .lead{font-size:15px}.actions{gap:20px}.hero-visual{padding:10px}.visual-footer{font-size:7px;letter-spacing:0}.section{padding-block:85px}.services{gap:14px}.services article{padding:23px 20px}.services h3{font-size:19px}.about{gap:65px}.contact{padding:44px;gap:40px}.contact aside{padding-left:25px}.case-body{gap:60px}}@media(max-width:780px){.wrap,.nav,footer{width:calc(100% - 40px)}.nav{height:76px}.nav nav{gap:20px;font-size:12px}.brand small,.brand-slash{display:none}.brand{font-size:17px;gap:9px}.nav-contact{padding:7px 10px}.nav-contact span{margin-left:4px}.hero{grid-template-columns:1fr;padding-top:60px;padding-bottom:60px;gap:30px}.hero h1{font-size:clamp(42px,8.5vw,66px)}.hero .lead{max-width:550px;font-size:16px}.hero-note{margin-top:28px}.hero-visual{max-width:620px;width:100%;margin-top:10px;transform:none}.hero-shot img{aspect-ratio:1.85}.visual-label{font-size:9px}.visual-footer{font-size:9px}.principles>div{flex-wrap:wrap;justify-content:center;gap:12px 25px;padding-block:20px;min-height:85px;font-size:10px}.principles i{display:none}.section-intro{grid-template-columns:1fr;gap:22px}.section-intro>p:last-child{max-width:580px}.section-intro .eyebrow{margin-bottom:0}.services{grid-template-columns:1fr;margin-top:30px}.services article{padding:25px}.services h3{margin-top:14px;font-size:23px}.services ul{display:flex;flex-wrap:wrap;gap:0 25px}.section{padding-block:65px}.work-heading{display:block;margin-bottom:30px}.work-heading>p{margin-top:22px}.project-grid{gap:32px 20px}.project-card h3{font-size:22px}.project-card p{font-size:12px}.project-meta{font-size:8px;letter-spacing:.04em}.project-image figcaption{font-size:7px;left:7px;bottom:7px;padding:3px 6px}.process-heading{display:block}.process-heading>p{margin-top:23px}.process{gap:25px;margin-top:35px}.process h3{font-size:20px}.process p{font-size:12px}.about{grid-template-columns:1fr;gap:40px}.about-mark{display:none}.about h2{margin-top:20px}.contact{grid-template-columns:1fr;padding:35px;gap:35px;margin-bottom:60px}.contact aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.contact aside p{font-size:14px;margin-block:15px}.case-body{grid-template-columns:1fr;gap:35px;padding-block:40px}.case-body aside{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px}.case-body aside>.eyebrow:nth-of-type(2){grid-column:2;grid-row:1}.case-body aside>p{grid-column:1;margin:0}.case-body aside>.tech{grid-column:2;grid-row:2;margin:0;align-content:start}.case-heading{padding-top:35px}.case-heading .lead{font-size:19px}.case-cover img{aspect-ratio:1.6}.case-body section{margin-bottom:35px}.case-body h2{font-size:30px}.case-body section>p{font-size:15px}.case-bottom{align-items:start;flex-direction:column}footer{grid-template-columns:1fr;gap:14px}footer>p,footer>small{text-align:left}footer .brand-slash{display:initial}}@media(max-width:480px){.nav nav{gap:15px}.nav nav a:nth-child(3){display:none}.nav .brand img{width:22px}.nav nav .nav-contact{font-size:11px}.hero{padding-top:45px}.hero h1{font-size:43px;letter-spacing:-.06em}.eyebrow{font-size:9px;letter-spacing:.12em}.hero .lead{font-size:14px}.actions{gap:20px;margin-top:25px}.button{font-size:12px;padding:12px 17px;gap:22px}.hero-note{font-size:10px}.hero-visual{padding:9px}.visual-footer{font-size:7px}.project-grid{grid-template-columns:1fr;gap:34px}.project-card h3{font-size:25px}.project-meta{font-size:9px}.project-image figcaption{font-size:8px}.process{grid-template-columns:1fr;gap:30px}.process h3{margin-top:14px;font-size:23px}.process p{font-size:13px}.process li>span{font-size:9px}.contact{padding:29px 24px}.contact h2{font-size:35px}.contact p{font-size:13px}.case-heading h1{font-size:40px}.case-meta{gap:10px;flex-direction:column}.case-body aside{grid-template-columns:1fr;gap:12px}.case-body aside>.eyebrow:nth-of-type(2){grid-row:auto;grid-column:auto;margin-top:10px}.case-body aside>.tech{grid-column:auto;grid-row:auto}.case-body aside>p{max-width:none}.case-body h2{font-size:28px}.case-body .scope{padding:20px}.back{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;transform:none!important}}
/* v2 additions */
.availability{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:500;color:#cfe9d9;background:#4fb38614;border:1px solid #6cc49a40;padding:7px 14px;border-radius:30px}
.pulse{width:7px;height:7px;border-radius:50%;background:#5fd39a;box-shadow:0 0 0 0 #5fd39a88;animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 #5fd39a88}70%{box-shadow:0 0 0 9px #5fd39a00}100%{box-shadow:0 0 0 0 #5fd39a00}}
.hero-tags{list-style:none;padding:0;margin:40px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.hero-tags li,.chips li{font-size:11px;color:#b9cdd9;border:1px solid var(--line);background:#9bd9ed08;padding:4px 11px;border-radius:20px}
.stats{border-block:1px solid var(--line);background:linear-gradient(90deg,#9bd9ed06,#ed5b6806)}
.stats>.wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.stats>.wrap>div{padding:30px 24px;border-left:1px solid var(--line)}
.stats>.wrap>div:first-child{border-left:0;padding-left:0}
.stats strong{display:block;font:500 clamp(34px,3.6vw,48px)/1 var(--display);letter-spacing:-.04em;color:var(--text)}
.stats strong::after{content:'';display:block;width:22px;height:2px;background:var(--red);margin:14px 0 12px}
.stats span{font-size:12.5px;color:var(--muted);line-height:1.5}
.infra{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}
.infra article{position:relative;background:linear-gradient(125deg,#1b2e3d55,#15212c44);border:1px solid var(--line);border-radius:10px;padding:28px;transition:border-color .25s,transform .25s}
.infra article:hover{border-color:#9bd9ed44;transform:translateY(-3px)}
.infra h3{font-size:22px;margin:18px 0 14px}
.infra p{font-size:13.5px;line-height:1.8}
.chips{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:7px}
.infra-feature{grid-column:1/-1;display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:center;background:radial-gradient(ellipse at 0 50%,#3a1a2244,transparent 55%),linear-gradient(125deg,#1b2e3d66,#15212c44)!important}
.infra-feature h3{font-size:30px}
.infra-feature p{max-width:720px;font-size:15px}
.infra-feature .text-link{display:inline-block;margin-top:24px}
.infra-media{border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#070d13}
.infra-media img{width:100%;aspect-ratio:1;object-fit:cover}
.footnote{font-size:11.5px;color:#6f8a9b;margin-top:40px}
.exp-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;margin-top:54px;align-items:start}
.timeline{list-style:none;padding:0;margin:0;position:relative}
.timeline:before{content:'';position:absolute;left:5px;top:8px;bottom:8px;width:1px;background:linear-gradient(var(--ice),#64869b44 60%,transparent)}
.timeline li{position:relative;padding:0 0 34px 34px}
.timeline li:before{content:'';position:absolute;left:0;top:6px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid #8fc9dc}
.timeline li:first-child:before{background:var(--ice);box-shadow:0 0 14px #9bd9ed88}
.when{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#85adbf}
.timeline h3{font-size:21px;margin:8px 0 2px}
.org{font-size:13px;color:#cbdbe4!important;margin-bottom:8px!important}
.timeline p{font-size:13.5px;line-height:1.75}
.skills{position:sticky;top:30px;border:1px solid var(--line);border-radius:12px;padding:30px;background:#0a141c99;display:flex;flex-direction:column;gap:22px}
.skills p{font-size:13.5px;color:#c3d3dc;margin-top:8px;line-height:1.7}
.skills .button{align-self:flex-start;margin-top:6px}
.about-links{display:flex;gap:26px;flex-wrap:wrap;margin-top:10px}
.upwork-contact{line-height:2.2!important;margin:18px 0 0!important}
@media(max-width:1100px){.infra{grid-template-columns:1fr 1fr}.infra article:last-child{grid-column:1/-1}.infra-feature{grid-template-columns:200px 1fr;gap:28px}.exp-grid{gap:40px}}
@media(max-width:780px){.nav nav a:nth-child(2),.nav nav a:nth-child(4){display:none}.stats>.wrap{grid-template-columns:1fr 1fr}.stats>.wrap>div{padding:22px 16px}.stats>.wrap>div:nth-child(3){border-left:0;padding-left:0}.stats>.wrap>div:nth-child(n+3){border-top:1px solid var(--line)}.infra{grid-template-columns:1fr}.infra-feature{grid-template-columns:1fr}.infra-media{max-width:200px}.exp-grid{grid-template-columns:1fr}.skills{position:static}.hero-tags{margin-top:28px}}
@media(max-width:480px){.nav nav a:nth-child(3){display:inline}.availability{font-size:10.5px}.stats strong{font-size:32px}.infra article{padding:22px}.infra-feature h3{font-size:25px}}
