/* ==========================================================================
   Marfa page: hero with an email signup. Every number was measured from the
   live page's computed styles (1440px viewport). The intro, weather and
   airports sections use the location pages' styles from parity-location.css.
   ========================================================================== */

.jm-hero {
  position: relative;
  box-sizing: border-box;
  min-height: 510px;
  padding: 210px 15px 0;
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  text-align: center;
  font-family: "Windsor", Georgia, serif;
  letter-spacing: 1px;
}
.jm-hero__overlay { position: absolute; inset: 0; background: var(--jth-ink); }
.jm-hero__inner { position: relative; }
.jth-marfa .jm-hero h1 {
  margin: 0; font-size: 60px; line-height: 54px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: #EDE6E0;
}
.jth-marfa .jm-hero__sub {
  margin: 5px 0 0; font-size: 21px; line-height: 30px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: #EDE6E0;
}

/* Signup: a 600px-wide box with a 560px form (20px margin), as on live. */
.jm-signup { box-sizing: border-box; width: 560px; max-width: calc(100% - 40px); margin: 20px auto 0; text-align: left; }
.jth-marfa .jm-signup h2 {
  margin: 0; max-width: none; text-align: center;
  font-size: 16px; line-height: 24px; font-weight: 700; font-style: italic; letter-spacing: 1px; text-transform: uppercase; color: #fff;
}
.jm-signup input[type="email"] {
  display: block; box-sizing: border-box; width: 100%; height: 40px; margin: 0; padding: 8px 0;
  font-family: inherit; font-size: 16.5px; line-height: 28px; letter-spacing: 1px; color: var(--jth-ink);
  background: transparent; border: 0; border-bottom: 1px solid var(--jth-ink); border-radius: 0; box-shadow: none; outline: none;
}
.jm-signup input[type="email"]::placeholder { color: #ccc; opacity: 1; }
/* Mailchimp's stylesheet turns the (empty) helper-text element under the field into this pale pill; live shows it. */
.jm-signup__bar { display: block; height: 6px; margin: 2px 0 16px; border-radius: 3px; background: rgba(255, 255, 255, .85); }
.jm-signup__trap { position: absolute; left: -5000px; }
.jm-signup input[type="submit"] {
  display: block; box-sizing: border-box; height: 40px; margin: 0 5px 10px 0; padding: 0 15px;
  font-family: inherit; font-size: 14px; line-height: 40px; font-weight: 400; font-style: italic; letter-spacing: 1px; text-transform: uppercase;
  color: var(--jth-ink); background: transparent; border: 1px solid var(--jth-ink); border-radius: 0; cursor: pointer;
  transition: background-color .23s ease-in-out, color .23s ease-in-out;
}
.jm-signup input[type="submit"]:hover, .jm-signup input[type="submit"]:focus { background: var(--jth-ink); color: #fff; }

/* Intro: the heading sits directly above the text, and the section has 100px under it (old builder container). */
.jth-marfa .jl-intro { padding-bottom: 100px; }
.jth-marfa .jl-intro h2 { margin-bottom: 0; font-weight: 700; letter-spacing: 1px; }
.jth-marfa .jl-intro p { color: var(--jth-ink); }

/* Weather + airports. Live styles these as old-builder icon boxes, not the location pages' grid: 100x46 sun /
   54x54 plane icons, 21px italic uppercase headings, a three-column table with 32px rows, centred airport text. */
.jth-marfa .jl-info { padding: 30px 0 100px; }
.jth-marfa .jl-info__col .jl-icon { display: block; height: auto; }
.jth-marfa .jl-weather .jl-icon img { width: 100px; height: 46px; max-height: none; margin: 0 auto 23px; }
.jth-marfa .jl-airports .jl-icon img { width: 54px; height: 54px; max-height: none; margin: 0 auto 16px; }
.jth-marfa .jl-info__col h2 {
  margin: 0 0 10px; font-size: 21px; line-height: 40px; font-weight: 400; font-style: italic; letter-spacing: 2px;
  text-transform: uppercase; color: var(--jth-ink);
}
.jth-marfa .jl-weather__rows { margin: 0 0 20px; }
.jth-marfa .jl-weather__row { grid-template-columns: 140px 167px 167px; height: 32px; min-height: 0; }
.jth-marfa .jl-weather__row strong, .jth-marfa .jl-weather__row span { font-size: 16px; line-height: 24px; letter-spacing: 1px; color: #000; }
.jth-marfa .jl-weather__row strong { padding-left: 3px; font-weight: 700; }
.jth-marfa .jl-airports { padding: 0 55px; }
.jth-marfa .jl-airports p, .jth-marfa .jl-airports ul { margin: 0 0 16px; font-size: 16px; line-height: 24px; text-align: center; color: var(--jth-ink); }
.jth-marfa .jl-airports ul { margin: 0; }
.jth-marfa .jl-airports li { margin: 0; padding: 0; font-size: 16px; line-height: 24px; text-align: center; }
.jth-marfa .jl-airports li + li { margin-bottom: 2px; padding: 5px 15px; font-size: 15px; line-height: 22.5px; }
.jth-marfa .jl-airports li strong { color: var(--jth-ink); font-weight: 700; }

/* Container widths follow the old builder: 1170 / 970 / 750, full width on phones. */
@media (min-width: 992px) and (max-width: 1199px) { .jth-marfa .jl-info { max-width: 970px; } }

/* Tablet: the two columns stay side by side (location pages stack them); smaller type, narrower table. */
@media (min-width: 768px) and (max-width: 991px) {
  .jth-marfa .jl-info { grid-template-columns: 1fr 1fr; max-width: 750px; }
  .jth-marfa .jl-intro h2 { font-size: 36px; }
  .jth-marfa .jl-weather { padding: 0 10px; border-right: 1px solid var(--jth-gold); margin-bottom: 0; }
  .jth-marfa .jl-weather__rows { margin-bottom: 30px; }
  .jth-marfa .jl-weather__row { grid-template-columns: 100px 120px 120px; }
  .jth-marfa .jl-weather__row strong, .jth-marfa .jl-weather__row span { font-size: 14px; }
  .jth-marfa .jl-airports { padding: 0 25px; }
  .jth-marfa .jl-airports p { margin-bottom: 14px; font-size: 14px; line-height: 21px; }
}

/* Phones (values measured on live at 390px): single column, smaller headings, no letter-spacing on them. */
@media (max-width: 767px) {
  .jm-hero { min-height: 0; padding: 210px 15px 0; }
  .jth-marfa .jm-hero h1 { font-size: 54px; line-height: 60px; letter-spacing: normal; }
  .jth-marfa .jm-hero__sub { font-size: 19px; line-height: 27px; }
  .jth-marfa .jm-signup h2 { letter-spacing: normal; }
  .jm-signup input[type="submit"] { letter-spacing: normal; }

  .jth-marfa .jl-intro { padding: 60px 15px 40px; }
  .jth-marfa .jl-intro h2 { font-size: 25px; line-height: 32.5px; letter-spacing: normal; }

  .jth-marfa .jl-info { grid-template-columns: 1fr; max-width: none; padding: 30px 0 29px; }
  .jth-marfa .jl-weather { padding: 20px; border-right: 0; margin-bottom: 0; }
  .jth-marfa .jl-airports { padding: 20px 55px 30px; }
  .jth-marfa .jl-info__col h2 { line-height: 32px; letter-spacing: normal; }
  .jth-marfa .jl-airports h2 { margin-left: -40px; margin-right: -40px; }
  .jth-marfa .jl-weather__rows { margin-bottom: 30px; }
  .jth-marfa .jl-weather__row { grid-template-columns: 70px 140px 140px; }
}
