/* 
Theme Name: viktorwyssag.ch - Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: viktorwyssag.ch is a child theme of Hello Elementor, created by Elementor team
Author: webgearing AG
Author URI: https://www.webgearing.com
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Utilities */

@media (max-width: 1024px) {
	.padding {
		padding:30px;
	}
}

@media (max-width: 767px) {
	.paddingt {
		padding:15px;
	}
}

/* --- Header Sticky --- */

body .header-bar {
	transition:all ease .5s;
	width:100vw !important;
	background:var(--e-global-color-438e667) !important;
	padding-top:15px;
	padding-bottom:15px;
}

body.sticky .header-bar {
	transition:all ease .3s;
	background:var(--e-global-color-438e667) !important;
	border-bottom:var(--e-global-color-f3d6b81) 1px solid;
}

body.sticky .header-bar > .e-con-inner {
	padding-top:15px !important;
	padding-bottom:15px !important;
}

body .header-bar .logo {
	height:50px;
	width:auto;
	margin:0;
}

body .header-bar .logo img {
	opacity:1;
	height:50px;
	width:auto;
}

/* --- Header --- */

.top-header {
	background:var(--e-global-color-text) !important;
	padding:10px 15px;
}

.top-header h3 {
	font-size:14px;
	color:var(--e-global-color-438e667);
}

.top-header p {
	font-size:14px;
	color:var(--e-global-color-438e667);
}


.header-bar {
	background:var(--e-global-color-438e667) !important;
}

body.sticky .header-bar .btn_weiterlesen {
	display:none;
	transition:all ease .3s;
}

/* Navigation */

.current-page-ancestor.current-menu-ancestor > a {
	color:var(--e-global-color-primary) !important;
}

.sub-menu li a:hover, .sub-menu li.current-menu-item a {
	border-left:5px solid var(--e-global-color-primary) !important;
}



/* Header */

.header-text {
	border-right:10px solid var(--e-global-color-primary) !important;
}

/* Typo */

h3 {
	hyphens:auto;
	-moz-hyphens:auto;
	-webkit-hyphens:auto;
}

.elementor-widget-text-editor h3 {
	padding-left:15px;
	border-left:var(--e-global-color-primary) 10px solid;
}

/* Parent Titel */

h3.parent-title {
	font-family:var(--e-global-typography-primary-font-family);
	color:var(--e-global-color-438e667);
	font-size:18px;
	text-transform:uppercase;
	margin:0px;
}

/* container-bild-text-offset */

.container-bild-text-offset {
	padding:90px 0px 90px 0px;
}

@media (max-width: 1024px) {
	.container-bild-text-offset {
	padding:60px 15px 60px 15px;
}
}

@media (max-width: 767px) {
	.container-bild-text-offset {
	padding:30px 15px 30px 15px;
}
}

/* Bild Border Right */

.bild-border-right {
	border-right:10px solid var(--e-global-color-primary) !important;
}

/* Text Offset Left */

.text-offset-left {
	background:var(--e-global-color-6bd75dc);
	position:relative;
	left:100px;
	border-left:10px solid var(--e-global-color-primary) !important;
	border-bottom:1px solid var(--e-global-color-2bea4d7);
	z-index:2;
}

@media (max-width: 1024px) {
	.text-offset-left {
		left:0px;
	}
}


/* Tablepress */

.tablepress {
	--head-active-bg-color:var(--e-global-color-primary) !important;
	--head-bg-color:var(--e-global-color-primary) !important;
  --text-color: var(--e-global-color-text);
  --head-text-color: #fff;
  --odd-text-color: var(--text-color);
  --odd-bg-color: #fff;
  --even-text-color: var(--text-color);
  --even-bg-color: #f9f9f9;
  --hover-text-color: var(--text-color);
  --hover-bg-color: #f3f3f3;
  --border-color: #ddd;
  --padding: 0.5rem;

} 

/* Typography */

.elementor-widget-text-editor ul {
	margin-bottom:15px;
}

/* Listen links bündig, aber ohne hässigen Rieseneinzug */
.elementor-widget-text-editor ul {
    margin-left: 0;
    padding-left: 15px; /* etwa 15px Abstand von Bullet zu Text, gut lesbar */
}

