/* GEMCAP · form pages (quote, drivers, driver apply, contact): the few rules pages.css §7 does not have.
   Loaded after pages.css on those four pages only. Tokens only; nothing here animates. */

/* a plain hero that hands straight over to a form: less air under the lead, so the form starts near the fold */
.page-hero--plain { padding-bottom: var(--space-6); }
.section--form { padding-top: var(--space-8); }

/* a fieldset's legend sits outside its grid, so the label-to-chips gap is added by hand (same 8px as a label's) */
fieldset.field > legend { margin-bottom: var(--space-2); }

/* the stamped /drivers/ form: the slot reserves the form's height so nothing below it moves when it appears.
   --slot-h is the tablet/desktop height (set inline); --slot-h-sm the phone height (under 768px, where the rows stack). */
@media (max-width: 767.98px) { .form-slot { min-height: var(--slot-h-sm, var(--slot-h, 1200px)); } }
html:not(.js) .form-slot { display: none; }   /* no script: the noscript link takes its place */
.form-noscript { padding: var(--space-5); border-radius: var(--radius-md); background: var(--color-tint-gold); }

/* contact options: two columns once there is room (four rows become 2 x 2, dispatch first and biggest) */
@media (min-width: 768px) { .contact-opts { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-10); } }
.contact-opt address { font-style: normal; }
.contact-opt .links, .contact-opt .lines { display: grid; }

/* the side panel's plain facts (office, hours, fax) */
.side .facts { display: grid; gap: var(--space-3); font-size: var(--text-small); line-height: var(--leading-small); }
.side .facts b { display: block; font-size: var(--text-label); color: var(--color-ink); }
.side .facts address { font-style: normal; }
