@charset "UTF-8";
/* Un-Float mobile item toggles */
.main-navigation.toggled .menu-item-has-children .dropdown-menu-toggle {
  float: none !important;
  padding-left: 10px;
}
.main-navigation.toggled .menu-item-has-children .dropdown-menu-toggle .icon-arrow {
  transform: scale(1.25);
}

footer {
  /* Menu link styling */
}
footer .wp-block-navigation li a {
  text-decoration: underline;
  transition: 250ms ease-in-out;
  color: var(--wiro-red) !important;
}
footer .wp-block-navigation li a:not([href^="https://wohnungssuche.wiro.de"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
footer .wp-block-navigation li a:not([href^="https://wohnungssuche.wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
footer .wp-block-navigation li a:hover {
  color: var(--wiro-black) !important;
}

/* External buttons */
.gb-button.wiro-btn-white, .gb-button.wiro-btn-filled, button.wiro-btn-white, button.wiro-btn-filled, a.wiro-btn-white, a.wiro-btn-filled {
  /** Grab all buttons with URLs **/
}
.gb-button.wiro-btn-white[href^=http], .gb-button.wiro-btn-filled[href^=http], button.wiro-btn-white[href^=http], button.wiro-btn-filled[href^=http], a.wiro-btn-white[href^=http], a.wiro-btn-filled[href^=http] {
  /* Completely external URLs */
}
.gb-button.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, .gb-button.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, button.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, button.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, a.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, a.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after {
  content: "🡽";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 0.5rem;
}
.gb-button.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, .gb-button.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, button.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, button.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, a.wiro-btn-white[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, a.wiro-btn-filled[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
.gb-button.wiro-btn-white[href^=http], .gb-button.wiro-btn-filled[href^=http], button.wiro-btn-white[href^=http], button.wiro-btn-filled[href^=http], a.wiro-btn-white[href^=http], a.wiro-btn-filled[href^=http] {
  /* WIRO (sub)domains ("cosmos") */
}
.gb-button.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, .gb-button.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, button.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, button.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, a.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, a.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.gb-button.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, .gb-button.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, button.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, button.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, a.wiro-btn-white[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, a.wiro-btn-filled[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
.gb-button.wiro-btn-link, button.wiro-btn-link, a.wiro-btn-link {
  text-decoration: underline;
  /** Grab all buttons with URLs **/
}
.gb-button.wiro-btn-link[href^=http], button.wiro-btn-link[href^=http], a.wiro-btn-link[href^=http] {
  /* Completely external URLs */
}
.gb-button.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, button.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, a.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after {
  content: "🡽";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 0.5rem;
}
.gb-button.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, button.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, a.wiro-btn-link[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
.gb-button.wiro-btn-link[href^=http], button.wiro-btn-link[href^=http], a.wiro-btn-link[href^=http] {
  /* WIRO (sub)domains ("cosmos") */
}
.gb-button.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, button.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, a.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.gb-button.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, button.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, a.wiro-btn-link[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
.gb-button.wiro-btn-filled::after, button.wiro-btn-filled::after, a.wiro-btn-filled::after {
  color: var(--wiro-white) !important;
}
.gb-button.wiro-btn-filled:hover::after, button.wiro-btn-filled:hover::after, a.wiro-btn-filled:hover::after {
  color: var(--wiro-white) !important;
}
.gb-button.wiro-btn-link-icon-right, button.wiro-btn-link-icon-right, a.wiro-btn-link-icon-right {
  width: auto !important;
  cursor: pointer;
}
.gb-button.wiro-btn-link-icon-right .file-info, button.wiro-btn-link-icon-right .file-info, a.wiro-btn-link-icon-right .file-info {
  order: 2;
  color: var(--wiro-black);
  font-size: 1rem;
}
.gb-button.wiro-btn-link-icon-right .gb-button-text, button.wiro-btn-link-icon-right .gb-button-text, a.wiro-btn-link-icon-right .gb-button-text {
  text-decoration: underline;
}
.gb-button.wiro-btn-link-icon-right:hover .file-info, button.wiro-btn-link-icon-right:hover .file-info, a.wiro-btn-link-icon-right:hover .file-info {
  text-decoration: none !important;
}
.gb-button.wiro-btn-link-icon-right:hover.wiro-btn-link-download::after, button.wiro-btn-link-icon-right:hover.wiro-btn-link-download::after, a.wiro-btn-link-icon-right:hover.wiro-btn-link-download::after {
  transform: scale(1.15);
  transform-origin: center center;
  color: var(--wiro-black);
}
.gb-button.wiro-btn-link-icon-right.wiro-btn-link-download::after, button.wiro-btn-link-icon-right.wiro-btn-link-download::after, a.wiro-btn-link-icon-right.wiro-btn-link-download::after {
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="%23E1001A"><path d="M7 10.5L2.625 6.125L3.85 4.85625L6.125 7.13125V0H7.875V7.13125L10.15 4.85625L11.375 6.125L7 10.5ZM1.75 14C1.26875 14 0.856771 13.8286 0.514062 13.4859C0.171354 13.1432 0 12.7312 0 12.25V9.625H1.75V12.25H12.25V9.625H14V12.25C14 12.7312 13.8286 13.1432 13.4859 13.4859C13.1432 13.8286 12.7312 14 12.25 14H1.75Z"/></svg>');
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 10px;
}

p a, .wp-block-list a {
  text-decoration: underline;
  /** Grab all buttons with URLs **/
}
p a[href^=http], .wp-block-list a[href^=http] {
  /* Completely external URLs */
}
p a[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after, .wp-block-list a[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"])::after {
  content: "🡽";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 0.5rem;
}
p a[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after, .wp-block-list a[href^=http]:not([href^="https://wohnungssuche.wiro.de"]):not([href*="wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
p a[href^=http], .wp-block-list a[href^=http] {
  /* WIRO (sub)domains ("cosmos") */
}
p a[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after, .wp-block-list a[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
p a[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after, .wp-block-list a[href^=http][href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}
p a:hover, .wp-block-list a:hover {
  text-decoration: underline !important;
}

.wiro-newsletter-cta .cta-title-text {
  font-family: "Crete Round", serif;
  font-size: 2.5rem;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 2.25rem;
}
@media (max-width: 1024px) {
  .wiro-newsletter-cta .cta-title-text {
    font-family: "Crete Round", serif;
    font-size: 1.875rem;
  }
}
@media (max-width: 380px) {
  .wiro-newsletter-cta .cta-title-text {
    font-family: "Crete Round", serif;
    font-size: 1.6rem;
  }
}

nav .after-mobile-menu {
  order: 5;
  display: none;
}
nav .after-mobile-menu a {
  font-size: 1.125rem !important;
}
nav.toggled .after-mobile-menu {
  display: block;
}

.wp-block-list {
  margin: 0 0 1.5rem 1.4rem;
}
.wp-block-list li {
  margin-bottom: 0.6rem;
  line-height: 1.875rem;
}

/* stylelint-disable selector-class-pattern */
/**
 * Mega Forms - beautify checkboxes
 * This is based on https://moderncss.dev/pure-css-custom-checkbox-style/
 **/
:root {
  --form-control-disabled: rgb(116, 116, 116);
}

.mf_progressbar_percentage.percentbar_blue {
  background: rgb(0, 0, 0) !important;
  color: rgb(255, 255, 255);
}

ul.mf-checkboxes li label--disabled,
ul.mf-radios li label--disabled {
  color: var(--form-control-disabled);
  cursor: not-allowed;
}

/****** Pretty Checkboxes ******/
.mform_body .mf_input_consent > label > span {
  display: block;
  margin-left: 2.2em;
}
.mform_body .mfield {
  padding: 0 0 1em;
}
.mform_body .mfield h3 {
  margin: 0;
}
.mform_body .mfield {
  /****** Regular checkboxes ******/
}
.mform_body .mfield input[type=checkbox],
.mform_body .mfield input[type=radio] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  -moz-appearance: none;
  appearance: none;
  /* For iOS < 15 */
  background-color: rgb(255, 255, 255);
  /* Not removed via appearance */
  margin: 0;
  font: inherit;
  color: currentcolor;
  width: 1.75em;
  height: 1.75em;
  border: 0.1em solid currentcolor;
  border-radius: 0.1em;
  transform: translateY(-0.075em);
  display: grid;
  place-content: center;
  float: left;
  min-height: initial;
}
.mform_body .mfield input[type=checkbox]::before,
.mform_body .mfield input[type=radio]::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  -webkit-clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em rgb(0, 0, 0);
  /* Windows High Contrast Mode */
  background-color: canvastext;
}
.mform_body .mfield input[type=checkbox]:checked::before,
.mform_body .mfield input[type=radio]:checked::before {
  transform: scale(1);
  /* Prevent theme overrides */
  position: relative !important;
  display: block !important;
  margin: inherit !important;
}
.mform_body .mfield input[type=checkbox]:disabled,
.mform_body .mfield input[type=radio]:disabled {
  color: var(--form-control-disabled);
  cursor: not-allowed;
}
.mform_body .mfield.pretty-selection {
  /* Hide default checkbox/radio element */
}
.mform_body .mfield.pretty-selection input[type=checkbox],
.mform_body .mfield.pretty-selection input[type=radio] {
  display: none;
}
.mform_body .mfield.pretty-selection input[type=checkbox] span,
.mform_body .mfield.pretty-selection input[type=radio] span {
  background-color: rgb(216, 216, 216);
  color: rgb(0, 0, 0);
  border-radius: 1em;
  padding: 1em;
  cursor: pointer;
}
.mform_body .mfield.pretty-selection input[type=checkbox]:checked span,
.mform_body .mfield.pretty-selection input[type=radio]:checked span {
  background-color: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}
.mform_body .mfield.pretty-selection {
  /* Align elements next to each other */
}
.mform_body .mfield.pretty-selection .mf_input_checkboxes ul,
.mform_body .mfield.pretty-selection .mf_input_radios ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em;
}
.mform_body .mfield.pretty-selection .mf_input_checkboxes ul li,
.mform_body .mfield.pretty-selection .mf_input_radios ul li {
  padding: 1em 0;
}

@media (max-width: 767px) {
  .mform_body input[type=radio] {
    margin-bottom: 25px;
  }
}
.wpcf7-form input[type=email], .wpcf7-form input[type=number], .wpcf7-form input[type=password], .wpcf7-form input[type=search], .wpcf7-form input[type=tel], .wpcf7-form input[type=text], .wpcf7-form input[type=url], .wpcf7-form select, .wpcf7-form textarea {
  border: 1px solid #706F6F;
  box-sizing: border-box;
  color: var(--wiro-black);
  padding: 0.5rem 0.75rem;
  transition: border-color 0.3s, box-shadow 0.3s;
  width: 100%;
  background-color: #fff;
}
.wpcf7-form input[type=email]:focus, .wpcf7-form input[type=number]:focus, .wpcf7-form input[type=password]:focus, .wpcf7-form input[type=search]:focus, .wpcf7-form input[type=tel]:focus, .wpcf7-form input[type=text]:focus, .wpcf7-form input[type=url]:focus, .wpcf7-form select:focus, .wpcf7-form textarea:focus {
  box-shadow: 0 0 0 3px rgba(225, 0, 26, 0.2);
  outline: none;
}
.wpcf7-form select {
  max-width: 262px;
  color: #706F6F !important;
}
.wpcf7-form select option {
  color: #000 !important;
}
.wpcf7-form .col-2-field {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
.wpcf7-form .col-2-field.address-field {
  grid-template-columns: 35% 1fr;
}
@media (max-width: 600px) {
  .wpcf7-form .col-2-field {
    grid-template-columns: 1fr !important;
    gap: 0;
  }
}
.wpcf7-form p {
  margin-bottom: 1.25rem;
}
.wpcf7-form p label {
  font-size: 1.125rem;
  font-weight: 700;
}
.wpcf7-form p label .wpcf7-list-item-label {
  font-weight: 400;
}
.wpcf7-form p input, .wpcf7-form p textarea, .wpcf7-form p select {
  margin-top: 0.5rem;
}
.wpcf7-form .required {
  color: #9747FF;
  padding-left: 4px;
}
.wpcf7-form .wpcf7-list-item {
  margin-left: 0 !important;
}
.wpcf7-form {
  /****** Regular checkboxes ******/
}
.wpcf7-form input[type=checkbox],
.wpcf7-form input[type=radio] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  -moz-appearance: none;
  appearance: none;
  /* For iOS < 15 */
  background-color: rgb(255, 255, 255);
  /* Not removed via appearance */
  margin: 0;
  font: inherit;
  color: #706F6F;
  width: 2.5rem;
  height: 2.5rem;
  border: 0.1em solid currentcolor;
  border-radius: 0.1em;
  transform: translateY(-0.075em);
  display: grid;
  place-content: center;
  float: left;
  min-height: initial;
}
.wpcf7-form input[type=checkbox]::before,
.wpcf7-form input[type=radio]::before {
  content: "";
  width: 1.15em;
  height: 1.15em;
  -webkit-clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 120ms transform ease-in-out;
  box-shadow: inset 1em 1em #E1001A;
  /* Windows High Contrast Mode */
  background-color: canvastext;
}
.wpcf7-form input[type=checkbox]:checked::before,
.wpcf7-form input[type=radio]:checked::before {
  transform: scale(1);
  /* Prevent theme overrides */
  position: relative !important;
  display: block !important;
}
.wpcf7-form input[type=checkbox]:disabled,
.wpcf7-form input[type=radio]:disabled {
  color: var(--form-control-disabled);
  cursor: not-allowed;
}
.wpcf7-form .wpcf7-acceptance, .wpcf7-form .acceptance-field {
  margin-top: 3rem;
}
.wpcf7-form .wpcf7-acceptance label, .wpcf7-form .acceptance-field label {
  display: grid;
  grid-template-columns: 2.5rem 1fr;
  gap: 1rem;
}
.wpcf7-form .wpcf7-submit {
  border-radius: 5px;
}

/* Prevent scrollbars resulting from animated containers */
html,
body {
  overflow-x: hidden;
}

/* Default page headings */
.page-heading-container .gb-headline {
  max-width: 900px;
}

/* Default typography on regular pages */
.default-page-content {
  max-width: 955px;
  margin-left: auto;
  margin-right: auto;
}
.default-page-content h2:first-child {
  margin-top: 4rem;
}
.default-page-content h2 {
  margin-top: 3.333rem;
  margin-bottom: 2.5rem;
}
.default-page-content h3 {
  margin-top: 3rem;
  margin-bottom: 2rem;
}
.default-page-content h4, .default-page-content h5, .default-page-content h6 {
  margin-top: 2.75rem;
  margin-bottom: 1.5rem;
}
.default-page-content ul:not(.mform_fields), .default-page-content ol {
  margin: 1.5rem 0 1.5rem 1.5rem;
}
.default-page-content a[href^=http]:not([href^="https://wiro.qbus.dev"]) {
  /* Give the icon a bit of room */
  padding-right: 0.25rem;
}
.default-page-content a[href^=http]:not([href^="https://wiro.qbus.dev"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.default-page-content a[href^=http]:not([href^="https://wiro.qbus.dev"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}

#featured-posts-api-response {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  max-width: 1140px;
  margin: 0 auto;
}
#featured-posts-api-response .loader {
  width: 48px;
  height: 48px;
  border: 3px solid var(--wiro-dark-grey);
  border-radius: 50%;
  display: block;
  margin: 2rem auto 0;
  position: relative;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}
#featured-posts-api-response .loader::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 3px solid transparent;
  border-bottom-color: var(--wiro-red);
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#featured-posts-api-response #loadingMessage {
  display: block;
  text-align: center;
  padding-bottom: 2rem;
  width: 100%;
}
@media (max-width: 1023px) {
  #featured-posts-api-response {
    max-width: 554px;
  }
}
#featured-posts-api-response {
  /* Regular Posts */
}
#featured-posts-api-response .fetchedPost {
  display: flex;
  align-items: center;
  text-decoration: none;
  opacity: 0;
}
@media (max-width: 1023px) {
  #featured-posts-api-response .fetchedPost {
    width: 100%;
  }
}
#featured-posts-api-response .fetchedPost {
  /* Sticky Post(s) */
}
#featured-posts-api-response .fetchedPost.sticky {
  flex-direction: row;
  width: 100%;
  height: 100%;
  transition: 0.5s all ease-in-out;
}
@media (max-width: 1023px) {
  #featured-posts-api-response .fetchedPost.sticky {
    flex-direction: column;
  }
}
#featured-posts-api-response .fetchedPost.sticky .post-thumbnail {
  display: flex;
}
@media (min-width: 1024px) {
  #featured-posts-api-response .fetchedPost.sticky .post-thumbnail {
    width: 50%;
    align-self: start;
  }
}
#featured-posts-api-response .fetchedPost.sticky .post-thumbnail img {
  object-fit: cover;
  /* Probably not intended, though current system works with it */
  aspect-ratio: 16/11;
  /* Placeholder pattern */
  background-color: #fbfbfb;
  background-image: radial-gradient(#9c0000 0.5px, #fbfbfb 0.5px);
  background-size: 10px 10px;
}
#featured-posts-api-response .fetchedPost.sticky .post-content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  padding: 2rem;
  padding-right: 1rem !important;
  background-color: #fff;
}
@media (min-width: 1024px) {
  #featured-posts-api-response .fetchedPost.sticky .post-content {
    width: 50%;
  }
}
#featured-posts-api-response .fetchedPost.sticky .post-content .date {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.1rem;
  color: #706f6f;
  margin-bottom: 1.2rem;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .date .icon {
  width: 1rem;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .date .icon svg {
  display: flex;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .title {
  font-family: Aller, sans-serif;
  font-weight: bold;
  font-size: 1.389rem;
  line-height: 1.944rem;
  margin-bottom: 1rem;
  transition: all 250ms ease-in-out;
  color: var(--wiro-black);
  display: block;
  text-decoration: none;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .title::after {
  content: "🡥";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 0.5rem;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .title:hover {
  color: var(--wiro-red);
  text-decoration: underline;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .title:hover::after {
  transform: scale(1.15);
  transform-origin: center center;
  color: inherit;
}
#featured-posts-api-response .fetchedPost.sticky .post-content .excerpt {
  margin-bottom: 1rem;
  color: var(--wiro-dark-grey);
}

.gb-accordion.with-counter {
  counter-reset: acc-counter;
}
.gb-accordion.with-counter .gb-accordion__toggle .gb-text::before {
  counter-increment: acc-counter;
  content: counter(acc-counter) ". ";
  color: #AD0F09;
}

.fancybox-container .fancybox-toolbar {
  right: 1rem;
}
.fancybox-container .fancybox-toolbar .fancybox-button--close {
  background-color: transparent !important;
}
.fancybox-container .fancybox-toolbar .fancybox-button--close svg {
  width: 3rem !important;
  height: 3rem !important;
  color: var(--wiro-white);
  transition: transform 0.3s ease-in-out;
}
.fancybox-container .fancybox-toolbar .fancybox-button--close:hover {
  background-color: transparent !important;
}
.fancybox-container .fancybox-toolbar .fancybox-button--close:hover svg {
  transform: scale(1.2);
}
.fancybox-container .fancybox-toolbar .fancybox-button--close:focus svg {
  outline: 1px auto var(--wiro-black);
  outline-offset: 1px;
  -webkit-focus-ring-color: auto;
}

.ari-fancybox::after {
  content: url("../icons/zoom.svg");
  background-color: var(--wiro-red);
  padding-top: 11px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  height: 65px;
  width: 65px;
  left: calc(50% - 32px);
  top: calc(50% - 32px);
  border-radius: 50%;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.ari-fancybox::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(43, 46, 52, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.ari-fancybox:focus img {
  border: 3.4px solid var(--wiro-red);
}
.ari-fancybox:focus::before {
  opacity: 1;
  inset: 3px;
}
.ari-fancybox:focus::after {
  opacity: 1;
  background-color: var(--wiro-black);
}
.ari-fancybox:hover::after, .ari-fancybox:hover::before {
  opacity: 1;
}

.wiro-neighborhood-select-box select {
  background-color: transparent;
  border: none;
  color: var(--wiro-red);
  text-decoration: underline;
}
.wiro-neighborhood-select-box select option {
  background-color: var(--wiro-background-grey);
  color: #333;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 48px;
}

.neighborhood-item {
  cursor: pointer;
  transition: fill 0.3s;
}
.neighborhood-item:hover, .neighborhood-item.active, .neighborhood-item:focus {
  fill: var(--wiro-red);
}

/* Align main menu to content width */
body.sticky-enabled .main-navigation.is_stuck {
  background: var(--wiro-white);
}

/* Cover image in slider container */
.slider-container figure.gb-block-image {
  height: 100%;
}
.slider-container figure.gb-block-image img {
  object-fit: cover;
  height: 100%;
}

p code {
  font: inherit !important;
  border-bottom: 3.5px solid var(--wiro-dark-red);
  padding-bottom: 3px;
  line-height: 2.4rem !important;
}

@media (max-width: 1180px) {
  header, .top-bar {
    display: none;
  }
}
.external-link::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.external-link:hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}

@media (max-width: 1420px) {
  .gb-menu {
    max-width: 1090px !important;
    margin-left: auto !important;
  }
}
@media (max-width: 1340px) {
  .gb-menu {
    max-width: 1060px !important;
  }
}
@media (max-width: 1300px) {
  .gb-menu {
    max-width: 1030px !important;
  }
}
@media (max-width: 1230px) {
  .gb-menu {
    max-width: 1000px !important;
  }
}

@media (max-width: 1180px) {
  .menu li:last-child, .gb-menu li:last-child {
    padding-top: 1rem;
    padding-bottom: 2rem;
  }
}
.menu li:last-child a, .gb-menu li:last-child a {
  border-radius: 5px;
  border: 1px solid var(--wiro-red);
  padding: 12px 1.5rem !important;
  font-size: 1.125rem !important;
  height: 48px;
  width: 158px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1180px) {
  .menu li:last-child a, .gb-menu li:last-child a {
    margin-left: 2rem !important;
  }
}
.menu li:last-child a::before, .gb-menu li:last-child a::before {
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="21" viewBox="0 0 22 21" fill="%23000000"><path d="M11.0013 20.75L9.43047 19.3417C7.60686 17.6986 6.09922 16.2813 4.90755 15.0896C3.71589 13.8979 2.76797 12.8281 2.0638 11.8802C1.35964 10.9323 0.867621 10.0611 0.58776 9.26668C0.307899 8.47224 0.167969 7.65974 0.167969 6.82918C0.167969 5.13196 0.736719 3.7146 1.87422 2.5771C3.01172 1.4396 4.42908 0.87085 6.1263 0.87085C7.06519 0.87085 7.95894 1.06946 8.80755 1.46668C9.65616 1.86391 10.3874 2.42363 11.0013 3.14585C11.6152 2.42363 12.3464 1.86391 13.1951 1.46668C14.0437 1.06946 14.9374 0.87085 15.8763 0.87085C17.5735 0.87085 18.9909 1.4396 20.1284 2.5771C21.2659 3.7146 21.8346 5.13196 21.8346 6.82918C21.8346 7.65974 21.6947 8.47224 21.4148 9.26668C21.135 10.0611 20.643 10.9323 19.9388 11.8802C19.2346 12.8281 18.2867 13.8979 17.0951 15.0896C15.9034 16.2813 14.3957 17.6986 12.5721 19.3417L11.0013 20.75ZM11.0013 17.825C12.7346 16.2722 14.161 14.9406 15.2805 13.8302C16.3999 12.7198 17.2846 11.7538 17.9346 10.9323C18.5846 10.1108 19.036 9.37953 19.2888 8.73856C19.5416 8.09759 19.668 7.46113 19.668 6.82918C19.668 5.74585 19.3069 4.84307 18.5846 4.12085C17.8624 3.39863 16.9596 3.03752 15.8763 3.03752C15.0277 3.03752 14.2423 3.27675 13.5201 3.75522C12.7978 4.2337 12.3013 4.84307 12.0305 5.58335H9.97213C9.7013 4.84307 9.20477 4.2337 8.48255 3.75522C7.76033 3.27675 6.97491 3.03752 6.1263 3.03752C5.04297 3.03752 4.14019 3.39863 3.41797 4.12085C2.69575 4.84307 2.33464 5.74585 2.33464 6.82918C2.33464 7.46113 2.46102 8.09759 2.7138 8.73856C2.96658 9.37953 3.41797 10.1108 4.06797 10.9323C4.71797 11.7538 5.60269 12.7198 6.72214 13.8302C7.84158 14.9406 9.26797 16.2722 11.0013 17.825Z"/></svg>');
  display: inline-block;
  transform: translateY(2px);
}
@media (max-width: 1180px) {
  .menu li:last-child a::before, .gb-menu li:last-child a::before {
    transform: translateY(4px);
    margin-right: 10px;
  }
}
.menu li:last-child a:hover::before, .gb-menu li:last-child a:hover::before {
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="21" viewBox="0 0 22 21" fill="%23E1001A"><path d="M11.0013 20.75L9.43047 19.3417C7.60686 17.6986 6.09922 16.2813 4.90755 15.0896C3.71589 13.8979 2.76797 12.8281 2.0638 11.8802C1.35964 10.9323 0.867621 10.0611 0.58776 9.26668C0.307899 8.47224 0.167969 7.65974 0.167969 6.82918C0.167969 5.13196 0.736719 3.7146 1.87422 2.5771C3.01172 1.4396 4.42908 0.87085 6.1263 0.87085C7.06519 0.87085 7.95894 1.06946 8.80755 1.46668C9.65616 1.86391 10.3874 2.42363 11.0013 3.14585C11.6152 2.42363 12.3464 1.86391 13.1951 1.46668C14.0437 1.06946 14.9374 0.87085 15.8763 0.87085C17.5735 0.87085 18.9909 1.4396 20.1284 2.5771C21.2659 3.7146 21.8346 5.13196 21.8346 6.82918C21.8346 7.65974 21.6947 8.47224 21.4148 9.26668C21.135 10.0611 20.643 10.9323 19.9388 11.8802C19.2346 12.8281 18.2867 13.8979 17.0951 15.0896C15.9034 16.2813 14.3957 17.6986 12.5721 19.3417L11.0013 20.75ZM11.0013 17.825C12.7346 16.2722 14.161 14.9406 15.2805 13.8302C16.3999 12.7198 17.2846 11.7538 17.9346 10.9323C18.5846 10.1108 19.036 9.37953 19.2888 8.73856C19.5416 8.09759 19.668 7.46113 19.668 6.82918C19.668 5.74585 19.3069 4.84307 18.5846 4.12085C17.8624 3.39863 16.9596 3.03752 15.8763 3.03752C15.0277 3.03752 14.2423 3.27675 13.5201 3.75522C12.7978 4.2337 12.3013 4.84307 12.0305 5.58335H9.97213C9.7013 4.84307 9.20477 4.2337 8.48255 3.75522C7.76033 3.27675 6.97491 3.03752 6.1263 3.03752C5.04297 3.03752 4.14019 3.39863 3.41797 4.12085C2.69575 4.84307 2.33464 5.74585 2.33464 6.82918C2.33464 7.46113 2.46102 8.09759 2.7138 8.73856C2.96658 9.37953 3.41797 10.1108 4.06797 10.9323C4.71797 11.7538 5.60269 12.7198 6.72214 13.8302C7.84158 14.9406 9.26797 16.2722 11.0013 17.825Z"/></svg>');
}

#mobile-header .mobile-header-logo {
  margin-left: 0 !important;
}
#mobile-header .mobile-header-logo img {
  height: 80px;
  width: 110px;
  padding: 0 !important;
}
#mobile-header .menu-toggle svg {
  width: 35px !important;
  height: 35px !important;
}
#mobile-header.toggled {
  max-height: calc(100vh - 80px) !important;
  overflow-y: auto !important;
  box-shadow: -1px 4px 20px 0 #757575;
}

.wiro-link-nav-extern a[href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]) {
  column-gap: 0 !important;
}
.wiro-link-nav-extern a[href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"])::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.wiro-link-nav-extern a[href*="wiro.de"]:not([href^="https://wohnungssuche.wiro.de"]):hover::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}

.js-flickity {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.flickity-enabled {
  opacity: 1;
}

@media (max-width: 400px) {
  h1 {
    font-size: 1.94rem !important;
  }
}

#nextBtn circle, #prevBtn circle {
  transition: fill 0.3s ease;
}
#nextBtn.not-active, #prevBtn.not-active {
  pointer-events: none;
}
#nextBtn.not-active circle, #prevBtn.not-active circle {
  fill: #C4C4C6 !important;
}
#nextBtn:hover circle, #prevBtn:hover circle {
  fill: #000 !important;
}

.loader {
  width: 48px;
  height: 48px;
  border: 3px solid var(--wiro-dark-grey);
  border-radius: 50%;
  display: block;
  margin: 2rem auto 0;
  position: relative;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}
.loader::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 3px solid transparent;
  border-bottom-color: var(--wiro-red);
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Special wrapper for fancy WIROtel background */
@media (min-width: 1025px) {
  .wirotel-outer-wrapper {
    background-image: linear-gradient(90deg, var(--wiro-background-orange) 36%, rgba(245, 245, 245, 0) 36%);
  }
}
.wirotel-outer-wrapper .wirotel-teaser .gb-headline::after {
  content: "🡥";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 0;
}
.wirotel-outer-wrapper .wirotel-teaser .gb-block-image {
  position: relative;
}
.wirotel-outer-wrapper .wirotel-teaser .gb-block-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: transparent;
  transition: all 300ms ease-in-out;
}
.wirotel-outer-wrapper .wirotel-teaser:hover .gb-headline::after {
  transform: scale(1.15);
  transform-origin: center center;
  color: inherit;
}
.wirotel-outer-wrapper .wirotel-teaser:hover .gb-block-image::after {
  background-color: rgba(225, 0, 25, 0.75);
}

