.mf-epc {
  --mf-epc-u: 0.0520833333vw;
  --mf-epc-house-ease: cubic-bezier(0.17, 0.84, 0.44, 1);
  position: relative;
  display: flex;
  width: 100%;
  flex-direction: column;
  align-self: flex-start;
  gap: calc(18 * var(--mf-epc-u));
  color: inherit;
  font-family: var(
    --mf-font-body,
    "Schibstedgrotesk",
    "Schibsted Grotesk",
    Arial,
    sans-serif
  );
  font-size: calc(16 * var(--mf-epc-u));
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-decoration: none;
  transform: translateY(0);
}

.mf-epc,
.mf-epc *,
.mf-epc *::before,
.mf-epc *::after {
  box-sizing: border-box;
}

.mf-epc[data-mf-entrance="pending"] {
  pointer-events: none;
  transform: translateY(50%);
}

.mf-epc[data-mf-entrance="entering"] {
  pointer-events: none;
  transform: translateY(0);
  transition: transform 1.109s var(--mf-epc-house-ease);
  will-change: transform;
}

.mf-epc__media {
  position: relative;
  display: block;
  width: 100%;
  height: var(--mf-card-height, calc(540 * var(--mf-epc-u)));
  overflow: hidden;
  outline: 2px solid var(--mf-project-media-outline, transparent);
  outline-offset: -2px;
  background: #eee;
  transition: outline-color 0.3s var(--mf-epc-house-ease);
}

.mf-epc__image,
.mf-epc__media-empty {
  display: block;
  width: 100%;
  height: 100%;
}

.mf-epc__image {
  object-fit: cover;
  object-position: var(--mf-epc-image-x, 50%) var(--mf-epc-image-y, 50%);
  opacity: var(--mf-project-media-opacity, 1);
  transform: scale(1);
  transition: transform 1.109s var(--mf-epc-house-ease),
    opacity 0.3s var(--mf-epc-house-ease);
  will-change: transform;
}

.mf-epc[data-mf-sibling-dimmed="true"] .mf-epc__media {
  outline-color: #eee;
}

.mf-epc[data-mf-sibling-dimmed="true"] .mf-epc__image {
  opacity: 0;
}

.mf-epc__media-empty {
  background: #eee;
}

.mf-epc__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(20 * var(--mf-epc-u));
}

.mf-epc__title {
  display: block;
  min-width: 0;
  flex: 1;
  margin: 0;
  color: inherit;
  font: inherit;
  font-weight: 400;
}

.mf-epc__action-mask {
  position: relative;
  display: block;
  min-width: max-content;
  height: 1.2em;
  overflow: hidden;
  font-family: var(--mf-font-display, "Gambarino", Georgia, serif);
  text-align: right;
}

.mf-epc__meta,
.mf-epc__action {
  display: block;
  transition: transform 0.6s var(--mf-epc-house-ease);
}

.mf-epc__meta {
  transform: translateY(0);
}

.mf-epc__action {
  position: absolute;
  top: 0;
  right: 0;
  transform: translateY(101%);
}

.mf-epc__action > span {
  position: relative;
  display: inline-block;
}

.mf-epc__action > span::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: currentColor;
  content: "";
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 1.109s var(--mf-epc-house-ease),
    transform-origin 0s linear 1.109s;
}

.mf-epc:is(:hover, :focus-visible) .mf-epc__image {
  transform: scale(1.035);
}

.mf-epc:is(:hover, :focus-visible) .mf-epc__meta {
  transform: translateY(-101%);
}

.mf-epc:is(:hover, :focus-visible) .mf-epc__action {
  transform: translateY(0);
}

.mf-epc:is(:hover, :focus-visible) .mf-epc__action > span::after {
  transform: scaleX(1);
  transform-origin: left center;
  transition-delay: 0.3s, 0s;
}

.mf-epc:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}

@media (hover: none) {
  .mf-epc:hover .mf-epc__image {
    transform: scale(1);
  }

  .mf-epc:hover .mf-epc__meta {
    transform: translateY(0);
  }

  .mf-epc:hover .mf-epc__action {
    transform: translateY(101%);
  }
}

@media (max-width: 767.98px) {
  .mf-epc {
    --mf-epc-u: 0.2666666667vw;
    gap: calc(10 * var(--mf-epc-u));
    font-size: calc(14 * var(--mf-epc-u));
  }

  .mf-epc__media {
    height: var(--mf-card-height-mobile, calc(215 * var(--mf-epc-u)));
  }

  .mf-epc__row {
    gap: calc(10 * var(--mf-epc-u));
  }
}

@media (prefers-reduced-motion: reduce) {
  .mf-epc,
  .mf-epc__image,
  .mf-epc__media,
  .mf-epc__meta,
  .mf-epc__action,
  .mf-epc__action > span::after {
    transition-duration: 0.001ms !important;
  }

  .mf-epc[data-mf-entrance] {
    pointer-events: auto;
    transform: none;
  }
}

.mf-reference-reveal--extra {
  --mf-reference-reveal-offset: 0.5em;
}

.mf-reference-line-mask {
  display: block;
  overflow: hidden;
}

.mf-reference-line {
  display: block;
  will-change: transform;
}

.mf-reference-reveal--extra .mf-reference-line {
  margin-top: calc(var(--mf-reference-reveal-offset) * -1);
  margin-bottom: calc(var(--mf-reference-reveal-offset) * -1);
  padding-top: calc(var(--mf-reference-reveal-offset) / 2);
  padding-bottom: calc(var(--mf-reference-reveal-offset) / 2);
}

