@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/assets/fonts/open-sans-latin-wght.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/poppins-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --theme:#6878d6;--theme-hover:#4d61d6;--heading:#242a56;--text:#393a56;
  --band:#eff2ff;--white:#fff;--black:#000;--rule:#f5f5f5;
  --sans:"Open Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:"Poppins","Open Sans",system-ui,sans-serif;
  --pad:25px;--gap:40px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{display:flex;flex-direction:column;min-height:100vh;min-height:100svh;margin:0;font:400 16px/1.6 var(--sans);color:var(--text);background:var(--white);overflow-x:hidden}
main{flex:1 0 auto}
img,svg{display:block;max-width:100%}
ul{list-style:none;margin:0;padding:0}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1;color:var(--heading)}
a{color:var(--theme)}

.sprite{position:absolute;width:0;height:0;overflow:hidden}
.skip-link{position:absolute;left:8px;top:-60px;z-index:10;background:var(--heading);color:#fff;padding:10px 16px;border-radius:6px;text-decoration:none}
.skip-link:focus{top:8px}
:focus-visible{outline:3px solid var(--heading);outline-offset:3px}

/* header */
.site-header{position:absolute;inset:0 0 auto 0;z-index:2;display:flex;justify-content:center;padding:20px 20px 0}
.site-header img{width:120px;height:auto}

/* hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:100px 20px 80px;background:url(/assets/img/hero-bg.svg) center/cover no-repeat}
.hero-404{min-height:0}
.hero-inner{width:100%;max-width:1140px;text-align:center}
.hero h1{font-size:48px;color:var(--black);margin-bottom:20px}
.tagline{font:700 20px/1 var(--display);color:var(--black);margin-bottom:50px}

/* stats */
.stats{display:flex}
.stats li{flex:1 1 0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 10px}
.stat-n{font-weight:600;font-size:48px;line-height:1.4;color:var(--black);font-variant-numeric:tabular-nums}
.stat-l{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--black);line-height:1.6}
.stats-box{border:1px solid var(--black);border-radius:16px;padding:40px 0;box-shadow:0 24px 96px -24px rgba(0,0,0,.13);background:rgba(255,255,255,0)}
.stats-box li+li{border-left:1px solid var(--black)}
.hero .stats-box{max-width:990px;margin:0 auto}

/* sections */
section:not(.hero){padding:50px 20px}
.band{background:var(--band)}
.plain{background:var(--white)}
h2{font-size:42px;text-align:center;margin:0 auto}
.container{max-width:1140px;margin-left:auto;margin-right:auto}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:var(--gap)}
.card{background:var(--white);padding:40px;transition:box-shadow .3s}
.card:hover{box-shadow:0 10px 30px 0 rgba(208,216,234,.3)}
.card-icon{width:42px;height:42px;fill:var(--theme);margin-bottom:16px}
.card h3,.achievements h3{font-size:20px;margin-bottom:16px}
.card p{margin-bottom:0}

.achievements{display:grid;grid-template-columns:repeat(3,1fr);row-gap:40px;margin-top:var(--gap)}
.achievements li{padding:0 40px}
.achievements p{margin-bottom:0}

.band-tight{padding-bottom:50px}
.employers{display:grid;grid-template-columns:repeat(6,1fr);margin-top:var(--gap);border-top:1px solid var(--rule);padding-bottom:20px}
.employers li{display:flex;align-items:center;justify-content:center;padding:25px 20px;border-right:1px solid var(--rule)}
.employers img{width:100%;max-width:170px;height:auto}

#fun-facts+.stats-box{margin-top:var(--gap)}

.contact h2{margin-bottom:var(--gap)}
.social{display:flex;align-items:center;justify-content:center;width:73px;height:73px;margin:0 auto 24px;background:#0077b5;border-radius:4px;transition:opacity .2s}
.social:hover{opacity:.85}
.social svg{width:34px;height:34px;fill:#fff}
.field{margin-bottom:10px}
.field label{display:block;font-weight:600;font-size:16px;line-height:1.6;margin-bottom:4px;color:var(--heading)}
.req{color:#d00}
.field input,.field textarea{width:100%;font:400 16px/1.4 var(--sans);color:var(--text);background:#fff;border:1px solid #69727d;border-radius:10px;padding:14px 16px}
.field textarea{min-height:140px;resize:vertical}
.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--heading);outline-offset:1px}
.field [aria-invalid="true"]{border-color:#b00020}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf-turnstile{margin:14px 0 14px;min-height:65px}
.form button{font:400 15px/1 var(--sans);text-transform:uppercase;letter-spacing:1px;color:#fff;background:var(--theme);border:0;border-radius:4px;padding:24px 70px;cursor:pointer;transition:background .2s}
.form button:hover{background:#69727d}
.form button[disabled]{opacity:.6;cursor:progress}
.form-status{margin-top:14px;min-height:1.6em;font-weight:600}
.form-status.ok{color:#146c2e}.form-status.err{color:#b00020}

.site-footer{background:var(--heading);color:#fff;text-align:center;padding:16px 20px;line-height:2}

/* tablet */
@media (max-width:1024px){
  .hero{padding:100px 50px 60px}
  .stat-n{font-size:32px}.stat-l{font-size:10px;letter-spacing:1px}
  h1{font-size:40px}.hero h1{font-size:40px}
  h2{font-size:35px}
  .card{padding:22px}
  .achievements{row-gap:25px}.achievements li{padding:0 20px}
  .employers{grid-template-columns:repeat(3,1fr)}
  .employers li{border-bottom:1px solid var(--rule)}
}
/* mobile */
@media (max-width:767px){
  .hero{padding:90px 30px 30px}
  .hero h1{font-size:28px}
  .tagline{font-size:18px;margin-bottom:30px}
  :root{--gap:25px}
  .stats-box{flex-direction:column;padding:20px 0}
  .stats-box li{width:100%;padding:10px 0 20px}
  .stats-box li+li{border-left:0;border-top:1px solid var(--black);padding-top:20px}
  section:not(.hero){padding:35px 15px}
  h2{font-size:24px}
  .cards{grid-template-columns:1fr;gap:0;margin-top:var(--gap)}
  .card{margin:10px;padding:25px}
  .achievements{grid-template-columns:1fr}
  .achievements{row-gap:20px}
  .achievements li{padding:0 25px}
  .employers{grid-template-columns:repeat(2,1fr)}
  .employers li:nth-child(odd){border-right:1px solid var(--rule)}
  .employers li:nth-child(even){border-right:0}
  .form button{width:100%}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
}
