@font-face{font-family:"Michroma";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/michroma-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Saira";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/saira-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Saira";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/saira-latin-600-normal.woff2) format("woff2")}
/* Layout: the Canva template's look: gradient bands, tinted bands, wide display headings, square buttons. Single light look by choice. */
:root{--navy:#0A1660;--blue:#061BB0;--tint:#EBEFF8;--white:#fff;--black:#141828;--muted:#3E4768;--line:#CBD4EA;--soft:#E8EDFB;--amber:#E8891A;
--grad:linear-gradient(90deg,#6554D6 0%,#374BB7 50%,#003791 100%);
--display:"Michroma","Arial Black",Arial,sans-serif;--body:"Saira","Segoe UI",Arial,sans-serif;
--gl:max(20px,env(safe-area-inset-left,0px));--gr:max(20px,env(safe-area-inset-right,0px))}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--white);color:var(--black);font:400 1.1rem/1.6 var(--body);margin:0}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--navy)}
h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
h1,h2{font-family:var(--display);font-weight:400;line-height:1.16;text-wrap:balance}
h1{font-size:clamp(1.9rem,4.2vw,3.4rem)}
h2{font-size:clamp(1.45rem,2.9vw,2.4rem);color:var(--blue)}
h3{font:600 1.22rem/1.3 var(--body);color:var(--blue)}
a{color:inherit}
:focus-visible{outline:3px solid #7FA2FF;outline-offset:3px}
img,video{display:block;max-width:100%}
.wrap{max-width:1240px;margin-inline:auto;padding-left:var(--gl);padding-right:var(--gr)}
.band{padding-block:clamp(56px,7.5vw,100px)}
.grad{background:var(--grad);color:var(--white)}
.grad h2,.grad h3{color:var(--white)}
.tint{background:var(--tint)}
.center{text-align:center}
.center h2,.center p{margin-inline:auto}
.stack{display:grid;gap:14px;align-content:start}
.measure{max-width:68ch}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;z-index:20;background:var(--white);color:var(--blue);padding:8px 12px}

.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:var(--navy);color:var(--white)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:76px}
.brand{display:block}
.brand img{width:auto;height:44px}
.site-nav{display:flex;align-items:center;gap:clamp(14px,2vw,26px);font-weight:600;font-size:1rem}
.site-nav a{text-decoration:none;white-space:nowrap;padding-block:6px}
.site-nav a[aria-current="page"]{box-shadow:0 2px 0 var(--white)}
.menu{display:none}
.menu summary{list-style:none;cursor:pointer;font-weight:600;padding:8px 14px;border:2px solid var(--white)}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;left:0;right:0;top:100%;background:var(--navy);display:grid;padding:8px var(--gr) 16px var(--gl)}
.menu nav a{padding:12px 0;text-decoration:none;font-weight:600;border-top:1px solid rgba(255,255,255,.2)}
@media (max-width:1020px){.site-nav{display:none}.menu{display:block}}
@media (max-width:420px){.brand img{height:32px}}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 26px;border:2px solid var(--white);background:var(--white);color:var(--blue);font:600 .98rem var(--body);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;cursor:pointer;text-align:center}
.btn:hover{background:transparent;color:var(--white)}
.btn.ghost{background:transparent;color:var(--white)}
.btn.ghost:hover{background:var(--white);color:var(--blue)}
.btn.solid{background:var(--blue);border-color:var(--blue);color:var(--white)}
.btn.solid:hover{background:var(--navy);border-color:var(--navy)}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.center .actions{justify-content:center}

.hero .wrap{display:grid;gap:36px;align-items:center;padding-block:clamp(44px,6vw,84px)}
@media (min-width:1000px){.hero .wrap{grid-template-columns:minmax(0,11fr) minmax(0,10fr)}}
.hero-copy{display:grid;gap:16px;min-width:0}
.lead{font-weight:600;font-size:1.28rem;line-height:1.35}
.clip{width:100%;height:auto;aspect-ratio:16/9;background:var(--navy)}
.hero .clip{outline:1px solid rgba(255,255,255,.3)}
@media (max-width:999px){.hero .clip{order:2}}

.page-head{position:relative;isolation:isolate;color:var(--white);background:var(--navy);overflow:hidden}
.page-head>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.page-head::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,22,96,.94) 25%,rgba(6,40,170,.62) 100%)}
.page-head .wrap{padding-block:clamp(56px,8vw,112px);display:grid;gap:16px}
.page-head.plain{background:var(--grad)}
.page-head.plain::after{display:none}
.eyebrow{font-weight:600;letter-spacing:.04em}
.page-head p:not(.eyebrow){max-width:66ch}

