@charset "UTF-8";
/* RESET */
* {
  margin: 0;
  padding: 0;
  outline: 0;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

.img--cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

audio,
iframe,
video {
  display: block;
}

:root {
  --blue: #3C646E;
  --blue-light: #C9D8DD;
  --blue-tint: #F5F7F8;
  --blue-medium: #4F737C;
  --beige: #FAFFF0;
  --darkbeige: #f1f7e9;
  --coral: #DE6C4F;
  --coral-dark: #8A3F30;
  --hero-bottom: 3.75rem;
  --text-m-width: calc(800px + 2rem);
  --table-padding: 1.5rem;
}
@media screen and (max-width: 480px) {
  :root {
    --table-padding: 1rem;
  }
}

/* TYPOGRAPHY */
/* font */
html,
body,
button,
select,
input,
textarea {
  font: 400 16px/24px "Roboto", sans-serif;
  color: var(--blue);
  -webkit-font-smoothing: antialiased;
}

/* headings */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
h6 {
  font-weight: 400;
}

h1,
.h1 {
  font-size: 3.75rem;
  line-height: 1.2em;
  color: var(--coral);
}
@media screen and (max-width: 600px) {
  h1,
  .h1 {
    font-size: 2.5rem;
  }
}

h2,
.h2 {
  font-size: 2.5rem;
  line-height: 1.2em;
}
@media screen and (max-width: 600px) {
  h2,
  .h2 {
    font-size: 2.2rem;
  }
}

h3,
.h3 {
  font-size: 1.5rem;
  line-height: 2.25rem;
}

h4,
.h4 {
  font-size: 1rem;
  line-height: 1.75rem;
}

/* paragraphs */
h1 + p,
h2 + p,
h3 + p,
h4 + p,
p + p {
  margin-top: 1.5rem;
}

p + h1,
p + h2,
p + h3,
p + h4 {
  margin-top: 1.5rem;
}

p + hr,
hr + p {
  margin-top: 1rem;
}

/* lists */
ul,
ol {
  margin: 2rem 0;
  padding-left: 2rem;
}

ul:first-child {
  margin-top: 0;
}

ul:last-child {
  margin-bottom: 0;
}

/* sub-lists */
ul ul,
ol ol,
ul ol,
ol ul {
  margin: 0;
}

/* text */
.fs--1 {
  font-size: 1rem;
  line-height: 1.5rem;
}

.fs--2 {
  font-size: 2rem;
  line-height: 2.5rem;
}

.fs--3 {
  font-size: 3rem;
  line-height: 3.5rem;
}

.text--xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.text--s {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text--m {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text--l {
  font-size: 3rem;
  line-height: 1.2em;
}

.text--xl {
  font-size: 5rem;
  line-height: 1.2em;
}

.text--xxl {
  font-size: 8rem;
  line-height: 9rem;
}

.text--upper {
  text-transform: uppercase;
}

.text--lower {
  text-transform: lowercase;
}

.td--none {
  text-decoration: none;
}

.td--underline {
  text-decoration: underline;
}

/* weight, style */
b,
strong,
.bold {
  font-weight: 700;
}

.medium {
  font-weight: 500;
}

.normal {
  font-weight: 400;
}

.italic {
  font-style: italic;
}

/* text align */
.ta--c {
  text-align: center;
}

.ta--l {
  text-align: left;
}

.ta--r {
  text-align: right;
}

.ta--j {
  text-align: justify;
}

.nowrap {
  white-space: nowrap;
}

/* links */
a,
.link {
  color: var(--blue);
  text-decoration: underline;
  font-weight: 700;
  cursor: pointer;
}

h1 a,
h2 a,
h3 a,
h4 a {
  color: inherit;
  font-weight: inherit;
}

/* LAYOUT */
.wrapper {
  overflow: hidden;
}

.inner {
  max-width: 1600px;
  margin: auto;
  padding: 0 2rem;
}

.inner--s {
  max-width: 600px;
}

.inner--m {
  max-width: 900px;
}

.inner--l {
  max-width: 1400px;
}

.inner--f {
  max-width: none;
}

/* full */
.inner--vxs {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.inner--vs {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.inner--vm {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.inner--vl {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.inner--vxl {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.inner--npt {
  padding-top: 0;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline-flex {
  display: inline-flex;
}

.inline {
  display: inline;
}

.none {
  display: none;
}

.static {
  position: static;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed;
}

.sticky {
  position: sticky;
}

.center--x,
.center--y,
.center--xy {
  position: absolute;
}

.center--x {
  left: 50%;
  transform: translateX(-50%);
}

.center--y {
  top: 50%;
  transform: translateY(-50%);
}

.center--xy {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.scroll {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.overflow--hidden {
  overflow: hidden;
}

.overflow--auto {
  overflow: auto;
}

/* FLEX */
.flx {
  display: flex;
}

.aic {
  align-items: center;
}

.ais {
  align-items: flex-start;
}

.aie {
  align-items: flex-end;
}

.jcc {
  justify-content: center;
}

.jcb {
  justify-content: space-between;
}

.jca {
  justify-content: space-around;
}

.jcs {
  justify-content: flex-start;
}

.jce {
  justify-content: flex-end;
}

.fcc {
  display: flex;
  align-items: center;
  justify-content: center;
}

.fcb {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.fdr {
  flex-direction: row;
}

.fdc {
  flex-direction: column;
}

.fdrr {
  flex-direction: row-reverse;
}

.fdcr {
  flex-direction: column-reverse;
}

.flx--wrap {
  flex-wrap: wrap;
}

/* flex children */
.fg--0 {
  flex-grow: 0;
}

.fg--1 {
  flex-grow: 1;
}

.f2--0 {
  flex-shrink: 0;
}

.fs--1 {
  flex-shrink: 1;
}

/* GRID */
.grd {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}

.gg--1 {
  grid-gap: 1rem;
}

.gg--2 {
  grid-gap: 2rem;
}

.gg--3 {
  grid-gap: 3rem;
}

.grd--2 {
  grid-template-columns: repeat(2, 1fr);
}

.grd--3 {
  grid-template-columns: repeat(3, 1fr);
}

.grd--4 {
  grid-template-columns: repeat(4, 1fr);
}

.grd--5 {
  grid-template-columns: repeat(5, 1fr);
}

.grd--6 {
  grid-template-columns: repeat(6, 1fr);
}

.gc--1 {
  grid-column: span 1;
}

.gc--2 {
  grid-column: span 2;
}

.gc--3 {
  grid-column: span 3;
}

.gc--4 {
  grid-column: span 4;
}

.gc--5 {
  grid-column: span 5;
}

.gc--6 {
  grid-column: span 6;
}

.gc--7 {
  grid-column: span 7;
}

.gc--8 {
  grid-column: span 8;
}

.gc--9 {
  grid-column: span 9;
}

.gc--10 {
  grid-column: span 10;
}

.gc--11 {
  grid-column: span 11;
}

.gc--12 {
  grid-column: span 12;
}

/* columns grid */
.cols {
  display: grid;
  grid-gap: 2rem;
}

.cols--2 {
  grid-template-columns: repeat(2, 1fr);
}

.cols--3 {
  grid-template-columns: repeat(3, 1fr);
}

.cols--4 {
  grid-template-columns: repeat(4, 1fr);
}

.cols--5 {
  grid-template-columns: repeat(5, 1fr);
}

.cols--5 {
  grid-template-columns: repeat(6, 1fr);
}

@media screen and (max-width: 600px) {
  .cols--s-1 {
    grid-template-columns: 1fr;
  }
}
/* MARGINS */
.m--0 {
  margin: 0;
} /* reset */
.mt--0 {
  margin-top: 0rem;
}

.mt--1 {
  margin-top: 1rem;
}

.mt--2 {
  margin-top: 2rem;
}

.mt--3 {
  margin-top: 3rem;
}

.mt--4 {
  margin-top: 4rem;
}

.mr--1 {
  margin-right: 1rem;
}

.mr--2 {
  margin-right: 2rem;
}

.mb--0 {
  margin-bottom: 0rem;
}

.mb--1 {
  margin-bottom: 1rem;
}

.mb--2 {
  margin-bottom: 2rem;
}

.mb--3 {
  margin-bottom: 3rem;
}

.mb--4 {
  margin-bottom: 4rem;
}

.ml--1 {
  margin-left: 1rem;
}

.ml--2 {
  margin-left: 2rem;
}

.p--0 {
  padding: 0;
} /* reset */
.p--1 {
  padding: 1rem;
}

.p--2 {
  padding: 2rem;
}

.p--3 {
  padding: 3rem;
}

.pt--0 {
  padding-top: 0;
}

.text--black {
  color: #000;
}

.text--white {
  color: #fff;
}

.text--beige {
  color: var(--beige);
}

.text--coral {
  color: var(--coral);
}

.bg--black {
  background-color: #000;
}

.bg--white {
  background-color: #fff;
}

.bg--blue {
  background-color: var(--blue);
}

.bg--blue-light {
  background-color: var(--blue-tint);
}

.bg--beige {
  background-color: var(--beige);
}

.bg--darkbeige {
  background-color: var(--darkbeige);
}

/* buttons */
.btn {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 1rem 2rem;
  text-decoration: none;
  font-weight: 600;
  color: var(--blue);
  cursor: pointer;
  transition: 0.3s;
}
.btn--s {
  padding: 0.5rem 1rem;
}

.btn--blue {
  background: var(--blue);
  color: var(--beige);
}

.bg--blue .btn--tran {
  border-color: var(--beige);
  color: var(--beige);
}

@media (hover: hover) and (pointer: fine) {
  .btn--tran:hover {
    background-color: var(--blue);
    color: #fff;
  }
  .bg--blue .btn--tran:hover {
    background-color: #fff;
    color: var(--blue);
  }
  .btn--blue:hover {
    background-color: transparent;
    color: var(--blue);
  }
  .btn:not(.tothetop):hover {
    color: #fff;
    background: var(--blue);
  }
  .btn:hover svg path {
    fill: #fff;
  }
  .bg--blue .btn:hover svg path {
    fill: var(--blue);
  }
}
.btn svg {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
  margin-left: 1rem;
}

.btn svg path {
  transition: 0.3s;
}

.bg--blue .btn svg path {
  fill: var(--beige);
}

/* cta */
.cta {
  position: relative;
  color: var(--blue);
  text-decoration: underline;
  font-weight: 700;
}

.cta::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  right: -1.5rem;
  top: calc(50% - 6px);
  background: url(../img/icons/chevron-right.svg) center center/auto 100% no-repeat;
  transition: 0.15s;
}

.cta--white {
  color: #fff;
}

.cta--white::after {
  background-image: url(../img/icons/chevron-right--white.svg);
}

.cta--beige {
  color: var(--beige);
}

.cta--beige::after {
  background-image: url(../img/icons/chevron-right--beige.svg);
}

@media (hover: hover) and (pointer: fine) {
  .cta:hover::after {
    right: -2rem;
  }
}
.title {
  color: var(--coral);
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* links */
.module--text a[href*=".pdf"],
.module--text a[href*="mailto:"] {
  display: inline-flex;
  align-items: center;
}

.module--text a[href*=".pdf"]::after,
.module--text .address::before,
.module--text a[href*="mailto:"]::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: center center/contain no-repeat;
}

.module--text a[href*=".pdf"]::after {
  margin-left: 1em;
}

.module--text a[href*="mailto:"]::before,
.module--text .address::before {
  margin-right: 1em;
}

.module--text a[href*=".pdf"]::after {
  background-image: url(../img/icons/download.svg);
}

.module--text a[href*="mailto:"]::before {
  background-image: url(../img/icons/mail.svg);
}

.module--text .address {
  display: flex;
}

.module--text .address::before {
  background-image: url(../img/icons/map.svg);
}

/* lists */
.intro__content ul,
.module ul {
  padding: 0;
}

.intro__content ul li,
.module ul li {
  list-style: none;
  display: flex;
  align-items: flex-start;
}

.intro__content ul li::before,
.module ul li::before {
  content: "";
  position: relative;
  top: 4px;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-right: 1rem;
  background: url(../img/icons/check.svg) center center/contain no-repeat;
}

.intro__content ul li + li,
.module ul li + li {
  margin-top: 1rem;
}

/* box */
.box {
  background: var(--blue-tint);
  margin: 2rem 0 0;
  padding: 3.25rem 3.25rem 3.25rem 0;
  position: relative;
}
.box::before {
  content: "";
  display: block;
  width: 300px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 100%;
  background: var(--blue-tint);
}
.box + .box--img {
  margin-top: 0;
}
.box--img {
  padding: 0;
}
.box--img::before {
  height: 50%;
}
@media screen and (max-width: 800px) {
  .box::after {
    content: "";
    display: block;
    width: 2rem;
    height: 100%;
    position: absolute;
    top: 0;
    left: 100%;
    background: var(--blue-tint);
  }
  .box--img::after {
    height: 50%;
  }
}

.intro .box:last-child {
  margin-bottom: -2rem;
}

.visually-hidden:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

html {
  scroll-behavior: smooth;
}

.wrapper {
  overflow: hidden;
  max-width: 1800px;
  margin: auto;
}

/* menus */
.menu {
  display: flex;
  gap: 1rem;
}

.menu--x {
  flex-direction: row;
}

.menu--y {
  flex-direction: column;
}

ul.menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu--header {
  height: 70px;
  gap: 0;
}
.menu--header a {
  color: #fff;
  height: 100%;
  text-decoration: none;
  font-weight: 400;
  padding: 0 2rem;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
}
.menu--header li:hover {
  background: var(--blue-medium);
}
.menu--header > .menu-item-has-children {
  position: relative;
}
.menu--header > .menu-item-has-children > a {
  position: relative;
}
.menu--header > .menu-item-has-children > a::after {
  content: "";
  width: 12px;
  height: 12px;
  background: url(../img/icons/arrow-down--white.svg) center center/150% no-repeat;
  margin-left: 0.75rem;
  transition: 0.3s;
}
.menu--header > .menu-item-has-children:hover a::after {
  transform: rotate(180deg);
}
.menu--header > .menu-item-has-children:hover .sub-menu {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0);
}
.menu--header > .menu-item-has-children > .sub-menu {
  min-width: 200px;
  pointer-events: none;
  transform: translateY(-10px);
  opacity: 0;
  transition: opacity 0.2s linear, transform 0.2s ease-in-out;
}
.menu--header > li > .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--blue-medium);
}
.menu--header > li > .sub-menu a {
  display: block;
}
.menu--header > li:last-child > .sub-menu {
  left: auto;
  right: 0;
}
.menu--header .sub-menu {
  list-style: none;
  padding: 1rem 2rem;
}
.menu--header .sub-menu .sub-menu {
  padding: 0;
}
.menu--header .sub-menu .sub-menu li:first-child {
  border-top: 1px solid var(--blue-light);
}
.menu--header .sub-menu .sub-menu a {
  padding-left: 1rem;
}
.menu--header .sub-menu li:not(:last-child) {
  border-bottom: 1px solid var(--blue-light);
}
.menu--header .sub-menu a {
  padding: 0.5rem 0;
}

.sub-menu-toggle {
  display: none;
  border: none;
  background: none;
  padding: 0 1rem;
}
.sub-menu-toggle::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background: url(../img/icons/arrow-down--white.svg) center center/150% no-repeat;
  transition: 0.3s;
}
.sub-menu-toggle.active::after {
  transform: rotate(180deg);
}

.menu--header span {
  cursor: default;
}

.menu__link {
  height: 100%;
  color: #fff;
  text-decoration: none;
  font-weight: 400;
  padding: 0 2rem;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
}
.menu__link:hover {
  background: var(--blue-medium);
}

/* header */
.header {
  position: fixed;
  width: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
  background: var(--blue);
  border-bottom: 4px solid var(--coral);
}

.header--scrolled {
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1254901961);
}

.wrapper {
  padding-top: 70px;
}

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
}

.logo {
  width: 160px;
}

.header__overlay {
  position: fixed;
  z-index: 500;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(60, 100, 110, 0.6980392157);
}

.header__overlay:not(.open) {
  display: none;
}

.header__menu {
  position: absolute;
  z-index: 2;
  top: 100%;
  width: 100%;
  background: var(--blue-medium);
  box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.1254901961);
}

.header__menu a {
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}
.header__menu a::after {
  content: "";
  display: inline-block;
  width: 20px;
  background: url("../img/icons/arrow-tilt--white.svg");
  background-size: contain;
  vertical-align: middle;
  margin-left: 1rem;
  aspect-ratio: 1;
}

.header__menu:not(.open) {
  display: none;
}

.header__menu__item {
  display: none;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 2rem;
  max-width: 1400px;
  margin: 0 auto;
  padding: 1rem;
}

.header__menu__item.open {
  display: block;
}

.header__menu__title {
  color: #fff;
  margin: 1rem 1rem 0;
  padding-bottom: 1rem;
  font-size: 1.5rem;
  line-height: 2rem;
  border-bottom: 1px solid #fff;
}

.header__menu__cols {
  display: flex;
  gap: 4rem;
  padding: 1rem;
  max-width: 1300px;
  margin-left: auto;
}

.header__menu__links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2rem;
  flex-grow: 1;
  margin-top: 2rem;
  padding: 0 0 2rem;
}
.header__menu__links a::after {
  width: 12px;
}

.header__menu__links:not(:last-child) {
  border-right: 1px solid var(--beige);
  padding-right: 2rem;
}

.header__menu__feat {
  position: relative;
  background: #fff;
  padding-bottom: 100%;
  border-radius: 0.5rem;
}

.header__menu__feat__inner {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.header__menu__feat__title {
  font-size: 5vw;
  line-height: 1.125;
  overflow-wrap: anywhere;
  margin-top: auto;
}

.header__menu__feat .post__meta a {
  color: inherit;
  font-weight: 400;
}

.toggle {
  display: none;
}

/* header:menu */
.parent {
  position: relative;
}

.parent::after {
  content: "";
  width: 12px;
  height: 12px;
  background: url(../img/icons/arrow-down--white.svg) center center/150% no-repeat;
  margin-left: 0.75rem;
  transition: 0.3s;
}

.parent.open {
  background: var(--blue-medium);
}

.parent.open::before {
  height: 100%;
}

.parent.open::after {
  transform: rotate(180deg);
}

.mobile-nav {
  display: none;
}

/* main */
.intro {
  display: flex;
  gap: 2rem;
}
.intro__content {
  max-width: 904px;
  flex: 1;
}
.intro__submenu {
  flex: 0 0 400px;
}
@media screen and (max-width: 1100px) {
  .intro__submenu {
    flex-basis: 300px;
  }
}
@media screen and (max-width: 800px) {
  .intro__submenu {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  .intro {
    flex-wrap: wrap;
  }
}
.intro__back-link {
  flex-grow: 1;
  text-align: right;
}
@media screen and (max-width: 600px) {
  .intro__back-link {
    text-align: left;
    width: 100%;
  }
}

/* breadcrumbs */
.breadcrumbs {
  padding: 0 1.5rem;
  position: relative;
}
.breadcrumbs .inner {
  white-space: nowrap;
  overflow-x: auto;
  display: flex;
  scrollbar-width: none;
  position: relative;
  padding-right: 0;
  padding-left: 0;
}
.breadcrumbs .inner > span {
  display: flex;
  gap: 0.5rem;
}
.breadcrumbs::before {
  content: "";
  display: none;
  width: 4rem;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 100;
  left: var(--global-padding);
  background-image: linear-gradient(90deg, white, transparent);
}
.breadcrumbs.overflow::before {
  display: block;
}

/* submenu */
.submenu {
  list-style: none;
  padding: 0;
  border-bottom: 2px solid var(--blue-light);
}
.submenu ul {
  list-style: none;
  padding: 0;
}
.submenu li {
  padding-left: 1.2rem;
}
.submenu li:not(:last-child, :first-child) a {
  border-bottom: 1px solid var(--blue);
}
.submenu a {
  text-decoration: none;
  font-weight: 400;
  display: block;
  padding: 0.8rem 1.2rem 0.8rem 0;
}
.submenu__parent {
  text-transform: uppercase;
  background: var(--blue-tint);
}
.submenu__parent a {
  font-weight: 700;
  letter-spacing: 0.05em;
}
.submenu .current_page_item > a {
  font-weight: 700;
  position: relative;
}
.submenu .current_page_item > a::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  top: calc(50% - 4px);
  left: -1.2rem;
  background: var(--coral);
  border-radius: 50%;
}

/* module:hero */
.module--hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  min-height: calc(560px + var(--hero-bottom));
  overflow: hidden;
}
@media screen and (max-width: 900px) {
  .module--hero {
    min-height: auto;
    flex-direction: column;
  }
}
.module--hero.bg--blue .hero__content__inner {
  background: var(--blue);
}
.module--hero.bg--blue .hero__content__inner::before {
  background: var(--blue);
}
.module--hero.bg--beige .hero__content__inner {
  background: var(--beige);
}
.module--hero.bg--beige .hero__content__inner::before {
  background: var(--beige);
}
.module--hero.bg--blue-light .hero__content__inner {
  background: var(--blue-tint);
}
.module--hero.bg--blue-light .hero__content__inner::before {
  background: var(--blue-tint);
}

.hero__media {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-bottom: var(--hero-bottom) solid #fff;
}
.hero__media img, .hero__media video {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  object-position: center;
}
.hero__media img.hero-img--right {
  object-position: right;
}
.hero__media img.hero-img--left {
  object-position: left;
}
@media screen and (max-width: 900px) {
  .hero__media {
    position: static;
    border-bottom: 0;
  }
  .hero__media img, .hero__media video {
    position: static;
  }
}

.hero__content {
  flex: 1;
  position: relative;
  margin: 0 auto;
}
.hero__content__inner {
  position: relative;
  max-width: 600px;
  padding: 3rem 3rem 3rem 0;
}
.hero__content__inner::before {
  content: "";
  display: block;
  width: 300px;
  height: 100%;
  position: absolute;
  top: 0;
  right: 100%;
}
.hero__content h1 {
  font-size: 3rem;
}

.hero__title {
  color: var(--coral);
  line-height: 1em;
}
.text--white .hero__title {
  color: #fff;
}

/* MODULES */
/* module margins */
.module--cols.bg--beige + .module--cols.bg--beige, .module--cols.bg--blue + .module--cols.bg--blue {
  padding-top: 0;
}

.module--plate.bg--beige + .module--cols.bg--beige, .module--plate.bg--blue + .module--cols.bg--blue {
  padding-top: 0;
}

.module.bg--beige:not([style]):not(.module--hero) + .module.bg--beige:not([style]):not(.module--hero) .inner {
  padding-top: 0;
}
.module.bg--blue:not([style]):not(.module--hero) + .module.bg--blue:not([style]):not(.module--hero) .inner {
  padding-top: 0;
}
.module.bg--blue a {
  color: #fff;
  border-color: #fff;
}
.module.bg--blue .title {
  color: #fff;
}

/* module:intro */
.intro-heading {
  font-size: 3rem;
  line-height: 4rem;
  color: var(--coral);
}

.module--intro p {
  max-width: 800px;
}

/* module:cols */
.cols__img {
  flex: 1;
}

.cols__content {
  flex: 1;
  max-width: calc(800px + 2rem);
}

.module__cols {
  display: flex;
  gap: 2rem;
}
.module__cols--center {
  align-items: center;
}

.module__cols--rev {
  flex-direction: row-reverse;
}
.module__cols--rev .cols__img {
  text-align: right;
}

/* module:callout */
.module--callout .module__cols {
  gap: 10%;
  align-items: center;
}
@media screen and (max-width: 600px) {
  .module--callout .module__cols {
    gap: 2rem;
  }
}

/* module:img */
.img--content-width {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 2rem;
}
.img--narrow-width {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 2rem;
}
.img--narrow-width img {
  max-width: calc(800px + 2rem);
}
.img--horizontal {
  position: relative;
  padding-bottom: 30.69%;
}
.img--horizontal img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* module:number */
.numbers {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.numbers > div {
  flex: 1;
}
@media screen and (max-width: 900px) {
  .numbers > div {
    flex-basis: calc(50% - 1rem);
  }
}

.number {
  font-weight: 700;
}

.number__int {
  font-size: 5rem;
  line-height: 1em;
}

.number__unit {
  font-size: 2rem;
  line-height: 1em;
}

.number-title {
  font-weight: 700;
  line-height: 1em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-top: 1.5rem;
  color: var(--coral);
}

/* module:text */
.module--plate {
  position: relative;
}
.module--plate[style] {
  background: center center/cover no-repeat;
  min-height: 500px;
}

.plate {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 600px) {
  .plate {
    flex-direction: column;
  }
}

.plate__content {
  flex: 2;
}

.plate__img {
  flex: 1;
}

/*.module--plate.center {text-align: center}*/
/*.module--plate.nomargin .inner,
.module--plate.nomargin .inner {
	padding: 6rem 0;
	}*/
.polaroid {
  position: absolute;
  width: 500px;
  right: 2rem;
  top: 0;
  transform: translateY(-25%);
}

/* module:accordion */
.accordion {
  margin: 2rem 0;
  counter-reset: acc;
}
.accordion:first-child {
  margin-top: 0;
}
.accordion:last-child {
  margin-bottom: 0;
}

.accordion--num .accordion__item__title::before {
  content: "0" counter(acc);
  margin-right: 2rem;
  font-size: 1.5rem;
  line-height: 1em;
}

.module--text ol {
  counter-reset: acc;
  padding: 0;
}
.module--text ol li {
  display: flex;
  counter-increment: acc;
}
.module--text ol li::before {
  content: "0" counter(acc);
  margin-right: 2rem;
  font-size: 1.5rem;
  line-height: 1em;
  position: relative;
  top: 2px;
}
.module--text ol li + li {
  margin-top: 1.5rem;
}

.accordion__item {
  border-bottom: 1px solid;
  padding: 1.5rem;
  counter-increment: acc;
}

.accordion__item__title {
  display: flex;
  align-items: center;
  font-weight: 700;
  cursor: pointer;
}
.accordion__item__title:after {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../img/icons/arrow-down.svg) center center/100% no-repeat;
  transition: 0.3s;
  margin-left: auto;
}

.accordion__item__text {
  height: 0;
  overflow: hidden;
  transition: height 0.3s;
}

.accordion__item__text__inner {
  padding-top: 1rem;
}

.accordion__item.open .accordion__item__title::after {
  transform: rotate(180deg);
}
.accordion__item.open .accordion__item__text {
  display: block;
}

/* module:staff */
.module--staff .posts {
  grid-row-gap: 6rem;
}

.staff__img {
  margin-bottom: 2rem;
  width: 500px;
}

.staff__name {
  color: var(--coral);
  font-size: 1.5rem;
  line-height: 2rem;
  margin-bottom: 0.25rem;
}

.staff__phone, .staff__email {
  margin-top: 1rem;
}

.staff__phone a, .staff__email a {
  color: var(--black);
  font-weight: bold;
  text-decoration: underline;
}

.staff__description {
  margin-top: 2rem;
}

/* module:posts */
.posts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 1.5rem;
}
.posts__heading {
  margin-bottom: 2em;
}

.posts--2 {
  grid-template-columns: repeat(2, 1fr);
}

.post:not(.post--list) {
  border: 1px solid var(--blue);
  border-radius: 5px;
  overflow: hidden;
  transition: 0.3s;
}
.post:not(.post--list) .post__content {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.post:not(.post--list) .post__text {
  padding: 1.5rem;
  flex: 1;
}
.post--list:not(:last-of-type) {
  border-bottom: 1px solid var(--blue);
  padding-bottom: 3rem;
}
.post--list:not(:first-child) {
  padding-top: 1.5rem;
}
.post--teaser {
  max-width: var(--text-m-width);
}
.post .post__heading a {
  text-decoration: underline;
}

.post__content {
  max-width: var(--text-m-width);
}

.post__info {
  display: flex;
  background: var(--blue-tint);
}

.post--blue {
  background-color: var(--blue);
  color: var(--beige);
}

.post__img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: 0.3s;
}

.post__thumb {
  overflow: hidden;
}
.post__thumb img {
  transition: transform 0.2s ease-in-out;
}
.post--company .post__thumb {
  position: relative;
  padding-bottom: 45.5%;
}
.post--company .post__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post:has(> .post__img)::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(60, 100, 110, 0.6666666667);
  opacity: 0;
  transition: 0.3s;
}

.post__title a {
  text-decoration: none;
  font-weight: inherit;
}

.post__heading {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--blue);
  line-height: 1.5em;
  margin-top: auto;
}

