/*
Theme Name: Edelweis
Author: nobi
Description: Ein WordPress-Theme für Yogazentrum Vicomudewa
Version: 1.0.0
*/
@font-face {
font-family: 'Montserrat';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url(assets/fonts/montserrat_normal_100_900.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(assets/fonts/playfairDisplay_normal_400_900.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

/* TYPO */	   
body, .card-header h2, .sans-serif { font-family: Montserrat, sans-serif !important;}

h1, h2, h3, h4, .h1, .h2, .h3, .h4, .serif {
	font-family: 'Playfair Display', serif;
	font-style: normal;
}
h5 {font-weight: 600 !important;}  /* Impressum, Datenschutz */

.text-red {color: #a61153 !important;}
.text-teal {color: #0E7874;}

.lsp-md, .lsp-md a {letter-spacing: .05rem !important;}
.lsp-lg, .lsp-lg a {letter-spacing: .08rem !important;}

.border-red {border: 1px solid #a61153;}
.border-teal {border: 1px solid #0E7874;}

/* IMG responsive */
img {
	max-width: 100%;
	height: auto;

	vertical-align: top; /* Icons */
}

/*  ----- NAV / A ----- */

a { 
	text-decoration: none;
	color: #212529;
	padding-bottom: 2px;
	border-bottom: 1px solid rgba(33,37,41,.5);}

a:hover,a:focus {
	color: #000;
	border-bottom-color: #000;}
	
a.logo, footer a  /* , .figure-caption a */ { border-bottom: 0;}
footer a {color: #000;}
	
.px-45 {
	padding-right: 2.2rem;
	padding-left: 2.2rem;}
		
.navbar-nav .nav-link { letter-spacing: .05rem;}
@media (min-width: 768px) {
	.navbar-nav .nav-link {
		margin-right: .4rem;
		margin-left: .4rem;}}
@media (min-width: 992px) {
	.navbar-nav .nav-link {
		margin-right: .8rem;
		margin-left: .8rem;}} 
.navbar-light .navbar-nav .nav-link { color: rgba(0, 0, 0, .75);}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { color: rgba(0, 0, 0, .9);}	
.navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .nav-link.active { color: rgba(0, 0, 0, 1);}
.nav-masthead .nav-link {
	padding-bottom: .25rem;
	font-weight: 400;
	background-color: transparent;
	border-bottom: 2px solid transparent;}
.nav-masthead .nav-link:hover, .nav-masthead .nav-link:focus { border-bottom-color: rgba(230, 24, 75, .5);}
.nav-masthead .active { border-bottom-color: #e61873;}
				
/* LOGOS */	
#logo {
	background:url(assets/logo/logo.png) no-repeat;
	width: 206px;
	height: 110px;}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {
	#logo {
		background:url(assets/logo/logo-@2x.png) no-repeat;
		background-size: 206px 110px;}}
	
#logo_sm, #logo_footer {
	background:url(assets/logo/logo_sm.png) no-repeat;
	width: 150px;
	height: 80px;}	
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {
	#logo_sm, #logo_footer {
		background:url(assets/logo/logo_sm-@2x.png) no-repeat;
		background-size: 150px 80px;}}

/* BTN */
.btn-teal {
	--bs-btn-color: #fff;
	--bs-btn-bg: #0E7874;
	--bs-btn-border-color: #0E7874;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #0C6663;
	--bs-btn-hover-border-color: #0C615E;
	--bs-btn-focus-shadow-rgb: 60, 153, 110;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #0C615E;
	--bs-btn-active-border-color: #0B5957;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
		
.btn-outline-teal {
  --bs-btn-color: #0E7874;
  --bs-btn-border-color: #0E7874;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0E7874;
  --bs-btn-hover-border-color: #0E7874;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0E7874;
  --bs-btn-active-border-color: #0E7874;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0E7874;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0E7874;
  --bs-gradient: none;
}

			
/* ??? */
/* li a.dropdown-item { color: #212529;}
li a.dropdown-item:focus, a.dropdown-item:hover {
	color: #000;
	background-color: #f0f4f8;}
ul.dropdown-menu li a.active, ul.dropdown-menu li a:active {
	   color: #000;
	   background-color: #d4d8dc;}

ul li:not(:last-child) {
	margin-bottom: .5rem;
} */
		
/* FRONTPAGE */

.welcome h1 { line-height: 1.25;}

@media (min-width: 768px) {
	.welcome h1 {
		line-height: 2;
	}
	.welcome {
		position: absolute;
		top: 40%;
		left: 8%;
		transform: translate(-8%, -40%);
		z-index: 1;
		width: 50%;
	}
}

@media (min-width: 992px) {
	.welcome {
		left: 10%;
		transform: translate(-10%, -50%);
	}
}

@media (min-width: 768px) and (max-width: 991.98px) {
	.welcome h1 {
		font-size: calc(1.325rem + 0.9vw); /* .h2 */
	}
}
		
@media (max-width: 767.98px) {
	.welcome {
		text-align: center !important;}
}
	
@media (max-width: 575.98px) {
	.fs-xs-4 {
		font-size: calc(1.275rem + 0.3vw) !important;}  /* .fs-4 */
} 
		
	/* AKTUELLES */
h2.current {
	display: flex;
	align-items: center;}
h2.current::after {
	content:"";
	flex: 1;
	border-top: 1px solid #a61153;
	margin-left: 1rem;}					

	/* 	CARDS */
.card {
	-ms-flex-direction: row !important;
	flex-direction: row !important;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;}
.card-header {
	width: 100%;}
	
@media (min-width: 576px) and (max-width: 767.98px) {
	img.thumb {
		width: 80%;}}

@media (max-width: 575.98px) {	
	img.thumb {
		max-height: 330px; 
		width: auto;}}
	
/* KURSE */
		
.welcome-kurse {
	position: absolute;
	left: 20%;
	top: 10%;
	transform: translate(-20%, -10%);
	z-index: 1;
}

@media (min-width: 576px) and (max-width: 767.98px) {
	.welcome-kurse {
		font-size: calc(1.325rem + 0.9vw) !important;}
}
	
.bg-white-alpha {
	background-color: rgba(255,255,255,0.85);
} 
	
.table-horarios td {
	padding-top: 1rem;
	padding-bottom: 1rem;
	font-weight: 500;
}

td span.d-inline-block {width: 85%;}


td.flower1::before {
	content: url('assets/icons/flower1.svg');
	width: 24px;
	height: 24px;
	vertical-align: top;
	margin-right: .7rem;	
}
	
/* KONTAKT */

@media (min-width: 992px) {
	#contactform {
		background: url('assets/img/kontakt_0222-xl.jpg') no-repeat right center;
		background-size: cover;}
}

.w-85 { width: 85%;}		

  /* Formular: KEINE rows! Siehe BS-Docs */  
textarea { height: 140px !important;}
  
/* 404 */
.centered {		
	position: absolute;
	top: 24%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%);
	z-index: 1;}
.subline {font-size: 1.1rem;}
@media (min-width: 576px) {
	.centered { top: 30%;}
	.subline {font-size: calc(1.275rem + 0.3vw) !important;}
}

/* FOOTER */	

.w-90 { width: 90%;}
.pt-icon {padding-top: .15rem;} /* Ausrichtung Icon */

/* Spiffy */
.cat-key-cell { min-width: 10px;}