:root {
  --ink: #19191f;
  --ink-soft: #24242d;
  --paper: #f4f2a1;
  --paper-soft: #fffbd5;
  --purple: #9290ee;
  --purple-dark: #5956b0;
  --white: #fffefa;
  --pixel: "Courier New", Courier, monospace;
  --display: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 5.4rem; }
body { margin: 0; color: var(--white); background: var(--ink); font-family: var(--display); overflow-x: hidden; }
::selection { color: var(--ink); background: var(--paper); }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 100; left: 1rem; top: -4rem; padding: .8rem 1rem; color: var(--ink); background: var(--paper); font: .7rem var(--pixel); }
.skip-link:focus { top: 1rem; }

.site-header { height: 70px; display: flex; align-items: center; gap: 1rem; padding: .65rem clamp(1rem, 4vw, 3.25rem); position: sticky; z-index: 20; top: 0; border-bottom: 1px solid rgba(255,255,255,.42); background: rgba(25,25,31,.94); backdrop-filter: blur(12px); }
.brand { display: inline-flex; align-items: center; gap: .65rem; margin-right: auto; font: 700 .78rem var(--pixel); letter-spacing: -.07em; }
.brand img { width: 43px; height: 43px; object-fit: cover; object-position: 50% 16%; border: 1px solid rgba(255,255,255,.5); }
.menu { display: flex; align-items: center; gap: .2rem; }
.menu a, .back-link { min-height: 48px; display: inline-flex; align-items: center; padding: .85rem 1rem; color: #ceced6; font: .85rem var(--pixel); text-transform: uppercase; transition: color .2s ease, background .2s ease; }
.menu a:hover, .menu a.active { color: var(--ink); background: var(--paper); }
.menu-button { display: none; width: 42px; height: 40px; padding: 0; border: 0; background: transparent; }
.menu-button i { display: block; width: 23px; height: 2px; margin: 5px auto; background: var(--white); transition: transform .2s ease, opacity .2s ease; }
.menu-button[aria-expanded="true"] i:first-of-type { transform: translateY(7px) rotate(45deg); }.menu-button[aria-expanded="true"] i:nth-of-type(2) { opacity: 0; }.menu-button[aria-expanded="true"] i:last-of-type { transform: translateY(-7px) rotate(-45deg); }
.back-link:hover { color: var(--ink); background: var(--paper); }
.progress-tracker { position: absolute; left: 50%; top: 50%; width: min(19vw, 220px); transform: translate(-50%, -50%); color: var(--white); font: .54rem var(--pixel); letter-spacing: -.04em; }
.progress-tracker > span { display: flex; justify-content: space-between; margin-bottom: .35rem; }.progress-tracker b { color: var(--paper); font-weight: 700; }
.progress-track { height: 4px; overflow: hidden; border: 1px solid rgba(255,255,255,.7); background: transparent; }.progress-track i { display: block; width: 0; height: 100%; background: var(--paper); transition: width .12s linear; }

.section { position: relative; overflow: hidden; }
.section-pad { padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 7vw, 8rem); }
.heading { display: flex; align-items: flex-start; gap: 1rem; }
.heading > span, .project-number { padding-top: .35rem; color: var(--paper); font: .62rem var(--pixel); }
.heading h1 { margin: 0; font: 900 clamp(3rem, 8.6vw, 8rem)/.78 var(--display); letter-spacing: -.09em; text-transform: uppercase; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .8rem; min-height: 45px; padding: .8rem .9rem; color: var(--white); border: 1px solid currentColor; background: transparent; font: 700 .65rem var(--pixel); text-transform: uppercase; transition: transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease; }
.button:hover { color: var(--ink); background: var(--white); transform: translate(-3px, -3px); box-shadow: 5px 5px 0 var(--purple); }
.button-bright { color: var(--ink); border-color: var(--paper); background: var(--paper); }.button-bright:hover { background: var(--white); }
.button-dark { color: var(--paper); border-color: var(--ink); background: var(--ink); }.button-dark:hover { color: var(--ink); background: var(--white); box-shadow: 5px 5px 0 var(--purple-dark); }

