/*
 Theme Name:     DIVI TJweb Theme
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    DIVI TJweb Theme
 Author:         TJWeb
 Author URI:     https://www.tjweb.eu
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */

/* Google Maps 2-Click-Lösung */
.map-container {
  position: relative;
  width: 100%;
  max-width: 100%; /* Adjust as needed */
  height: 500px; /* Adjust as needed */
  display: grid;
  grid-template: 1fr / 1fr;
  place-items: stretch flex-end;
  gap: 0.25rem;
  border: none;
  text-align: center;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  color: #333;
  container-type: inline-size;
}
.map-container .map-content-wrap {
  width: 100%;
  background-color: #e0e0e0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.map-container .map-content-wrap p {
  width: 95%;
  max-width:50ch;
  line-height: 1.4em;
  margin: 0;
}
.map-container button {
  padding: 0.75em 1.25em;
  font-size: 1rem;
  cursor: pointer;
  background-color: #007bff;
  color: white;
  border: none;
  border-radius: 5px;
  display: block;
}
.map-container .unload-maps-btn {
  font-size: 0.8em;
  font-weight: 500;
  padding: 0.5em 0.75em;
  background: #eee;
  color: #222;
  border-radius: 0;
}

@container (min-width:45rem) {
  .map-container .unload-maps-btn {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 10;
    transform: translatey(calc(100% + 0.15rem));
  }
}

