:root{color-scheme:dark;--bg:#08090b;--panel:#0d0f12;--line:#25272c;--text:#f2f2f3;--muted:#92949c;--accent:#ccd8e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #c2d6f2;outline-offset:6px}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;top:-70px;background:white;color:black;padding:10px;z-index:99}.skip:focus{top:0}header{height:94px;border-bottom:1px solid #202125;position:relative;z-index:10;background:#08090bea}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;gap:11px;font-size:19px;font-weight:650;letter-spacing:-.7px;line-height:1.15}.brand-light{font-weight:400}.brand small{display:block;font-size:8px;letter-spacing:2.3px;color:#8d9097;margin-top:8px;font-weight:400}.brand-icon{position:relative;font-family:Arial,sans-serif;font-size:44px;font-weight:800;line-height:1;letter-spacing:-5px;width:37px}.brand-icon span{font-size:25px;position:absolute;left:20px;top:-1px;color:#bec6cf}nav{display:flex;gap:31px;font-size:13px;color:#acadb5}nav a:hover,.text-link:hover{color:white}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid #373a40;border-radius:7px;padding:13px 21px;font-size:13px;font-weight:550;line-height:1.4;transition:background .2s,transform .2s;white-space:nowrap;background:linear-gradient(#1d1e22,#141519);box-shadow:0 1px 0 #ffffff10 inset}.button:hover{background:#292c32;transform:translateY(-2px)}.button.primary{background:linear-gradient(#fff,#dfe1e5);color:#141518;border-color:#fff;box-shadow:0 0 24px #ffffff08}.button.primary:hover{background:white}.button span{font-size:18px;line-height:1}.button.small{padding:10px 16px;font-size:12px}.menu{display:none}.hero{min-height:660px;display:grid;grid-template-columns:1.16fr 1fr;align-items:center;position:relative;padding-top:40px;padding-bottom:38px;gap:0}.hero-copy{position:relative;z-index:2}.pill{display:inline-flex;align-items:center;gap:10px;border:1px solid #34373d;border-radius:30px;background:linear-gradient(110deg,#1b1d22,#0c0d10);font-size:10px;letter-spacing:.3px;padding:7px 12px;margin-bottom:28px;color:#c3c6cd}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b6c9df;box-shadow:0 0 7px #b6c9df66;flex-shrink:0}.pill-arrow{padding-left:12px;border-left:1px solid #414349;color:#dce0e5}h1,h2,h3,p{margin:0}h1{font-size:clamp(45px,5.45vw,75px);line-height:1.1;font-weight:450;letter-spacing:-4.5px}.serif,em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400}.serif{color:#c4cad5}.hero-desc{max-width:470px;font-size:15px;line-height:1.85;color:#a5a7af;margin-top:25px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:31px}.text-link{font-size:12px;color:#c2c5cc;display:inline-flex;align-items:center;gap:10px;transition:color .2s}.hero-note{margin-top:63px;font-family:monospace;font-size:8px;letter-spacing:1.4px;color:#737780}.hero-note>div{display:flex;align-items:center;gap:13px;margin-top:12px;color:#a4a7ae;letter-spacing:.1px;font-family:Arial;font-size:10px}.hero-note i{height:1px;width:18px;background:#3a3d45}.hero-art{height:540px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 52% 54%,#444d602d,transparent 62%);overflow:hidden}.orbital{position:absolute;width:460px;height:460px;border:1px solid #6b76821b;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-two{width:360px;height:360px;border-style:dashed;border-color:#6b768220}.art-floor{position:absolute;inset:60% -20% -25%;background:repeating-linear-gradient(90deg,transparent 0 52px,#aabdd00c 53px 54px),repeating-linear-gradient(0deg,transparent 0 52px,#aabdd00b 53px 54px);transform:perspective(400px) rotateX(57deg);mask-image:linear-gradient(transparent,#000,transparent)}.monolith{position:absolute;left:50%;top:47%;width:275px;height:310px;transform:translate(-50%,-50%) rotate(-13deg);filter:drop-shadow(20px 38px 20px #000);animation:float 8s ease-in-out infinite}.metal-d{position:relative;font-family:Arial,Helvetica,sans-serif;line-height:.9;font-size:360px;font-weight:800;letter-spacing:-30px;color:transparent;background:linear-gradient(120deg,#fcfdff 5%,#818c9b 19%,#222934 29%,#d6e0ec 39%,#a9b3be 43%,#303948 55%,#e9f1ff 65%,#657183 80%,#151920 94%);background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:1px #b7c4d34a;text-shadow:5px 4px 0 #6a76851a;filter:drop-shadow(5px 7px 0 #252b34) drop-shadow(1px 2px 1px #8b97a6)}.metal-d span{font-size:134px;position:absolute;left:161px;top:10px;letter-spacing:-10px;background:linear-gradient(145deg,#e2e9f2,#687589 45%,#e1e8f3 48%,#343c4c);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(4px 5px 0 #343d49)}.art-cross{position:absolute;font-family:monospace;font-size:19px;color:#6b7380}.c1{top:70px;left:45px}.c2{bottom:80px;right:36px}.art-label{position:absolute;right:20px;top:62px;font:8px/1.7 monospace;letter-spacing:1.6px;color:#8c929b}.art-coord{position:absolute;bottom:27px;left:56px;font:8px monospace;color:#646d7b;letter-spacing:1.5px}.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;padding-block:33px;gap:35px}.trust>p{font-size:12px;color:#8c8f97;line-height:1.8}.trust>p strong{color:#d5d6da;font-weight:400}.trust>div{padding-left:30px;border-left:1px solid var(--line)}.trust>div strong{font-size:26px;font-weight:450;letter-spacing:-1px}.trust>div strong span{font-size:13px;letter-spacing:-.2px;color:#c1c4cd}.trust small{display:block;font-size:10px;color:#838792;margin-top:3px}.eyebrow{display:block;font:9px/1.7 monospace;letter-spacing:1.8px;color:#a1a8b4;margin-bottom:22px}h2{font-size:40px;line-height:1.23;font-weight:400;letter-spacing:-1.8px}h2 span{color:#858992}.intro{padding-top:120px;padding-bottom:120px;position:relative}.intro h2{font-size:43px;line-height:1.3}.intro p{max-width:420px;position:absolute;right:0;bottom:127px;font-size:13px;line-height:1.95;color:var(--muted)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:45px}.section-head>p{font-size:12px;color:var(--muted);line-height:1.8;padding-bottom:5px}.services{padding-bottom:120px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:34px 37px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 0 0,#1f263317,transparent 70%);transition:background .25s}.service-card:hover{background:#101318}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.service-icon{font-size:26px;line-height:1;color:#cdd5e2}.num{font:10px monospace;color:#69707a}.service-card h3{font-size:23px;letter-spacing:-.6px;font-weight:400;margin-bottom:12px}.service-card p{font-size:13px;color:var(--muted);max-width:430px;line-height:1.9}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.tags span{border:1px solid #262a31;background:#14171c55;color:#9299a5;font-size:9px;padding:4px 8px;border-radius:3px}.card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #24272d;margin-top:30px;padding-top:17px;font-size:10px;color:#adb2bd}.card-foot b{font-size:19px;font-weight:400}.work{border-block:1px solid var(--line);padding:90px 0 0;background:radial-gradient(ellipse at 22% 50%,#18202e29,transparent 50%)}.case-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:66px;align-items:center}.case-visual{position:relative;background:radial-gradient(ellipse,#4854653d,transparent 65%);padding:38px 22px 43px;border:1px solid #272c34;border-radius:4px;overflow:hidden}.mock-window{border:1px solid #3c424e;border-radius:8px;background:#0e1117;box-shadow:0 18px 48px #0008;transform:perspective(900px) rotateY(5deg) rotateX(2deg)}.mock-bar{display:flex;align-items:center;gap:12px;border-bottom:1px solid #242a35;padding:12px 15px;font-size:9px;color:#aeb5c1}.mock-logo{font-size:19px;font-weight:bold;color:#eef0f4}.mock-dots{margin-left:auto;letter-spacing:2px}.mock-body{display:flex}.mock-body aside{width:43px;flex-shrink:0;padding-top:22px;text-align:center;line-height:3.1;font-size:14px;color:#7a8595;border-right:1px solid #242a35}.mock-content{padding:23px 20px;width:100%;min-width:0}.mock-title{display:flex;justify-content:space-between;font-size:12px}.mock-title span{font-size:7px;color:#8d96a5;border:1px solid #303746;padding:4px 6px}.mock-stats{display:flex;gap:10px;margin-top:20px}.mock-stats>div{width:50%;padding:13px 12px;border:1px solid #2b3140;border-radius:4px;font-size:8px;color:#adb5c4;background:#131924}.mock-stats b{display:block;font-size:28px;font-weight:400;line-height:1.5;color:#eef2f7}.mock-stats b span{font-size:14px}.mock-stats small{font-size:7px;color:#77869a}.chart-title{display:flex;justify-content:space-between;font-size:8px;margin-top:20px;color:#c2c9d3}.chart-title span{font-size:7px;color:#8395b1}.bars{height:100px;display:flex;align-items:end;gap:12px;border-bottom:1px solid #2c3441;background:repeating-linear-gradient(0deg,transparent 0 31px,#30384766 32px 33px);margin-top:15px;padding:0 6px}.bars i{height:var(--h);flex:1;background:linear-gradient(#bdcadd,#576780);border-top:1px solid #e0e9f7;border-radius:2px 2px 0 0}.chart-axis{display:flex;justify-content:space-between;font-size:7px;color:#7d8a9d;margin-top:7px}.mock-row{border-top:1px solid #2b3340;margin-top:17px;padding-top:12px;display:flex;gap:7px;align-items:center;font-size:7px;color:#9aa7ba}.mock-row b{margin-left:auto}.demo-label{display:block;text-align:center;font:7px monospace;color:#7f8998;letter-spacing:1px;margin-top:21px}.case-tag{font:9px monospace;color:#8d98aa;letter-spacing:1.2px}.case-copy h3{font-weight:400;font-size:30px;line-height:1.3;letter-spacing:-1px;margin:19px 0}.case-copy p{font-size:12px;line-height:1.95;color:var(--muted)}dl{margin:25px 0}dl>div{display:grid;grid-template-columns:90px 1fr;padding:14px 0;border-top:1px solid #252a32;font-size:11px}dt{color:#c8cdd5}dd{margin:0;color:#8f96a3;line-height:1.8}.experience-line{margin-top:65px;padding:27px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.experience-line>span{font-size:10px;color:#838c9a}.experience-line p{font-size:11px;color:#b4bbc6}.experience-line b{font-size:9px;font-weight:400;color:#656e7c;padding:0 14px}.process{padding-block:115px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:8px}.steps article>span{display:flex;align-items:center;gap:22px;color:#a8b3c3;font:11px monospace}.steps i{height:1px;background:#303640;flex:1}.steps h3{font-size:17px;font-weight:400;margin-top:24px;letter-spacing:-.4px}.steps p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:12px}.pricing{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;border-block:1px solid var(--line);padding-block:65px;align-items:center}.pricing h2{font-size:34px}.pricing>div>p{font-size:12px;color:var(--muted);max-width:410px;line-height:1.9;margin-top:23px}.price-panel{border:1px solid #353a43;border-radius:5px;padding:29px;background:linear-gradient(130deg,#191d24,#0c0e12)}.price-panel>span{font:8px monospace;letter-spacing:1px;color:#acb5c4}.price-panel>p{font-size:11px;color:#9aa5b5;margin-top:8px}.price-panel strong{font-size:34px;color:#eef0f5;font-weight:400;letter-spacing:-1px;margin-left:9px}.price-panel strong span{font-size:16px}.price-panel hr{border:0;border-top:1px solid #333944;margin:24px 0}.price-panel h3{font-size:22px;font-weight:400;letter-spacing:-.5px;margin:7px 0}.price-panel .price-note{font-size:11px;line-height:1.8;color:#949eae;margin:12px 0 20px}.faq{padding-block:110px;display:grid;grid-template-columns:1fr 1.3fr;gap:90px}.faq h2{font-size:33px}.faq>div>p{font-size:12px;line-height:2;color:var(--muted);margin-top:22px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:12px;padding:20px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;color:#d8dbe1}summary::-webkit-details-marker{display:none}summary span{font-size:19px;font-weight:300;color:#a2a9b5;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;line-height:1.9;color:#9ba3b0;padding:0 25px 23px 0}.contact{text-align:center;border:1px solid #313640;border-radius:7px;position:relative;isolation:isolate;overflow:hidden;padding:70px 20px 57px;margin-bottom:80px;background:#0b0d11}.contact-glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 120%,#63728b4d,transparent 65%),repeating-linear-gradient(90deg,transparent 0 79px,#7e8c9e07 80px 81px)}.contact h2{font-size:50px;line-height:1.14;letter-spacing:-2px}.contact em{color:#bdc8d9}.contact p{color:#a3a9b5;font-size:13px;line-height:1.9;margin:22px 0 28px}.contact small{display:block;font-size:9px;color:#818b9b;margin-top:18px}.contact .eyebrow{font-size:8px}footer{padding-bottom:30px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-top .brand{font-size:18px}.footer-dot{font-size:10px;align-self:flex-start;margin-left:-5px}.footer-top p{font-size:11px;color:#858e9c}.footer-top>a:last-child{font-size:11px;color:#bdc5d0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#697585;padding-top:22px}.service-hero{padding-block:90px 70px;border-bottom:1px solid var(--line)}.service-hero .eyebrow{margin-top:50px}.service-hero h1{max-width:850px;font-size:60px;letter-spacing:-2.5px}.service-hero p{font-size:17px;line-height:1.8;color:#9ca5b3;max-width:640px;margin:27px 0}.service-detail{display:grid;grid-template-columns:1.3fr .8fr;gap:100px;padding-block:80px;align-items:start}.service-detail h2{font-size:34px}.service-detail p,.service-detail li,.service-expect p{font-size:14px;line-height:1.95;color:#a0a7b4;margin-top:20px}.service-detail h3{font-weight:400;font-size:23px;margin-top:38px}.service-aside{background:#11151b;border:1px solid #313946;padding:30px;position:sticky;top:30px}.service-aside h3{margin-top:0}.service-aside ol{padding-left:18px;margin-bottom:28px}.service-aside .button{width:100%;font-size:12px}.service-expect{padding-bottom:90px}.service-expect p{max-width:780px;margin-bottom:20px}@keyframes float{0%,100%{transform:translate(-50%,-50%) rotate(-13deg)}50%{transform:translate(-50%,-53%) rotate(-10deg)}}@media(min-width:1500px){.hero{min-height:720px}.hero h1{font-size:78px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}nav{gap:19px}.hero h1{font-size:60px;letter-spacing:-3.5px}.hero-art{height:490px}.hero-actions{gap:17px}.hero-actions .button{padding:13px}.intro p{max-width:340px}.intro h2{font-size:36px}.case-grid{gap:35px}.pricing,.faq{gap:50px}.experience-line b{padding:0 7px}.service-detail{gap:50px}}@media(max-width:800px){header{height:80px}.wrap{width:calc(100% - 40px)}.nav{gap:15px}.nav-cta{margin-left:auto}.brand{font-size:16px}.brand small{font-size:6px;letter-spacing:1.8px}.brand-icon{font-size:35px;width:31px}.brand-icon span{font-size:20px;left:16px}.menu{display:block;color:#ccc;border:1px solid #343a43;background:#15181d;border-radius:5px;width:35px;height:35px;cursor:pointer;font-size:17px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:#101217;border-bottom:1px solid #343a43;padding:24px;flex-direction:column}nav.open{display:flex}.hero{grid-template-columns:1.2fr 1fr;min-height:590px;gap:0}.hero h1{font-size:49px;letter-spacing:-2.8px}.hero-desc{font-size:13px;line-height:1.9}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.hero-note{margin-top:36px;font-size:7px}.hero-art{height:450px;margin-left:-15px;margin-right:-20px}.monolith{transform:translate(-50%,-50%) rotate(-13deg) scale(.8);animation:none}.orbital{width:350px;height:350px}.orbit-two{width:270px;height:270px}.art-label{right:7px;font-size:6px}.art-coord{font-size:6px;left:20px}.c1{left:15px}.trust{gap:15px}.trust>div{padding-left:16px}.trust>div strong{font-size:22px}.trust>div strong span{font-size:10px}.trust small{font-size:8px}.intro{padding-block:80px}.intro h2{font-size:35px}.intro p{position:static;max-width:540px;margin-top:27px}.section-head h2{font-size:34px}.section-head>p{max-width:180px;font-size:11px}.service-card{padding:27px 24px 20px}.tags span{font-size:8px}.services{padding-bottom:80px}.case-grid{grid-template-columns:1fr;gap:35px}.case-visual{max-width:550px;width:100%;margin:auto}.case-copy{max-width:560px}.work{padding-top:70px}.experience-line{flex-direction:column;align-items:flex-start;gap:16px;margin-top:40px}.steps{grid-template-columns:1fr 1fr;gap:35px}.process{padding-block:80px}.pricing{gap:35px}.pricing h2{font-size:28px}.price-panel{padding:23px}.faq{gap:35px}.faq h2{font-size:28px}.contact{margin-bottom:60px}.footer-top p{display:none}.footer-bottom{flex-wrap:wrap}.service-hero h1{font-size:48px}.service-detail{grid-template-columns:1fr;gap:35px}.service-aside{position:static}}@media(max-width:550px){.nav-cta{font-size:10px!important;gap:8px;padding:9px 10px!important}.brand{gap:7px;font-size:14px}.brand small{font-size:5px;letter-spacing:1.4px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:42px;padding-bottom:10px;min-height:0}.hero h1{font-size:51px;line-height:1.09;letter-spacing:-3px}.pill{font-size:8px;padding:6px 10px;margin-bottom:24px}.hero-desc{font-size:13px;max-width:350px;margin-top:22px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-top:25px}.hero-actions .button{font-size:11px;gap:13px}.hero-actions .text-link{font-size:10px;gap:6px}.hero-note{margin-top:30px}.hero-art{height:330px;width:100%;margin:-4px 0 0}.monolith{width:235px;height:265px;top:47%;left:51%;transform:translate(-50%,-50%) rotate(-13deg) scale(.76)}.orbital{width:315px;height:315px}.orbit-two{width:240px;height:240px}.metal-d{font-size:320px}.metal-d span{font-size:119px;left:145px}.c1{top:38px;left:15px}.c2{bottom:32px;right:12px}.art-label{top:32px;right:8px}.art-coord{bottom:10px;left:16px}.trust{grid-template-columns:1fr 1fr;gap:25px;padding-block:25px}.trust>p{font-size:11px}.trust>div strong{font-size:24px}.trust>div strong span{font-size:11px}.trust small{font-size:9px}.trust>div:nth-child(3){padding-left:0;border:0}.intro{padding-block:68px}.eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:18px}.intro h2{font-size:31px;letter-spacing:-1.2px}.intro p{font-size:12px;margin-top:24px}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:32px;letter-spacing:-1.2px}.section-head>p{margin-top:18px;max-width:none;font-size:12px}.section-head>p br{display:none}.service-grid{grid-template-columns:1fr}.service-card{padding:28px 25px 20px}.service-card h3{font-size:24px}.service-card p{font-size:12px}.tags span{font-size:9px}.card-top{margin-bottom:22px}.work{padding-top:58px}.case-visual{padding:22px 12px 20px}.mock-content{padding:18px 12px}.mock-body aside{width:32px}.mock-title{font-size:10px}.mock-stats>div{padding:10px}.mock-stats b{font-size:25px}.bars{gap:9px;height:90px}.mock-stats small{font-size:6px}.case-copy h3{font-size:28px}.experience-line p{font-size:10px;line-height:2}.experience-line b{padding:0 5px}.steps{gap:32px 25px}.steps h3{font-size:16px}.steps p{font-size:11px}.process{padding-block:65px}.pricing{grid-template-columns:1fr;padding-block:45px;gap:28px}.pricing h2{font-size:30px}.price-panel{padding:25px}.faq{grid-template-columns:1fr;padding-block:65px;gap:30px}.faq h2{font-size:32px}.faq>div>p{margin-top:16px}summary{font-size:12px;padding:19px 0}.contact{padding:50px 20px 42px}.contact h2{font-size:38px}.contact p{font-size:12px}.contact small{font-size:8px}.footer-top{gap:20px}.footer-top .brand{font-size:16px}.footer-top>a:last-child{font-size:10px}.footer-bottom{gap:12px;font-size:8px}.footer-bottom span:nth-child(2){order:3;width:100%}.footer-bottom a{margin-left:auto}.service-hero{padding-top:45px}.service-hero h1{font-size:39px;letter-spacing:-1.8px}.service-hero p{font-size:15px}.service-detail{padding-block:50px}.service-detail h2,.service-expect h2{font-size:29px}.service-detail p,.service-detail li,.service-expect p{font-size:13px}.service-expect{padding-bottom:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Portfolio galleries — editorial artwork, restrained controls, no autoplay. */
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.project-card{min-width:0;border:1px solid #303641;border-radius:12px;overflow:hidden;background:linear-gradient(145deg,#14191f,#0b0e12);box-shadow:0 12px 35px #0003;transition:border-color .25s,box-shadow .25s}.project-card:hover{border-color:#596373;box-shadow:0 15px 42px #0006}.project-gallery{position:relative;aspect-ratio:1.34;overflow:hidden;background:#141b25;isolation:isolate}.project-slides{position:absolute;inset:0}.project-slide{display:block;position:absolute;width:100%;height:100%;object-fit:cover;inset:0;opacity:0;transition:opacity .45s ease,transform .8s ease;transform:scale(1.025)}.project-slide.active{opacity:1;transform:scale(1)}.project-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#060a1040 0%,#070a1005 25%,#07090d70 45%,#07090df0 76%,#07090d 100%)}.placeholder-badge{position:absolute;left:22px;top:20px;font:7px monospace;letter-spacing:1.3px;color:#c3cfdf;background:#101723d9;border:1px solid #8c9fb33d;padding:6px 9px;border-radius:4px;backdrop-filter:blur(10px)}.project-number{position:absolute;right:24px;top:22px;font:10px monospace;color:#aebed3}.project-caption{position:absolute;bottom:72px;left:29px;right:29px}.project-caption>span{font:8px monospace;letter-spacing:1.7px;color:#a4b8d0}.project-caption h3{font-size:28px;font-weight:400;line-height:1.2;letter-spacing:-.9px;margin:10px 0 12px}.project-caption p{font-size:12px;line-height:1.8;color:#aab5c4;max-width:360px}.gallery-controls{position:absolute;bottom:19px;left:27px;right:27px;display:flex;align-items:center;gap:11px}.gallery-controls>button{width:30px;height:29px;display:grid;place-items:center;background:#141b25ad;border:1px solid #3b4655;border-radius:5px;color:#c8d2e0;cursor:pointer;transition:background .2s,border-color .2s}.gallery-controls>button:hover{background:#303c4b;border-color:#9aacbf}.gallery-dots{display:flex;align-items:center;gap:6px;margin-left:4px}.gallery-dot{position:relative;border:0;width:23px;height:28px;padding:0;background:transparent;cursor:pointer}.gallery-dot:after{content:'';position:absolute;left:0;right:0;top:13px;height:2px;background:#445166;border-radius:2px;transition:background .2s}.gallery-dot.active:after{background:#c5d4e6}.gallery-counter{margin-left:auto;font:9px monospace;letter-spacing:1px;color:#899aae}.project-meta{padding:19px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #252d39}.project-chips{display:flex;gap:6px;flex-wrap:wrap}.project-chips span{font-size:8px;color:#91a1b6;border:1px solid #2a3544;padding:3px 6px;border-radius:3px}.project-meta>a{display:flex;align-items:center;gap:13px;font-size:10px;white-space:nowrap;color:#b7c6da}.project-meta>a:hover{color:white}.project-meta>a span{font-size:17px}.portfolio-note{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:22px;font-size:10px;color:#7f8da1}.portfolio-note .live-dot{width:4px;height:4px;box-shadow:none;background:#778da9}.nav-cta{letter-spacing:.1px}.contact{background:linear-gradient(135deg,#11151c,#090c11 65%);border-color:#3b4350}.contact-glow{background:radial-gradient(ellipse at 50% 140%,#8293ad45,transparent 65%),repeating-linear-gradient(90deg,transparent 0 79px,#7e8c9e06 80px 81px)}
@media(min-width:1300px){.project-gallery{aspect-ratio:1.38}}
@media(max-width:1000px){.portfolio-grid{gap:22px}.project-gallery{aspect-ratio:1.08}.project-caption{left:22px;right:22px;bottom:70px}.project-caption h3{font-size:25px}.project-meta{padding:17px 18px;flex-wrap:wrap;gap:12px}.project-chips span{font-size:8px}.project-caption p{font-size:11px}.gallery-controls{left:22px;right:22px}.placeholder-badge{left:18px}}
@media(max-width:650px){.portfolio-grid{grid-template-columns:1fr;gap:25px}.project-gallery{aspect-ratio:1.22}.project-caption{left:24px;right:24px}.project-caption h3{font-size:27px}.project-caption p{font-size:12px}.project-meta{padding:17px 20px;flex-wrap:nowrap}.project-meta>a{font-size:9px;gap:8px}.project-chips{gap:5px}.project-chips span{font-size:7px}.portfolio-note{font-size:9px;align-items:flex-start;line-height:1.8}.portfolio-note .live-dot{margin-top:6px;flex-shrink:0}.placeholder-badge{font-size:6px;letter-spacing:1px}.gallery-controls>button{height:31px;width:33px}.gallery-dot{height:31px}.gallery-dot:after{top:15px}}
@media(max-width:360px){.project-gallery{aspect-ratio:1.03}.project-caption h3{font-size:24px}.project-meta{flex-wrap:wrap}.project-caption{left:20px;right:20px}}
/* Brand lockup uses the page font as live text for consistent typography. */
.brand{font-family:inherit;font-weight:450;letter-spacing:-.65px;gap:10px}.brand-mascot{display:block;flex:0 0 auto;object-fit:contain;width:56px;height:56px}.brand-wordmark{font-family:inherit;font-weight:450;font-size:19px;line-height:1.2;white-space:nowrap}.brand-wordmark small{font-family:inherit;font-size:7px;font-weight:400;letter-spacing:2.1px;line-height:1.2;margin-top:6px;color:#9ba7b8}.hero-mascot{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:410px;height:410px;filter:drop-shadow(0 25px 30px #0008)}.hero-mascot img{display:block;width:100%;height:100%;object-fit:contain}.footer-brand .brand-mascot{width:52px;height:52px}.footer-brand .brand-wordmark{font-size:18px}
@media(max-width:1000px){.nav{gap:20px}.brand-mascot{width:48px;height:48px}.brand-wordmark{font-size:17px}.brand-wordmark small{font-size:6px;letter-spacing:1.7px}.hero-mascot{width:350px;height:350px}}
@media(max-width:800px){.brand-mascot{width:46px;height:46px}.brand-wordmark{font-size:16px}.brand-wordmark small{font-size:6px;letter-spacing:1.5px}.hero-mascot{width:310px;height:310px}}
@media(max-width:550px){.brand{gap:7px}.brand-mascot{width:40px;height:40px}.brand-wordmark{font-size:14px;letter-spacing:-.5px}.brand-wordmark small{font-size:5px;letter-spacing:1.1px;margin-top:5px}.hero-mascot{width:300px;height:300px;top:49%}.footer-brand .brand-mascot{width:43px;height:43px}.footer-brand .brand-wordmark{font-size:15px}.footer-brand .brand-wordmark small{font-size:5px;letter-spacing:1.2px}}
@media(max-width:360px){.nav{gap:9px}.brand{gap:5px}.brand-mascot{width:33px;height:33px}.brand-wordmark{font-size:12px}.brand-wordmark small{font-size:4.5px;letter-spacing:.9px}.nav-cta{font-size:9px!important;padding:8px!important}.nav-cta span{font-size:14px}.hero-mascot{width:270px;height:270px}}
/* Connected silver modules: a slow CSS 3D sculpture for the hero. */
.system-sculpture{position:absolute;inset:0;pointer-events:none}.sculpture-halo{position:absolute;inset:15% 5%;background:radial-gradient(ellipse,#8eaac92b,transparent 66%);filter:blur(14px)}.sculpture-perspective{position:absolute;width:410px;height:410px;left:50%;top:49%;transform:translate(-50%,-50%);perspective:1100px}.sculpture-assembly{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(-23deg) rotateY(-30deg) rotateZ(-8deg);animation:system-drift 22s ease-in-out infinite}.system-block{position:absolute;width:var(--s);height:var(--s);transform-style:preserve-3d;transform:translateZ(var(--z))}.block-face{position:absolute;inset:0;border:1px solid #c3d7ef66;backface-visibility:hidden;background:linear-gradient(140deg,#d3dce8,#7b8ca2 48%,#37475e);box-shadow:inset 0 0 22px #e1efff17}.face-front{transform:translateZ(calc(var(--s)/2));background:linear-gradient(145deg,#9cabc0,#45566e 70%,#25364b)}.face-front:after{content:'';position:absolute;inset:13%;border:1px solid #d7e6f543;border-radius:3px;background:linear-gradient(135deg,#c9daef12,#15223322)}.face-back{transform:rotateY(180deg) translateZ(calc(var(--s)/2))}.face-left{transform:rotateY(-90deg) translateZ(calc(var(--s)/2));background:linear-gradient(140deg,#73859e,#28394d)}.face-right{transform:rotateY(90deg) translateZ(calc(var(--s)/2));background:linear-gradient(150deg,#cbd5e4,#71849e 50%,#4b607c)}.face-top{transform:rotateX(90deg) translateZ(calc(var(--s)/2));background:linear-gradient(140deg,#e9edf4,#a2b3c8 48%,#657d99)}.face-bottom{transform:rotateX(-90deg) translateZ(calc(var(--s)/2));background:#24364e}.block-1{--s:112px;--z:45px;left:150px;top:148px}.block-1 .face-front{background:linear-gradient(145deg,#c9d6e8,#7c97b8 50%,#415d80);box-shadow:inset 0 0 30px #e2efff22,0 0 28px #a8cbff17}.block-1 .face-front:after{inset:29%;border-color:#e8f2ff99;background:linear-gradient(135deg,#e4efff,#9ab7da);box-shadow:0 0 20px #b8d5ff66}.block-2{--s:68px;--z:5px;left:32px;top:61px}.block-3{--s:72px;--z:-12px;left:300px;top:75px}.block-4{--s:73px;--z:10px;left:43px;top:301px}.block-5{--s:65px;--z:55px;left:305px;top:304px}.system-link{position:absolute;height:12px;background:linear-gradient(#d5e3f4bb,#748ba844 35%,#344a6999);border-block:1px solid #bdd5f766;box-shadow:0 0 15px #abc9ef15;transform-origin:0 50%;transform:translateZ(8px)}.link-one{left:82px;top:106px;width:165px;transform:translateZ(8px) rotate(39deg)}.link-two{left:237px;top:182px;width:133px;transform:translateZ(8px) rotate(-43deg)}.link-three{left:80px;top:327px;width:154px;transform:translateZ(8px) rotate(-46deg)}.link-four{left:231px;top:240px;width:149px;transform:translateZ(18px) rotate(43deg)}.sculpture-ground{position:absolute;left:17%;right:10%;bottom:8%;height:35px;border-radius:50%;background:#080c14c9;filter:blur(16px)}.footer-contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-contact-link{display:inline-flex;align-items:center;gap:9px;color:#b7c4d6;font-size:11px;line-height:1.5;transition:color .2s}.footer-contact-link:hover{color:#f3f6fa}.contact-icon{height:19px;width:19px;flex-shrink:0}.external-arrow{color:#75859c;font-size:12px;margin-left:5px}.footer-top>.footer-contact-links{flex-shrink:0}
@keyframes system-drift{0%,100%{transform:translateY(4px) rotateX(-23deg) rotateY(-30deg) rotateZ(-8deg)}50%{transform:translateY(-9px) rotateX(-18deg) rotateY(-18deg) rotateZ(-4deg)}}
@media(max-width:1100px){.sculpture-perspective{width:410px;height:410px;transform:translate(-50%,-50%) scale(.86)}}
@media(max-width:800px){.sculpture-perspective{transform:translate(-50%,-50%) scale(.72)}.footer-contact-link{font-size:11px}}
@media(max-width:550px){.sculpture-perspective{top:46%;transform:translate(-50%,-50%) scale(.66)}.sculpture-ground{bottom:2%}.footer-top{align-items:center}.footer-contact-link{font-size:10px;gap:7px}.footer-contact-links{gap:12px}.contact-icon{width:17px;height:17px}.external-arrow{margin-left:0}.footer-top>.footer-contact-links{flex-shrink:1}.footer-top{gap:15px}}
@media(max-width:360px){.sculpture-perspective{transform:translate(-50%,-50%) scale(.6)}.footer-contact-link{font-size:9px}.footer-brand .brand-wordmark{font-size:13px}.footer-brand .brand-mascot{width:34px;height:34px}.footer-brand .brand-wordmark small{font-size:4.5px;letter-spacing:.8px}}
@media(prefers-reduced-motion:reduce){.sculpture-assembly{animation:none!important;transform:rotateX(-23deg) rotateY(-26deg) rotateZ(-6deg)}}