/* Listeneinträge normal blockig */
.elementor-widget-text-editor ul li {
    margin: 0 0 0.3em 0;
}

/* Bullet-Farbe in Primary-Blau setzen */
.elementor-widget-text-editor ul li::marker {
    color: var(--e-global-color-primary, #184e95);
    font-size: 1em; /* gleiche Grösse wie Text */
}



/* --- Footer --- */

.footer p, .footer p a {
	color:#fff !important;
}

.footer h3 {
	color:#fff !important;
	font-size:20px;
	font-weight:500 !important;
}

/* btn_sticky */

.btn_sticky {
	position:fixed;
	right:-250px;
	top:50%;
	overflow:hidden;
	transition:all ease .3s;
}

.btn_sticky:hover {
	right:0px;
	transition:all ease .3s;
}

.btn_sticky .elementor-button {
	padding:0px !important;
	position:relative;
	background-color:transparent !important;
	left:0px;
	transition:all ease .3s;
}

.btn_sticky .elementor-button-icon svg {
	position:absolute;
	top:0;
	left:0;
	z-index:1;
	background-color:var(--e-global-color-secondary) !important;
	padding:5px !important;
	border-radius:0px !important;
	width:60px !important;
	height:60px !important;
	transition:all ease .3s;
}

.btn_sticky .elementor-button-text {
	padding:10px !important;
	line-height:40px !important;
	z-index:2;
	margin-left:60px !important;
	font-size:16px !important;
	background-color:var(--e-global-color-primary)  !important;
	color:var(--e-global-color-6bd75dc) !important;
	font-weight:600 !important;
	text-align:center;
	width:250px;
}

/* Teaser */

.teaser-box {
	box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.15);
}

.teaser-box h3 {
	font-size:20px;
}

/* btn_weiterlesen */

.footer .btn_weiterlesen .elementor-button-icon {
	background-color:var(--e-global-color-6bd75dc) !important;
}

.footer .btn_weiterlesen .elementor-button-text {
	color:var(--e-global-color-6bd75dc) !important;
}

.footer .btn_weiterlesen:hover .elementor-button {
	padding:0px !important;
	position:relative;
	background-color:transparent !important;
	left:10px;
	transition:all ease .3s;
}

.footer .elementor-button {
	fill:var(--e-global-color-text) !important;
}

.cookie-notice-container span, .cn-buttons-container a {
	font-family: var( --e-global-typography-text-font-family ), Sans-serif !important;
}

#cookie-notice .cn-button:not(.cn-button-custom) {
	border-radius:30px;
}

/* Viktor Wyss AG */

.header-ken-burns .slideshow {
	position:relative;
}

.header-ken-burns .slideshow:before {
    content: "";
    position: absolute;
    left: 0;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background-color:var(--e-global-color-primary);
    z-index:2;
}

.header-ken-burns h1 {
	text-shadow:2px 2px 2px black;
	text-transform:uppercase;
	font-weight:900 !important;
	letter-spacing:.05em;
}

/* Teaser */

.teaser-item {
	background:var(--e-global-color-438e667) !important;
	padding:0px !important;
	border-right:1px solid var(--e-global-color-db72675);
}

/* EINHEITLICH: Padding gehört auf die Kachel */
.teaser-item{
  padding: 60px 30px;              /* Wert übernehmen */
  box-sizing: border-box;
}

/* falls irgendwo noch inner-padding gesetzt ist: neutralisieren */
.teaser-item > .e-con-inner{
  padding: 0px !important;
}


.teaser-item h2 {
	font-size:28px;
	text-shadow:none !important;
	text-transform:uppercase;
	font-weight:900 !important;
	letter-spacing:.05em;
	color:var(--e-global-color-text) !important;
	border-left:10px solid var(--e-global-color-primary) !important;
	padding-left:15px;
}

.teaser-item-color-2 h2, .teaser-item-color-4 h2 {
	text-shadow:2px 2px 2px var(--e-global-color-db72675);
	text-transform:uppercase;
	font-weight:900 !important;
	letter-spacing:.05em;
	color:var(--e-global-color-text) !important;
}

