
:root{
  --bg:#070c14;--bg2:#0a1019;--panel:#101925;--panel2:#121d2d;--line:#273445;
  --text:#f3f7fb;--muted:#91a5bf;--cyan:#25d2ee;--cyan-soft:#7beafa;--yellow:#f4b415;
  --green:#19d59f;--shadow:0 30px 90px rgba(0,0,0,.30);--radius:5px;
}
html[data-theme="light"]{
  --bg:#f6f8fb;--bg2:#eef2f7;--panel:#ffffff;--panel2:#eef3f8;--line:#d6dfe9;
  --text:#101927;--muted:#5d6f86;--cyan:#059db9;--cyan-soft:#006e82;--yellow:#b47a00;
  --green:#0d9e77;--shadow:0 24px 70px rgba(21,39,64,.13);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(500px 320px at var(--mx,70%) var(--my,15%),rgba(37,210,238,.07),transparent 70%);z-index:-1}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
.container{width:min(1220px,calc(100% - 64px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--line) 92%,transparent)}
.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.03em;font-size:18px}
.brand img{width:36px;height:36px}
.navlinks{display:flex;align-items:center;gap:28px;color:var(--muted);font-size:14px;font-weight:680}
.navlinks a{padding:27px 0;position:relative}
.navlinks a::after{content:"";position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--cyan);transform:scaleX(0);transform-origin:center;transition:.2s}
.navlinks a:hover,.navlinks a.active{color:var(--text)}
.navlinks a:hover::after,.navlinks a.active::after{transform:scaleX(1)}
.nav-actions{display:flex;align-items:center;gap:9px}
.btn,.icon-btn,.theme-toggle,.mobile-toggle{border:1px solid var(--line);background:transparent;color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 17px;border-radius:var(--radius);font-weight:780;font-size:14px;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}
.btn:hover,.icon-btn:hover,.theme-toggle:hover,.mobile-toggle:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--cyan) 50%,var(--line));box-shadow:0 12px 30px rgba(0,0,0,.12)}
.btn-primary{background:var(--cyan);color:#051018;border-color:var(--cyan);box-shadow:0 12px 34px rgba(37,210,238,.18)}
.btn-primary:hover{background:#4bdcef;color:#051018}
.call-btn{padding-inline:13px;color:var(--cyan-soft);border-color:color-mix(in srgb,var(--cyan) 30%,var(--line))}
.call-icon{font-size:16px}.theme-toggle{width:46px;padding:0;overflow:hidden;position:relative}.theme-sun,.theme-moon{display:none}.theme-sun{color:#b47a00}.theme-moon{color:#8aeaf9}
html[data-theme="light"] .theme-sun{display:inline}.theme-moon{display:inline}html[data-theme="light"] .theme-moon{display:none}
.mobile-toggle{display:none}
.hero{position:relative;min-height:720px;padding:108px 0 90px;overflow:hidden;background:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:72px 72px}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(480px 320px at 72% 40%,rgba(37,210,238,.11),transparent 70%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:66px;align-items:center;position:relative;z-index:1}
.eyebrow,.micro{font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:850}
.eyebrow{color:var(--cyan-soft);display:flex;align-items:center;gap:9px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 18px rgba(25,213,159,.6)}
.hero h1,.page-hero h1{font-size:clamp(58px,7.2vw,94px);line-height:.95;letter-spacing:-.065em;margin:24px 0 24px;font-weight:830}
.cyan{color:var(--cyan)}
.hero p{max-width:700px;color:var(--muted);font-size:20px;margin:0 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px}
.meta-row{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px;color:var(--muted);font-size:14px}.meta{display:flex;gap:9px;align-items:center}.meta b{color:var(--cyan)}
.hero-visual{position:relative;min-height:500px;display:grid;place-items:center;perspective:900px}
.halo{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(37,210,238,.07),transparent 62%);filter:blur(4px);animation:haloPulse 5s ease-in-out infinite}
@keyframes haloPulse{0%,100%{transform:scale(.96);opacity:.7}50%{transform:scale(1.04);opacity:1}}
.digital-card{position:relative;width:min(560px,100%);height:390px;background:linear-gradient(145deg,#172334,#0d1521);border:1px solid #36475b;box-shadow:var(--shadow);transform-style:preserve-3d;animation:cardFloat 6s ease-in-out infinite}
html[data-theme="light"] .digital-card{background:linear-gradient(145deg,#f3f7fb,#e8eef5);border-color:#cbd7e4}
@keyframes cardFloat{0%,100%{transform:rotateX(1deg) rotateY(-1deg) translateY(0)}50%{transform:rotateX(-2deg) rotateY(2deg) translateY(-10px)}}
.digital-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(37,210,238,.08),transparent 60%);animation:sheen 6s linear infinite}
@keyframes sheen{0%{transform:translateX(-80%)}60%,100%{transform:translateX(80%)}}
.card-head{position:absolute;left:20px;right:20px;top:18px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:850;color:#c6d1df}.live{color:#87f0dc;display:flex;gap:7px;align-items:center}.live::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 16px rgba(25,213,159,.8)}
.scene{position:absolute;inset:74px 30px 42px;transform-style:preserve-3d}
.orbit3d{position:absolute;left:50%;top:52%;width:310px;height:170px;border:1px solid rgba(37,210,238,.42);border-radius:50%;transform:translate(-50%,-50%) rotateX(66deg) rotateZ(12deg);transform-style:preserve-3d;animation:orbitSpinA 8s linear infinite}
.orbit3d::before{content:"";position:absolute;inset:-2px;border:1px solid rgba(37,210,238,.14);border-radius:50%;filter:blur(2px)}
.orbit3d.b{width:230px;height:340px;border-color:rgba(244,180,21,.36);transform:translate(-50%,-50%) rotateY(62deg) rotateZ(26deg);animation:orbitSpinB 10s linear infinite reverse}
.orbit3d.c{width:170px;height:170px;border-color:rgba(25,213,159,.24);transform:translate(-50%,-50%) rotateX(74deg);animation:orbitSpinC 6s linear infinite}
@keyframes orbitSpinA{from{transform:translate(-50%,-50%) rotateX(66deg) rotateZ(0deg)}to{transform:translate(-50%,-50%) rotateX(66deg) rotateZ(360deg)}}
@keyframes orbitSpinB{from{transform:translate(-50%,-50%) rotateY(62deg) rotateZ(360deg)}to{transform:translate(-50%,-50%) rotateY(62deg) rotateZ(0deg)}}
@keyframes orbitSpinC{from{transform:translate(-50%,-50%) rotateX(74deg) rotateY(0deg)}to{transform:translate(-50%,-50%) rotateX(74deg) rotateY(360deg)}}
.node{position:absolute;padding:8px 11px;border:1px solid #3c4f64;background:rgba(12,20,31,.9);color:#b8c7d9;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:lowercase;box-shadow:0 8px 30px rgba(0,0,0,.18);backdrop-filter:blur(8px);animation:nodeDrift 4s ease-in-out infinite}
html[data-theme="light"] .node{background:rgba(246,250,253,.9);color:#46617d;border-color:#bfd0df}
.node.one{left:1%;top:28%;animation-delay:-.8s}.node.two{right:2%;top:48%;animation-delay:-1.7s}.node.three{left:15%;bottom:12%;animation-delay:-2.5s}
@keyframes nodeDrift{0%,100%{transform:translateY(0) translateZ(18px)}50%{transform:translateY(-10px) translateZ(30px)}}
.core{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%) translateZ(42px);text-align:center}
.core .ideas{font-size:15px;color:#9eb1c7;font-weight:750}.core .arrow{margin:5px 0;color:var(--yellow);font-weight:900}.core .impact{color:var(--cyan);font-size:14px;font-weight:850;letter-spacing:.08em}
.card-foot{position:absolute;left:20px;right:20px;bottom:13px;padding-top:9px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;font-size:9px;letter-spacing:.17em;text-transform:uppercase;font-weight:850;color:#d4dce7}
.value-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2)}
.values{display:grid;grid-template-columns:repeat(4,1fr)}
.value{padding:28px;min-height:116px;display:flex;gap:13px;border-right:1px solid var(--line)}.value:last-child{border-right:0}.value-icon{width:20px;flex:0 0 20px;color:var(--cyan);font-size:20px;line-height:1}.value h3{margin:0 0 4px;font-size:15px}.value p{margin:0;color:var(--muted);font-size:13px}
.section{padding:114px 0}
.section-head{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:end;margin-bottom:43px}
.section-head .kicker,.page-kicker{color:var(--cyan);margin-bottom:13px}.section h2,.page-hero h1{font-size:clamp(46px,6vw,78px);line-height:1;letter-spacing:-.055em;margin:0;font-weight:820}.section-head p{margin:0;color:var(--muted);font-size:18px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service{min-height:340px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,var(--panel2),var(--panel));transition:transform .25s ease,background .25s ease}
.service:hover{transform:translateY(-5px);background:linear-gradient(145deg,color-mix(in srgb,var(--panel2) 84%,var(--cyan) 16%),var(--panel))}
.service-num{color:var(--cyan);font-size:10px;letter-spacing:.16em;font-weight:850}.service-icon{float:right;width:45px;height:45px;border:1px solid color-mix(in srgb,var(--cyan) 40%,var(--line));display:grid;place-items:center;color:var(--cyan);font-weight:900}.service h3{font-size:22px;margin:72px 0 12px}.service p{color:var(--muted);font-size:15px;max-width:370px}.checks{display:grid;gap:6px;margin-top:26px}.check{display:flex;gap:9px;color:var(--text);font-size:13px}.check::before{content:"✓";color:var(--green);font-weight:900}.service-link,.project-link{display:inline-flex;gap:9px;margin-top:20px;color:var(--cyan);font-weight:820;font-size:13px}
.process{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px}.step{padding:10px 28px 20px 0;border-right:1px solid var(--line)}.step:not(:first-child){padding-left:28px}.step:last-child{border-right:0}.step-num{color:var(--yellow);font-size:11px;letter-spacing:.15em;font-weight:850}.step h3{font-size:21px;margin:45px 0 8px}.step p{margin:0;color:var(--muted);font-size:14px;max-width:240px}
.portfolio-wrap{display:grid;grid-template-columns:1.7fr 1fr;gap:18px}.portfolio-small-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project{background:var(--panel);border:1px solid var(--line);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.project:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.project-media{aspect-ratio:16/9;background:#0b121c center/cover no-repeat;position:relative}.project-media.travel{background-image:linear-gradient(rgba(5,12,19,.22),rgba(5,12,19,.22)),url("../img/travel.jpg")}.project-media.retail{background-image:linear-gradient(rgba(5,12,19,.30),rgba(5,12,19,.30)),url("../img/retail.jpg")}.project-media.mobile{background-image:linear-gradient(rgba(5,12,19,.22),rgba(5,12,19,.22)),url("../img/mobile.jpg")}.project-media.service{background-image:linear-gradient(rgba(5,12,19,.22),rgba(5,12,19,.22)),url("../img/service.jpg")}.project-media.analytics{background-image:linear-gradient(rgba(5,12,19,.22),rgba(5,12,19,.22)),url("../img/analytics.jpg")}.sample-badge{position:absolute;left:14px;top:14px;background:#0a111b;border:1px solid #2b3b4e;padding:8px 10px;color:#86eafa;font-size:9px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.project-body{padding:20px 22px}.project-type{color:#7897b8;font-size:10px;text-transform:uppercase;letter-spacing:.19em}.project h3{font-size:21px;margin:13px 0 7px}.project p{color:var(--muted);font-size:14px;margin:0}
.page-hero{padding:120px 0 95px;background:radial-gradient(500px 280px at 75% 50%,rgba(37,210,238,.10),transparent 70%);border-bottom:1px solid var(--line)}
.page-hero p{max-width:760px;color:var(--muted);font-size:19px;margin:22px 0 0}
.about-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:start}.about-copy p{font-size:18px;color:var(--muted);max-width:760px}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}.mission{border-left:2px solid var(--yellow);padding-left:16px}.mission .micro{color:var(--yellow)}.mission p{font-size:14px!important;margin:9px 0 0!important}.profile-layout{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.profile-photo{border:1px solid #2a4b61;padding:10px;position:relative;background:linear-gradient(145deg,var(--panel2),var(--panel));overflow:hidden;box-shadow:var(--shadow)}.profile-photo::before{content:"";position:absolute;inset:10px;background:linear-gradient(120deg,transparent 25%,rgba(37,210,238,.11),transparent 55%);transform:translateX(-120%);animation:photoSheen 7s ease-in-out infinite;pointer-events:none;z-index:2}.profile-photo::after{content:"";position:absolute;right:-7px;bottom:-7px;width:120px;height:120px;border-right:2px solid var(--yellow);border-bottom:2px solid var(--yellow);pointer-events:none}.profile-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 14%;filter:saturate(.98) contrast(1.02);transition:transform .5s ease}.profile-photo:hover img{transform:scale(1.025)}@keyframes photoSheen{0%,70%,100%{transform:translateX(-120%)}82%{transform:translateX(120%)}}.profile-card{padding-top:10px}.profile-card h2{font-size:34px;margin:7px 0 2px}.role{color:var(--yellow);font-weight:800}.profile-card p{color:var(--muted)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);padding:7px 10px;font-size:11px;color:var(--muted)}
.contact-section{background:var(--bg2);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.contact-copy h2{max-width:560px}.contact-copy>p{font-size:18px;color:var(--muted);max-width:540px}.contact-list{display:grid;gap:14px;margin-top:34px}.contact-item{display:flex;gap:12px;color:var(--muted)}.contact-item a:hover{color:var(--text)}.contact-icon{color:var(--cyan);width:20px;flex:0 0 20px}.notice{border:1px solid color-mix(in srgb,var(--yellow) 38%,var(--line));background:color-mix(in srgb,var(--yellow) 5%,var(--panel));padding:14px 16px;color:var(--muted);font-size:12px;margin-top:34px}.contact-form{border:1px solid var(--line);background:var(--panel);padding:32px;box-shadow:var(--shadow)}.form-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.form-top strong{font-size:10px;letter-spacing:.22em;color:var(--cyan);text-transform:uppercase}.form-top span{font-size:11px;color:var(--muted);max-width:290px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:800}.field input,.field select,.field textarea{width:100%;background:var(--bg2);border:1px solid var(--line);color:var(--text);padding:13px 14px;outline:none;border-radius:2px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(37,210,238,.08)}.field textarea{min-height:150px;resize:vertical}.form-submit{width:100%;margin-top:18px}.form-status{font-size:13px;margin-top:12px}.ok{color:var(--green)}.err{color:#ff8581}
.cta{background:var(--cyan);color:#061019;padding:70px 0}.cta-row{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-size:clamp(44px,6vw,76px);line-height:1;letter-spacing:-.055em;margin:8px 0 0}.cta-kicker{color:#06313a}.cta-btn{background:#f6f8fb;border-color:#f6f8fb;color:#071018}.cta-btn:hover{background:#fff}
.footer{padding:56px 0 28px;border-top:1px solid var(--line);background:var(--bg)}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .95fr .95fr;gap:40px}.footer p,.footer a{color:var(--muted);font-size:14px}.footer p{max-width:350px}.footer h4{margin:0 0 13px;font-size:12px;letter-spacing:.18em;text-transform:uppercase}.footer a{display:block;margin:9px 0}.footer a:hover{color:var(--text)}.social-row{display:flex;gap:7px;margin-top:14px}.social-row .social{width:34px;height:34px;border:1px solid var(--line);display:grid;place-items:center;margin:0;color:var(--muted);font-size:11px}.footer-bottom{border-top:1px solid var(--line);margin-top:42px;padding-top:23px;display:flex;justify-content:space-between;gap:18px;color:#6c819d;font-size:13px}.footer-bottom>span:last-child{display:flex;gap:18px}.footer-bottom a{display:inline;margin:0;font-size:13px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.show{opacity:1;transform:none}
.tilt{transform-style:preserve-3d;will-change:transform}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
@media (max-width:1050px){
  .navlinks{gap:18px}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:490px}.section-head{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.values{grid-template-columns:repeat(2,1fr)}.value:nth-child(2){border-right:0}.value:nth-child(-n+2){border-bottom:1px solid var(--line)}.process-grid{grid-template-columns:repeat(2,1fr)}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px solid var(--line)}.about-layout{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.portfolio-wrap{grid-template-columns:1fr}
}
@media (max-width:760px){
  .container{width:min(1220px,calc(100% - 32px))}.nav{min-height:68px}.navlinks{display:none}.navlinks.open{display:flex;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 16px 14px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 16px 40px rgba(0,0,0,.18)}.navlinks.open a{padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent)}.navlinks a::after{display:none}.desktop-cta{display:none}.mobile-toggle{display:grid;place-items:center;width:44px;padding:0}.call-text{display:none}.call-btn{width:44px;padding:0}.theme-toggle{width:44px}.hero{min-height:auto;padding:80px 0 72px}.hero h1,.page-hero h1{font-size:clamp(52px,15vw,74px)}.hero p{font-size:17px}.hero-visual{min-height:420px;margin-top:10px}.digital-card{height:330px}.scene{inset:66px 18px 38px}.orbit3d{width:250px;height:140px}.orbit3d.b{width:185px;height:270px}.orbit3d.c{width:135px;height:135px}.node{font-size:8px}.values,.service-grid,.process-grid,.portfolio-small-grid,.mission-grid,.profile-layout,.footer-grid{grid-template-columns:1fr}.value{border-right:0!important}.value:not(:last-child){border-bottom:1px solid var(--line)}.service{min-height:auto}.step,.step:not(:first-child){padding:10px 0 22px;border-right:0}.step:not(:last-child){border-bottom:1px solid var(--line)}.section{padding:84px 0}.section h2{font-size:48px}.page-hero{padding:86px 0 70px}.page-hero p{font-size:17px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-form{padding:21px}.form-top{flex-direction:column}.cta{padding:52px 0}.cta-row{flex-direction:column;align-items:flex-start}.footer-bottom{flex-direction:column}.footer-bottom>span:last-child{flex-wrap:wrap}
}
