.ph-intro {
  background: var(--white); color: var(--text-dark);
  padding: calc(50px * var(--ps)) 0 calc(40px * var(--ps));
}
@media (min-width: 768px) and (max-width: 1199px) { .ph-intro { padding-bottom: calc(50px * var(--ps)); } } 
.ph-intro__content { display: flex; flex-direction: column; }
.ph-intro__content > p { margin: 10px 0; }
.ph-rt { --sp: .6; text-align: center; }
@media (min-width: 768px) { .ph-rt { --sp: 1; } }
.ph-rt__inner { max-width: 998px; margin: 0 auto; padding: 0 var(--gutter); }
.ph-rt__heading { margin: 0 0 calc(var(--bs, 0px) * var(--sp)); word-break: break-word; }
.ph-rt__desc { margin: 0 0 calc(var(--bs, 0px) * var(--sp)); font-family: var(--font-heading); font-weight: 400; word-break: break-word; }
.ph-rt__desc > p { margin: 0; }
.ph-rt__caption { display: block; margin: 0 0 calc(var(--bs, 0px) * var(--sp)); font-size: 16px; line-height: 28px; font-weight: 700; word-break: break-word; }
.ph-promo { --pf: .7; background: var(--s-bg); color: var(--s-text); }
@media (min-width: 768px) { .ph-promo { --pf: .85; } }
@media (min-width: 1200px) { .ph-promo { --pf: 1; } }
.ph-promo__wrap { padding: calc(10px * var(--pf)) 0 calc(30px * var(--pf)); }
.ph-promo__grid { display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-rows: 200px; }
.ph-promo__card { position: relative; height: 100%; margin: 0; overflow: hidden; background: var(--ink); }
.ph-promo__card img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: inherit; }
.ph-promo__card--a { border-radius: var(--radius-section) var(--radius-section) 0 0; }
.ph-promo__card--b { border-radius: 0 0 var(--radius-section) var(--radius-section); }
@media (min-width: 768px) {
  .ph-promo__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 590px; }
  .ph-promo__card--a { border-radius: var(--radius-section) 0 0 var(--radius-section); }
  .ph-promo__card--b { border-radius: 0 var(--radius-section) var(--radius-section) 0; }
}
.ph-rows__outer { overflow: hidden; }
.ph-row { display: flex; flex-direction: column; background: var(--white); color: var(--text-dark); }
.ph-row__media { position: relative; width: 100%; padding-top: 50%; min-height: 350px; overflow: hidden; }
.ph-row__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.ph-row__text { display: flex; flex-direction: column; justify-content: center; flex: 1 1 auto; padding: 25px 30px; }
.ph-row__content { width: 100%; text-align: left; }
.ph-row__heading { margin: 0 0 28px; }
.ph-row__desc > p { margin: 0; }
.ph-row__foot { margin-top: 37px; }
.ph-row__btn { padding: 11px 25px; font-weight: 600; }
@media (min-width: 576px) { .ph-row__text { padding: 25px 40px; } }
@media (min-width: 768px) {
  .ph-row { flex-direction: row; overflow: hidden; }
  .ph-row--reverse { flex-direction: row-reverse; }
  .ph-row__media { flex: 0 0 auto; width: 50%; padding-top: 0; min-height: 0; }
  .ph-row__text { padding: 20px 50px; min-height: 500px; }
  .ph-row__content { text-align: center; }
}
@media (min-width: 992px) { .ph-row__text { min-height: 550px; } }
@media (min-width: 1200px) { .ph-row__text { min-height: 600px; } }
.ph-pg { padding: 30px 0 50px; }
@media (min-width: 750px) { .ph-pg .pg__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
