/* Full-bleed campus photography, image-rendered transparent title and compact assessment forms. */
.site-head { height: 68px; padding-inline: max(4vw, calc((100vw - 1200px)/2)); background: #fff; }
.site-head .brand { width: 165px; }
.site-head .brand img { height: auto; display: block; }
.landing-page { min-height: calc(100svh - 68px); background: #fff; }
.landing-page .hero { position: relative; isolation: isolate; display: flex; min-height: clamp(540px, 67svh, 650px); align-items: center; overflow: hidden; background: #0b274c; color: #fff; }
.landing-page .hero-visual { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; background: #0b274c; }
.landing-page .hero-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center 54%; transition: none; }
.landing-page .hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #061c37e8 0%, #09284cce 34%, #0a315567 62%, #091e3814 100%); }
.landing-page .hero-inner { width: min(1200px, 92vw); margin: 0 auto; padding: 58px 0 52px; display: block; animation: none; }
.landing-page .hero-copy { max-width: 610px; padding: 0; }
.landing-page .hero .eyebrow { color: #f2b273; font-size: 11px; letter-spacing: .15em; }
.landing-page .hero .eyebrow::before { width: 28px; background: #fca048; }
.landing-page .hero h1.hero-title { width: min(510px, 100%); height: auto; max-height: none; margin: 10px 0 0; overflow: visible; font-size: 0; line-height: 0; }
.landing-page .hero-title img { position: static; display: block; width: 100%; height: auto; max-width: 100%; transform: none; }
.landing-page .hero p { max-width: 540px; margin: 0; color: #e8f0fa; font-size: 15px; line-height: 1.65; }
.landing-page .entry-action { max-width: 330px; margin: 28px 0 0; gap: 10px; }
.landing-page .entry-action .button { min-width: 230px; min-height: 49px; background: #f58a25; color: #fff; border-radius: 4px; font-size: 14px; box-shadow: 0 10px 24px #040f243b; }
.landing-page .entry-action .button:hover:not(:disabled) { background: #e97913; }
.landing-page .entry-action > label { color: #ecf3fd; }
.landing-page .entry-action .form-error { color: #ffd6cf; }
.landing-page .hero-meta { margin-top: 17px; color: #cfdeef; font-size: 12px; }
.landing-page .hero-meta span { color: #eb934d; }
.landing-page .intro { width: min(1200px, 92vw); padding: 16px 0 20px; }
.landing-page .intro-list { border-top: 0; padding: 14px 0 15px; }
.landing-page .intro-list > div, .landing-page .intro-list > div:first-child { min-height: 65px; padding-top: 2px; padding-bottom: 2px; }
.landing-page .intro-list i { font-size: 13px; }
.landing-page .intro-list strong { font-size: 15px; }
.landing-page .intro-list p { font-size: 12px; }
.landing-page .small-note { margin-top: 9px; }
.direction-group-title { margin: 20px 0 0; color: #1559ad; font-size: 15px; font-weight: 750; }
.direction-group-title + .direction-list { margin-top: 7px; }
.profile-page .profile-layout { display: block; width: min(690px, 92vw); margin: 0 auto; padding: 32px 0 60px; }
.profile-page .profile-form { border-color: #dbe6f4; box-shadow: none; }
.profile-page .form-heading h1 { margin: 8px 0; color: #103467; font-size: 28px; line-height: 1.25; }
.profile-page .form-heading p { font-size: 13px; }
@media (max-width: 850px) {
  .landing-page .hero { min-height: 550px; }
  .landing-page .hero-visual img { object-position: 61% center; }
  .landing-page .hero::before { background: linear-gradient(90deg, #061c37ed 0%, #09284cd9 48%, #0a315570 100%); }
  .landing-page .hero-copy { max-width: 540px; }
}
@media (max-width: 620px) {
  .site-head { height: 58px; padding-inline: 5vw; }
  .site-head .brand { width: 126px; }
  .landing-page .hero { min-height: 500px; align-items: end; }
  .landing-page .hero-visual img { object-position: 69% center; }
  .landing-page .hero::before { background: linear-gradient(0deg, #061a33f5 0%, #082345d6 48%, #08244776 100%); }
  .landing-page .hero-inner { width: 90vw; padding: 42px 0 39px; }
  .landing-page .hero h1.hero-title { width: min(350px, 100%); margin: 7px 0 0; }
  .landing-page .hero p { max-width: 360px; font-size: 13px; }
  .landing-page .entry-action { margin-top: 18px; }
  .landing-page .entry-action .button { min-height: 45px; }
  .landing-page .hero-meta { margin-top: 12px; font-size: 11px; }
  .landing-page .intro { width: 90vw; padding: 7px 0 18px; }
  .landing-page .intro-list { padding: 4px 0; }
  .landing-page .intro-list > div, .landing-page .intro-list > div:first-child { padding: 9px 0; }
  .profile-page .profile-layout { width: 94vw; padding: 18px 0 38px; }
  .profile-page .profile-form { padding: 20px; }
  .profile-page .form-heading h1 { font-size: 25px; }
}
@media (max-width: 350px) {
  .landing-page .hero .eyebrow { gap: 6px; font-size: 8.5px; letter-spacing: .1em; }
  .landing-page .hero .eyebrow::before { width: 16px; }
}