.teaser-item ul {
	list-style: square !important;
}

.teaser-item ul li {
	color:var(--e-global-color-text) !important;
	font-weight:500 !important;
}

.teaser-item-color-1 ul li, .teaser-item-color-3 ul li {
	color:var(--e-global-color-438e667) !important;
}

.teaser-item-color-1 .elementor-widget-text-editor ul li::marker {
    color: var(--e-global-color-438e667) !important;
    font-size: 1em; /* gleiche Grösse wie Text */
}

/* Teaser Angebote Variante */

.teaser-item {
	background:var(--e-global-color-438e667) !important;
	padding:0px !important;
	border-right:2px solid var(--e-global-color-db72675);
}

.teaser-angebote-variante .teaser-item h2 {
	
}

.teaser-angebote-variante .teaser-item ul li {
	color:var(--e-global-color-text) !important;
	font-weight:500 !important;
}

.teaser-angebote-variante .teaser-item .elementor-widget-text-editor ul li::marker {
    color: var(--e-global-color-primary) !important;
    font-size: 1em; /* gleiche Grösse wie Text */
}

/* BTN Hightlight */

.btn_highlight {
	background:var(--e-global-color-782f907) !important;	
}

.btn_highlight .elementor-button {
	position:relative;
}

.btn_highlight .elementor-button::before {
	content: "";
	height: 100%;
	width: 10px;
	background: var(--e-global-color-text);
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	transition:all ease .3s;
}

.btn_highlight:hover .elementor-button::before {
	width:100%;
	transition:all ease .3s;
}

.btn_highlight:hover a span.elementor-button-content-wrapper {
	z-index: 2;
	position:relative;
}

/* btn_dark */

.btn_highlight.btn_dark a.elementor-button {
	border-radius:0px !important;
	background:var(--e-global-color-db72675) !important;
}

.btn_highlight.btn_dark a.elementor-button span.elementor-button-text {
	color:var(--e-global-color-text) !important;
}

.btn_highlight.btn_dark a.elementor-button span.elementor-button-icon {
	fill:var(--e-global-color-text) !important;
}

.btn_highlight.btn_dark:hover a.elementor-button span.elementor-button-text {
	color:var(--e-global-color-438e667) !important;
}

/* btn_rot */

.btn_highlight.btn_rot a.elementor-button {
	border-radius:0px !important;
	background:var(--e-global-color-db72675) !important;
}

.btn_highlight.btn_rot a.elementor-button span.elementor-button-text {
	color:var(--e-global-color-text) !important;
}

.btn_highlight.btn_rot a.elementor-button span.elementor-button-icon {
	fill:var(--e-global-color-primary) !important;
}

.btn_highlight.btn_rot:hover a.elementor-button span.elementor-button-text {
	color:var(--e-global-color-438e667) !important;
}

.btn_highlight.btn_rot .elementor-button::before {
	content: "";
	height: 100%;
	width: 10px;
	background: var(--e-global-color-primary);
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	transition:all ease .3s;
}

.btn_highlight.btn_rot .elementor-button::before {
	content: "";
	height: 100%;
	width: 10px;
	background: var(--e-global-color-primary);
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	transition:all ease .3s;
}

.btn_highlight.btn_rot:hover .elementor-button::before {
	width:100%;
	transition:all ease .3s;
}




/* btn_kontakt */

.btn_kontakt {
	background:var(--e-global-color-db72675) !important;
	position:relative;
}

.btn_kontakt::before {
	content: "";
	height: 100%;
	width: 10px;
	background: var(--e-global-color-text);
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	transition:all ease .3s;
}

.btn_kontakt:hover::before {
	width:100%;
	transition:all ease .3s;
}

.btn_kontakt:hover a {
	z-index: 2;
	position:relative;
	color:#fff !important;
}

.btn_kontakt a {
	line-height:20px !important;
	font-size:14px !important;
	color:var(--e-global-color-f3d6b81) !important;
	font-weight:600 !important;
	text-align:left;
	margin-left:0px !important;
}

.btn_kontakt a::after {
	height:0px !important;
}
.elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown {
	margin-top:15px !important;
}
