/* 
Theme Name: Supersaxo Media AG – Child Theme
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child Theme.
Author: Supersaxo Media AG
Author URI: https://www.supersaxo.media/
Template: hello-elementor
Version: 1.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
*/

/* Custom Styles Valpix */
:root {
	--custom-title-color: #000000 !important;
	--custom-body-color: #000000 !important;
}
html, body {
    overflow-x: hidden;
}

p:last-child, p:only-child {
    margin-bottom: 0;
}
h1:first-child, h2:first-child, h3:first-child {
    margin-top: 0;
}
.elementor-icon-box-title {
    margin-bottom: 0 !important;
}
.page-content section, .archive section, .elementor-location-footer {
  margin-top: 100px;
}
.elementor-button, footer ul a {
    text-decoration: none !important;
}
.cta-section h3 {
    margin-top: 0;
    margin-bottom: 0;
}
.searchandfilter > ul {
  display: flex;
  margin-top: 0;
  margin-bottom: 0;
  flex-direction: row;
  justify-content: space-between;
  gap: 50px;
  padding-left: 0;
}
.searchandfilter > ul ul {
  display: flex;
  padding: 0;
  gap: 20px;
}

.elementor-button:hover, [type="button"]:hover, [type="submit"]:hover, button:hover{
  transform: scale(.97);
}

[type=checkbox] {
    position: relative;
    left: 15px;
    top: -4px;
    z-index: 0;
    -webkit-appearance: none
}

[type=checkbox]+label {
    position: relative;
    padding-left: 0!important
}

[type=checkbox]+label::before {
    width: 25px;
    height: 25px;
    background-color: transparent;
    border: 2px solid var( --e-global-color-primary );
    display: block;
    content: "";
    float: left;
    margin-right: 10px;
    z-index: 5;
    position: relative;
    top: -3px;
    left: 0;
    border-radius: 100%;
    opacity: .5
}

.elementor-form [type=checkbox]+label::before {
    width: 25px;
    height: 25px;
    background-color: transparent;
    border: 2px solid var( --e-global-color-primary );
    display: block;
    content: "";
    float: left;
    margin-right: 10px;
    z-index: 5;
    position: relative;
    top: 3px;
    left: 0;
    border-radius: 100%;
    opacity: .5
}

input[type=checkbox]:checked+label::before {
    background-color: var( --e-global-color-primary );
    border: 2px solid var( --e-global-color-primary );
    opacity: 1
}
.searchandfilter select.sf-input-select {
    min-width: 300px;
    background: #fff;
    border-radius: 8px
}

.side-slider .swiper-slide, .image-ratio .elementor-widget-image, .image-ratio {
    padding-top: 66.66%;
    overflow: hidden;
}

.side-slider img, .image-ratio img {
    height: 100% !important;
    width: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
    transform: scale(1.02);
    transition: all .3s ease-in-out !important;
}
.dialog-close-button.dialog-lightbox-close-button {
  text-decoration: none;
}
.e-loop-item:hover img {
  transform: scale(1);
}
privacybee-widget div, privacybee-widget div ul li, privacybee-widget div a {
	max-width: 100% !important;
	line-height: inherit !important;
}
.prx_text {
    max-width: 100% !important;
}

footer p {
    font-size: 20px;
    line-height: 28px;
}
footer ul li {
  list-style-type: none;
  padding: 0;
  margin: 0;
  position: relative;
}
footer ul li::before {
  content: '';
  position: absolute;
  left: -37px;
  width: 22px;
  height: 2px;
  bottom: 10px;
  background-color: black;
}
@media screen and (max-width: 1400px) {
	.e-con-full.e-parent, .e-con-boxed.e-parent .e-con-inner {
		padding-left: 40px;
		padding-right: 40px;
	}
	.e-con-boxed.e-parent .e-con-inner .e-con-inner  {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (max-width: 768px) {
	.e-con-full.e-parent, .e-con-boxed.e-parent .e-con-inner {
  		padding-left: 20px;
  		padding-right: 20px;
	}
	.e-con-boxed.e-parent .e-con-inner .e-con-inner  {
		padding-left: 0;
		padding-right: 0;
	}
	header .elementor-icon-box-title {
      display: none;
    }
	header .elementor-icon-box-icon {
      margin-right: 0 !important;
    }
	.page-content section, .archive section, .elementor-location-footer {
	  margin-top: 60px;
	}
	.searchandfilter > ul {
	  flex-direction: column;
	  gap: 0;
	}
	footer p {
	  font-size: 17px;
	  line-height: 1.4;
}
}