/* Northline PR — Founder Spotlight landing page (/apply). Loaded after site.css.
   A single screen: minimal header, a short intro and the application form. */

/* Header: logo and programme name only, no menu */
.spot-header .nav { height: 68px; }
.spot-tag {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 12.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep); white-space: nowrap;
}
.spot-tag::before { content: ""; width: 24px; height: 1.5px; background: currentColor; }

/* Intro beside the form */
.spot-main { padding: clamp(32px, 5vw, 72px) 0 clamp(48px, 6vw, 96px); min-height: calc(100vh - 68px); }
.spot-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(36px, 5vw, 80px); align-items: start; }
.spot-intro { position: sticky; top: 108px; }
.spot-intro h1 { font-size: clamp(42px, 5.2vw, 72px); margin-bottom: 22px; }
.spot-intro .lede { margin-bottom: 0; }
.spot-intro .hero-points { flex-direction: column; gap: 12px; margin-top: 30px; font-size: 15.5px; }
.spot-help { margin: 30px 0 0; padding-top: 22px; border-top: 1px solid var(--line); font-size: 15px; color: var(--muted); }
.spot-help a { color: var(--ink); text-decoration-color: var(--accent); text-underline-offset: 3px; }

/* Form card */
.spot-form-card {
  background: var(--card); border: 1px solid var(--line); border-radius: 24px;
  padding: clamp(22px, 3.4vw, 40px);
  box-shadow: 0 40px 80px -56px rgba(14, 23, 38, .45);
}
.spot-form-card .field input, .spot-form-card .field select, .spot-form-card .field textarea,
.spot-form-card .pills span { background-color: var(--paper); }

/* Application form: three groups, each its own two-column grid */
.spot-form { row-gap: 34px; }
.spot-form .group {
  grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 20px 18px;
  min-width: 0; margin: 0; padding: 26px 0 0; border: 0; border-top: 1px solid var(--line-strong);
}
.spot-form .group:first-child { padding-top: 0; border-top: 0; }
.spot-form .group > legend {
  float: left; width: 100%; grid-column: 1 / -1; padding: 0; margin: 0 0 2px;
  font-family: var(--serif); font-size: 24px; font-weight: 500; line-height: 1.2; letter-spacing: -.01em;
}
.spot-form .group > legend .num { margin-right: 8px; }
.spot-form textarea { min-height: 140px; }
.spot-form textarea.short { min-height: 100px; }
.consent.field { flex-direction: row; align-items: flex-start; gap: 12px; font-size: 15px; color: var(--muted); cursor: pointer; }
.consent input { width: 20px; height: 20px; margin: 2px 0 0; flex: none; accent-color: var(--accent); cursor: pointer; }
.spot-form .form-status.is-ok { font-size: 16px; }

@media (max-width: 960px) {
  .spot-grid { grid-template-columns: 1fr; }
  .spot-intro { position: static; max-width: 640px; }
  .spot-form-card { max-width: 760px; }
}
@media (max-width: 640px) {
  .spot-tag { font-size: 11px; letter-spacing: .12em; }
  .spot-tag::before { display: none; }
  .spot-intro .hero-points { margin-top: 24px; }
  .spot-help { display: none; }
  .spot-form-card { border-radius: 20px; padding: 22px 18px; }
  .spot-form .group { grid-template-columns: 1fr; }
  .spot-form .group > legend { font-size: 22px; }
  .spot-form .form-actions .btn { width: 100%; justify-content: center; }
}
