@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lato-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/lato-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lato;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/lato-900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--p:#187ec5;--p2:#88bce1;--d:#0f3351;--a:#7cc444;--t:#4f5d68;--line:#e3e9ef;--bg:#f6f9fc;--max:1120px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:19px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{color:var(--d);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--p)}h1,h2,h3{color:var(--d);font-weight:700;line-height:1.2}p{margin:0 0 1em}.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}.skip{position:absolute;left:-9999px}.skip:focus{z-index:50;background:#fff;border-radius:6px;padding:8px 12px;top:12px;left:12px}.site-head{z-index:20;backdrop-filter:blur(6px);border-bottom:1px solid var(--line);background:#fffffff5;position:sticky;top:0}.site-head .wrap{align-items:center;gap:24px;min-height:76px;display:flex}.site-head .logo img{width:170px}.site-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.site-nav a{color:var(--d);border-radius:8px;padding:8px 12px;font-size:.95rem;font-weight:700;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--p)}.site-nav a.btn{color:#fff;margin-left:8px;padding:11px 20px}.site-nav a.btn[aria-current=page]{color:#fff}.menu-toggle{display:none}@media (width<=860px){.site-head .wrap{flex-wrap:wrap;min-height:64px}.site-head .logo img{width:140px}.menu-toggle{margin-left:auto;display:block}.menu-toggle summary{cursor:pointer;color:var(--d);border:2px solid var(--line);border-radius:8px;padding:10px 14px;font-weight:700;list-style:none}.menu-toggle summary::-webkit-details-marker{display:none}.site-nav{flex-direction:column;align-items:stretch;width:100%;padding:4px 0 14px;display:none}.menu-toggle[open]~.site-nav{display:flex}.site-nav a{border-bottom:1px solid var(--line);border-radius:0;padding:12px 6px}.site-nav a.btn{text-align:center;border-bottom:0;border-radius:8px;margin:10px 0 0}}.btn{background:var(--p);font-weight:700;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:15px 26px;font-weight:700;text-decoration:none;display:inline-block;box-shadow:0 2px 8px #187ec540;color:#fff!important}.btn:hover{background:var(--d)}.btn.ghost{border:2px solid var(--line);box-shadow:none;background:#fff;color:var(--d)!important}.btn.ghost:hover{border-color:var(--p)}.btn.green{background:var(--a);box-shadow:0 2px 8px #7cc4444d}.btn.green:hover{background:#68ad33}.section{padding:72px 0}.section.tint{background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kick{letter-spacing:.12em;text-transform:uppercase;color:var(--a);margin:0 0 10px;font-size:.8rem;font-weight:700}.sec-head{max-width:720px;margin:0 0 32px}.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}.sec-head h2{margin:0 0 12px;font-size:clamp(1.6rem,3.4vw,2.2rem)}.sec-head p{color:var(--t);margin:0}.lede{color:var(--t);font-size:1.15rem}.muted{color:var(--t)}.hero{padding:84px 0 64px}.hero h1{max-width:900px;margin:0 0 20px;font-size:clamp(2.1rem,5vw,3.2rem)}.hero h1 span{color:var(--p);display:block}.hero .lede{max-width:720px}.ctas{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.grid2{grid-template-columns:1fr 1fr;gap:22px;display:grid}.grid3{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.grid4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (width<=900px){.grid3,.grid4{grid-template-columns:1fr 1fr}}@media (width<=640px){.grid2,.grid3,.grid4{grid-template-columns:1fr}.section{padding:56px 0}.hero{padding:56px 0 44px}html{font-size:18px}}.card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:26px}.card h3{margin:0 0 8px;font-size:1.2rem}.card p:last-child{margin-bottom:0}.prose{max-width:780px}.prose h1{margin:0 0 8px;font-size:clamp(1.9rem,4vw,2.6rem)}.prose h2{margin:2em 0 .5em;font-size:1.3rem}.prose ul{padding-left:1.2em}.prose li{margin-bottom:.4em}.proj{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:start;gap:36px;padding:40px 0;display:grid}.proj img{border:1px solid var(--line);border-radius:12px}.proj h2{margin:0 0 10px;font-size:1.4rem}.proj ul{columns:2;color:var(--t);column-gap:24px;padding-left:1.1em;font-size:.95rem}@media (width<=760px){.proj{grid-template-columns:1fr;gap:18px}.proj ul{columns:1}}.contact-wrap{grid-template-columns:1fr 1.25fr;align-items:start;gap:40px;display:grid}@media (width<=860px){.contact-wrap{grid-template-columns:1fr}}.cform{color:var(--d);border:1px solid var(--line);background:#fff;border-radius:14px;padding:26px}.cform label{margin:0 0 16px;font-size:.95rem;font-weight:700;display:block}.cform .row2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=600px){.cform{padding:20px 16px}.cform .row2{grid-template-columns:1fr;gap:0}}.cform input[type=text],.cform input[type=email],.cform input[type=tel],.cform select,.cform textarea{width:100%;font:inherit;color:var(--d);background:#fff;border:1.5px solid #c9d5df;border-radius:8px;margin-top:6px;padding:12px 13px;font-size:1rem;font-weight:400;display:block}.cform textarea{resize:vertical;min-height:130px}.cform input:focus,.cform select:focus,.cform textarea:focus{border-color:var(--p);outline:none;box-shadow:0 0 0 3px #187ec526}.cform .req{color:#c0392b}.cform .opt{color:var(--t);font-weight:400}.cform .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.cform .consent{color:var(--t);align-items:flex-start;gap:10px;font-size:.9rem;font-weight:400;display:flex}.cform .consent input{flex:none;width:18px;height:18px;margin-top:5px}.cform .btn{width:100%;font-size:1.05rem}.cform .btn[disabled]{opacity:.6;cursor:wait}.cform .status{margin:12px 0 0;font-size:.95rem}.cform .status.err{color:#c0392b}.cform .thanks{text-align:center;padding:30px 10px}.cform .thanks h3{margin:0 0 8px;font-size:1.4rem}.site-foot{background:var(--d);color:#c9d6e2;padding:28px 0}.site-foot .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 28px;display:flex}.site-foot .copy{margin:0;font-size:.9rem}.site-foot .foot-links{flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.site-foot a{color:#fff;text-decoration:none}.site-foot a:hover{text-decoration:underline}.home-hero{text-align:center;color:#fff;clip-path:polygon(0 0,100% 0,100% calc(100% - 34px),0 100%);background:linear-gradient(#0f33516b,#0f33518c),url(/images/bg-mountains.webp) 50% 40%/cover no-repeat;align-items:center;min-height:min(78vh,640px);padding:120px 0 130px;display:flex;position:relative}.home-hero .wrap{width:100%}.home-hero h1{color:#fff;text-shadow:0 2px 14px #0000004d;max-width:1100px;margin:0 auto 40px;font-size:clamp(2.1rem,3.7vw,2.9rem)}.hero-cta{text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:10px;padding:16px 30px;font-size:1.05rem;display:inline-flex}.hero-cta svg{width:20px;height:20px}@media (width<=640px){.home-hero{clip-path:polygon(0 0,100% 0,100% calc(100% - 20px),0 100%);min-height:72vh;padding:90px 0 100px}}.blue-sub{font-size:1.1rem;font-weight:700;color:var(--p)!important}.sec-head.wide{max-width:1040px}.sec-head.wide h2{font-size:clamp(1.6rem,2.9vw,2.05rem)}.tabs .tab-list{display:none}.tabs.js .tab-list{flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 30px;display:flex}.tabs .tab-list button{white-space:nowrap;min-width:0;font:inherit;color:var(--d);cursor:pointer;background:#eef1f4;border:0;border-radius:4px;flex:auto;justify-content:center;align-items:center;gap:9px;padding:14px 16px;font-size:.92rem;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.tabs .tab-list button svg{width:20px;height:20px;color:var(--p);flex:none}.tabs .tab-list button:hover{background:#e2e8ee}.tabs .tab-list button[aria-selected=true]{background:var(--a);color:#fff}.tabs .tab-list button[aria-selected=true] svg{color:#fff}.tabs .tab-list button:focus-visible{outline-offset:2px;outline:3px solid #187ec559}.tab-panel{max-width:900px;margin:0 auto 36px;padding:6px 0}.tabs.js .tab-panel{margin-bottom:0}.tab-panel .panel-title{margin:0 0 6px;font-size:1.6rem}.tab-panel .panel-sub{color:var(--p);margin:0 0 14px;font-weight:700}.tab-panel h4{color:var(--a);margin:24px 0 8px;font-size:1.35rem}.tab-panel ul{color:var(--t);padding-left:1.2em}.tab-panel li{margin-bottom:8px}.tab-panel p{color:var(--t)}@media (width<=640px){.tabs .tab-list button{white-space:normal;flex-basis:45%}}.connect-wrap{padding-top:24px}.connect-band{background:var(--d);color:#fff;border-radius:18px;grid-template-columns:1.1fr 1fr;align-items:center;gap:40px;padding:46px 44px;display:grid}.connect-band h2{color:#fff;margin:0 0 14px;font-size:clamp(1.6rem,3.2vw,2.2rem)}.connect-band p{color:#d6e2ec}.connect-band .kick{color:var(--a)}.btn.ghost-light{box-shadow:none;background:0 0;border:2px solid #fff6;color:#fff!important}.btn.ghost-light:hover{background:#ffffff0f;border-color:#fff}.connect-band .chat{color:var(--d);background:#fff;border-radius:14px;padding:20px;font-size:.95rem}.chat .msg{border-radius:12px;margin:0 0 10px;padding:12px 14px;line-height:1.45;position:relative}.chat .you{background:var(--bg);margin-left:18%}.chat .ai{background:#eef7e6;margin-right:12%}.chat small{letter-spacing:.06em;text-transform:uppercase;color:var(--t);margin-bottom:3px;font-size:.72rem;font-weight:700;display:block}.chat .chip{color:#3d7a1c;margin:0 0 4px;font-size:.75rem;font-weight:700;display:block}.chat .dots{gap:5px;display:none;position:absolute;bottom:14px;left:14px}.chat .dots i{background:#7a9a6a;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite nc-dot}.chat .dots i:nth-child(2){animation-delay:.15s}.chat .dots i:nth-child(3){animation-delay:.3s}@keyframes nc-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat.anim .msg{opacity:0;transition:opacity .45s,transform .45s;transform:translateY(10px)}.chat.anim .msg.show{opacity:1;transform:none}.chat.anim .msg.typing .txt,.chat.anim .msg.typing .chip{visibility:hidden}.chat.anim .msg.typing .dots{display:flex}.chat .replay{font:inherit;color:var(--p);cursor:pointer;background:0 0;border:0;margin:4px 0 0 auto;padding:4px;font-size:.82rem;font-weight:700;display:block}.chat .replay[hidden]{display:none}@media (width<=860px){.connect-band{grid-template-columns:1fr;padding:32px 22px}}.projects-band{background-blend-mode:multiply;background:#c9dcec url(/images/bg-pattern.webp);padding:64px 0 60px;position:relative}.projects-band:before,.projects-band:after{content:"";background:radial-gradient(circle, #187ec5 3px, transparent 3.5px) 0 0/14px 14px repeat-x, linear-gradient(var(--d), var(--d)) 0 11px/100% 3px no-repeat;height:14px;position:absolute;left:0;right:0}.projects-band:before{top:0}.projects-band:after{bottom:0;transform:scaleY(-1)}.projects-band h2{text-align:center;margin:0 0 30px;font-size:clamp(1.7rem,3.4vw,2.3rem)}.band-note{text-align:center;color:var(--d);margin:26px 0 18px}.carousel{padding:0 44px;position:relative}.car-track{scroll-snap-type:x mandatory;scrollbar-width:none;gap:18px;padding:6px 2px 10px;display:flex;overflow-x:auto}.car-track::-webkit-scrollbar{display:none}.car-item{scroll-snap-align:start;flex:0 0 calc(25% - 13.5px)}.car-item img{border-radius:8px;transition:transform .15s}.car-item:hover img{transform:translateY(-3px)}.car-btn{width:38px;height:38px;color:var(--d);cursor:pointer;background:0 0;border:0;padding:6px;position:absolute;top:calc(50% - 30px)}.car-btn svg{fill:none;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.car-btn.prev{left:0}.car-btn.next{right:0}.car-btn:hover{color:var(--p)}.car-dots{justify-content:center;gap:9px;margin-top:14px;display:flex}.car-dots span{background:#187ec566;border-radius:50%;width:9px;height:9px}.car-dots span.on{background:var(--d)}@media (width<=900px){.car-item{flex-basis:calc(50% - 9px)}}@media (width<=520px){.car-item{flex-basis:100%}.carousel{padding:0 34px}}.touch{color:#e3ecf2;background:linear-gradient(#0f3351d1,#0f3351e6),url(/images/bg-mountains.webp) 50%/cover no-repeat}.touch h2{color:#fff;margin:0 0 8px;font-size:clamp(1.8rem,4vw,2.6rem)}.touch h3{color:var(--p2);margin:0 0 22px;font-size:1.2rem}.touch .headshot{border:4px solid #ffffffd9;border-radius:50%;width:120px;height:120px;margin:0 0 18px}.touch .sig{color:#fff}