.mf-reference-reveal--extra
  .mf-reference-line-mask:first-child
  .mf-reference-line {
  margin-top: calc(var(--mf-reference-reveal-offset) * -0.5);
}

.mf-reference-reveal--extra
  .mf-reference-line-mask:last-child
  .mf-reference-line {
  margin-bottom: calc(var(--mf-reference-reveal-offset) * -0.5);
}

.mf-sps {
  --mf-sps-u: 0.0520833333vw;
  width: 100%;
  margin-top: calc(300 * var(--mf-sps-u));
  padding-bottom: calc(120 * var(--mf-sps-u));
  color: #000;
  background: #fff;
  font-family: var(--mf-font-body, "Schibstedgrotesk", Arial, sans-serif);
  font-feature-settings: "kern" off;
  font-kerning: none;
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-rendering: optimizespeed;
  transition: color 0.3s cubic-bezier(0.17, 0.84, 0.44, 1),
    background-color 0.3s cubic-bezier(0.17, 0.84, 0.44, 1);
}

.mf-sps,
.mf-sps *,
.mf-sps *::before,
.mf-sps *::after {
  box-sizing: border-box;
}

.mf-sps[data-mf-dark-theme] {
  color: #fff;
  background: #000;
}

.mf-sps__container {
  width: 100%;
  padding: 0 calc(30 * var(--mf-sps-u));
}

.mf-sps__title {
  width: 100%;
  max-width: calc(500 * var(--mf-sps-u));
  margin: 0;
  font: 400 calc(80 * var(--mf-sps-u)) / 0.8
    var(--mf-font-body, "Schibstedgrotesk", Arial, sans-serif);
  letter-spacing: -0.03em;
}

.mf-sps__title sup {
  position: relative;
  top: -0.5em;
  font-family: inherit;
  font-size: 0.55em;
  letter-spacing: -0.02em;
  line-height: 1.2;
  vertical-align: baseline;
}

.mf-sps__projects {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(15, minmax(0, 1fr));
  gap: calc(20 * var(--mf-sps-u));
  margin-top: calc(65 * var(--mf-sps-u));
}

.mf-sps__projects > * {
  width: 100%;
  min-width: 0;
}

.mf-sps__projects > :nth-child(10n + 1) {
  grid-column: 1 / 8;
}

.mf-sps__projects > :nth-child(10n + 2) {
  grid-column: 9 / -1;
  margin-top: calc(170 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 3) {
  --mf-card-height: calc(700 * var(--mf-sps-u));
  grid-column: 1 / 5;
  margin-top: calc(416 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 4) {
  grid-column: 6 / 12;
  margin-top: calc(188 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 5) {
  grid-column: 8 / 15;
  margin-top: calc(-214 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 6) {
  --mf-card-height: calc(700 * var(--mf-sps-u));
  grid-column: 5 / 9;
  margin-top: calc(178 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 7) {
  grid-column: 1 / 8;
  margin-top: calc(323 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 8) {
  grid-column: 9 / -1;
  margin-top: calc(154 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n + 9) {
  --mf-card-height: calc(500 * var(--mf-sps-u));
  grid-column: 2 / 8;
  margin-top: calc(638 * var(--mf-sps-u));
}

.mf-sps__projects > :nth-child(10n) {
  --mf-card-height: calc(700 * var(--mf-sps-u));
  grid-column: 11 / -2;
  margin-top: calc(100 * var(--mf-sps-u));
}

.mf-sps__see-all {
  position: relative;
  display: block;
  width: max-content;
  margin: calc(140 * var(--mf-sps-u)) auto 0;
  color: inherit;
  font-size: calc(16 * var(--mf-sps-u));
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

.mf-sps__see-all::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: max(1px, 0.05em);
  background: currentColor;
  content: "";
  pointer-events: none;
  transform: scaleX(1);
  transform-origin: left;
  transition: transform 1.109s cubic-bezier(0.17, 0.84, 0.44, 1);
}

.mf-sps__see-all:hover::before,
.mf-sps__see-all:focus-visible::before {
  transform: scaleX(0);
  transform-origin: right;
}

.mf-sps__see-all--disabled {
  opacity: 0.45;
}

.mf-sps__see-all--disabled::before {
  display: none;
}

@media (max-width: 767.98px) {
  .mf-sps {
    --mf-sps-u: 0.2666666667vw;
    margin-top: calc(60 * var(--mf-sps-u));
    padding-bottom: calc(60 * var(--mf-sps-u));
  }

  .mf-sps__container {
    padding: 0 calc(15 * var(--mf-sps-u));
  }

  .mf-sps__title {
    font-size: calc(30 * var(--mf-sps-u));
  }

  .mf-sps__projects {
    display: flex;
    flex-direction: column;
    gap: calc(16 * var(--mf-sps-u));
    margin-top: calc(30 * var(--mf-sps-u));
  }

  .mf-sps__projects > :nth-child(n) {
    --mf-card-height: calc(215 * var(--mf-sps-u));
    width: 100%;
    margin-top: 0;
  }

  .mf-sps__projects > :nth-child(n + 7) {
    display: none;
  }

  .mf-sps__see-all {
    margin-top: calc(60 * var(--mf-sps-u));
    font-size: calc(14 * var(--mf-sps-u));
  }
}

