:root{--bg:#060e28;--bg-soft:#0a1535;--surface:#101e41;--text:#f7faff;--text-muted:#adbedb;--accent:#74baff;--border-soft:#203358;--font-sans:Inter,"Segoe UI",Arial,sans-serif;--max-width:1200px;--gutter:clamp(20px,4vw,48px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:#fff}button{font:inherit}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(36px,5vw,66px);font-weight:700}h2{font-size:clamp(28px,3vw,42px)}h3{font-size:21px}p{margin-bottom:1.25rem}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #9dd3ff;outline-offset:5px;border-radius:6px}[hidden]{display:none!important}.container{width:min(var(--max-width),calc(100% - var(--gutter)*2));margin-inline:auto}.container--narrow{max-width:840px}.skip-link{position:absolute;left:20px;top:-100px;z-index:200;padding:12px;background:#fff;color:#05275a}.skip-link:focus{top:10px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(6,14,40,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(126,174,255,.13)}.header__inner{display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:28px;min-height:100px}.brand{display:block}.brand-animation{display:block;width:190px}.brand-animation img{display:block;width:100%;height:auto}.nav__list{display:flex;justify-content:center;align-items:center;gap:5px;list-style:none;margin:0;padding:5px;background:rgba(26,45,84,.45);border:1px solid rgba(140,181,255,.1);border-radius:999px}.nav__list a{display:block;white-space:nowrap;padding:11px 15px;color:#b9cae6;font-size:13px;font-weight:600;border-radius:999px;transition:background .18s,color .18s}.nav__list a:hover{color:#fff;background:rgba(94,158,255,.13)}.nav__list a[aria-current]{color:#fff;background:linear-gradient(135deg,#153a75,#144783);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.nav__list li:last-child a{color:#8acaff}.nav__toggle{display:none}.language-segment{display:flex;align-items:center;gap:3px;padding:4px;border:1px solid #36517e;border-radius:12px;background:#0b1a3b}.language-segment a{display:grid;place-items:center;min-width:43px;min-height:40px;padding:0 10px;border-radius:8px;font-size:12px;font-weight:750;letter-spacing:.05em;color:#91aacd}.language-segment a[aria-current]{color:white;background:linear-gradient(135deg,#078aec,#1755bf);box-shadow:0 2px 10px rgba(0,114,244,.18)}.language-segment a:hover{color:white}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 90% 20%,rgba(16,75,168,.23),transparent 65%);padding:90px 0 100px}.hero__inner{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center}.hero__content{max-width:680px}.hero h1{font-size:clamp(42px,5vw,72px);line-height:1.06;margin:25px 0;letter-spacing:-.055em}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:750;color:#78baff;margin-bottom:20px}.eyebrow-line{width:28px;height:2px;background:#219cff}.lead{color:#b3c5e1;font-size:17px;line-height:1.8;max-width:580px}.hero .lead+.lead{font-size:14px;color:#829bbb;margin-top:20px}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:30px 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:14px 23px;border-radius:10px;font-size:13px;line-height:1.4;font-weight:650;transition:background .18s,box-shadow .18s,transform .18s}.btn--primary{color:#fff;background:linear-gradient(135deg,#058ce9,#1751bc);border:1px solid #358bd8;box-shadow:0 5px 20px rgba(0,102,230,.16)}.btn--primary:hover{color:#fff;background:linear-gradient(135deg,#20a1f5,#1f66d6);box-shadow:0 7px 26px rgba(0,102,230,.25);transform:translateY(-2px)}.btn--ghost{color:#d9e5f8;border:1px solid #314568;background:rgba(13,29,61,.6)}.btn--ghost:hover{background:#162d58;color:#fff}
.hero-art{position:relative;height:390px;isolation:isolate}.art-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(95,151,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(95,151,255,.07) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(ellipse,#000 20%,transparent 70%)}.art-core{position:absolute;inset:28% 12%;display:grid;align-items:center;padding:30px;border:1px solid rgba(67,142,255,.45);border-radius:24px;background:linear-gradient(145deg,rgba(24,56,113,.95),rgba(8,23,57,.95));box-shadow:0 0 75px rgba(0,95,224,.17),inset 0 1px 0 rgba(255,255,255,.1);transform:rotate(-5deg)}.art-orbit{position:absolute;border:1px solid rgba(95,158,255,.22);border-radius:50%;inset:8% 5%}.orbit-two{inset:17% 14%;border-style:dashed;border-color:rgba(103,168,255,.13)}.art-node{position:absolute;width:10px;height:10px;border-radius:50%;background:#52b6ff;box-shadow:0 0 20px #2189e2}.node-one{top:9%;left:40%}.node-two{top:70%;left:7%}.node-three{top:65%;right:7%}.art-label{position:absolute;padding:9px 13px;font-size:10px;letter-spacing:.1em;font-weight:700;border:1px solid #2b4574;border-radius:7px;background:#0b1b40;color:#a5c8f3}.label-one{top:14%;right:0}.label-two{bottom:14%;left:0}.art-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.22em;color:#5377a8}
.section{padding:80px 0;border-top:1px solid rgba(113,152,217,.1)}.section--alt{background:#0a1531}.section__header{max-width:760px;margin-bottom:38px}.section__header h1{margin-bottom:22px}.section__header h2{margin-bottom:15px}.section__lead{font-size:17px;line-height:1.8;color:#aabdda;max-width:680px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.card{position:relative;padding:28px;border:1px solid #24385d;border-radius:16px;background:linear-gradient(145deg,#112247,#0d1937);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:border-color .2s,box-shadow .2s}.card:hover{border-color:#456b9c;box-shadow:0 12px 35px rgba(0,0,0,.12)}.card-number{display:inline-grid;place-items:center;width:40px;height:40px;background:#152f59;border:1px solid #254b7b;border-radius:10px;color:#86c7ff;font-size:12px;font-weight:700;margin-bottom:23px}.card__title{font-size:21px;margin-bottom:14px}.card__text{color:#b0c1dd;font-size:14px;line-height:1.75}.card__list{padding-left:20px;color:#b0c1dd;font-size:14px;line-height:1.75}.card__list li{padding:4px 0}.card__list li::marker{color:#64b7ff}.badge{font-size:10px;line-height:1.6;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#82baf5}.service-details{border-top:1px solid #293a5d;margin-top:20px}.service-details summary{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:50px;font-size:12px;font-weight:650;color:#87c9ff;list-style:none}.service-details summary::-webkit-details-marker{display:none}.details-open{display:none}.service-details[open] .details-closed{display:none}.service-details[open] .details-open{display:inline}.service-arrow{margin-left:auto;font-size:19px}.service-details[open] .service-arrow{transform:rotate(45deg)}.service-description{padding-top:15px}.card>.btn{margin-top:15px;font-size:12px;padding-inline:15px}.card>a[href^="mailto:"]{font-size:14px;font-weight:600;overflow-wrap:anywhere}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;padding:0;counter-reset:steps}.step{padding:25px 0 0;border-top:1px solid #345078;counter-increment:steps}.step::before{content:"0" counter(steps);display:block;font-size:12px;font-weight:700;color:#70bdff;letter-spacing:.1em;margin-bottom:25px}.step__title{font-size:19px;margin-bottom:12px}.step__text{color:#a2b7d7;font-size:14px}.faq__item{border-bottom:1px solid #273b60;padding:3px 0}.faq__summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}.faq__summary::-webkit-details-marker{display:none}.faq__summary::after{content:"+";font-size:22px;color:#79bbff}.faq__item[open] .faq__summary::after{content:"−"}.faq__question{font-size:16px;line-height:1.5;margin:0;letter-spacing:-.015em}.faq__answer{font-size:14px;color:#afc1dd;padding:0 35px 15px 0}.closing-cta{text-align:center;background:radial-gradient(ellipse at center,rgba(15,82,177,.2),transparent 70%)}.closing-cta .eyebrow{justify-content:center}.closing-cta h2{margin-bottom:28px}.container--narrow>p{color:#b1c2dd;font-size:16px;line-height:1.95}.container--narrow>h2{font-size:26px;margin-top:40px}
.site-footer{padding:60px 0 0;border-top:1px solid #1d3154;background:#040b20}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:60px}.footer-identity img{width:190px;display:block;margin-bottom:22px}.site-footer p{color:#8ca4c6;font-size:13px;line-height:1.85}.footer-label{font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:10px!important;color:#c5d6f0!important;margin-bottom:23px}.footer-links{display:grid;gap:12px}.footer-links a{font-size:13px;color:#a6bad8}.footer-links a:hover{color:#fff}.footer-email{display:inline-block;font-size:15px;color:#d5e7ff;margin-bottom:18px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:50px;padding:25px 0;border-top:1px solid #192b49;font-size:11px;color:#6d87ac}.footer-bottom a{color:#91aace}
@media(max-width:1100px){.header__inner{grid-template-columns:160px 1fr auto;gap:15px}.brand-animation{width:160px}.nav__list a{padding:10px 11px;font-size:12px}.hero__inner{gap:30px}.hero-art{height:330px}}
@media(max-width:959px){.header__inner{grid-template-columns:1fr auto auto;gap:12px;min-height:85px;padding-block:15px}.brand{grid-column:1;grid-row:1}.brand-animation{width:160px}.language-segment{grid-column:2;grid-row:1}.nav__toggle{grid-column:3;grid-row:1;display:flex;align-items:center;gap:9px;justify-content:center;min-height:48px;min-width:48px;padding:10px;border:1px solid #36517e;border-radius:12px;background:#0b1a3b;color:#dbe8fc;cursor:pointer}.nav__toggle-text{font-size:12px}.nav__toggle-bars,.nav__toggle-bars::before,.nav__toggle-bars::after{display:block;width:17px;height:2px;background:currentColor}.nav__toggle-bars{position:relative}.nav__toggle-bars::before,.nav__toggle-bars::after{position:absolute;content:"";left:0}.nav__toggle-bars::before{top:-5px}.nav__toggle-bars::after{top:5px}.nav{grid-column:1/-1;grid-row:2}.nav__list{border-radius:14px;display:grid;gap:4px;justify-content:stretch;padding:10px;margin-top:5px}.js .nav__list{display:none}.js .nav__list.is-open{display:grid}.nav__list a{font-size:15px;padding:13px 16px;border-radius:9px}.hero{padding:60px 0 65px}.hero__inner{grid-template-columns:1fr}.hero-art{display:none}.hero h1{max-width:660px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{gap:30px}.section{padding:60px 0}}
@media(max-width:540px){.header__inner{gap:8px;grid-template-columns:1fr auto auto;min-height:80px}.brand-animation{width:130px}.language-segment{gap:2px;padding:3px}.language-segment a{min-width:36px;min-height:40px;padding-inline:6px;font-size:11px}.nav__toggle-text{display:none}.nav__toggle{padding:10px;min-width:44px;min-height:46px}.hero h1{font-size:43px}.lead{font-size:16px}.hero__actions{display:grid;grid-template-columns:1fr;max-width:340px}.hero__actions .btn{width:100%}.cards{grid-template-columns:1fr}.card{padding:25px}.steps{gap:20px}.step__title{font-size:17px}.step__text{font-size:13px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:10px}.section__lead{font-size:15px}.faq__question{font-size:15px}h1{font-size:36px}.container--narrow>p{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.btn:hover{transform:none}}
.cards { align-items:stretch; }
.card { display:flex; flex-direction:column; align-items:flex-start; }
.card-number { flex-shrink:0; }
.service-details { width:100%; margin-top:auto; }
.card > a[href^="mailto:"] { margin-top:auto; }
.art-core-symbol { inset:12% 20%; padding:20px; border-radius:50%; transform:none; background:radial-gradient(circle,#153c7a,#091a3f); }
.art-core-symbol img { width:100%; height:100%; object-fit:contain; }

/* Seven service links surround the brand symbol. */
.hero-art { height:420px; }
.art-core-symbol { inset:auto; width:180px; height:180px; top:100px; left:50%; transform:translateX(-50%); padding:12px; }
.art-orbit { inset:4% 12% 17%; }
.orbit-two { inset:13% 20% 26%; }
.art-node { display:none; }
.orbit-service { position:absolute; z-index:2; display:flex; align-items:center; gap:7px; width:140px; min-height:50px; padding:10px 11px; border:1px solid #335a92; border-radius:12px; background:linear-gradient(135deg,#102b57,#0a193a); color:#d5e8ff; font-size:11px; font-weight:650; line-height:1.4; box-shadow:0 4px 16px rgba(0,0,0,.13); transition:border-color .18s,background .18s; }
.orbit-service:hover { background:#174580; border-color:#76bdff; color:white; }
.service-dot { width:5px; height:5px; border-radius:50%; flex-shrink:0; background:#4eaeff; box-shadow:0 0 8px #0f82df; }
.orbit-service-1 { left:0; top:28px; }
.orbit-service-2 { right:0; top:28px; }
.orbit-service-3 { left:0; top:139px; }
.orbit-service-4 { right:0; top:139px; }
.orbit-service-5 { left:0; top:250px; }
.orbit-service-6 { right:0; top:250px; }
.orbit-service-7 { left:50%; top:335px; transform:translateX(-50%); justify-content:center; }
.art-caption { bottom:0; }
article[id] { scroll-margin-top:130px; }
@media(max-width:1100px) { .orbit-service { width:113px; padding:9px; font-size:10px; } .art-core-symbol { width:145px; height:145px; top:117px; } }
@media(max-width:959px) { .hero-art { display:block; width:min(100%,500px); margin:30px auto 0; } .orbit-service { width:140px; font-size:11px; } .art-core-symbol { width:180px; height:180px; top:100px; } }
@media(max-width:540px) { .hero-art { height:380px; margin-top:20px; } .orbit-service { width:104px; font-size:10px; padding:9px 7px; min-height:50px; gap:5px; } .art-core-symbol { width:126px; height:126px; top:121px; padding:8px; } .orbit-service-1,.orbit-service-2 { top:20px; } .orbit-service-3,.orbit-service-4 { top:135px; } .orbit-service-5,.orbit-service-6 { top:249px; } .orbit-service-7 { top:312px; width:130px; } }
@media(max-width:360px) { .orbit-service { width:90px; font-size:9px; } .art-core-symbol { width:100px; height:100px; top:135px; } }
/* Circular neural service constellation. */
.hero-art { width:100%; max-width:480px; height:440px; margin-inline:auto; }
.art-grid { opacity:.45; }
.art-orbit { inset:9% 9% 15%; border-color:rgba(86,162,255,.17); }
.orbit-two { inset:26% 26% 32%; border-style:dashed; }
.art-core-symbol { width:110px; height:110px; top:45%; left:50%; transform:translate(-50%,-50%); padding:8px; border-color:#3779bd; box-shadow:0 0 40px rgba(0,113,241,.2); }
.orbit-service { --angle:0deg; left:50%; top:45%; right:auto; width:82px; height:82px; min-height:0; padding:9px; border-radius:50%; justify-content:center; text-align:center; gap:0; font-size:9px; line-height:1.35; background:radial-gradient(circle at 35% 25%,#193e74,#0c1d40 80%); border-color:#356498; box-shadow:0 0 20px rgba(15,106,219,.1),inset 0 1px 0 rgba(143,195,255,.1); transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-157px) rotate(calc(-1 * var(--angle))); }
.orbit-service .service-dot { display:none; }
.orbit-service-1 { --angle:0deg; }
.orbit-service-2 { --angle:51.43deg; }
.orbit-service-3 { --angle:102.86deg; }
.orbit-service-4 { --angle:154.29deg; }
.orbit-service-5 { --angle:205.71deg; }
.orbit-service-6 { --angle:257.14deg; }
.orbit-service-7 { --angle:308.57deg; }
.neural-lines { position:absolute; width:100%; height:100%; inset:0; overflow:visible; pointer-events:none; }
.neural-lines line { stroke:#3a87cc; stroke-width:1; opacity:.35; }
.neural-lines circle { fill:#6fc3ff; opacity:.8; }
.art-caption { bottom:0; }
@media(max-width:1100px) { .hero-art { height:400px; } .orbit-service { width:72px; height:72px; font-size:8px; transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-137px) rotate(calc(-1 * var(--angle))); } }
@media(max-width:959px) { .hero-art { display:block; width:100%; max-width:440px; height:420px; margin-top:30px; } .orbit-service { width:78px; height:78px; font-size:9px; transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-147px) rotate(calc(-1 * var(--angle))); } }
@media(max-width:540px) { .hero-art { max-width:340px; height:350px; margin-top:25px; } .art-core-symbol { width:88px; height:88px; } .orbit-service { width:66px; height:66px; font-size:8px; padding:6px; transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-122px) rotate(calc(-1 * var(--angle))); } }
@media(max-width:360px) { .hero-art { height:320px; } .orbit-service { width:58px; height:58px; font-size:7.5px; transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-106px) rotate(calc(-1 * var(--angle))); } .art-core-symbol { width:78px; height:78px; } }

.project-preview{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:14px;border:1px solid rgba(110,155,255,.2);margin-bottom:22px;background:#f6f2eb}

/* Uniform portfolio image frames, preserving the complete screenshots. */
.project-preview{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#0b1425}
.card > figure{width:100%;min-width:0}

.project-preview--fill{object-fit:cover;object-position:center top}

.footer-project-link{display:block;margin-top:14px;max-width:300px;color:#b0c7e9;line-height:1.8;padding:10px 0;transition:color .2s}.footer-project-link:hover{color:#8acaff}.footer-project-link:focus-visible,.filter-bar button:focus-visible,.project-image-button:focus-visible,.image-dialog button:focus-visible{outline:2px solid #55b8ff;outline-offset:4px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 12px}.filter-bar button{cursor:pointer;min-height:44px;padding:11px 18px;border:1px solid #35537f;border-radius:999px;background:#0e2042;color:#b7ccec;font:inherit;font-size:13px;transition:background .2s,border-color .2s}.filter-bar button[aria-pressed="true"]{background:linear-gradient(135deg,#098ee8,#1855bf);border-color:#4aa4f3;color:#fff}.filter-bar button:hover{border-color:#6dbfff}.filter-count{color:#8ca9cd;font-size:12px;min-height:20px;margin-bottom:22px}.card[hidden]{display:none!important}.project-image-button{position:relative;display:block;padding:0;border:0;border-radius:14px;background:#0b1425;width:100%;cursor:zoom-in;text-align:left;overflow:hidden;margin-bottom:22px}.project-image-button .project-preview{margin:0!important;transition:filter .2s}.project-image-button:hover .project-preview{filter:brightness(1.12)}.card figure .project-image-button{margin-bottom:8px}.image-enlarge{position:absolute;bottom:10px;right:10px;display:grid;place-items:center;background:rgba(6,17,40,.9);border:1px solid #4774a7;border-radius:8px;width:34px;height:34px;color:#fff;font-size:24px}.image-dialog{padding:20px;width:min(1100px,94vw);max-height:94dvh;border:1px solid #43648e;border-radius:18px;background:#0b1732;color:#e6f0ff;overflow:auto}.image-dialog::backdrop{background:rgba(2,6,18,.9)}.image-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.image-dialog-bar h2{font-size:18px;margin:0}.image-dialog button{font:inherit;font-size:13px;cursor:pointer;border:1px solid #3b5c8a;background:#12294d;color:#eaf2ff;padding:10px 13px;border-radius:9px;min-height:44px}.image-dialog-photo{display:block;width:100%;height:70dvh;object-fit:contain;background:#060e20;border-radius:10px}.image-dialog-nav{display:flex;justify-content:space-between;gap:10px;margin-top:15px}.stock-banner{margin:0 0 35px;border-radius:18px;overflow:hidden;border:1px solid #2f4a72}.stock-banner img{width:100%;height:220px;display:block;object-fit:cover}.stock-banner--about img{height:300px}html.dialog-open{overflow:hidden}@media(max-width:540px){.image-dialog{padding:14px}.image-dialog-bar h2{font-size:15px}.image-dialog-photo{height:65dvh}.image-dialog-nav button{font-size:12px;padding-inline:10px}.stock-banner img,.stock-banner--about img{height:200px}}@media(prefers-reduced-motion:reduce){.project-image-button .project-preview,.filter-bar button,.footer-project-link{transition:none}}

.footer-project-link{padding:16px 18px;border:1px solid #315a8e;border-radius:12px;background:linear-gradient(135deg,#10294e,#0b1c39);color:#d1e7ff;max-width:320px;transition:border-color .2s,background .2s}.footer-project-link:hover,.footer-project-link:active{border-color:#64b8ff;background:#143769;color:#fff}#pie{scroll-margin-top:100px}

.footer-grid--contact{grid-template-columns:2fr 1fr}@media(max-width:540px){.footer-grid--contact{grid-template-columns:1fr}}

.contact-form-layout{display:grid;grid-template-columns:1fr;gap:20px;align-items:start;margin-bottom:0;scroll-margin-top:120px}.contact-form-intro h2{font-size:clamp(26px,3vw,32px);margin-bottom:10px}.contact-form{display:grid;gap:20px;padding:30px;background:#0e1d3c;border:1px solid #304d7a;border-radius:18px}.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;color:#d7e8ff;font-size:13px;font-weight:650;margin-bottom:9px}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;min-height:48px;border:1px solid #3d5a84;border-radius:9px;background:#07152e;color:#eaf2ff;padding:13px 14px;font:inherit;font-size:14px}.contact-form textarea{resize:vertical;line-height:1.6}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid #59b9ff;outline-offset:3px}.contact-form ::placeholder{color:#98afcf}.contact-form-note{font-size:12px;line-height:1.7;color:#a6bcdd;margin:0}.contact-form-actions{display:flex;flex-wrap:wrap;gap:12px}.contact-form button{cursor:pointer}.contact-recipient{display:inline-block;color:#85caff;margin:12px 0}#contact-form-status{font-size:13px;line-height:1.6;color:#b4d9ff;margin:0}#contact-form-status:empty{display:none}.contact-form [hidden]{display:none!important}@media(max-width:959px){.contact-form-layout{grid-template-columns:1fr;gap:24px}}@media(max-width:540px){.contact-form{padding:22px}.contact-field-row{grid-template-columns:1fr}.contact-form-actions{display:grid;grid-template-columns:1fr}}

.contact-page main .container{max-width:840px}.contact-page .section__header{margin-bottom:28px}.contact-form-intro .section__lead{margin-bottom:0}

.project-demo-action{margin:20px 0}.project-demo-action .btn{display:inline-flex;align-items:center;gap:18px;min-height:46px}.demo-caption{color:var(--text-muted);font-size:12px;margin:9px 0 0}

/* GSAP service network: preserves native service navigation. */
.hero-art{transform-style:preserve-3d;will-change:transform}.orbit-service,.orbit-service:focus-visible{border-radius:50%!important;transition:box-shadow .25s,border-color .25s,background .25s}.orbit-service.is-active,.orbit-service:focus-visible{border-color:#80ddff;background:#173a64;box-shadow:0 0 25px #008cff50;outline:2px solid #80ddff;outline-offset:4px}.neural-particle{filter:drop-shadow(0 0 4px #49c7ff)}
@media(prefers-reduced-motion:reduce){.hero-art{will-change:auto}.orbit-service{transition:none}}

.hero > :not(.hero__video-bg) { position: relative; z-index: 1; }
.hero__video-bg { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; background: #07111f url('/assets/world-digital-poster.jpg') center / cover no-repeat; }
.hero__video-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,12,25,.84), rgba(4,12,25,.56)), linear-gradient(0deg, rgba(4,12,25,.54), rgba(4,12,25,.2)); }
.hero__video-bg video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .42; pointer-events: none; }
