/* Main portfolio usability refinement, October 2026.
   Keep the original artwork, motion and design system while improving first-screen legibility. */

/* Navigation already exists in the main header. The additional fixed rail
   obscured project cards and the opening biography on medium desktop displays. */
.journey-rail { display:none!important; }

.hero-aside {
  background:linear-gradient(140deg,rgba(9,15,20,.94),rgba(8,12,17,.90))!important;
  border:1px solid rgba(141,206,195,.27)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.42);
}
.hero-aside > p:first-child {
  color:#e5ebea;
  line-height:1.65;
  font-weight:470;
}
.hero-footer {
  position:relative;
  background:linear-gradient(95deg,rgba(5,11,15,.88),rgba(5,11,15,.66));
  padding:18px 21px;
  border:1px solid rgba(152,191,187,.24);
  backdrop-filter:blur(12px);
}
.hero-footer p {
  color:#d9e3e1;
  font-size:clamp(14px,1.05vw,17px);
  line-height:1.52;
}
.hero-footer a {
  color:#a5f5df;
  font-weight:750;
  text-underline-offset:4px;
}
.hero-footer a:focus-visible { outline:2px solid #a5f5df; outline-offset:5px; }
.hero-thesis b { overflow-wrap:anywhere; }
.project-card .project-link + .project-link { margin-left:18px; }

@media (max-width:800px) {
  .hero {
    padding:52px 18px 26px;
    min-height:0;
  }
  .hero-main {
    margin:28px 0 27px;
    gap:24px;
  }
  .hero h1 {
    font-size:clamp(2.8rem,11.8vw,4.5rem);
    line-height:.98;
    letter-spacing:-.06em;
    max-width:none;
  }
  .hero-title-accent {
    margin-top:9px;
    margin-bottom:4px;
  }
  .hero-aside {
    padding:22px 20px!important;
    margin:0;
    width:100%;
  }
  .hero-aside p {
    font-size:15px!important;
    line-height:1.62!important;
    margin:0 0 17px!important;
  }
  .hero-thesis {
    margin-top:17px;
    padding-top:14px;
  }
  .hero-thesis b { font-size:13px;line-height:1.5; }
  .hero-footer {
    margin-top:18px;
    padding:17px 17px 18px;
    gap:13px;
    backdrop-filter:blur(10px);
  }
  .hero-footer p {
    margin:0;
    font-size:14px;
    line-height:1.53;
  }
  .hero-footer a {
    font-size:14px;
    line-height:1.55;
    display:inline-block;
  }
  .hero-meta span { font-size:10px; }
  .project-card .project-link + .project-link {
    display:block;
    margin:12px 0 0;
  }
}
@media(max-width:390px) {
  .hero h1 {font-size:clamp(2.65rem,11.8vw,3.2rem);}
  .hero-meta {gap:6px;}
  .hero-meta span {font-size:9.5px!important;letter-spacing:.065em;}
  .hero-aside {padding:18px 17px!important;}
}

/* Short path from team leadership to the research/game-jam case studies. */
.hackathons-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 28px}
.hackathons-directory a{display:grid;grid-template-columns:1fr auto;gap:10px;padding:20px 19px;min-height:118px;border:1px solid rgba(127,240,207,.27);text-decoration:none;background:rgba(13,28,30,.7);transition:background .18s ease,border-color .18s ease}
.hackathons-directory a:hover{border-color:#7ff0cf;background:rgba(22,45,44,.8)}
.hackathons-directory span{grid-column:1/-1;color:#7ff0cf;font:700 11px/1.3 Consolas,monospace;letter-spacing:.05em}
.hackathons-directory strong{font-size:clamp(16px,1.35vw,21px);line-height:1.27;letter-spacing:-.04em;font-weight:750;color:#f5f6f2}
.hackathons-directory i{align-self:end;font-style:normal;color:#7ff0cf}
@media(max-width:850px){.hackathons-directory{grid-template-columns:1fr;gap:9px}.hackathons-directory a{min-height:0;padding:15px 16px;gap:6px}.hackathons-directory strong{font-size:19px}}
