/*****************************
*       Import order         *
*****************************/
@font-face {
  font-family: "ProximaNova";
  src: url("/font/ProximaNovaRegular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "ProximaNovaBold";
  src: url("/font/ProximaNovaBold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SpaceMono";
  src: url("/font/SpaceMonoRegular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SpaceMonoBold";
  src: url("/font/SpaceMonoBold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SuisseWorksBold";
  src: url("/font/SuisseWorksBold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*
    1. Use a more-intuitive box-sizing model.
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  /* Hide focus styles if they're not needed, for example, 
  when an element receives focus via the mouse. */
}
* :focus:not(:focus-visible) {
  outline: none;
}
* {
  /* Show focus styles on keyboard focus. */
}
* :focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 0;
}

html,
body {
  height: 100%;
  margin: 0 auto;
  scrollbar-gutter: stable;
  --scrollbar-gutter:15px;
  color: #24062F;
}

/*
    Typographic tweaks!
    4. Add accessible line-height  Avoid text overflows
    5. Improve text rendering
  */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  line-height: 1.5;
  overflow-wrap: break-word;
  font-weight: 400;
}
h1:focus-visible,
h2:focus-visible,
h3:focus-visible,
h4:focus-visible,
h5:focus-visible,
h6:focus-visible,
p:focus-visible {
  outline: none;
}

/*
    6. Improve media defaults
  */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

img {
  height: auto;
}

/*
    7. Remove built-in form typography styles
*/
input,
button,
textarea,
select {
  font: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.main {
  flex: 1;
  overflow-x: hidden;
  position: relative;
}

.main-content {
  min-height: 100vh;
  padding-top: 64px;
}
@media (min-width: 768px) {
  .main-content {
    padding-top: 104px;
  }
}

.topElement {
  margin-top: 64px;
}

.jump-to-content {
  top: 0;
  background: #ffffff;
  color: #24062F;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMonoBold", monospace;
  left: 4px;
  padding: 4px 8px;
  position: absolute;
  transform: translateY(-200%);
  transition: transform 0.1s linear 0s;
  z-index: 2000000;
}
.jump-to-content:focus-within {
  outline: 2px solid #24062F;
  transform: translateY(0%);
}

.global-warning {
  position: fixed;
  z-index: 108;
  width: calc(100vw - 48px);
  bottom: 16px;
  left: 24px;
  background-color: #FFE66C;
  border-radius: 10px;
  padding: 32px;
  display: flex;
  gap: 25px;
  justify-content: start;
}
.global-warning > button {
  padding: 0;
}
.global-warning > button > svg {
  flex-shrink: 0;
  width: 25px;
  height: 25px;
  align-self: baseline;
}
@media (min-width: 1024px) {
  .global-warning {
    width: 75vw;
  }
}
@media (min-width: 1280px) {
  .global-warning {
    width: 45vw;
    bottom: 40px;
    left: 40px;
  }
}

.global-warning__content {
  width: 100%;
  font-size: 0.6875rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: 20px;
  line-height: 26px;
}
.global-warning__content > p {
  margin-bottom: 15px;
}
.global-warning__content[open] > summary {
  margin-bottom: 20px;
}

.link-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 100ms ease-in-out;
  text-decoration: none;
}
.link-wrapper:hover {
  gap: 12px;
}

a {
  text-decoration: underline from-font;
  cursor: pointer;
  color: #24062F;
  text-underline-offset: 2px;
  display: inline-flex;
  column-gap: 8px;
}
a:hover {
  text-decoration: none;
  color: #8E3DAB;
}
a:focus {
  outline: 1px solid currentColor;
}
a.link-out {
  display: flex;
  align-items: center;
}
a.link-out svg {
  margin-left: 0.25em;
  width: 1em;
  height: 1em;
  display: inline-flex;
}

button,
select {
  cursor: pointer;
}

strong {
  font-weight: 700;
}

input {
  font-family: "SpaceMono", monospace;
}

select {
  font-family: "SpaceMono", monospace;
}

textarea {
  resize: vertical;
  overflow: hidden;
}

fieldset {
  border: none;
}
fieldset legend {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.typography-h1 {
  font-family: "SuisseWorksBold", serif;
  font-size: 2.5rem;
  line-height: 2.75rem;
  letter-spacing: -0.03em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .typography-h1 {
    font-size: 4.375rem;
    line-height: 5rem;
  }
}

.typography-h2 {
  font-family: "SuisseWorksBold", serif;
  font-size: 2rem;
  line-height: 2.25rem;
  font-weight: 400;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .typography-h2 {
    font-size: 3.375rem;
    line-height: 3.75rem;
  }
}

.typography-h3 {
  font-family: "SuisseWorksBold", serif;
  font-size: 1.75rem;
  line-height: 2rem;
  letter-spacing: -0.02em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .typography-h3 {
    font-size: 2.875rem;
    line-height: 3.5rem;
  }
}

.typography-h4 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .typography-h4 {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}

.typography-h5 {
  font-family: "SuisseWorksBold", serif;
  font-size: 1.25rem;
  line-height: 1.5rem;
  letter-spacing: -0.01em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .typography-h5 {
    font-size: 2rem;
    line-height: 2.25rem;
  }
}

.typography-h6 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .typography-h6 {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}

.typography-intro {
  font-family: "SpaceMono", monospace;
  font-size: 1.125rem;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .typography-intro {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}

.typography-subtitle {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .typography-subtitle {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.typography-subtitle--bold {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .typography-subtitle--bold {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.typography-button {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
}

.typography-button--bold {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMonoBold", monospace;
}

.typography-body {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .typography-body {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.typography-body--bold {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .typography-body--bold {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.typography-body2 {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.typography-body2--bold {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.typography-body3 {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.typography-body3--bold {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.typography-captions {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
}

.typography-overline {
  font-size: 0.6875rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.faq {
  display: grid;
  row-gap: 40px;
}
@media (min-width: 768px) {
  .faq {
    row-gap: 64px;
  }
}

.accordion-group {
  display: flex;
  flex-direction: column;
}
.accordion-group li:not(:last-of-type) > details {
  border-bottom: transparent;
}

.accordion-group__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .accordion-group__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.accordion-group__title {
  margin-bottom: 24px;
}

.accordion-group__overhead {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .accordion-group__overhead {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}

.accordion {
  border-block: 2px solid #F3F2F1;
}
.accordion:has(.accordion__summary:focus-visible) {
  border-block: #24062F 2px solid;
}
.accordion[open] .accordion__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .accordion[open] .accordion__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.accordion[open] .accordion__indicator svg path {
  rotate: z 180deg;
}
.accordion:hover .accordion__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .accordion:hover .accordion__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.accordion__summary {
  cursor: pointer;
  position: relative;
  padding-block: 16px;
  display: flex;
  outline: none;
}
.accordion__summary::-webkit-details-marker {
  display: none;
}

.accordion__title {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .accordion__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.accordion__content {
  padding-bottom: 24px;
  display: grid;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .accordion__content {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.accordion__content p:not(:last-of-type), .accordion__content h3:not(:last-of-type) {
  margin-bottom: 16px;
}
.accordion__content h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .accordion__content h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.accordion__content h3 {
  margin-bottom: 1rem;
}
.accordion__content a {
  display: inline-flex;
}
.accordion__content strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .accordion__content strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.accordion__content ul {
  list-style: disc;
}
.accordion__content ul,
.accordion__content ol {
  padding-left: 24px;
}
.accordion__content ul li:not(:last-child),
.accordion__content ol li:not(:last-child) {
  padding-bottom: 16px;
}
.accordion__content u {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.accordion__indicator path {
  transition: rotate 0.2s ease-in-out;
  transform-origin: center;
}
@media (min-width: 768px) {
  .accordion__indicator path {
    stroke-width: 2px;
    transform: scale(1.3);
  }
}

.action-modal {
  position: fixed;
  top: 50vh;
  left: 50vw;
  transform: translate(-50%, -50%);
  z-index: 50000;
  max-width: 500px;
  min-height: 400px;
  height: fit-content;
  background: #ffffff;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  row-gap: 24px;
}
.action-modal nav {
  display: flex;
  justify-content: flex-end;
}

.action-modal--close-btn {
  padding: 4px;
}

.action-modal--title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .action-modal--title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.action-modal--body {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .action-modal--body {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.action-modal--body {
  flex-grow: 2;
}

.action-modal--footer {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  row-gap: 24px;
  align-self: center;
  justify-self: flex-end;
}

.anchor-menu {
  background-color: #FFF2F2;
  padding: 24px 24px 32px;
  margin-bottom: 32px;
}

.anchor-menu__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .anchor-menu__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.anchor-menu__title {
  margin-bottom: 12px;
}

.anchor-menu__list {
  list-style: none;
  display: grid;
  row-gap: 12px;
}

.anchor-menu__element {
  display: flex;
  align-items: center;
  background: none;
  border: none;
  gap: 8px;
  text-decoration: none;
  color: #24062F;
}
.anchor-menu__element:focus, .anchor-menu__element:focus-within {
  border-radius: 5px;
  outline: 1px solid currentColor;
  outline-offset: 0;
  padding-right: 8px;
}
.anchor-menu__element a {
  background: transparent !important;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border: transparent;
  padding: 0;
  height: fit-content;
  align-content: center;
  text-decoration: underline from-font;
  text-underline-offset: 2px;
  color: #24062F;
  width: max-content;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  transition: all 0.2s ease-in-out;
}
.anchor-menu__element a:hover {
  text-decoration: none;
  color: #24062F;
  column-gap: 12px;
}
.anchor-menu__element a:focus {
  outline: none;
}
.anchor-menu__element a:focus-visible {
  outline: solid currentColor;
  outline-offset: 4px;
}
.anchor-menu__element a svg {
  width: 1.5rem;
  height: 1.5rem;
  color: currentColor;
}
.anchor-menu__element a svg path {
  stroke: currentColor;
  stroke-width: 2px;
}
.anchor-menu__element a {
  cursor: pointer;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .anchor-menu__element a {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.anchor-menu__element a {
  width: 100%;
}
.anchor-menu__element a:focus, .anchor-menu__element a:focus-within, .anchor-menu__element a:focus-visible {
  outline: none;
}

.anchor-menu__element--white {
  color: #ffffff;
}
.anchor-menu__element--white:focus, .anchor-menu__element--white:focus-within {
  outline: 1px solid #ffffff;
}
.anchor-menu__element--white a {
  color: #ffffff;
}
.anchor-menu__element--white a:hover {
  color: #ffffff;
}

.apartmentCard__info {
  display: grid;
  gap: 16px;
  width: 100%;
}
@media (min-width: 520px) {
  .apartmentCard__info {
    gap: 16px;
  }
}
.apartmentCard__info .apartmentCard__header {
  width: 100%;
  overflow: visible;
}
.apartmentCard__info .apartmentCard__header > * {
  transition: all 0.25s ease-in-out;
  height: unset;
  max-width: 100%;
}
.apartmentCard__info .apartmentCard__header .apartmentCard__link {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .apartmentCard__info .apartmentCard__header .apartmentCard__link {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.apartmentCard__info .apartmentCard__header .apartmentCard__link {
  display: inline;
}
.apartmentCard__info .apartmentCard__header .apartmentCard__link span {
  margin-right: 4px;
}
.apartmentCard__info .apartmentCard__header .apartmentCard__link svg {
  display: inline-flex;
  vertical-align: middle;
  width: 1rem;
  height: 1rem;
  transition: all 0.2s ease;
}
.apartmentCard__info .apartmentCard__header .apartmentCard__link:hover svg {
  transform: translateX(2px);
}
.apartmentCard__info .apartmentCard__header p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  color: #605953;
}
.apartmentCard__info .apartmentCard__price {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .apartmentCard__info .apartmentCard__price {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.apartmentCard__info .apartmentCard__price_new {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.apartmentCard__info .apartmentCard__features {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.apartmentCard__info .apartmentCard__features > li {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.apartmentCard__info .apartmentCard__features > li:not(:last-child)::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='3' height='3' viewBox='0 0 3 3' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' fill='%23460A5B'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  height: 3px;
  width: 3px;
  margin-inline: 7px;
}
.apartmentCard__info .apartmentCard__distances {
  flex-direction: column;
}
@media (min-width: 520px) {
  .apartmentCard__info .apartmentCard__distances {
    display: flex;
  }
}
.apartmentCard__info .apartmentCard__distances > p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.apartmentCard__info .apartmentCard__distances > div {
  display: flex;
  column-gap: 16px;
}
.apartmentCard__info .apartmentCard__distances > div > p {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  column-gap: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 350px) {
  .apartmentCard__info .apartmentCard__distances > div > p {
    flex-direction: column;
  }
}
.apartmentCard__info .apartmentCard__distances > div > p span {
  display: flex;
  align-items: center;
  justify-content: center;
}
.apartmentCard__info .apartmentCard__distances > div > p span svg {
  height: 1rem;
  width: 1rem;
  flex-shrink: 0;
}

.apartmentCard-navigation button {
  margin: -8px;
}

.apartmentCard-wish_button {
  width: 100%;
}
.apartmentCard-wish_button svg {
  width: 12px;
  height: 12px;
}

.article-media img, .article-media video {
  width: 100%;
  border-radius: 10px;
}

.back-to-top__wrapper {
  margin-bottom: 24px !important;
}

.back-to-top {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .back-to-top {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.back-to-top {
  background: transparent;
  border: transparent;
  padding: 0;
  height: fit-content;
  width: fit-content;
  color: #24062F;
  column-gap: 8px;
  display: flex;
  align-items: center;
  justify-self: flex-end;
}
.back-to-top > span {
  display: flex;
  align-items: center;
  transition: all 0.2s ease-in;
}
.back-to-top:hover {
  text-decoration: none;
  color: #460A5B;
}
.back-to-top:hover > span {
  transform: translateY(-4px);
}
.back-to-top:hover > span svg path {
  stroke: currentColor;
}
.back-to-top:focus {
  outline: solid currentColor;
  outline-offset: 4px;
}
.back-to-top {
  cursor: pointer;
}

.backdrop {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .backdrop {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.backdrop > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.backdrop {
  display: flex;
  justify-content: center;
  position: fixed;
  top: 0;
  background-color: rgba(17, 6, 21, 0.75);
  width: 100vw;
  height: 100vh;
  z-index: 666666;
  padding-top: 88px;
}
@media (min-width: 768px) {
  .backdrop {
    padding-top: 136px;
  }
}

.backdrop--hidden {
  display: none;
}

.btn {
  padding: 0.375rem 1.375rem;
  border-radius: 20px;
  width: max-content;
  height: fit-content;
  min-height: 2.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: relative;
  white-space: nowrap;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMonoBold", monospace;
  text-align: center;
  text-decoration: none;
  border-style: solid;
  border-width: 2px;
  outline-offset: 2px;
}
.btn svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.btn:has(input) {
  cursor: pointer;
}
.btn[aria-disabled], .btn[aria-disabled=True], .btn[aria-disabled=true] {
  cursor: not-allowed;
}
.btn:focus:not(:focus-visible), .btn:focus:not(:focus-within) {
  outline: none;
}

.btn--compact {
  padding: 0.125rem 0.75rem;
  min-height: 2rem;
}
.btn--compact svg {
  width: 1rem;
  height: 1rem;
}
.btn--compact svg path {
  stroke-width: 2px;
}

.btn--primary {
  color: #ffffff;
  background-color: #24062F;
  border-color: #24062F;
}
.btn--primary:focus-visible, .btn--primary:focus-within {
  border-color: #24062F;
  background-color: #24062F;
  outline: solid 2px #24062F;
}
.btn--primary:hover {
  border-color: #72228E;
  background-color: #72228E;
  color: #ffffff;
}
.btn--primary:active {
  border-color: #61177B;
  background-color: #61177B;
}
.btn--primary[aria-disabled], .btn--primary[aria-disabled=True], .btn--primary[aria-disabled=true] {
  opacity: 0.2;
  border-color: #24062F !important;
  background-color: #24062F !important;
}

.btn--primary-dark {
  color: #24062F;
  background-color: #ffffff;
  border-color: #ffffff;
}
.btn--primary-dark:hover {
  border-color: #C476E0;
  background-color: #C476E0;
  color: #24062F;
}
.btn--primary-dark:active {
  border-color: #A95AC4;
  background-color: #A95AC4;
}
.btn--primary-dark:focus-visible, .btn--primary-dark:focus-within {
  border-color: #ffffff;
  background-color: #ffffff;
  outline: 2px solid #ffffff;
}
.btn--primary-dark:focus-visible:hover, .btn--primary-dark:focus-within:hover {
  border-color: #C476E0;
  background-color: #C476E0;
  color: #24062F;
}
.btn--primary-dark:focus-visible:active, .btn--primary-dark:focus-within:active {
  border-color: #A95AC4;
  background-color: #A95AC4;
}
.btn--primary-dark[aria-disabled], .btn--primary-dark[aria-disabled=True], .btn--primary-dark[aria-disabled=true] {
  opacity: 0.2;
  border-color: #ffffff !important;
  background-color: #ffffff !important;
}

.btn--secondary {
  border-color: #24062F;
  color: #24062F;
  background-color: transparent;
}
.btn--secondary:focus-visible, .btn--secondary:focus-within {
  outline: 2px solid #24062F;
  border-color: #24062F;
  border-width: 2px;
  background-color: transparent;
}
.btn--secondary:hover {
  border-color: #24062F;
  background-color: transparent;
  box-shadow: #24062F 0 0 0 1px inset;
  color: #24062F;
}
.btn--secondary:active {
  border-color: #24062F;
  background-color: transparent;
  box-shadow: #24062F 0 0 0 2px inset;
}
.btn--secondary[aria-disabled], .btn--secondary[aria-disabled=True], .btn--secondary[aria-disabled=true] {
  border: 2px solid #24062F;
  color: #24062F;
  opacity: 0.3;
  box-shadow: none;
}

.btn--secondary-dark {
  color: #ffffff;
  border-color: #ffffff;
  background-color: transparent;
}
.btn--secondary-dark:focus-visible, .btn--secondary-dark:focus-within {
  outline: 2px solid #ffffff;
  border-color: #ffffff;
  border-width: 2px;
  background-color: transparent;
}
.btn--secondary-dark:hover {
  border-color: #ffffff;
  background-color: transparent;
  color: #ffffff;
  box-shadow: #ffffff 0 0 0 1px inset;
}
.btn--secondary-dark:active {
  border-color: #ffffff;
  background-color: transparent;
  box-shadow: #ffffff 0 0 0 2px inset;
}
.btn--secondary-dark[aria-disabled], .btn--secondary-dark[aria-disabled=True], .btn--secondary-dark[aria-disabled=true] {
  border: 2px solid #ffffff;
  color: #ffffff;
  opacity: 0.3;
}

.btn--tertiary {
  border: 2px transparent solid;
  color: #24062F;
  background-color: transparent;
  padding: 0.5rem;
}
.btn--tertiary:focus:not(.btn--tertiary:focus-visible) {
  border-color: transparent;
}
.btn--tertiary:focus-visible {
  border: currentColor solid 2px;
  color: currentColor;
  outline: none;
}
.btn--tertiary:hover {
  color: #72228E;
  border: 2px transparent solid;
}
.btn--tertiary:active {
  border: 2px #F8E5FF solid;
  background-color: #F8E5FF;
  color: #72228E;
}
.btn--tertiary[aria-disabled], .btn--tertiary[aria-disabled=True], .btn--tertiary[aria-disabled=true] {
  color: #24062F;
  opacity: 0.4;
}
.btn--tertiary svg {
  width: 1.5rem;
  height: 1.5rem;
}
.btn--tertiary svg path {
  stroke-width: 2px;
}

.btn--tertiary-dark {
  color: #ffffff;
  background-color: transparent;
  border: 2px transparent solid;
  padding: 0.5rem;
}
.btn--tertiary-dark:focus:not(.btn--tertiary-dark:focus-visible) {
  border-color: transparent;
}
.btn--tertiary-dark:focus-visible {
  border: #ffffff solid 2px;
  color: #ffffff;
  outline: none;
}
.btn--tertiary-dark:hover {
  color: #EEBFFF;
  border: 2px transparent solid;
}
.btn--tertiary-dark:active {
  border: 2px #460A5B solid;
  background-color: #EEBFFF;
  color: #460A5B;
}
.btn--tertiary-dark[aria-disabled], .btn--tertiary-dark[aria-disabled=True], .btn--tertiary-dark[aria-disabled=true] {
  color: #ffffff;
  opacity: 0.4;
}
.btn--tertiary-dark svg {
  width: 1.5rem;
  height: 1.5rem;
}
.btn--tertiary-dark svg path {
  stroke-width: 2px;
}

.btn--cta {
  color: #24062F;
  background-color: #47E17A;
  border-color: #47E17A;
}
.btn--cta:hover {
  border-color: #21B752;
  background-color: #21B752;
}
.btn--cta:active {
  border-color: #13903C;
  background-color: #13903C;
}
.btn--cta:focus:not(.btn--cta:focus-visible) {
  border-color: #47E17A;
}
.btn--cta:focus-visible, .btn--cta:focus-within {
  border-color: #24062F;
  background-color: #47E17A;
  outline-width: 2px;
}
.btn--cta:focus-visible:active, .btn--cta:focus-within:active {
  border-color: #13903C;
}
.btn--cta[aria-disabled], .btn--cta[aria-disabled=True], .btn--cta[aria-disabled=true] {
  opacity: 0.2;
  border-color: #47E17A;
  background-color: #47E17A;
}

.linkAlike {
  background: transparent !important;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border: transparent;
  padding: 0;
  height: fit-content;
  align-content: center;
  text-decoration: underline from-font;
  text-underline-offset: 2px;
  color: #24062F;
  width: max-content;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  transition: all 0.2s ease-in-out;
}
.linkAlike:hover {
  text-decoration: none;
  color: #24062F;
  column-gap: 12px;
}
.linkAlike:focus {
  outline: none;
}
.linkAlike:focus-visible {
  outline: solid currentColor;
  outline-offset: 4px;
}
.linkAlike svg {
  width: 1.5rem;
  height: 1.5rem;
  color: currentColor;
}
.linkAlike svg path {
  stroke: currentColor;
  stroke-width: 2px;
}
.linkAlike {
  cursor: pointer;
}

.btn--fullWidth {
  width: 100%;
}

.btn--fullWidthMobile {
  width: 100%;
}
@media (min-width: 768px) {
  .btn--fullWidthMobile {
    width: fit-content;
  }
}

.btn--fullWidthSmallMobile {
  width: 100%;
}
@media (min-width: 520px) {
  .btn--fullWidthSmallMobile {
    width: fit-content;
  }
}

.btn--centered {
  align-self: center;
  justify-self: center;
  margin-inline: auto;
}

.btn--iconOnly, .btn--iconOnly:focus-visible, .btn--iconOnly:hover, .btn--iconOnly:active {
  padding: 0;
  height: 2rem;
  width: 2rem;
}
.btn--iconOnly {
  flex-shrink: 0;
}

.breadcrumbs {
  display: flex;
  align-items: center;
  column-gap: 8px;
  padding-block: 12px;
  color: #24062F;
}
.breadcrumbs a, .breadcrumbs p, .breadcrumbs span {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .breadcrumbs a, .breadcrumbs p, .breadcrumbs span {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.breadcrumbs a, .breadcrumbs p, .breadcrumbs span {
  display: none;
}
.breadcrumbs p {
  color: #24062F;
}
.breadcrumbs a {
  color: #61177B;
}
.breadcrumbs svg path {
  stroke-width: 2px;
}
.breadcrumbs .breadcrumbs__parent {
  display: inline-block;
}
.breadcrumbs span.breadcrumbs__parent {
  rotate: 180deg;
}
@media (min-width: 768px) {
  .breadcrumbs {
    padding-block: 16px;
  }
  .breadcrumbs a, .breadcrumbs p, .breadcrumbs span {
    display: inline-block;
  }
  .breadcrumbs span.breadcrumbs__parent {
    rotate: 0deg;
  }
}

.breadcrumbs__wrapper {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .breadcrumbs__wrapper {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.breadcrumbs__wrapper > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.chat {
  border-block: 2px solid #F3F2F1;
  padding-block: 16px;
}
.chat:has(.chat__summary:focus-visible) {
  border-block: #24062F 2px solid;
}

.chat__summary {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .chat__summary {
    gap: 32px 24px;
  }
}
.chat__summary {
  align-items: center;
  position: relative;
  row-gap: 16px;
}
.chat__summary .chat__date {
  grid-column: 1/span 9;
  grid-row: 1;
  font-size: 0.8125rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.chat__summary .chat__title {
  grid-column: 1/span 12;
  grid-row: 2;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #72228E;
}
.chat__summary .chat__tag {
  grid-column: 10/span 3;
  grid-row: 1;
  justify-self: end;
}
.chat__summary .chat__button {
  width: 100%;
  grid-column: 1/span 8;
  grid-row: 3;
}
@media (min-width: 480px) {
  .chat__summary .chat__title {
    grid-column: 1/span 7;
  }
  .chat__summary .chat__button {
    grid-column: 8/span 5;
    grid-row: 2;
  }
}
@media (min-width: 768px) {
  .chat__summary .chat__date {
    grid-column: 1/span 3;
    grid-row: 1;
  }
  .chat__summary .chat__title {
    grid-column: 4/span 6;
    grid-row: 1;
  }
  .chat__summary .chat__tag {
    grid-column: 8/span 2;
    grid-row: 1;
  }
  .chat__summary .chat__button {
    grid-column: 10/span 3;
    grid-row: 1;
  }
}

.chat__body {
  max-width: 369px;
  margin-inline: auto;
  padding-top: 40px;
  display: grid;
  row-gap: 24px;
}

.messages {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
  padding-bottom: 24px;
  border-bottom: 1px solid #F3F2F1;
}

.message {
  padding: 8px;
  max-width: 260px;
  width: fit-content;
  border-radius: 10px;
}

.message--user {
  background-color: #E8FDEF;
  align-self: end;
}

.message__wrapper--caretaker {
  display: flex;
  justify-content: start;
  align-items: end;
  column-gap: 16px;
}
.message__wrapper--caretaker:before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.9993 0C7.17714 0 0 7.17821 0 16.0014C0 24.8232 7.17714 32 15.9993 32C24.8229 32 32 24.8232 32 16.0014C32 7.17821 24.8229 0 15.9993 0ZM15.9993 31.2761C7.56323 31.2761 0.72254 24.4371 0.72254 16C0.72254 7.56429 7.56323 0.725267 15.9993 0.725267C24.4381 0.725267 31.2775 7.56429 31.2775 16.0014C31.2775 24.4371 24.4381 31.2761 15.9993 31.2761Z' fill='%23F04B37'/%3E%3Cpath d='M15.9999 1.26562C7.86576 1.26562 1.27051 7.85921 1.27051 15.9957C1.27051 24.1295 7.86576 30.7258 15.9999 30.7258C24.1353 30.7258 30.732 24.1295 30.732 15.9957C30.732 7.85921 24.1367 1.26562 15.9999 1.26562ZM15.9999 30.0005C8.26426 30.0005 1.99443 23.731 1.99443 15.9957C1.99443 8.26045 8.26426 1.98951 15.9999 1.98951C23.7355 1.98951 30.008 8.26045 30.008 15.9957C30.008 23.7296 23.7355 30.0005 15.9999 30.0005Z' fill='%23F04B37'/%3E%3Cpath d='M15.9984 2.53906C8.56483 2.53906 2.53906 8.56457 2.53906 15.9992C2.53906 23.4312 8.56345 29.458 15.9984 29.458C23.4334 29.458 29.4592 23.4325 29.4592 15.9992C29.4592 8.56595 23.4334 2.53906 15.9984 2.53906ZM15.9984 28.7355C8.96609 28.7355 3.26298 23.0327 3.26298 16.0006C3.26298 8.96719 8.96609 3.26433 15.9984 3.26433C23.0336 3.26433 28.7353 8.96719 28.7353 16.0006C28.7353 23.0327 23.0336 28.7355 15.9984 28.7355Z' fill='%23F04B37'/%3E%3Cpath d='M8.9217 11.7024C8.92032 12.2649 9.01823 12.7889 9.17818 13.2439C9.29952 13.5859 9.45396 13.8892 9.61942 14.1526C9.87038 14.5469 10.1489 14.853 10.3957 15.0819C10.5198 15.1963 10.6357 15.2942 10.7377 15.3728C10.8384 15.45 10.9252 15.5121 10.9832 15.5548H10.9845C11.3361 15.8016 11.7002 16.0043 12.0683 16.1781C12.4365 16.3532 12.806 16.4993 13.1756 16.6317L13.1439 16.6207L13.177 16.6317C13.5493 16.7641 13.9795 16.902 14.4125 17.0329C14.8441 17.1639 15.2756 17.2894 15.6314 17.3901C16.3732 17.5996 17.0903 17.801 17.7163 18.0243L17.7425 18.034L17.7149 18.0243C18.0279 18.1374 18.3175 18.2532 18.5726 18.3746C18.8263 18.4945 19.0469 18.62 19.2303 18.7482L19.2331 18.7496C19.4758 18.9206 19.644 19.0915 19.7571 19.2542L19.7584 19.257C19.8301 19.3618 19.8839 19.4721 19.9239 19.6031C19.9639 19.7327 19.9887 19.8844 19.9901 20.0719V20.0788V20.1436V20.1464C19.9887 20.4387 19.9156 20.6924 19.7764 20.9364L19.775 20.9378C19.633 21.1846 19.4082 21.43 19.0869 21.6534C18.7643 21.8768 18.352 22.0726 17.8583 22.2091C17.3674 22.347 16.8007 22.4269 16.183 22.4269C15.4756 22.4269 14.8523 22.3304 14.2966 22.1788C13.4638 21.9512 12.784 21.5983 12.249 21.2494C11.9801 21.0743 11.7512 20.9006 11.5554 20.7448C11.4575 20.6676 11.3692 20.5917 11.2865 20.5242C11.2038 20.4538 11.1279 20.389 11.0549 20.3242L10.6246 20.9061C10.7584 21.0192 10.9114 21.1543 11.1045 21.3101C11.3141 21.4783 11.5623 21.6658 11.8546 21.8561C12.4393 22.2367 13.1866 22.6269 14.1077 22.8778C14.7213 23.046 15.4108 23.1536 16.1843 23.1536C16.8628 23.1536 17.4943 23.0667 18.0555 22.9095C18.614 22.7523 19.1007 22.5276 19.4978 22.2518L19.4992 22.2505C19.8949 21.9747 20.1983 21.6548 20.401 21.3018H20.4024C20.6037 20.9516 20.7113 20.5697 20.7126 20.1491V20.1464V20.0898V20.0747C20.7126 19.8196 20.6782 19.5962 20.6161 19.3949C20.5554 19.1936 20.4672 19.0143 20.3541 18.8489H20.3527C20.1818 18.5979 19.946 18.3704 19.6481 18.1608L19.6219 18.1429L19.6495 18.1622C19.2014 17.8465 18.6208 17.5831 17.9617 17.3473H17.9604C17.2999 17.1129 16.5691 16.9088 15.83 16.6979C15.4783 16.5986 15.0523 16.4745 14.6248 16.3449C14.2001 16.2139 13.7754 16.0802 13.4224 15.9533C12.7178 15.701 12.0256 15.4018 11.4037 14.9647C11.332 14.9151 11.2203 14.8351 11.0935 14.7317C10.9666 14.6269 10.8218 14.4959 10.6729 14.3373C10.3778 14.0188 10.0662 13.5803 9.86349 13.0054C9.72836 12.6248 9.647 12.1863 9.647 11.7037V11.6417V11.6403V11.621C9.64838 10.9178 9.84005 10.2463 10.1779 9.66583C10.5171 9.07983 10.9928 8.59172 11.5513 8.20289C12.1152 7.81406 12.7716 7.52174 13.4983 7.32871C14.2263 7.13429 15.0233 7.03639 15.8782 7.03501C17.0875 7.03501 18.141 7.25011 19.0083 7.54656C19.877 7.84025 20.5582 8.2153 21.0477 8.53794C21.2669 8.68272 21.4434 8.81509 21.5855 8.93091L22.0143 8.35042C21.9812 8.32285 21.9467 8.29527 21.9095 8.26631C21.4448 7.90919 20.7044 7.42798 19.6895 7.02674C18.676 6.62688 17.3867 6.31113 15.8755 6.3125C14.9654 6.3125 14.1063 6.4173 13.3093 6.62964C12.5123 6.84198 11.7774 7.16462 11.1334 7.60999C10.5005 8.04846 9.94484 8.61378 9.54634 9.30458C9.1506 9.98434 8.92446 10.7813 8.91895 11.6045H8.9217V11.61V11.6155C8.9217 11.621 8.9217 11.6265 8.9217 11.632V11.6403C8.9217 11.6445 8.9217 11.65 8.9217 11.6541V11.7024Z' fill='%23F04B37'/%3E%3Cpath d='M23.2472 19.9925C23.2389 19.532 23.1741 19.0811 23.0431 18.6578C22.908 18.2097 22.7039 17.7905 22.4488 17.4183C22.0682 16.8626 21.5966 16.4296 21.1085 16.0849L21.1375 16.1056L21.1071 16.0835C20.7404 15.8271 20.3598 15.6147 19.9737 15.4327C19.589 15.2494 19.2001 15.0949 18.8127 14.9557L18.803 14.9543C18.0281 14.6785 17.2504 14.4648 16.5223 14.2566C16.1817 14.1615 15.7681 14.0401 15.3627 13.9174C14.96 13.7947 14.5615 13.6665 14.2706 13.563H14.272C13.9769 13.4582 13.7066 13.3493 13.4694 13.2363C13.2309 13.1232 13.0268 13.006 12.8586 12.8874C12.8241 12.8626 12.791 12.8405 12.7552 12.813C12.6338 12.7192 12.4822 12.5799 12.3732 12.409C12.3181 12.3235 12.2739 12.2297 12.2408 12.1194C12.2064 12.0077 12.1843 11.8781 12.1829 11.7057V11.6437V11.6409C12.1843 11.3817 12.2477 11.1584 12.3718 10.9391L12.3732 10.9364C12.5001 10.7157 12.7028 10.4938 12.9965 10.2897H12.9951C13.2805 10.0925 13.6666 9.91051 14.152 9.7809C14.6374 9.65129 15.2179 9.57407 15.877 9.57407C17.089 9.57407 18.057 9.85811 18.774 10.1794C19.1326 10.3393 19.4249 10.5089 19.6455 10.6565C19.7572 10.7309 19.8482 10.7957 19.9199 10.8523C19.9916 10.9074 20.044 10.9529 20.0716 10.9763L20.5046 10.3917C20.4094 10.3117 20.2536 10.1904 20.0468 10.0525C19.7958 9.88707 19.469 9.69817 19.0705 9.51892C18.2749 9.16318 17.2035 8.85156 15.877 8.85156C15.1627 8.85156 14.5202 8.93567 13.9658 9.08321C13.4115 9.23212 12.9482 9.44446 12.5828 9.69679H12.5842C12.2146 9.95325 11.9334 10.2525 11.7472 10.5765H11.7486C11.5624 10.8991 11.4631 11.2521 11.4618 11.6396V11.6423V11.7044C11.4631 12.1208 11.561 12.4241 11.6948 12.6751C11.8286 12.926 12.0064 13.1204 12.1664 13.2625C12.2712 13.3548 12.3622 13.421 12.4366 13.4748L12.4449 13.4803C12.8613 13.7754 13.4074 14.0236 14.0307 14.2456C14.3381 14.3545 14.7435 14.4841 15.1531 14.6096C15.5626 14.735 15.9818 14.8564 16.3251 14.9529C17.0587 15.1611 17.8254 15.3735 18.5686 15.6382L18.5452 15.6299L18.5686 15.6396C19.3104 15.9043 20.0399 16.2214 20.6935 16.6778L20.7197 16.6971L20.6935 16.6778C21.1278 16.9839 21.5332 17.359 21.8531 17.8264L21.8517 17.825C22.0668 18.1394 22.2378 18.491 22.3523 18.8702C22.464 19.2356 22.5219 19.6272 22.526 20.0339L22.5274 20.0615V20.0849V20.1497C22.5274 20.1704 22.5274 20.1814 22.5274 20.1828C22.5233 20.915 22.3247 21.6113 21.9745 22.2152C21.6201 22.8274 21.1209 23.339 20.5363 23.7457L20.5928 23.7057L20.5363 23.7471C19.9516 24.1525 19.2787 24.4572 18.5465 24.6613C17.8116 24.8667 17.0187 24.9729 16.1859 24.9729C14.949 24.9729 13.8638 24.7481 12.9468 24.42C12.0285 24.0918 11.2756 23.6658 10.691 23.2673C10.3021 23.0012 9.98497 22.7475 9.74505 22.5475C9.66921 22.4841 9.60164 22.4262 9.54235 22.3752L9.10938 22.9598C9.16039 23.0025 9.21555 23.0508 9.27898 23.1018C9.52856 23.3114 9.86501 23.5803 10.2814 23.8643C10.9061 24.2904 11.7127 24.7481 12.7014 25.0998C13.6887 25.4527 14.858 25.6954 16.1831 25.6954H16.1845C17.078 25.6954 17.9357 25.5837 18.7382 25.3576C19.538 25.1328 20.2826 24.7978 20.9417 24.3414L20.9472 24.3386C21.6063 23.8809 22.1827 23.2949 22.5977 22.5779L22.5991 22.5765C23.0073 21.8747 23.2417 21.057 23.2499 20.2049H23.2513C23.2513 20.2049 23.2527 20.187 23.2527 20.1484V20.0835V20.0394L23.2472 19.9925Z' fill='%23F04B37'/%3E%3Cpath d='M21.9782 20.0621C21.9768 19.3217 21.7672 18.664 21.399 18.129C21.1233 17.725 20.7689 17.3954 20.3773 17.1183H20.3759C19.7844 16.7046 19.1004 16.404 18.3848 16.1476C17.665 15.8911 16.9094 15.6815 16.1744 15.4733C15.4822 15.2775 14.4908 14.9838 13.8441 14.755C13.1974 14.5247 12.6072 14.26 12.1274 13.9235L12.1246 13.9208C12.0419 13.8629 11.9288 13.7801 11.8006 13.6671C11.6075 13.4947 11.3855 13.2506 11.2132 12.9308C11.0394 12.6081 10.9139 12.211 10.9139 11.7008V11.6388V11.6333C10.9153 11.1493 11.0422 10.6998 11.2752 10.2999L11.238 10.362L11.2752 10.2999C11.5096 9.89595 11.8475 9.53883 12.2749 9.24376C13.1215 8.65499 14.3653 8.30201 15.8793 8.30201C17.2927 8.30201 18.4413 8.63431 19.2962 9.01763C19.7223 9.20929 20.0753 9.41473 20.3483 9.5926C20.5579 9.73186 20.7206 9.85596 20.8337 9.9511L21.2639 9.36785C21.1343 9.26168 20.9633 9.13207 20.7482 8.99005C19.8409 8.39026 18.1724 7.57812 15.8793 7.57812C14.2564 7.5795 12.8706 7.95041 11.8626 8.64948C11.3607 8.99832 10.9429 9.43128 10.6492 9.93731C10.3569 10.4406 10.1928 11.0197 10.1928 11.6305C10.1928 11.6305 10.1928 11.6347 10.1928 11.6429V11.7008C10.1928 12.1214 10.2645 12.4964 10.3776 12.8218C10.5499 13.3113 10.816 13.6864 11.0725 13.9621C11.3276 14.2379 11.5772 14.4185 11.7151 14.515C12.2763 14.9066 12.923 15.192 13.6028 15.4347C14.2826 15.6774 15.2781 15.9697 15.9786 16.1683C16.7177 16.3778 17.4582 16.5833 18.1421 16.8287C18.8274 17.0728 19.4534 17.3527 19.9622 17.7098L19.9291 17.6877L19.9622 17.7098C20.3014 17.9483 20.5869 18.22 20.8034 18.5385L20.8199 18.5605L20.8047 18.5385C21.0902 18.9563 21.2556 19.4623 21.2584 20.0717V20.0842V20.1393V20.1448C21.257 20.6619 21.1219 21.1431 20.8751 21.5705C20.6255 22.0007 20.2642 22.3799 19.8106 22.6943C18.906 23.323 17.6347 23.6939 16.1841 23.6939C14.5363 23.6939 13.225 23.2375 12.2363 22.7122C11.7427 22.4489 11.3304 22.1676 10.9967 21.9152C10.703 21.6919 10.4741 21.4933 10.3017 21.3444L9.87012 21.9277C10.037 22.0697 10.2686 22.2696 10.5596 22.4902C11.0946 22.8956 11.8295 23.3768 12.7672 23.7574C13.7062 24.1379 14.8479 24.4165 16.1854 24.4165C17.7574 24.4151 19.1666 24.0193 20.2242 23.2872C20.7537 22.9204 21.1922 22.4668 21.5011 21.9318C21.8086 21.4023 21.9809 20.797 21.9809 20.1545H21.9823V20.1434V20.1407V20.0759V20.0731V20.069V20.0648L21.9782 20.0621Z' fill='%23F04B37'/%3E%3C/svg%3E%0A");
  border-radius: 50%;
  display: block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-size: 100%;
}

.message--caretaker {
  background-color: #F1F3FF;
  align-self: start;
}

.message--caretaker--closed {
  background-color: #F3F2F1;
  align-self: start;
}

.message__text {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

button.message__text {
  width: initial;
  align-items: flex-start;
  text-align: end;
}

.message__date {
  font-size: 0.6875rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #585A67;
  /*text-align: start;*/
}

.message--caretaker--requestmessage {
  background-color: #F3F2F1;
  align-self: end;
}

.image-carousel {
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .image-carousel {
    gap: 32px 24px;
  }
}
.image-carousel > div {
  aspect-ratio: 16/9;
  width: 100%;
}
@media (min-width: 1280px) {
  .image-carousel > div {
    grid-column: 3/span 8;
  }
}
.image-carousel > div > #carousel {
  position: relative;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .image-carousel {
    margin-bottom: 64px;
  }
}

.image-carousel-placeholder {
  margin-bottom: 40px;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .image-carousel-placeholder {
    gap: 32px 24px;
  }
}
@media (min-width: 1280px) {
  .image-carousel-placeholder {
    grid-column: 3/span 8;
  }
}
.image-carousel-placeholder {
  aspect-ratio: 16/9;
  width: 100%;
  position: relative;
  height: 90%;
}
@media (min-width: 768px) {
  .image-carousel-placeholder {
    margin-bottom: 64px;
  }
}

.carousel-root .carousel-status {
  font-size: 0.6875rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #605953;
}
.carousel-root:focus {
  outline: none;
}
.carousel-root .control-dots {
  position: absolute;
  text-align: center;
  padding: 0;
  width: 100%;
  justify-content: center;
  bottom: 0;
}
.carousel-root .control-dots .dot {
  transition: all 0.3s ease-in;
  background: #F3F2F1;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  display: inline-block;
  margin: 0 4px;
}
.carousel-root .control-dots .dot.selected {
  background: #605953;
  transform: scale(1.25);
}
.carousel-root .control-dots .dot.away {
  transform: scale(0.75);
}
.carousel-root .slide img, .carousel-root .slide video {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  pointer-events: none;
  border-radius: 10px;
}
.carousel-root .control-arrow {
  transition: all 0.25s ease-in;
  opacity: 1;
  position: absolute;
  z-index: 2;
  overflow: hidden;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  bottom: 0;
  background: transparent !important;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border: transparent;
  padding: 0;
  height: fit-content;
  align-content: center;
  text-decoration: underline from-font;
  text-underline-offset: 2px;
  color: #24062F;
  width: max-content;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  transition: all 0.2s ease-in-out;
}
.carousel-root .control-arrow:hover {
  text-decoration: none;
  color: #24062F;
  column-gap: 12px;
}
.carousel-root .control-arrow:focus {
  outline: none;
}
.carousel-root .control-arrow:focus-visible {
  outline: solid currentColor;
  outline-offset: 4px;
}
.carousel-root .control-arrow svg {
  width: 1.5rem;
  height: 1.5rem;
  color: currentColor;
}
.carousel-root .control-arrow svg path {
  stroke: currentColor;
  stroke-width: 2px;
}
.carousel-root .control-arrow {
  cursor: pointer;
}
.carousel-root .control-arrow.control-disabled {
  opacity: 0;
  cursor: not-allowed;
}
.carousel-root .control-arrow:hover:before {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 12H22' stroke='%2361177B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15 5L22 12L15 19' stroke='%2361177B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.carousel-root .control-arrow:active:before {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 12H22' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15 5L22 12L15 19' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.carousel-root .control-arrow:before {
  width: 16px;
  background-repeat: no-repeat;
  transition: all 0.1s ease-in-out;
  background-size: 100%;
  display: block;
  height: 16px;
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 12H22' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M15 5L22 12L15 19' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.carousel-root .control-arrow.control-prev::before {
  transform: rotate(180deg);
}
.carousel-root .control-arrow.control-prev:active:before {
  transform: translateX(-1px) rotate(180deg);
}
.carousel-root .control-arrow.control-prev {
  right: 40px;
}
.carousel-root .control-arrow.control-next {
  right: 0;
}
.carousel-root .control-arrow.control-next:active:before {
  transform: translateX(1px);
}
.carousel-root:focus, .carousel-root:active {
  outline: none;
}
.carousel-root .carousel-slider {
  position: relative;
  margin: 0;
}
.carousel-root .slider-wrapper {
  overflow: hidden;
  margin-block: auto;
  margin-bottom: 8px;
  aspect-ratio: 16/9;
  width: 100%;
  border-radius: 10px;
}
@media (min-width: 768px) {
  .carousel-root .slider-wrapper {
    margin-bottom: 12px;
  }
}
.carousel-root .slide iframe {
  display: inline-block;
  width: calc(100% - 80px);
  margin: 0 40px 40px;
  border: 0;
}

.carousel .slider-wrapper.axis-horizontal .slider {
  display: flex;
}

.carousel .slider-wrapper.axis-horizontal .slider .slide {
  flex-direction: column;
}

.carousel .slider-wrapper.axis-vertical {
  display: flex;
}

.carousel .slider-wrapper.axis-vertical .slider {
  flex-direction: column;
}

.carousel .slider {
  margin: 0;
  padding: 0;
  position: relative;
  list-style: none;
  width: 100%;
}

.carousel .slider.animated {
  transition: all 0.35s ease-in-out;
}

.carousel .slide {
  min-width: 100%;
  margin: 0;
  position: relative;
  text-align: center;
  background: transparent;
}

.carousel .slide img {
  width: 100%;
  vertical-align: top;
  border: 0;
}

.carousel .slide .legend {
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -45%;
  width: 90%;
  border-radius: 10px;
  background: #000;
  color: #fff;
  padding: 10px;
  font-size: 12px;
  text-align: center;
  opacity: 0.25;
  -webkit-transition: opacity 0.35s ease-in-out;
  -moz-transition: opacity 0.35s ease-in-out;
  -ms-transition: opacity 0.35s ease-in-out;
  -o-transition: opacity 0.35s ease-in-out;
  transition: opacity 0.35s ease-in-out;
}

.carousel:hover .slide .legend {
  opacity: 1;
}

.carousel-container {
  position: relative;
}

.image-carousel__placeholder {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 10px;
}

.housing-type__image {
  position: relative;
}
.housing-type__image .tag {
  position: absolute;
  top: 16px;
  right: 16px;
}

/* Customize the label (the container) */
.checkbox-container {
  display: block;
  position: relative;
  cursor: pointer;
  user-select: none;
  padding-left: 32px;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
}

/* Hide the browser's default checkbox */
.checkbox-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkbox-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 24px;
  width: 24px;
  background-color: #ffffff;
  border: #EDEAE9 2px solid;
  border-radius: 2px;
  overflow: hidden;
}

/* On mouse-over, add a grey background color */
.checkbox-container:hover input ~ .checkbox-checkmark {
  border-color: #72228E;
  outline: none;
  box-shadow: none;
}

/* focus */
.checkbox-container input:focus ~ .checkbox-checkmark {
  outline: none;
  box-shadow: 0 0 4px #72228E;
  border-color: #72228E;
}

/* active */
.checkbox-container input:active ~ .checkbox-checkmark {
  border-color: #A95AC4;
  box-shadow: none;
}

/* disabled */
.checkbox-container input:disabled ~ .checkbox-checkmark {
  background-color: #F3F2F1;
  border-color: #DDD9D5;
  cursor: not-allowed;
}

.checkbox-container input:disabled ~ .label {
  color: #DDD9D5;
  cursor: not-allowed;
}

/* invalid */
.checkbox-container input[aria-invalid=true] ~ .checkbox-checkmark {
  background-color: #FFD8D2;
  border-color: #D3301C;
}

.checkbox-container:hover input[aria-invalid=true] ~ .checkbox-checkmark,
.checkbox-container input[aria-invalid=true]:focus ~ .checkbox-checkmark {
  border-color: #72228E;
}

.checkbox-container input[aria-invalid=true] ~ .label {
  color: #D3301C;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkbox-checkmark:before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='red' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.2934 0.292431L4.00041 6.58543L1.70741 4.29243C1.5188 4.11027 1.2662 4.00948 1.00401 4.01176C0.741809 4.01403 0.490997 4.1192 0.305589 4.30461C0.12018 4.49002 0.0150115 4.74083 0.0127331 5.00303C0.0104547 5.26523 0.111249 5.51783 0.293407 5.70643L3.29341 8.70643C3.48093 8.8939 3.73524 8.99922 4.00041 8.99922C4.26557 8.99922 4.51988 8.8939 4.70741 8.70643L11.7074 1.70643C11.8896 1.51783 11.9904 1.26523 11.9881 1.00303C11.9858 0.740832 11.8806 0.49002 11.6952 0.304612C11.5098 0.119204 11.259 0.014035 10.9968 0.0117566C10.7346 0.00947813 10.482 0.110272 10.2934 0.292431Z' fill='white'/%3E%3C/svg%3E%0A");
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 9px;
  width: 12px;
  display: none;
}

/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkbox-checkmark {
  background-color: #72228E;
  border-color: #72228E;
}
.checkbox-container input:checked ~ .checkbox-checkmark::before {
  display: block;
}
.checkbox-container input:checked ~ .checkbox-checkmark:hover {
  background-color: #460A5B;
  border-color: #460A5B;
}
.checkbox-container input:checked ~ .checkbox-checkmark:active {
  background-color: #A95AC4;
  border-color: #A95AC4;
}

.checkbox-container input:checked:focus-visible ~ .checkbox-checkmark {
  background-color: #460A5B;
  border-color: #460A5B;
}

/* Style the checkmark/indicator */
.checkbox-container .checkbox-checkmark:after {
  justify-content: center;
  align-content: center;
}

.choosing-inputs__header {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  padding-bottom: 16px;
}

.choosing-inputs {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.choosing-inputs > div {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 768px) {
  .choosing-inputs > div {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

.choosing-inputs--row {
  flex-direction: row;
}

.content-block__container {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media (min-width: 1024px) {
  .content-block__container {
    display: grid;
    aspect-ratio: 2;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }
}

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

.content-block__body {
  padding-block: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.content-block__header {
  color: currentColor;
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .content-block__header {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}
.content-block__header {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .content-block__header {
    margin-bottom: 32px;
  }
}

.content-block__ingress {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .content-block__ingress {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.content-block__ingress {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .content-block__ingress {
    margin-bottom: 40px;
  }
}

.content-block--main {
  color: #ffffff;
}
.content-block--main .content-block__container {
  border-radius: 10px;
}
@media (min-width: 520px) {
  .content-block--main .content-block__container {
    margin-inline: auto;
  }
}
.content-block--main .content-block__body {
  background-color: #24062F;
  padding-inline: 16px;
  border-radius: 0 0 10px 10px;
}
@media (min-width: 768px) {
  .content-block--main .content-block__body {
    padding-inline: 15%;
  }
}
@media (min-width: 1024px) {
  .content-block--main .content-block__body {
    border-radius: 0 10px 10px 0;
  }
}
.content-block--main .content-block__image-container {
  overflow: hidden;
  border-radius: 10px 10px 0 0;
}
@media (min-width: 1024px) {
  .content-block--main .content-block__image-container {
    border-radius: 10px 0 0 10px;
  }
}

.content-block--campaign {
  background-color: #FFD715;
  padding-block: 40px;
}
@media (min-width: 1024px) {
  .content-block--campaign {
    padding-block: 104px;
  }
}
.content-block--campaign .content-block__body {
  padding-bottom: 0;
}
@media (min-width: 1024px) {
  .content-block--campaign .content-block__body {
    order: -1;
    padding-right: 15%;
  }
}
.content-block--campaign .content-block__image {
  border-radius: 10px;
}

.content-block--basic .content-block__container {
  gap: 24px;
}
.content-block--basic .content-block__body {
  background-color: #FFF2F2;
  border-radius: 10px;
  padding-inline: 16px;
}
@media (min-width: 1024px) {
  .content-block--basic .content-block__body {
    order: -1;
    padding-inline: 64px;
  }
}
.content-block--basic .content-block__image {
  border-radius: 10px;
}

.content-block--full-width {
  background-color: #E8FDEF;
  padding-block: 32px;
}
@media (min-width: 768px) {
  .content-block--full-width {
    padding-block: 104px;
  }
}
.content-block--full-width .content-block__container {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .content-block--full-width .content-block__container {
    gap: 32px 24px;
  }
}
.content-block--full-width .content-block__container {
  aspect-ratio: unset;
  grid-template-rows: 1fr;
}
.content-block--full-width .content-block__container .content-block__body {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  grid-column: 1/span 12;
  text-align: center;
}
.content-block--full-width .content-block__container .content-block__body .content-block__image-container {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .content-block--full-width .content-block__container .content-block__body {
    grid-column: 3/span 8;
  }
  .content-block--full-width .content-block__container .content-block__body .content-block__image-container {
    margin-bottom: 40px;
  }
}
@media (min-width: 1024px) {
  .content-block--full-width .content-block__container .content-block__body {
    grid-column: 4/span 6;
  }
}

.content-block--full-width-image {
  position: relative;
  display: flex;
  padding-block: 40px;
}
@media (min-width: 768px) {
  .content-block--full-width-image {
    padding-block: 104px;
  }
}
@media (min-width: 1024px) {
  .content-block--full-width-image {
    height: 800px;
  }
}
.content-block--full-width-image .content-block__container {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container {
    gap: 32px 24px;
  }
}
.content-block--full-width-image .content-block__container {
  align-items: center;
  aspect-ratio: unset;
  grid-template-rows: 1fr;
}
.content-block--full-width-image .content-block__container .content-block__body {
  display: flex;
  justify-content: center;
  align-items: center;
  grid-column: span 12;
  text-align: center;
  background: white;
  border-radius: 10px;
  padding: 16px 40px;
}
.content-block--full-width-image .content-block__container .content-block__body .content-block__ingress {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container .content-block__body .content-block__ingress {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.content-block--full-width-image .content-block__container .content-block__body .content-block__ingress {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container .content-block__body .content-block__ingress {
    margin-bottom: 32px;
  }
}
.content-block--full-width-image .content-block__container .content-block__body .content-block__header {
  color: currentColor;
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container .content-block__body .content-block__header {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.content-block--full-width-image .content-block__container .content-block__body .content-block__header {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container .content-block__body .content-block__header {
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .content-block--full-width-image .content-block__container .content-block__body {
    padding: 64px;
    grid-column: 4/span 6;
  }
}
.content-block--full-width-image .content-block__container .content-block__image-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
  object-position: center;
  z-index: -1;
}

.content-block--alternate-direction .content-block__container .content-block__body {
  order: 2;
}
@media (min-width: 1024px) {
  .content-block--alternate-direction.content-block--campaign .content-block__container .content-block__body {
    padding-left: 15%;
  }
}
@media (min-width: 1024px) {
  .content-block--alternate-direction.content-block--main .content-block__container .content-block__body {
    order: 1;
    border-radius: 10px 0 0 10px;
  }
}
@media (min-width: 1024px) {
  .content-block--alternate-direction.content-block--main .content-block__container .content-block__image-container {
    order: 2;
    border-radius: 0 10px 10px 0;
  }
}

.content-block.content-block--bg-syrin.content-block--main .content-block__body {
  background: #24062F;
}
.content-block.content-block--bg-syrin.content-block--campaign {
  background: #72228E;
}
.content-block.content-block--bg-syrin.content-block--campaign .content-block__body {
  color: #ffffff;
}
.content-block.content-block--bg-syrin.content-block--basic .content-block__body {
  background: #F8E5FF;
}
.content-block.content-block--bg-syrin.content-block--full-width {
  background: #F8E5FF;
}
.content-block.content-block--bg-yellow.content-block--campaign {
  background: #FFD715;
}
.content-block.content-block--bg-yellow.content-block--basic .content-block__body {
  background: #FFF5C7;
}
.content-block.content-block--bg-yellow.content-block--full-width {
  background: #FFF5C7;
}
.content-block.content-block--bg-red.content-block--main .content-block__body {
  background: #400C05;
}
.content-block.content-block--bg-red.content-block--basic .content-block__body {
  background: #FFD8D2;
}
.content-block.content-block--bg-red.content-block--full-width {
  background: #FFD8D2;
}
.content-block.content-block--bg-green.content-block--main .content-block__body {
  background: #042F12;
}
.content-block.content-block--bg-granite.content-block--campaign {
  background: #262421;
}
.content-block.content-block--bg-granite.content-block--campaign .content-block__body {
  color: white;
}
.content-block.content-block--bg-transparent.content-block--basic .content-block__body {
  background: none;
}
.content-block.content-block--bg-transparent.content-block--full-width {
  background: none;
}

.react-datepicker-wrapper {
  width: 100%;
}
.react-datepicker-wrapper .react-datepicker__input-container {
  width: 100%;
}
.error-message p {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  color: #D3301C;
}

.calendar .input {
  padding-right: 3rem;
}
.calendar button.input {
  width: 100%;
  background-color: #ffffff;
  border: #EDEAE9 2px solid;
  color: #24062F;
  border-radius: 5px;
  height: 3.5rem;
  padding-inline: 1rem;
}
.calendar button.input[type=search i]::-webkit-search-cancel-button {
  display: none;
}
.calendar button.input::placeholder {
  color: #605953 !important;
}
.calendar button.input:hover {
  color: #24062F;
  border-color: #72228E !important;
  outline: none !important;
  box-shadow: none !important;
}
.calendar button.input:focus {
  outline: none !important;
  box-shadow: 0 0 4px #72228E !important;
  border-color: #72228E !important;
  color: #24062F;
}
.calendar button.input:active {
  border-color: #24062F !important;
  box-shadow: none !important;
  color: #24062F;
}
.calendar button.input[aria-invalid=true] {
  border: 2px solid #D3301C;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 8L8 16' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16 16L8 8' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23Z' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-position: right 12px center;
  padding-right: 48px;
  color: #24062F;
}
.calendar button.input:disabled {
  background-color: #F3F2F1 !important;
  border-color: #CCC4BD !important;
  cursor: not-allowed;
  color: #A9A097;
  opacity: 0.5;
}
.calendar button.input {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.react-datepicker {
  border: none;
  box-shadow: 0 0 6px 0 #72228E;
  z-index: 1;
  background-color: #ffffff;
  border-radius: 5px;
}

.react-datepicker-popper {
  z-index: 1;
  padding-block: 12px;
}

.react-datepicker__triangle {
  display: none;
}

.react-datepicker__header {
  background-color: #F8E5FF;
  border-bottom-color: #EEBFFF;
  padding: 16px 12px 4px;
  display: grid;
  gap: 4px;
}

.react-datepicker__header__dropdown {
  display: inline-flex;
  justify-content: center;
}

.react-datepicker__navigation {
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  top: 27px;
  padding: 0;
  border: none;
  background: none;
}
.react-datepicker__navigation::after {
  content: "";
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.react-datepicker__navigation:hover, .react-datepicker__navigation:focus-within {
  outline: solid #24062F 2px;
}

.react-datepicker__navigation-icon {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.react-datepicker__navigation--next {
  right: 25px;
}
.react-datepicker__navigation--next::after {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 8L14 12L10 16' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E ");
  background-repeat: no-repeat;
  background-size: 100%;
  transform: initial;
}

.react-datepicker__navigation--previous {
  left: 25px;
}
.react-datepicker__navigation--previous::after {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 16L10 12L14 8' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 100%;
}

.react-datepicker__year-read-view--selected-year,
.react-datepicker__year-option {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.react-datepicker__year-read-view--selected-year {
  position: relative;
  cursor: pointer;
}
.react-datepicker__year-read-view--selected-year:after {
  content: "";
  position: absolute;
  right: -24px;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 10L12 14L8 10' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.react-datepicker__year-option {
  cursor: pointer;
}

.react-datepicker__year-option--selected_year {
  position: relative;
}

.react-datepicker__year-option--selected {
  position: absolute;
  left: -15px;
}

.react-datepicker__current-month {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  text-transform: capitalize;
  display: flex;
  justify-content: center;
  align-items: center;
}

.react-datepicker__day-names {
  display: flex;
  gap: 8px;
}

.react-datepicker__day-name,
.react-datepicker__day {
  margin: 0;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.react-datepicker__day-name {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  text-transform: capitalize;
}

.react-datepicker__month {
  display: grid;
  gap: 12px;
  padding: 12px;
}

.react-datepicker__week {
  display: flex;
  gap: 8px;
  overflow: hidden;
  z-index: 1;
}

.react-datepicker__day {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  color: #24062F;
  cursor: pointer;
}

.react-datepicker__day--disabled {
  color: #A9A097;
  cursor: default;
  pointer-events: none;
}

.react-datepicker__day--selected {
  border: none;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #ffffff;
  background-color: #72228E;
  border-radius: 100%;
  position: relative;
}
.react-datepicker__day--selected:before {
  width: 125%;
}

.react-datepicker__day:hover:not(.react-datepicker__day--in-range):not(.react-datepicker__day--in-selecting-range),
.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--in-range):not(.react-datepicker__day--in-selecting-range) {
  position: relative;
  outline: none;
}
.react-datepicker__day:hover:not(.react-datepicker__day--in-range):not(.react-datepicker__day--in-selecting-range):before,
.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--in-range):not(.react-datepicker__day--in-selecting-range):before {
  position: absolute;
  content: "";
  border: solid 1px #72228E;
  border-radius: 100%;
  height: 100%;
  width: 100%;
}

.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range,
.react-datepicker__day--in-range + .react-datepicker__day--in-range,
.react-datepicker__day--in-range:first-child,
.react-datepicker__day--in-selecting-range:first-child {
  position: relative;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:before,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:before,
.react-datepicker__day--in-range:first-child:before,
.react-datepicker__day--in-selecting-range:first-child:before {
  content: "";
  position: absolute;
  background-color: #F8E5FF;
  z-index: -1;
  left: -75%;
  width: 125%;
  height: 100%;
  border-color: #F8E5FF;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:last-child:not(.react-datepicker__day--range-end):before,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:last-child:not(.react-datepicker__day--range-end):before,
.react-datepicker__day--in-range:first-child:last-child:not(.react-datepicker__day--range-end):before,
.react-datepicker__day--in-selecting-range:first-child:last-child:not(.react-datepicker__day--range-end):before {
  width: 200%;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range),
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range),
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range),
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range) {
  border: none;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #ffffff;
  background-color: #72228E;
  border-radius: 100%;
  position: relative;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range):before,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range):before,
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range):before,
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end):hover:not(.react-datepicker__day--in-range):before {
  width: 125%;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover, .react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected,
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover,
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected,
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover,
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected {
  position: relative;
  outline: none;
}
.react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover:after, .react-datepicker__day--in-selecting-range + .react-datepicker__day--in-selecting-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected:after,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover:after,
.react-datepicker__day--in-range + .react-datepicker__day--in-range:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected:after,
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover:after,
.react-datepicker__day--in-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected:after,
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range:hover:after,
.react-datepicker__day--in-selecting-range:first-child:not(.react-datepicker__day--range-end).react-datepicker__day--in-range.react-datepicker__day--keyboard-selected:after {
  position: absolute;
  content: "";
  border: solid 1px #72228E;
  border-radius: 100%;
  height: 100%;
  width: 100%;
}

.react-datepicker__day--range-start,
.react-datepicker__day--range-end,
.react-datepicker__day--selecting-range-start,
.react-datepicker__day--selecting-range-end {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #ffffff;
  background-color: #72228E;
  border-radius: 100%;
  position: relative;
}

.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--in-range) {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #ffffff;
  background-color: #72228E;
  border-radius: 100%;
  position: relative;
}

.distance-component {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.distance-component .input-component {
  width: fit-content;
  align-self: center;
}
.distance-component .input-component label {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .distance-component .input-component label {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.distance-component .input-component label {
  text-align: center;
  align-self: center;
  margin-bottom: 20px;
}
.distance-component .input-component select {
  max-width: 330px;
  align-self: center;
}
.distance-component ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  gap: 12px;
}

.documents__wrapper {
  display: grid;
  gap: 32px;
}
@media (min-width: 768px) {
  .documents__wrapper {
    gap: 40px;
  }
}

.documents__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .documents__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.documents__title {
  border-bottom: 2px solid #262421;
  margin-bottom: 16px;
  padding-block: 16px;
}

.documents__list {
  display: grid;
}

.documents__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: 16px;
  border-bottom: 2px solid #EDEAE9;
}

.video__list {
  gap: 32px;
}
@media (min-width: 768px) {
  .video__list {
    gap: 40px;
  }
}

.video {
  overflow: hidden;
  border-radius: 10px;
  background-color: #110615;
  margin-bottom: 32px;
}

.video__frame {
  border: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.media_wrapper .body {
  grid-column: 1/span 12 !important;
}
@media (min-width: 1024px) {
  .media_wrapper .body {
    grid-column: 2/span 10 !important;
  }
}
@media (min-width: 1280px) {
  .media_wrapper .body {
    grid-column: 3/span 8 !important;
  }
}

.housing-filter__backdrop {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .housing-filter__backdrop {
    gap: 32px 24px;
  }
}
.housing-filter__backdrop.backdrop--hidden {
  display: none;
}

.housing-filter__modal {
  max-height: calc(100vh - 2 * 64px);
  max-height: calc(100dvh - 2 * 64px);
  height: max-content;
  box-shadow: 0 0 12px -2px rgba(17, 6, 21, 0.15);
  border-radius: 10px;
  background-color: #ffffff;
  display: grid;
  grid-template-rows: 5rem 1fr 6.5rem;
  grid-column: 1/span 12;
  max-width: 708px;
}
.housing-filter__modal header, .housing-filter__modal footer {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px;
  padding: 16px;
}
.housing-filter__modal header {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-filter__modal header {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-filter__modal header {
  padding: 16px;
  border-bottom: 2px solid #F3F2F1;
}
.housing-filter__modal footer {
  border-top: 2px solid #F3F2F1;
  flex-direction: column;
}
@media (min-width: 520px) {
  .housing-filter__modal {
    grid-template-rows: 5rem 1fr 5rem;
  }
  .housing-filter__modal footer {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .housing-filter__modal {
    grid-column: 2/span 10;
    max-height: calc(100vh - 2 * 136px);
  }
  .housing-filter__modal header, .housing-filter__modal footer {
    padding: 24px;
  }
  .housing-filter__modal footer {
    gap: 24px;
  }
}
@media (min-width: 1024px) {
  .housing-filter__modal {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .housing-filter__modal {
    grid-column: 4/span 6;
  }
}

.housing-filter__filters {
  overflow-y: scroll;
  padding-inline: 16px;
}
.housing-filter__filters summary {
  padding-right: 8px;
}
.housing-filter__filters > ul li {
  container-type: inline-size;
  container-name: filter-container;
}
.housing-filter__filters > ul li:last-of-type details {
  border-bottom: none;
}
.housing-filter__filters > ul li:first-of-type details {
  border-top: none;
}

.housing-filter__slider {
  padding-right: 24px;
}
@media (min-width: 768px) {
  .housing-filter__slider {
    padding-right: 32px;
  }
}

.facilities-filter .choosing-inputs {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .facilities-filter .choosing-inputs {
    margin-bottom: 24px;
  }
}

.footer {
  background-color: #24062F;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .footer {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.footer > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.footer {
  padding-top: 40px;
  padding-bottom: 32px;
}
@media (min-width: 768px) {
  .footer {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}

.footer__emblem {
  margin-bottom: 40px;
}
.footer__emblem svg {
  width: auto;
  height: 40px;
  --logo-mark-fill: white;
  --logo-type-fill: white;
}
@media (min-width: 768px) {
  .footer__emblem {
    margin-bottom: 64px;
  }
  .footer__emblem svg {
    width: auto;
    height: 64px;
  }
}

.footer__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .footer__container {
    margin-bottom: 40px;
  }
}

.footer__element .footer__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .footer__element .footer__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.footer__element .footer__title {
  margin-bottom: 12px;
  color: #ffffff;
}
.footer__element .footer__body > * {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .footer__element .footer__body > * {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.footer__element .footer__body > * {
  color: #ffffff;
  margin-bottom: 12px;
}
.footer__element .footer__list-element {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .footer__element .footer__list-element {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.footer__element .footer__list-element {
  display: flex;
  color: #ffffff;
  gap: 8px;
}

.footer__apps {
  display: flex;
  gap: 16px;
  margin: 0;
}

.footer__app-link {
  border-radius: 5px;
  outline-offset: 2px;
}
.footer__app-link span {
  color: black;
  background-color: white;
}
.footer__app-link:focus {
  outline: #ffffff solid 2px;
}
.footer__app-link:hover {
  outline: #C476E0 solid 2px;
}

.footer__social-media {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 columns */
  row-gap: 16px;
  column-gap: 128px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer__social-media li {
  display: flex;
  align-items: center; /* Center vertically */
}

.footer__round-link {
  display: flex;
  align-items: center; /* Center vertically */
  text-decoration: underline; /* Add underline to the links */
  color: #fff; /* Change to your desired text color */
  margin-left: 0; /* Reset the margin */
}

.footer__round-link svg {
  width: 40px; /* Adjust size as needed */
  height: 40px; /* Adjust size as needed */
  margin-right: 8px; /* Space between icon and text */
}

.footer__round-link span {
  margin-left: 8px; /* Space between icon and text */
}

.footer__sio-date-stemp {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .footer__sio-date-stemp {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.footer__sio-date-stemp {
  color: #CFD1DE;
  padding-top: 52px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 32px 24px;
}
@media (min-width: 768px) {
  .form-grid {
    gap: 40px 24px;
  }
}

.form-grid__six-col-el {
  grid-column: 1/span 6;
}

.form-grid__three-col-el--first {
  grid-column: 1/span 6;
}
@media (min-width: 768px) {
  .form-grid__three-col-el--first {
    grid-column: 1/span 3;
  }
}

.form-grid__three-col-el--second {
  grid-column: 1/span 6;
}
@media (min-width: 768px) {
  .form-grid__three-col-el--second {
    grid-column: 4/span 3;
  }
}

.form-grid__two-col-el--first {
  grid-column: 1/span 6;
}
@media (min-width: 768px) {
  .form-grid__two-col-el--first {
    grid-column: 1/span 2;
  }
}

.form-grid__two-col-el--second {
  grid-column: 3/span 4;
}
@media (min-width: 768px) {
  .form-grid__two-col-el--second {
    grid-column: 2/span 2;
  }
}

.form-grid__four-col-el {
  grid-column: 1/span 6;
}
@media (min-width: 768px) {
  .form-grid__four-col-el {
    grid-column: 3/span 4;
  }
}

.form-grid__one-col-el--first {
  grid-column: 1/span 2;
}
@media (min-width: 768px) {
  .form-grid__one-col-el--first {
    grid-column: 1/span 1;
  }
}

.form-grid__header {
  grid-column: 1/span 6;
  margin-bottom: -8px;
}

.form-grid__subtitle {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .form-grid__subtitle {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.form-grid__subtitle {
  display: flex;
  align-items: center;
  column-gap: 12px;
  margin-top: 10px;
}

.form-grid__ingress {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .form-grid__ingress {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.form-grid__heading {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .form-grid__heading {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.form-grid__heading {
  display: flex;
  justify-content: start;
  gap: 16px;
  margin-bottom: 12px;
}

.form-grid__heading-tooltip {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  display: flex;
  align-items: center;
  gap: 8px;
}

.form-grid__data-presentation {
  grid-column: 1/span 6;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.form-grid__data-presentation h4 {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .form-grid__data-presentation h4 {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.form-grid__data-presentation p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .form-grid__data-presentation p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.global-notification .global-notification__body {
  margin: 0 auto;
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding: 12px 0;
  max-width: 1600px;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .global-notification .global-notification__body {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.global-notification .global-notification__body .global-notification__content {
  display: flex;
  flex: 4;
  gap: 12px;
}
.global-notification .global-notification__body .global-notification__content .global-notification__icon {
  flex-shrink: 0;
  display: flex;
}
.global-notification .global-notification__body .global-notification__content .global-notification__message {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .global-notification .global-notification__body .global-notification__content .global-notification__message {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.global-notification .global-notification__body .global-notification__close {
  padding-left: 12px;
}
.global-notification .global-notification__body .global-notification__close .global-notification__close-button {
  all: unset;
  cursor: pointer;
}
.global-notification .global-notification__body .global-notification__close .global-notification__close-button:focus-visible {
  outline: 2px solid black;
  border-radius: 3px;
}
.global-notification.global-notification--variant-neutral {
  background-color: #F1F3FF;
}
.global-notification.global-notification--variant-warning {
  background-color: #FFF5C7;
}
.global-notification.global-notification--variant-error {
  background-color: #FFD8D2;
}
.global-notification.global-notification--variant-positive {
  background-color: #D3FBE0;
}
.global-notification.global-notification--variant-neutral:not(:first-child) {
  margin-top: 4px;
}
.global-notification.global-notification--variant-warning:not(:first-child) {
  margin-top: 4px;
}
.global-notification.global-notification--variant-error:not(:first-child) {
  margin-top: 4px;
}
.global-notification.global-notification--variant-positive:not(:first-child) {
  margin-top: 4px;
}

.global-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100000;
}
.global-header .logo {
  display: flex;
  color: transparent;
  flex-shrink: 0;
}
.global-header .logo:focus {
  outline: 1px solid #24062F;
  outline-offset: 4px;
}

@media (min-width: 1024px) {
  .housing-card {
    max-width: 706px;
    margin: auto;
  }
}
.housing-card h2 {
  font-size: 18px;
}
@media (min-width: 1024px) {
  .housing-card h2 {
    font-size: 22px;
  }
}
.housing-card--container {
  padding: 24px 16px;
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  border-radius: 8px;
}
.housing-card--container .header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.housing-card--container .header .studenthouse-name {
  font-family: "Space Mono", "monospace";
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0;
}
.housing-card--container .header .housing-name {
  font-size: 18px;
  margin: 0;
}
@media (min-width: 1024px) {
  .housing-card--container .header .housing-name {
    font-size: 22px;
  }
}
.housing-card--container hr {
  border-color: #e3e5f2;
  margin: 8px 0 16px;
}
.housing-card--container .info {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .housing-card--container .info {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, 1fr);
  }
}
.housing-card--container .info--container {
  grid-area: 1/1/3/3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-right: 40px;
}
@media (max-width: 764px) {
  .housing-card--container .info--container {
    order: 2;
    margin-top: 16px;
    margin-right: 0;
  }
}
.housing-card--container .info--container div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  position: relative;
}
.housing-card--container .info--container div p {
  margin: 4px 0;
}
.housing-card--container .info--container div p:first-of-type {
  font-family: "ProximaNova";
}
.housing-card--container .info--container div p:nth-child(2) {
  border-bottom: 1px dashed #24062F;
  width: fit-content;
}
.housing-card--container .info--container div p:nth-child(2):hover ~ .tooltip-text {
  visibility: visible;
}
.housing-card--container .info--container div .tooltip-text {
  visibility: hidden;
  background-color: #24062F;
  color: #f8e5ff;
  text-align: center;
  padding: 6px;
  border-radius: 8px;
  width: 250px;
  top: 100%;
  position: absolute;
  z-index: 5;
}
.housing-card--container .info--container div .tooltip-text::after {
  content: "";
  position: absolute;
  border: 9px solid transparent;
  border-top: 10px solid #24062F;
  top: -19px;
  right: 60px;
  transform: rotate(180deg);
}
.housing-card--container .info--container div .from-to {
  display: flex;
  align-items: baseline;
  border-bottom: 1px dashed #24062F;
  width: fit-content;
}
.housing-card--container .info--container div .from-to p {
  font-family: "Space Mono", "monospace";
}
.housing-card--container .info--container div .from-to span {
  margin: 0 4px;
}
.housing-card--container .info--container div.no-line p:nth-child(2) {
  border-bottom: none;
  font-family: "ProximaNova";
}
.housing-card--container .info--container div.no-line .from-to {
  border-bottom: none;
}
.housing-card--container .info--container div.no-line .from-to p {
  font-family: "ProximaNova";
}
.housing-card--container .info--container div .btn--underline {
  color: #D3301C;
  text-decoration-color: #D3301C;
  font-family: "ProximaNova";
  padding: 0;
  margin: 8px 0 0;
  text-align: left;
  white-space: normal;
}
.housing-card--container .info--container #leaseButton {
  display: flex;
  justify-content: flex-end;
}
.housing-card--container .info--container #leaseButton .btn--remove {
  font-family: "ProximaNova";
  padding: 0;
  margin: 16px 0;
}
.housing-card--container .info .btn--secondary {
  margin: 24px auto 0;
  grid-area: 2/3/3/5;
}
@media (max-width: 764px) {
  .housing-card--container .info .btn--secondary {
    order: 3;
  }
}
.housing-card--container .info .image-container {
  grid-area: 1/3/2/5;
}
@media (max-width: 764px) {
  .housing-card--container .info .image-container {
    order: 1;
  }
}
.housing-card--container .info .image-container img {
  width: 100%;
  height: 163px;
  object-fit: cover;
  border-radius: 8px;
}
@media (min-width: 1024px) {
  .housing-card--container .info .image-container img {
    width: 288px;
    height: 163px;
  }
}
@media (min-width: 500px) and (max-width: 764px) {
  .housing-card--container .info .image-container img {
    width: 100%;
    height: auto;
  }
}
.housing-card--container .info .image-container .example-images {
  font-size: 12px;
  color: #8e847b;
  margin: 8px 0 0 0;
  font-family: "Space Mono", "monospace";
}
@media (max-width: 764px) {
  .housing-card--container .info .image-container .example-images {
    display: flex;
    justify-content: flex-end;
  }
}

.housing-card--deposit {
  background: #FFF2F2;
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  border-radius: 8px;
  padding: 16px 24px;
  margin: 24px 0;
}
.housing-card--deposit h3 {
  font-size: 18px;
  margin: 0;
}
@media (min-width: 1024px) {
  .housing-card--deposit h3 {
    font-size: 22px;
  }
}
.housing-card--deposit hr {
  border: 2px solid #ffd8d2;
  margin: 8px 0 16px;
}
.housing-card--deposit .container {
  display: grid;
  place-items: center;
}
@media (min-width: 1024px) {
  .housing-card--deposit .container {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    place-items: initial;
  }
}
.housing-card--deposit .container .info {
  grid-area: 1/1/2/2;
}
@media (min-width: 1024px) {
  .housing-card--deposit .container .info {
    grid-area: 1/1/2/2;
  }
}
.housing-card--deposit .container p {
  margin: 0;
}
.housing-card--deposit .container .grid {
  width: 100%;
  grid-area: 2/1/3/2;
}
@media (min-width: 1024px) {
  .housing-card--deposit .container .grid {
    grid-area: 1/2/3/3;
    margin-left: 65px;
  }
}
.housing-card--deposit .container .grid div {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.housing-card--deposit .container .grid div p {
  margin: 12px 0;
}
.housing-card--deposit .container .button {
  grid-area: 3/1/4/2;
}
.housing-card--deposit .container .button button {
  margin-top: 12px;
}
@media (min-width: 1024px) {
  .housing-card--deposit .container .button {
    grid-area: 2/1/3/2;
  }
}

.housing-search__sort {
  display: grid;
  gap: 16px;
}

.housing-search__results {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  display: flex;
}
.housing-search__results span {
  display: flex;
  justify-content: center;
  align-items: center;
}
.housing-search__results span:not(:last-child)::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='3' height='3' viewBox='0 0 3 3' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' fill='%23460A5B'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  height: 3px;
  width: 3px;
  margin-inline: 7px;
}

.housing-search__no-results {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-search__no-results {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-search__no-results {
  text-align: center;
}
@media (min-width: 768px) {
  .housing-search__no-results {
    gap: 40px;
  }
}

.housing-search__img {
  height: 250px;
  width: auto;
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .housing-search__img {
    gap: 24px;
  }
}

.housing-search__header {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-search__header {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.housing-wishes__text {
  position: absolute;
  height: 0;
  width: 0;
  opacity: 0;
  z-index: -1;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMonoBold", monospace;
  color: currentColor;
}
@media (min-width: 1280px) {
  .housing-wishes__text {
    position: relative;
    height: auto;
    width: auto;
    opacity: 1;
    z-index: unset;
  }
}

.housing-wishes__icon {
  position: relative;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
}
.housing-wishes__icon .housing-wishes__number {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #D3301C;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  font-weight: bold;
  font-size: 12px;
  line-height: 12px;
  color: #ffffff;
  height: 17px;
  width: 17px;
  border-radius: 50%;
  top: 0;
  right: -25%;
  z-index: 100;
}

.housing-wishes__icon--change .housing-wishes__number {
  animation-name: pulse;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
}

.housing-wishes__icon--noData .housing-wishes__number {
  display: none;
}

.housing-wishes__icon--fade-out .housing-wishes__number {
  animation-name: fadeOut;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes pulse {
  0% {
    scale: 100%;
  }
  50% {
    scale: 180%;
  }
  100% {
    scale: 100%;
  }
}
@keyframes fadeOut {
  0% {
    scale: 100%;
  }
  30% {
    scale: 180%;
  }
  100% {
    scale: 0;
  }
}
.housing-type-picker {
  margin-bottom: 24px !important;
}
.housing-type-picker div.section-module-grid {
  padding: 0;
}

.housing-type-filter-nav {
  margin-bottom: 0 !important;
}
.housing-type-filter-nav .body {
  margin-top: 12px;
  gap: 12px !important;
}
@media (min-width: 768px) {
  .housing-type-filter-nav .body {
    margin-top: 16px;
  }
}

.housing-type-filter-buttons {
  display: flex;
  align-items: center;
  gap: 16px;
}

.housing-type-picker__button {
  border: none;
  background: transparent;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  width: 100%;
  height: 32px;
  color: #24062F;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-picker__button {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 768px) {
  .housing-type-picker__button {
    height: 64px;
  }
}
.housing-type-picker__button svg {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
}
.housing-type-picker__button svg path {
  stroke: #24062F;
}
.housing-type-picker__button__open svg {
  transition: all 0.1s ease-in-out;
}
.housing-type-picker__button__closed span {
  visibility: hidden;
}
.housing-type-picker__button__closed svg {
  transform: rotateZ(180deg);
}

.housing-type-picker__body {
  display: flex;
  flex-direction: column;
  max-height: 400px;
  padding-bottom: 24px;
  transition: all 0.1s ease-in-out;
}
@media (min-width: 768px) {
  .housing-type-picker__body {
    padding-bottom: 64px;
  }
}

.housing-type-picker__body--closed {
  opacity: 0;
  max-height: 0;
  padding: 0;
  z-index: -1;
}

.housing-type-picker__intro {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .housing-type-picker__intro {
    margin-bottom: 32px;
  }
}
.housing-type-picker__intro h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-picker__intro h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-type-picker__intro p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-picker__intro p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.housing-type-picker__choices {
  display: grid;
  gap: 16px;
}
@media (min-width: 768px) {
  .housing-type-picker__choices {
    grid-template-columns: repeat(4, 1fr);
  }
}

.housing-type-picker__choice {
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.housing-type-picker__choice:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.housing-type-picker__choice:hover a {
  color: inherit;
}
.housing-type-picker__choice:focus, .housing-type-picker__choice:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
.housing-type-picker__choice {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-picker__choice {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-type-picker__choice {
  border: none;
  padding: 16px;
  display: flex;
  column-gap: 4px;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  color: #24062F;
}
.housing-type-picker__choice svg {
  padding: 0.25rem;
  background: white;
  border-radius: 50%;
  border: 2px solid #C476E0;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
}
.housing-type-picker__choice svg path {
  stroke: transparent;
}
@media (min-width: 768px) {
  .housing-type-picker__choice {
    padding: 24px;
  }
  .housing-type-picker__choice svg {
    width: 2rem;
    height: 2rem;
  }
}

.housing-type-picker__choice--active {
  color: #ffffff;
  background-color: #61177B;
}
.housing-type-picker__choice--active svg {
  background: #EEBFFF;
  border-color: #EEBFFF;
}
.housing-type-picker__choice--active svg path {
  stroke: #24062F;
}

.housing-type-change-profile-options {
  display: flex;
  gap: 16px;
}

.icon-description {
  display: grid;
  flex-direction: column;
  grid-template-columns: 24px 1fr;
  align-items: center;
  column-gap: 8px;
}
@media (min-width: 768px) {
  .icon-description {
    column-gap: 12px;
  }
}
.icon-description strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .icon-description strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.icon-description p {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  grid-column: 2/span 1;
}
@media (min-width: 768px) {
  .icon-description p {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNova", sans-serif;
  }
}

.inactive {
  display: grid;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  max-width: 740px;
  margin: auto;
  padding: 0 16px;
}

.inactive__img {
  object-fit: contain;
  width: 100%;
  max-width: 320px;
  margin-inline: auto;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .inactive__img {
    margin-bottom: 64px;
  }
}

.inactive__heading {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .inactive__heading {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.inactive__heading {
  text-align: center;
}

.inactive__ingress {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .inactive__ingress {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.inactive__ingress {
  text-align: center;
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .inactive__ingress {
    margin-bottom: 32px;
  }
}
.inactive__ingress strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .inactive__ingress strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.info-box {
  margin: 0 -16px;
  padding: 16px;
  background-color: #fff5c7;
}
@media (min-width: 1024px) {
  .info-box {
    max-width: 700px;
    margin: 0;
  }
}
.info-box.margin {
  margin: 24px -16px;
}
.info-box > div {
  display: flex;
  align-items: center;
}
.info-box > div svg:first-of-type {
  margin-right: 16px;
  flex-shrink: 0;
}
.info-box > div button {
  padding-left: 30px;
  width: auto !important;
  background-color: transparent;
  text-decoration: underline;
}
.info-box .chevron {
  margin-left: auto;
}
.info-box .chevron.rotate {
  transform: rotate(180deg);
}
.info-box #more {
  display: none;
}
.info-box #more.open {
  display: block;
  margin-left: 45px;
}

input,
textarea,
select {
  width: 100%;
  background-color: #ffffff;
  border: #EDEAE9 2px solid;
  color: #24062F;
  border-radius: 5px;
  height: 3.5rem;
  padding-inline: 1rem;
}
input[type=search i]::-webkit-search-cancel-button,
textarea[type=search i]::-webkit-search-cancel-button,
select[type=search i]::-webkit-search-cancel-button {
  display: none;
}
input::placeholder,
textarea::placeholder,
select::placeholder {
  color: #605953 !important;
}
input:hover,
textarea:hover,
select:hover {
  color: #24062F;
  border-color: #72228E !important;
  outline: none !important;
  box-shadow: none !important;
}
input:focus,
textarea:focus,
select:focus {
  outline: none !important;
  box-shadow: 0 0 4px #72228E !important;
  border-color: #72228E !important;
  color: #24062F;
}
input:active,
textarea:active,
select:active {
  border-color: #24062F !important;
  box-shadow: none !important;
  color: #24062F;
}
input[aria-invalid=true],
textarea[aria-invalid=true],
select[aria-invalid=true] {
  border: 2px solid #D3301C;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 8L8 16' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16 16L8 8' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23Z' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-position: right 12px center;
  padding-right: 48px;
  color: #24062F;
}
input:disabled,
textarea:disabled,
select:disabled {
  background-color: #F3F2F1 !important;
  border-color: #CCC4BD !important;
  cursor: not-allowed;
  color: #A9A097;
  opacity: 0.5;
}
input,
textarea,
select {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
}

textarea {
  height: unset;
  padding: 16px;
}

.input-component {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #24062F;
  display: flex;
  flex-direction: column;
  gap: 4px;
  position: relative;
}
.input-component .input-component__label-additional {
  display: flex;
  gap: 12px;
}
.input-component[aria-disabled=True] label, .input-component[aria-disabled=true] label {
  color: #A9A097;
}
.input-component .input-component__optional {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  font-weight: 400;
  color: #605953;
}
.input-component > p {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  color: #605953;
  position: absolute;
  left: 0;
  top: 5.5rem;
}
.input-component > p.input-component__helper-text {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  color: #605953;
  position: relative;
  top: unset;
  margin-top: 4px;
  margin-bottom: -20px;
  /* to be "independent" */
}
.input-component > p.input-component__error {
  color: #D3301C;
}
.input-component input[aria-invalid=true] + p {
  color: #D3301C;
}
.input-component select[aria-invalid=true] + p {
  color: #D3301C;
}
.input-component textarea[aria-invalid=true] + p {
  color: #D3301C;
}
.input-component input:disabled ~ p {
  color: #A9A097;
}
.input-component label {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  /*gap: $space-xs;*/
}
.input-component > span, .input-component > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.input-component.disabled label {
  color: #A9A097;
}

.react-datepicker__aria-live {
  position: absolute;
  clip-path: circle(0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  width: 1px;
  white-space: nowrap;
}

.input-component--date input {
  padding-right: 3rem;
}
.input-component--date .react-datepicker__input-container::after {
  position: absolute;
  right: 1rem;
  top: 50%;
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_16485_26086)'%3E%3Cpath d='M1 9H23' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21 3H3C1.89543 3 1 3.89543 1 5V21C1 22.1046 1.89543 23 3 23H21C22.1046 23 23 22.1046 23 21V5C23 3.89543 22.1046 3 21 3Z' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M6.00002 1L5.99902 5' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 1L17.999 5' stroke='%2324062F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_16485_26086'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 100%;
  height: 1.5rem;
  width: 1.5rem;
  pointer-events: none;
}
.input-component--date .react-datepicker__input-container:has(input[aria-invalid=true])::after {
  display: none;
}

.input-component__select {
  position: relative;
  width: 100%;
  padding-right: 2rem;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6.52096 6.51629L11.7844 1.27454C12.0719 0.969366 12.0719 0.502634 11.7844 0.215415C11.497 -0.0718049 11.012 -0.0718049 10.7246 0.215415L6 4.93658L1.27545 0.215415C0.97006 -0.0718049 0.502994 -0.0718049 0.215569 0.215415C-0.0718563 0.502634 -0.0718563 0.969366 0.215569 1.27454L5.46108 6.51629C5.76647 6.80351 6.23353 6.80351 6.52096 6.51629Z' fill='black'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat, repeat;
  background-position: right 0.9em top 50%, 0 0;
  background-size: 0.65em auto, 100%;
}
.input-component__select[aria-invalid=true] ~ p {
  color: #D3301C;
}
.input-component__select:disabled ~ p {
  color: #A9A097;
}

.input-component__select--compact {
  height: unset;
  padding: 0.375rem;
  padding-right: 32px;
}

.select__wrapper {
  position: relative;
}

.select__spinner {
  position: absolute;
  right: 40px;
  bottom: 1rem;
}

.image-card {
  display: flex;
  flex-direction: column;
  position: relative;
}
.image-card:hover, .image-card:focus-within {
  transform: none;
}
@media (min-width: 520px) {
  .image-card {
    display: grid;
    grid-template-columns: 45% calc(55% - 24px);
    gap: 24px;
  }
}

.image-card__image-link {
  text-decoration: none;
  aspect-ratio: 4/3;
}

.image-card__image {
  display: flex;
  background-color: #F1F3FF;
  aspect-ratio: 4/3;
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}
.image-card__image > .tag {
  position: absolute;
  top: 8px;
  right: 8px;
}
@media (min-width: 520px) {
  .image-card__image > .tag {
    top: 12px;
    right: 12px;
  }
}
.image-card__image img {
  object-fit: cover;
  width: 100%;
}
.image-card__image .image-card__placeholder {
  object-fit: none;
}

.image-card__content {
  padding: 12px 0 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
@media (min-width: 520px) {
  .image-card__content {
    padding: 0;
    gap: 8px;
  }
}
.image-card__content .image-card__info {
  display: grid;
  gap: 8px;
}
.image-card__content .image-card__navigation {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 16px;
  min-width: 142px;
  width: 100%;
}
@media (min-width: 520px) {
  .image-card__content .image-card__navigation {
    width: max-content;
  }
}

.link-back {
  position: relative;
}
.link-back a {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 8px;
}
.link-back a svg {
  width: 16px;
}
.link-back {
  padding-inline: 1rem;
}
@media (min-width: 768px) {
  .link-back {
    padding-inline: 5rem;
  }
}
@media (min-width: 1280px) {
  .link-back {
    width: 100vw;
    position: absolute;
    display: flex;
    justify-content: start;
  }
}
.link-back a {
  position: relative;
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
  margin-bottom: 24px;
  color: #61177B;
  z-index: 100;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .link-back a {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.loader {
  color: #f04b38;
  font-size: 16px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

@keyframes load4 {
  0%, 100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
.login {
  background-color: #ffffff;
  position: absolute;
  width: 100vw;
  height: 100vh;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-content: center;
  z-index: 1000;
  border: 0;
  padding-right: 16px;
}

.login__grid {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .login__grid {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.login__grid > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.login__grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .login__grid {
    gap: 32px 24px;
  }
}
.login__grid {
  padding-top: 104px;
  padding-bottom: 40px;
  overflow: auto;
}
@media (min-width: 768px) {
  .login__grid {
    padding-top: 208px;
  }
}

.login__form {
  grid-column: 1/span 12;
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}
@media (min-width: 768px) {
  .login__form {
    grid-column: 3/span 8;
    gap: 40px;
  }
}
@media (min-width: 1024px) {
  .login__form {
    grid-column: 4/span 6;
  }
}
@media (min-width: 1280px) {
  .login__form {
    grid-column: 5/span 4;
  }
}

.login__header {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .login__header {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}

.login__ingress {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .login__ingress {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.login__ingress,
.login__header {
  text-align: center;
  margin-bottom: -8px;
}

.login__buttons {
  display: grid;
  gap: 16px;
}

.login__button {
  width: 100%;
}

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

.login__show-password {
  position: absolute;
  right: 2.875rem;
  top: 2.875rem;
}

.login__checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.5rem;
  width: 1.5rem;
  color: #24062F;
}

.checkbox-container:hover input ~ .login__checkmark {
  outline: none;
  box-shadow: none;
}

/* focus */
.checkbox-container input:focus ~ .login__checkmark {
  outline: 2px solid #24062F;
  outline-offset: 2px;
}

/* active */
.checkbox-container input:active ~ .login__checkmark {
  box-shadow: none;
}

.login__checkmark:before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg' role='presentation' class='sc-bc2bbd1-0 ghVlKm'%3E%3Cpath d='M2.5 12.5s4-7 10-7 10 7 10 7-4 7-10 7-10-7-10-7z' stroke='%23000' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3Cpath d='M12.5 15.5a3 3 0 100-6 3 3 0 000 6z' stroke='%23000' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/svg%3E");
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 1.5rem;
  width: 1.5rem;
  background-repeat: no-repeat;
}

/* Show the checkmark when checked */
.checkbox-container input:checked ~ .login__checkmark {
  background-color: transparent;
  border-color: transparent;
}
.checkbox-container input:checked ~ .login__checkmark::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 12.5C2.5 12.5 6.5 5.5 12.5 5.5C18.5 5.5 22.5 12.5 22.5 12.5C22.5 12.5 18.5 19.5 12.5 19.5C6.5 19.5 2.5 12.5 2.5 12.5Z' fill='black' stroke='black' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12.5 15.5C12.894 15.5 13.2841 15.4224 13.6481 15.2716C14.012 15.1209 14.3427 14.8999 14.6213 14.6213C14.8999 14.3427 15.1209 14.012 15.2716 13.6481C15.4224 13.2841 15.5 12.894 15.5 12.5C15.5 12.106 15.4224 11.7159 15.2716 11.3519C15.1209 10.988 14.8999 10.6573 14.6213 10.3787C14.3427 10.1001 14.012 9.87913 13.6481 9.72836C13.2841 9.5776 12.894 9.5 12.5 9.5C11.7044 9.5 10.9413 9.81607 10.3787 10.3787C9.81607 10.9413 9.5 11.7044 9.5 12.5C9.5 13.2956 9.81607 14.0587 10.3787 14.6213C10.9413 15.1839 11.7044 15.5 12.5 15.5V15.5Z' fill='black' stroke='white' stroke-width='1.5' stroke-miterlimit='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}
.checkbox-container input:checked ~ .login__checkmark:hover {
  background-color: transparent;
  border-color: transparent;
}
.checkbox-container input:checked ~ .login__checkmark:active {
  background-color: transparent;
  border-color: transparent;
}

.checkbox-container input:checked:focus-visible ~ .login__checkmark {
  outline: 2px solid #24062F;
  outline-offset: 0.125rem;
}

/* Style the checkmark/indicator */
.checkbox-container .login__checkmark:after {
  justify-content: center;
  align-content: center;
}

#siomap {
  height: 100%;
  width: 100vw;
  display: block;
  margin: -16px;
}
@media (min-width: 1280px) {
  #siomap {
    width: 100%;
    margin: 0 auto 32px;
  }
}
#siomap .filter-container {
  padding-top: 16px;
  margin: auto;
  background-color: transparent;
  border-bottom: transparent;
  display: flex;
  flex-direction: column-reverse;
}
@media (min-width: 1280px) {
  #siomap .filter-container {
    padding-top: 0;
  }
}
#siomap .filter-container span {
  margin-right: 0;
}
#siomap .filter-container span:nth-of-type(2) {
  margin-bottom: 16px;
}
@media (min-width: 1024px) {
  #siomap .filter-container span {
    display: none;
  }
}
#siomap .filter-container .btn {
  background-color: white;
  padding: 8px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
#siomap .filter-container .btn svg {
  padding: 0;
  margin: 0;
}

.marker {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  background-color: #000;
  border: 2px solid #fff;
  border-radius: 100%;
  user-select: none;
  transform: translate(-50%, -50%);
}
.marker:hover {
  z-index: 1;
}

@media (min-width: 1280px) {
  .map {
    width: 70vw;
    position: relative;
    left: calc(-35vw + 50%);
    max-height: 950px;
    margin: auto;
  }
}
@media (min-width: 900px) and (max-width: 1025px) {
  .map {
    width: 90vw;
    left: 0;
  }
}

.map-container {
  height: 90vh;
  width: 100%;
}
@media (min-width: 1280px) {
  .map-container {
    height: 80vh;
    margin-top: 0;
  }
}

.desktop-filter {
  position: absolute;
  width: 215px;
  padding: 16px;
  background-color: white;
  top: 16px;
  right: 16px;
}
.desktop-filter > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}
.desktop-filter > div h3 {
  margin: 0;
  font-size: 18px;
}
.desktop-filter > div svg.rotate {
  transform: rotate(180deg);
}
.desktop-filter > div label {
  margin: 16px 0 8px;
  font-size: 18px;
}
.desktop-filter .studyplaceLabel {
  font-size: 18px;
}
.desktop-filter .custom-select {
  margin-top: 8px;
}
.desktop-filter .custom-select select {
  width: 100%;
  margin: 0;
}

.marker-desc {
  overflow-x: hidden;
  margin: 16px 0;
}
.marker-desc p {
  font-family: "ProximaNova";
  margin: 0;
}
.marker-desc a {
  word-wrap: break-word;
}

/***********************************
* Block
***********************************/
.main-menu {
  height: 100vh;
}
@supports (height: 100dvh) {
  .main-menu {
    height: 100dvh;
  }
}
.main-menu {
  width: 100%;
  background-color: #24062F;
  color: #72228E;
  position: fixed;
  top: 0;
  left: 0;
  transition: top 0.2s ease;
  z-index: -1;
  display: none;
  padding-block: 64px;
  overflow: auto;
}
@media (min-width: 768px) {
  .main-menu {
    padding-block: 104px;
  }
}

/***********************************
* Elements
***********************************/
.main-menu__wrap {
  margin: 24px auto 0;
  padding-inline: 16px;
  display: flex;
  flex-direction: column;
  gap: 0;
  height: min-content;
  width: 100%;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .main-menu__wrap {
    padding-inline: 0;
    width: initial;
    margin: 32px auto 0;
  }
}
.main-menu__wrap .menu-list {
  display: flex;
  flex-direction: column;
  gap: 32px;
  min-width: 100%;
}
@media (min-width: 768px) {
  .main-menu__wrap .menu-list {
    gap: 64px;
    min-width: 700px;
  }
}

.main-menu__container {
  background-color: #ffffff;
  margin: 0 auto;
  display: flex;
  height: 64px;
  border-bottom: 1px solid rgb(221, 217, 213);
  box-shadow: 0px 1px 0px rgba(36, 6, 47, 0.07);
  position: relative;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .main-menu__container {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.main-menu__container > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .main-menu__container {
    height: 104px;
  }
}
.main-menu__container > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.main-menu__container > div nav {
  display: flex;
  gap: 8px;
  align-items: center;
}
@media (min-width: 768px) {
  .main-menu__container > div nav {
    gap: 24px;
  }
}

.main-menu__menu-mobile {
  display: flex;
}
.main-menu__menu-mobile .search-form {
  width: 100%;
}
@media (min-width: 768px) {
  .main-menu__menu-mobile {
    display: none;
  }
  .main-menu__menu-mobile .search-form {
    max-width: calc(100vw - 24px);
  }
}
.main-menu__menu-mobile a {
  text-decoration: none;
}

.main-menu__menu-tablet {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
@media (min-width: 1024px) {
  .main-menu__menu-tablet {
    display: none;
  }
}

.menu-tablet--hidden {
  display: none;
}
@media (min-width: 1024px) {
  .menu-tablet--hidden {
    display: flex;
  }
}

.main-menu__menu-desktop {
  display: none;
}
@media (min-width: 768px) {
  .main-menu__menu-desktop {
    display: flex;
  }
}

.main-menu__lang-button {
  display: flex;
  flex-direction: row-reverse;
}
@media (min-width: 768px) {
  .main-menu__lang-button {
    flex-direction: row;
  }
}

.main-menu__lang-text--full {
  display: none;
}
@media (min-width: 768px) {
  .main-menu__lang-text--full {
    display: inline;
  }
}

.main-menu__lang-text--short {
  display: inline;
  font-size: 12px;
}
@media (min-width: 768px) {
  .main-menu__lang-text--short {
    display: none;
  }
}

.main-menu__profile-text {
  display: none;
}
@media (min-width: 768px) {
  .main-menu__profile-text {
    display: inline;
  }
}

.main-menu__link {
  font-family: "SuisseWorksBold", serif;
  font-size: 2rem;
  line-height: 2.25rem;
  font-weight: 400;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .main-menu__link {
    font-size: 3.375rem;
    line-height: 3.75rem;
  }
}
.main-menu__link {
  text-decoration: none;
  color: #EEBFFF;
  display: inline-flex;
  align-items: center;
  column-gap: 0;
  transition: all 0.2s ease 0s;
  background-color: transparent;
  appearance: none;
  border: 0;
}
.main-menu__link > span {
  flex-shrink: 0;
}
.main-menu__link:hover {
  color: #F8E5FF;
  column-gap: 24px;
}
.main-menu__link:hover .main-menu__link-arrow svg {
  width: 24px;
  height: 24px;
}
@media (min-width: 768px) {
  .main-menu__link:hover .main-menu__link-arrow svg {
    width: 32px;
    height: 32px;
  }
}
.main-menu__link:hover .main-menu__link-arrow svg path {
  stroke: #F8E5FF;
}
.main-menu__link:focus, .main-menu__link:focus-within {
  color: #EEBFFF;
  border-radius: 10px;
  outline: #EEBFFF 2px solid;
  outline-offset: 6px;
}
.main-menu__link:focus::before, .main-menu__link:focus-within::before {
  content: "";
  display: none;
}
.main-menu__link:focus:not(:focus-visible) {
  outline-color: transparent;
  color: #EEBFFF;
}

.main-menu__link-arrow {
  display: flex;
  align-items: center;
  margin-right: 0;
  transition: all 0.2s ease 0s;
}
.main-menu__link-arrow svg {
  width: 0;
  height: 0;
  transition: all 0.2s ease 0s;
}
.main-menu__link-arrow svg path {
  stroke: #EEBFFF;
}

.main-menu__main {
  height: min-content;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
}
@media (min-width: 1024px) {
  .main-menu__main {
    height: 100%;
  }
}

.main-menu__menu-secondary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 768px) {
  .main-menu__menu-secondary {
    flex-direction: row;
    gap: 32px;
  }
}

.main-menu__button span {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
@media (min-width: 768px) {
  .main-menu__button span {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
  }
}
.main-menu__button svg path {
  transform-origin: 50%;
  transition: all ease-in-out 0.2s;
}

/***********************************
* Modifiers
***********************************/
.main-menu--open {
  display: flex;
}

.main-menu__button--open svg path.middle {
  opacity: 0;
}
.main-menu__button--open svg path.top {
  transform: translate(-8px, 6px) rotate(45deg);
}
.main-menu__button--open svg path.bottom {
  transform: translate(-8px, -4px) rotate(-45deg);
}

.modal {
  max-height: calc(100vh - 2 * 88px);
  height: max-content;
  background-color: #ffffff;
  border-radius: 10px;
  border: none;
  box-shadow: 0 0 12px -2px rgba(17, 6, 21, 0.15);
  display: grid;
  position: relative;
  width: 100%;
  max-width: 320px;
  overflow: auto;
}
@media (min-width: 768px) {
  .modal {
    max-width: 500px;
  }
}

.modal__close-btn {
  justify-self: end;
  min-height: 64px;
  padding: 8px;
}

.modal__container {
  padding: 0 16px 64px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 768px) {
  .modal__container {
    padding: 0 64px 64px;
  }
}

.modal__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .modal__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.modal__title {
  text-align: center;
}

.modal__body {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .modal__body {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.modal__body {
  text-align: center;
  margin-bottom: 32px;
}

.modal__footer {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
}
@media (min-width: 768px) {
  .modal__footer {
    flex-direction: row;
  }
}

.myPage-menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 400px;
  padding: 0;
  margin: 0 0 48px;
}
.myPage-menu li a {
  width: 48px;
  height: 48px;
  background-color: #ffd8d2;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media (min-width: 1024px) {
  .myPage-menu li a {
    width: 60px;
    height: 60px;
  }
}
.myPage-menu li a svg {
  width: 24px;
  height: 24px;
}
@media (min-width: 1024px) {
  .myPage-menu li a svg {
    width: 32px;
    height: 32px;
  }
}
.myPage-menu li a p {
  font-size: 11px;
  text-transform: uppercase;
  font-family: "Space Mono", "monospace";
  position: absolute;
  bottom: -24px;
  margin: 0 auto;
}
.myPage-menu li a.active {
  background-color: #fc7b6c;
}
.myPage-menu li a.active p {
  font-weight: 700;
}
.myPage-menu li a .dot {
  position: absolute;
  top: -7px;
  right: -9px;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f04b37;
}
.myPage-menu li a .dot span {
  color: #FFF2F2;
  font-size: 15px;
  font-family: "Space Mono", monospace;
}
@media (min-width: 480px) {
  .myPage-menu li:nth-child(4) a p {
    word-break: break-all;
    bottom: -40px;
  }
}

.nav-link {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .nav-link {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.nav-link {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #24062F;
  text-decoration: none;
  border-radius: 5px;
  width: fit-content;
  padding: 0;
  transition: all 0.2s linear;
}
.nav-link svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.nav-link svg path {
  stroke: currentColor;
  stroke-width: 1px;
}
.nav-link:focus-visible {
  padding: 0 4px;
  outline-offset: 0;
  outline-width: 1px;
}
.nav-link:hover {
  gap: 12px;
  color: #72228E;
}
.nav-link:hover svg path {
  stroke: currentColor;
}
@media (min-width: 1024px) {
  .nav-link svg {
    width: 24px;
    height: 24px;
  }
  .nav-link svg path {
    stroke-width: 2px;
  }
}
@media (min-width: 1024px) {
  .nav-link svg {
    display: none;
  }
}

.nav-link--subnav {
  color: #460A5B;
}

.nav-link--active {
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-offset: 4px;
  pointer-events: none;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .nav-link--active {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 1024px) {
  .nav-link--active {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 400;
    font-family: "ProximaNovaBold", sans-serif;
    text-decoration: none;
  }
}
@media (min-width: 1024px) and (min-width: 768px) {
  .nav-link--active {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.notification-area {
  grid-column: 1/span 12;
}
@media (min-width: 768px) {
  .notification-area {
    grid-column: 1/span 3;
  }
}
.notification-area {
  position: relative;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .notification-area {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.notification-area > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.notification-area {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .notification-area {
    margin-bottom: 64px;
  }
}

.notification-area__content {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .notification-area__content {
    gap: 32px 24px;
  }
}
.notification-area__content > * {
  grid-column: 1/span 12;
}
.notification-area__content > *:nth-child(2n) .title,
.notification-area__content .body .title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .notification-area__content > *:nth-child(2n) .title,
  .notification-area__content .body .title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.notification-area__content > *:nth-child(2n) .text,
.notification-area__content .body .text {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .notification-area__content > *:nth-child(2n) .text,
  .notification-area__content .body .text {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.notification-area__content > *:nth-child(2n) .content_space,
.notification-area__content .body .content_space {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .notification-area__content > *:nth-child(2n) .content_space,
  .notification-area__content .body .content_space {
    row-gap: 24px;
  }
}
@media (min-width: 1024px) {
  .notification-area__content > * {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .notification-area__content > *:nth-child(1n),
  .notification-area__content .head {
    grid-column: 1/span 3;
  }
  .notification-area__content > *:nth-child(2n),
  .notification-area__content .body {
    grid-column: 4/span 6;
  }
  .notification-area__content > *:nth-child(3n),
  .notification-area__content .foot {
    grid-column: 10/span 3;
  }
}

.notification-area__link-back {
  display: flex;
  gap: 8px;
  justify-content: start;
  align-items: center;
}

.notification-area__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .notification-area__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.notification-area__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 24px;
}

.notification-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-radius: 10px;
  gap: 16px;
  padding: 16px;
  background-color: #F1F3FF;
  color: #24062F;
}
@media (min-width: 768px) {
  .notification-box {
    gap: 24px;
    padding: 24px;
  }
}
.notification-box > * {
  color: currentColor;
  stroke: currentColor;
}
.notification-box .notification-box__header {
  display: flex;
  justify-content: space-between;
  color: currentColor;
}
.notification-box .notification-box__header .notification-box__header--left {
  display: flex;
  gap: 16px;
}
@media (min-width: 768px) {
  .notification-box .notification-box__header .notification-box__header--left {
    gap: 24px;
  }
}
.notification-box .notification-box__header .notification-box__title {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .notification-box .notification-box__header .notification-box__title {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.notification-box .notification-box__header .notification-box__title {
  color: currentColor;
}
.notification-box .notification-box__header .notification-box__title--bold {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .notification-box .notification-box__header .notification-box__title--bold {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.notification-box .notification-box__icon {
  display: flex;
  align-self: flex-start;
  flex-shrink: 0;
}
.notification-box .notification-box__icon svg {
  width: 1.5rem;
  height: 1.5rem;
}
.notification-box .notification-box__icon svg path {
  stroke: currentColor;
}
.notification-box .notification-box__body {
  flex-grow: 100;
  display: grid;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .notification-box .notification-box__body {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.notification-box .notification-box__body p:not(:last-of-type), .notification-box .notification-box__body h3:not(:last-of-type) {
  margin-bottom: 16px;
}
.notification-box .notification-box__body h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .notification-box .notification-box__body h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.notification-box .notification-box__body h3 {
  margin-bottom: 1rem;
}
.notification-box .notification-box__body a {
  display: inline-flex;
}
.notification-box .notification-box__body strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .notification-box .notification-box__body strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.notification-box .notification-box__body ul {
  list-style: disc;
}
.notification-box .notification-box__body ul,
.notification-box .notification-box__body ol {
  padding-left: 24px;
}
.notification-box .notification-box__body ul li:not(:last-child),
.notification-box .notification-box__body ol li:not(:last-child) {
  padding-bottom: 16px;
}
.notification-box .notification-box__body u {
  text-underline-offset: 2px;
  text-decoration: underline;
}
.notification-box .notification-box__action {
  color: currentColor;
}

.notification-tier--info {
  background-color: #F1F3FF;
}

.notification-tier--notice {
  background-color: #F1F3FF;
}

.notification-tier--transparentinfo {
  background-color: #ffffff;
  color: #605953;
  padding-inline: 0;
}

.notification-tier--transparentdanger {
  background-color: #ffffff;
  color: #D3301C;
  padding-inline: 0;
}

.notification-tier--success {
  background-color: #E8FDEF;
}

.notification-tier--warning {
  background-color: #FFF5C7;
}

.notification-tier--danger {
  background-color: #FFD8D2;
}

.notification-tier--error {
  background-color: #FFF2F2;
  color: #D3301C;
}

.notification-tier--severe {
  background-color: #D3301C;
  color: #ffffff;
}

.notification-tier--inactive {
  background-color: #EDEAE9;
  color: #605953;
}

.page-intro {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .page-intro {
    gap: 64px;
  }
}
.page-intro .page-intro__header {
  font-family: "SuisseWorksBold", serif;
  font-size: 2rem;
  line-height: 2.25rem;
  font-weight: 400;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .page-intro .page-intro__header {
    font-size: 3.375rem;
    line-height: 3.75rem;
  }
}
.page-intro .page-intro__header {
  text-align: center;
}
.page-intro .page-intro__ingress {
  font-family: "SpaceMono", monospace;
  font-size: 1.125rem;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .page-intro .page-intro__ingress {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
.page-intro .page-intro__ingress {
  text-align: center;
}

.page-quote {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  padding-block: 24px;
}
@media (min-width: 768px) {
  .page-quote {
    row-gap: 40px;
    padding-block: 40px;
  }
}
.page-quote blockquote {
  font-family: "SuisseWorksBold", serif;
  font-size: 1.75rem;
  line-height: 2rem;
  letter-spacing: -0.02em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .page-quote blockquote {
    font-size: 2.875rem;
    line-height: 3.5rem;
  }
}
.page-quote blockquote {
  text-align: center;
  color: #460A5B;
}
.page-quote figcaption p {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  text-align: center;
}

.process-card {
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.process-card:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.process-card:hover a {
  color: inherit;
}
.process-card:focus, .process-card:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
.process-card {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .process-card {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.process-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 16px;
  padding: 16px 16px 16px 8px;
  border-left: solid 12px #24062F;
  border-radius: 10px;
  text-decoration: none;
  color: #24062F !important;
}
.process-card > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  gap: 12px 24px;
}
.process-card > div > div {
  display: grid;
  row-gap: 8px;
}
.process-card > div .tag {
  min-width: fit-content;
  height: min-content;
}
@media (min-width: 768px) {
  .process-card > div {
    flex-direction: row;
    align-items: center;
  }
}
.process-card svg {
  flex-shrink: 0;
  align-self: baseline;
}
.process-card svg path {
  stroke: #24062F;
}
@media (min-width: 768px) {
  .process-card svg {
    align-self: center;
  }
}
@media (min-width: 768px) {
  .process-card {
    padding: 24px 24px 24px 12px;
  }
}
.process-card[aria-disabled], .process-card[aria-disabled=True], .process-card[aria-disabled=true] {
  border-left-color: #CFD1DE;
  pointer-events: none;
}
.process-card[aria-disabled] svg, .process-card[aria-disabled=True] svg, .process-card[aria-disabled=true] svg {
  visibility: hidden;
}

.progress-bar {
  width: 100%;
}
.progress-bar progress[value] {
  display: flex;
  /* Reset the default appearance */
  -webkit-appearance: none;
  appearance: none;
  border: none; /* Needed for Firefox */
  width: 100%;
  height: 6px;
  background-color: #F8E5FF;
  border-radius: 3px;
  overflow: hidden;
}
.progress-bar progress[value]::-webkit-progress-bar {
  background-color: #F8E5FF;
  border-radius: 3px;
  overflow: hidden;
}
.progress-bar progress[value]::-webkit-progress-value {
  background-color: #72228E;
}
.progress-bar progress[value]::-moz-progress-bar {
  background-color: #72228E;
}

.priority-list > *:not(:last-of-type) {
  margin-bottom: 24px;
  border-bottom: 3px solid red;
}

.priority-list__item {
  border-radius: 10px;
  overflow: hidden;
  display: grid;
  grid-template-columns: calc(100% - 60px) 60px;
  max-width: calc(100vw - 32px);
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.priority-list__item:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.priority-list__item:hover a {
  color: inherit;
}
.priority-list__item:focus, .priority-list__item:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
.priority-list__item-noEdit {
  grid-template-columns: 100%;
}
.priority-list__item:hover, .priority-list__item:focus-within {
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transform: none;
}
.priority-list__item .priority-list-image {
  display: none;
  position: relative;
  background-color: #F1F3FF;
}
.priority-list__item .priority-list-image > .tag {
  position: absolute;
  top: 8px;
  right: 8px;
}
@media (min-width: 768px) {
  .priority-list__item .priority-list-image > .tag {
    top: 12px;
    right: 12px;
  }
}
.priority-list__item .priority-list-image img, .priority-list__item .priority-list-image svg {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 4/3;
}
@media (min-width: 520px) {
  .priority-list__item .priority-list-image {
    display: flex;
  }
}
@media (min-width: 520px) {
  .priority-list__item {
    display: grid;
    grid-template-columns: 30% minmax(calc(70% - 60px), 1fr) 60px;
  }
  .priority-list__item-noEdit {
    grid-template-columns: 30% minmax(70%, 1fr);
  }
}
.priority-list__item .priority-list-info {
  padding: 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
@media (min-width: 768px) {
  .priority-list__item .priority-list-info {
    padding: 12px 24px;
    gap: 16px;
  }
}
.priority-list__item .priority-list-info .priority-list-info__header > .tag {
  display: block;
}
@media (min-width: 520px) {
  .priority-list__item .priority-list-info .priority-list-info__header > .tag {
    display: none;
  }
}
.priority-list__item .priority-list-info .priority-list-info__header a {
  padding: 0 8px;
  margin-inline: -8px;
  transition: all 0.25s ease-in-out;
  height: unset;
  max-width: 100%;
}
.priority-list__item .priority-list-info .priority-list-info__header a .priority-list-info__header-name {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .priority-list__item .priority-list-info .priority-list-info__header a .priority-list-info__header-name {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.priority-list__item .priority-list-info .priority-list-info__header a .priority-list-info__header-name {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.priority-list__item .priority-list-info .priority-list-info__header p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.priority-list__item .priority-list-info .priority-list-info__main {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.priority-list__item .priority-list-info .priority-list-info__main > li {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.priority-list__item .priority-list-info .priority-list-info__main > li:not(:last-child)::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='3' height='3' viewBox='0 0 3 3' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1.5' cy='1.5' r='1.5' fill='%23460A5B'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  height: 3px;
  width: 3px;
  margin-inline: 7px;
}
.priority-list__item .priority-list-info .priority-list-info__bottom {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
}
.priority-list__item .priority-list-info .priority-list-info__additional {
  display: flex;
  flex-direction: column;
}
.priority-list__item .priority-list-info .priority-list-info__additional > p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.priority-list__item .priority-list-info .priority-list-info__additional > div {
  display: flex;
  column-gap: 8px;
  margin-bottom: 4px;
}
.priority-list__item .priority-list-info .priority-list-info__additional > div > p {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  column-gap: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 350px) {
  .priority-list__item .priority-list-info .priority-list-info__additional > div > p {
    flex-direction: column;
  }
}
.priority-list__item .priority-list-info .priority-list-info__additional > div > p span {
  display: flex;
  align-items: center;
  justify-content: center;
}
.priority-list__item .priority-list-info .priority-list-info__additional > div > p span svg {
  height: 16px;
  width: 16px;
}
.priority-list__item .priority-list-nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 16px;
  align-self: flex-end;
}

.priority-list__item-bottom_contianer {
  display: flex;
  justify-content: space-between;
  column-gap: 12px;
}
.priority-list__item-bottom_contianer .remove {
  align-self: flex-end;
  background: transparent !important;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border: transparent;
  padding: 0;
  height: fit-content;
  align-content: center;
  text-decoration: underline from-font;
  text-underline-offset: 2px;
  color: #24062F;
  width: max-content;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  transition: all 0.2s ease-in-out;
}
.priority-list__item-bottom_contianer .remove:hover {
  text-decoration: none;
  color: #24062F;
  column-gap: 12px;
}
.priority-list__item-bottom_contianer .remove:focus {
  outline: none;
}
.priority-list__item-bottom_contianer .remove:focus-visible {
  outline: solid currentColor;
  outline-offset: 4px;
}
.priority-list__item-bottom_contianer .remove svg {
  width: 1.5rem;
  height: 1.5rem;
  color: currentColor;
}
.priority-list__item-bottom_contianer .remove svg path {
  stroke: currentColor;
  stroke-width: 2px;
}
.priority-list__item-bottom_contianer .remove {
  cursor: pointer;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  color: #24062F;
}

.priority-list__item:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .priority-list__item:not(:last-child) {
    margin-bottom: 24px;
  }
}

.priority-list__handle-container {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FFD8D2;
}

.sortable-ghost {
  border: 2px solid #fc7b6c;
  box-shadow: 0 0 10px -2px #d2d2d2;
  border-radius: 8px;
  background-color: transparent !important;
}
.sortable-ghost * {
  visibility: hidden !important;
}

.sortable-chosen {
  opacity: 1 !important;
}

/* Customize the label (the container) */
.radio-button-container {
  display: flex;
  position: relative;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.radio-button-container .label {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMono", monospace;
  font-weight: 400;
  color: #24062F;
}
.radio-button-container:hover .checkmark {
  color: #72228E;
}
.radio-button-container:active .checkmark {
  color: #A95AC4;
}
.radio-button-container input:focus ~ .checkmark {
  outline: none;
  box-shadow: 0px 0px 4px currentColor;
  border-color: currentColor;
}
.radio-button-container input:checked ~ .checkmark {
  color: #72228E;
}
.radio-button-container input:checked ~ .checkmark::after {
  display: block;
}
.radio-button-container:active input:checked ~ .checkmark.checkmark {
  color: #A95AC4;
}
.radio-button-container input[aria-invalid=true] ~ .checkmark {
  background-color: #FFD8D2;
  color: #D3301C;
}
.radio-button-container input:disabled ~ .label {
  color: #DDD9D5;
  cursor: not-allowed;
}
.radio-button-container input:disabled ~ .checkmark {
  color: #DDD9D5;
  background-color: #F3F2F1;
}

/* Hide the browser's default radio button */
.radio-button-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom radio button */
.checkmark {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 24px;
  aspect-ratio: 1;
  color: #EDEAE9;
  border: 2px solid currentColor;
  border-radius: 50%;
  background-color: #ffffff;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  background-color: currentColor;
  border-radius: 50%;
  height: 12px;
  aspect-ratio: 1;
  display: none;
}

.search-form {
  min-width: 392px;
  max-width: 100%;
}
.search-form label {
  display: flex;
  align-items: center;
  flex: 0 0 100%;
  position: relative;
}
.search-form label .search-form__icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  left: 16px;
  position: absolute;
  z-index: 1;
}
.search-form label .search-form__icon svg path {
  stroke: #605953;
}
.search-form label input {
  width: 100%;
  background-color: #ffffff;
  border: #EDEAE9 2px solid;
  color: #24062F;
  border-radius: 5px;
  height: 3.5rem;
  padding-inline: 1rem;
}
.search-form label input[type=search i]::-webkit-search-cancel-button {
  display: none;
}
.search-form label input::placeholder {
  color: #605953 !important;
}
.search-form label input:hover {
  color: #24062F;
  border-color: #72228E !important;
  outline: none !important;
  box-shadow: none !important;
}
.search-form label input:focus {
  outline: none !important;
  box-shadow: 0 0 4px #72228E !important;
  border-color: #72228E !important;
  color: #24062F;
}
.search-form label input:active {
  border-color: #24062F !important;
  box-shadow: none !important;
  color: #24062F;
}
.search-form label input[aria-invalid=true] {
  border: 2px solid #D3301C;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 8L8 16' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16 16L8 8' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23Z' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-position: right 12px center;
  padding-right: 48px;
  color: #24062F;
}
.search-form label input:disabled {
  background-color: #F3F2F1 !important;
  border-color: #CCC4BD !important;
  cursor: not-allowed;
  color: #A9A097;
  opacity: 0.5;
}
.search-form label input {
  padding-left: 48px;
  padding-right: 24px;
}
.search-form label input:not(:placeholder-shown) {
  padding-right: 132px;
}
.search-form label input {
  appearance: none;
}
.search-form label .search-form__assistive-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.search-form label .search-form__buttons {
  display: flex;
  gap: 16px;
  padding-inline: 16px;
  position: absolute;
  right: 0;
}

.search-form__dark label input {
  width: 100%;
  background-color: #ffffff;
  border: #EDEAE9 2px solid;
  color: #24062F;
  color: #ffffff;
  border-color: #CFD1DE;
  background-color: transparent;
  border-radius: 5px;
  height: 3.5rem;
  padding-inline: 1rem;
}
.search-form__dark label input[type=search i]::-webkit-search-cancel-button {
  display: none;
}
.search-form__dark label input::placeholder {
  color: #605953 !important;
  color: #CFD1DE !important;
}
.search-form__dark label input:hover {
  color: #24062F;
  border-color: #ffffff !important;
  color: #ffffff;
  outline: none !important;
  box-shadow: none !important;
}
.search-form__dark label input:focus {
  outline: none !important;
  box-shadow: 0 0 4px #72228E !important;
  border-color: #72228E !important;
  color: #24062F;
  color: #ffffff;
}
.search-form__dark label input:active {
  border-color: #24062F !important;
  box-shadow: none !important;
  color: #24062F;
  color: #ffffff;
}
.search-form__dark label input[aria-invalid=true] {
  border: 2px solid #D3301C;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 8L8 16' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M16 16L8 8' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 23C18.0751 23 23 18.0751 23 12C23 5.92487 18.0751 1 12 1C5.92487 1 1 5.92487 1 12C1 18.0751 5.92487 23 12 23Z' stroke='%23D3301C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-position: right 12px center;
  padding-right: 48px;
  color: #24062F;
}
.search-form__dark label input:disabled {
  background-color: #F3F2F1 !important;
  border-color: #CCC4BD !important;
  cursor: not-allowed;
  color: #A9A097;
  opacity: 0.5;
}
.search-form__dark label input:focus {
  box-shadow: none !important;
  border-color: #ffffff !important;
}
.search-form__dark label input {
  padding-left: 48px;
  padding-right: 24px;
}
.search-form__dark label input:not(:placeholder-shown) {
  padding-right: 64px;
}
.search-form__dark label .search-form__icon svg path {
  stroke: #ACAEBB;
}

.search-form__cancel {
  width: 32px;
  height: 32px;
  background-color: #F8E5FF;
  border: 1px solid #F8E5FF;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}
.search-form__cancel:hover, .search-form__cancel:focus {
  border-color: #1F212E;
  outline: none;
}
.search-form__cancel svg {
  width: 16px;
  height: 16px;
}
.search-form__cancel svg path {
  stroke: #24062F;
  stroke-width: 1px;
}

.section-module {
  position: relative;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .section-module {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.section-module > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.section-module {
  margin-bottom: 64px;
}
@media (min-width: 768px) {
  .section-module {
    margin-bottom: 104px;
  }
}
.section-module .section-module-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .section-module .section-module-grid {
    gap: 32px 24px;
  }
}
.section-module .section-module-grid > * {
  grid-column: 1/span 12;
}
.section-module .section-module-grid > *:nth-child(2n) .title,
.section-module .section-module-grid .body .title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .section-module .section-module-grid > *:nth-child(2n) .title,
  .section-module .section-module-grid .body .title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.section-module .section-module-grid > *:nth-child(2n) .text,
.section-module .section-module-grid .body .text {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .section-module .section-module-grid > *:nth-child(2n) .text,
  .section-module .section-module-grid .body .text {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.section-module .section-module-grid > *:nth-child(2n) .content_space,
.section-module .section-module-grid .body .content_space {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .section-module .section-module-grid > *:nth-child(2n) .content_space,
  .section-module .section-module-grid .body .content_space {
    row-gap: 24px;
  }
}
@media (min-width: 1024px) {
  .section-module .section-module-grid > * {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .section-module .section-module-grid > *:nth-child(1n),
  .section-module .section-module-grid .head {
    grid-column: 1/span 3;
  }
  .section-module .section-module-grid > *:nth-child(2n),
  .section-module .section-module-grid .body {
    grid-column: 4/span 6;
  }
  .section-module .section-module-grid > *:nth-child(3n),
  .section-module .section-module-grid .foot {
    grid-column: 10/span 3;
  }
}
.section-module .section-module-grid {
  border-radius: 10px;
  padding: 40px 0;
  display: grid;
}
.section-module .section-module-grid .title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .section-module .section-module-grid .title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
@media (min-width: 768px) {
  .section-module .section-module-grid {
    padding: 64px 0;
  }
}
.section-module .section-module-grid__noPadding {
  padding: 0;
}
@media (min-width: 768px) {
  .section-module .section-module-grid__noPadding {
    padding: 0;
  }
}
.section-module .section-module-grid__with-image {
  padding-inline: 16px;
}
.section-module .section-module-grid__with-image .title {
  padding-left: 0;
}
.section-module .section-module-grid__with-image .image {
  grid-row: 1/span 1;
  width: 100%;
  display: flex;
  justify-content: center;
}
.section-module .section-module-grid__with-image .image img {
  max-height: 252px;
  object-fit: contain;
  width: fit-content;
  max-width: 100%;
  border-radius: 10px;
}
@media (min-width: 1280px) {
  .section-module .section-module-grid__with-image {
    padding-inline: 0;
  }
  .section-module .section-module-grid__with-image .title {
    padding-left: 64px;
  }
  .section-module .section-module-grid__with-image .body {
    grid-column: 4/span 5;
  }
  .section-module .section-module-grid__with-image .image {
    padding-inline: 64px;
    grid-column: 9/span 4;
    grid-row: unset;
    justify-content: flex-end;
  }
}
.section-module .section-module-grid__no-image .title {
  padding-left: 0;
}

.section-module-grid .body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 24px;
}
@media (min-width: 768px) {
  .section-module-grid .body {
    row-gap: 32px;
  }
}

.body-info {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .body-info {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.body-info strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .body-info strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.body-column {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}

.body-details {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 16px;
}
@media (min-width: 768px) {
  .body-details {
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
  }
}

.body-details--one-column {
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .body-details--one-column {
    grid-template-columns: 1fr;
  }
}

.body-detail {
  display: grid;
  align-content: start;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .body-detail {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.body-detail strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .body-detail strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.body-nav {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 24px;
}
.body-nav > * {
  width: 100%;
}
@media (min-width: 768px) {
  .body-nav {
    flex-direction: row;
    align-items: center;
  }
  .body-nav > * {
    width: unset;
  }
}

.body__list {
  display: grid;
}

.body__element {
  display: flex;
  gap: 12px;
  align-items: center;
}

.eple_04 {
  background-color: rgba(255, 242, 242, 0.4);
}

.syrin_10 {
  background-color: #f8e5ff;
}

.syrin_04 {
  background-color: rgba(248, 229, 255, 0.4);
}

.pistasj_04 {
  background-color: rgba(232, 253, 239, 0.4);
}

.eple_20 {
  background-color: #FFD8D2;
}

.bydue_20 {
  background-color: #E3E5F2;
}

.bydue_10 {
  background-color: #F1F3FF;
}

.bydue_04 {
  background-color: rgba(241, 243, 255, 0.4);
}

.white {
  background-color: #ffffff;
}

.slider {
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding: 0 12px;
  width: 100%;
  border: none !important;
}

.slider__minmax * {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
}
.slider__minmax {
  display: flex;
  justify-content: space-between;
}

.slider__description {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.slider-values {
  display: flex;
  justify-content: space-between;
  width: 95%;
  margin: 16px auto;
}

#priceSlider, #sizeSlider {
  margin-top: 32px;
  width: 100%;
  height: 4px;
  border: none;
  padding: 0 12px;
  margin-bottom: 1rem;
}

/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
  cursor: pointer;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  top: -100%;
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
  cursor: grab;
}
.noUi-touch-area:active {
  cursor: grabbing;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 0.3s;
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-target {
  background: #A9A097;
  border-radius: 2px;
  height: 4px;
  border: 1px solid #CCC4BD;
  box-shadow: none;
}

.noUi-connects {
  border-radius: 2px;
  height: 4px;
}

.noUi-connect {
  background: #8E3DAB;
  cursor: pointer;
}

/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #8E3DAB;
  border-radius: 50%;
  background: #8E3DAB;
  cursor: default;
  box-shadow: none;
  height: 24px;
  width: 24px;
  top: -11px;
  right: -12px; /* half the width */
}

.noUi-active {
  background: #61177B;
}

/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #B8B8B8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #CCC;
}

.noUi-marker-sub {
  background: #AAA;
}

.noUi-marker-large {
  background: #AAA;
}

/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(50%, 0);
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(0, -18px);
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

.steps-line {
  display: flex;
  flex-direction: column;
  align-items: start;
  row-gap: 16px;
}

.steps-line__wrapper {
  width: 100%;
  position: relative;
}

.steps-line__progress {
  position: absolute;
  width: 100%;
  height: 2px;
  top: 50%;
  transform: translateY(-50%);
  background: #CCC4BD;
}

.steps-line--steps {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  list-style: none;
}
.steps-line--steps > span {
  pointer-events: none;
}

.steps-line__ring {
  text-decoration: none;
  width: 24px;
  height: 24px;
  border: #CCC4BD 2px solid;
  border-radius: 50%;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #ffffff;
}
.steps-line__ring.active {
  border-color: #8E3DAB;
}
.steps-line__ring.active:hover {
  border-color: #24062F;
}
.steps-line__ring.approved {
  border-color: #8E3DAB;
  background: #8E3DAB;
}
.steps-line__ring svg {
  align-content: center;
  justify-content: center;
  width: 12px;
  height: 12px;
}
.steps-line__ring svg path {
  stroke: #ffffff;
}
@media (min-width: 768px) {
  .steps-line__ring svg {
    display: flex;
  }
  .steps-line__ring svg path {
    stroke-width: 3px;
  }
}

a.steps-line__ring:hover {
  border-color: #24062F;
}
a.steps-line__ring:focus {
  outline: 2px #24062F solid;
  outline-offset: 2px;
}

.steps-line__description-title {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.steps-line__description-num {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}

.student-housing-list {
  padding: 0;
}
@media (min-width: 1024px) {
  .student-housing-list {
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 40px;
    row-gap: 24px;
  }
}
.student-housing-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 16px;
  background-color: transparent;
  cursor: pointer;
  border-radius: 8px;
  padding: 16px;
  margin: 0 -16px;
  text-decoration: none;
}
@media (max-width: 767px) {
  .student-housing-list li:first-of-type {
    margin-top: 24px;
  }
}
.student-housing-list li svg {
  visibility: hidden;
  margin-left: 8px;
  flex-shrink: 0;
}
.student-housing-list li:hover {
  background-color: #e3e5f2;
}
.student-housing-list li:hover svg {
  visibility: visible;
  align-self: center;
}
.student-housing-list li img {
  height: 60px;
  width: 60px;
  object-fit: cover;
  border-radius: 10px;
  margin-right: 16px;
}
@media (min-width: 1024px) {
  .student-housing-list li img {
    width: 98px;
    height: 98px;
  }
}
.student-housing-list li .info h4 {
  margin: 0;
  font-weight: 600;
  font-family: "ProximaNova";
}
.student-housing-list li .info p {
  margin: 0;
  font-family: "ProximaNova";
}

.housing-navigation__background {
  background-color: rgba(255, 242, 242, 0.4);
  border-top: 2px solid #EDEAE9;
  margin-top: -64px;
}

.housing-navigation {
  margin-bottom: 40px;
  padding-block: 16px;
  color: #460A5B;
}
@media (min-width: 768px) {
  .housing-navigation {
    margin-bottom: 64px;
  }
}

.housing-navigation__mobile {
  grid-column: span 12;
  display: block;
}
.housing-navigation__mobile > nav ul {
  display: grid;
  gap: 16px;
}
@media (min-width: 1024px) {
  .housing-navigation__mobile {
    display: none;
  }
}
.housing-navigation__mobile[open] summary {
  padding-bottom: 8px;
}
.housing-navigation__mobile[open] {
  padding-bottom: 16px;
}
.housing-navigation__mobile[open] .open-indicator path {
  rotate: z 180deg;
}

.housing-navigation__summary {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-navigation__summary {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-navigation__summary {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.housing-navigation__summary::-webkit-details-marker {
  display: none;
}
.housing-navigation__summary div {
  display: inline-flex;
  transition: transform 0.2s ease-in-out;
}
@media (min-width: 768px) {
  .housing-navigation__summary div svg {
    height: 32px;
    width: 32px;
  }
}

.open-indicator path {
  transition: rotate 0.2s ease-in-out;
  transform-origin: center;
}

.housing-navigation__desktop {
  display: none;
}
.housing-navigation__desktop ul {
  display: flex;
  gap: 16px;
}
.housing-navigation__desktop ul li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.housing-navigation__desktop ul li:not(:last-child):after {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 100px;
  background-color: #24062F;
}
@media (min-width: 1024px) {
  .housing-navigation__desktop {
    display: block;
    grid-column: span 12;
  }
}

.snackbar {
  border-radius: 10px;
  padding: 16px;
  background-color: #110615;
  color: #ffffff;
  display: flex;
  column-gap: 16px;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}
.snackbar p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .snackbar p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.snackbar p {
  color: #ffffff;
}
.snackbar button {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .snackbar button {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.snackbar button {
  border: none;
  background: none;
  padding: 0;
  color: #C476E0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media (min-width: 768px) {
  .snackbar {
    padding: 24px;
    column-gap: 24px;
  }
}

.snackbar-wrapper {
  position: fixed !important;
  right: 0;
  left: 0;
  bottom: 32px;
  margin-bottom: 0 !important;
  transition: 0.5s all;
  opacity: 0;
  visibility: hidden;
  z-index: 100;
}
.snackbar-wrapper .threeDelContainer {
  margin-bottom: 0;
}

.edit-application__snackbar-wrapper {
  position: fixed;
  right: 0;
  left: 0;
  bottom: 40px;
  z-index: 100;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .edit-application__snackbar-wrapper {
    gap: 32px 24px;
  }
}
.edit-application__snackbar-wrapper {
  max-width: 1440px;
  padding-inline: 16px;
}

.edit-application__snackbar {
  grid-column: 1/span 12;
  border-radius: 10px;
  background-color: #FFEF9E;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .edit-application__snackbar {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 768px) {
  .edit-application__snackbar {
    grid-column: 3/span 8;
    align-items: center;
    flex-direction: row;
  }
}
.edit-application__snackbar > div {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  gap: 16px;
}
@media (min-width: 768px) {
  .edit-application__snackbar > div {
    width: min-content;
    gap: 24px;
    align-items: center;
    flex-direction: row;
  }
}

.nc-loop-circle-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}
.nc-loop-circle-wrapper > svg {
  height: 100%;
}

.nc-loop-circle-icon-o {
  --animation-duration: 1s;
  transform-origin: 32px 32px;
  animation: nc-loop-circle-anim var(--animation-duration) infinite ease-out;
}

@keyframes nc-loop-circle-anim {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.spinner-wrapper {
  margin-block: 160px;
}
.spinner-wrapper .body > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  margin-inline: auto;
}

.spinner-wrapper__message {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  font-size: 1rem;
  text-align: center;
}

.text-dropdown__list {
  display: grid;
  row-gap: 24px;
}
@media (min-width: 768px) {
  .text-dropdown__list {
    row-gap: 32px;
  }
}

.text-dropdown {
  width: 100%;
}
.text-dropdown .text-dropdown__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  position: relative;
  padding: 16px;
  background-color: #F1F3FF;
  border-radius: 10px;
}
.text-dropdown .text-dropdown__header::-webkit-details-marker {
  display: none;
}
.text-dropdown .text-dropdown__header .text-dropdown__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .text-dropdown .text-dropdown__header .text-dropdown__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.text-dropdown .text-dropdown__header .text-dropdown__minus,
.text-dropdown .text-dropdown__header .text-dropdown__plus {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.text-dropdown .text-dropdown__header .text-dropdown__minus svg,
.text-dropdown .text-dropdown__header .text-dropdown__plus svg {
  height: 1.75rem;
  width: 1.75rem;
}
.text-dropdown .text-dropdown__header .text-dropdown__minus {
  display: none;
}
.text-dropdown .text-dropdown__header:hover {
  background-color: #E3E5F2;
}
.text-dropdown .text-dropdown__header:focus-visible {
  box-shadow: 0 0 0 2px #24062F;
  outline: none;
}
.text-dropdown .text-dropdown__body {
  padding: 16px;
  border-radius: 10px;
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  display: grid;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .text-dropdown .text-dropdown__body {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.text-dropdown .text-dropdown__body p:not(:last-of-type), .text-dropdown .text-dropdown__body h3:not(:last-of-type) {
  margin-bottom: 16px;
}
.text-dropdown .text-dropdown__body h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .text-dropdown .text-dropdown__body h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.text-dropdown .text-dropdown__body h3 {
  margin-bottom: 1rem;
}
.text-dropdown .text-dropdown__body a {
  display: inline-flex;
}
.text-dropdown .text-dropdown__body strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .text-dropdown .text-dropdown__body strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.text-dropdown .text-dropdown__body ul {
  list-style: disc;
}
.text-dropdown .text-dropdown__body ul,
.text-dropdown .text-dropdown__body ol {
  padding-left: 24px;
}
.text-dropdown .text-dropdown__body ul li:not(:last-child),
.text-dropdown .text-dropdown__body ol li:not(:last-child) {
  padding-bottom: 16px;
}
.text-dropdown .text-dropdown__body u {
  text-underline-offset: 2px;
  text-decoration: underline;
}
.text-dropdown[open] .text-dropdown__header {
  margin-bottom: 16px;
  background-color: #460A5B;
}
.text-dropdown[open] .text-dropdown__header::-webkit-details-marker {
  display: none;
}
.text-dropdown[open] .text-dropdown__header .text-dropdown__title {
  color: #ffffff;
}
.text-dropdown[open] .text-dropdown__plus {
  display: none;
}
.text-dropdown[open] .text-dropdown__minus {
  display: flex;
}
.text-dropdown[open] .text-dropdown__minus svg path {
  stroke: #ffffff;
}
@media (min-width: 1024px) {
  .text-dropdown[open] .text-dropdown__header {
    margin-bottom: 16px;
  }
  .text-dropdown .text-dropdown__header,
  .text-dropdown .text-dropdown__body {
    padding: 24px;
  }
  .text-dropdown .text-dropdown__minus svg,
  .text-dropdown .text-dropdown__plus svg {
    height: 32px;
    width: 32px;
  }
}

.tooltip-wrapper {
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tooltip-wrapper .tooltip-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  border: transparent solid 2px;
  width: max-content;
  height: 1.5rem;
  border-radius: 50%;
}
.tooltip-wrapper .tooltip-btn[aria-disabled], .tooltip-wrapper .tooltip-btn[aria-disabled=True], .tooltip-wrapper .tooltip-btn[aria-disabled=true] {
  opacity: 0.5;
  pointer-events: none;
}
.tooltip-wrapper .tooltip-btn svg path {
  stroke: #262421;
}
.tooltip-wrapper .tooltip-btn:focus + .tooltip-text, .tooltip-wrapper .tooltip-btn:hover + .tooltip-text {
  display: block;
}
.tooltip-wrapper .tooltip-btn:focus {
  box-shadow: 0 0 0 2px #262421;
}
.tooltip-wrapper .tooltip-text {
  display: none;
  position: absolute;
  z-index: 100;
  right: 40px;
  box-sizing: border-box;
  width: 200px;
  background: #262421;
  padding: 4px 8px;
  border-radius: 5px;
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.tooltip-wrapper .tooltip-text::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  background: #262421;
  right: -5px;
  top: calc(50% - 5px);
}

.tooltip-wrapper--right .tooltip-text {
  left: 40px;
  top: unset;
}
.tooltip-wrapper--right .tooltip-text::after {
  left: -5px;
  top: calc(50% - 5px);
}

.tooltip-wrapper--left .tooltip-text {
  right: 40px;
  top: unset;
}
.tooltip-wrapper--left .tooltip-text::after {
  right: -5px;
  top: calc(50% - 5px);
}

.tooltip-wrapper--bottom .tooltip-text {
  right: unset;
  top: 40px;
}
.tooltip-wrapper--bottom .tooltip-text::after {
  right: calc(50% - 5px);
  top: -5px;
}

.tooltip-wrapper--top .tooltip-text {
  right: unset;
  top: unset;
  bottom: 40px;
}
.tooltip-wrapper--top .tooltip-text::after {
  right: calc(50% - 5px);
  bottom: -5px;
  top: unset;
}

.text-tooltip-wrapper {
  position: relative;
  display: inline-flex;
  width: fit-content;
}
.text-tooltip-wrapper .text-tooltip-btn {
  position: relative;
  border: none;
  background: none;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  width: max-content;
  height: min-content;
  text-decoration-style: dotted;
  text-decoration-color: currentColor;
  text-decoration-line: underline;
  text-underline-offset: 3px;
  /*
  background-image: linear-gradient(to right, #000 10%, rgba(255, 255, 255, 0) 0%);
  background-position: bottom;
  background-size: 5px 2px;
  background-repeat: repeat-x;*/
}
.text-tooltip-wrapper .text-tooltip-btn:focus + .tooltip-text, .text-tooltip-wrapper .text-tooltip-btn:hover + .tooltip-text {
  display: block;
  pointer-events: none;
}
.text-tooltip-wrapper .text-tooltip-btn:focus {
  box-shadow: 0 0 0 2px #262421;
}
.text-tooltip-wrapper .tooltip-text {
  display: none;
  position: absolute;
  z-index: 100;
  transform: translateX(-50%);
  left: 50%;
  top: 30px;
  box-sizing: border-box;
  width: 200px;
  background: #262421;
  padding: 4px 8px;
  border-radius: 5px;
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.text-tooltip-wrapper .tooltip-text::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: -5px;
  left: calc(50% - 5px);
  transform: rotate(45deg);
  background: #262421;
}

.text-tooltip-wrapper--right .tooltip-text {
  left: calc(100% + 20px);
  top: 50%;
  transform: translateY(-50%);
}
.text-tooltip-wrapper--right .tooltip-text::after {
  top: calc(50% - 5px);
  left: -5px;
}

.text-tooltip-wrapper--left .tooltip-text {
  right: calc(100% + 20px);
  left: unset;
  top: 50%;
  transform: translateY(-50%);
}
.text-tooltip-wrapper--left .tooltip-text::after {
  right: -5px;
  left: unset;
  top: calc(50% - 5px);
}

.text-tooltip-wrapper--bottom .tooltip-text {
  right: unset;
  top: 40px;
}
.text-tooltip-wrapper--bottom .tooltip-text::after {
  right: calc(50% - 5px);
  top: -5px;
}

.text-tooltip-wrapper--top .tooltip-text {
  right: unset;
  top: unset;
  bottom: 40px;
}
.text-tooltip-wrapper--top .tooltip-text::after {
  right: calc(50% - 5px);
  bottom: -5px;
  top: unset;
}

.timestamp {
  position: relative;
  display: flex;
  gap: 32px;
  padding-left: 16px;
  flex-direction: column;
}
@media (min-width: 768px) {
  .timestamp {
    flex-direction: row;
  }
}
.timestamp::before {
  content: "";
  border-radius: 30px;
  background-color: #FFF9DB;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 8px;
}
.timestamp details > summary {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .timestamp details > summary {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.timestamp details > summary {
  list-style: none;
  cursor: pointer;
}
.timestamp details > summary::-webkit-details-marker {
  display: none;
}
.timestamp details > summary:focus-visible {
  outline: none;
}
.timestamp details[open] > summary {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .timestamp details[open] > summary {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.timestamp details {
  padding-left: 8px;
  position: relative;
  border-radius: 5px;
}
.timestamp details:focus-within {
  outline: none;
}
.timestamp details:focus-visible {
  outline: solid 1px black;
  outline-offset: 2px;
}
.timestamp details > div {
  padding-top: 16px;
  display: flex;
  gap: 24px;
}
.timestamp details > div > p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .timestamp details > div > p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.timestamp__complete::before {
  background-color: #EEBFFF;
}
.timestamp__complete:hover::before {
  background-color: #C476E0;
}
.timestamp__complete details > summary {
  text-decoration: line-through;
}
.timestamp__complete details[open] > summary {
  text-decoration: none;
}

.timestamp__incomplete::before {
  background-color: #E3E5F2;
}
.timestamp__incomplete:hover::before {
  background-color: #CFD1DE;
}

.timestamp__current::before {
  background-color: #72228E;
}
.timestamp__current:hover::before {
  background-color: #460A5B;
}
.timestamp__current details > summary {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .timestamp__current details > summary {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.timestamp__image {
  display: flex;
  width: 100%;
  padding-left: 8px;
}
@media (min-width: 768px) {
  .timestamp__image {
    justify-content: right;
    padding-left: 0;
  }
}
.timestamp__image svg {
  max-width: unset;
  width: 200px;
}

.timestamp__image--hidden {
  display: none;
}

.timeline {
  display: grid;
  gap: 16px;
  margin-bottom: 0;
}
.timeline li {
  padding: 0;
  width: 100%;
}

.threeDelContainer {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .threeDelContainer {
    gap: 32px 24px;
  }
}
.threeDelContainer > * {
  grid-column: 1/span 12;
}
.threeDelContainer > *:nth-child(2n) .title,
.threeDelContainer .body .title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .threeDelContainer > *:nth-child(2n) .title,
  .threeDelContainer .body .title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.threeDelContainer > *:nth-child(2n) .text,
.threeDelContainer .body .text {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .threeDelContainer > *:nth-child(2n) .text,
  .threeDelContainer .body .text {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.threeDelContainer > *:nth-child(2n) .content_space,
.threeDelContainer .body .content_space {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .threeDelContainer > *:nth-child(2n) .content_space,
  .threeDelContainer .body .content_space {
    row-gap: 24px;
  }
}
@media (min-width: 1024px) {
  .threeDelContainer > * {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .threeDelContainer > *:nth-child(1n),
  .threeDelContainer .head {
    grid-column: 1/span 3;
  }
  .threeDelContainer > *:nth-child(2n),
  .threeDelContainer .body {
    grid-column: 4/span 6;
  }
  .threeDelContainer > *:nth-child(3n),
  .threeDelContainer .foot {
    grid-column: 10/span 3;
  }
}
.threeDelContainer {
  margin-bottom: 104px;
}
@media (min-width: 1024px) {
  .threeDelContainer {
    margin-bottom: 64px;
  }
}
.threeDelContainer > .head {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .threeDelContainer > .head {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.threeDelContainer > .head a {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .threeDelContainer > .head a {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.threeDelContainer > .head a {
  color: #61177B;
}
.threeDelContainer > .head h2 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .threeDelContainer > .head h2 {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.threeDelContainer > .body {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.threeDelContainer > .body--centered {
  align-items: center;
}
.threeDelContainer > .head, .threeDelContainer > .body, .threeDelContainer > .foot {
  grid-column: 1/span 12;
}
@media (min-width: 1024px) {
  .threeDelContainer > .head, .threeDelContainer > .body, .threeDelContainer > .foot {
    grid-column: 3/span 8;
  }
  .threeDelContainer > .body {
    gap: 64px;
  }
}
@media (min-width: 1280px) {
  .threeDelContainer > .head {
    grid-column: 1/span 3;
  }
  .threeDelContainer > .body {
    grid-column: 4/span 6;
  }
  .threeDelContainer > .foot {
    grid-column: 10/span 3;
  }
}

.tag {
  background: #F8E5FF;
  border-radius: 5px;
  font-size: 0.6875rem;
  line-height: 1rem;
  font-family: "SpaceMonoBold", monospace;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #24062F;
  padding: 8px;
  width: fit-content;
}

.tag--compact {
  padding: 2px 8px;
}

.tag--success {
  color: #076124;
  background-color: #D3FBE0;
}

.tag--warning {
  color: #483F11;
  background-color: #FFF5C7;
}

.tag--danger {
  color: #A5210F;
  background-color: #FFD8D2;
}

.tag--severe {
  color: #ffffff;
  background-color: #D3301C;
}

.tag--inactive {
  color: #605953;
  background-color: #EDEAE9;
}

.tag--informative {
  color: #3E404D;
  background-color: #F8E5FF;
}

.tag--informative-new {
  color: #3E404D;
  background-color: #FFF2F2;
}

.top-tasks {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-direction: column;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .top-tasks {
    gap: 24px;
    flex-direction: row;
  }
}

.top-task {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .top-task {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.top-task {
  color: #460A5B;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  background-color: #F8E5FF;
  border-radius: 10px;
  padding: 1rem;
  gap: 16px;
  text-decoration: none;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .top-task {
    width: 21.375rem;
    padding: 1.5rem;
    gap: 24px;
  }
}
.top-task:hover {
  background-color: #EEBFFF;
  color: #460A5B;
}
.top-task:focus {
  background-color: #EEBFFF;
  outline-offset: 2px;
  outline: 2px solid #460A5B;
  color: #460A5B;
}
.top-task:active {
  outline: none;
  background-color: #C476E0;
  color: #460A5B;
}

.top-task__arrow {
  flex-shrink: 0;
  background-color: #ffffff;
  border-radius: 50%;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top-task__arrow svg {
  width: 1rem;
  height: 1rem;
}
.top-task__arrow svg path {
  stroke: #24062F;
  stroke-width: 1px;
}
@media (min-width: 768px) {
  .top-task__arrow svg {
    width: 2rem;
    height: 2rem;
  }
}
.top-task__arrow svg svg {
  width: 1.5rem;
  height: 1.5rem;
}
.top-task__arrow svg svg path {
  stroke-width: 2px;
}

.work-orders li:not(:last-child) .chat {
  border-bottom: 0;
}

.work-orders__show-all {
  min-width: 275px;
  margin-inline: auto;
}

.work-order__date {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.work-order__name {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #72228E;
}

.page-intro {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .page-intro {
    gap: 64px;
  }
}
.page-intro .page-intro__header {
  font-family: "SuisseWorksBold", serif;
  font-size: 2rem;
  line-height: 2.25rem;
  font-weight: 400;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .page-intro .page-intro__header {
    font-size: 3.375rem;
    line-height: 3.75rem;
  }
}
.page-intro .page-intro__header {
  text-align: center;
}
.page-intro .page-intro__ingress {
  font-family: "SpaceMono", monospace;
  font-size: 1.125rem;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .page-intro .page-intro__ingress {
    font-size: 1.5rem;
    line-height: 2.5rem;
  }
}
.page-intro .page-intro__ingress {
  text-align: center;
}

.icon-description {
  display: grid;
  flex-direction: column;
  grid-template-columns: 24px 1fr;
  align-items: center;
  column-gap: 8px;
}
@media (min-width: 768px) {
  .icon-description {
    column-gap: 12px;
  }
}
.icon-description strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .icon-description strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.icon-description p {
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  grid-column: 2/span 1;
}
@media (min-width: 768px) {
  .icon-description p {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNova", sans-serif;
  }
}

.article-media img, .article-media video {
  width: 100%;
  border-radius: 10px;
}

.page-quote {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  padding-block: 24px;
}
@media (min-width: 768px) {
  .page-quote {
    row-gap: 40px;
    padding-block: 40px;
  }
}
.page-quote blockquote {
  font-family: "SuisseWorksBold", serif;
  font-size: 1.75rem;
  line-height: 2rem;
  letter-spacing: -0.02em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .page-quote blockquote {
    font-size: 2.875rem;
    line-height: 3.5rem;
  }
}
.page-quote blockquote {
  text-align: center;
  color: #460A5B;
}
.page-quote figcaption p {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  text-align: center;
}

.explore-oslo__intro {
  margin-top: 32px;
}
@media (min-width: 768px) {
  .explore-oslo__intro {
    margin-top: 40px;
  }
}

.explore-oslo__card-header {
  display: grid;
  gap: 8px;
}

.explore-oslo__card-header-title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .explore-oslo__card-header-title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.explore-oslo__card-header-title {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.explore-oslo__card-header-ingress {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  color: #262421;
}

.explore-oslo__card-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
}
@media (min-width: 768px) {
  .explore-oslo__card-features {
    gap: 8px;
  }
}

.explore-oslo__card-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.explore-oslo__card-nav > a {
  width: 100%;
}
@media (min-width: 520px) {
  .explore-oslo__card-nav > a {
    width: fit-content;
  }
}

.filter-student-city {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 12px 16px;
}
@container filter-container (min-width: 550px) {
  .filter-student-city {
    grid-template-columns: 1fr 1fr;
  }
}
.filter-student-city {
  grid-auto-rows: minmax(24px, auto);
  justify-content: center;
}
.filter-student-city .choosing-inputs__header {
  padding-bottom: 16px;
}
.filter-student-city > * {
  margin-bottom: 24px;
}
.filter-student-city .ht0 {
  grid-row-end: span 1;
}
.filter-student-city .ht1 {
  grid-row-end: span 2;
}
.filter-student-city .ht2 {
  grid-row-end: span 3;
}
.filter-student-city .ht3 {
  grid-row-end: span 4;
}
.filter-student-city .ht4 {
  grid-row-end: span 5;
}
.filter-student-city .ht5 {
  grid-row-end: span 6;
}
.filter-student-city .ht6 {
  grid-row-end: span 7;
}
.filter-student-city .ht7 {
  grid-row-end: span 8;
}

.housing-search {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  padding-top: 16px;
}
@media (min-width: 768px) {
  .housing-search {
    row-gap: 32px;
  }
}
.housing-search > li {
  position: relative;
}
.housing-search > li > div {
  margin-bottom: 24px;
}
.housing-search > li::after {
  content: "";
  position: absolute;
  width: 100%;
  border-bottom: 2px solid #F3F2F1;
}
.housing-search.rounded_padding {
  padding: 24px;
  border-radius: 10px;
}

.housing-search__wish-button {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  position: relative;
  box-sizing: border-box;
  cursor: pointer;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "SpaceMonoBold", monospace;
  text-decoration: none;
  background-color: transparent;
  margin-left: -8px;
  margin-inline: unset;
}
.housing-search__wish-button svg {
  height: 1.5rem;
  width: 1.5rem;
  flex-shrink: 0;
}
.housing-search__wish-button svg path {
  stroke: currentColor;
  stroke-width: 1px;
}
.housing-search__wish-button:hover:not(:focus) svg path {
  stroke: #D3301C;
}
.housing-search__wish-button:focus svg path {
  stroke: #24062F;
}
.housing-search__wish-button:disabled {
  cursor: not-allowed;
}
@media (min-width: 768px) {
  .housing-search__wish-button {
    width: max-content;
  }
}

.housing-search__wish-button--loved:focus svg {
  fill: #D3301C;
}
.housing-search__wish-button--loved:focus svg path {
  stroke: #D3301C;
}
.housing-search__wish-button--loved svg {
  animation: heartbeat 0.5s linear;
  fill: #D3301C;
}
.housing-search__wish-button--loved svg path {
  stroke: #D3301C;
}

@keyframes heartbeat {
  25% {
    transform: scale(0.9);
  }
  50% {
    transform: scale(1.1);
    fill: #D3301C;
  }
  75% {
    transform: scale(1);
  }
  100% {
    transform: scale(1);
    fill: #D3301C;
  }
}
button.loved {
  align-self: center;
}
button.loved svg {
  fill: #F04B37;
}
button.loved svg path {
  stroke: #F04B37;
}
button.loved--not {
  align-self: center;
}
button.loved--not svg {
  fill: #ffffff;
}
button.loved--not svg path {
  stroke: #ffffff;
}

.housing-type-specific-details__wrapper {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 768px) {
  .housing-type-specific-details__wrapper {
    gap: 32px;
  }
}

.housing-type-specific-details {
  display: flex;
  flex-direction: column;
}
.housing-type-specific-details .threeDelContainer {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .housing-type-specific-details .threeDelContainer {
    margin-bottom: 40px;
  }
}
.housing-type-specific-details .housing-type-specific-details__header {
  font-family: "SuisseWorksBold", serif;
  font-size: 2rem;
  line-height: 2.25rem;
  font-weight: 400;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__header {
    font-size: 3.375rem;
    line-height: 3.75rem;
  }
}
.housing-type-specific-details .housing-type-specific-details__header {
  text-align: center;
}
.housing-type-specific-details .housing-type-specific-details__studentCity {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__studentCity {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-type-specific-details .housing-type-specific-details__studentCity {
  align-self: center;
}
.housing-type-specific-details .housing-type-specific-details__ingress {
  display: flex;
  flex-direction: column;
  gap: 32px;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__ingress {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__ingress {
    gap: 40px;
  }
}
.housing-type-specific-details .housing-type-specific-details__ingress ul {
  list-style: none;
  display: grid;
  column-gap: 16px;
  row-gap: 12px;
  grid-auto-flow: column;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(6, 1fr);
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__ingress ul {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr;
    row-gap: 16px;
  }
}
.housing-type-specific-details .housing-type-specific-details__ingress ul li {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__ingress ul li {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.housing-type-specific-details .housing-type-specific-details__ingress ul li strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-type-specific-details .housing-type-specific-details__ingress ul li strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.housing-type-specific-details .housing-type-specific-details__ingress > p {
  display: flex;
  align-items: center;
  gap: 12px;
}

.key-info__section {
  background-color: #FFF2F2;
  padding-block: 40px 52px;
}
@media (min-width: 768px) {
  .key-info__section {
    padding-block: 64px;
  }
  .key-info__section .section-module-grid__with-image .image {
    display: none;
  }
}
.key-info__section .section-module-grid .body {
  grid-column: span 12;
  display: grid;
  grid-template-columns: subgrid;
  gap: 40px;
}

.key-info__line {
  height: 2px;
  width: 100%;
  background-color: #EDEAE9;
}

.key-info__wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 768px) {
  .key-info__wrapper {
    gap: 24px;
  }
}
.key-info__wrapper h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .key-info__wrapper h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.key-info__wrapper ul {
  list-style: none;
  display: grid;
  column-gap: 16px;
  row-gap: 12px;
}
@media (min-width: 480px) {
  .key-info__wrapper ul {
    row-gap: 24px;
  }
}
.key-info__wrapper {
  grid-column: auto/span 12;
}
@media (min-width: 768px) {
  .key-info__wrapper:first-child {
    grid-column: 1/span 5;
  }
  .key-info__wrapper:last-child {
    grid-column: 8/span 5;
  }
}
@media (min-width: 1280px) {
  .key-info__wrapper:first-child {
    grid-column: 3/span 3;
  }
  .key-info__wrapper:last-child {
    grid-column: 8/span 3;
  }
}

.key-info__detail {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  color: #24062F;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .key-info__detail {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .key-info__detail {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNova", sans-serif;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .key-info__detail {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 1280px) {
  .key-info__detail {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNova", sans-serif;
  }
}
@media (min-width: 1280px) and (min-width: 768px) {
  .key-info__detail {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.key-info__detail .key-info__detail-content {
  text-align: right;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .key-info__detail .key-info__detail-content {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .key-info__detail .key-info__detail-content {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNovaBold", sans-serif;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .key-info__detail .key-info__detail-content {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 1280px) {
  .key-info__detail .key-info__detail-content {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    font-family: "ProximaNovaBold", sans-serif;
  }
}
@media (min-width: 1280px) and (min-width: 768px) {
  .key-info__detail .key-info__detail-content {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.key-info__detail .key-info__detail-content--price {
  white-space: nowrap;
  flex-shrink: 0;
}

.key-info__detail-icon {
  display: flex;
  align-items: center;
  gap: 24px;
}

.housing-details .housing-details__name {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .housing-details .housing-details__name {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.housing-details .housing-details__name {
  margin-bottom: 24px;
}
.housing-details .housing-details__label {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .housing-details .housing-details__label {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.housing-details .housing-details__label {
  margin-bottom: 16px;
}
.housing-details p, .housing-details a {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .housing-details p, .housing-details a {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.article {
  margin-top: 40px;
}
@media (min-width: 1280px) {
  .article {
    display: flex;
    flex-direction: column;
    margin: 80px 0;
  }
}
.article img {
  height: auto;
  margin: 0 -16px;
  width: 100vw;
}
@media (min-width: 1280px) {
  .article img {
    border-radius: 10px 10px 0 0;
    width: 100%;
    max-height: 500px;
    margin: 0 auto;
    object-fit: cover;
  }
}
.article--content {
  padding: 16px;
  margin: -6px -16px;
  background-color: #380b48;
}
@media (min-width: 1280px) {
  .article--content {
    margin: auto;
    border-radius: 0 0 10px 10px;
  }
}
.article--content h3 {
  color: white;
}
@media (min-width: 1280px) {
  .article--content h3 {
    margin: 0 0 16px;
  }
}
.article--content p {
  color: white;
}
.article #text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.article #text p {
  margin: 0;
}
.article #text.read-more {
  display: block;
  overflow: visible;
  -webkit-line-clamp: initial;
}
.article #button {
  text-align: center;
}
.article #button .btn--cta {
  margin: 16px auto 0;
}
.article em {
  display: flex;
  justify-content: flex-end;
  margin-top: 32px;
}

.myApplication-summary-dataBox {
  margin-bottom: 40px;
}
.myApplication-summary-dataBox .horizontalLine {
  grid-column: 1/span 12;
  height: 1px;
  border-bottom: 2px solid #F3F2F1;
}
@media (min-width: 1024px) {
  .myApplication-summary-dataBox .horizontalLine {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .myApplication-summary-dataBox .horizontalLine {
    grid-column: 4/span 9;
  }
}
.myApplication-summary-dataBox .info-card-details_standalone-element {
  grid-column: span 1;
}
@media (min-width: 1024px) {
  .myApplication-summary-dataBox .info-card-details_standalone-element {
    grid-column: span 2;
  }
}

.myApplication-summary-changeBtn {
  display: flex;
  height: min-content;
}
@media (min-width: 1280px) {
  .myApplication-summary-changeBtn {
    justify-content: flex-end;
  }
}
.myApplication-summary-changeBtn button {
  width: 100%;
}
@media (min-width: 768px) {
  .myApplication-summary-changeBtn button {
    width: min-content;
  }
}

.myApplication__edit-buttons {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.myApplication__edit-buttons button {
  width: 100%;
}
@media (min-width: 768px) {
  .myApplication__edit-buttons {
    width: fit-content;
    flex-direction: row;
  }
}

.myApplication__subheader {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .myApplication__subheader {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.myApplication__subheader {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .myApplication__subheader {
    margin-bottom: 24px;
  }
}

.myApplication__data {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 24px;
  row-gap: 16px;
}
@media (min-width: 768px) {
  .myApplication__data {
    grid-template-columns: 1fr 1fr;
  }
}
.myApplication__data dt {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .myApplication__data dt {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.myApplication__data dd {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .myApplication__data dd {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.myApplication__data--fill-row {
  grid-column: 1/span 2;
}

.brakeLine {
  width: 100%;
  height: 2px;
  grid-column: 1/-1;
  background-color: #F3F2F1;
  display: none;
}
@media (min-width: 768px) {
  .brakeLine {
    display: block;
  }
}

.mb-16 {
  margin-bottom: 16px;
}

.sign-contract__signin-card {
  border: none;
}
.sign-contract__signin-card .success-icon .success-icon--circle {
  fill: #ffffff;
}
.sign-contract__signin-card .success-icon .success-icon--tic {
  stroke: #ffffff;
}
.sign-contract__signin-card--checked .success-icon .success-icon--circle {
  fill: #24062F;
}
.sign-contract__signin-card--checked .success-icon .success-icon--tic {
  stroke: #ffffff;
}
.sign-contract__signin-card__logo {
  display: flex;
  justify-content: center;
}
.sign-contract__signin-card__logo svg {
  height: 24px;
}
@media (min-width: 1024px) {
  .sign-contract__signin-card__logo svg {
    height: 32px;
  }
}

.sign-contract__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .sign-contract__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.sign-contract__buttons {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
  align-items: center;
  padding-top: 12px;
}
.sign-contract__buttons > .btn--primary {
  width: 100%;
}
@media (min-width: 768px) {
  .sign-contract__buttons {
    row-gap: 32px;
    padding-top: 16px;
  }
  .sign-contract__buttons > .btn--primary {
    width: max-content;
  }
}

.sign-contract__ingress {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .sign-contract__ingress {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.my-application--offer h2 {
  font-size: 18px;
}
@media (min-width: 1024px) {
  .my-application--offer h2 {
    font-size: 22px;
  }
}
@media (min-width: 1024px) {
  .my-application--offer {
    max-width: 706px;
    margin: auto;
  }
}
.my-application--offer .container {
  padding: 16px;
  background-color: #d3fbe0;
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  border-radius: 8px;
}
.my-application--offer .container .header {
  display: flex;
  align-items: center;
  margin: 0 8px 16px 0;
}
.my-application--offer .container .header h4 {
  font-size: 20px;
  font-family: "ProximaNova";
  margin: 0 8px 0 0;
}
@media (min-width: 1024px) {
  .my-application--offer .container .header h4 {
    font-size: 32px;
  }
}
.my-application--offer .container p {
  margin: 0;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--offer .container p {
    font-size: 22px;
  }
}
.my-application--offer--housing {
  margin-top: 16px;
}
@media (min-width: 1024px) {
  .my-application--offer--housing {
    padding: 16px;
    max-width: 706px;
    box-shadow: 0px 0px 10px -2px #d2d2d2;
    border-radius: 8px;
  }
}
.my-application--offer--housing .header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.my-application--offer--housing .header .studenthouse-name {
  text-transform: uppercase;
  font-family: "Space Mono", "monospace";
  font-size: 11px;
  font-weight: 700;
}
.my-application--offer--housing .header .housing-name {
  font-size: 18px;
}
@media (min-width: 1024px) {
  .my-application--offer--housing .header .housing-name {
    font-size: 22px;
  }
}
.my-application--offer--housing .header h2 {
  margin: 0;
  font-size: 20px;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--offer--housing .header h2 {
    font-size: 32px;
  }
}
.my-application--offer--housing .header p {
  margin: 0;
}
.my-application--offer--housing hr {
  border-color: #e3e5f2;
  margin: 8px 0 16px;
}
.my-application--offer--housing--container {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .my-application--offer--housing--container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, 1fr);
  }
}
.my-application--offer--housing--container .image-container {
  grid-area: 1/3/2/5;
}
@media (max-width: 764px) {
  .my-application--offer--housing--container .image-container {
    order: 1;
  }
}
.my-application--offer--housing--container .image-container img {
  width: 100%;
  height: 163px;
  object-fit: cover;
  border-radius: 8px;
}
@media (min-width: 1024px) {
  .my-application--offer--housing--container .image-container img {
    width: 288px;
    height: 163px;
  }
}
@media (min-width: 500px) and (max-width: 764px) {
  .my-application--offer--housing--container .image-container img {
    width: 100%;
    height: auto;
  }
}
.my-application--offer--housing--container .image-container .example-images {
  font-size: 12px;
  color: #8e847b;
  margin: 8px 0 0 0;
  font-family: "Space Mono", "monospace";
}
@media (max-width: 764px) {
  .my-application--offer--housing--container .image-container .example-images {
    display: flex;
    justify-content: flex-end;
  }
}
.my-application--offer--housing--container .housing-name {
  font-family: "SuisseWorksBold";
  font-size: 20px;
  font-weight: 700;
  margin: 0;
}
.my-application--offer--housing--container .housing-info {
  grid-area: 1/1/3/3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-right: 40px;
}
@media (max-width: 764px) {
  .my-application--offer--housing--container .housing-info {
    order: 2;
    margin-top: 16px;
    margin-right: 0;
  }
}
.my-application--offer--housing--container .housing-info-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
}
.my-application--offer--housing--container .housing-info-container p {
  margin: 4px 0;
}
.my-application--offer--housing--container .housing-info-container p:first-of-type {
  font-family: "ProximaNova";
}
.my-application--offer--housing--container .housing-info-container p:nth-child(2) {
  border-bottom: 1px dashed #24062F;
  width: fit-content;
}
.my-application--offer--housing--container .housing-info-container .from-to {
  display: flex;
  align-items: baseline;
  border-bottom: 1px dashed #24062F;
  width: fit-content;
}
.my-application--offer--housing--container .housing-info-container .from-to p {
  font-family: "Space Mono", "monospace";
}
.my-application--offer--housing--container .housing-info-container .from-to span {
  margin: 0 4px;
}
.my-application--offer--housing--container .housing-info-container.no-line p:nth-child(2) {
  border-bottom: none;
  font-family: "ProximaNova";
}
.my-application--offer--housing--container .housing-info-container.no-line .from-to {
  border-bottom: none;
}
.my-application--offer--housing--container .housing-info-container.no-line .from-to p {
  font-family: "ProximaNova";
}
.my-application--offer--housing--container .housing-info-container .tooltip {
  border-bottom: 1px dashed #7195a2;
  position: relative;
}
.my-application--offer--housing--container .housing-info-container .tooltip:focus .tooltip-text, .my-application--offer--housing--container .housing-info-container .tooltip:hover .tooltip-text {
  visibility: visible;
}
.my-application--offer--housing--container .housing-info-container .tooltip-text {
  visibility: hidden;
  background-color: #24062F;
  color: #f8e5ff;
  text-align: center;
  padding: 6px;
  font-size: 14px;
  font-weight: 400;
  font-family: "Space Mono", monospace;
  width: 196px;
  top: 100%;
  border-radius: 8px;
  margin-top: 16px;
  /* Position the tooltip */
  position: absolute;
  z-index: 2;
}
.my-application--offer--housing--container .housing-info-container .tooltip-text.left {
  right: 0;
}
@media (min-width: 1280px) {
  .my-application--offer--housing--container .housing-info-container .tooltip-text.left {
    left: 0%;
  }
}
.my-application--offer--housing--container .housing-info-container .tooltip-text.left::after {
  left: 80%;
}
@media (min-width: 1280px) {
  .my-application--offer--housing--container .housing-info-container .tooltip-text.left::after {
    left: 15%;
  }
}
.my-application--offer--housing--container .housing-info-container .tooltip-text::after {
  content: "";
  position: absolute;
  border: 9px solid transparent;
  border-top: 10px solid #24062F;
  top: -19px;
  transform: rotate(180deg);
}
.my-application--offer--housing--container #leaseButton {
  display: flex;
  justify-content: flex-end;
}
.my-application--offer--housing--container #leaseButton .btn--remove {
  font-family: "ProximaNova";
  padding: 0;
  margin: 16px 0;
}
.my-application--offer--housing--container .btn--primary {
  margin: 24px auto;
  grid-area: 2/3/3/5;
}
@media (max-width: 764px) {
  .my-application--offer--housing--container .btn--primary {
    order: 3;
  }
}
.my-application--offer--housing--container .btn--underline {
  margin: 0 auto;
}
.my-application--offer--contract {
  padding: 24px;
  background-color: #FFF2F2;
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  margin: 24px -16px 40px;
  display: flex;
  flex-direction: column;
}
@media (min-width: 1024px) {
  .my-application--offer--contract {
    position: relative;
    width: 100vw;
    left: calc(-50vw + 50%);
  }
}
@media (min-width: 1024px) {
  .my-application--offer--contract .contract-container {
    max-width: 708px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
  }
}
@media (min-width: 500px) and (max-width: 800px) {
  .my-application--offer--contract .contract-container {
    padding: 0 24px;
  }
}
@media (min-width: 1024px) {
  .my-application--offer--contract .contract-container > div {
    max-width: 350px;
  }
}
.my-application--offer--contract .contract-container > div h3 {
  margin: 0;
  font-size: 20px;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--offer--contract .contract-container > div h3 {
    font-size: 32px;
  }
}
.my-application--offer--contract .contract-container > div p {
  font-family: "ProximaNova";
}
.my-application--offer--contract .contract-container > div .due-date {
  display: flex;
  align-self: center;
  justify-content: space-between;
}
.my-application--offer--contract .contract-container > div .due-date p {
  font-weight: 600;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--offer--contract .contract-container > div .due-date p {
    font-size: 22px;
  }
}
.my-application--offer--contract .contract-container > div .btn--cta {
  margin: 36px auto 24px;
  white-space: nowrap;
}
.my-application--offer--contract .contract-container > div .btn--remove {
  text-decoration: none;
  background-color: transparent;
  font-family: "ProximaNova";
  margin: 0 auto;
}
.my-application--offer--contract img {
  display: none;
}
@media (min-width: 1024px) {
  .my-application--offer--contract img {
    display: block;
    width: 280px;
    height: 280px;
    margin-right: 258px;
    margin-left: 75px;
    flex-shrink: 0;
  }
}

.my-application--deposit {
  background-color: #FFF2F2;
  padding: 16px 16px 24px;
  margin: 24px -16px;
}
@media (min-width: 1024px) {
  .my-application--deposit {
    width: 100vw;
    position: relative;
    left: calc(-50vw + 50%);
  }
}
.my-application--deposit .container {
  max-width: 708px;
  margin: auto;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--deposit .container > div {
    display: flex;
    align-items: center;
    max-width: 706px;
    padding: 16px;
  }
}
@media (min-width: 1024px) {
  .my-application--deposit .container > div > div {
    margin-right: 96px;
    width: 100%;
  }
}
.my-application--deposit .container > div .inner-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 300px;
}
.my-application--deposit .container > div .inner-container p {
  margin: 4px 0;
}
.my-application--deposit .container > div img {
  display: none;
}
@media (min-width: 1024px) {
  .my-application--deposit .container > div img {
    display: block;
    width: 240px;
    height: 240px;
    flex-shrink: 0;
  }
}
.my-application--deposit h4 {
  font-size: 20px;
  margin: 0;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-application--deposit h4 {
    font-size: 32px;
  }
}
.my-application--deposit p {
  font-family: "ProximaNova";
}
.my-application--deposit .btn--cta {
  margin: 16px auto 0;
}
@media (min-width: 1024px) {
  .my-application--deposit .btn--cta {
    margin: 24px 0;
  }
}

.edit-application .section-module-grid {
  position: relative;
}
.edit-application .section-module-grid:after {
  content: "";
  border-bottom: #F3F2F1 solid 2px;
  grid-column: 1/span 12;
  grid-row: 1;
  position: absolute;
  width: 100%;
  bottom: -32px;
}
@media (min-width: 768px) {
  .edit-application .section-module-grid:after {
    bottom: -52px;
    grid-column: 1/span 12;
  }
}
@media (min-width: 1024px) {
  .edit-application .section-module-grid:after {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .edit-application .section-module-grid:after {
    grid-column: 4/span 9;
  }
}

.edit-application__button {
  position: relative;
  width: 100%;
}
@media (min-width: 768px) {
  .edit-application__button {
    width: fit-content;
  }
}
@media (min-width: 1280px) {
  .edit-application__button {
    position: absolute;
    top: 0;
    right: 0;
  }
}

.buttons-container {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.my-application__stepLine {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .my-application__stepLine {
    margin-bottom: 32px;
  }
}

.my-application__body {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (min-width: 768px) {
  .my-application__body {
    gap: 40px;
  }
}

.my-application__important_header {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .my-application__important_header {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.my-application__important_header {
  margin-bottom: 24px;
}

.my-application__move-inn {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 768px) {
  .my-application__move-inn {
    gap: 32px;
  }
}

.special-needs {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.universal-design__title {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .universal-design__title {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.universal-design__title {
  margin-bottom: 16px;
}

.universal-design__text {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .universal-design__text {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.universal-design__text {
  margin-bottom: 24px;
}

.laundry-header__container {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .laundry-header__container {
    gap: 64px;
  }
}

.laundry-header__element {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 768px) {
  .laundry-header__element {
    gap: 24px;
  }
}

.laundry-header__heading {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 16px;
}
.laundry-header__heading h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .laundry-header__heading h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.laundry__payment-methods {
  display: grid;
}
.laundry__payment-methods .choosing-inputs__header {
  margin-bottom: -8px;
}

.laundry-form__heading {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .laundry-form__heading {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.laundry-form__heading h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .laundry-form__heading h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.laundry-form__heading {
  display: grid;
  gap: 16px;
}
@media (min-width: 768px) {
  .laundry-form__heading {
    gap: 24px;
  }
}

.laundry__bookings {
  container-type: inline-size;
  position: relative;
}
.laundry__bookings .laundry__booking:not(:last-child) {
  border-bottom: 0;
}
.laundry__bookings .laundry__booking:first-child {
  border-top: 2px solid #262421;
}

.laundry__booking {
  border-block: 2px solid #F3F2F1;
  padding-block: 16px;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
  position: relative;
  display: grid;
  column-gap: 16px;
  align-items: center;
  grid-template-columns: auto 1fr 1fr;
  grid-template-rows: 1fr auto auto;
}
.laundry__booking > * {
  align-self: baseline;
}
@container ( inline-size > 464px) {
  .laundry__booking {
    grid-template-columns: auto 1fr 1fr 1fr;
    grid-template-rows: 1fr auto;
  }
}
@container ( inline-size > 568px) {
  .laundry__booking {
    grid-template-columns: auto repeat(4, 1fr);
  }
}
@container ( inline-size > 700px) {
  .laundry__booking {
    grid-template-columns: auto repeat(5, 1fr);
    grid-template-rows: 1fr;
  }
  .laundry__booking > * {
    align-self: center;
  }
}
@media (min-width: 768px) {
  .laundry__booking {
    column-gap: 24px;
  }
}

.laundry__booking--disabled {
  pointer-events: none;
  opacity: 0.2;
}

.laundry__booking--hidden {
  border-bottom: 2px solid #262421 !important;
  border-top: 2px solid #262421 !important;
}

.laundry__booking--hidden > p,
.laundry__booking--hidden > button {
  pointer-events: none;
  visibility: hidden;
}

.laundry__date {
  grid-column: 1;
  grid-row: 1;
}

.laundry__time {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
  color: #72228E;
  grid-column: 1;
  grid-row: 2;
}
@container ( inline-size > 700px) {
  .laundry__time {
    grid-column: 2;
    grid-row: 1;
  }
}

.laundry__machine {
  grid-column: 2/span 2;
}
@container ( inline-size > 568px) {
  .laundry__machine {
    grid-column: 2/span 3;
  }
}
@container ( inline-size > 700px) {
  .laundry__machine {
    grid-column: 3;
    grid-row: 1;
  }
}

.laundry__detail {
  grid-column: 2/span 2;
}
@container ( inline-size > 568px) {
  .laundry__detail {
    grid-column: 2/span 3;
  }
}
@container ( inline-size > 700px) {
  .laundry__detail {
    grid-column: 4/span 2;
    grid-row: 1;
  }
}

.laundry__cancel {
  grid-column: 1/-1;
  grid-row: 3/span 1;
  width: 100%;
  align-self: flex-start;
  margin-top: 16px;
}
@container ( inline-size > 464px) {
  .laundry__cancel {
    margin-top: 0;
    width: fit-content;
    grid-column: -2/span 1;
    grid-row: 1/span 2;
  }
}
@container ( inline-size > 700px) {
  .laundry__cancel {
    align-self: center;
  }
}

.laundry__cancel-buttons {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
@container ( inline-size > 464px) {
  .laundry__cancel-buttons {
    justify-content: end;
    align-items: center;
    gap: 32px;
    flex-direction: row;
  }
}

.laundry__loading {
  align-self: center;
  margin: auto;
}

.laundry__balance {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .laundry__balance {
    row-gap: 40px;
  }
}

.laundry__intro {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .laundry__intro {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.laundry__intro h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .laundry__intro h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.laundry__intro h3 {
  margin-bottom: 16px;
}

.applications-and-contract--box {
  border-radius: 4px;
  padding: 16px;
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  border: 1px solid #ddd9d5;
}
.applications-and-contract--box:hover {
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
}
.applications-and-contract--box:hover .arrow-right {
  transform: translateX(4px);
}
.applications-and-contract--box:focus {
  background: #f3f2f1;
}
.applications-and-contract--box--icon {
  display: flex;
  align-items: center;
  margin-right: 16px;
}
.applications-and-contract--box--info {
  width: 100%;
}
.applications-and-contract--box--info button {
  width: 100%;
  margin-top: 24px;
}
.applications-and-contract--box--info h4 {
  margin: 0 0 8px 0;
  font-size: 18px;
}
.applications-and-contract--box--info span {
  display: flex;
  justify-content: space-between;
  margin: 8px 0;
}
.applications-and-contract--box--info span :nth-child(2) {
  text-align: right;
}
.applications-and-contract--box--info span p {
  margin: 0;
  white-space: initial;
  font-size: 14px;
}
.applications-and-contract--box--info svg {
  margin-left: auto;
}

.housing-navigation {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .housing-navigation {
    gap: 32px 24px;
  }
}

.housing-navigation__header {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .housing-navigation__header {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}
.housing-navigation__header {
  grid-column: 1/span 12;
}
@media (min-width: 1024px) {
  .housing-navigation__header {
    grid-column: 1/span 3;
  }
}

.housing-navigation__links {
  grid-column: 1/span 12;
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px 24px;
}
@media (min-width: 768px) {
  .housing-navigation__links {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 1024px) {
  .housing-navigation__links {
    grid-template-columns: 1fr 1fr 1fr;
    grid-column: 4/span 9;
  }
}

.error-page {
  padding-bottom: 80px;
  background-color: rgba(248, 229, 255, 0.4);
  padding: 40px 16px;
}
@media (min-width: 768px) {
  .error-page {
    padding: 104px 80px;
  }
}
.error-page {
  width: calc(100vw - 10px);
  max-width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: calc(-50vw + 5px);
  margin-right: calc(-50vw + 5px);
}
.error-page--container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
@media (min-width: 768px) {
  .error-page--container {
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 64px;
  }
}
.error-page--container h1 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .error-page--container h1 {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}
.error-page--container h1 {
  margin-bottom: 40px;
  color: #460A5B;
}
@media (min-width: 768px) {
  .error-page--container h1 {
    margin-bottom: 32px;
  }
}
.error-page--container h2 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .error-page--container h2 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.error-page--container h2 {
  margin-bottom: 12px;
}
.error-page--container p {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .error-page--container p {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.error-page--container p {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .error-page--container p {
    margin-bottom: 16px;
  }
}
.error-page--container .links {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.error-page--container .links a {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .error-page--container .links a {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.error-page--container img {
  justify-self: center;
  width: 100%;
  height: 100%;
  max-width: 300px;
}
@media (min-width: 768px) {
  .error-page--container img {
    max-width: 400px;
  }
}

.student-city-specific__units {
  display: grid;
  gap: 32px;
}
.student-city-specific__units h2 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .student-city-specific__units h2 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.student-city-specific__units p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .student-city-specific__units p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.student-city-specific__units ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.student-city-specific__accordions h2 {
  width: 100%;
  margin-bottom: 1rem;
}
.student-city-specific__accordions ul {
  width: 100%;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .student-city-specific__accordions h4 {
    margin-bottom: 1.5rem;
  }
  .student-city-specific__accordions ul {
    margin-bottom: 2rem;
  }
}

.student-city-specific__link {
  width: 100%;
}
@media (min-width: 768px) {
  .student-city-specific__link {
    width: fit-content;
  }
}

.card-links-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.card-links-list__header .card-links-list__title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .card-links-list__header .card-links-list__title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.card-links-list__header .card-links-list__title {
  margin-bottom: 16px;
}
.card-links-list__header .card-links-list__ingress {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .card-links-list__header .card-links-list__ingress {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.card-links-list__header {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .card-links-list__header {
    margin-bottom: 24px;
  }
}

.card-links-list__list {
  display: flex;
  gap: 24px;
  width: calc(100vw - 32px);
  flex-direction: row;
  overflow-x: scroll;
  padding: 12px;
  margin: -12px;
  scrollbar-width: none;
}
.card-links-list__list::-webkit-scrollbar {
  display: none;
}
@media (min-width: 540px) {
  .card-links-list__list {
    flex-direction: column;
    overflow-x: visible;
    width: 100%;
  }
}

.card-links-list__card {
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.card-links-list__card:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.card-links-list__card:hover a {
  color: inherit;
}
.card-links-list__card:focus, .card-links-list__card:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
.card-links-list__card {
  height: 100%;
  min-width: 70vw;
}
@media (min-width: 540px) {
  .card-links-list__card {
    height: 104px;
    min-width: unset;
    width: 100%;
  }
}
.card-links-list__card a {
  display: flex;
  height: 100%;
  text-decoration: none;
  flex-direction: column;
}
@media (min-width: 540px) {
  .card-links-list__card a {
    flex-direction: row;
    width: 100%;
  }
}
.card-links-list__card a img {
  aspect-ratio: 16/9;
  object-fit: cover;
  height: 104px;
  width: 100%;
}
.card-links-list__card a > div {
  width: 100%;
  padding: 16px;
  padding-right: 24px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
}
.card-links-list__card a > div h4 {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
.card-links-list__card a > div p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.info-page__articles {
  display: flex;
  flex-direction: column;
  row-gap: 40px;
}
@media (min-width: 768px) {
  .info-page__articles {
    row-gap: 64px;
  }
}

.info-page__article {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .info-page__article {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.info-page__article {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}
@media (min-width: 768px) {
  .info-page__article {
    row-gap: 32px;
  }
}
.info-page__article .info-page__article_title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .info-page__article .info-page__article_title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.info-page__article .info-page__article_title {
  margin-bottom: -8px;
}
@media (min-width: 768px) {
  .info-page__article .info-page__article_title {
    margin-bottom: -12px;
  }
}

.info-page__file {
  padding-bottom: 16px;
}

.article_richtext {
  display: grid;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .article_richtext {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.article_richtext p:not(:last-of-type), .article_richtext h3:not(:last-of-type) {
  margin-bottom: 16px;
}
.article_richtext h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .article_richtext h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.article_richtext h3 {
  margin-bottom: 1rem;
}
.article_richtext a {
  display: inline-flex;
}
.article_richtext strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .article_richtext strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.article_richtext ul {
  list-style: disc;
}
.article_richtext ul,
.article_richtext ol {
  padding-left: 24px;
}
.article_richtext ul li:not(:last-child),
.article_richtext ol li:not(:last-child) {
  padding-bottom: 16px;
}
.article_richtext u {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.page-title {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .page-title {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.page-title > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.page-title {
  background-color: rgba(255, 242, 242, 0.4);
  margin-bottom: 64px;
  color: #460A5B;
}
.page-title .page-title-content {
  padding-top: 32px;
  padding-bottom: 32px;
}
@media (min-width: 768px) {
  .page-title .page-title-content {
    padding-top: 104px;
    padding-bottom: 40px;
  }
}
.page-title .page-title-content > div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
}
@media (min-width: 768px) {
  .page-title .page-title-content > div {
    gap: 24px;
  }
}
.page-title .page-title-content > div > h1 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  letter-spacing: -0.005em;
  font-weight: 400;
}
@media (min-width: 768px) {
  .page-title .page-title-content > div > h1 {
    font-size: 2.5rem;
    line-height: 3rem;
  }
}
.page-title .page-title-icon > svg {
  color: #460A5B;
  height: 32px;
  width: 32px;
}
@media (min-width: 768px) {
  .page-title .page-title-icon > svg {
    height: 48px;
    width: 48px;
  }
}

.page-content-container {
  position: relative;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .page-content-container {
    padding-left: 80px;
    padding-right: 80px;
  }
}
.page-content-container > * {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.page-content-container {
  margin-bottom: 64px;
}
@media (min-width: 768px) {
  .page-content-container {
    margin-bottom: 104px;
  }
}
.page-content-container--medium-margin {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .page-content-container--medium-margin {
    margin-bottom: 64px;
  }
}
.page-content-container--no-margin {
  margin-bottom: 0;
}

.info-card-details-header {
  display: flex;
  flex-direction: column;
  grid-column: span 1;
}
.info-card-details-header p {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .info-card-details-header p {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.info-card-details-header h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .info-card-details-header h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 1024px) {
  .info-card-details-header {
    grid-column: span 2;
  }
}

.info-card-details {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.info-box-details-content-elements p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .info-box-details-content-elements p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.info-box-details-content-elements h4 {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .info-box-details-content-elements h4 {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.info-box-details-content {
  display: grid;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .info-box-details-content {
    grid-template-columns: 1fr 1fr;
  }
}
.info-box-details-content {
  gap: 16px;
}

.info-card {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .info-card {
    gap: 32px 24px;
  }
}
.info-card > * {
  grid-column: 1/span 12;
}
.info-card > *:nth-child(2n) .title,
.info-card .body .title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .info-card > *:nth-child(2n) .title,
  .info-card .body .title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.info-card > *:nth-child(2n) .text,
.info-card .body .text {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .info-card > *:nth-child(2n) .text,
  .info-card .body .text {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.info-card > *:nth-child(2n) .content_space,
.info-card .body .content_space {
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .info-card > *:nth-child(2n) .content_space,
  .info-card .body .content_space {
    row-gap: 24px;
  }
}
@media (min-width: 1024px) {
  .info-card > * {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .info-card > *:nth-child(1n),
  .info-card .head {
    grid-column: 1/span 3;
  }
  .info-card > *:nth-child(2n),
  .info-card .body {
    grid-column: 4/span 6;
  }
  .info-card > *:nth-child(3n),
  .info-card .foot {
    grid-column: 10/span 3;
  }
}
.info-card {
  background-color: #ffd8d2;
  border-radius: 10px;
  padding: 40px 0;
  gap: 40px 0;
}
.info-card > * {
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 768px) {
  .info-card > * {
    padding-left: 24px;
    padding-right: 24px;
  }
}
@media (min-width: 1024px) {
  .info-card > * {
    padding-left: 0;
    padding-right: 0;
  }
}
.info-card .info-card-header {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .info-card .info-card-header {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
@media (min-width: 1280px) {
  .info-card .info-card-header {
    padding-left: 64px;
  }
}
.info-card .info-card-subheader {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .info-card .info-card-subheader {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 1280px) {
  .info-card .info-card-details {
    grid-column: 4/span 6;
  }
}
.info-card .info-card-img {
  grid-row: 1/span 1;
  max-width: 300px;
  padding: 0 0 32px;
  align-self: center;
  justify-self: center;
}
@media (min-width: 1280px) {
  .info-card .info-card-img {
    padding: 0 64px 0 0;
  }
}
.info-card .info-card-img img {
  width: 100%;
  max-height: 260px;
}

@media (min-width: 1280px) {
  .info-card__withImg .info-card-details {
    grid-column: 4/span 5;
  }
}
@media (min-width: 1280px) {
  .info-card__withImg .info-card-img {
    grid-column: 9/span 4;
  }
}

.info-card__red {
  background-color: rgba(255, 242, 242, 0.4);
}

.info-card__blue {
  background-color: #f1f3ff;
}

.info-card__green {
  background-color: rgba(241, 243, 255, 0.4);
}

.info-card__dark {
  background-color: #24062F;
  color: #ffffff;
}
.info-card__dark *,
.info-card__dark a {
  color: #ffffff;
}

.info-card__white {
  background-color: #ffffff;
}
@media (min-width: 1280px) {
  .info-card__white .info-card-header {
    padding-left: 0;
  }
}

.info-card__transparent {
  background-color: transparent;
}
.info-card__transparent > * {
  padding-left: 0;
  padding-right: 0;
}
@media (min-width: 768px) {
  .info-card__transparent > * {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1024px) {
  .info-card__transparent > * {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1280px) {
  .info-card__transparent .info-card-header {
    padding-left: 0;
  }
}

.housing-relavant-pages {
  grid-column: 1/span 12;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  align-items: stretch;
}
.housing-relavant-pages h2 {
  grid-column: 1/span 12;
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .housing-relavant-pages h2 {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.housing-relavant-pages h2 {
  padding-bottom: 32px;
}
@media (min-width: 768px) {
  .housing-relavant-pages h2 {
    padding-bottom: 24px;
  }
}
.housing-relavant-pages ul {
  grid-column: 1/span 12;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 16px 12px;
}
.housing-relavant-pages ul li {
  grid-column: auto/span 12;
}
@media (min-width: 768px) {
  .housing-relavant-pages ul li {
    grid-column: auto/span 6;
  }
}
@media (min-width: 1024px) {
  .housing-relavant-pages ul li {
    grid-column: auto/span 4;
  }
}

.block-link {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  text-decoration: none;
  padding: 16px;
  color: #24062F;
  outline: 0;
  cursor: pointer;
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.block-link:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.block-link:hover a {
  color: inherit;
}
.block-link:focus, .block-link:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
@media (min-width: 768px) {
  .block-link {
    padding: 24px;
    row-gap: 16px;
  }
}
.block-link > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.block-link > div h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .block-link > div h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.block-link > div h3 {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.block-link > div .icon {
  background-color: #EEBFFF;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.block-link > div .icon path {
  stroke: #24062F;
  stroke-width: 1px;
}
@media (min-width: 768px) {
  .block-link > div .icon path {
    stroke-width: 2px;
  }
}
.block-link p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .block-link p {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.block-link p {
  width: 100%;
}

.my-apartment h2 {
  font-size: 24px;
}
.my-apartment--internal--tenancy h2 {
  font-size: 18px;
}
@media (min-width: 1024px) {
  .my-apartment--internal--tenancy h2 {
    font-size: 22px;
  }
}
.my-apartment--internal .container {
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  border-radius: 8px;
}
.my-apartment--internal .container > div {
  cursor: pointer;
  padding: 12px 24px;
  display: flex;
  align-items: center;
}
.my-apartment--internal .container > div:hover {
  background-color: #F1F3FF;
}
.my-apartment--internal .container > div .icon {
  margin-right: 24px;
  flex-shrink: 0;
}
.my-apartment--internal .container > div div p {
  margin: 0;
}
.my-apartment--internal .container > div div p:nth-child(2) {
  font-family: "ProximaNova";
}
.my-apartment--internal .container > div .status {
  margin-left: auto;
  display: flex;
  align-items: center;
}
.my-apartment--internal .container > div .status p {
  font-family: "Space Mono", "monospace";
  display: none;
}
@media (min-width: 1024px) {
  .my-apartment--internal .container > div .status p {
    display: block;
  }
}
.my-apartment--approved h1 {
  font-size: 28px;
  font-family: "SuisseWorksBold";
  margin: 24px 0;
}
@media (min-width: 1024px) {
  .my-apartment--approved h1 {
    font-size: 46px;
    max-width: 708px;
    margin: auto;
  }
}
.my-apartment .qna {
  font-size: 20px;
  font-family: "ProximaNova";
}
@media (min-width: 1024px) {
  .my-apartment .qna {
    font-size: 32px;
    max-width: 708px;
    margin: auto;
  }
}
.my-apartment .remove-application {
  display: block;
  margin: 24px auto;
  text-decoration: underline;
  color: #D3301C;
  font-family: "Space Mono", "monospace";
  cursor: pointer;
  text-align: center;
}
.my-apartment .relevant-pages {
  margin-bottom: 40px;
}
.my-apartment .relevant-pages ul {
  padding: 0;
  display: grid;
}
@media (min-width: 1024px) {
  .my-apartment .relevant-pages ul {
    grid-template-columns: auto auto;
    gap: 16px;
  }
}
.my-apartment .relevant-pages ul li {
  margin: 0 0 16px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px -2px #d2d2d2;
  padding: 24px 16px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.my-apartment .relevant-pages ul li:hover {
  background: #F1F3FF;
}
@media (min-width: 1024px) {
  .my-apartment .relevant-pages ul li {
    margin: 0;
  }
}
.my-apartment .relevant-pages ul li svg {
  flex-shrink: 0;
}
.my-apartment .relevant-pages ul li svg.arrow-right {
  margin-left: auto;
}
.my-apartment .relevant-pages ul li p {
  margin: 0;
  font-family: "SuisseWorksBold";
  font-size: 20px;
  margin-left: 24px;
}

.finance {
  display: grid;
  row-gap: 40px;
}
@media (min-width: 768px) {
  .finance {
    row-gap: 64px;
  }
}

.finance__label {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}
.finance__label > p {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .finance__label > p {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.finance__bills > ul {
  display: grid;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .finance__bills > ul {
    row-gap: 40px;
  }
}

.finance__accounts {
  display: grid;
  row-gap: 32px;
}
@media (min-width: 768px) {
  .finance__accounts {
    row-gap: 40px;
  }
}

.account {
  border-radius: 10px;
  padding: 16px;
  background-color: #F8E5FF;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .account {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .account {
    padding: 24px;
    gap: 24px;
  }
}

.bill {
  border-radius: 10px;
  padding: 24px;
  background-color: #ffffff;
  display: grid;
  gap: 16px;
}

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

.bill__number {
  font-size: 0.75rem;
  line-height: 1rem;
  font-family: "SpaceMono", monospace;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
}
@media (min-width: 768px) {
  .bill__number {
    flex-direction: row;
    gap: 8px;
  }
}

.bill__body {
  display: grid;
  row-gap: 16px;
}

.bill__detail {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.bill__detail span {
  min-width: max-content;
}
.bill__detail {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .bill__detail {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.bill__detail--bold {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .bill__detail--bold {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}

.bill__footer {
  display: flex;
  flex-direction: column-reverse;
  align-items: stretch;
  justify-content: space-between;
  row-gap: 24px;
  padding: 24px 0 8px;
  border-top: 1px solid #F3F2F1;
}
@media (min-width: 768px) {
  .bill__footer {
    align-items: center;
    flex-direction: row;
  }
}

.bill__pay {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: stretch;
}
.bill__pay > * {
  width: auto;
}
@media (min-width: 768px) {
  .bill__pay {
    flex-direction: row;
    align-items: center;
  }
}

.archive__year-wrapper {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .archive__year-wrapper {
    gap: 32px 24px;
  }
}
.archive__year-wrapper {
  row-gap: 0;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .archive__year-wrapper {
    row-gap: 0;
    margin-bottom: 64px;
  }
}

.archive__year {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .archive__year {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.archive__year {
  grid-column: 1/span 12;
  padding-block: 16px;
  border-top: solid 2px #262421;
  border-bottom: solid 2px #262421;
  height: fit-content;
}
@media (min-width: 1280px) {
  .archive__year {
    grid-column: 1/span 3;
    border-bottom: solid 2px #F3F2F1;
    padding-block: 24px;
  }
}

.archive__invoices {
  display: grid;
  grid-column: 1/span 12;
}
@media (min-width: 1280px) {
  .archive__invoices {
    grid-column: 4/span 9;
    border-top: solid 2px #262421;
  }
}

.archive__invoice {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px 16px;
}
@media (min-width: 768px) {
  .archive__invoice {
    gap: 32px 24px;
  }
}
.archive__invoice {
  row-gap: 0;
  padding-block: 16px;
  border-bottom: solid 2px #F3F2F1;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .archive__invoice {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.invoice__date {
  grid-column: 1/span 6;
  grid-row: 1/span 1;
}
@media (min-width: 480px) {
  .invoice__date {
    grid-column: 1/span 3;
    grid-row: 1/span 2;
    display: flex;
    justify-content: start;
    align-items: center;
  }
}

.document__date {
  grid-column: 1/span 6;
  grid-row: 1/span 1;
}
@media (min-width: 480px) {
  .document__date {
    grid-column: 1/span 3;
    grid-row: 1/span 2;
    display: flex;
    justify-content: start;
    align-items: center;
  }
}

.invoice__type {
  width: min-content;
  grid-column: 1/span 6;
  grid-row: 2/span 1;
}
@media (min-width: 480px) {
  .invoice__type {
    grid-column: 4/span 3;
    grid-row: 1/span 2;
    display: flex;
    justify-content: start;
    align-items: center;
  }
}

.invoice__amount {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .invoice__amount {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.invoice__amount {
  grid-column: -7/span 6;
  grid-row: 1/span 2;
  display: flex;
  justify-content: end;
  align-items: center;
}

.invoice__download {
  grid-column: -1/span 2;
  grid-row: 1/span 2;
  height: 100%;
}
.invoice__download span {
  display: none;
}
@media (min-width: 768px) {
  .invoice__download span {
    display: inline;
  }
}

.archive--filter {
  grid-column: 1/span 12;
}
.archive--filter > h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .archive--filter > h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.archive--filter > h3 {
  margin-bottom: 24px;
}
.archive--filter > p {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .archive--filter > p {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.archive--filter > p {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .archive--filter > h3 {
    margin-bottom: 16px;
  }
  .archive--filter > p {
    margin-bottom: 32px;
  }
}
.archive--filter .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .archive--filter .container {
    flex-direction: row;
    gap: 24px;
  }
}
.archive--filter .results {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}

.archive--loader {
  grid-column: 1/span 12;
}
@media (min-width: 1024px) {
  .archive--loader {
    grid-column: 3/span 8;
  }
}
@media (min-width: 1280px) {
  .archive--loader {
    grid-column: 4/span 6;
  }
}
.archive--loader {
  display: flex;
  justify-content: center;
  align-items: center;
}

.noResults {
  width: 100%;
  padding-block: 104px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  /*background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='lightgray' stroke-width='2' stroke-dasharray='7' stroke-dashoffset='0' stroke-linecap='butt'/%3e%3c/svg%3e");*/
}
.noResults figure {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 32px;
}
.noResults figure figcaption {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .noResults figure figcaption {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.noResults figure figcaption {
  color: #605953;
}

.move-out__todo {
  list-style: none;
  display: grid;
  gap: 32px;
}
@media (min-width: 768px) {
  .move-out__todo {
    gap: 40px;
  }
}
.move-out__todo li {
  display: grid;
}
.move-out__todo li h2 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .move-out__todo li h2 {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.move-out__todo li h2 {
  margin-bottom: 1rem;
}
.move-out__todo li {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .move-out__todo li {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.move-out__todo li > p {
  margin-bottom: 24px;
}
.move-out__todo li > p:has(strong) {
  margin-bottom: 0;
}
.move-out__todo li p strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .move-out__todo li p strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.move-out__todo li a {
  color: #61177B;
}
.move-out__todo li ul {
  list-style-type: disc;
  padding-left: 24px;
}
.move-out__todo li ul li {
  display: list-item;
}
.move-out__todo li ul li p, .move-out__todo li ul li p:first-of-type {
  margin-bottom: 0;
}
.move-out__todo li ul li:last-of-type {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .move-out__todo li h2 {
    margin-bottom: 24px;
  }
}

.move-out__dropdowns {
  display: grid;
  gap: 24px;
}

.move-out__deactivation {
  display: grid;
}
.move-out__deactivation h2 {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .move-out__deactivation h2 {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}
.move-out__deactivation h2 {
  margin-bottom: 1rem;
}
.move-out__deactivation {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .move-out__deactivation {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.move-out__deactivation > p {
  margin-bottom: 24px;
}
.move-out__deactivation > p:has(strong) {
  margin-bottom: 0;
}
.move-out__deactivation p strong {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .move-out__deactivation p strong {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.move-out__deactivation a {
  color: #61177B;
}
.move-out__deactivation ul {
  list-style-type: disc;
  padding-left: 24px;
}
.move-out__deactivation ul li {
  display: list-item;
}
.move-out__deactivation ul li p, .move-out__deactivation ul li p:first-of-type {
  margin-bottom: 0;
}
.move-out__deactivation ul li:last-of-type {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .move-out__deactivation h2 {
    margin-bottom: 24px;
  }
}
.move-out__deactivation > p:first-of-type {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .move-out__deactivation > p:first-of-type {
    margin-bottom: 0;
  }
}

.move-out__buttons {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

.problems__title {
  font-family: "ProximaNovaBold", sans-serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
}
@media (min-width: 768px) {
  .problems__title {
    font-size: 2rem;
    line-height: 2.75rem;
  }
}

.problems__list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
@media (min-width: 1280px) {
  .problems__list {
    gap: 24px 16px;
  }
}
.problems__list {
  margin-bottom: 24px;
}

.problems__solution {
  display: grid;
  row-gap: 24px;
}
@media (min-width: 768px) {
  .problems__solution {
    row-gap: 32px;
  }
}

.problems__sub-solution {
  display: grid;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .problems__sub-solution {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.problems__sub-solution p:not(:last-of-type), .problems__sub-solution h3:not(:last-of-type) {
  margin-bottom: 16px;
}
.problems__sub-solution h3 {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .problems__sub-solution h3 {
    font-size: 1.375rem;
    line-height: 2rem;
  }
}
.problems__sub-solution h3 {
  margin-bottom: 1rem;
}
.problems__sub-solution a {
  display: inline-flex;
}
.problems__sub-solution strong {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNovaBold", sans-serif;
}
@media (min-width: 768px) {
  .problems__sub-solution strong {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.problems__sub-solution ul {
  list-style: disc;
}
.problems__sub-solution ul,
.problems__sub-solution ol {
  padding-left: 24px;
}
.problems__sub-solution ul li:not(:last-child),
.problems__sub-solution ol li:not(:last-child) {
  padding-bottom: 16px;
}
.problems__sub-solution u {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.problems__video-wrapper {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}
.problems__video-wrapper:after {
  content: "";
  position: absolute;
  top: 30px;
  left: 30px;
  width: 60px;
  height: 60px;
  z-index: 100;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect opacity='0.5' x='1' y='1' width='78' height='78' fill='%23161822' stroke='%23161822' stroke-width='2'/%3E%3Cg filter='url(%23filter0_d_7425_314549)'%3E%3Cpath d='M64 40L28 60.7846L28 19.2154L64 40Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3Cfilter id='filter0_d_7425_314549' x='24' y='19.2188' width='44' height='49.5625' filterUnits='userSpaceOnUse' color-interpolation-filters='sRGB'%3E%3CfeFlood flood-opacity='0' result='BackgroundImageFix'/%3E%3CfeColorMatrix in='SourceAlpha' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0' result='hardAlpha'/%3E%3CfeOffset dy='4'/%3E%3CfeGaussianBlur stdDeviation='2'/%3E%3CfeComposite in2='hardAlpha' operator='out'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0'/%3E%3CfeBlend mode='normal' in2='BackgroundImageFix' result='effect1_dropShadow_7425_314549'/%3E%3CfeBlend mode='normal' in='SourceGraphic' in2='effect1_dropShadow_7425_314549' result='shape'/%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E%0A");
}

.problems__video {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 10px;
}

.problems__dropdowns {
  display: grid;
  row-gap: 24px;
}

.problems__image {
  margin-top: 24px;
  margin-bottom: 24px;
}

.caretaker__inputs {
  display: grid;
  row-gap: 24px;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .caretaker__inputs {
    row-gap: 32px;
    margin-bottom: 64px;
  }
}

.caretaker__uploads {
  display: grid;
  gap: 4px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
.caretaker__uploads li {
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 4px;
}
.caretaker__uploads li svg path {
  stroke-width: 1px;
}

.notifications,
.processes {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.navigation-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 16px 16px 16px;
  text-decoration: none;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 400;
  font-family: "ProximaNova", sans-serif;
}
@media (min-width: 768px) {
  .navigation-card {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}
.navigation-card {
  color: #24062F;
  box-shadow: 0 0 12px -2px rgba(32, 29, 26, 0.15);
  transition: transform 0.2s ease-in-out;
  border-radius: 10px;
  background-color: #ffffff;
  overflow: hidden;
}
.navigation-card:hover {
  box-shadow: 0 4px 12px -2px rgba(32, 29, 26, 0.2);
  transform: translateY(-4px);
}
.navigation-card:hover a {
  color: inherit;
}
.navigation-card:focus, .navigation-card:focus-within {
  box-shadow: 0 0 0 2px #24062F;
  outline: none !important;
}
.navigation-card .navigation-card__icon,
.navigation-card .navigation-card__arrow {
  display: flex;
  justify-content: center;
  align-items: center;
}
.navigation-card .navigation-card__icon svg path,
.navigation-card .navigation-card__arrow svg path {
  stroke: currentColor;
}
.navigation-card .navigation-card__icon {
  padding-right: 8px;
}
.navigation-card .navigation-card__title {
  text-align: left;
  width: 100%;
}
.navigation-card:hover {
  color: #24062F;
}
.navigation-card.disabled {
  color: rgba(36, 6, 47, 0.4);
  pointer-events: none;
}
@media (min-width: 768px) {
  .navigation-card {
    padding: 24px 24px 24px 24px;
  }
  .navigation-card .navigation-card__icon {
    padding-right: 16px;
  }
  .navigation-card .navigation-card__arrow svg {
    width: 32px;
    height: 32px;
  }
}

.dev-menu {
  display: none;
  display: flex;
  justify-content: space-evenly;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  background-color: plum;
  color: purple;
  border: purple 5px dashed;
  padding: 20px;
  position: fixed;
  top: 135px;
  right: 69px;
  z-index: 1000;
}
.dev-menu::before {
  content: "develeper menu";
  font-size: 8px;
  color: purple;
  text-transform: uppercase;
  position: absolute;
  top: -20px;
}

.space-xs4,
.space-xs3,
.space-xs2,
.space-s,
.space-m,
.space-l,
.space-xl,
.space-xl2,
.space-xl3,
.space-xl4 {
  width: 100%;
}

.space-xs4 {
  height: 1px;
}
@media (min-width: 768px) {
  .space-xs4 {
    height: 4px;
  }
}

.space-xs3 {
  height: 2px;
}
@media (min-width: 768px) {
  .space-xs3 {
    height: 4px;
  }
}

.space-xs2 {
  height: 4px;
}
@media (min-width: 768px) {
  .space-xs2 {
    height: 8px;
  }
}

.space-s {
  height: 12px;
}
@media (min-width: 768px) {
  .space-s {
    height: 16px;
  }
}

.space-m {
  height: 16px;
}
@media (min-width: 768px) {
  .space-m {
    height: 24px;
  }
}

.space-l {
  height: 24px;
}
@media (min-width: 768px) {
  .space-l {
    height: 32px;
  }
}

.space-xl {
  height: 32px;
}
@media (min-width: 768px) {
  .space-xl {
    height: 40px;
  }
}

.space-xl2 {
  height: 40px;
}
@media (min-width: 768px) {
  .space-xl2 {
    height: 64px;
  }
}

.space-xl3 {
  height: 64px;
}
@media (min-width: 768px) {
  .space-xl3 {
    height: 104px;
  }
}

.space-xl4 {
  height: 104px;
}
@media (min-width: 768px) {
  .space-xl4 {
    height: 160px;
  }
}

.mb-xs4 {
  margin-bottom: 1px;
}
@media (min-width: 768px) {
  .mb-xs4 {
    margin-bottom: 4px;
  }
}

.mb-xs3 {
  margin-bottom: 2px;
}
@media (min-width: 768px) {
  .mb-xs3 {
    margin-bottom: 4px;
  }
}

.mb-xs2 {
  margin-bottom: 4px;
}
@media (min-width: 768px) {
  .mb-xs2 {
    margin-bottom: 8px;
  }
}

.mb-s {
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .mb-s {
    margin-bottom: 16px;
  }
}

.mb-m {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .mb-m {
    margin-bottom: 24px;
  }
}

.mb-l {
  margin-bottom: 24px;
}
@media (min-width: 768px) {
  .mb-l {
    margin-bottom: 32px;
  }
}

.mb-xl {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .mb-xl {
    margin-bottom: 40px;
  }
}

.mb-xl2 {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .mb-xl2 {
    margin-bottom: 64px;
  }
}

.mb-xl3 {
  margin-bottom: 64px;
}
@media (min-width: 768px) {
  .mb-xl3 {
    margin-bottom: 104px;
  }
}

.mb-xl4 {
  margin-bottom: 104px;
}
@media (min-width: 768px) {
  .mb-xl4 {
    margin-bottom: 160px;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.no-br {
  white-space: nowrap;
}

.place-center {
  display: flex;
  place-content: center;
}

.grid-gap {
  display: grid;
  gap: 16px;
}
@media (min-width: 768px) {
  .grid-gap {
    gap: 24px;
  }
}

.bullet-list {
  list-style: disc;
  padding-left: 24px;
}
.bullet-list li:not(:last-child) {
  padding-bottom: 12px;
}

.not-sr-only {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.display-block {
  display: block;
}

.display-none {
  display: none;
}

.shown {
  display: block;
}

.hidden {
  display: none !important;
}

.disabled {
  pointer-events: none;
  opacity: 0.6;
}

.invisible {
  position: absolute;
  left: -10000vw;
}

.backdrop {
  background-color: rgba(36, 6, 47, 0.75);
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 100000;
}

#blazor-error-ui {
  background: lightyellow;
  bottom: 0;
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  padding: 0.6rem 1.25rem 0.7rem 1.25rem;
  position: fixed;
  width: 100%;
  z-index: 1000;
}

#blazor-error-ui .dismiss {
  cursor: pointer;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem;
}

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