/* Shared red photo hero for home, inner and compact routes. */
.ph {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: var(--red);
  color: var(--cream);
}
.ph .ph-bg {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  opacity: 1;
  z-index: -2;
  pointer-events: none;
  user-select: none;
}
.ph .ph-tint {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: rgba(191, 27, 44, .84);
}
.ph h1, .ph .lede, .ph .crumbs, .ph .crumbs a { color: var(--cream); }
.ph h1 { text-shadow: 4px 4px 0 var(--ink); }
.ph .hero-big { color: var(--cream); text-shadow: 5px 5px 0 var(--ink); }
.ph .crumbs, .ph .lede { text-shadow: 1px 1px 0 rgba(20, 17, 17, .7); }
.ph h1 .ink-t, .ph h1 .accent, .ph .hero-h1 .ink-t {
  display: inline;
  color: var(--cream);
  background: transparent;
  padding: 0;
  text-shadow: 4px 4px 0 var(--ink);
  box-shadow: none;
  -webkit-box-decoration-break: initial;
  box-decoration-break: initial;
}
.ph .hero-h1, .ph .hero-big, .ph .ph-eyebrow, .ph .ink-label {
  -webkit-font-smoothing: auto;
  -moz-osx-font-smoothing: auto;
  text-rendering: geometricPrecision;
}
.ph .hero-h1.rise, .ph .hero-big.rise, .ph .ph-eyebrow.rise, .ph .ink-label.rise {
  animation-fill-mode: backwards;
}
.ph .ink-label { transform: none; }

.page-hero.ph { padding: 0; display: flex; align-items: center; }
.ph .ph-inner { position: relative; z-index: 2; padding-top: 3rem; padding-bottom: 3.5rem; }
.ph .hero-grid { position: relative; z-index: 2; padding-bottom: 3.5rem; }
.ph h1 { max-width: 16ch; overflow-wrap: anywhere; }
.ph--inner { min-height: auto; }
@media (min-width: 900px) { .ph--inner { min-height: 50vh; } .ph--compact { min-height: 31vh; } }
.ph--compact .ph-inner { padding-top: 2.5rem; padding-bottom: 3rem; }
.ph-eyebrow { display: inline-block; margin-bottom: 1rem; }
.ph .ph-eyebrow, .ph .ink-label, .ph .eyebrow {
  background: var(--cream);
  color: var(--red);
  font-family: 'Archivo Black', sans-serif;
  font-weight: 800;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .1em;
  border: 2px solid var(--ink);
  box-shadow: 4px 4px 0 var(--ink);
  transform: none;
  display: inline-block;
  width: fit-content;
}
.ph .chip, .ph .fact-chip, .ph-children li, .ph .hero-facts li {
  background: transparent;
  color: var(--cream);
  border: 2px solid var(--cream);
  box-shadow: none;
  font-weight: 700;
  font-size: 14px;
}
.ph .form-card { background: #FFFFFF; border: 4px solid var(--ink); box-shadow: 12px 12px 0 var(--red); }
.ph-copy, .ph-right { min-width: 0; }
.ph-with-right { display: grid; gap: 2.5rem; align-items: start; }
@media (min-width: 1024px) { .ph-with-right { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ph-children { margin-top: 1.25rem; }
