/*
Theme Name: KITA St.Georg
Theme URI: http://demo.select-themes.com/stockholm/
Description: A child theme of Stockholm Theme
Author: Select Themes
Author URI: http://select-themes.com
Version: 1.1
Text Domain: stockholm
Template: stockholm
*/


@font-face {
    font-family: "DPSG-bold";
    src: url('fonts/DPSG_Condensed_2026.woff') format('woff'),
        url('fonts/DPSG_Condensed_2026.ttf') format('truetype');
    font-weight: bold;
    }
    

@font-face {
    font-family: "DPSG-light";
    src: url('fonts/DPSG_Condensed_Light_2026.woff') format('woff'),
        url('fonts/DPSG_Condensed_Light.ttf') format('truetype');
    font-weight: normal;
    }
   
    


/* Admin Bar ausschließen: body .wrapper*/
body .wrapper span, 
body .wrapper div, 
body .wrapper p, 
body .wrapper a, 
body .wrapper h5, 
body .wrapper h6, 
body .wrapper h7, 
body .wrapper input[type="text"], 
body .wrapper select, 
body .wrapper select option, 
body .wrapper textarea {
    font-family: "DPSG-light" !important;
}

body .wrapper h1, 
body .wrapper h2, 
body .wrapper h3, 
body .wrapper a.qbutton, 
body .wrapper input[type="submit"] {
    font-family: "DPSG-bold" !important;
}


.current-menu-item a{
	text-decoration: underline !important;
  text-decoration-thickness: .125em !important;
  text-underline-offset: 0.2em !important;
}


/*Global rul für header logo neu
  .q_logo.normal a  {
		width: 200px !important;
}*/




/*Platzhalter Complianz für Google Maps Karte*/

.cmplz-placeholder-parent{
max-height: 440px;
}


/*neu angelegte Verlinkungen auf weiss setzen*/
.link{
color:white !important;
}

.link:hover{
opacity:.65 !important;
}


.do-not-show{
	display:none;
}


/* DPSG TYPE SCALE */

:root {
  --text-size-xs: clamp(0.45rem, 0.2vw + 0.4rem, 0.5rem);
  --text-size-sm: clamp(0.65rem, 0.35vw + 0.55rem, 0.71rem);
  --text-size-md: clamp(0.9rem, 0.6vw + 0.75rem, 1rem);
  --text-size-lg: clamp(1.2rem, 1vw + 0.9rem, 1.6rem);
  --text-size-xl: clamp(1.6rem, 1.5vw + 1.1rem, 2rem);
  --text-size-2xl: clamp(2rem, 2.2vw + 1.3rem, 2.83rem);
  --text-size-3xl: clamp(2.8rem, 3.5vw + 1.5rem, 4rem);
  --text-size-4xl: clamp(3.2rem, 4vw + 2rem, 5.65rem);
  --text-size-5xl: clamp(5rem, 5vw + 2rem, 8rem);
}

/* Intro Title */
.q_slide_title {
  font-size: var(--text-size-5xl) !important;
}

:is(h1, h2, h3, h4, h5) {
  line-height: 1.125em;
  text-transform: uppercase;
  font-weight: 300 !important;
}

/* !important nötig, um alle @media Breakpoints zu überschreiben */

h1 {
  font-size: var(--text-size-4xl) !important;
}

h2 {
  font-size: var(--text-size-3xl) !important;
}

h3 {
  font-size: var(--text-size-2xl) !important;
}

h4 {
  font-size: var(--text-size-xl) !important;
}

h5 {
  font-size: var(--text-size-lg) !important;
  text-transform: none;
}

p {
  font-size: var(--text-size-md) !important;
}

/* Mobile Menü wie H3 */
nav.mobile_menu ul li a {
  font-size: var(--text-size-2xl) !important;
  padding: 0.425em 0 !important;
}

/* Menu Items wie H3 */
nav.main_menu > ul > li > a {
  font-size: var(--text-size-lg) !important;
}

/* Header Menu Verlauf im HG damit lesbar */

header {
  background: rgba(0, 0, 0, 0.4);
  background: linear-gradient(
    0deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(0, 0, 0, 0.5) 40%
  );
}

/*Platzhalter Complianz für Google Maps Karte*/

.cmplz-placeholder-parent {
  max-height: 440px;
}

/*neu angelegte Verlinkungen auf weiss setzen*/
.link {
  color: white !important;
}

.link:hover {
  opacity: 0.65 !important;
}

/*Hero Images resposniv, füllen die gesamte Breite*/

.has_fixed_background {
  background-size: cover !important;
  background-position: bottom !important;
  background-attachment: unset !important;
}


/* Responsive Design */
@media only screen and (min-width: 1001px) {
  nav.main_menu > ul > li > a {
    padding: 0;
    line-height: 1.4em !important;
  }

  ul#menu-main {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 1.5vw;
    row-gap: 1rem;
  }

  header {
    position: absolute;
  }

  /* Remove negative Margins Top*/
  .content {
    margin-top: 0;
  }

  .header_bottom.clearfix {
    display: flex;
    justify-content: space-between;
    align-items: center;

    width: calc(100% - 45px * 2);

    &::after {
      display: none;
    }
    &::before {
      display: none;
    }
  }

  .q_logo img {
    width: 200px !important;
		height:200px !important;
    & .normal {
      padding-top: 1rem;
    }
  }

  header .header_inner_left {
    position: unset;
  }

  nav.main_menu {
    position: unset !important;
  }


}





@media only screen and (min-width: 1001px) and (max-width: 1660px) {
  .header_bottom.clearfix {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2.6rem;
  }

	header.sticky   .header_bottom.clearfix{
    flex-direction: column;	
    gap: 1em;
		padding-block: 1em;
	}


  header .header_inner_left {
    position: unset !important;
  }

  .header_inner_right {
    display: none;
  }
	
  .q_logo a img.sticky {
    left: -25%;
  }
  h3 {
    font-size: 3rem;
  }
  h1 {
    font-size: 3rem !important;
    padding: 0.2em 1.2em !important;
  }

  .title {
    height: 60vh !important;
  }
  .title_holder {
    height: unset !important;
    top: 50% !important;
  }


  /*Position des Seiten Titels auf Bild*/
  .title .title_holder {
    top: 500px !important;
  }

  /*Höhe des Hintergrund Bilds*/
  .title.position_center.has_fixed_background {
    height: 800px !important;
  }
}




@media only screen and (max-width: 1000px) {
	
.content .content_inner > .full_width > .full_width_inner{
		padding-top:0 !important;
	}
	
/*	.wpb_row{
		padding-block: 4rem !important;
	}
*/
	/*Burger Icon*/
	.fa{
		font-size: 2rem;
	}
	header.qode-mobile-menu-opened .mobile_menu {
  padding-bottom: 2rem;
}

/* Sticky Logo größer*/
.q_logo a{
	height:unset !important;
    left: -45% !important;
}

.q_logo img.mobile-logo {
	height: unset !important;
	width: min(70vw, 500px) !important;
  }
}