.hero { min-height: calc(100svh - 70px); display: grid; grid-template-columns: minmax(0, .85fr) minmax(360px, .92fr); align-items: center; gap: clamp(2rem, 7vw, 8rem); padding: clamp(3rem, 8vw, 7rem) clamp(1.25rem, 7vw, 8rem); isolation: isolate; }
.pixel-field { position: absolute; z-index: -1; width: min(78vw, 1000px); aspect-ratio: 1; left: 50%; top: 50%; transform: translate(-45%, -50%); opacity: .85; background-image: radial-gradient(circle, rgba(151,148,246,.92) 1.15px, transparent 1.6px); background-size: 11px 11px; mask-image: radial-gradient(circle at center, black 6%, transparent 68%); }
.pixel-field::after { content: ""; position: absolute; inset: 27%; background: linear-gradient(135deg, var(--purple) 0 45%, transparent 46% 52%, rgba(244,242,161,.7) 53%); clip-path: polygon(50% 0, 62% 27%, 100% 38%, 70% 56%, 78% 100%, 50% 70%, 18% 100%, 30% 56%, 0 38%, 38% 27%); filter: drop-shadow(12px 12px 0 rgba(0,0,0,.35)); animation: shape-float 6s ease-in-out infinite; }
.hero-copy { max-width: 570px; }
.hero-logo { display: block; width: min(100%, 360px); aspect-ratio: 1; object-fit: cover; object-position: center; mix-blend-mode: screen; margin-bottom: 1.5rem; }
.hero-copy p { max-width: 35rem; margin: 0 0 2rem; font-size: clamp(1.1rem, 1.9vw, 1.45rem); line-height: 1.5; }
.actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.hero .actions .button { min-height: 68px; padding: 1.2rem 1.35rem; font-size: .975rem; }
.team-window { position: relative; width: min(100%, 570px); justify-self: center; border: 2px solid var(--ink); background: #e7e7e1; box-shadow: 11px 11px 0 var(--purple-dark); transform: rotate(2deg); transition: transform .4s ease, box-shadow .4s ease; }
.team-window:hover { transform: rotate(0) translateY(-7px); box-shadow: 17px 17px 0 var(--paper); }
.window-bar { height: 29px; display: flex; align-items: center; justify-content: space-between; padding: 0 .6rem; color: var(--ink); border-bottom: 2px solid var(--ink); background: #e7e7e1; font: .58rem var(--pixel); }
.window-bar b { font: 400 1rem var(--pixel); }.team-window img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.pixel-orb { position: absolute; z-index: -1; width: 42px; height: 42px; border: 4px solid #7a711a; border-radius: 50%; background: radial-gradient(circle, #fff989 18%, #f5da28 20% 60%, #c3aa07 62%); box-shadow: 4px 4px 0 #655f15; animation: float 4.5s ease-in-out infinite; }
.orb-a { top: 23%; right: 16%; }.orb-b { bottom: 18%; left: 44%; transform: scale(.74); animation-delay: 1.1s; }

.team { background: var(--ink-soft); }.team-grid { margin-top: 3.5rem; }.team-photo { position: relative; max-width: 720px; padding: 8px; margin: 0 auto; border: 1px solid var(--white); background: var(--ink); box-shadow: 8px 8px 0 var(--purple); }.team-photo::before { content: ""; position: absolute; width: 20%; height: 22%; top: -1px; left: -1px; border-top: 8px solid var(--paper); border-left: 8px solid var(--paper); }.team-photo img { display: block; width: 100%; aspect-ratio: 1.48; object-fit: cover; filter: contrast(1.06) saturate(.8); }.team-copy { max-width: 900px; margin: 3rem auto 0; padding: clamp(1.25rem, 3vw, 2.4rem); border-top: 2px solid var(--paper); }.team-copy p { margin: 0 0 1.4rem; font-size: clamp(1rem, 1.6vw, 1.22rem); line-height: 1.52; }.team-copy p:last-child { margin-bottom: 0; }

.projects { color: var(--ink); background: var(--paper-soft); }.projects .heading > span { color: var(--purple-dark); }.project-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.5rem, 3vw, 3.3rem); margin-top: 4.5rem; }.project-card { min-height: 530px; display: flex; flex-direction: column; padding: clamp(1.3rem, 3.5vw, 3rem); color: var(--ink); border: 2px solid var(--ink); box-shadow: 9px 9px 0 var(--ink); overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }.project-card:hover { transform: translate(-5px, -7px); box-shadow: 16px 17px 0 var(--purple-dark); }.project-card.sea { background: var(--purple); }.project-card.moon { background: var(--paper); }.project-card::after { content: ""; position: absolute; width: 340px; height: 340px; right: -150px; bottom: -175px; border: 2px dotted currentColor; border-radius: 50%; opacity: .45; }.project-card > * { position: relative; z-index: 1; }.project-card .project-number { color: var(--ink); }.project-image { width: 100%; height: 180px; margin: 1.15rem 0 1.65rem; border: 2px solid var(--ink); object-fit: cover; object-position: center; transition: transform .35s ease; }.project-card:hover .project-image { transform: scale(1.035); }.project-card h2 { max-width: 11ch; margin: 0; font: 900 clamp(2.3rem, 4.5vw, 4.8rem)/.8 var(--display); letter-spacing: -.085em; text-transform: uppercase; }.project-card p { max-width: 34rem; margin: 1.3rem 0 auto; font-size: 1rem; line-height: 1.45; }.project-link { width: max-content; margin-top: 1.6rem; padding-bottom: .15rem; border-bottom: 1px solid currentColor; font: .62rem var(--pixel); text-transform: uppercase; }.project-link b { margin-left: .65rem; }

.competitions { background: var(--ink); }.competition-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; padding: 0; margin: 5rem 0 0; list-style: none; border-top: 1px solid rgba(255,255,255,.5); }.competition-list li { position: relative; min-height: 260px; padding: 1.5rem 1.5rem 0 0; border-right: 1px solid rgba(255,255,255,.5); }.competition-list li + li { padding-left: 1.5rem; }.competition-list li:last-child { border-right: 0; }.competition-list i { position: absolute; top: -7px; left: 0; width: 13px; height: 13px; background: var(--paper); box-shadow: 3px 3px 0 var(--purple); }.competition-list li + li i { left: 1.5rem; }.competition-list span { display: block; margin-bottom: 2.7rem; color: var(--purple); font: clamp(1.05rem, 2vw, 1.55rem) var(--pixel); }.competition-list p { max-width: 15rem; margin: 0; font: 900 clamp(1.5rem, 3vw, 3rem)/.9 var(--display); letter-spacing: -.065em; text-transform: uppercase; }

