/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
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
*/

/*------------------------------------------------------------------
[ Fonts ]
*/
/* inter-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/inter-v13-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/inter-v13-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/inter-v13-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/inter-v13-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/*------------------------------------------------------------------
[ Variables ]
*/
:root {
  --blau: #112835;
  --grau: #A7A9AC;
  --sand-beige: #E5D8C5;
  --kuper-bronze: #C6793A;
  --main-font: 'Inter';
}

/*------------------------------------------------------------------
[ General ]
*/
html {
	-webkit-font-smoothing: antialiased;
	font-size: 62.5%;
}
html, body {
	max-width: 100%;
    overflow-x: hidden;
}
body { 
	margin: 0;
	padding: 0;
	color: #111;
    font-family: var(--main-font);
	font-weight: 400;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 1.4;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	-moz-osx-font-smoothing: grayscale;
	width: 100%;
    background: #fff;
    overflow-x: hidden;
}
*,
*:before,
*:after {
	box-sizing: border-box;
}
.elementor-widget-text-editor p {
    margin-bottom: 2rem;
}
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}
.elementor-widget-text-editor h1,
.elementor-widget-text-editor h2,
.elementor-widget-text-editor h3,
.elementor-widget-text-editor h4,
.elementor-widget-text-editor h5,
.elementor-widget-text-editor h6 {
    margin-top: 2rem;
}
.elementor-widget-heading .elementor-heading-title span {
    color: var(--kuper-bronze);
}
.elementor-heading-title,
.elementor-slide-description,
.elementor-gallery-item__description,
.elementor-carousel-image-overlay,
.elementor-cta__description,
.wp-caption .wp-caption-text,
.gallery-caption,
.entry-caption {
    white-space: pre-line;
}
[type="button"], 
[type="submit"], 
button {
    padding: 1rem 2rem;
    border: none;
    font-size: 1.4rem;
}
.hero-image {
    top: 1rem;
    height: 40vw;
    max-height: 70rem;
    border-radius: 1rem;
}
/* Making checkbox and radio button invisible */
.elementor-field-option input[type="checkbox"],
.elementor-field-option input[type="radio"]{
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.elementor-field-type-checkbox > div label:before,
.elementor-field-type-acceptance > div label:before,
.elementor-field-type-radio > div label:before {
	content: "";
    position: absolute;
    top: .5rem;
    left: 2rem;
    width: 2.4rem;
    height: 2.4rem;
    margin: 0 1rem .8rem 0;
    vertical-align: -1.4rem;
    border: 1px solid var(--blau);
    padding: 0;
    border-radius: .3rem;
    background-color: transparent;
    background-clip: content-box;
    transition: all 0.2s ease;
}
.elementor-field-type-acceptance a {
    text-decoration: underline;
}
.elementor-field-type-radio > div label:before {
    border-radius: 100%;
}
.elementor-field-type-checkbox > div label,
.elementor-field-type-acceptance > div label,
.elementor-field-type-radio > div label {
    display: inline-block !important;
	margin-right: 1rem;
    text-transform: none;
    letter-spacing: normal;
    line-height: 1.6;
    padding-left: 4rem;
}
.elementor-field-type-checkbox > div input:hover + label:before,
.elementor-field-type-acceptance > div input:hover + label:before,
.elementor-field-type-radio > div input:hover + label:before {
	border-color: var(--blau);
}
.elementor-field-type-checkbox > div input:checked + label:before,
.elementor-field-type-acceptance > div input:checked + label:before,
.elementor-field-type-radio > div input:checked + label:before {
	background-color: var(--blau);
    border-color: var(--blau);
    padding: .2rem;
}
*::-webkit-input-placeholder {
    color: var(--grau) !important;
    font-size: inherit !important;
    font-weight: 400 !important;
}
*:-moz-placeholder {
    color: var(--grau)  !important;
    opacity: 1 !important;
    font-size: inherit !important;
    font-weight: 400 !important;
}
*::-moz-placeholder {
    color: var(--grau)  !important;
    opacity: 1 !important;
    font-size: inherit!important;
    font-weight: 400 !important;
}
*:-ms-input-placeholder {
    color: var(--grau)  !important;
    font-size: inherit !important;
    font-weight: 400 !important;
}
*::-ms-input-placeholder {
    color: var(--grau)  !important;
    font-size: inherit !important;
    font-weight: 400 !important;
}
*::placeholder {
    color: var(--grau)  !important;
    font-size: inherit !important;
    font-weight: 400 !important;
}
.site-content .elementor-field-group.elementor-field-type-checkbox,
.site-content .elementor-field-group.elementor-field-type-acceptance,
.elementor-popup-modal .elementor-field-group.elementor-field-type-acceptance,
.elementor-popup-modal .elementor-field-group.elementor-field-type-acceptance {
    margin-top: 2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: inherit;
}

/*------------------------------------------------------------------
[ Top-Leiste / Header ]
*/
.top-bar .elementor-widget-theme-site-logo img {
    transition: max-width .25s ease-in-out;
}
.top-bar {
    box-shadow: 0 0rem 3rem rgba(0,0,0,0);
}
/* sticky effects */
.top-bar.elementor-sticky--effects .elementor-widget-theme-site-logo img {
    max-width: 14rem;
}
.top-bar.elementor-sticky--effects {
    box-shadow: 0 1rem 5rem rgba(0,0,0,0.1);
}
.top-bar .menu-item.button a {
    background: #111;
    border-radius: .5rem;
    padding: 8px 30px !important;
    color: #fff !important;
}

/*------------------------------------------------------------------
[ Animations ]
*/

@keyframes slideInRight {
  from {
    transform:translate3d(30%,0,0);
    visibility:visible
  }
  to {
    transform:translate3d(0,0,0)
  }
}

@keyframes slideInLeft {
  from {
    transform:translate3d(-30%,0,0);
    visibility:visible
  }
  to {
    transform:translate3d(0,0,0)
  }
}

@keyframes fadeInRight {
  from {
    opacity:0;
    transform:translate3d(30%,0,0)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes fadeInLeft {
  from {
    opacity:0;
    transform:translate3d(-30%,0,0)
  }
  to {
    opacity:1;
    transform:none
  }
}
.fadeInLeft {
  animation-name:fadeInLeft
}

@keyframes fadeInUp {
  from {
    opacity:0;
    transform:translate3d(0,30%,0)
  }
  to {
    opacity:1;
    transform:none
  }
}
.fadeInUp {
    animation-timing-function: cubic-bezier(0,.99,.99,1.01);
    animation-name:fadeInUp
}

/*------------------------------------------------------------------
[ Media Queries ]
*/
@media only screen and (max-width: 1600px) {
    .hero-image {
        border-radius: 0;
    }
}
@media only screen and (max-width: 767px) {
    .top-bar.elementor-sticky--effects .elementor-widget-theme-site-logo img {
        max-width: 12rem;
    }
} 