.about{display:grid;background:var(--tint)}
@media (min-width:900px){.about{grid-template-columns:minmax(0,58fr) minmax(0,42fr)}}
.about-copy{padding:clamp(52px,7vw,100px) var(--gr) clamp(52px,7vw,100px) var(--gl);display:grid;gap:14px;align-content:center;min-width:0}
@media (min-width:900px){.about-copy{padding-left:max(var(--gl),calc((100vw - 1240px)/2 + 20px));padding-right:60px}}
.about figure{margin:0;min-height:280px;max-width:100%}
.about img{width:100%;height:100%;object-fit:cover}
.about.flip figure{order:-1}
@media (min-width:900px){.about.flip{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}.about.flip .about-copy{padding-left:60px;padding-right:max(var(--gr),calc((100vw - 1240px)/2 + 20px))}}

.caps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:34px 26px;margin-top:48px;text-align:left}
.caps li{display:grid;gap:8px;align-content:start}
.ill{width:100%;height:auto;background:var(--tint);padding:16px}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px;margin-top:44px}
.pillars li{display:grid;gap:10px;justify-items:center;align-content:start}
.wire{width:180px;height:auto;fill:none;stroke:var(--blue);stroke-width:1}
.pledge{font:400 clamp(1rem,1.9vw,1.4rem)/1.35 var(--display);color:var(--blue);margin-top:44px}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px 26px;margin-top:40px;counter-reset:s}
.steps li{counter-increment:s;display:grid;gap:8px;align-content:start;border-top:1px solid rgba(255,255,255,.55);padding-top:16px}
.steps h3::before{content:counter(s) ". "}
.tint .steps li,.plain .steps li{border-color:var(--line)}
.strip{margin:32px 0 0;max-width:100%}
.strip img{width:100%;height:clamp(160px,22vw,290px);object-fit:cover}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;margin-top:38px}
@media (min-width:820px){.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 44px}}
.stats dt{font:400 clamp(1.5rem,3.7vw,2.9rem)/1.15 var(--display);color:var(--blue)}
.stats dd{margin-top:8px}
.footnote{margin-top:32px;font-size:1rem}

.svc{display:grid;gap:14px 56px;padding-block:clamp(28px,4vw,48px);border-bottom:1px solid var(--line)}
.svc:first-child{padding-top:0}
.svc:last-child{border-bottom:0;padding-bottom:0}
@media (min-width:860px){.svc{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.verb{font-weight:600;color:var(--muted);margin-bottom:8px}
.svc h2{font-size:clamp(1.25rem,2.1vw,1.7rem)}
.ticks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 24px}
.ticks li{padding-left:18px;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.66em;width:8px;height:8px;background:var(--blue)}
.grad .ticks li::before{background:var(--white)}
.six{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:30px 44px;margin-top:38px}
.six>div{display:grid;gap:6px;align-content:start}
.mt{margin-top:38px}
.clip-block{display:grid;gap:34px;align-items:center}
@media (min-width:960px){.clip-block{grid-template-columns:minmax(0,10fr) minmax(0,11fr)}}
.case{display:grid;gap:14px 56px;padding-block:clamp(30px,4vw,50px);border-bottom:1px solid var(--line)}
.case:first-child{padding-top:0}
@media (min-width:860px){.case{grid-template-columns:minmax(0,6fr) minmax(0,6fr)}}
.tag{display:inline-block;background:var(--tint);color:var(--blue);font-weight:600;padding:4px 12px;margin-top:6px;justify-self:start}
.nums{display:flex;flex-wrap:wrap;gap:12px 36px}
.nums b{font:400 clamp(1.2rem,2.3vw,1.8rem)/1.2 var(--display);color:var(--blue);display:block}

.form-wrap{display:grid;gap:44px}
@media (min-width:940px){.form-wrap{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}}
form{display:grid;gap:18px;min-width:0}
.two{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.field{display:grid;gap:6px}
label{font-weight:600}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;color:var(--black);background:var(--white);border:2px solid #6B789E;padding:11px 12px;border-radius:0}
textarea{min-height:160px;resize:vertical}
.notice{padding:12px 14px;background:var(--tint);color:var(--blue);font-weight:600}
.rfp{background:var(--tint);padding:26px;display:grid;gap:12px;align-content:start}
.rfp h2{font-size:1.4rem}

.foot{background:var(--navy);color:var(--soft)}
.foot .wrap{display:flex;flex-wrap:wrap;gap:20px 48px;justify-content:space-between;align-items:center;padding-block:34px}
.foot .brand img{height:100px}
.foot address{font-style:normal}
.foot nav{display:flex;gap:6px 20px;flex-wrap:wrap;max-width:420px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

strong{font-weight:600}
.small{font-size:.98rem}
.policy{display:grid;gap:34px}
.policy h2{font-size:clamp(1.2rem,2vw,1.5rem)}
.policy a{overflow-wrap:anywhere}
.points{display:grid;margin-top:12px}
.points li{display:grid;gap:6px;padding-block:18px;border-top:1px solid var(--line)}
.points li:last-child{padding-bottom:0}