.sponsors { color: var(--ink); background: var(--paper); }.sponsors .heading > span { color: var(--purple-dark); }.sponsor-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem; margin-top: 4.5rem; }.sponsor-tier { position: relative; min-height: 220px; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(1.15rem, 2.8vw, 2.4rem); border: 2px solid var(--ink); box-shadow: 7px 7px 0 var(--ink); overflow: hidden; }.sponsor-tier h2 { max-width: 11ch; margin: 0; font: 900 clamp(2rem, 4.6vw, 4.6rem)/.82 var(--display); letter-spacing: -.08em; text-transform: uppercase; }.tier-gold, .tier-silver, .tier-bronze { background: var(--white); }.tier-partners { color: var(--paper); background: var(--purple-dark); }.sponsor-medal { position: absolute; top: 1.2rem; right: 1.2rem; z-index: 1; width: 58px; height: 58px; display: grid; place-items: center; border: 3px solid var(--ink); border-radius: 50%; font: 900 1.55rem/1 var(--pixel); box-shadow: 3px 3px 0 var(--ink); }.sponsor-medal::after { content: ""; position: absolute; z-index: -1; left: 15px; top: 48px; width: 24px; height: 30px; background: currentColor; clip-path: polygon(0 0, 100% 0, 82% 100%, 50% 78%, 18% 100%); }.medal-gold { color: #f4cb42; background: #ffe66f; }.medal-silver { color: #b6bdc7; background: #eef2f6; }.medal-bronze { color: #8d573a; background: #d29b70; }.medal-partners { color: var(--paper); background: var(--ink); }.sponsor-logo-row { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 2rem; }.sponsor-logo-row img { display: block; width: min(100%, 210px); height: 68px; padding: .45rem .65rem; object-fit: contain; background: var(--white); border: 1px solid rgba(25,25,31,.55); }.tier-bronze .sponsor-logo-row img { flex: 1 1 170px; }.sponsor-orbits { position: absolute; inset: 0; overflow: hidden; }.sponsor-orbits::before { width: 62vw; height: 62vw; top: -36vw; right: -15vw; }.sponsor-orbits::after { width: 44vw; height: 44vw; top: -26vw; right: -4vw; }

.contact { background: var(--ink-soft); }.contact-grid { margin-top: 4.5rem; }.contact-form { display: grid; max-width: 720px; gap: 1rem; padding: clamp(1rem, 3vw, 2.3rem); color: var(--ink); border: 2px solid var(--purple); background: var(--paper-soft); box-shadow: 8px 8px 0 var(--purple-dark); }.contact-form label { display: grid; gap: .5rem; font: .61rem var(--pixel); }.contact-form input, .contact-form textarea { width: 100%; padding: .75rem; border: 1px solid var(--ink); border-radius: 0; outline: none; background: transparent; }.contact-form input:focus, .contact-form textarea:focus { outline: 3px solid var(--paper); outline-offset: 2px; }.contact-form textarea { resize: vertical; }.contact-form .button { justify-self: start; margin-top: .4rem; }
.footer { min-height: 84px; display: flex; align-items: center; gap: .7rem; padding: 1rem clamp(1.25rem, 7vw, 8rem); border-top: 1px solid rgba(255,255,255,.35); font: .7rem var(--pixel); }.footer img { width: 48px; height: 48px; object-fit: cover; object-position: 50% 16%; }.footer-instagram { width: 46px; height: 46px; margin-left: auto; display: grid; place-items: center; color: var(--ink); background: var(--paper); transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }.footer-instagram svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 2; }.footer-instagram .instagram-dot { fill: currentColor; stroke: none; }.footer-instagram:hover { color: var(--ink); background: var(--white); transform: translate(-3px, -3px); box-shadow: 4px 4px 0 var(--purple); }

