.block p.block-emphasis-1 {
  color: #fff;
  text-align: left;
  font-size: 1.28rem;
  font-weight: 400;
  line-height: 1.35;
  -webkit-hyphens: none;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.track-row p.track-meta,
.track-row p.track-blurb,
.block .track-row p {
  text-align: left !important;
  text-align-last: left !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
}

.start-list li {
  text-wrap: pretty;
}

@media (min-width: 900px) {
  .start-list li {
    letter-spacing: -0.01em;
  }
}

@media (max-width: 900px) {
  .block p:not(.block-label):not(.block-lead):not(.block-emphasis-1):not(.track-meta):not(.track-blurb) {
    text-align: left;
    -webkit-hyphens: none;
    hyphens: none;
  }

  .start-list li {
    text-align: left;
    letter-spacing: 0;
  }
}

/* Base mobile (touch) — proportional to desktop feel */
@media (hover: none) {
  body {
    font-size: 0.9rem;
    line-height: 1.35;
  }

  .block p:not(.block-label):not(.block-lead) {
    text-align: left !important;
    text-align-last: left !important;
    -webkit-hyphens: none !important;
    hyphens: none !important;
    word-spacing: normal !important;
    line-height: 1.35 !important;
    margin-bottom: 0.8em;
  }
}

/* Landscape: compact proportional scale */
@media (hover: none) and (orientation: landscape),
@media (max-width: 900px) and (orientation: landscape) {
  body {
    font-size: 0.8rem !important;
    line-height: 1.32 !important;
  }

  .block p:not(.block-label):not(.block-lead) {
    font-size: 1em !important;
    line-height: 1.32 !important;
  }

  .block-label {
    font-size: 1.7em !important;
    margin-bottom: 0.9rem !important;
  }

  .block-title {
    font-size: 1.12em !important;
  }

  .track-row .track-meta,
  .track-meta,
  .wave-mark {
    font-size: 0.65rem !important;
    line-height: 1.2 !important;
  }
}

/* Portrait: slightly larger but still compact */
@media (hover: none) and (orientation: portrait),
@media (max-width: 600px) and (orientation: portrait) {
  body {
    font-size: 0.92rem !important;
    line-height: 1.35 !important;
  }

  .block p:not(.block-label):not(.block-lead) {
    font-size: 1em !important;
    line-height: 1.35 !important;
  }

  .block-label {
    font-size: 1.75em !important;
  }

  .block-title {
    font-size: 1.08em !important;
  }
}

.contact-field input:-webkit-autofill,
.contact-field input:-webkit-autofill:hover,
.contact-field input:-webkit-autofill:focus,
.contact-field input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--color-fg);
  caret-color: var(--color-fg);
  box-shadow: 0 0 0 1000px #2c2d33 inset;
  -webkit-box-shadow: 0 0 0 1000px #2c2d33 inset;
  outline: 2px solid var(--color-label-blue);
  outline-offset: 0;
  transition: background-color 99999s ease-out;
}

.contact-row .contact-field input:not(:placeholder-shown):valid {
  outline: 2px solid var(--color-label-blue);
  outline-offset: 0;
}
