/* CSS Document */
.fa-star,
.fa-star-half{
	color: #fc3;
}
.fc-red{
	color: #f00;
}
.grey{
	color: #ccc;
}
.padl0{
	padding-left: 0;
}
.padr0{
	padding-right: 0;
}
.padr5{
	padding-right: 5px;
}

.brdt1{
	border-top: 1px solid #f2f2f2;
}
.brdb1{
	border-bottom: 1px solid #f2f2f2;
}

body{
	background-color: #f6f6f6;
}

h1{
	font-size: 1.2em;
}

h2{
	color: #337ab7;
	font-weight: bold;
	font-size: 1em;
}
h3{
	font-size: 1.4em;
}

header{
	padding: .5em 0;
	background-color: #fff;
}
header .score{
	font-size: .6em;
}

  .tarif-1 {
    /* box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px; */
    /* box-shadow: rgb(9, 53, 103) 0px 5px, rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px; */
  }

.bewertung-modal-opener{
	cursor: pointer;
}

.bewertung {
    display: inline-flex;
	-ms-flex-align: center!important;
    align-items: center!important;
}
.bewertung img {
    margin-right: 5px;
	width: 30px;
    height: 30px;
}

aside{
	position: relative;
	min-height: 100px;
	margin-bottom: 30px;
	background-image: url("../images/teaser/bg.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

aside h1{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	color: #fff;
	padding: .25em 0;
	text-align: center;
	background-color: rgba(0,0,0,.5);
}

.tarife button.btn,
form button.btn,
.tarife .row .btn-offer{
	display: block;	
	color: #fff;
	border: .1em solid #f60;
	background-color: #f60;
	margin-top: 15px;
}
.tarife .row .btn-offer:hover,
.tarife .row .btn-offer:active,
.tarife .row .btn-offer:focus{
	color: #f60;
	background-color: #fff;
}
.tarife .row{
	font-size: .8em;
	padding-top: 15px;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border: .05em solid #ddd;
	background-color: #fff;
}
.tarife .row:first-child{
	margin-bottom: 30px;
}
.tarife .row div{
	border-left: .05em solid #ddd;
}
.tarife .row div:first-child{
	text-align: left;
	border: none;
}
.tarife .score{
	margin: 0;
	text-align: center;
}
.tarife .score strong span{
	font-size: 2em;	
}
footer{
	padding: .5em 0;
	margin-top: 30px;
	text-align: center;
	background-color: #3b3b3b;
}
footer, footer a{
	color: #fff;
}
.explanation {
	font-size: .8em;
}

.tipp {
    position: absolute;
	left: 15%;
    right: 15%;
    top: -18px;
	color: #fff;
	font-size: 16px;
	line-height: 24px;
    text-align: center;
	background-color: #c42828;
	z-index: 1000;
}
.tipp::before,
.tipp::after{
	position: absolute;
	content: ' ';
	width: 0;
	height: 0;
	border-style: solid;
}
.tipp::before {
	left: -16px;
	border-width: 0 0 19px 16px;
	border-color: transparent transparent #921717 transparent;
}

.tipp::after {
	right: -16px;
	border-width: 19px 0 0 16px;
	border-color: transparent transparent transparent #921717;
}

.stoerer{
	position: absolute;
	right: -25px;
	top: -15px;
	color:#fff;
	font-size: .8em;
	font-weight: bold;
	line-height: 1.2em;
	padding-top: 10px;
	width: 50px;
	height: 50px;
	text-align: center;
	border-radius: 50%;
	background-color:#86A71A;
	z-index: 10;
}
.modal-body{

}

.openai-button {
  display: inline-block;
  padding: 10px 20px;
  background-color: #0082c8;
  color: #ffffff;
  text-decoration: none;
  font-size: 16px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.openai-button:hover {
  background-color: #005a9e;
}

.es-review-source-source-bottom-container {
    display: none!important;
}

@media (min-width: 414px){
	aside{
		min-height: 100px;
	}
	h2{
		font-size: 1.2em;
	}
}

@media (max-width: 575.99px){
	.container{
		padding-left: 0;
		padding-right: 0;
	}
}

@media (min-width: 576px){
	h2{
		font-size: 1.4em;
	}
	header .score{
		font-size: .8em;
	}
	.bewertung img {
		width: 40px;
		height: 40px;
	}
	.tarife .row .btn-offer{
		font-size: 1.4em;
	}
	
	footer .f-left{
		text-align: left;
	}
	footer .f-right{
		text-align: right;
	}
	.tipp {
    	left: 25%;
    	right: 25%;
	}
}

@media (min-width: 650px){
	body{
		font-size: 1.1rem;
	}
	.explanation {
		font-size: .9em;
	}
}

@media (max-width: 767.99px){
	.container{
		max-width: 100%;
	}
	.tarife .row div:last-child{
		border: none;
	}
	
	.tarife img{
		margin-bottom: 15px;
	}
}
@media (min-width: 768px){
	body{
		font-size: 1rem;
	}
	aside{
		min-height: 200px;
		margin-bottom: 40px;
	}
	h1{
		font-size: 1.6em;
	}
	h2{
		font-size: 1.2em;
	}
	.padl0{
		padding-left: 0;
	}
	.padr0{
		padding-right: 0;
	}
	.tarife .row .btn-offer {
		font-size: 1.2em;
		margin-top: 0;
	}
	.tipp {
		top: -22px;
		font-size: 20px;
		line-height: 30px;
    	left: 35%;
    	right: 35%;
	}
	.tipp::before {
		border-width: 0 0 23px 16px;
	}
	.tipp::after {
		border-width: 23px 0 0 16px;
	}
}
@media (min-width: 992px){
	body{
		font-size: 1.2rem;
	}
	header{
		padding-top: 1em;
		padding-bottom: 1em;
	}
	aside{
		min-height: 300px;
		margin-bottom: 50px;
		background-image: url("../images/teaser/bg-lg.webp");
	}
	h1{
		font-size: 1.6em;
	}
	h2{
		font-size: 1.4em;
	}
	.stoerer{
		padding-top: 15px;
		width: 65px;
		height: 65px;
	}
}

@media (min-width: 1200px){
	aside{
		min-height: 300px;
		background-image: url("../images/teaser/bg-xl.webp");
	}
	h1{
		font-size: 1.8em;
	}
}

@media (min-width: 1440px){
	aside{
		min-height: 350px;
	}
	h1{
		font-size: 2em;
	}
}

@media (min-width: 1680px){
	aside{
		min-height: 400px;
	}
	h1{
		font-size: 2em;
	}
}

@media (min-width: 1920px){
	
}

label img {
	height: 25px;
	margin-bottom: 5px;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}
.h35 {
	height:35px;
}
.mw-200 {
	max-width: 200px;
}