@font-face{font-family:"DM Sans";src:url("assets/fonts/DMSans-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"DM Sans";src:url("assets/fonts/DMSans-Medium.woff2") format("woff2");font-weight:500 600;font-display:swap}
@font-face{font-family:"DM Sans";src:url("assets/fonts/DMSans-Bold.woff2") format("woff2");font-weight:700 950;font-display:swap}
@font-face{font-family:"DM Mono";src:url("assets/fonts/DMMono-Regular.woff2") format("woff2");font-weight:400;font-display:swap}

.home-page{
  --bg:#16161c;--panel:#22222a;--panel-2:#292931;--ink:#f9f9f9;
  --muted:#c2c8ce;--dim:#9098a1;--line:#484850;--cyan:#8de5dd;
  --lime:#c8ff00;--max:1280px;
  background:#16161c;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;
  line-height:1.5;font-synthesis:none;
}
.home-page::before,.home-page::after{content:none}
.home-page :focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.home-page .topbar{height:72px;background:rgba(22,22,28,.96);border-bottom:1px solid #484850;padding:0 clamp(20px,4vw,64px);backdrop-filter:none}
.home-page .brand{font-size:15px;letter-spacing:-.025em;text-transform:none;font-weight:700}
.home-page .brand::after{height:2px;background:var(--cyan);bottom:-7px}
.home-page .topbar nav{align-items:center;gap:clamp(14px,2.3vw,30px);font-size:13px;font-weight:500}
.home-page .topbar nav a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--cyan);text-underline-offset:7px}
.home-page .lang-switch{border-radius:0;border:1px solid #666670;background:transparent;padding:0 10px;font-family:"DM Mono",monospace;font-size:11px}
.home-page .eyebrow,.home-page .home-index,.home-page .hero-media figcaption,.home-page .pathway-number,.home-page .pathway-link,.home-page .photo-tile span{font-family:"DM Mono",monospace;font-weight:400;letter-spacing:.04em;text-transform:uppercase}
.home-page .eyebrow{font-size:11px;color:var(--cyan);margin-bottom:20px}
.home-page .hero{max-width:1380px;min-height:calc(100svh - 72px);padding:clamp(36px,5vw,68px) clamp(20px,4vw,64px) 56px;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,5vw,72px);align-items:center}
.home-page .hero::after{content:none}
.home-page .hero-copy{position:relative;z-index:1}
.home-page .hero-kicker{display:flex;align-items:center;gap:10px;line-height:1.4}
.home-page .status-dot{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(200,255,0,.1);animation:house-pulse 2.6s ease-in-out infinite}
@keyframes house-pulse{50%{box-shadow:0 0 0 8px rgba(200,255,0,0)}}
.home-page .hero h1{max-width:580px;font-size:clamp(68px,7.9vw,122px);font-weight:700;line-height:.91;letter-spacing:-.065em;text-transform:none;margin:0 0 28px;overflow-wrap:normal}
.home-page .hero h1 span{display:block;color:var(--cyan)}
.home-page .hero-statement{max-width:540px;font-size:clamp(22px,2.25vw,31px);line-height:1.18;letter-spacing:-.035em;font-weight:500;margin-bottom:18px}
.home-page .hero .lead{max-width:510px;font-size:16px;line-height:1.6;color:var(--muted)}
.home-page .hero-actions{gap:10px;margin-top:30px}
.home-page .button{border-radius:0;font-family:"DM Sans",Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:-.01em;min-height:48px;gap:18px}
.home-page .button.primary{background:var(--cyan);border-color:var(--cyan);color:#16161c}
.home-page .button.primary:hover{background:#b5f5ef;border-color:#b5f5ef}
.home-page .button.secondary{background:transparent;border-color:#777780;color:var(--ink)}
.home-page .button.secondary:hover{border-color:var(--ink)}
.home-page .hero-media{padding:0;align-self:stretch;min-height:520px;border:0;background:#22222a;box-shadow:none;overflow:hidden;position:relative}
.home-page .hero-media::after{content:none}
.home-page .hero-media:hover{transform:none;border-color:transparent;box-shadow:none}
.home-page .hero-media picture{display:block;height:100%}
.home-page .hero-media img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 45%;filter:saturate(.9)}
.home-page .hero-media figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:16px 20px;display:flex;justify-content:space-between;gap:10px;background:linear-gradient(transparent,rgba(0,0,0,.76));font-size:10px;color:#fff}
.home-page .home-index{max-width:1252px;margin:-1px auto 30px;padding:0 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;color:var(--muted);font-size:10px}
.home-page .home-index span{padding:18px 0;border-top:1px solid #777780}
.home-page .home-index span:first-child{color:var(--lime);border-top-color:var(--lime)}
.home-page h2{font-family:"DM Sans",Arial,sans-serif;font-weight:700;letter-spacing:-.045em;line-height:1.06;font-size:clamp(34px,3.8vw,54px)}
.home-page h3{font-weight:700;letter-spacing:-.03em}
.home-page .section{padding-top:82px;padding-bottom:82px}
.home-page .section,.home-page .metric-band,.home-page .partner-carousel,.home-page .program-intro,.home-page .closing{transition:opacity 260ms ease-out,transform 260ms ease-out;transform:translateY(8px)}
.home-page .section.in-view,.home-page .metric-band.in-view,.home-page .partner-carousel.in-view,.home-page .program-intro.in-view,.home-page .closing.in-view{transform:translateY(0)}
.home-page .program-intro{gap:clamp(24px,5vw,64px);padding-top:74px;padding-bottom:74px;border-top:1px solid #484850}
.home-page .program-intro h2{font-size:clamp(34px,3.6vw,50px)}
.home-page .program-snapshot span,.home-page .story-step,.home-page .metric-band div,.home-page .source-card,.home-page .house-card,.home-page .location-card,.home-page .media-copy,.home-page .studio-copy,.home-page .ecosystem-stats div,.home-page .sponsor-grid :is(div,article),.home-page .closing-grid div,.home-page .founder-card,.home-page .forms-grid form,.home-page .faq-list details{border-radius:0;background:#22222a;box-shadow:none;backdrop-filter:none;border-color:#484850}
.home-page .program-snapshot span:hover,.home-page .metric-band div:hover,.home-page .ecosystem-stats div:hover,.home-page .sponsor-grid :is(div,article):hover,.home-page .source-card:hover{transform:none;box-shadow:none;border-color:#8de5dd}
.home-page .metric-band div:not(.metric-intro) strong,.home-page .ecosystem-stats strong,.home-page .closing-grid strong{color:var(--ink)}
.home-page .photo-frame,.home-page .photo-tile,.home-page .story-photo{border-radius:0;box-shadow:none}
.home-page .photo-frame::after,.home-page .photo-tile::after{content:none}
.home-page .partner-track{background:#22222a;border-color:#484850}
.home-page .partner-track div{width:100%;flex-wrap:wrap;animation:none}
.home-page .partner-track span{min-width:140px;flex:1 1 140px;border-color:#484850;color:var(--muted);font-size:13px;background:transparent}
.home-page .partner-track span:nth-child(n+9){display:none}
.home-page .partner-head h2{font-size:clamp(30px,3vw,44px)}
.home-page .gallery-section{max-width:1380px}
.home-page .gallery-section .section-head{max-width:780px}
.home-page .event-strip{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px}
.home-page .event-strip .photo-tile{height:320px;border:0;background:#22222a}
.home-page .event-strip .photo-tile img{object-position:center;filter:saturate(.88)}
.home-page .event-strip .photo-tile:hover img{transform:scale(1.025);filter:saturate(1)}
.home-page .event-strip .editorial-tile span{position:absolute;bottom:0;left:0;right:0;padding:42px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:10px;color:#fff}
.home-page .pathways{display:block;max-width:1380px;padding-top:70px;padding-bottom:95px;border-top:1px solid #484850}
.home-page .pathways-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}
.home-page .pathways-heading>div{max-width:810px}
.home-page .pathways-heading p:not(.eyebrow){max-width:610px;color:var(--muted);font-size:17px;line-height:1.55}
.home-page .newhack-signature{display:block;width:155px;flex:none;opacity:.8}
.home-page .newhack-signature img{width:100%;height:auto}
.home-page .pathways-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.home-page .pathway-card{position:relative;display:flex;min-height:310px;flex-direction:column;padding:24px;border:1px solid #55555e;background:#22222a;transition:transform 220ms ease-out,border-color 220ms ease-out,background 220ms ease-out}
.home-page .pathway-card:hover{transform:translateY(-4px);border-color:var(--cyan);background:#292931}
.home-page .pathway-card h3{margin:28px 0 15px;font-size:clamp(27px,2.5vw,36px);line-height:1.05}
.home-page .pathway-card p{color:var(--muted);font-size:15px;line-height:1.5}
.home-page .pathway-number{color:var(--cyan);font-size:10px}
.home-page .pathway-link{margin-top:auto;padding-top:18px;border-top:1px solid #55555e;color:var(--ink);font-size:11px}
.home-page .founder-card h3{color:var(--ink)}
.home-page .founder-card.warm h3{color:var(--ink)}
.home-page .sponsor-grid :is(div,article){border-color:#484850!important}
.home-page .faq-list details{border-color:#484850}
.home-page .faq-list summary::after{color:var(--cyan)}
.home-page .forms-grid button,.home-page .forms-grid form:nth-child(2) button{background:var(--cyan);color:#16161c;border-radius:0;font-weight:700}
.home-page .forms-grid button:hover{background:#b5f5ef}

@media(max-width:920px){
  .home-page .topbar{height:auto;min-height:72px;padding:16px 22px;align-items:center}
  .home-page .topbar nav{padding-right:54px}
  .home-page .hero{min-height:0;grid-template-columns:1fr;padding-top:54px;gap:38px}
  .home-page .hero h1{font-size:clamp(72px,12vw,108px)}
  .home-page .hero-media{min-height:0;height:520px}
  .home-page .program-intro{grid-template-columns:1fr}
  .home-page .pathways-grid{grid-template-columns:1fr 1fr}
  .home-page .event-strip{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .home-page .topbar{display:block;padding:14px 18px}
  .home-page .topbar nav{margin-top:12px;gap:10px 16px;padding-right:42px}
  .home-page .topbar .lang-switch{top:12px;right:18px}
  .home-page .hero{padding:46px 18px 26px;gap:28px}
  .home-page .hero h1{font-size:clamp(64px,17vw,82px);letter-spacing:-.065em}
  .home-page .hero-statement{font-size:24px}
  .home-page .hero .lead{font-size:15px}
  .home-page .hero-media{height:370px}
  .home-page .hero-media figcaption{font-size:9px}
  .home-page .home-index{grid-template-columns:1fr 1fr;gap:0 12px;padding:0 18px;margin-bottom:0}
  .home-page .home-index span{padding:12px 0}
  .home-page .section{padding-top:64px;padding-bottom:64px}
  .home-page .program-intro{padding:58px 18px}
  .home-page .program-snapshot{grid-template-columns:1fr 1fr}
  .home-page .partner-track span{min-width:110px;flex-basis:110px}
  .home-page .event-strip{grid-template-columns:1fr;gap:10px}
  .home-page .event-strip .photo-tile{height:300px}
  .home-page .pathways-heading{display:block}
  .home-page .newhack-signature{width:125px;margin-top:22px}
  .home-page .pathways-grid{grid-template-columns:1fr}
  .home-page .pathway-card{min-height:250px}
}
@media(prefers-reduced-motion:reduce){
  .home-page{scroll-behavior:auto}
  .home-page .status-dot{animation:none}
  .home-page .section,.home-page .metric-band,.home-page .partner-carousel,.home-page .program-intro,.home-page .closing{opacity:1!important;transform:none!important;transition:none!important}
  .home-page .pathway-card,.home-page .photo-tile img,.home-page .button{transition:none!important}
}
