/*
Theme Name: Residenz Kurstraße Theme
Theme URI: https://www.farn.de
Author: FARN digital brand design
Author URI: https://www.farn.de
Version: 1.0.0
Text Domain: residenz-kurstrasse-theme
*/

html {
    box-sizing:border-box;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smooth: antialiased;
    text-rendering: optimizeLegibility;
    word-wrap: normal;
    font-variant-ligatures: common-ligatures;
    -webkit-font-feature-settings: "liga", "clig";
    -moz-font-feature-settings: "liga", "clig";
    font-feature-settings: "liga", "clig";
    -webkit-font-feature-settings: "liga", "lnum";
    -moz-font-feature-settings: "liga", "lnum";
    font-feature-settings: "liga", "lnum";
    position: relative;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    height: 100%;
    margin-top: 0 !important;
    overflow-x: hidden;
}
*,
*::before,
*::after {
    box-sizing: inherit;
}
body {
    margin: 0;
    padding: 0;
}

/* Headings -------------------------------------------------------------------------------------------------------------------------------------------- */
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color:inherit;
    text-decoration: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--wp--preset--font-family--josefin);
  color: var(--wp--preset--color--turquoise-dark);
}
h1>strong,
h2>strong {
  font-weight: 800;
  display: block;
}
h1 {
  font-weight: 300;
  font-size: var(--wp--preset--font-size--xx-large);
}
h2 {
  font-size: var(--wp--preset--font-size--x-large);
}
h3 {
  font-size: var(--wp--preset--font-size--large);
}
h4 {
  font-size: 1.25rem;
  font-weight: 600;
  font-family: var(--wp--preset--font-family--open-sans);
  color: var(--wp--preset--color--turquoise-mid-dark);
}
h5 {
  font-size: 1.25rem;
  font-weight: 600;
  font-family: var(--wp--preset--font-family--open-sans);
}
h6 {
  font-size: 1.25rem;
  font-weight: 600;
  font-family: var(--wp--preset--font-family--open-sans);
}


/* ANIMATION h1, h2*/
/* Standardmäßig versteckt */
.entry-content h1, .entry-content h2 {
  opacity: 0;
}

/* Sobald ein .reveal_wrapper existiert, wird .entry-content h1/.entry-content h2 sichtbar */
.entry-content h1:has(.reveal_wrapper),
.entry-content h2:has(.reveal_wrapper) {
  opacity: 1;
}

/* Wrapper für jedes Wort */
.entry-content h1 .reveal_wrapper,
.entry-content h2 .reveal_wrapper {
  display: inline-flex;
}

/* Standardzustand der Text-Elemente */
.entry-content h1 .reveal_wrapper .reveal_text,
.entry-content h2 .reveal_wrapper .reveal_text {
  display: block;
  transform: translateY(110%);
  opacity: 0;
}

/* Sobald die Klasse da ist, wird animiert */
.entry-content h1 .reveal_wrapper .reveal_text.start-animation,
.entry-content h2 .reveal_wrapper .reveal_text.start-animation {
  animation: reveal 0.7s ease forwards;
}