/* Mietwohnungen */
.wiro-mietwohnung .titel {
  transition: all 300ms ease-in-out;
}
.wiro-mietwohnung .link-icon .gb-icon {
  transition: all 300ms ease-in-out;
  transform-origin: bottom left;
}
.wiro-mietwohnung:hover .titel {
  color: var(--wiro-red);
}
.wiro-mietwohnung:hover .link-icon .gb-icon {
  transform: scale(1.1);
}
.wiro-mietwohnung:hover .mw-details .mw-details-inner {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Link Teaser Boxes */
.link-teaser:hover {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

/* Tile Navigation Buttons */
.wiro-tile-button {
  cursor: pointer;
}
.wiro-tile-button .has-arrow::after {
  content: "🡕";
  font-weight: 400;
  font-family: wiro-icons, sans-serif;
  display: inline-block;
  transition: 300ms all ease-in-out;
  color: var(--wiro-red);
  margin: 0 0 0 -0.25rem;
}
.wiro-tile-button:hover .has-arrow::after {
  transform: scale(1.25);
  transform-origin: center center;
  color: inherit;
}

/* Skyline background graphics */
@media (max-width: 1655px) {
  .skyline-container {
    display: none;
  }
}

/* Lexikon nav elements select box */
.wiro-lexikon-select-box {
  position: relative;
}
.wiro-lexikon-select-box select {
  background: var(--wiro-background-grey);
  border: 0;
  width: calc(100% - 2rem);
  margin: 0 1rem;
  appearance: none;
  cursor: pointer;
  font-size: 1rem;
}
.wiro-lexikon-select-box .select_arrow {
  position: absolute;
  top: 1.1rem;
  right: 2rem;
  pointer-events: none;
  border-style: solid;
  border-width: 5px 5px 0;
  border-color: var(--wiro-black) transparent transparent transparent;
}

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

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