/*
Theme Name: sofi
Author: SoFi
Description: sofi is a child theme for Hello Elementor.
Version: 1.3.0
Text Domain: sofi
Template: hello-elementor

This is the child theme for Hello Elementor theme.
*/

/*  Temporär die alt-Tags mit bestimmten Inhalt nicht anzeigen   */ 

img[alt*="2022"] {
	color: transparent;
}

/*  Template-Fix  */
.elementor-menu-toggle:focus {
    outline: none;
    outline: 0;
}
.eicon-menu-bar:active, .eicon-menu-bar:focus {
	color: #333;
}

/*  Allgemein  */
html {
  scroll-behavior: smooth;
}
body {
	min-height: 98vh;
	line-height: 1.8571;
}
.page-content { 
	min-height: 91vh;
}
[data-elementor-type="wp-page"] {
    min-height: 83vh;
}
.elementor-location-footer {
	padding-top: 32px;
}
h5 {
	color: #333;
}
ul {
	margin-bottom: 0.9rem;
}
a {
	color: #CC1719;
}

/***  Header  ***/
.site-logo-img img {
    transition: all 0.2s linear;
}
.site-logo-img img:hover {
    transition: all .2s ease;
    transform: scale(1.1);
}
.elementor-screen-only, .screen-reader-text, .screen-reader-text span, .ui-helper-hidden-accessible {
    top: 0;
    margin: 0;
    clip: auto;
}

/***  Footer  ***/
a.footer-copyright-link {
    color: #333;
}
a.footer-copyright-link:hover {
    color: #CC1719;
}
@media (max-width: 767px) {
	footer.elementor-section a {
		line-height: 1.8571;
	}
}
a.footer-copyright-link {
    text-decoration: underline;
}

/***  Hauptmenü Desktop  ***/
.elementor-nav-menu--layout-horizontal {
    justify-content: flex-end;
}

/***  Hauptmenü Offcanvas Mobil  ***/
.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu .elementor-item {
	padding: 0 30px 10px 30px;
	justify-content: right;
	-webkit-justify-content: flex-end;
	align-items: flex-end;
	-webkit-align-items: flex-end;
}
.elementor-nav-menu--dropdown a.elementor-item:hover {
	transform: scale(1.03);
	transition: .2s;
}
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
	overflow: hidden !important;
	padding-bottom: 20px;
}

/***  Kontaktformular  ***/

div.wpforms-container-full .wpforms-form label.wpforms-error {
	color: #DD1719 !important;
	font-size: 1rem !important;
	text-align: right;
	margin-top: 5px;
}
.wpforms-field-limit-text {
	display: none;
}
.form-datenschutztext {
	font-size: 1rem !important;
	font-weight: 400;
}

/***  Borderfix Textarea Kontaktformular   ***/

div.wpforms-container-full .wpforms-form textarea {
	border: 1px solid transparent;
}

/***  Inhalt  ***/

.elementor-section-wrap {
	min-height: 85vh;
}

/***  Elementor Hero-Image, zusätzliche Klasse  ***/
.elementor-column-gap-default > .elementor-column.md-fullwidth > .elementor-element-populated {
	padding: 0;
}
#md-hero-sector {
	max-width: 1326px;
	margin: -3px auto 10px;
}

/***  Datenschutz  ***/

h5 { color: #333; }
ul { margin-bottom: 0.9rem; }
a {
	background-color: transparent;
	text-decoration: none;
	color: #CC3366;
}

.elementor-widget-html {
	font-family: var( --e-global-typography-text-font-family ),Sans-serif;
    font-size: var( --e-global-typography-text-font-size );
    font-weight: var( --e-global-typography-text-font-weight );
	color: var( --e-global-color-text );
}

/***  Elementor Widget Gallery (Pro)  ***/

.elementor-widget-gallery {
    --galleries-title-color-normal: #333;
    --galleries-title-color-hover: #CC1719;
	--gallery-title-color-active: #CC1719;
}
a.elementor-item.elementor-gallery-title {
	color: #333;
}
a.elementor-item.elementor-gallery-title.elementor-item-active, a.elementor-item.elementor-gallery-title.highlighted, a.elementor-item.elementor-gallery-title:focus, a.elementor-item.elementor-gallery-title:hover {
	color: #CC1719;
}
.elementor-gallery__titles-container {
    justify-content: flex-start !important;
}

/***  Alle Seiten, zusätzliche CSS-Klasse für Elementor Section  ***/
.content-min-height {
    min-height: 80vh;
}
.post-password-form {
	max-width: 600px;
	margin: 90px auto 60vh;
	padding: 20px;
	background-color: #fff;
	border: 2px solid black;
}
.post-password-form input[type="submit"] {
	display: flex;
	margin-top: 20px;
}

/***  StoreLocator und BorlabsCookies  ***/
#wpsl-wrap #wpsl-result-list ul li {
    background: #fff;
}
#wpsl-wrap #wpsl-result-list ul li:nth-child(2n) {
    background: #f4f3f3;
}
.wpsl-dropdown {
    width: 105px;
}
#wpsl-search-wrap div label {
    padding-top: 6px;
}
#wpsl-result-list li p {
    line-height: 2rem;
	margin: 0 0 15px 0;
}
.wpsl-direction-wrap {
    line-height: 2rem;
}
#wpsl-gmap img[src*="blue@2x"] {
    display: none !important;
}
.privacy-policy ._brlbs-btn-cookie-preference {
	margin-left: 40px;
}
#wpsl-gmap #wpsl-map-controls {
    display: none;
}
#wpsl-gmap .wpsl-info-window {
    color: #000;
}
.wpsl-info-window a {
    outline: 0 none;
}