@keyframes reveal {
  0% {
    transform: translateY(110%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}



/* seperator */
hr {
  border: none !important;
  background-color: var(--wp--preset--color--turquoise-dark); 
  height: 1px;
}

/* buttons -------------------------------------------------------------------------------------------------------------------------------------------- */

button {
  background-color: var(--wp--preset--color--turquoise-mid);
  color: var(--wp--preset--color--turquoise-dark);
  font-family: var(--wp--preset--font-family--josefin);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
  border: none;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  line-height: 1.2;
  border-radius: 9999px;
  padding: 0.9rem 1.3rem 0.7rem 1.3rem;
  cursor: pointer;
}
button:hover {
  background-color: var(--wp--preset--color--turquoise);
}
.wp-block-button__link {
  border-radius: 9999px;
  padding: 0.9rem 1.3rem 0.7rem 1.3rem;
}
.wp-block-button__link:hover {
  background-color: var(--wp--preset--color--turquoise);
}

/* lists -------------------------------------------------------------------------------------------------------------------------------------------- */
nav ol,
nav ul {
  line-height: 1.875rem;
}
ul li::marker {
  color: var(--wp--preset--color--turquoise-mid-dark);
}
ol {
  list-style: none;
  counter-reset: customlistcounter var(--start);
  margin-block-start: 0.625rem !important;
  padding-left: 2.2rem;
} 
ol>li {
  counter-increment: customlistcounter;
  position: relative;
  padding-top: 0.1rem;
}
ol>li::before {
  content: counter(customlistcounter);
  position: absolute;
  left: -2.2rem;
  top: 0.25rem;
  font-weight: 700;
  font-size: 0.75em;
  color: var(--wp--preset--color--white);
  border-radius: 50%;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
ol:nth-of-type(1)>li::before {
  background-color: var(--wp--preset--color--turquoise-mid-dark);
}
ol:nth-of-type(2)>li::before {
  background-color: #34ab8d;
}
ol:nth-of-type(3)>li::before {
  background-color: #c6743c;
}
ol:nth-of-type(4)>li::before {
  background-color:  #87815d;
}
ol:nth-of-type(5)>li::before {
  background-color: var(--wp--preset--color--turquoise-dark);
}
ol:nth-of-type(6)>li::before {
  background-color: #075fab;
}

/* header -------------------------------------------------------------------------------------------------------------------------------------------- */
header {
  position: fixed;
  top: 0;
  z-index: 10;
  width: 100%;
  background-color: #fff;
  transition: box-shadow 0.3s;
}
header.scrolled {
  box-shadow: 0 0 40px rgba(0,0,0,0.15);
}
.logged-in header {
  top: var(--wp-admin--admin-bar--height);
}
.head-logo a {
  display: inline-block;
}
.head-logo img {
  margin: 14px 10px 14px 5vw;
}
.wp-block-group.header-inner {
  margin: 0 auto !important;
}
.wp-block-group.header-inner>.burgerbutton {
  width: auto !important;
}
.wp-block-group.header-inner>.wp-block-group>figure>a>img {
  width: 100% !important;
  max-width: 300px !important;
}


/* footer -------------------------------------------------------------------------------------------------------------------------------------------- */

.wp-block-template-part:has(.wp-block-group>.wp-block-columns.footer) {
  margin-block-start: 0;
}
.wp-block-columns.footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
  line-height: 1;
}
.wp-block-columns.footer ul li {
  margin-bottom: 7px;
}
.wp-block-columns.footer p {
  margin-top: 0.5rem;
}
.wp-block-columns.footer h2 {
  font-weight: 600;
}
.wp-block-columns.footer a {
  text-decoration: none;
}
.wp-block-columns.footer a:hover {
  color: var(--wp--preset--color--turquoise-dark)
}
.logged-in {
  padding-top: var(--wp-admin--admin-bar--height);
}
.wp-block-columns.footer>.wp-block-column:nth-child(3)>ul {
  list-style: none;
  padding: 0;
}
.wp-block-columns.footer>.wp-block-column:nth-child(1)>figure>img {
  width: 240px;
  height: auto;
}


/* menu -------------------------------------------------------------------------------------------------------------------------------------------- */
.wp-block-navigation {
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
}
.wp-block-navigation ul:not(.wp-block-navigation__submenu-container) {
    gap:0;
    flex-direction: column;
}
.wp-block-navigation .wp-block-navigation-item {
  width: 100%;
}
.wp-block-navigation ul:not(.wp-block-navigation__submenu-container) > li.has-child {
    flex-wrap: wrap;
    justify-content: center;
}
.wp-block-navigation ul > li > a {
    padding: 1rem 5vw 1rem 5vw;
    width: 100%;
    border-top: 1px solid #ddd;
    font-weight: 600;
}
.wp-block-navigation ul:not(.wp-block-navigation__submenu-container) > li.has-child > a{
    padding:1rem 5vw 1rem 5vw;
}
.wp-block-navigation ul:not(.wp-block-navigation__submenu-container) > li.has-child > .wp-block-navigation__submenu-icon svg path{
    stroke-width:1.2;
}
.wp-block-navigation ul.wp-block-navigation__submenu-container {
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    border:none !important;
    padding:0;
    position: relative !important;
}
.wp-block-navigation ul.wp-block-navigation__submenu-container > li > a{
    padding:1rem 10vw;
    font-size: 0.9em;
}
.wp-block-navigation ul > li:last-child > a {
  border-bottom: 1px solid #ddd;
}
.wp-block-navigation ul.wp-block-navigation__submenu-container > li:last-child > a{
    border-bottom: none;
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
  width: 29px;
  height: 64px;
  margin: 0;
  box-sizing: content-box;
  position: absolute;
  right: 0;
  padding: 0 5vw 0 20px;
  z-index: 100;
  align-self: start;
}
.wp-block-navigation .wp-block-navigation__submenu-icon svg {
  height: 16px;
  margin-top: 0;
}

.wp-block-navigation-item__content:hover, 
.wp-block-navigation-item>a.wp-block-navigation-item__content:hover, 
.wp-block-navigation-item>button.wp-block-navigation-item__content:hover {
    color: var(--wp--preset--color--turquoise-mid-dark) !important;
}
.wp-block-navigation .wp-block-buttons {
  margin-left: 5vw;
  margin-bottom: 25px;
}

    @media only screen and (max-width: 989px) {
      /* HOVER DISABLE */
      .wp-block-navigation-submenu__toggle.visible svg {
        transform: rotate(180deg);
      }
      .wp-block-navigation-item.wp-block-navigation-submenu:hover > ul {
        display: none;
      }
      .wp-block-navigation-submenu__toggle.visible + ul {
        display: block;
      }
    }

/* widths -------------------------------------------------------------------------------------------------------------------------------------------- */
.alignfull {
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    margin-top: 3rem;
}
.alignwide {
   width:90%;
   margin-left:auto;
   margin-right:auto;
 }
.wp-block-cover.alignfull > .wp-block-cover__inner-container,
.wp-block-group.alignfull {
   width:100%;
 }
.entry-content > :not(.alignwide):not(.alignfull),
.wp-block-cover.alignfull > .wp-block-cover__inner-container > :not(.alignwide):not(.alignfull),
.wp-block-group.alignfull > :not(.alignwide):not(.alignfull) {
    width:90%;
    margin-left:auto;
    margin-right:auto;
}

/* paddings and margins for alignfull blocks -------------------------------------------------------------------------------------------------------------------------------------------- */
.wp-block-group.alignfull.has-background,
.wp-block-cover.alignfull{
    padding:3rem 0;
}
.alignfull + * {
    margin-top: 3rem;
}
.alignfull + .alignfull,
.alignfull + footer {
    margin-top: 0 !important;
}
.entry-content > *:last-child:not(.alignfull) {
    margin-bottom:3rem;
}

/* cover-blocks -------------------------------------------------------------------------------------------------------------------------------------------- */
.wp-block-cover.alignfull.has-custom-content-position {
  padding:2rem !important;
}

/* slider */
.swiper-pagination {
  position: absolute !important; 
}
.swiper-pagination-bullet {
  background-color: var(--wp--preset--color--white) !important;
  border: 1px solid var(--wp--preset--color--turquoise-dark) !important; 
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--wp--preset--color--turquoise-dark) !important;
  border: 1px solid var(--wp--preset--color--turquoise-dark) !important;
  width: 12px;
  height: 12px;
  transform: translateY(0);
}
.swiper-buttons {
  width: 95%;
  position: absolute !important;
  top: 50%; 
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  justify-content: space-between;
}
.wp-block-group:has(.slider_three) {
 padding: 3rem !important;
}
.slider_three .swiper-buttons {
  width: 120%;
}
.slider_three.arrow_up .swiper-buttons {
  translate: 0 -1.5em;
}
.swiper-button-next, .swiper-button-prev {
  background-color: var(--wp--preset--color--white) !important;
}
.swiper-button-next {
  mask-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_11_797' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Crect width='40' height='40' transform='matrix(-1 0 0 1 40 0)' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11_797)'%3E%3Cpath d='M23.3334 36.0896L39.423 20L23.3334 3.91043L20.968 6.27585L34.6926 20L20.968 33.7242L23.3334 36.0896Z' fill='white'/%3E%3C/g%3E%3C/svg%3E%0A") !important;
}
.swiper-button-prev {
  mask-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_11_796' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Crect width='40' height='40' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11_796)'%3E%3Cpath d='M16.6667 36.0896L0.577084 20L16.6667 3.91043L19.0321 6.27585L5.3075 20L19.0321 33.7242L16.6667 36.0896Z' fill='white'/%3E%3C/g%3E%3C/svg%3E%0A") !important;
}
.slider_one, 
.slider_two {
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
.slider_one {
  max-height: 630px; 
}
.slider_two {
  max-height: 536px;
}
.slider_one .swiper {
  width: 100%;
}
.slider_one .swiper-slide.slide,
.slider_two .swiper-slide.slide {
  width: 100% !important;
  height: unset;
}
.slider_one .swiper-wrapper, 
.slider_two .swiper-wrapper,
.slider_three .swiper-wrapper {
  align-items: stretch;
}
.slider_three .swiper-slide {
  height: auto;
}
.slider_three .wp-block-group {
    height: 100%;
}
.slider_one .wp-block-video,
.slider_two .wp-block-video {
  height: 100% !important;
}
.slider_one img, 
.slider_two img,
.slider_one video,
.slider_two video {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

.wp-block-group:has(>.slider_three) {
  margin-top: 18rem !important;
}

/* responsive image -------------------------------------------------------------------------------------------------------------------------------------------- */
.entry-content>.bild-responsive-container {
  margin-top: 6rem !important;
}
.wp-block-group>.bild-responsive-container {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  max-width: 1200px;
}
.wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100% !important;
  max-width: 1400px;
}
.wp-block-group:has(>.bild-responsive-container+h2)>.wp-block-group>.wp-block-group {
  z-index: 1;
}
.bild-responsive-container img {
  width: 100%;
  max-width: none;
}
.bild-responsive-container+.wp-block-group {
  margin-top: -1.5rem !important;
}

/* 2x2 grid */ 
.wp-block-group.alignwide.is-layout-grid {
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, auto);
}
.wp-block-group.alignwide.is-layout-grid>div:nth-child(3)>div>h3 {
  hyphens: auto;  
}


/* Headervideo */
.headervideo-desktop {
  display: none;
}

/* contact person above form */
@media only screen and (max-width: 464px) {
  .wp-block-group:has(div>div>form)>div>p {
    text-align: center;
  }
}
/* map */
.map {
  position: sticky;
  top: 0;
  z-index: 1;
}
.map figure {
  position: sticky;
  top: 50px;
}
@media screen and (max-width: 781px) {
  .map-columns {
    width: 100vw;
    left: -5vw;
    position: relative;
  }
  .map-legende {
    padding: 0 5vw 2rem;
  }
}

/* form */
form>p {
  margin: 1rem 0 !important;
}
form input,
form select, 
form textarea {
  padding: 0.9rem 1rem;
  border: none;
  border-radius: 0.25rem;
  color: var(--wp--preset--color--turquoise-dark);
  font-family: var(--wp--preset--font-family--open-sans); 
  font-size: var(--wp--preset--font-size--medium)
}
form input, 
form textarea {
  width: 100%;
}
form select {
  appearance: none;
  padding: 0.9rem 3rem 0.9rem 1rem;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m0 0h20v20h-20z' fill='none'/%3E%3Cpath d='m5 6 5 5 5-5 2 1-7 7-7-7z' fill='gray'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 18px;
  background-position-x: calc(100% - 1rem);
  background-position-y: 50%;
}
form input:focus,
form select:focus,
form textarea:focus {
 outline-color: var(--wp--preset--color--turquoise-mid-dark);
}
form select:has(option[value=""]:checked) {
  color: grey;
}
form>p:last-of-type {
  display: flex;
  flex-direction: column;
  align-items: center;
}
form>p:last-of-type>input {
  background-color: var(--wp--preset--color--white);
  color: var(--wp--preset--color--turquoise-dark);
  font-family: var(--wp--preset--font-family--josefin);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
  border: none;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  line-height: 1.2;
  border-radius: 9999px;
  padding: 0.9rem 1.3rem 0.7rem 1.3rem;
  cursor: pointer;
  width: auto;
  margin-top: 2.5rem; 
  margin-bottom: 1rem;
}
form>p:last-of-type>input[disabled] {
  background-color: var(--wp--preset--color--turquoise-mid);
}
form>p:last-child>input {
  background-color: var(--wp--preset--color--turquoise);
}
form>p>label {
  display: block;
  width: 100%;
  font-size: 0;
}
/* custom checkbox */
form>p:nth-last-child(3)>span>span>span {
  margin: 0;
}
/* The label wrapping the input and span */
form>p:nth-last-child(3)>span>span>span>label {
  display: flex;
  position: relative;
  width: 100%;
}
/* The input inside the label (checkbox) */
form>p:nth-last-child(3)>span>span>span>label>input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
/* wrapper around the spans (checkmark and text)*/
form>p:nth-last-child(3)>span>span>span>label>span {
  font-size: 0.9rem;
  padding-left: 32px;
  position: relative;
}
/* the span that is the checkmark inside the label */
form>p:nth-last-child(3)>span>span>span>label>span>span.checkmark {
  position: absolute;
  left: 0;
  top: 0.25rem;
  width: 22px;
  height: 22px;
  border-radius: 0.25rem;
  background-color: var(--wp--preset--color--white);
  box-sizing: border-box;
}
form>p:nth-last-child(3)>span>span>span>label>span>span.checkmark:after {
  content: "";
  position: absolute;
  display: none;
  top: 3px;
  left: 8px;
  width: 7px;
  height: 14px;
  border: solid var(--wp--preset--color--turquoise);
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}
form>p:nth-last-child(3)>span>span>span>label>input[type="checkbox"]:checked + span>span.checkmark::after{
  display: block;
}
form>p:nth-last-child(3)>span>span>span>label>span>a:hover {
  color: var(--wp--preset--color--turquoise-light)
}
form.invalid input:invalid,
form.invalid select:invalid {
  border: 2px solid red;
}
form>div[class*="response-output"] {
  margin: 2rem 0 0 0 !important;
  border-radius: 0.25rem;
  width: 100%;
  padding: 2rem; 
  background-color: var(--wp--preset--color--white);
  color: var(--wp--preset--color--turquoise-mid-dark);
  font-weight: 600; 
  text-align: center;
}
form.sent>div[class*="response-output"] {
  padding: 1.5rem;
  border-color: var(--wp--preset--color--turquoise-light) !important;
}
form.invalid>div[class*="response-output"] {
  padding: 1.5rem;
  border-color: red !important;
}
.wp-block-group:has(+div>div>form)>p>a {
  text-decoration: none;
}

.wp-block-group:has(+div>div>form)>p>a:hover {
  color: var(--wp--preset--color--turquoise-light);
}

/* individual element styles */
.entry-content {
  margin-block-start: 0;
}
a[target="_blank"]::after {
  content: "";
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='22' viewBox='0 0 21 22' fill='none'%3E%3Cmask id='mask0_16_872' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='21' height='22'%3E%3Crect y='0.5' width='21' height='21' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_16_872)'%3E%3Cpath d='M4.64428 18.4375C4.20226 18.4375 3.82812 18.2844 3.52188 17.9781C3.21563 17.6719 3.0625 17.2977 3.0625 16.8557V5.14428C3.0625 4.70226 3.21563 4.32812 3.52188 4.02188C3.82812 3.71563 4.20226 3.5625 4.64428 3.5625H10.1633V4.875H4.64428C4.57691 4.875 4.51522 4.90307 4.45922 4.95922C4.40307 5.01522 4.375 5.07691 4.375 5.14428V16.8557C4.375 16.9231 4.40307 16.9848 4.45922 17.0408C4.51522 17.0969 4.57691 17.125 4.64428 17.125H16.3557C16.4231 17.125 16.4848 17.0969 16.5408 17.0408C16.5969 16.9848 16.625 16.9231 16.625 16.8557V11.3367H17.9375V16.8557C17.9375 17.2977 17.7844 17.6719 17.4781 17.9781C17.1719 18.2844 16.7977 18.4375 16.3557 18.4375H4.64428ZM8.50434 13.9177L7.58231 12.9957L15.703 4.875H12.25V3.5625H17.9375V9.25H16.625V5.79703L8.50434 13.9177Z' fill='%23005159'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-left: 5px;
}
a[target="_blank"]:hover::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='22' viewBox='0 0 21 22' fill='none'%3E%3Cmask id='mask0_16_872' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='21' height='22'%3E%3Crect y='0.5' width='21' height='21' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_16_872)'%3E%3Cpath d='M4.64428 18.4375C4.20226 18.4375 3.82812 18.2844 3.52188 17.9781C3.21563 17.6719 3.0625 17.2977 3.0625 16.8557V5.14428C3.0625 4.70226 3.21563 4.32812 3.52188 4.02188C3.82812 3.71563 4.20226 3.5625 4.64428 3.5625H10.1633V4.875H4.64428C4.57691 4.875 4.51522 4.90307 4.45922 4.95922C4.40307 5.01522 4.375 5.07691 4.375 5.14428V16.8557C4.375 16.9231 4.40307 16.9848 4.45922 17.0408C4.51522 17.0969 4.57691 17.125 4.64428 17.125H16.3557C16.4231 17.125 16.4848 17.0969 16.5408 17.0408C16.5969 16.9848 16.625 16.9231 16.625 16.8557V11.3367H17.9375V16.8557C17.9375 17.2977 17.7844 17.6719 17.4781 17.9781C17.1719 18.2844 16.7977 18.4375 16.3557 18.4375H4.64428ZM8.50434 13.9177L7.58231 12.9957L15.703 4.875H12.25V3.5625H17.9375V9.25H16.625V5.79703L8.50434 13.9177Z' fill='%2359bebe'/%3E%3C/g%3E%3C/svg%3E");
}
h3+.wp-block-list {
  margin-top: 0.625rem;
  padding-left: 1.8rem;
}
.wp-block-columns>.wp-block-column>figure+h4+p {
  margin-top: 0.625rem;
  margin-bottom: 3rem;
}
.wp-block-columns:has(.wp-block-column>figure+h3) {
  gap: 0;
}
.wp-block-columns>.wp-block-column>h4+p,
.wp-block-columns>.wp-block-column>h4+ul {
  margin-top: 0.625rem;
}
.wp-block-columns>.wp-block-column:nth-child(2)>h2:has(+h4+p) {
  margin-top: 3rem;
}

