
:root{--navy:#101c36;--blue:#365cff;--mint:#bbf2da;--paper:#f6f7f9;--gray:#647087}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--navy);background:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}.wrap{width:min(1200px,90%);margin:auto}header{position:sticky;top:0;z-index:10;background:#f6f7f9f2;backdrop-filter:blur(15px);border-bottom:1px solid #dfe3eb}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:27px;font-weight:800;letter-spacing:-1.3px;display:flex;align-items:center;gap:10px}.logo-mark{width:32px;height:32px;border:2px solid var(--blue);border-radius:50%;position:relative;display:block}.logo-mark:after{content:'';position:absolute;inset:5px -5px;border:2px solid var(--blue);border-radius:50%;transform:rotate(-40deg)}.logo em{font-style:normal;color:var(--blue)}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--blue);color:white;padding:17px 24px;border:0;border-radius:7px;font-weight:600;font-size:14px}.btn:hover{background:#2447e5}.btn.light{background:white;color:var(--navy)}.menu{display:none;background:none;border:0;font-size:24px}.hero{padding:76px 0 0}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;background:var(--blue);border-radius:50%}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:55px;align-items:center;padding-bottom:70px}h1{font-size:clamp(48px,5.9vw,79px);line-height:1.04;letter-spacing:-4px;font-weight:500;margin:26px 0}h1 span{color:var(--blue)}.lede{font-size:17px;color:var(--gray);line-height:1.8;max-width:490px}.actions{display:flex;gap:28px;align-items:center;margin-top:31px}.textlink{font-size:14px;font-weight:600;border-bottom:1px solid #abb1be;padding-bottom:6px}.visual{height:445px;background:var(--navy);border-radius:12px;position:relative;overflow:hidden;color:white;background-image:radial-gradient(circle at 70% 35%,#354eb566,transparent 65%)}.visual .label{position:absolute;top:25px;left:25px;letter-spacing:2px;font-size:10px;color:#a7b4d3}.orb{position:absolute;width:260px;height:260px;left:50%;top:47%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 32% 27%,#beccff,#6689ff 28%,#3452c0 52%,#0a153a 77%);box-shadow:inset -22px -18px 45px #070d29,0 0 65px #4d6aff44}.orb:before,.orb:after{content:'';position:absolute;inset:-18px -48px;border:1px solid #a1b4ff99;border-radius:50%;transform:rotate(-28deg)}.orb:after{inset:-45px 43px;transform:rotate(38deg)}.chip{position:absolute;background:#ffffff0f;border:1px solid #ffffff20;backdrop-filter:blur(10px);padding:12px 16px;border-radius:6px;font-size:12px}.chip.a{left:25px;top:123px}.chip.b{right:24px;bottom:137px}.visual-bottom{position:absolute;bottom:25px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#c0cbe3}.visual-bottom b{color:var(--mint)}.stack{border-top:1px solid #dfe3eb;border-bottom:1px solid #dfe3eb;padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;color:#6a758a;font-size:15px}.stack span:first-child{font-size:10px;letter-spacing:1.5px}.stack b{font-weight:600;color:#3c4961}section{padding:90px 0}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}h2{font-size:clamp(33px,4vw,49px);line-height:1.15;letter-spacing:-2px;font-weight:500;margin:17px 0 0}.section-head p{max-width:370px;color:var(--gray);line-height:1.75;font-size:15px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{background:white;border:1px solid #e4e7ef;border-radius:9px;padding:30px;min-height:260px}.num{font-size:12px;color:var(--blue)}h3{font-size:21px;letter-spacing:-.5px;font-weight:600}.service p,.about p,.step p{font-size:14px;line-height:1.8;color:var(--gray)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:26px}.tags span{font-size:10px;padding:7px 9px;background:var(--paper);border-radius:4px;color:#57627a}.work{background:var(--navy);color:white}.work .eyebrow{color:var(--mint)}.work .section-head p{color:#afbbd1}.projects{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-art{height:305px;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.scan{background:#dce7e0}.bazaar{background:#dfe4ff}.phone{width:160px;height:267px;background:#f9fcf9;border:5px solid #142534;border-radius:27px;padding:20px 13px;transform:rotate(-8deg);box-shadow:25px 25px 35px #132c3133;color:var(--navy);position:relative}.phone:before{content:'';position:absolute;top:5px;width:55px;height:9px;background:#142534;border-radius:9px;left:48px}.phone small{font-size:9px;color:#687970}.phone h4{font-size:18px;line-height:1.2;margin:12px 0}.leaf{height:90px;background:#d4ead9;border-radius:10px;display:grid;place-items:center;font-size:49px}.phone .mini{font-size:9px;background:#1d593b;color:white;padding:9px;border-radius:6px;margin-top:12px;text-align:center}.bazaar .phone{transform:rotate(8deg);background:#fff}.bazaar .leaf{background:#edf0ff;font-size:53px;color:var(--blue)}.bazaar .mini{background:var(--blue)}.art-caption{position:absolute;left:25px;bottom:25px;color:#42546a;font-size:10px;letter-spacing:1px}.project-info{display:flex;align-items:start;justify-content:space-between;padding-top:20px}.project-info h3{margin:0 0 8px}.project-info p{font-size:12px;color:#b0bed4;max-width:400px;line-height:1.7;margin:0}.project-info a{font-size:20px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.about{background:#eaf0eb}.about h2{max-width:480px}.about p{font-size:16px}.about-facts{display:flex;gap:50px;border-top:1px solid #cdd8d1;margin-top:28px;padding-top:25px}.about-facts b{display:block;font-size:24px;font-weight:500}.about-facts small{display:block;font-size:11px;margin-top:8px;color:var(--gray)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid #cdd4e0;padding-top:22px}.step .num{font-size:24px}.step h3{font-size:18px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq{padding-top:0}details{border-bottom:1px solid #d8dfe8;padding:22px 0}summary{font-size:16px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:25px}summary:after{content:'+';color:var(--blue);font-size:22px}details[open] summary:after{content:'−'}details p{color:var(--gray);font-size:14px;line-height:1.8}.contact{background:var(--blue);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact h2{font-size:53px}.contact p{color:#e0e6ff;line-height:1.8;max-width:390px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:12px;display:block}input,select,textarea{width:100%;margin-top:9px;border:1px solid #ffffff55;border-radius:5px;padding:13px;background:#ffffff0e;color:white;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--mint)}select option{color:var(--navy)}textarea{resize:vertical;min-height:100px}.full{grid-column:1/-1}.contact small{font-size:11px;line-height:1.6;color:#dce3ff}.contact .btn{justify-self:start}footer{padding:36px 0;background:#0b1428;color:white}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px}footer .logo{font-size:24px}footer p{font-size:11px;color:#afbbd1}footer a{font-size:12px}footer .links{display:flex;gap:22px}.legal{margin-top:25px;border-top:1px solid #253049;padding-top:20px;display:flex;justify-content:space-between;color:#9ba8bf;font-size:10px}.status{font-size:13px;line-height:1.7}.contact-link{border-bottom:1px solid white}.reveal{animation:enter .65s ease-out}@keyframes enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){nav{gap:18px}.hero-grid{gap:28px}h1{letter-spacing:-2.7px}.visual{height:380px}.services{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{gap:40px}.steps{grid-template-columns:1fr 1fr}.faq-grid{gap:35px}}@media(max-width:650px){.nav{height:72px}.menu{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;padding:25px;background:var(--paper);flex-direction:column;align-items:stretch;border-bottom:1px solid #ddd}nav.open{display:flex}.hero{padding-top:40px}.hero-grid,.about-grid,.contact-grid,.faq-grid{grid-template-columns:1fr}.hero-grid{gap:35px;padding-bottom:40px}h1{font-size:54px}.visual{height:355px}.orb{width:220px;height:220px}.stack{justify-content:start;gap:22px}.stack span:first-child{width:100%}section{padding:62px 0}.section-head{display:block;margin-bottom:30px}.services,.projects{grid-template-columns:1fr}.service{min-height:225px}.project-art{height:300px}.about-grid{gap:25px}.steps{gap:25px}.contact h2{font-size:44px}.contact-grid{gap:28px}.footer-main{align-items:start;flex-direction:column}.legal{gap:20px}.contact-form{gap:15px}.actions{gap:20px}.faq-grid{gap:22px}h2{letter-spacing:-1.5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}}:focus-visible{outline:3px solid #85dcb4;outline-offset:5px}

.page-intro{padding:65px 0 55px;border-bottom:1px solid #dfe3eb}.page-intro h1{font-size:clamp(44px,6vw,72px);max-width:900px}.breadcrumb{color:var(--gray);font-size:12px;margin-bottom:35px}.breadcrumb a{color:var(--blue)}.detail-grid{display:grid;grid-template-columns:1.4fr .7fr;gap:65px}.detail-grid p,.reading p,.reading li{color:var(--gray);line-height:1.9;font-size:16px}.detail-grid h2,.reading h2{font-size:32px;margin:30px 0 20px}.panel{background:white;border:1px solid #dfe3eb;border-radius:10px;padding:28px;height:fit-content}.panel h3{margin-top:0}.panel .btn{margin-top:16px;width:100%}.feature-list{padding-left:20px;line-height:2;color:var(--gray)}.cover-img{width:100%;max-height:520px;object-fit:contain;background:#e8edf4;border-radius:10px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.portfolio-card{background:white;border:1px solid #e1e6ee;border-radius:10px;overflow:hidden;display:block;transition:transform .2s}.portfolio-card:hover{transform:translateY(-4px)}.portfolio-card img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block;background:#e3e9f2}.portfolio-card .card-body{padding:23px}.portfolio-card h3{margin:0 0 13px}.portfolio-card p{color:var(--gray);font-size:13px;line-height:1.75;margin:0 0 20px}.portfolio-card .more{font-size:12px;color:var(--blue);font-weight:600}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.filters button{padding:10px 18px;border:1px solid #d4dce8;background:white;border-radius:30px;font-size:12px;color:var(--navy)}.filters button.active{background:var(--navy);color:white}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:25px}.gallery button{padding:0;background:white;border:1px solid #d8deeb;border-radius:8px;overflow:hidden}.gallery img{width:100%;height:270px;object-fit:contain}.reading{max-width:820px}.reading li{margin-bottom:8px}.cta-band{background:var(--mint);padding:45px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:65px}.cta-band h3{font-size:28px;margin:0 0 10px}.cta-band p{font-size:14px;color:#475a52}.contact-methods{display:grid;gap:15px}.contact-methods a{display:block;padding:24px;background:white;border:1px solid #e0e5ec;border-radius:8px}.contact-methods small{display:block;color:var(--gray);margin-bottom:10px;font-size:11px;letter-spacing:1px}.contact-methods strong{font-size:18px;overflow-wrap:anywhere}.note{font-size:12px!important;background:#edf1f7;padding:15px 18px;border-radius:6px}.service{display:block}.service:hover{border-color:#365cff}.service .more{display:block;color:var(--blue);font-size:12px;margin-top:25px}.empty-art{aspect-ratio:1.5;background:linear-gradient(135deg,#162a58,#365cff);display:grid;place-items:center;color:white;font-size:48px}dialog{border:0;border-radius:12px;padding:12px;background:#f4f6fa;max-width:90vw;max-height:92vh}dialog::backdrop{background:#0a132be6}dialog img{max-width:83vw;max-height:80vh;object-fit:contain;display:block}dialog button{float:right;margin:0 0 10px;border:0;background:var(--navy);color:white;padding:8px 15px;border-radius:5px}.article-card{padding:28px}.article-card .num{display:block;margin-bottom:30px}nav a[aria-current=page]{color:var(--blue)}@media(max-width:900px){.project-grid{grid-template-columns:1fr 1fr}.detail-grid{gap:30px}nav{gap:18px}}@media(max-width:650px){.project-grid,.detail-grid{grid-template-columns:1fr}.page-intro{padding:40px 0}.gallery img{height:180px}.cta-band{padding:25px;display:block}.cta-band .btn{margin-top:15px}.contact-methods strong{font-size:16px}.gallery{gap:7px}}
nav{gap:22px}.links{flex-wrap:wrap}.recommendations{background:#eaf0eb}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.full-reviews{grid-template-columns:repeat(2,1fr)}.review-card{background:white;border:1px solid #dbe3df;border-radius:10px;padding:30px;display:flex;flex-direction:column}.review-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.7px;color:#597066;font-weight:700}.review-card blockquote{font-size:25px;line-height:1.5;letter-spacing:-.5px;margin:24px 0 5px}.review-summary{color:var(--gray);font-size:14px;line-height:1.85;flex:1;margin:22px 0 28px}.review-person{display:flex;align-items:center;gap:13px}.avatar-initials{background:#e9eefb;color:var(--blue);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.review-person h3{font-size:15px;margin:0 0 6px;letter-spacing:0}.review-person span{font-size:11px;color:var(--gray)}.review-source{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-top:1px solid #e2e7ec;margin-top:22px;padding-top:17px;font-size:10px;color:var(--gray)}.review-source a{color:var(--blue)}.source-intro{max-width:750px;color:var(--gray);line-height:1.9;font-size:15px;margin:0 0 35px}.section-more{margin-top:30px}.article-card{padding:0}.article-card .num{font-size:9px;letter-spacing:1px;margin-bottom:15px;line-height:1.7}.article-art{height:165px;background:#dce4ff;overflow:hidden;position:relative;padding:24px;color:#254497}.article-art>span{font-size:10px;font-weight:700;letter-spacing:2px}.article-orbit{height:140px;width:140px;position:absolute;border:1px solid #365cff88;border-radius:50%;right:30px;top:40px;box-shadow:22px -18px 0 #365cff15,-25px 15px 0 #365cff20}.art-project-brief .article-orbit{border-radius:18px;transform:rotate(-18deg)}.art-launch-handover{background:#d8eee2;color:#285d47}.art-launch-handover .article-orbit{border-color:#448e6d;box-shadow:22px -18px 0 #448e6d15,-25px 15px 0 #448e6d20}.art-maintenance-planning{background:#e7def2;color:#624b84}.article-layout{display:grid;grid-template-columns:240px 1fr;gap:70px;align-items:start}.article-toc{display:flex;flex-direction:column;align-items:flex-start;gap:17px;position:sticky;top:115px;border-left:2px solid #dce3ef;padding-left:20px;font-size:12px;background:transparent}.article-toc a{color:var(--gray);line-height:1.6}.article-toc strong{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}.article-meta{font-size:12px!important;letter-spacing:.5px;margin-top:0}.article-end{border-top:1px solid #dce3ed;padding-top:25px;margin-top:35px}.related{margin-top:80px}.related h2{margin-bottom:30px}.related .project-grid{grid-template-columns:repeat(2,1fr)}@media(max-width:900px){nav{gap:14px;font-size:12px}.review-grid{grid-template-columns:1fr 1fr}.review-grid .review-card:last-child:nth-child(3){grid-column:1/-1}.article-layout{grid-template-columns:190px 1fr;gap:30px}.review-card{padding:23px}}@media(max-width:650px){.review-grid,.full-reviews,.related .project-grid{grid-template-columns:1fr}.article-layout{display:block}.article-toc{position:static;display:flex;padding:0 0 25px 18px;margin-bottom:30px;border-bottom:1px solid #ddd;border-left:2px solid #dce3ef}.review-card blockquote{font-size:22px}header nav{font-size:14px}.legal{flex-direction:column}.article-art{height:145px}}

.logo{flex-shrink:0;line-height:0}.brand-logo{display:block;width:216px;height:auto;max-width:100%;object-fit:contain}.footer-brand{display:inline-flex;background:#fff;border-radius:9px;padding:5px 10px}.footer-brand .brand-logo{width:210px}@media(max-width:650px){.brand-logo{width:180px}.footer-brand .brand-logo{width:195px}}

[hidden]{display:none!important}.work .portfolio-card{color:var(--navy)}