.post__heading a:hover {
  text-decoration: none;
}

.post--list .post__heading a::after {
  content: "";
  display: inline-block;
  width: 1.25rem;
  background: url("../img/icons/arrow-tilt--blue.svg");
  background-size: contain;
  vertical-align: middle;
  margin-left: 1rem;
  aspect-ratio: 1;
}

.post__heading--s {
  font-size: 1rem;
}

.post__meta {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.5rem;
}
.post__meta svg {
  width: 30px;
  height: 30px;
}
.post__meta svg path {
  fill: var(--blue);
}
.post__meta--right {
  justify-content: right;
  padding-top: 0;
}

.post__cta {
  flex-shrink: 0;
}
.post__cta svg {
  display: block;
  width: 100%;
  height: 100%;
}

.post--blue .post__cta svg path {
  fill: var(--beige);
}

.post a {
  color: var(--blue);
  text-decoration: none;
}
.post a .post__heading {
  text-decoration: underline;
}
.post a .post__heading a {
  text-decoration: underline;
}
.post a:hover .post__heading {
  text-decoration: none;
}

.post__title {
  font-size: 0.75rem;
  color: var(--coral);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.2rem;
}
.post__title a {
  color: var(--coral);
}

@media only screen and (min-width: 1400px) {
  .post__heading--l {
    font-size: 2rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .post:not(.post--list):hover .post__thumb img {
    transform: scale(1.1);
  }
  .post:not(.post--list):hover .post__meta svg path {
    fill: var(--coral);
  }
  .post:not(.post--list):has(> .post__img):hover {
    border-color: var(--blue);
  }
  .post:not(.post--list):hover::before {
    opacity: 1;
  }
  .post:not(.post--list) .post__meta svg path {
    transition: fill 0.3s;
  }
}
.filters {
  margin-bottom: 3rem;
}

.filters__top {
  display: none;
}

.filters__btm {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.5rem;
}

.filters.no-transition .btn {
  transition: none;
}

/* module:card */
.module--card {
  background: center center/cover no-repeat;
}
.module--card .post {
  width: 440px;
  height: 440px;
  padding-bottom: 0;
  border-radius: 0;
}
.module--card .post__heading {
  font-size: 7rem;
  line-height: 7rem;
}

/* module:text/wysiwyg */
.module--text .module__content {
  max-width: var(--text-m-width);
}
.module--text .module__content.center {
  margin: auto;
}
.module--text .module__content.right {
  margin-left: auto;
}

/* module:people/table */
.table-outer {
  background: var(--blue-tint);
  margin: 4rem 0;
}

.table {
  border-collapse: collapse;
  width: 100%;
}
.table th, .table td {
  padding: 2rem;
  vertical-align: top;
}
.table th {
  padding-bottom: 0;
}
.table thead th {
  border: none;
  text-align: left;
}
.table thead th span {
  display: inline-block;
  width: 100%;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--blue);
}
.table tbody th {
  color: var(--coral);
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
  text-align: left;
  white-space: nowrap;
}
.table tr + tr th, .table tr + tr td {
  border-top: 1px solid var(--blue-light);
}