.map-container iframe {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.contact-form-column .contact-form-module .et_pb_text_inner > p {
	display: none;
}

.cursordefault {
	cursor: default!important;
}

.logo .et_pb_text_inner {
	display: flex;
    align-items: center;
    gap: 0.5rem;
}
.logo .logo-image { max-height: 125px; }


/* Centers Mobile Menu while keeping the orientation of the Desktop Menu intact */
@media all and (max-width: 980px) { .mobile-menu-center .et_pb_menu__wrap { justify-content: center!important; } }
@media all and (min-width: 768px) and (max-width: 980px) { .mobile-menu-center .et_pb_menu__wrap { justify-content: center!important; } }
@media all and (max-width: 767px) { .mobile-menu-center .et_pb_menu__wrap { justify-content: center!important; } }
@media all and (max-width: 479px) { .mobile-menu-center .et_pb_menu__wrap { justify-content: center!important; } }

/* Formats Contact Details in Header correctly for Mobile */
@media all and (max-width: 767px) { .contact-phone { display: block; } .contact-seperator { display: none; } .contact-email { display: block; } }
@media all and (max-width: 479px) { .contact-phone { display: block; } .contact-seperator { display: none; } .contact-email { display: block; } }

/* Homepage Call-to-Action Mobile & Tablet Spacing */
@media all and (max-width: 980px) { .cta-column { margin-top: 1rem; } }
@media all and (min-width: 768px) and (max-width: 980px) { .cta-column { margin-top: 1rem; } }
@media all and (max-width: 767px) { .et_pb_cta_6.et_pb_promo, .et_pb_cta_3.et_pb_promo, .et_pb_cta_0.et_pb_promo, .et_pb_cta_2.et_pb_promo, .et_pb_cta_1.et_pb_promo, .et_pb_cta_7.et_pb_promo, .et_pb_cta_5.et_pb_promo, .et_pb_cta_4.et_pb_promo { min-height: unset!important; margin-top: 1rem; } }
@media all and (max-width: 479px) { .et_pb_cta_6.et_pb_promo, .et_pb_cta_3.et_pb_promo, .et_pb_cta_0.et_pb_promo, .et_pb_cta_2.et_pb_promo, .et_pb_cta_1.et_pb_promo, .et_pb_cta_7.et_pb_promo, .et_pb_cta_5.et_pb_promo, .et_pb_cta_4.et_pb_promo { min-height: unset!important;  margin-top: 1rem; } }


.cta-space-between.et_pb_module {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}


/* Text Highlight Color */
::selection {
    background-color: #c8001d;
    color: white;
}
/* END */

/* Scrollbar styles */
::-webkit-scrollbar {
    background-color: #222222;
    width: 15px;
  }
  ::-webkit-scrollbar-track {
    background-color: #222222;
}
::-webkit-scrollbar-thumb{
background-color: #c8001d;
}
/* END */

/* OSM Load Button Color */
.gdpr-iFrame .gdpr-btn {
    color: #fff;
    background-color: #c8001d;
    border-color: #c8001d;
    transition: .4s;
}
/* OSM Load Button Hover Color */
.gdpr-iFrame .gdpr-btn:hover {
    color: #fff!important;
    background-color: #ee1c39;
    border-color: #ee1c39;
}

/* OSM Privacy Policy Link */
.gdpr-iFrame-info [title="Datenschutzrichtlinie anzeigen"] {
	color: #c8001d;
	font-weight: 800!important;
	transition: .4s;
}
.gdpr-iFrame-info [title="Datenschutzrichtlinie anzeigen"]:hover {
	color: #ee1c39;
}

.ratio-1-1 .et_pb_image_wrap {
    padding-top: 100%;
}
    
.ratio-16-9 .et_pb_image_wrap {
    padding-top: 56.25%;
}
    
.ratio-4-3 .et_pb_image_wrap {
    padding-top: 75%;
}
    
.ratio-3-2 .et_pb_image_wrap {
    padding-top: 66.67%;
}
    
.ratio-9-16 .et_pb_image_wrap {
    padding-top: 177.78%;
}
    
.ratio-3-4 .et_pb_image_wrap {
    padding-top: 133.33%;
}
    
.ratio-2-3 .et_pb_image_wrap {
    padding-top: 150%;
}

.ratio-custom .et_pb_image_wrap {
    padding-bottom: 150%;
}
    
.custom-ratio .et_pb_image_wrap {
    display:block;
}
    
.custom-ratio .et_pb_image_wrap img {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
}



.ratio-1-1 .et_pb_gallery_image {
    padding-top: 100%;
    }
    .ratio-16-9 .et_pb_gallery_image {
    padding-top: 56.25%;
    }
    .ratio-4-3 .et_pb_gallery_image {
    padding-top: 75%;
    }
    .ratio-3-2 .et_pb_gallery_image {
    padding-top: 66.67%;
    }
    .ratio-9-16 .et_pb_gallery_image {
    padding-top: 177.78%;
    }
    .ratio-3-4 .et_pb_gallery_image  {
    padding-top: 133.33%;
    }
    .ratio-2-3 .et_pb_gallery_image {
    padding-top: 150%;
    }
    .custom-ratio .et_pb_gallery_image {
      display:block;
    }
    .custom-gallery-ratio .et_pb_gallery_image img {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
    }

@media all and (max-width: 980px) {
    /*** wrap row in a flex box ***/
    .custom-row {
     display: -webkit-box;
     display: -moz-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
    -webkit-flex-wrap: wrap; /* Safari 6.1+ */
    flex-wrap: wrap;
    }
    /*** custom classes that will designate the order of columns in the flex box row ***/
    .first-on-mobile {
    -webkit-order: 1;
    order: 1;
    }
    .second-on-mobile {
    -webkit-order: 2;
    order: 2;
    }
    .third-on-mobile {
    -webkit-order: 3;
    order: 3;
    }
    .fourth-on-mobile {
    -webkit-order: 4;
    order: 4;
    }
    .fifth-on-mobile {
    -webkit-order: 5;
    order: 5;
    }
    /*** add margin to last column ***/
    .custom-row:last-child .et_pb_column:last-child {
    margin-bottom: 30px;
    }}


/* Start Defaults */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

* {
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    padding: 0;
}

/* DIVI Parallax Position + smoother transition */
.et_parallax_bg {
	background-position:center;
	transition:.1s;
}

/*-------------------------*/
/*- Contact form 7 Styles -*/
/*-------------------------*/
.wpcf7 .wpcf7-form-control-wrap input:not([type="checkbox"]), textarea {
  width: 100%;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], select, textarea {
margin:0px 0px 20px 0px !important;
}
.wpcf7 input,
.wpcf7 textarea {
padding:1.2em;
border:2px solid #c8001d;
color:black;
background:transparent;
font-size:1rem;
}
::-webkit-input-placeholder { /* WebKit browsers */
  color: black !important;
  font-weight: 600;
  opacity: 1;
}

/*Contact form 7 Submit Button*/
.wpcf7 input[type=submit]{
padding: 15px 30px;
background:#c8001d;
color:white;
font-size:18px;
border:none!important;
font-weight:500;
margin-top:1rem;
transition-duration:.4s;
cursor: pointer;
}

.wpcf7 input[type=submit]:hover{
/*Submit Hover Farbe*/
background:#c8001d;
}
/*ENDE*

  /*Kontaktformular Spalten*/
  /* Mobile / Desktop */
  @media only screen and ( min-width: 1100px ) { 
    .wps-form-row {
        flex-direction: row;
        display:flex;
    }
    .wps-form-column-left {
        padding-right: 10px;
        flex: 1;
        width: 100%;
    }
    .wps-form-column-right {
        padding-left: 10px;
        flex: 1;
        width: 100%;
    }
    .wps-form-column-center {
        padding: 0px 10px;
        flex: 1;
        width: 100%;
    }
  }
  /*ENDE*/
.ds-box {
font-size:15px;
line-height:1.4em;
}
.wpcf7 p {
padding:0px;
}
/*-------------------------*/
/*------ Styles Ende ------*/
/*-------------------------*/

@media only screen and (min-width: 1100px) {
    .wps-form-row {
        flex-direction: row;
        display: flex;
        gap: 1rem;
    }

    .wps-form-row>* {
        flex: 1;
    }
}

/* Box-Inhalt per Flexbox vertikal zentrieren */
.vertical-align {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.nav li ul {
    width: max-content !important;
    display: flex;
    flex-direction: column;
}

.nav li li ul {
    left: max-content !important;
}

.et-menu li li a {
    width: max-content;
}

/* Eigener Breakpoint 1 */
@media (max-width: 1024px) {
    #et_mobile_nav_menu {
        display: block;
    }

    #top-menu {
        display: none;
    }
}