.project-page { min-height: 100vh; }.project-page.sea-page { background: var(--purple); color: var(--ink); }.project-page.moon-page { background: var(--paper); color: var(--ink); }.project-page .site-header { color: var(--white); background: rgba(25,25,31,.94); }.project-detail { min-height: calc(100svh - 70px); position: relative; overflow: hidden; }.project-detail::after { content: ""; position: absolute; z-index: 0; width: min(85vw, 1000px); height: min(85vw, 1000px); right: -30vw; bottom: -48vw; border: 2px dotted rgba(25,25,31,.4); border-radius: 50%; }.project-detail > * { position: relative; z-index: 1; }.project-detail .project-number { color: var(--ink); }.project-detail h1 { max-width: 13ch; margin: .7rem 0 2.5rem; font: 900 clamp(2.7rem, 8vw, 8rem)/.73 var(--display); letter-spacing: -.1em; text-transform: uppercase; }.award { max-width: 44rem; margin: 0; padding: 1rem 1.15rem; color: var(--paper-soft); background: var(--ink); font: 1.1rem/1.45 var(--pixel); }.detail-image-link { display: inline-block; width: max-content; max-width: 100%; margin-top: 2rem; transition: transform .3s cubic-bezier(.2,.8,.2,1); }.detail-image-link:hover { transform: translate(-6px, -6px); }.detail-image { display: block; max-width: 100%; max-height: 500px; border: 2px solid var(--ink); object-fit: contain; box-shadow: 8px 8px 0 rgba(25,25,31,.25); transition: transform .3s cubic-bezier(.2,.8,.2,1), filter .3s ease, box-shadow .3s ease; }.detail-image-link:hover .detail-image { transform: scale(1.025); filter: brightness(1.06) saturate(1.08); box-shadow: 13px 13px 0 rgba(25,25,31,.32); }.video-link-label { display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 100%; min-height: 48px; padding: .8rem 1rem; color: var(--paper-soft); background: var(--ink); font: .72rem var(--pixel); letter-spacing: .03em; }.video-link-label b { color: var(--paper); font-size: 1rem; }.detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; max-width: 58rem; align-items: end; margin-top: clamp(3.5rem, 9vw, 9rem); }.description { max-width: 42rem; margin: 0; font-size: clamp(1.05rem, 2vw, 1.4rem); line-height: 1.55; }.project-detail .button { align-self: end; }

