:root{--accent:#2fc1ff;--accent-deep:#0ea5e9;--slate:#4c5253;--ink:#33373d;--ink-deep:#101218;--muted:#6b7280;--line:#e5e7eb;--bg:#fff;--bg-soft:#f6f7f9;--head:"Barlow", system-ui, sans-serif;--body:"Open Sans", system-ui, sans-serif;--wrap:1160px;--r:12px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.7}img{max-width:100%;display:block}a{color:var(--accent-deep)}h1,h2,h3,h4,h5{font-family:var(--head);color:var(--slate);margin:0 0 .5em;font-weight:600;line-height:1.15}h1{font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:700}h2{font-size:clamp(1.8rem,3.6vw,2.6rem)}h3{font-size:1.4rem}h4{font-size:1.15rem}h5{font-size:1.05rem}p{margin:0 0 1em}.strong{color:var(--slate);font-weight:600}.center{text-align:center}.sub{color:var(--muted);max-width:70ch;margin-inline:auto}.narrow{max-width:760px;margin-inline:auto}.big{font-size:1.15rem}.wrap{width:min(var(--wrap), 100% - 40px);margin-inline:auto}.eyebrow{font-family:var(--head);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-deep);margin:0 0 .4rem;font-size:.85rem;font-weight:600}.rule{background:var(--accent);border-radius:2px;width:56px;height:3px;margin:0 0 1.4rem;display:block}.rule.center{margin-inline:auto}.skip{z-index:100;background:#fff;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.btn{font-family:var(--head);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;border:2px solid #0000;border-radius:4px;padding:13px 28px;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .15s,background .15s,color .15s;display:inline-block}.btn:hover{transform:translateY(-1px)}.btn-accent{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-accent:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}.btn-primary{background:var(--slate);color:#fff;border-color:var(--slate)}.btn-primary:hover{background:var(--ink-deep);border-color:var(--ink-deep)}.btn-ghost{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border-color:#ffffffb3}.btn-ghost:hover{color:var(--slate);background:#fff}.ctas{flex-wrap:wrap;gap:12px;margin-top:1.4rem;display:flex}.topbar{background:var(--slate);color:#fff;text-align:center;font-size:.85rem}.topbar .wrap{padding:7px 0}.topbar a{color:#fff;text-decoration:none}.topbar a:hover{color:var(--accent)}header.site{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--line), 0 6px 20px #1012180f;background:#fffffff5;position:sticky;top:0}header.site .wrap{align-items:center;gap:28px;height:78px;display:flex}.brand img{width:150px;height:auto}nav.primary{gap:28px;margin-left:auto;display:flex}nav.primary a{color:var(--slate);font-family:var(--head);border-bottom:2px solid #0000;padding:6px 0;font-size:1rem;font-weight:600;text-decoration:none}nav.primary a:hover,nav.primary a.active{color:var(--accent-deep);border-color:var(--accent)}.hdr-cta{padding:10px 20px;font-size:.8rem}.menu-btn{color:var(--slate);cursor:pointer;background:0 0;border:0;padding:6px;display:none}.menu-backdrop{z-index:40;background:#1012188c;position:fixed;inset:0}.menu-panel{display:none}@media (width<=860px){nav.primary,.hdr-cta{display:none}.menu-btn{display:inline-flex}header.site .wrap{gap:14px;height:68px}.brand img{width:120px}.menu-panel{background:var(--slate);z-index:45;flex-direction:column;gap:4px;width:min(320px,85vw);padding:86px 24px 24px;transition:transform .25s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.menu-panel.is-open{transform:none}.menu-panel a{color:#fff;font-family:var(--head);border-bottom:1px solid #ffffff1f;padding:12px 0;font-size:1.25rem;font-weight:600;text-decoration:none}.menu-panel a.active{color:var(--accent)}.menu-panel .btn{text-align:center;border:0;margin-top:20px;font-size:.9rem}}.hero{color:#fff;background:var(--ink-deep);align-items:center;min-height:78vh;display:grid;position:relative;overflow:hidden}.hero-bg,.page-head-bg,.cta-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after,.page-head:after,.cta-band:after{content:"";background:linear-gradient(90deg,#101218c7 0%,#10121873 60%,#10121840 100%);position:absolute;inset:0}.hero-inner{z-index:1;max-width:680px;padding:100px 0;position:relative}.hero h1{color:#fff;text-shadow:0 3px 20px #0006}.hero .lede{color:#e6e8ec;max-width:56ch;font-size:1.2rem}.page-head{color:#fff;background:var(--ink-deep);align-items:center;min-height:300px;display:grid;position:relative;overflow:hidden}.page-head .wrap{z-index:1;position:relative}.page-head h1{color:#fff;margin:0}.welcome,.spec,.story{padding:96px 0}.spec,.project-band{background:var(--bg-soft)}.two-col{grid-template-columns:1fr 1.15fr;align-items:center;gap:64px;display:grid}.two-col.reverse{grid-template-columns:1.15fr 1fr}.two-col.reverse .photo{order:2}.photo{margin:0}.photo img{border-radius:var(--r);width:100%;box-shadow:0 24px 60px #10121829}.welcome p,.story p{color:var(--muted)}.call{flex-direction:column;margin-top:1.4rem;display:flex}.call-label{font-family:var(--head);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.85rem;font-weight:600}.call-num{font-family:var(--head);color:var(--slate);font-size:2rem;font-weight:700;text-decoration:none}.call-num:hover{color:var(--accent-deep)}.cta-band{color:#fff;text-align:center;background:var(--ink-deep);padding:96px 0;position:relative;overflow:hidden}.cta-band .wrap{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.cta-band h2{color:#fff;font-size:clamp(2rem,4vw,3rem)}.cta-band .rule{margin:0 auto 1.2rem}.cta-band:after{background:#10121899}.team-band{padding:96px 0}.logo-grid{grid-template-columns:repeat(6,1fr);gap:20px;margin:40px 0 0;padding:0;list-style:none;display:grid}.logo-grid li{border:1px solid var(--line);border-radius:var(--r);text-align:center;background:#fff;flex-direction:column;align-items:center;gap:10px;padding:18px;transition:transform .2s,box-shadow .2s;display:flex}.logo-grid li:hover{transform:translateY(-4px);box-shadow:0 16px 36px #1012181a}.logo-grid img{aspect-ratio:1;object-fit:contain;width:100%}.logo-grid span{font-family:var(--head);color:var(--slate);font-size:.9rem;font-weight:600}.testimonials{background:var(--bg-soft);padding:96px 0}.quotes{grid-template-columns:1fr 1fr;gap:28px;margin:40px 0 0;padding:0;list-style:none;display:grid}.quotes li{border-radius:var(--r);border-top:4px solid var(--accent);background:#fff;padding:36px;box-shadow:0 12px 36px #10121812}.quotes blockquote{margin:0 0 1.2rem}.quotes blockquote p{color:var(--ink);margin:0;font-size:1.1rem;font-style:italic}.quotes footer{flex-direction:column;display:flex}.quotes footer strong{font-family:var(--head);color:var(--slate)}.quotes footer span{color:var(--muted);font-size:.95rem}.project-band{padding:96px 0}.project-band p{color:var(--muted);font-size:1.08rem}.project-band .btn{margin-top:10px}.team{padding:96px 0}.people{text-align:center;grid-template-columns:repeat(4,1fr);gap:28px;margin:40px 0 0;padding:0;list-style:none;display:grid}.people img{aspect-ratio:1;object-fit:cover;border-radius:var(--r);width:100%;margin-bottom:14px;box-shadow:0 12px 30px #1012181f}.people h4{margin:0 0 .2em}.people p{color:var(--muted);margin:0;font-size:.95rem}.steps{padding:96px 0 72px}.step-list{counter-reset:s;grid-template-columns:repeat(4,1fr);gap:24px;margin:40px 0 0;padding:0;list-style:none;display:grid}.step-list li{background:var(--bg-soft);border-radius:var(--r);border-left:4px solid var(--accent);padding:28px 24px}.step-n{font-family:var(--head);color:var(--accent);margin-bottom:8px;font-size:2rem;font-weight:700;line-height:1;display:block}.step-list h5{margin:0;font-size:1.1rem}.portal{padding:24px 0 96px}.features{grid-template-columns:1fr 1fr;gap:32px;margin:0;padding:0;list-style:none;display:grid}.features>li{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:36px;box-shadow:0 12px 36px #1012180f}.features h2{font-size:1.5rem}.features>li>p{color:var(--muted)}.features ul{color:var(--ink);margin:0;padding-left:20px}.features ul li{margin-bottom:4px}.feat-icon{width:64px;height:64px;color:var(--accent-deep);background:#e7f7ff;border-radius:50%;place-items:center;margin-bottom:16px;display:inline-grid}.partners{padding:96px 0 72px}.family{grid-template-columns:repeat(3,1fr);gap:28px;margin:48px 0 0;padding:0;list-style:none;display:grid}.family li{background:var(--bg-soft);border-radius:var(--r);border-top:4px solid var(--accent);padding:32px}.family h3 a{color:var(--slate);text-decoration:none}.family h3 a:hover{color:var(--accent-deep)}.family p{color:var(--muted);margin:0}.contact{padding:96px 0}.contact-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:56px;margin-top:40px;display:grid}.contact h3{margin-bottom:1rem}.cf{border:1px solid var(--line);border-radius:var(--r);background:#fff;flex-direction:column;gap:16px;padding:32px;display:flex;box-shadow:0 16px 40px #10121814}.cf label{color:var(--slate);flex-direction:column;gap:6px;font-size:.92rem;font-weight:600;display:flex}.cf input,.cf select,.cf textarea{font:inherit;color:var(--ink);background:#fbfcfd;border:1px solid #cfd4da;border-radius:8px;padding:12px 14px}.cf input:focus,.cf select:focus,.cf textarea:focus{outline:2px solid var(--accent);border-color:var(--accent)}.cf-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.cf-hp{position:absolute;left:-9999px}.cf-err{color:#b42318;margin:0}.cf .btn{border:0;align-self:flex-start}.cf-done{text-align:center;padding:48px 32px}.cf-done strong{font-family:var(--head);color:var(--slate);font-size:1.8rem}.info{grid-template-columns:max-content 1fr;gap:12px 20px;margin:0 0 24px;display:grid}.info dt{font-family:var(--head);color:var(--slate);font-weight:600}.info dd{color:var(--muted);margin:0}.info dd a{color:var(--ink);font-weight:600;text-decoration:none}.info dd a:hover{color:var(--accent-deep)}.map{border-radius:var(--r);border:0;width:100%;height:300px;box-shadow:0 12px 30px #1012181a}.site-foot{background:var(--slate);color:#d7dadc;padding:72px 0 0}.foot-grid{grid-template-columns:1.5fr 1fr 1.2fr;gap:48px;display:grid}.foot-logo{border-radius:4px;width:170px;height:auto;margin-bottom:18px}.site-foot .strong{color:#fff;font-family:var(--head);font-size:1.2rem}.site-foot .motto{color:var(--accent);font-style:italic}.site-foot h4{color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:1.15rem}.site-foot ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.site-foot a{color:#fff;text-decoration:none}.site-foot a:hover{color:var(--accent)}.site-foot .btn{border:0;margin-top:8px}.foot-base{background:var(--ink-deep);color:#aeb3b8;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin-top:56px;padding:16px 0;font-size:.85rem}@media (width<=960px){.logo-grid{grid-template-columns:repeat(3,1fr)}.people,.step-list{grid-template-columns:repeat(2,1fr)}.family{grid-template-columns:1fr}}@media (width<=820px){.two-col,.two-col.reverse,.contact-grid,.quotes,.features{grid-template-columns:1fr;gap:36px}.two-col.reverse .photo{order:0}.foot-grid{grid-template-columns:1fr;gap:32px}.welcome,.spec,.story,.team-band,.testimonials,.project-band,.team,.steps,.partners,.contact,.cta-band{padding:64px 0}.hero{min-height:64vh}.page-head{min-height:220px}}@media (width<=560px){.cf-row{grid-template-columns:1fr}.cf{padding:22px}.logo-grid{grid-template-columns:repeat(2,1fr)}.people,.step-list{grid-template-columns:1fr}.info{grid-template-columns:1fr;gap:4px 0}.info dt{margin-top:10px}}
