:root{--blue:#0057ff;--text:#191919;--muted:#696969;--border:#ebebeb;--pale:#f5f8ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:#fff;color:var(--text);font:15px/1.45 'Helvetica Neue',Helvetica,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #0057ff;outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:-80px}.skip:focus{top:8px;left:10px;z-index:20;background:#fff;padding:8px}.site-header{height:55px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:25px;position:sticky;top:0;z-index:10}.wordmark{font-size:22px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.site-header nav{display:flex;align-items:center;height:100%;gap:26px;font-weight:600}.site-header nav a{height:100%;display:flex;align-items:center;gap:7px}.site-header nav .current{border-bottom:2px solid #191919}.site-header nav span{color:#707070}.header-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.header-sig{font-weight:800;font-size:20px;margin-left:10px}.pill,.button{border:1px solid var(--border);border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 28px;font-size:16px;font-weight:600;background:#fff;white-space:nowrap;text-decoration:none;cursor:pointer}.primary,.button{background:var(--blue);border-color:var(--blue);color:#fff}.pale{color:var(--blue);background:var(--pale);border-color:#edf0f9}.gradient{color:#fff;border:0;background:linear-gradient(100deg,#0188fd,#003bff 55%,#001faa)}.header-actions .pill{height:32px;padding:0 20px;font-size:14px}.pill:hover,.button:hover{filter:brightness(.96)}.intro{text-align:center;padding:96px 20px 76px;background:linear-gradient(#f5f8ff,#fff);}.intro h1{font-size:80px;line-height:.85;letter-spacing:-4px;font-weight:750;margin:0 auto 25px;width:max-content;max-width:100%}.intro h1 span{color:var(--blue)}.intro>p{font-size:20px;line-height:30px;max-width:550px;margin:0 auto 31px}.intro-actions{display:flex;gap:8px;justify-content:center}#explore{padding:0 24px}.discovery{display:flex;align-items:center;gap:14px;margin:0 0 22px}.filter-toggle{height:44px;font-size:14px;padding:0 22px}.filter-toggle>span{font-size:22px;line-height:1;color:#777}.search-box{border:1px solid var(--border);background:#f9f9f9;border-radius:100px;display:flex;align-items:center;gap:12px;flex:1;min-width:0;height:44px;padding:0 17px}.search-box svg{width:18px;height:18px;fill:none;stroke:#777;stroke-width:1;flex-shrink:0}.search-box input{background:none;border:0;outline:none;flex:1;min-width:40px;font-size:16px}.search-modes{display:flex;gap:5px}.search-modes button{border:0;border-radius:100px;background:transparent;font-size:14px;color:#707070;padding:6px 13px;font-weight:600}.search-modes .selected{background:#fff;color:#191919;box-shadow:0 0 0 1px #eee}.sort-label{font-size:0;white-space:nowrap}.sort-label:before{content:'☰';font-size:18px;color:#888;margin:0 10px}.sort-label select{font-size:14px;font-weight:600;border:0;background:white;max-width:148px;padding:8px 0}.categories{display:flex;gap:8px;overflow:auto;scrollbar-width:none;margin-bottom:20px}.category{height:44px;border-radius:5px;flex:1 0 auto;padding:0 22px;border:0;color:#fff;background:#353535;font-size:14px;font-weight:650;box-shadow:inset 0 0 0 100px #0005}.category-0{background:linear-gradient(130deg,#384b37,#9c7450)}.category-1{background:linear-gradient(30deg,#133c37,#676c2d)}.category-2{background:linear-gradient(140deg,#4d3785,#162663)}.category-3{background:linear-gradient(70deg,#074bbd,#291b76)}.category-4{background:linear-gradient(140deg,#af5c19,#733c2d)}.category-5{background:linear-gradient(70deg,#a33177,#453475)}.category-6{background:linear-gradient(70deg,#746a15,#322e18)}.category-7{background:linear-gradient(70deg,#752834,#453133)}.category[aria-pressed=true]{box-shadow:inset 0 0 0 2px #191919,inset 0 0 0 4px #fff}.gallery-caption{display:flex;justify-content:space-between;font-size:12px;color:#767676;margin:0 0 14px}.project-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:34px 24px}.project{min-width:0}.cover{display:block;width:100%;aspect-ratio:1.278;background:var(--art);border:0;border-radius:4px;position:relative;overflow:hidden;text-align:left;padding:0;color:var(--arttext,#172522);isolation:isolate}.cover-copy{position:absolute;left:8%;top:12%;z-index:1}.cover-copy h2{font-size:clamp(17px,1.55vw,27px);line-height:1.04;letter-spacing:-.8px;margin:0;font-weight:750}.concept-tag{position:absolute;top:9px;right:9px;z-index:2;font-size:8px;letter-spacing:1.1px;border:1px solid currentColor;border-radius:3px;padding:2px 4px;opacity:.65}.cover-action{position:absolute;inset:auto 0 0;padding:12px;background:#000b;color:#fff;font-size:12px;opacity:0;transition:opacity .15s;z-index:3}.cover:hover .cover-action,.cover:focus-visible .cover-action{opacity:1}.project-title{background:none;border:0;font-size:14px;font-weight:700;text-align:left;padding:8px 0 0;line-height:1.2;width:100%}.project-title:hover{text-decoration:underline}.project-meta{display:flex;justify-content:space-between;gap:6px;font-size:11px;margin:4px 0 0;color:#505050}.project-meta span{color:#666;font-size:10px;text-align:right}.green{--art:#d9e3cd;--accent:#416047}.violet{--art:#c9bbf8;--accent:#6351ae}.blue{--art:#0061fd;--accent:#e2eaff;--arttext:#fff}.orange{--art:#ff9c35;--accent:#dc672c}.pink{--art:#f3b5d3;--accent:#a34c7e}.yellow{--art:#f9db4b;--accent:#81761f}.sand{--art:#e5d9c6;--accent:#695344}.mint{--art:#8dcbbc;--accent:#297669}.red{--art:#f05247;--accent:#9e352e;--arttext:white}.navy{--art:#17233c;--accent:#99ade0;--arttext:white}.mini-window{position:absolute;width:80%;height:59%;left:12%;bottom:-4%;background:#fff;border-radius:4px;box-shadow:0 8px 20px #0003;color:#252b35;transform:rotate(-6deg);overflow:hidden}.mock-top{height:16px;border-bottom:1px solid #eee;padding:5px;display:flex;gap:3px;align-items:center}.mock-top i{width:3px;height:3px;background:#bbc0c9;border-radius:50%}.mock-top span{font-size:4px;color:#999;margin:auto}.mock-body{display:flex;height:100%}.mock-side{width:15%;padding:7px 8px;font-size:9px;line-height:2;background:#f1f1f6;color:var(--accent)}.mock-main{padding:9px;width:85%}.mock-main>b{font-size:7px}.mock-stats{display:flex;gap:5px;margin-top:7px}.mock-stats span{background:#f5f4fa;padding:5px;flex:1;font-size:4px;border-radius:3px}.mock-stats em{display:block;font-size:6px;font-weight:bold;font-style:normal;color:var(--accent)}.bars{height:38px;display:flex;gap:5px;align-items:end;margin-top:7px}.bars i{flex:1;background:var(--accent);height:50%;opacity:.6}.bars i:nth-child(2n){height:80%;opacity:1}.bars i:nth-child(3n){height:65%;opacity:.8}.mock-lines{padding-top:7px}.mock-lines i{display:block;background:#e7e9ec;height:3px;margin:4px 0}.web-window{transform:rotate(5deg);left:20%;width:77%;bottom:-7%;height:63%}.web-art{padding:8%;background:#faf9f4;height:100%;position:relative}.web-art>span{font-size:4px;letter-spacing:1px}.web-art>b{display:block;font:700 23px/.9 Georgia,serif;margin:8px 0;color:var(--accent);position:relative;z-index:1}.web-art>small{font-size:4px;display:block}.web-art>i{display:inline-block;padding:4px;background:var(--accent);color:white;border-radius:20px;font-size:4px;font-style:normal;margin-top:6px}.web-shape{position:absolute;width:50%;height:80%;background:linear-gradient(150deg,#79987e,#ced6b9);right:-9%;top:12%;border-radius:100px 100px 0 0;transform:rotate(-15deg)}.phone{background:#fcfcff;border:4px solid #142252;border-radius:19px;color:#162650;position:absolute;width:36%;height:82%;bottom:-20%;right:12%;transform:rotate(12deg);text-align:center;padding:9px 3px;box-shadow:0 12px 20px #00195455}.phone-camera{width:29%;height:5px;border-radius:10px;background:#142252;margin:-7px auto 11px}.call-orb{width:40px;height:40px;display:grid;place-items:center;background:radial-gradient(at 30% 20%,#c4b7ff,#6ba6ff);border-radius:50%;margin:auto;font-size:27px;color:white}.phone b{display:block;font-size:7px;margin-top:7px}.phone small{font-size:5px}.wave{font-size:11px;color:#3372fc;margin:9px 0}.call-controls{display:flex;justify-content:space-around;font-size:10px}.map-demo{position:absolute;width:84%;height:56%;bottom:0;right:-5%;transform:rotate(-7deg);background:#f2f0e4;border:3px solid white;border-radius:7px;overflow:hidden;box-shadow:0 6px 18px #82411844}.map-street{position:absolute;background:white;height:10px;width:150%;transform:rotate(-25deg);top:40%;left:-20%}.map-street.b{transform:rotate(70deg);left:5%;top:15%}.map-street.c{top:80%;transform:rotate(10deg)}.map-route{border:3px solid #326ddc;width:48%;height:60%;position:absolute;left:15%;top:15%;border-radius:10px 30px 10px 30px}.pin{position:absolute;color:#2261d7;text-shadow:0 0 2px white;font-size:19px}.p1{left:13%;top:7%}.p2{left:60%;top:60%}.p3{left:47%;top:24%}.map-card{position:absolute;right:6%;bottom:6%;background:white;border-radius:4px;padding:8px;width:46%;box-shadow:0 2px 10px #0002;color:#222}.map-card b,.map-card small{display:block;font-size:6px}.map-card small{font-size:4px;margin-top:4px}.map-card i{display:block;background:#ddd;height:3px;margin-top:5px}.learning{position:absolute;bottom:7%;left:8%;width:84%;height:53%;display:flex;background:white;box-shadow:0 5px 20px #0002;border-radius:4px;transform:rotate(-5deg);overflow:hidden;color:#222}.lesson{width:51%;background:linear-gradient(150deg,#40445a,#758398);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff}.play{border:1px solid #fff8;border-radius:50%;padding:8px;font-size:13px}.lesson small{font-size:4px;letter-spacing:1px}.lesson-list{padding:10px 7px;flex:1}.lesson-list b{font-size:7px;display:block;margin-bottom:8px}.lesson-list span{display:block;font-size:4px;border-bottom:1px solid #eee;padding:6px 0}.lesson-list i{background:#f1e8f5;font-style:normal;margin-right:4px;padding:3px}.flow-art{position:absolute;right:8%;bottom:7%;width:64%;transform:rotate(-6deg);color:#262828}.flow-art>div{background:white;border-radius:6px;font-size:8px;padding:10px 12px;box-shadow:0 3px 8px #0001;display:flex;justify-content:space-between}.flow-art>i{display:block;text-align:center;line-height:16px;font-style:normal}.profile-art{position:absolute;width:66%;bottom:-8%;left:25%;height:70%;background:#fff;border-radius:6px;box-shadow:0 10px 20px #0003;color:#222;transform:rotate(7deg);overflow:hidden;padding:0 12px}.profile-cover{height:30%;background:#2c3045;margin:0 -12px}.profile-avatar{background:#eedac6;border:3px solid #fff;border-radius:50%;width:30px;height:30px;font-size:9px;display:grid;place-items:center;margin-top:-15px;position:relative}.profile-art>b{display:block;font-size:8px;margin-top:4px}.profile-art>small{font-size:4px;display:block}.profile-pill{display:inline-block;background:#0057ff;color:white;border-radius:10px;font-size:5px;padding:4px 8px;margin-top:5px}#empty{text-align:center;padding:70px}#filter-panel{padding:20px;background:#f9f9f9;border:1px solid #eee;border-radius:8px;margin-bottom:15px;display:flex;align-items:center;gap:20px}#filter-panel select{margin-left:10px;padding:8px;border:1px solid #ddd;border-radius:8px;background:white}.wrap{max-width:1120px;margin:0 auto}.about-panel{display:flex;gap:28px;padding:55px 35px;border:1px solid #e9e9e9;border-radius:12px;margin-top:90px;background:#fafafa}.avatar{width:90px;height:90px;flex-shrink:0;border-radius:50%;background:var(--blue);display:grid;place-items:center;color:#fff;font-size:32px;font-weight:700}.about-panel h2{font-size:30px;margin:8px 0 12px}.about-panel p{max-width:730px;color:#555}.eyebrow{font-size:11px;color:#646464;font-weight:700;letter-spacing:1px}.section{padding:80px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-head h2{font-size:38px;line-height:1.1;letter-spacing:-1px;margin:10px 0 0}.section-head>p{color:#666}.intake{display:grid;grid-template-columns:1fr 1.65fr;border:1px solid #e5e5e5;border-radius:12px;overflow:hidden}.intake aside{background:#f6f8ff;padding:30px}.intake aside h3{font-size:23px;margin-top:0}.intake aside a{font-size:13px;color:var(--blue);overflow-wrap:anywhere}.intake aside ul{padding-left:18px;line-height:1.8}form{padding:30px;min-width:0}.progress{display:flex;gap:25px;color:#777;font-size:13px;margin-bottom:25px}.progress span{padding-bottom:9px;border-bottom:2px solid #eee}.progress .active{border-color:var(--blue);color:var(--blue);font-weight:700}.form-step h3{font-size:23px;margin:0 0 12px}.need-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.need-options label{display:flex;align-items:start;gap:8px;padding:11px;border:1px solid #ddd;border-radius:6px;font-size:13px;cursor:pointer}.need-options input{accent-color:var(--blue)}.need-options label:has(:checked){border-color:var(--blue);background:#f4f7ff}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fields label{font-size:13px;font-weight:600}.fields small{font-weight:400}.fields input,.fields select,.fields textarea{display:block;width:100%;background:#fff;color:#191919;border:1px solid #bbb;padding:10px;border-radius:5px;margin-top:5px;font-size:16px}.wide{grid-column:1/-1}.micro{font-size:12px;color:#727272;line-height:1.5}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.actions button:not(.button){background:#fff;border:1px solid #ddd;border-radius:100px;padding:10px 15px}.form-step pre{background:#f6f7fa;font:13px/1.6 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;max-height:340px;overflow:auto}#form-status{color:#a33629;font-size:13px}.faq{padding:0 0 80px}.faq h2{font-size:28px}.faq details{border-bottom:1px solid #ddd;padding:20px 0}.faq summary{font-weight:600;cursor:pointer}.faq details p{color:#555;max-width:850px}footer{background:#191919;color:white;margin-top:30px}.footer-top{padding:40px 6%;background:#f6f6f6;color:#191919;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-top strong{font-size:25px}.footer-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:40px;padding:65px 6%}.footer-columns .wordmark{font-size:29px}.footer-columns h3{font-size:17px;margin:0 0 16px}.footer-columns>div>a{display:block;margin:12px 0;color:#e4e4e4;font-size:14px}.footer-bottom{border-top:1px solid #444;padding:22px 6%;display:flex;gap:30px;font-size:12px;color:#bbb}.footer-bottom span{margin-left:auto}dialog{border:0;border-radius:12px;padding:40px;width:min(620px,90vw);max-height:85vh;color:#191919;box-shadow:0 25px 80px #0005}dialog::backdrop{background:#0008;backdrop-filter:blur(3px)}dialog h2{font-size:30px;line-height:1.15;margin:14px 0}dialog article>p,dialog li{color:#555}dialog li{margin:10px 0}.close{position:absolute;top:10px;right:15px;border:0;background:transparent;font-size:26px}.measure{background:#f4f7ff;border-radius:7px;padding:18px;margin:20px 0}.measure b{font-size:11px;letter-spacing:.7px;color:var(--blue)}.measure p{margin-bottom:0}.report{background:#fff;color:#191919}
@media(min-width:1800px){.project-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:1199px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cover-copy h2{font-size:23px}.wrap{width:92%}.header-sig{display:none}.site-header nav{gap:18px}.search-modes{display:none}}@media(max-width:900px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.intro h1{font-size:64px;letter-spacing:-3px}.intro{padding:80px 20px 65px}.site-header nav a:nth-child(3),.site-header nav a:nth-child(4){display:none}.header-actions .pale{display:none}.intake{grid-template-columns:1fr}.intake aside{display:none}.footer-columns{grid-template-columns:1fr 1fr}.footer-bottom{flex-wrap:wrap}.footer-bottom span{margin:0}}@media(max-width:620px){.site-header{padding:0 16px;gap:18px}.wordmark{font-size:20px}.site-header nav{font-size:13px;gap:15px}.site-header nav a:nth-child(2){display:none}.header-actions .pill{font-size:11px;padding:0 12px;height:30px}.intro{padding:60px 15px 48px}.intro h1{font-size:clamp(32px,8.8vw,54px);letter-spacing:-1.7px;line-height:.94}.intro>p{font-size:16px;line-height:24px;max-width:420px;margin:23px auto}.intro-actions .pill{font-size:13px;padding:0 17px;height:38px}#explore{padding:0 14px}.discovery{gap:8px;margin-bottom:14px}.sort-label{display:none}.filter-toggle{padding:0 10px;height:42px;font-size:12px}.search-box{height:42px;padding:0 11px;gap:7px}.search-box input{font-size:13px}.category{height:39px;font-size:12px;padding:0 16px}.categories{margin-bottom:15px}.gallery-caption{font-size:10px;gap:12px;align-items:center}.gallery-caption>span:last-child{text-align:right;max-width:160px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}.project-title{font-size:12px}.project-meta{font-size:10px;display:block}.project-meta span{display:block;text-align:left;font-size:9px;margin-top:2px}.cover-copy h2{font-size:clamp(16px,4vw,24px)}.concept-tag{font-size:6px;top:5px;right:5px;padding:1px 3px}.mini-window .mock-main{padding:5px}.mock-stats{margin-top:2px;gap:2px}.mock-stats span{padding:3px}.bars{height:23px;margin-top:3px}.web-art>b{font-size:17px;margin:4px 0}.phone{border-width:3px;border-radius:12px}.call-orb{height:27px;width:27px;font-size:20px}.phone-camera{margin-bottom:5px}.phone b{font-size:5px;margin-top:4px}.phone small{font-size:4px}.wave{font-size:8px;margin:4px 0}.call-controls{font-size:7px}.lesson-list{padding:7px 4px}.lesson-list b{font-size:5px;margin-bottom:4px}.lesson-list span{font-size:3px;padding:4px 0}.lesson{gap:6px}.flow-art>div{font-size:6px;padding:6px}.flow-art>i{line-height:11px;font-size:9px}.profile-art{padding:0 7px}.profile-cover{margin:0 -7px}.profile-avatar{height:22px;width:22px;font-size:6px;margin-top:-11px}.profile-art>b{font-size:6px}.profile-art>small{font-size:3px}.profile-pill{font-size:4px;padding:3px 5px;margin-top:3px}.about-panel{padding:25px 20px;margin-top:60px;gap:16px}.avatar{width:45px;height:45px;font-size:18px}.about-panel h2{font-size:23px}.about-panel p{font-size:14px}.about-panel .pill{font-size:12px;padding:0 13px}.section{padding:55px 0}.section-head{display:block}.section-head h2{font-size:32px}.section-head>p{font-size:14px}.fields,.need-options{grid-template-columns:1fr}form{padding:22px}.form-step h3{font-size:21px}.button{font-size:13px;padding:0 18px}.faq summary{font-size:14px}.faq details p{font-size:14px}.footer-top{display:block}.footer-top strong{display:block;margin-bottom:20px;font-size:22px}.footer-columns{gap:30px 20px;padding:40px 6%}.footer-columns .wordmark{grid-column:1/-1}.footer-columns h3{font-size:14px}.footer-columns>div>a{font-size:12px}dialog{padding:28px 22px}dialog h2{font-size:25px}#filter-panel{flex-wrap:wrap;padding:15px}}
html{scroll-behavior:auto}
.project-title{color:#242424;font-weight:750}.project-meta{color:#4c4c4c}.project-meta span{color:#555}.category-heading{grid-column:1/-1;margin:18px 0 -8px;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:#5a5a5a;border-bottom:1px solid #e3e3e3;padding-bottom:8px}.category-heading:first-child{margin-top:0}dialog article>p,dialog li{color:#2f2f2f}dialog li{font-size:16px;line-height:1.5}.service-card-text{color:#2f2f2f}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
