@font-face { font-family: 'Archivo Black'; font-style: normal; font-weight: 400; font-display: swap; src: url('assets/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; }
@font-face { font-family: 'Archivo Black'; font-style: normal; font-weight: 400; font-display: swap; src: url('assets/latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
/* Static shell adapted from innovationohio.org. No Squarespace runtime
   required. Colors are the site's own: blue #0048E8, navy #003057,
   magenta #D553F9. */
body { margin: 0; background: #fff; }
.io-header, .io-footer { font-family: 'Helvetica Neue', Arial, sans-serif; }
.io-header *, .io-footer * { box-sizing: border-box; }

.io-header {
	background: linear-gradient(180deg, #07254E 0%, #0048E8 100%);
	color: #fff;
	padding: 29px 43px;
}
.io-header-inner {
	max-width: 1500px;
	margin: auto;
	display: flex;
	align-items: center;
	gap: 36px;
}
.io-logo { line-height: 0; }
.io-logo img { width: 214px; height: auto; }
.io-header a { color: inherit; text-decoration: none; }

.io-header nav { display: flex; align-items: center; gap: 23px; font-size: 16px; }
.io-header details { position: relative; }
.io-header summary { cursor: pointer; list-style: none; white-space: nowrap; }
.io-header summary::-webkit-details-marker { display: none; }
.io-header summary::after { content: "+"; margin-left: 6px; opacity: .8; }
.io-header .header-nav-folder-content {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	background: #003057;
	padding: 18px 22px;
	min-width: 210px;
	box-shadow: 0 8px 18px #001a2e55;
	z-index: 5;
}
.io-header .header-nav-folder-content a { display: block; padding: 9px 0; white-space: nowrap; }
.io-header a:hover, .io-header summary:hover { opacity: .85; }

.io-social { margin-left: auto; display: flex; align-items: center; gap: 23px; }
.io-social-sprite { display: none; }
.io-social-link { line-height: 0; }
.io-social-icon { width: 20px; height: 20px; fill: currentColor; }

.io-button {
	display: inline-block;
	width: fit-content;
	padding: 24px 30px;
	line-height: 1.3;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	text-decoration: none;
	background: #D553F9;
	color: #fff;
	white-space: nowrap;
}

.io-footer {
	background: #003057;
	color: #fff;
	padding: 56px 4vw 48px;
	text-align: center;
}
.io-footer-inner { max-width: 1500px; margin: auto; }
.io-address { margin: 0 0 8px; line-height: 1.6; }
.io-address p { margin: 0; }
.io-address a { text-decoration: underline; }
.io-signup {
	display: inline-block;
	margin: 26px 0 34px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: #D553F9;
}
.io-wordmark { display: block; width: 280px; height: auto; margin: 0 auto; }

.io-header :focus-visible, .io-footer :focus-visible { outline: 3px solid #D553F9; outline-offset: 3px; }

@media (max-width: 900px) {
	.io-header { padding: 22px 6vw; }
	.io-header-inner { flex-wrap: wrap; gap: 20px 16px; }
	.io-logo img { width: 160px; }
	.io-header nav {
		order: 4;
		width: 100%;
		justify-content: space-between;
		gap: 10px;
		row-gap: 8px;
		flex-wrap: wrap;
		font-size: 14px;
	}
	.io-header .header-nav-folder-content { left: 0; transform: none; min-width: 190px; }
	.io-header details:last-child .header-nav-folder-content { left: auto; right: 0; }
	.io-social { order: 3; margin-left: auto; gap: 12px; }
	.io-social-icon { width: 18px; height: 18px; }
	.io-button { font-size: 12px; padding: 12px 16px; }
	.io-footer { padding: 44px 6vw 36px; }
	.io-wordmark { width: 220px; }
}