@media only screen and (min-width: 1400px) {
  .table tr > :first-child {
    padding-left: calc((100vw - 1400px) / 2 + 2rem);
  }
  .table tr > :last-child {
    padding-right: calc((100vw - 1400px) / 2 + 2rem);
  }
}
/* readmore */
.readmore:not(.open) {
  position: relative;
  max-height: 300px;
  overflow: hidden;
}
.readmore.init:not(.open)::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 80px;
  left: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(250, 255, 240, 0), #fff);
}

.module.bg--blue-light .readmore.init:not(.open)::after {
  background: linear-gradient(to bottom, rgba(60, 100, 110, 0), var(--blue-tint));
}

.module.bg--blue .readmore.init:not(.open)::after {
  background: linear-gradient(to bottom, rgba(60, 100, 110, 0), var(--blue));
}

.module.bg--beige .readmore.init:not(.open)::after {
  background: linear-gradient(to bottom, rgba(60, 100, 110, 0), var(--beige));
}

.readmore:not(.init) + div {
  display: none;
}
.readmore.init + div {
  margin-top: 2rem;
}

.readtext + div {
  margin-top: 2rem;
}
.readtext:not(.open) {
  display: none;
}

/* pagination */
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2rem;
  gap: 1rem;
}

.page-numbers {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--blue-tint);
  border-radius: 0.25rem;
  text-decoration: none;
}
.page-numbers.current {
  background-color: var(--blue);
  color: #fff;
}

