.c-sec { --ps: .45; position: relative; }
@media (min-width: 768px) { .c-sec { --ps: .65; } }
@media (min-width: 1200px) { .c-sec { --ps: 1; } }
.c-contained { max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter); }
@media (min-width: 1200px) { .cards--4 { --cols: 4; } }
.crumbs { position: relative; display: flex; overflow: hidden; }
.crumbs, .pbanner--fluid, .pbanner--boxed .pbanner__content { --s-hover: var(--white); --s-focus: var(--white); } 
.crumbs > div { width: 100%; }
.crumbs--fluid { background: var(--ink); color: var(--white); }
.crumbs__list {
  display: flex; flex-wrap: wrap; align-items: center; margin: 0; padding: 12px 0; list-style: none;
  background: var(--ink); color: var(--white); font: 12px/20px var(--font-heading);
}
.crumbs--boxed .crumbs__list { padding: 12px 22px; }
.crumbs__item { display: flex; align-items: center; }
.crumbs__item + .crumbs__item::before { content: ">"; flex-shrink: 0; display: block; margin: 0 11px; }
.crumbs__link { font-weight: 600; text-decoration: none; word-break: break-word; }
a.crumbs__link { color: var(--on-dark-soft); transition: color .3s ease; }
a.crumbs__link:hover { color: var(--white); }
.pbanner { position: relative; z-index: 1; overflow: hidden; text-align: center; }
.pbanner--fluid { background: var(--ink); color: var(--text-muted); }
.pbanner__wrap { display: flex; }
.pbanner__wrap > div { width: 100%; }
.pbanner__content {
  display: flex; flex-direction: column; min-height: 392.16px; 
}
.pbanner--boxed .pbanner__content {
  position: relative; z-index: 1; background: var(--ink); color: var(--text-muted);
  border-radius: 0 0 var(--radius-section) var(--radius-section);
}
.pbanner__head { width: 100%; max-width: 713px; margin: 0 auto auto; padding: 12px 22px; word-break: break-word; }
.pbanner__head--empty { padding-bottom: 200px; }
.pbanner__caption { font: 700 14px/22px var(--font-heading); color: var(--white); }
.pbanner__heading { margin: 0; color: var(--white); }
.pbanner__desc { margin: 17px 0 0; font-size: 16px; line-height: 28px; color: var(--on-dark-soft); }
.pbanner__bg { position: absolute; inset: 0; z-index: -1; overflow: hidden; border-radius: inherit; }
.pbanner__bg img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: inherit; }
.pbanner__bg::after { content: ""; position: absolute; inset: 0; background: var(--pb-overlay, none); border-radius: inherit; }
@media (max-width: 767px) { .pbanner--m-left { text-align: left; } .pbanner--m-left .pbanner__head { margin-left: 0; } }