.reveal { opacity: 0; transform: translateY(26px); transition: opacity .65s ease, transform .65s cubic-bezier(.2,.8,.2,1); }.reveal.visible { opacity: 1; transform: translateY(0); }.delay-1 { transition-delay: .1s; }.delay-2 { transition-delay: .2s; }.delay-3 { transition-delay: .3s; }
@keyframes float { 50% { transform: translateY(-14px) rotate(8deg); } } @keyframes shape-float { 50% { transform: translateY(-11px) rotate(4deg); } }

@media (max-width: 850px) { .progress-tracker { display: none; }.menu-button { display: block; }.menu { position: absolute; top: 70px; left: 0; right: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; padding: 1rem; border-bottom: 1px solid rgba(255,255,255,.35); background: var(--ink); transform: translateY(-140%); opacity: 0; pointer-events: none; transition: transform .25s ease, opacity .25s ease; }.menu.open { transform: translateY(0); opacity: 1; pointer-events: auto; }.menu a { padding: .8rem .6rem; background: var(--ink-soft); }.hero { grid-template-columns: 1fr; min-height: auto; }.hero-copy { max-width: 620px; }.team-window { margin-top: 1rem; }.team-grid, .sponsor-grid, .contact-grid { grid-template-columns: 1fr; }.team-copy { border-top: 2px solid var(--paper); border-left: 0; }.project-grid { gap: 2.2rem; }.competition-list { grid-template-columns: 1fr; margin-top: 3.5rem; border-top: 0; border-left: 1px solid rgba(255,255,255,.5); }.competition-list li, .competition-list li + li { min-height: auto; padding: 0 0 2.6rem 1.5rem; border: 0; }.competition-list i, .competition-list li + li i { top: 0; left: -7px; }.competition-list span { margin-bottom: .7rem; }.competition-list p { max-width: 26rem; }.detail-grid { grid-template-columns: 1fr; }.project-detail .button { justify-self: start; }.project-detail::after { width: 110vw; height: 110vw; right: -35vw; bottom: -20vw; } }
@media (max-width: 560px) { .site-header { height: 64px; padding: .5rem 1rem; }.brand img { width: 38px; height: 38px; }.brand { font-size: .69rem; }.menu { top: 64px; }.section-pad { padding-top: 5rem; padding-bottom: 5rem; }.heading { gap: .55rem; }.heading h1 { font-size: clamp(3rem, 14vw, 5rem); }.hero { padding: 3.8rem 1.25rem 4rem; gap: 2.5rem; }.hero-logo { max-width: 275px; }.hero-copy p { font-size: 1.05rem; }.actions { display: grid; }.actions .button { width: 100%; }.team-window { width: 96%; }.pixel-field { width: 145vw; left: 42%; }.project-grid { grid-template-columns: 1fr; margin-top: 3.2rem; }.project-card { min-height: 470px; }.project-card h2 { font-size: 2.9rem; }.project-card .project-symbol { margin-top: 2rem; }.sponsor-grid, .contact-grid, .about-grid, .team-grid { margin-top: 3.2rem; }.sponsor-orbits::before { width: 110vw; height: 110vw; top: -65vw; right: -36vw; }.sponsor-orbits::after { width: 80vw; height: 80vw; top: -50vw; right: -20vw; }.project-detail { padding-top: 5rem; }.project-detail h1 { font-size: clamp(3rem, 15vw, 5.5rem); }.award { font-size: .56rem; } }
.sponsor-orbits::before, .sponsor-orbits::after { content: ""; position: absolute; border: 2px solid rgba(25,25,31,.25); border-radius: 50%; }
.tier-gold, .tier-silver, .tier-bronze, .tier-partners { color: var(--ink); background: var(--white); }
.sponsor-logo-row img { padding: 0; background: transparent; border: 0; }
.sponsor-logo-row img { cursor: default; transition: transform .22s cubic-bezier(.2,.8,.2,1), filter .22s ease, box-shadow .22s ease; }
.sponsor-logo-row img:hover { transform: translate(-4px, -4px) scale(1.045); filter: brightness(1.06) saturate(1.08); box-shadow: 5px 5px 0 var(--purple-dark); }
.sponsor-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tier-partners { grid-column: 1 / -1; }
.tier-gold, .tier-silver, .tier-bronze { min-height: 290px; }
.tier-gold h2, .tier-silver h2, .tier-bronze h2 { max-width: 8ch; font-size: clamp(1.9rem, 3vw, 3.45rem); line-height: .88; }
.tier-gold .sponsor-logo-row img { width: 132px; height: 132px; }
.tier-gold .sponsor-logo-row { justify-content: center; }
.tier-silver .sponsor-logo-row { justify-content: center; }
.tier-partners .sponsor-logo-row img { width: 132px; height: 132px; }
.tier-partners .sponsor-logo-row .partner-logo-minilab { width: min(100%, 320px); height: 104px; }
.tier-partners { min-height: 340px; }
.tier-partners h2 { max-width: none; align-self: center; text-align: center; }
.tier-partners .sponsor-logo-row { flex: 1; display: flex; align-items: center; justify-content: center; width: 100%; margin: 0; }
@media (min-width: 851px) { .tier-partners h2 { white-space: nowrap; font-size: clamp(1.65rem, 3.1vw, 3.5rem); } }
.progress-tracker { left: 25%; width: min(17vw, 200px); }
.menu a { font-size: .95rem; }
@media (max-width: 1360px) { .progress-tracker { display: none; } }
.become-sponsor { color: var(--paper); background: var(--ink); }.become-sponsor .heading > span { color: var(--purple); }.sponsor-heart { color: #ff6b6b; font-size: .72em; vertical-align: .08em; }.sponsor-pitch { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 7vw, 8rem); margin-top: 4.5rem; }.sponsor-lead { max-width: 33rem; margin: 0; font-size: clamp(1.45rem, 2.8vw, 2.5rem); line-height: 1.15; }.sponsor-closing { max-width: 28rem; margin: 5rem 0 0; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.45); font: .9rem/1.5 var(--pixel); }.sponsor-pitch-actions { display: grid; align-content: start; justify-items: start; gap: 1.35rem; }.sponsor-benefits { display: grid; gap: .9rem; width: 100%; padding: 0; margin: 0; list-style: none; font-size: clamp(1.05rem, 1.7vw, 1.35rem); line-height: 1.35; }.sponsor-benefits li { display: grid; grid-template-columns: auto 1fr; gap: .7rem; }.sponsor-benefits li::before { content: "·"; color: var(--purple); font: 900 1.5em/1 var(--pixel); }.sponsor-email { color: var(--paper); border-bottom: 1px solid currentColor; font: .8rem var(--pixel); }
.sponsor-side-intro { max-width: 36rem; margin: 0; font-size: clamp(1.15rem, 1.9vw, 1.65rem); line-height: 1.25; }
@media (max-width: 850px) { .sponsor-pitch { grid-template-columns: 1fr; gap: 3rem; }.sponsor-closing { margin-top: 3rem; } }
.impact { color: var(--ink); background: var(--purple); }.impact .heading > span { color: var(--purple-dark); }.impact-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; padding: 0; margin: 4.5rem 0 0; list-style: none; }.impact-grid li { min-height: 210px; display: flex; flex-direction: column; justify-content: space-between; gap: 1.5rem; padding: 1.25rem; border: 2px solid var(--ink); background: var(--paper-soft); box-shadow: 6px 6px 0 var(--ink); }.impact-grid strong { display: block; font: 900 clamp(4rem, 6.25vw, 6.75rem)/.75 var(--display); letter-spacing: -.1em; }.impact-grid span { font: 1.35rem/1.25 var(--pixel); text-transform: uppercase; }
@media (max-width: 850px) { .impact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .impact-grid { grid-template-columns: 1fr; }.impact-grid li { min-height: 155px; } }
@media (max-width: 850px) { .sponsor-grid { grid-template-columns: 1fr; }.tier-partners { grid-column: auto; } }
.sponsor-medal { display: block; width: 76px; height: 76px; padding: 0; object-fit: contain; border: 0; border-radius: 0; outline: 0; background: transparent !important; box-shadow: none; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; } }