/* Eingabefeld - Passwort */
.post-password-form input {
    margin-top: 10px;
}

/* Tabellen Lieblings-Shops */
.dataTables_filter {
    margin-bottom: 20px;
}
.dataTables_length {
    margin-bottom: 20px;
}

/***  fonts   ***/

body {
	font-family: Roboto, Lato, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
h1, h2, h3 {
	font-family: Anton, sans-serif;
	font-style: normal;
	font-weight: 400;
	color: #CC1719;
}

h1 {
  font-size: 2.8rem; }

h2 {
  font-size: 2.8rem; }

h3 {
  font-size: 1.875rem; }

h4 {
  font-size: 1.7125rem; }

h5 {
  font-size: 1.525rem; }

h6 {
  font-size: 1.325rem; }


/* lato-regular - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lato-v22-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/lato-v22-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lato-v22-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/lato-v22-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/lato-v22-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/lato-v22-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
}

/* lato-700 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lato-v22-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/lato-v22-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lato-v22-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/lato-v22-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/lato-v22-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/lato-v22-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
}

/* lato-900 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/lato-v22-latin-900.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/lato-v22-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lato-v22-latin-900.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/lato-v22-latin-900.woff') format('woff'), /* Modern Browsers */
       url('fonts/lato-v22-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/lato-v22-latin-900.svg#Lato') format('svg'); /* Legacy iOS */
}