/* anfahrt block */ 
.wp-block-group.alignfull.has-turquoise-light-background-color:has(div+h2+div)>.wp-block-group>.wp-block-group {
 flex-direction: column;
}
.wp-block-group.alignfull.has-turquoise-light-background-color:has(div+h2+div)>.wp-block-group>.wp-block-group>figure {
  width: 170px;
}
.wp-block-group.alignfull.has-turquoise-light-background-color:has(div+h2+div)>.wp-block-group>.wp-block-group>.wp-block-group {
  width: 100%;
  flex-shrink: 3;
}

/* media queries -------------------------------------------------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 400px) {

}

@media only screen and (min-width: 600px) {
  .slider_three .swiper-buttons {
    width: 110%;
  }
  /* anfahrt block */
  .wp-block-group.alignfull.has-turquoise-light-background-color:has(div+h2+div)>.wp-block-group>.wp-block-group {
    flex-direction: row;
  }
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container {
    width: 100vw !important;
  }
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container img{
    width: 150% !important;
    margin-left: -25% !important;
  }
  /* footer */
  .wp-block-columns.footer>.wp-block-column:nth-child(2)>.wp-block-columns {
    flex-direction: row;
  }
  .wp-block-columns.footer>.wp-block-column:nth-child(2)>.wp-block-columns>.wp-block-column {
    flex-basis: 40%; 
    flex-grow: 0;
  }
}

