[hidden]{display:none!important}
:root{--ink:#07214a;--navy:#061d40;--blue:#075bd7;--cyan:#00bce8;--pale:#edf6fc;--muted:#536478;--line:#d8e3ed;--white:#fff;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00a5c7;outline-offset:4px}.skip{position:absolute;left:12px;top:-100px;z-index:1000;background:white;padding:12px}.skip:focus{top:12px}.wrap{max-width:1240px;margin:auto;padding:0 40px}.topbar{background:var(--navy);color:#ccdfef;font-size:.875rem}.topbar .wrap{display:flex;align-items:center;justify-content:space-between;min-height:34px;gap:16px}.topbar a{color:white}.site-header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:100px;gap:32px}.brand{display:flex;align-items:center;gap:12px}.brand img{height:65px;width:72px;object-fit:contain}.brand-name{font-size:1.25rem;font-weight:800;letter-spacing:-.035em}.brand-sub{display:block;font-size:.75rem;font-weight:400;letter-spacing:0;max-width:235px;line-height:1.35;margin-top:4px;color:var(--muted)}.nav{display:flex;align-items:center;gap:28px;font-size:.9375rem}.nav>a:not(.button){padding:12px 0;border-bottom:2px solid transparent}.nav>a[aria-current=page]{color:var(--blue);border-color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--blue);border-radius:5px;background:var(--blue);color:white;padding:15px 22px;font-size:.9375rem;font-weight:600;line-height:1.25;min-height:48px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#03479f;border-color:#03479f}.button.outline{background:transparent;color:var(--ink);border-color:#a8bfd4}.button.outline:hover{background:var(--pale)}.button.light{background:white;color:var(--ink);border-color:white}.menu-button{display:none;background:transparent;border:1px solid var(--line);padding:10px;border-radius:5px}.eyebrow{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;display:flex;align-items:center;gap:12px;color:var(--blue);margin:0 0 20px}.eyebrow:before{content:'';height:2px;width:24px;background:var(--cyan)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.7rem,4.9vw,4.6rem);letter-spacing:-.055em;line-height:1.07;font-weight:750;margin-bottom:25px}h2{font-size:clamp(2rem,3vw,2.7rem);letter-spacing:-.045em;line-height:1.15;margin-bottom:22px}h3{font-size:1.25rem;line-height:1.3;letter-spacing:-.02em;margin-bottom:14px}p{font-size:1rem;line-height:1.75;color:var(--muted);margin-bottom:20px}.hero{position:relative;background:var(--navy);color:white;overflow:hidden}.hero .hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,49,.98) 0%,rgba(4,22,49,.95) 26%,rgba(4,22,49,.63) 48%,rgba(4,22,49,0) 82%)}.hero-content{position:relative;z-index:1;padding:83px 0 92px;max-width:610px}.hero .eyebrow{color:#61d6f4}.hero h1 span{color:#57d6f7}.hero p{color:#b9cfe0;max-width:525px;font-size:1.0625rem}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero .outline{color:white;border-color:#6e859c}.hero .outline:hover{background:#17385b}.hero-note{display:flex;gap:25px;align-items:center;margin-top:40px;padding-top:24px;border-top:1px solid #284463;font-size:.875rem;color:#c6daec}.section{padding:85px 0}.section.soft{background:#f3f8fc}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head h2{max-width:630px;margin-bottom:0}.section-head p{max-width:385px;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.service-card{background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}.service-card:hover{border-color:#92c4ea;box-shadow:0 12px 26px #09336b0b}.service-art{height:170px;position:relative;overflow:hidden;background:#e8f4fb}.service-art img{position:absolute;width:200%;height:200%;max-width:none;object-fit:fill}.service-art.software img{left:0;top:0}.service-art.marketing img{left:-100%;top:0}.service-art.web img{left:0;top:-100%}.service-art.analytics img{left:-100%;top:-100%}.service-card-body{padding:25px 23px;display:flex;flex-direction:column;flex:1}.service-card .number{font-size:.8125rem;font-weight:600;color:#68849c;letter-spacing:.06em;margin-bottom:16px}.service-card h3{font-size:1.1875rem}.service-card p{font-size:.9375rem;line-height:1.65}.text-link{color:var(--blue);font-size:.9375rem;font-weight:600;display:inline-block;padding:5px 0;border-bottom:1px solid #99bfe7;align-self:flex-start;margin-top:auto}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split-copy p{max-width:520px}.image-frame{background:var(--pale);border-radius:6px;overflow:hidden}.image-frame img{width:100%;aspect-ratio:1.22;object-fit:cover}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:42px}.process-item{border-top:1px solid var(--line);padding-top:23px}.process-num{font-size:2.25rem;font-weight:700;letter-spacing:-.04em;color:#00a2ce;margin-bottom:18px}.cta-section{background:var(--blue);color:white;padding:62px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner h2{max-width:640px;margin-bottom:12px}.cta-inner p{color:#d7e9ff;max-width:670px;margin-bottom:0}.page-intro{background:var(--pale);padding:65px 0 70px}.breadcrumbs{font-size:.875rem;color:#688094;display:flex;gap:12px;margin-bottom:40px;flex-wrap:wrap}.breadcrumbs a{color:var(--blue)}.page-intro h1{font-size:clamp(2.5rem,4vw,3.8rem);max-width:900px}.page-intro p{max-width:830px;font-size:1.125rem;margin-bottom:0}.page-split{display:grid;grid-template-columns:1.2fr .8fr;gap:75px;align-items:start}.reading{max-width:700px}.reading section{margin-bottom:35px}.reading h2{font-size:1.65rem;letter-spacing:-.03em;margin-bottom:12px}.service-aside{background:var(--pale);border:1px solid var(--line);border-radius:7px;overflow:hidden;position:sticky;top:130px}.service-aside .service-art{height:290px}.aside-body{padding:30px}.aside-body p{font-size:.9375rem}.aside-body nav a{display:block;font-size:.9375rem;padding:15px 0;border-bottom:1px solid var(--line);color:var(--blue)}.aside-body nav a:last-child{border:0}.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.about-values>div{background:var(--pale);padding:30px;border-top:3px solid #00b4df}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.contact-list{display:grid;gap:24px}.contact-block{border-bottom:1px solid var(--line);padding-bottom:24px}.contact-block h2{font-size:.8125rem;letter-spacing:.13em;text-transform:uppercase;color:#658097;margin-bottom:12px}.contact-block>a{display:block;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;color:var(--ink);word-break:break-word}.contact-block address{font-style:normal;font-size:1.125rem;line-height:1.65}.contact-block p{margin-top:12px;margin-bottom:12px;font-size:.9375rem}.form-panel{background:var(--pale);border:1px solid var(--line);border-radius:7px;padding:36px}.form-panel h2{font-size:1.75rem}.form-panel p{font-size:.9375rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field.full{grid-column:1/-1}.field label{display:block;font-size:.875rem;font-weight:600;margin-bottom:9px}.field label span{color:#728292;font-weight:400}input,select,textarea{background:white;border:1px solid #b5c8da;padding:13px 14px;border-radius:4px;min-height:47px;width:100%;color:var(--ink);font-size:1rem}textarea{resize:vertical;min-height:130px}.form-panel .button{margin-top:23px}.form-status{font-size:.875rem;margin-top:17px;line-height:1.5}.privacy-note{margin-top:18px;font-size:.8125rem!important;line-height:1.55!important}.privacy-note a{text-decoration:underline}.faq{margin-top:45px}.faq h2{font-size:1.65rem}details{border-top:1px solid var(--line);padding:20px 0}summary{font-size:1rem;font-weight:600;cursor:pointer;line-height:1.5}details p{margin-top:15px;margin-bottom:0}.footer{background:var(--navy);color:white;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:65px}.footer-brand{font-size:1.35rem;font-weight:750;margin-bottom:12px}.footer p,.footer address{color:#b8cbe0;font-size:.9375rem;line-height:1.7;font-style:normal;max-width:320px}.footer h2{font-size:.875rem;letter-spacing:.07em;margin-bottom:20px}.footer nav{display:grid;gap:13px;font-size:.9375rem;color:#b8cbe0}.footer nav a:hover,.footer a:hover{color:white}.footer-bottom{border-top:1px solid #284160;margin-top:50px;padding-top:23px;display:flex;justify-content:space-between;gap:16px;font-size:.8125rem;color:#94acc7}.empty-page{padding:100px 0;text-align:center}.privacy-page{max-width:850px}.privacy-page h2{font-size:1.6rem;margin-top:32px}.mobile-contact{display:none}
@media(min-width:1500px){.hero-content{padding-top:108px;padding-bottom:108px}}@media(max-width:1050px){.wrap{padding:0 28px}.nav{gap:18px}.brand-sub{max-width:175px}.brand-name{font-size:1.1rem}.hero-content{max-width:560px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-art{height:240px}.split,.page-split{gap:40px}.footer-grid{gap:32px}.contact-layout{gap:35px}.form-panel{padding:26px}}@media(max-width:760px){.wrap{padding:0 21px}.topbar .wrap{min-height:32px;font-size:.75rem}.topbar .location-top{display:none}.header-inner{min-height:82px;gap:12px}.brand img{height:52px;width:57px}.brand-sub{max-width:210px;font-size:.6875rem}.brand-name{font-size:1.0625rem}.menu-button{display:block;font-size:.875rem}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 21px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #071c4010;align-items:stretch}.nav.is-open{display:flex;flex-direction:column;gap:4px}.nav>a:not(.button){padding:13px 0}.nav .button{margin-top:10px}.hero-content{padding:56px 0 58px;max-width:100%}.hero .hero-image{object-position:67% center;opacity:.5}.hero:after{background:linear-gradient(90deg,#041631ed,#0416319e)}.hero h1{max-width:560px;font-size:3.05rem}.hero p{font-size:1rem;max-width:490px}.hero-note{gap:17px;font-size:.8125rem;flex-wrap:wrap;margin-top:28px}.eyebrow{font-size:.75rem}.section{padding:58px 0}.section-head{display:block;margin-bottom:30px}.section-head h2{margin-bottom:20px}.section-head p{max-width:100%}.service-grid{gap:16px}.service-art{height:170px}.service-card-body{padding:23px 18px}.service-card h3{font-size:1.125rem}.split,.page-split,.contact-layout{grid-template-columns:1fr;gap:35px}.image-frame img{aspect-ratio:1.5}.process{gap:24px;grid-template-columns:1fr}.process-item{display:grid;grid-template-columns:50px 1fr;gap:5px 20px}.process-num{grid-row:1/3}.process-item h3{margin-bottom:4px}.process-item p{margin-bottom:0}.cta-inner{display:block}.cta-inner .button{margin-top:25px}.cta-section{padding:48px 0}.page-intro{padding:36px 0 45px}.breadcrumbs{margin-bottom:26px}.page-intro p{font-size:1rem}.page-intro h1{font-size:2.7rem}.service-aside{position:static}.service-aside .service-art{height:330px}.about-values{grid-template-columns:1fr;gap:18px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer p{max-width:500px}.footer-bottom{flex-wrap:wrap;margin-top:35px}.form-grid{gap:17px}.contact-block>a{font-size:1.2rem}.form-panel{padding:25px}.mobile-contact{display:block}}@media(max-width:420px){.brand-sub{max-width:165px}.hero h1{font-size:2.6rem}.service-grid{grid-template-columns:1fr}.service-art{height:230px}.service-card-body{padding:26px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.actions .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.form-panel{padding:21px}.service-aside .service-art{height:230px}.page-intro h1{font-size:2.35rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Prominent CUSP brand header */
.header-inner{min-height:120px;gap:24px}
.brand img{width:96px;height:88px;flex-shrink:0}
.brand-name{font-size:1.75rem;font-weight:800;letter-spacing:-.035em;line-height:1.15}
.brand-sub{font-size:.9375rem;font-weight:500;line-height:1.4;color:#244566;max-width:345px;margin-top:7px}
.nav{gap:22px}
@media(max-width:1150px){.header-inner{gap:18px}.brand-name{font-size:1.5rem}.brand img{width:83px;height:77px}.brand-sub{max-width:290px;font-size:.875rem}.nav{gap:17px}.nav .button{padding:13px 16px}}
@media(max-width:980px){.menu-button{display:block;font-size:.9375rem}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 28px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #071c4010;align-items:stretch}.nav.is-open{display:flex;flex-direction:column;gap:4px}.nav>a:not(.button){padding:13px 0}.nav .button{margin-top:10px}.brand-sub{max-width:360px}.header-inner{min-height:112px}}
@media(max-width:760px){.header-inner{min-height:112px;gap:12px}.brand{gap:11px}.brand img{width:72px;height:66px}.brand-name{font-size:1.4375rem}.brand-sub{font-size:.8125rem;max-width:235px;line-height:1.35;margin-top:6px}.nav{padding:20px 21px}.service-aside{top:135px}}
@media(max-width:420px){.header-inner{min-height:114px}.brand img{width:60px;height:56px}.brand-name{font-size:1.1875rem}.brand-sub{font-size:.8125rem;max-width:175px}.menu-button{padding:10px 8px;font-size:.875rem}}

/* Compact navigation with direct service links */
.site-header .wrap{max-width:1200px}
.header-inner{min-height:104px;gap:18px}
.brand img{width:90px;height:82px}
.brand-name{font-size:1.4375rem;white-space:nowrap}
.brand-sub{font-size:.875rem;max-width:235px;white-space:normal;margin-top:5px}
.nav{gap:12px;font-size:.875rem;flex-shrink:0}
.nav>a:not(.button){padding:11px 0;white-space:nowrap}
@media(max-width:1199px){.menu-button{display:block;font-size:.9375rem}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 28px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #071c4010;align-items:stretch;flex-shrink:1}.nav.is-open{display:flex;flex-direction:column;gap:4px}.nav>a:not(.button){padding:13px 0}.brand-sub{max-width:340px}.header-inner{min-height:104px}}
@media(max-width:760px){.brand img{width:72px;height:66px}.brand-name{font-size:1.375rem}.brand-sub{font-size:.8125rem;max-width:235px}.nav{padding:18px 21px}.header-inner{min-height:102px}}
@media(max-width:420px){.brand img{width:60px;height:56px}.brand-name{font-size:1.1875rem}.brand-sub{font-size:.8125rem;max-width:175px}.header-inner{min-height:106px}}

/* Services disclosure navigation */
.nav{gap:26px;font-size:.9375rem}
.services-dropdown{position:relative;padding:0;border:0}
.services-dropdown summary{padding:11px 0;cursor:pointer;font-size:inherit;font-weight:400;white-space:nowrap;border-bottom:2px solid transparent}
.services-dropdown summary.active,.services-dropdown[open] summary{color:var(--blue);border-color:var(--blue)}
.services-dropdown summary:focus-visible{outline:3px solid #00a5c7;outline-offset:4px}
.services-menu{position:absolute;top:100%;left:-20px;width:285px;background:white;border:1px solid var(--line);border-radius:6px;box-shadow:0 12px 30px #071c401a;padding:10px;z-index:40}
.services-menu a{display:block;padding:12px 13px;font-size:.9375rem;line-height:1.4;border-radius:4px;color:var(--ink)}
.services-menu a:hover,.services-menu a[aria-current=page]{background:var(--pale);color:var(--blue)}
@media(max-width:1199px){.nav{gap:4px}.services-dropdown summary{padding:13px 0}.services-menu{position:static;width:100%;border:0;box-shadow:none;border-radius:4px;background:var(--pale);padding:8px 10px}.services-menu a:hover{background:white}}

/* Marketing and optional analytics */
[hidden]{display:none!important}
.hero-call{color:#fff;font-weight:700;align-self:center;text-underline-offset:4px}
.analytics-settings{background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;padding:8px}
.analytics-choice{position:fixed;bottom:16px;left:16px;right:16px;max-width:640px;margin:auto;padding:24px;background:white;color:#061d40;box-shadow:0 4px 32px #0004;border:1px solid #d0dce8;border-radius:12px;z-index:1000}
.analytics-choice p{margin:0 0 16px}.analytics-choice .outline{color:#061d40;border-color:#061d40}
.analytics-choice .actions{flex-wrap:wrap}
@media(max-width:480px){.analytics-choice{padding:16px;max-height:80vh;overflow:auto}.hero-call{width:100%}}