/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-v29-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/roboto-v29-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-500 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/roboto-v29-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-500.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-v29-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-500italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: url('fonts/roboto-v29-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-500italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-700italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/roboto-v29-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-700italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-900 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/roboto-v29-latin-900.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-900.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-900.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-900.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-900.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-900italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 900;
  src: url('fonts/roboto-v29-latin-900italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-v29-latin-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-v29-latin-900italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-v29-latin-900italic.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-v29-latin-900italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-v29-latin-900italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-slab-regular - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-slab-v16-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-slab-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-slab-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-slab-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-slab-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-slab-v16-latin-regular.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}

/* anton-regular - latin */
@font-face {
  font-family: 'Anton';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/anton-v22-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/anton-v22-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/anton-v22-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/anton-v22-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/anton-v22-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/anton-v22-latin-regular.svg#Anton') format('svg'); /* Legacy iOS */
}

/*
@media (max-width: 767px) {
}
@media (max-width: 576px) {
}

body[data-elementor-device-mode=desktop] .md-top-margin, body[data-elementor-device-mode=tablet] .md-top-margin {
}


body[data-elementor-device-mode=mobile] .md-top-margin {
}
*/

.md-box {
    border-style: solid;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin: 30px 0px 60px 0px;
    padding: 20px 20px 20px 20px;
	background-color: #FFFFFFB3;
}


/* Umfragen */

.basic-message.basic-error {
    background-color: #ff000022;
}
.basic-yop-poll-container .visualCaptcha-explanation {
    background: none;
}
.basic-yop-poll-container .visualCaptcha {
    padding: 0 0 15px;
    border: 1px solid black;
    margin: 20px;
    background-color: rgba(140, 140, 140, 0.1);
}
.basic-yop-poll-container .visualCaptcha-explanation {
    margin: 0px !important;
	padding: 10px 10px 0px !important;
}
a.button.basic-vote-button:hover {
    background-color: #000000 !important;
}
.basic-message.basic-error.basic-success, .basic-message.basic-success {
    background-color: rgba(0, 179, 0, 0.1);
}
.basic-yop-poll-container {
    background-color: transparent !important;
}
.basic-yop-poll-container .visualCaptcha-possibilities .img {
    border: none !important;
}
.basic-yop-poll-container .visualCaptcha-accessibility-button {
    display: none;
}
.basic-message {
    margin: 20px;
}
.basic-yop-poll-container .basic-captcha .visualCaptcha-button-group {
    margin-top: 6px !important;
}
.basic-yop-poll-container .basic-question-title h5 {
    margin-bottom: 1.5em !important;
}
.basic-yop-poll-container .visualCaptcha-refresh-button {
    margin-right: 0px !important;
}
.basic-yop-poll-container .visualCaptcha-accessibility-button, .basic-yop-poll-container .visualCaptcha-refresh-button {
    width: 40px !important;
    height: 40px !important;
    line-height: 40px !important;
}
.basic-yop-poll-container .basic-question {
    margin-bottom: 40px;
}
.basic-yop-poll-container .basic-answers-results .progress {
    margin-top: -4px !important;
    height: 25px !important;
}
.basic-yop-poll-container .visualCaptcha-possibilities .img a.visualCaptcha-selected {
    background-color: #eee;
    border: 2px solid #00b300 !important;
}


/* 5 verschiedene Farben für die Ergebnisbalken */

/*
li:nth-child(5n-4).basic-answer .progress .progress-bar {  
    background-color: #8cc0d0 !important;
}

li:nth-child(5n-3).basic-answer .progress .progress-bar {	
    background-color: #ee6e60 !important;
}

li:nth-child(5n-2).basic-answer .progress .progress-bar {	
    background-color: #cbe1b2 !important;
}

li:nth-child(5n-1).basic-answer .progress .progress-bar {	
    background-color: #fdebc5 !important;
}

li:nth-child(5n).basic-answer .progress .progress-bar {	
    background-color: #f5a575 !important;
}
*/

.basic-yop-poll-container *,
.basic-yop-poll-container *:after,
.basic-yop-poll-container *:before {
  box-sizing: border-box;
}
.basic-yop-poll-container form {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  width: 100%;
}
.basic-yop-poll-container label {
  display: flex;
  cursor: pointer;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  margin-bottom: 0.375em;
}
.basic-yop-poll-container label input {
  position: absolute;
  left: -9999px;
}
.basic-yop-poll-container label input:checked + span {
  background-color: #00b30021;
}
.basic-yop-poll-container label input:checked + span:before {
  box-shadow: inset 0 0 0 0.4375em #00b300;
}
.basic-yop-poll-container label span {
  display: flex;
  align-items: center;
  padding: 0.375em 0.875em 0.375em 0.375em;
  border-radius: 99em;
  transition: 0.25s ease;
}
.basic-yop-poll-container label span:hover {
  background-color: #e9e9e9;
}
.basic-yop-poll-container label span:before {
  display: flex;
  flex-shrink: 0;
  content: "";
  background-color: transparent;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  margin-right: 0.675em;
  margin-left: 0.175em;
  transition: 0.25s ease;
  box-shadow: inset 0 0 0 0.125em #00005c;
}
.basic-yop-poll-container .basic-inner {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: left;
  align-items: center;
  padding: 20px;
}

/* Okt. 22 Thalia AT */

.md-h2-headline h2 {
  font-size: 18px;
  font-weight: 800 !important;
  line-height: 1.6rem;
}
@media (min-width: 576px) {
	.md-h2-headline h2 {
		font-size: 22px;
		line-height: 1.8rem;
	}
}
@media (min-width: 767px) {
	.md-h2-headline h2 {
		font-size: 24px;
	}
}
.auto-trennung h1 {
  hyphens: auto;
  -webkit-hyphens: auto;  
}

/* ab MD 23 */

.md-faq .elementor-accordion .elementor-accordion-item {
    border: 0;
}
.md-faq .elementor-accordion .elementor-tab-content {
    border-top: 0;
}
.sofi-zoom {
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.sofi-zoom:hover {
    -webkit-transform: scale(1.02);
    transform: scale(1.05);
}
.pr-lp-wrapper {
	margin: 0 0 !important;
	border-bottom: 1px solid #333;
}

@media (max-width: 742px) {
	.elementor-section.pr-lp-wrapper .elementor-container {
		justify-content: center;
	}
}

@media (min-width: 420px) {
	.pr-lp-wrapper {
		margin: 0 30px !important;
	}
}
.pr-lp-box {
	margin: 0;
}
.pr-lp-box p {
    margin-block-end: 0;
}
.md-button.right {
    text-align: right;
}

/* ab MD 24 */

#BtnShowMd22, #BtnShowMd23, #BtnShowMd24 {
    cursor: pointer;	
}
#GalMd22, #GalMd23, #GalMd24 {
    transition: all 1s ease-in-out;	
}
[data-elementor-post-type="page"] .hidden {
    max-height: 1px;
    overflow: hidden;
    opacity: 0;
    transition: all 1s ease-in-out;	
}
.e-gallery-item {
	cursor: pointer;
}
span.inline-h3 {
    font-size: 1.1em;
    font-weight: 600;
    color: #CC1719;
}

@media (max-width: 670px) {
	.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
		display: none;
	}
}