@media only screen and (min-width: 782px) {
    .wp-block-columns>.wp-block-column:nth-child(2)>h2:has(+h4+p) {
      margin-top: calc(100% * 0.375);
    } 
    .wp-block-columns>.wp-block-column:nth-child(2)>figure:has(+h4):first-of-type {
      margin-top: calc(100% * 0.375);
    }
    .wp-block-columns:has(.wp-block-column>figure+h3) {
      gap: 3rem;
    }
    .wp-block-group>.bild-responsive-container {
      top: 97%;
    }
    .wp-block-group:has(>.bild-responsive) + .wp-block-group:has(>.wp-block-columns>.wp-block-column>figure) {
      margin-top: 12rem !important;
    }
  }
  
@media only screen and (min-width: 800px) {
  .bild-responsive-container+.wp-block-group {
    margin-top: -2.5rem !important;
  }

  /* 2x2 grid */
  .wp-block-group.alignwide.is-layout-grid {
    grid-template-columns: repeat(2, calc(50% - 2rem / 2));
    grid-template-rows: auto;
  }
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container {
    width: 100vw !important;
  }
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container img {
    width: 120%;
    margin-left: -10%;
  }

  /* Headervideo */
  .headervideo-mobile {
    display: none;
  }
  .headervideo-desktop {
    display: block;
  }
}

