:root{--navy:#0B1423;--panel:#111f31;--panel2:#16283e;--cyan:#39CCF2;--white:#fff;--muted:#a6b5c8;--border:#25364b;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--navy);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.skip-link{position:absolute;top:-80px;left:20px;background:var(--cyan);color:var(--navy);padding:12px;z-index:100}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:50;background:rgba(11,20,35,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px}.brand{display:inline-flex;align-items:center}.brand img{display:block;max-width:100%;object-fit:contain}.nav{display:flex;gap:32px;align-items:center}.nav>a{font-size:13px;font-weight:600;color:#c2d0df;transition:color .2s}.nav>a:hover{color:var(--cyan)}.nav .nav-cta{color:var(--navy);background:var(--cyan);padding:12px 18px;border-radius:5px}.nav .nav-cta:hover{color:var(--navy);background:#7de3ff}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:10px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:white;margin:5px 0}.section{padding:112px 0}.hero{position:relative;min-height:660px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(ellipse at 78% 44%,#142d44 0%,#0b1423 54%)}.hero-glow{position:absolute;right:-120px;top:0;width:550px;height:550px;background:radial-gradient(circle,rgba(57,204,242,.09),transparent 70%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;position:relative}.eyebrow,.kicker{font-size:12px;letter-spacing:.19em;font-weight:700;color:var(--cyan)}.eyebrow{display:flex;gap:11px;align-items:center}.status-dot{width:8px;height:8px;background:var(--cyan);border-radius:50%;display:inline-block;box-shadow:0 0 13px rgba(57,204,242,.5)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.5rem,6.5vw,6.2rem);letter-spacing:-.07em;line-height:1.05;margin:24px 0 24px;font-weight:800}h1 span,h2 em{color:var(--cyan);font-style:normal}.lead{font-size:17px;line-height:1.85;max-width:550px;color:#b6c6d7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:25px;min-height:49px;padding:14px 22px;border-radius:5px;font-size:13px;font-weight:750;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--cyan);color:#071421}.btn-primary:hover{background:#81e6ff}.btn-outline{border:1px solid #4b6076;color:white}.btn-outline:hover{background:#1c3147}.hero-foot{display:flex;gap:17px;align-items:center;margin-top:70px;color:#8095aa;font-size:10px;letter-spacing:.18em;font-weight:700}.hero-foot i{width:3px;height:3px;border-radius:50%;background:var(--cyan)}.hero-visual{height:445px;display:grid;place-items:center;position:relative}.orbit{position:absolute;border:1px solid rgba(57,204,242,.13);transform:rotate(-25deg);border-radius:50%}.orbit-one{width:440px;height:290px}.orbit-two{width:340px;height:430px;transform:rotate(35deg)}.visual-card{width:270px;height:270px;background:linear-gradient(145deg,#203d55,#101c2e);border:1px solid #34506a;border-radius:30px;display:grid;place-items:center;box-shadow:0 30px 90px #02070d,0 0 75px rgba(57,204,242,.1);transform:rotate(-7deg)}.visual-card img{width:155px;height:155px;border-radius:22px}.visual-label{position:absolute;bottom:20px;font-size:9px;letter-spacing:.2em;color:#93b7c9}.code-label{position:absolute;color:#79a4bc;font-size:11px;font-family:ui-monospace,monospace;letter-spacing:.1em}.code-label.top{top:24px;right:0}.code-label.bottom{bottom:26px;left:0}.services{background:#0e1929}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-intro>div{max-width:650px}.section-intro>p{max-width:390px;color:var(--muted);line-height:1.85;font-size:15px;margin-bottom:6px}.kicker{margin-bottom:20px}h2{font-size:clamp(2.4rem,4.2vw,4rem);line-height:1.12;letter-spacing:-.055em;margin-bottom:0}h3{font-size:25px;letter-spacing:-.04em}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:var(--panel);border:1px solid var(--border);padding:34px;min-height:325px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.service-card:hover{border-color:#3c8ca9;transform:translateY(-4px)}.service-num{font-family:ui-monospace,monospace;color:#7891a9;font-size:11px}.service-icon{font-size:37px;font-weight:700;color:var(--cyan);margin:24px 0 28px}.service-card h3{margin-bottom:12px}.service-card p{font-size:14px;line-height:1.8;color:var(--muted)}.service-tags{margin-top:auto;padding-top:20px;font-size:10px;color:var(--cyan);letter-spacing:.13em;font-weight:700}.projects{background:var(--navy)}.project-panel{display:grid;grid-template-columns:1fr 1fr;min-height:400px;background:var(--panel);border:1px solid var(--border)}.project-art{display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,#244158,#12253a 60%,#101c2b)}.project-art>span{font-size:clamp(130px,20vw,240px);font-weight:850;letter-spacing:-.13em;z-index:1}.accent{color:var(--cyan)}.project-ring{position:absolute;width:340px;height:340px;border:1px solid rgba(57,204,242,.22);border-radius:50%;box-shadow:0 0 0 45px rgba(57,204,242,.035),0 0 0 90px rgba(57,204,242,.02)}.project-copy{padding:65px 55px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.pill{font-size:10px;letter-spacing:.14em;color:var(--cyan);border:1px solid #2b5e70;padding:10px 12px;display:flex;align-items:center;gap:10px;margin-bottom:25px}.project-copy h3{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.16;margin-bottom:18px}.project-copy p{font-size:15px;line-height:1.85;color:var(--muted)}.text-link{margin-top:12px;color:var(--cyan);font-weight:700;font-size:13px}.about{background:#101d2e}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-copy{padding-top:48px}.about-copy p{font-size:16px;line-height:1.9;color:#b9c7d7}.principles{margin-top:40px;border-top:1px solid var(--border)}.principles>div{display:flex;gap:25px;padding:16px 0;border-bottom:1px solid var(--border);font-size:14px}.principles strong{color:var(--cyan);font-family:ui-monospace,monospace}.contact{text-align:center;background:radial-gradient(ellipse at center,#173047 0%,#0b1423 70%)}.contact-inner{max-width:750px}.contact h2{font-size:clamp(3rem,6vw,5.5rem)}.contact p:not(.kicker){color:var(--muted);line-height:1.8;margin:25px auto;max-width:500px}.contact .contact-note{font-size:11px;color:#8194a8;margin-top:16px}.footer{background:#080f1b;border-top:1px solid var(--border)}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-top{padding:38px 0;border-bottom:1px solid var(--border)}.footer-top>span{font-size:12px;color:var(--muted)}.footer-bottom{padding:24px 0;color:#8fa0b4;font-size:12px}.footer-bottom>div{display:flex;gap:22px}.footer-bottom a:hover{color:var(--cyan)}.legal{min-height:70vh;padding:90px 0}.legal .container{max-width:760px}.legal h1{font-size:clamp(2.7rem,6vw,4rem)}.legal p,.legal li{color:var(--muted);line-height:1.85}.legal h2{font-size:1.5rem;margin:36px 0 14px}.notice{border:1px solid #4b687d;background:#162b40;padding:22px;margin:25px 0;color:#d6e6f3}.legal a{text-decoration:underline;text-decoration-color:var(--cyan)}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero{padding-top:65px}.hero-visual{height:300px}.visual-card{width:205px;height:205px}.visual-card img{width:125px;height:125px}.orbit-one{width:320px;height:220px}.orbit-two{width:260px;height:290px}.hero-foot{margin-top:40px}.section-intro{display:block}.section-intro>p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:245px}.project-copy{padding:35px}.about-grid{gap:35px}}@media(max-width:680px){.container{width:min(var(--max),calc(100% - 36px))}.nav-wrap{min-height:68px}.brand img{width:166px;height:auto}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:68px;background:#101e30;padding:22px 18px 28px;border-bottom:1px solid var(--border);flex-direction:column;align-items:stretch;gap:0}.nav.is-open{display:flex}.nav>a{padding:14px 8px}.nav .nav-cta{text-align:center;margin-top:12px}.section{padding:76px 0}.hero{min-height:unset;padding-top:75px}.hero-visual{height:260px}.hero-content h1{font-size:clamp(3.2rem,11vw,5rem)}.hero-foot{gap:10px;flex-wrap:wrap;font-size:9px}.section-intro{margin-bottom:30px}.service-card{padding:27px}.project-panel{grid-template-columns:1fr}.project-art{min-height:245px}.project-art>span{font-size:150px}.project-copy{padding:34px 27px 42px}.about-grid{grid-template-columns:1fr}.about-copy{padding-top:0}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-bottom>div{flex-wrap:wrap}.contact .btn{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* v1.1: sharp, consistent vector branding */
.brand img { width:205px; height:auto; aspect-ratio:4/1; object-fit:contain; }
.footer .brand img { width:180px; height:auto; }
.visual-card { transform:none; }
.visual-card img { display:block; width:160px; height:160px; object-fit:contain; }
@media (max-width:900px) { .visual-card img { width:128px; height:128px; } }
@media (max-width:680px) { .brand img { width:166px; height:auto; } .footer .brand img { width:180px; } }
@media (max-width:360px) { .brand img { width:142px; } .hero-content h1 { font-size:clamp(2.6rem,11vw,3.2rem); } }
@supports not (backdrop-filter: blur(1px)) { .site-header { background:#0B1423; } }

/* v1.2: targeted legibility improvements for brand wordmark and hero caption. */
.site-header .brand img { width:236px; height:auto; }
.footer .brand img { width:208px; height:auto; }
.hero-visual .code-label.bottom { font-size:15px; font-weight:750; letter-spacing:.055em; color:#EAF6FF; line-height:1.35; }
@media (max-width:680px) { .site-header .brand img { width:195px; height:auto; } .footer .brand img { width:185px; height:auto; } .hero-visual .code-label.bottom { font-size:13px; } }
@media (max-width:360px) { .site-header .brand img { width:174px; } }

/* v1.3: no redundant center caption; clear two-line header wordmark. */

/* DartOrbit project: keep the supplied raster artwork at its native aspect ratio. */
.dartorbit-art{background:#0B1423;min-width:0;padding:clamp(12px,2.4vw,32px)}
.dartorbit-art img{display:block;width:100%;height:auto;max-height:430px;object-fit:contain}
.dartorbit-panel{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
.project-subtitle{font-weight:700;color:#e4f4ff!important;margin-bottom:12px}
.dartorbit-audience{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}
.dartorbit-audience span{font-size:11px;color:#bfefff;border:1px solid #31566c;border-radius:4px;padding:7px 9px}
.project-copy .project-disclaimer{font-size:12px;color:#8fa5ba;margin-bottom:0}
@media(max-width:680px){.dartorbit-panel{grid-template-columns:1fr}.dartorbit-art{min-height:0;padding:16px}.dartorbit-art img{max-height:none}}