/* single/singular */
.singular h2 {
  font-size: 1.75rem;
  line-height: 2.25rem;
  margin-top: 4rem;
}

/* footer */
.footer {
  background-color: var(--blue);
  color: #fff;
}

.footer__mid {
  margin: 3rem 0;
}

.footer__cols {
  display: flex;
  gap: 8%;
}

.footer__cols > div {
  flex: 0 1 360px;
}

.footer__title {
  font-size: 1.5rem;
  line-height: 2rem;
  margin-bottom: 1.5rem;
}

.footer__cols a {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}
.footer__cols a:not([href*="mailto:"])::after {
  content: "";
  display: inline-block;
  width: 10px;
  background: url("../img/icons/arrow-tilt--white.svg");
  background-size: contain;
  vertical-align: middle;
  margin-left: 1rem;
  aspect-ratio: 1;
}

.linkedin {
  background: url(../img/icons/linkedin.svg) left center/auto 100% no-repeat;
  padding-left: 3rem;
}

.tothetop {
  background: url(../img/icons/arrow-up.svg) calc(100% - 20px) center/20px no-repeat;
  padding-right: 4rem;
  cursor: pointer;
}
.tothetop:hover {
  background-image: url(../img/icons/arrow-up-blue.svg);
}

/* small */
@media only screen and (max-width: 900px) {
  html,
  body,
  button,
  input,
  textarea {
    font-size: 14px;
    line-height: 22px;
  }
  .inner {
    padding: 0 1.5rem;
  }
  .inner--vs {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .inner--vm {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .inner--vl {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .inner--vl.pt--0 {
    padding-top: 0;
  }
  .inner--vxl {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .text--xl {
    font-size: 4rem;
  }
  .posts--m-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .logo {
    width: 130px;
  }
  .menu {
    display: block;
  }
  .main-menu {
    font-size: 1.25rem;
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--blue);
    padding: 2rem;
    padding-top: calc(70px + 1.5rem);
    display: none;
    flex-direction: column;
    overflow: auto;
  }
  .main-menu.open {
    display: flex;
  }
  .menu--header {
    flex-direction: column;
    height: auto;
  }
  .menu--header > .menu-item-has-children {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .menu--header > .menu-item-has-children > .sub-menu {
    display: none;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
    position: static;
    width: 100%;
  }
  .menu--header > .menu-item-has-children > .sub-menu.visible {
    display: block;
  }
  .menu--header li:hover {
    background: none;
  }
  .menu--header li.active {
    background: var(--blue-medium);
  }
  .menu--header > li {
    border-bottom: 1px solid var(--blue-light);
  }
  .menu--header a {
    padding: 1rem 0 1rem 1rem;
  }
  .menu--header a::after {
    display: none;
  }
  .menu--header .sub-menu {
    padding: 0 0 0 2rem;
  }
  .menu--header .sub-menu a {
    padding: 1rem 0;
  }
  .sub-menu-toggle {
    display: block;
  }
  .toggle {
    display: block;
    background: var(--blue) url(../img/icons/menu--white.svg) left 1rem center/1.5rem no-repeat;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0.25rem;
    padding: 0.75rem 0;
    padding-left: 3.5rem;
    padding-right: 1rem;
    z-index: 100;
  }
  .toggle.open {
    background-image: url(../img/icons/x--beige.svg);
  }
  .toggle > span::after {
    content: "Meny";
  }
  .toggle.open > span::after {
    content: "Stäng";
  }
  .header.open .inner {
    z-index: 20;
  }
  .header.open .logo {
    display: none;
  }
  .header.open .toggle {
    color: var(--beige);
    border-color: var(--beige);
  }
  .mobile-nav {
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--blue);
    padding: 1rem;
    padding-top: calc(70px + 1.5rem);
    display: flex;
    flex-direction: column;
    overflow: auto;
    display: none;
  }
  .mobile-nav.open {
    display: flex;
  }
  .mobile-nav__item {
    display: flex;
    flex-direction: column;
  }
  .mobile-nav__item:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
  .mobile-nav__item .has-children {
    flex: 1;
  }
  .mobile-nav__item a {
    display: block;
    color: #fff;
    font-size: 1.25rem;
    line-height: 1.75rem;
    text-decoration: none;
    font-weight: 400;
    padding: 1rem 0;
  }
  .mobile-nav__item > a {
    padding: 1rem;
  }
  .mobile-nav__item__title {
    border-bottom: 1px solid #fff;
  }
  .mobile-nav__item__children {
    background: var(--blue-medium);
    padding-left: 1.5rem;
    display: flex;
    flex-direction: column;
    display: none;
    border-top: 1px solid #fff;
  }
  .mobile-nav__item__children > a {
    margin-left: 1rem;
  }
  .mobile-nav__item__children > a:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
  .has-children.open {
    font-weight: 700;
    background: var(--blue-medium);
  }
  .mobile-nav__item .has-children.open + .mobile-nav__item__children {
    display: flex;
  }
  .mobile-nav__item > .has-children {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .mobile-nav__item > .has-children::after {
    content: "";
    width: 20px;
    height: 20px;
    margin-left: 1rem;
    background: url(../img/icons/arrow-down--white.svg) center center/contain no-repeat;
  }
  .mobile-nav__item > .has-children.open::after {
    transform: rotate(180deg);
  }
}
@media only screen and (max-width: 600px) {
  .text--xl {
    font-size: 2.5rem;
  }
  .text--xxl {
    font-size: 4rem;
    line-height: 5rem;
  }
  .ta--l-s {
    text-align: left;
  }
  .numbers,
  .footer__cols,
  .module__cols,
  .filters__btm {
    flex-direction: column;
    gap: 4rem;
  }
  .number__int {
    font-size: 4.3rem;
  }
  .footer__cols > div {
    flex: auto;
  }
  .posts {
    grid-template-columns: 1fr;
  }
  .module--plate:has(.polaroid) {
    margin-top: 18rem;
  }
  .module--plate .polaroid {
    transform: translateY(-75%);
  }
  .intro-heading {
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .module--plate[style] {
    min-height: 150px;
  }
  .module__cols {
    gap: 2rem;
  }
  .cols__img {
    padding: 0;
  }
  .module--card .post {
    width: 100%;
    height: auto;
    min-height: 400px;
  }
  .module--card .post__heading {
    font-size: 5rem;
    line-height: 1em;
  }
  .post__heading {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .post__cta {
    width: 15%;
  }
  .table-outer {
    margin: 2rem 0;
  }
  .table thead {
    display: none;
  }
  .table tr,
  .table th,
  .table td {
    display: block;
  }
  .table tr + tr td {
    border: none;
  }
  .table tbody td:not(:first-child):not(:last-child) {
    padding: 1rem 2rem;
  }
  .filters {
    background: var(--blue);
    padding: 1.5rem;
    border-radius: 0.5rem;
  }
  .filters__top {
    color: var(--beige);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .filters__top::after {
    content: "";
    width: 20px;
    height: 20px;
    background: url(../img/icons/arrow-up.svg) center center/contain no-repeat;
    transform: rotate(180deg);
  }
  .filters.open .filters__top::after {
    transform: rotate(0deg);
  }
  .filters__btm {
    gap: 1rem;
    align-items: flex-start;
    border-top: 1px solid var(--beige);
    margin-top: 1.5rem;
    padding-top: 1.5rem;
  }
  .filters:not(.open) .filters__btm {
    display: none;
  }
  .filters .btn {
    background: none;
    padding: 0;
    color: var(--beige);
  }
  .filters .btn::before {
    content: "";
    width: 32px;
    height: 32px;
    margin-right: 1rem;
    border-radius: 0.25rem;
    background: var(--beige) center center/18px no-repeat;
  }
  .filters .btn--blue {
    font-weight: 700;
  }
  .filters .btn--blue::before {
    background-image: url(../img/icons/check.svg);
  }
  .footer__btm .fcb {
    flex-direction: column-reverse;
    gap: 4rem;
  }
}
.mfn-loader-list-container .post__title {
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 600px) {
  .mfn-loader-list-container .post__title {
    flex-direction: column;
    gap: 0;
  }
}
.mfn-loader-list-container .post__tags {
  display: flex;
}
.mfn-loader-list-container .mfn-tag:not(:last-child) {
  border-right: 1px solid var(--coral);
  padding-right: 0.5rem;
  margin-right: 0.5rem;
}

.attachments {
  display: flex;
  gap: 1rem;
  margin-top: 1rem;
}

.mfn-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 2rem;
}
.mfn-pagination-link {
  text-indent: -9999px;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--blue-tint);
  background-image: url("../img/icons/chevron-right.svg");
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}
.mfn-pagination-link.mfn-prev {
  transform: rotate(180deg);
}
.mfn-pagination-link:hover {
  background-color: var(--blue);
  background-image: url("../img/icons/chevron-right--white.svg");
}

.mfn-toolbar {
  margin-bottom: 2rem;
}
.mfn-toolbar-options {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 600px) {
  .mfn-toolbar-options {
    gap: 1rem;
  }
}
.mfn-toolbar-options .mfn-search {
  order: 2;
}
@media screen and (max-width: 440px) {
  .mfn-toolbar-options .mfn-search {
    width: 100%;
  }
}
.mfn-toolbar-options .mfn-search-button {
  color: #fff;
  font-weight: 600;
  background: var(--blue);
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: 0.3s;
}
.mfn-toolbar-options .mfn-clear {
  order: 3;
}
.mfn-toolbar-options .mfn-clear-button {
  color: var(--blue);
  font-weight: 600;
  background: none;
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 0.5rem 1rem;
  cursor: pointer;
  transition: 0.3s;
}
.mfn-toolbar .mfn-search-input {
  font-family: inherit;
  width: 100%;
  max-width: 500px;
  padding: 0.5rem 2.5rem 0.5rem 1rem;
  border: 1px solid var(--blue);
  border-radius: 5px;
}

.mfn-toolbar-selects-wrapper {
  order: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media screen and (max-width: 440px) {
  .mfn-toolbar-selects-wrapper {
    flex-direction: column;
    width: 100%;
  }
}

.mfn-toolbar-option {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.mfn-select {
  appearance: none;
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 0.5rem 2.5rem 0.5rem 1rem;
  font-weight: 600;
  color: var(--blue);
  cursor: pointer;
  white-space: nowrap;
  transition: 0.3s;
  background-image: url("../img/icons/chevron-down.svg");
  background-repeat: no-repeat;
  background-position: calc(100% - 1rem) center;
}
.mfn-select:hover {
  color: #fff;
  background-color: var(--blue);
  background-image: url("../img/icons/chevron-down--white.svg");
}
@media screen and (max-width: 440px) {
  .mfn-select {
    flex: 1;
  }
}

.singular .mfn-title {
  font-size: 3.75rem;
  line-height: 1.2em;
  color: var(--coral);
}
@media screen and (max-width: 600px) {
  .singular .mfn-title {
    font-size: 2.5rem;
  }
}
.singular .mfn-meta {
  font-size: 0.75rem;
  color: var(--coral);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  display: flex;
  gap: 2rem;
  margin: 2rem 0;
}
@media screen and (max-width: 600px) {
  .singular .mfn-meta {
    flex-direction: column;
    gap: 0;
  }
}
.singular .mfn-tags-list {
  display: flex;
}
.singular .mfn-tag:not(:last-child) {
  border-right: 1px solid var(--coral);
  margin-right: 0.5rem;
  padding-right: 0.5rem;
}
.singular p + blockquote {
  margin-top: 1.5rem;
}
.singular p + table {
  margin-top: 3rem;
}
.singular ol,
.singular ul {
  margin: 1.5rem 0 0;
}
.singular ol ul,
.singular ol ol,
.singular ul ul,
.singular ul ol {
  margin: 0.5rem 0;
}
.singular ol + blockquote,
.singular ol + table,
.singular ol + p,
.singular ul + blockquote,
.singular ul + table,
.singular ul + p {
  margin-top: 1.5rem;
}
.singular blockquote + p,
.singular blockquote + ul,
.singular blockquote + ol,
.singular blockquote + table,
.singular blockquote + blockquote,
.singular img + p,
.singular img + ul,
.singular img + ol,
.singular img + table,
.singular img + blockquote {
  margin-top: 1.5rem;
}
.singular table + p,
.singular table + ul,
.singular table + ol,
.singular table + blockquote,
.singular table + table {
  margin-top: 3rem;
}
.singular .mfn-body {
  margin-bottom: 4rem;
}
.singular .mfn-footer:not(:last-child) {
  margin-bottom: 2rem;
}
.singular .mfn-disclaimer {
  margin-bottom: 1.5rem;
}
.singular .mfn-correction {
  margin-bottom: 1.5rem;
}
.singular .mfn-preamble {
  font-size: 1.2rem;
  line-height: 1.2em;
  margin-bottom: 1.5rem;
}
.singular [class*=mfn-heading] {
  font-size: 1.4rem;
}
.singular .mfn-attachment a {
  display: inline-block;
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 0.5rem 1rem;
  text-decoration: none;
  font-weight: 600;
  color: var(--blue);
  white-space: nowrap;
  transition: 0.3s;
}
.singular .mfn-attachment a:hover {
  background-color: var(--blue);
  color: #fff;
}
.singular .mfn-attachment a:not(:last-child) {
  margin: 0 1rem 1rem 0;
}
.singular .mfn-attachment br {
  display: none;
}

.singular table,
.mf-table {
  border-collapse: collapse;
  width: 100%;
}
.singular table th, .singular table td,
.mf-table th,
.mf-table td {
  padding: 1rem;
  vertical-align: top;
}
.singular table th,
.mf-table th {
  color: #fff;
  background: var(--blue);
}
.singular table thead th,
.mf-table thead th {
  border: none;
  text-align: left;
}
.singular table thead th span,
.mf-table thead th span {
  display: inline-block;
  width: 100%;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--blue);
}
.singular table tbody th,
.mf-table tbody th {
  color: var(--coral);
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
  text-align: left;
  white-space: nowrap;
}
.singular table tr:nth-child(2n-1),
.mf-table tr:nth-child(2n-1) {
  background: var(--blue-tint);
}
.singular table tr + tr th, .singular table tr + tr td,
.mf-table tr + tr th,
.mf-table tr + tr td {
  border-top: 1px solid var(--blue-light);
}
.singular table .table-head,
.mf-table .table-head {
  font-weight: 700;
}
.singular table .mf-sum-row td,
.mf-table .mf-sum-row td {
  border-top: 2px solid var(--blue);
}

.mf-stock-table .positive {
  color: green;
  font-weight: 700;
}
.mf-stock-table .negative {
  color: red;
}

.mfn-list {
  scroll-margin-top: 8rem;
  --toolbar-height: 42px;
  --tag-height: 20px;
  --title-height: 30px;
  --text-height: 80px;
  --l-2: 310px;
  position: relative;
}
.mfn-list::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-image: linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--tag-height), transparent 0), linear-gradient(var(--darkbeige) var(--title-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--toolbar-height), transparent 0), linear-gradient(var(--darkbeige) var(--tag-height), transparent 0), linear-gradient(var(--darkbeige) var(--title-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0);
  background-size: 250px var(--toolbar-height), 142px var(--toolbar-height), 195px var(--toolbar-height), 300px var(--tag-height), 580px var(--title-height), 832px var(--text-height), 250px var(--toolbar-height), 142px var(--toolbar-height), 195px var(--toolbar-height), 300px var(--tag-height), 580px var(--title-height), 832px var(--text-height);
  background-position: 0px 0px, 264px 0, 420px 0, 0px 75px, 0px 105px, 0px 160px, 0px calc(0px + var(--l-2)), 264px calc(0px + var(--l-2)), 420px calc(0px + var(--l-2)), 0px calc(75px + var(--l-2)), 0px calc(105px + var(--l-2)), 0px calc(160px + var(--l-2));
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.mfn-list.loading {
  height: 800px;
}
.mfn-list.loading::after {
  opacity: 1;
}

.mfn-cols {
  position: relative;
  --item-height: 370px;
}
.mfn-cols::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-image: linear-gradient(var(--darkbeige) var(--item-height), transparent 0), linear-gradient(var(--darkbeige) var(--item-height), transparent 0), linear-gradient(var(--darkbeige) var(--item-height), transparent 0);
  background-size: 32% var(--item-height), 32% var(--item-height), 32% var(--item-height);
  background-position: 0px 0px, 50% 0, 100% 0;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.mfn-cols.loading {
  height: 400px;
}
.mfn-cols.loading::after {
  opacity: 1;
}

.mfn-cols .mfn-pagination {
  display: none;
}

.mfn-cols .mfn-loader-list-container .post__title {
  display: block;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.mfn-loader-list-container {
  opacity: 0;
  animation: 0.4s fadeIn 0.2s forwards;
}

.mfn-single {
  position: relative;
  min-height: 800px;
  --heading-height: 70px;
  --tag-height: 20px;
  --text-height: 30px;
}
.mfn-single::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-image: linear-gradient(var(--darkbeige) var(--heading-height), transparent 0), linear-gradient(var(--darkbeige) var(--tag-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0), linear-gradient(var(--darkbeige) var(--text-height), transparent 0);
  background-size: 90% var(--heading-height), 65% var(--tag-height), 100% var(--text-height), 100% var(--text-height), 100% var(--text-height), 100% var(--text-height), 80% var(--text-height), 100% var(--text-height), 100% var(--text-height), 100% var(--text-height), 100% var(--text-height);
  background-position: 0px 0px, 0px 100px, 0px 160px, 0px 200px, 0px 240px, 0px 280px, 0px 360px, 0px 400px, 0px 440px, 0px 480px, 0px 520px;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}
.mfn-single.loading::after {
  opacity: 1;
}

.mfn-loader-single-container {
  opacity: 0;
  animation: 0.8s fadeIn 0.2s forwards;
}

.mfn-archive-event-title {
  font-size: 1.2rem;
  color: var(--coral);
}
@media screen and (max-width: 480px) {
  .mfn-archive-event-title {
    font-size: 1rem;
  }
}

.mf-latest-report {
  border: 1px solid var(--blue);
  border-radius: 5px;
  overflow: hidden;
  max-width: var(--text-m-width);
  background: #fff;
}
.text--white .mf-latest-report {
  color: var(--blue);
  border-color: white;
}
.text--white .mf-latest-report a {
  color: var(--blue);
}
.mf-latest-report h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
  padding: 1.5rem 1.5rem 0;
}
@media screen and (max-width: 480px) {
  .mf-latest-report h2 {
    font-size: 1.5rem;
  }
}
.mf-latest-report .mfn-archive-item-content {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.mf-latest-report .mfn-archive-item-content::after {
  content: "";
  display: inline-block;
  width: 1.25rem;
  background: url(../img/icons/arrow-tilt--blue.svg);
  background-size: contain;
  vertical-align: middle;
  margin-left: 1rem;
  aspect-ratio: 1;
}
.mf-latest-report .mfn-archive-item-title {
  flex: 1;
}
.mf-latest-report .mfn-archive-event-heading {
  margin-bottom: 0.5rem;
  padding: 0 1.5rem;
}
.mf-latest-report .mfn-archive-item {
  padding: 1.5rem;
  background: var(--blue-tint);
}

.mf-subscribe {
  text-align: center;
}
.mf-subscribe .mfn-field-input {
  font-family: inherit;
  width: 100%;
  max-width: 500px;
  margin: 0.5rem 0;
  padding: 1rem;
  border: 1px solid var(--blue);
  border-radius: 5px;
}
.mf-subscribe .mfn-sub-submit {
  color: var(--blue);
  font-weight: 600;
  background: none;
  border: 1px solid var(--blue);
  border-radius: 5px;
  padding: 1rem 2rem;
  cursor: pointer;
  transition: 0.3s;
}
.text--white .mf-subscribe .mfn-sub-submit {
  color: #fff;
  border-color: #fff;
}
.text--white .mf-subscribe .mfn-sub-submit:hover {
  color: var(--blue);
  background: #fff;
}
.mf-subscribe .mfn-sub-submit:hover {
  color: #fff;
  background: var(--blue);
}

.mf-archive table {
  border-collapse: collapse;
}
.mf-archive .mfn-archive td {
  padding: 0;
}
.mf-archive .mfn-archive-header {
  color: inherit;
  font-weight: 700;
  background: none;
  margin: 0;
}
.mf-archive .mfn-archive-header td {
  padding: var(--table-padding);
  border-bottom: 1px solid var(--blue);
}
.mf-archive .mfn-archive-header-year {
  display: flex;
  justify-content: space-between;
}
.mf-archive .mfn-year-arrow {
  order: 1;
  text-indent: -9999px;
  overflow: hidden;
  width: 20px;
  height: 20px;
  background: url(../img/icons/arrow-down.svg) center center/100% no-repeat;
  transform: rotate(180deg);
  transition: 0.3s;
}
.mf-archive .mfn-collapsed {
  opacity: 1;
}
.mf-archive .mfn-collapsible td {
  padding: calc(var(--table-padding) / 2) var(--table-padding);
}
.mf-archive .mfn-archive-item img {
  margin: 0 auto;
}
.mf-archive .mfn-collapsible:nth-child(odd) {
  background: var(--blue-tint);
}

.mf-dashboard {
  --dashb-num-items: 3;
  --dashb-num-gaps: 2;
  --dashb-gap: 2rem;
  container: dashboard/inline-size;
}
.mf-dashboard .mf-kpi-dashboard {
  display: flex;
  justify-content: flex-start;
  gap: var(--dashb-gap);
}
.mf-dashboard .mf-kpi-dashboard-item {
  flex-basis: calc(100% / var(--dashb-num-items) - var(--dashb-gap) * var(--dashb-num-gaps) / var(--dashb-num-items));
}
.mf-dashboard .mf-kpi-dashboard-name {
  font-weight: 700;
  line-height: 1em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--coral);
  margin-bottom: 1rem;
}
.text--white .mf-dashboard .mf-kpi-dashboard-name {
  color: #fff;
}
.mf-dashboard .mf-kpi-dashboard-value {
  font-weight: 700;
  font-size: 5rem;
  line-height: 1em;
}
@media only screen and (max-width: 800px) {
  .mf-dashboard .mf-kpi-dashboard-value {
    font-size: 2.4rem;
  }
}
.mf-dashboard .mf-kpi-dashboard-unit {
  font-size: 2rem;
}
@media screen and (max-width: 800px) {
  .mf-dashboard .mf-kpi-dashboard-unit {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 800px) {
  .mf-dashboard {
    --dashb-num-items: 2;
    --dashb-num-gaps: 1;
  }
}
@media only screen and (max-width: 480px) {
  .mf-dashboard {
    --dashb-num-items: 1;
    --dashb-num-gaps: 0;
  }
}

@container dashboard (width < 800px) {
  * {
    --dashb-num-items: 2;
    --dashb-num-gaps: 1;
  }
}
#owner-list {
  overflow: hidden;
}

.mf-table-wrapper {
  overflow: scroll;
}
.mf-table-wrapper > div {
  overflow: hidden;
}

@media screen and (max-width: 480px) {
  .rangeSelector {
    overflow: scroll;
    margin-bottom: 1rem;
  }
}