@media only screen and (min-width: 990px) {
  .head-logo img {
    margin: 21px 10px 22px 30px;
    width: 230px !important;
  }
  

  /* cover-blocks */
  .wp-block-cover.alignfull.has-custom-content-position {
      padding:8rem !important;
  }

  /* paddings and margins for alignfull blocks */
  .alignfull {
      margin-top:6rem;
  }
  .wp-block-group.alignfull.has-background,
  .wp-block-cover.alignfull{
      padding:6rem 0;
  }
  .alignfull + * {
      margin-top: 6rem;
  }
  .entry-content > *:last-child:not(.alignfull) {
      margin-bottom:6rem;
  }
  /* 2x2 grid */
  .wp-block-group.alignwide.is-layout-grid {
    grid-template-columns: repeat(2, calc(50% - 3rem / 2));
    gap: 3rem;
  }
  /* responsive-bild */
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container {
    width: 100vw !important;
  }
}

@media only screen and (min-width: 1200px) {
  /* main menu */
    .wp-block-navigation {
      flex-direction: row;
      width: auto;
    }
  
    .wp-block-navigation .wp-block-navigation-item {
      width: auto;
    }
  
    .wp-block-navigation ul>li>a {
      padding: 14px 15px;
      border: 0;
    }
  
    .wp-block-navigation ul:not(.wp-block-navigation__submenu-container) {
      flex-direction: row;
    }
  
    .wp-block-navigation ul:not(.wp-block-navigation__submenu-container)>li.has-child {
      flex-wrap: nowrap;
      justify-content: center;
      margin-right: 9px;
    }
  
    .wp-block-navigation ul:not(.wp-block-navigation__submenu-container)>li.has-child>a {
      padding: 11px 2px 11px 15px;
      border: 0;
    }
  
    .wp-block-navigation ul.wp-block-navigation__submenu-container {
      left: -6px !important;
      right: auto !important;
      width: auto !important;
      -webkit-box-shadow: 0px 10px 30px -10px rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0px 10px 30px -10px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 10px 30px -10px rgba(0, 0, 0, 0.1);
      padding: 0;
      min-width: 260px !important;
      position: absolute !important;
    }
  
    .wp-block-navigation .wp-block-navigation__submenu-icon {
      position: relative;
      padding: 0;
      height: 57px;
    }
  
    .wp-block-navigation-submenu:hover>a {
      color: var(--wp--preset--color--turquoise-mid) !important;
    }
  
    .wp-block-navigation-submenu:hover>button>svg>path {
      color: var(--wp--preset--color--turquoise-mid);
    }
  
    .wp-block-navigation ul.wp-block-navigation__submenu-container>li>a {
      padding: 17px 22px 18px;
      border-bottom: 1px solid #ddd;
    }
  
    .wp-block-navigation ul>li:last-child>a {
      border-bottom: none;
    }
  
    .wp-block-navigation ul:not(.wp-block-navigation__submenu-container)>li.has-child>.wp-block-navigation__submenu-icon svg path {
      stroke-width: 1;
    }
  
    .wp-block-navigation .wp-block-buttons {
      margin-left: 0;
      margin-bottom: 0;
    }
}

/* special media query for content width plus 10vw */
@media only screen and (min-width: calc(1200px + 10vw)) {
  /* responsive-bild */
  .wp-block-group:not(:has(>.wp-block-columns))>.bild-responsive-container {
    width: 80vw !important;
  }
}




/* special media query for content width plus 10vw */
@media only screen and (min-width: 1200px) and (max-width: 1300px) {
  ul.wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    font-size: 0.9em;
    padding-right: 18px !important;
    padding-left: 5px !important;
  }
  .has-child > .wp-block-navigation-item__content {
    padding-right: 2px !important;
  }
}



/* Sondereinstellungen Mobile */
@media only screen and (max-width: 650px) {
  .header-inner {
    padding: 0 !important;
  }
  .wp-block-group.header-inner > .wp-block-group > figure > a > img {
    max-height: 70px;
    max-width: 171px!important;
    padding: 14px 0 15px;
  }
  #ihreresidenz {
    margin-top: 2.5rem !important;
  }
}