.page-container {
  max-width: 1200px; }

.region {
  position: relative;
  margin-bottom: 0.75rem; }

.region::before {
  display: block;
  content: "";
  width: 100%; }

/*
    padding-top in percentages refers to parent width
    this allows us to specify an aspect-ratio
*/
.region_landscape-large::before {
  padding-top: calc(400 / 1024 * 100%); }

.region_square::before {
  padding-top: calc(1 / 1 * 100%); }

.region_landscape-small::before {
  padding-top: calc(1 / 2 * 100%); }

.region_portrait-small::before {
  padding-top: calc(2 / 1 * 100%); }

div.sf-interactions-proxyHoverContainer a {
  overflow: visible; }

/* Default: 4 tiles per row for large screens */
.col-sm-pt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  /* Each tile takes 25% of the row */
  max-width: 25%; }

/* 3 tiles per row for medium screens (e.g., tablets) */
@media (max-width: 1199.98px) {
  .col-sm-pt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.333%;
            flex: 0 0 33.333%;
    /* Each tile takes ~33% of the row */
    max-width: 33.333%; } }

/* 2 tiles per row for small screens (e.g., large phones) */
@media (max-width: 991.98px) {
  .col-sm-pt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    /* Each tile takes 50% of the row */
    max-width: 50%; } }

/* 1 tile per row for extra-small screens (e.g., small phones) */
@media (max-width: 575.98px) {
  .col-sm-pt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    /* Each tile takes the full row */
    max-width: 100%; } }

/*# sourceMappingURL=layout.css.map*/