.mfp-title {
	display: none!important;
}

/* LGF - Font Import */
/* rajdhani-300 - 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: 'Rajdhani';
    font-style: normal;
    font-weight: 300;
    src: url('fonts/rajdhani/rajdhani-v17-latin-300.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('fonts/rajdhani/rajdhani-v17-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/rajdhani/rajdhani-v17-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-300.woff') format('woff'), /* Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
         url('fonts/rajdhani/rajdhani-v17-latin-300.svg#Rajdhani') format('svg'); /* Legacy iOS */
}

/* LGF - Font Import */
/* rajdhani-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: 'Rajdhani';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/rajdhani/rajdhani-v17-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('fonts/rajdhani/rajdhani-v17-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/rajdhani/rajdhani-v17-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-regular.woff') format('woff'), /* Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('fonts/rajdhani/rajdhani-v17-latin-regular.svg#Rajdhani') format('svg'); /* Legacy iOS */
}

/* LGF - Font Import */
/* rajdhani-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: 'Rajdhani';
    font-style: normal;
    font-weight: 500;
    src: url('fonts/rajdhani/rajdhani-v17-latin-500.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('fonts/rajdhani/rajdhani-v17-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/rajdhani/rajdhani-v17-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-500.woff') format('woff'), /* Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
         url('fonts/rajdhani/rajdhani-v17-latin-500.svg#Rajdhani') format('svg'); /* Legacy iOS */
}

/* LGF - Font Import */
/* rajdhani-600 - 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: 'Rajdhani';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/rajdhani/rajdhani-v17-latin-600.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('fonts/rajdhani/rajdhani-v17-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/rajdhani/rajdhani-v17-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-600.woff') format('woff'), /* Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
         url('fonts/rajdhani/rajdhani-v17-latin-600.svg#Rajdhani') format('svg'); /* Legacy iOS */
}

/* LGF - Font Import */
/* rajdhani-700 - 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: 'Rajdhani';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/rajdhani/rajdhani-v17-latin-700.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('fonts/rajdhani/rajdhani-v17-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('fonts/rajdhani/rajdhani-v17-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-700.woff') format('woff'), /* Modern Browsers */
         url('fonts/rajdhani/rajdhani-v17-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
         url('fonts/rajdhani/rajdhani-v17-latin-700.svg#Rajdhani') format('svg'); /* Legacy iOS */
}
