/* Shared typography and responsive layout for the two Stitch pages. */
:root{--page-gutter:32px;--section-space:72px;--panel-space:32px;--layout-gap:32px}
header{transition:box-shadow .25s,background-color .25s}header.is-scrolled{box-shadow:0 5px 24px #003d9b12!important;background:rgba(248,249,255,.98)!important}header nav a{position:relative;transition:color .2s,background-color .2s}header nav a::after{content:'';position:absolute;bottom:0;left:12%;right:12%;height:2px;background:#0052cc;transform:scaleX(0);transition:transform .25s}header nav a:hover::after,header nav a.nav-active::after{transform:scaleX(1)}header nav a.nav-active{color:#003d9b!important;background:#e5eeff;border-radius:4px}header [aria-current=page]{box-shadow:0 0 0 3px #b2c5ff}.mobile-nav a{min-height:36px;display:flex;align-items:center}.motion-cta{position:relative;overflow:hidden}.motion-cta::after{content:'';position:absolute;inset:-50% auto -50% -70%;width:35%;background:linear-gradient(90deg,transparent,#ffffff30,transparent);transform:rotate(22deg);transition:left .55s;pointer-events:none}.motion-cta:hover::after,.motion-cta:focus-visible::after{left:140%}
body{font-family:Inter,'Segoe UI',sans-serif;line-height:1.6;overflow-x:clip}
.site-brand-logo{width:78px;height:58px;object-fit:contain;object-position:left center;display:block}.footer-brand-logo{width:110px;height:64px;object-fit:contain;object-position:left center;display:block}
.contact-email,footer .md\:col-span-3 a[href^="mailto:"]{font-size:12px!important;letter-spacing:0!important}.contact-email span{font-size:12px!important}
h1,h2,h3{text-wrap:balance;letter-spacing:-.025em}
h1.text-display-hero{font-size:clamp(34px,4.3vw,56px)!important;line-height:1.12!important;font-weight:800}
h2.text-headline-lg{font-size:clamp(28px,3vw,40px)!important;line-height:1.2!important;font-weight:700}
h2.text-headline-md,h3.text-headline-md{font-size:clamp(22px,2.2vw,28px)!important;line-height:1.28!important}
h3.text-headline-sm{font-size:20px;line-height:1.35}
p{line-height:1.65}.text-body-lg{font-size:18px;line-height:1.65}.text-body-sm{line-height:1.55}.text-label-caps{line-height:1.5;letter-spacing:.065em}
.grid>*{min-width:0}img{max-width:100%}input,textarea,select{max-width:100%;min-width:0}input:not([type=radio]):not([type=checkbox]),select{min-height:46px}input[type=radio],input[type=checkbox]{flex-shrink:0}label{line-height:1.5}button,a[data-path=apply-now]{min-height:44px}header>div>a:first-child{flex-shrink:0;text-decoration:none}header>div{gap:16px!important}footer a{overflow-wrap:anywhere;min-width:0}footer .md\:col-span-3{grid-column:span 4/span 4}footer .md\:col-span-4{grid-column:span 3/span 3}
.application-page .sticky.top-20{position:relative;top:0;z-index:1}.application-page #aca-application-form>section>div:first-child{gap:12px;align-items:flex-start}.application-page #aca-application-form>section>div:first-child>div{align-items:flex-start}.application-page #aca-application-form>section>div:first-child>div>span{flex-shrink:0}.application-page #aca-application-form label{font-size:14px}.application-page #aca-application-form .md\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:1024px) and (max-width:1199px){header a[href^='tel:']{display:none!important}header nav a{padding-left:10px!important;padding-right:10px!important}}
@media(max-width:1023px){.mobile-nav{display:flex;justify-content:center;gap:24px;padding:10px 16px;background:#eff4ff;font-size:13px}.mobile-nav a{white-space:nowrap;padding:4px 0}header+main{padding-top:122px!important}html{scroll-padding-top:138px}section{scroll-margin-top:138px}header>div{height:76px!important}footer .md\:col-span-5,footer .md\:col-span-3,footer .md\:col-span-4{grid-column:1/-1}footer .md\:grid-cols-12{grid-template-columns:1fr 1fr}footer .md\:col-span-3,footer .md\:col-span-4{grid-column:auto}.py-space-4xl{padding-top:64px!important;padding-bottom:64px!important}}
@media(max-width:639px){header>div{padding:0 16px!important;gap:8px!important}header>div>a:first-child{gap:8px!important}header .text-headline-sm{font-size:13px!important}header .text-label-caps{font-size:10px!important}header a[data-path=apply-now]{padding:10px 12px!important;font-size:13px!important}.mobile-nav{justify-content:space-between;gap:12px;font-size:12px;padding:8px 16px}header+main{padding-top:116px!important}.px-gutter-desktop{padding-left:20px!important;padding-right:20px!important}.py-space-3xl,.py-space-4xl{padding-top:44px!important;padding-bottom:44px!important}.pb-space-4xl{padding-bottom:44px!important}.pt-space-2xl{padding-top:32px!important}.gap-space-2xl{gap:28px!important}.p-space-xl{padding:20px!important}.text-body-lg{font-size:16px!important}.text-headline-sm{font-size:18px}.application-page h1{font-size:32px!important}.application-page #aca-application-form>section>div:first-child>span{display:none}.application-page #aca-application-form .md\:grid-cols-4{grid-template-columns:1fr}.application-page #aca-application-form .sm\:grid-cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}.application-page #aca-application-form label{min-height:30px}.application-page #aca-application-form .font-label-lg{font-size:14px}.application-page .sticky.top-20{padding:14px 20px}.application-page .sticky.top-20 .text-headline-sm{font-size:15px}.application-page .sticky.top-20 .flex{flex-wrap:wrap}footer .md\:grid-cols-12{grid-template-columns:1fr}footer .md\:col-span-3,footer .md\:col-span-4{grid-column:1/-1}footer .pt-space-3xl{padding-top:40px!important}.home-page .h-96{height:300px}.home-page h1{font-size:36px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* One spacing rhythm across homepage, application, and footer. */
@media(max-width:639px){.home-page .announcement-bar{margin-top:16px!important}header+main{padding-top:116px!important}html{scroll-padding-top:138px}}
body section{scroll-margin-top:0!important}
body .px-gutter-desktop{padding-inline:var(--page-gutter)!important}
body .py-space-3xl,body .py-space-4xl{padding-block:var(--section-space)!important}
body .pt-space-3xl{padding-top:var(--section-space)!important}
body .pb-space-4xl{padding-bottom:var(--section-space)!important}
body .p-space-xl,body .p-space-2xl{padding:var(--panel-space)!important}
body .gap-space-2xl,body .gap-space-3xl{gap:var(--layout-gap)!important}
body .mb-space-3xl{margin-bottom:var(--layout-gap)!important}
body .pt-space-2xl{padding-top:clamp(32px,4vw,56px)!important}
body .pb-space-2xl{padding-bottom:32px!important}
header>div{padding-inline:var(--page-gutter)!important}
.home-page section .grid{row-gap:24px}
.application-page #aca-application-form{gap:24px!important}
.application-page #aca-application-form>section{gap:24px!important;margin:0}
.application-page #aca-application-form>section>div:first-child{padding-bottom:16px}
.application-page #aca-application-form .grid{row-gap:20px}
.application-page #aca-application-form .p-space-sm{padding:12px!important}
.application-page #aca-application-form textarea{padding:12px 14px;min-height:120px}
.application-page aside{padding-right:8px}
footer>div{padding-top:48px!important;padding-bottom:28px!important}
footer>div>div:last-child{padding-top:24px;border-top:1px solid #c3c6d6}
@media(min-width:1600px){:root{--section-space:80px;--panel-space:36px;--layout-gap:40px}}
@media(min-width:640px) and (max-width:1023px){:root{--page-gutter:28px;--section-space:56px;--panel-space:28px;--layout-gap:28px}}
@media(max-width:639px){:root{--page-gutter:20px;--section-space:40px;--panel-space:20px;--layout-gap:24px}header>div{padding-inline:16px!important}.mobile-nav{padding-inline:16px}.application-page #aca-application-form{gap:20px!important}.application-page #aca-application-form>section{gap:20px!important}.application-page #aca-application-form .grid{gap:12px}.application-page #aca-application-form>section>div:first-child{padding-bottom:8px}.home-page #apply-accelerator .p-space-2xl{padding:20px!important}footer>div{padding-top:36px!important;padding-bottom:24px!important}footer>div>div:last-child{align-items:flex-start;gap:16px}body .pb-space-2xl{padding-bottom:24px!important}}
@media(max-width:359px){:root{--page-gutter:16px;--panel-space:16px;--layout-gap:20px}.mobile-nav{gap:8px;font-size:11px}header>div>a:first-child>span{width:32px;height:32px}header>div>a:first-child{gap:6px!important}header .text-headline-sm{font-size:12px!important}header a[data-path=apply-now]{padding-inline:8px!important}}
