/* Wheel, trackpad and touch use the same panel boundaries. Native scrolling stays free
   throughout a panel that is taller than the screen. */
html.portfolio-home { scroll-snap-type: none; }

@media (min-width: 801px) and (max-height: 820px) {
  html.portfolio-home {
    --panel-top: clamp(60px, 10vh, 82px);
    --panel-tail: clamp(24px, 5vh, 42px);
  }
  .home :is(.about, .news, .career) > h2 { font-size: clamp(44px, min(6.4vw, 11vh), 86px); }
  .home .about-grid, .home .news .record-list { margin-block-start: clamp(20px, 3.8vh, 32px); }
  .home .about-grid {
    grid-template-columns: minmax(0, min(38%, 52vh)) minmax(0, 1fr);
    gap: clamp(24px, 4vw, 64px);
  }
  .home .bio .roman { font-size: clamp(19px, 2.8vh, 26px); }
  .home .bio h3 { margin: .12em 0 .3em; font-size: clamp(34px, 6.2vh, 49px); }
  .home .bio .profile-text { font-size: clamp(15px, 1.1vw, 17px); line-height: 1.75; }
  .home .bio .social { margin-block-start: 12px; }
  .home .portrait { max-width: min(500px, 54vh); }
  .home .news .record { min-height: clamp(48px, 9vh, 73px); padding-block: clamp(8px, 1.4vh, 13px); }
}

@media (min-width: 801px) and (max-width: 1100px) and (max-height: 650px) {
  .home .about-grid {
    grid-template-columns: minmax(0, min(31%, 46vh)) minmax(0, 1fr);
    gap: 24px;
    margin-block-start: 16px;
  }
}
