/* 
Theme Name: ERT Solutions
Theme URI: https://github.com/elementor/hello-theme-child/
Description: ERT Solutions is a child theme of Hello Elementor, created by Elementor team
Author: okdesigns
Author URI: https://www.okdesigns.de
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
*/

/* Gesamte Passwort-Sektion */
.page-content:has(form.post-password-form) {
  box-sizing: border-box !important;
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  width: 100% !important;

  padding-top: 250px !important;
  padding-bottom: 250px !important;
}


/* Hintergrundbild mit 50 % Transparenz */
.page-content:has(form.post-password-form)::before {
  content: "" !important;

  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;

  background-image: url("https://ert-solutions.com/wp-content/uploads/2026/06/ERT_BlurryDownloadpage-scaled.webp") !important;
  background-size: min(1400px, 100%) auto !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;

  opacity: 0.5 !important;
  pointer-events: none !important;
}


/* Ursprünglichen Erklärungstext ausblenden */
form.post-password-form > p {
  display: none !important;
}


/* Bereich mit Passwortfeld und Button wieder anzeigen */
form.post-password-form > p:last-of-type {
  display: block !important;
  margin: 0 !important;
  text-align: center !important;
}


/* Hellgrauer Kasten */
form.post-password-form {
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 1 !important;

  width: calc(100% - 40px) !important;
  max-width: 360px !important;

  margin-left: auto !important;
  margin-right: auto !important;
  padding: 40px !important;

  background: #f3f5f6 !important;
  border-radius: 15px !important;

  box-shadow: 0 8px 24px rgba(19, 48, 68, 0.08) !important;

  text-align: center !important;
}


/* Originalen Text „Passwort:“ ausblenden und Inhalte anordnen */
form.post-password-form label {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;

  width: 100% !important;
  margin: 0 !important;

  font-size: 0 !important;
  text-align: center !important;
}


/* Große Überschrift */
form.post-password-form label::before {
  content: "Passwort";

  display: block;
  order: 1;

  margin: 0 0 4px !important;

  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}


/* Beschreibung unter der Überschrift */
form.post-password-form label::after {
  content: "Geben Sie Ihr Passwort ein, um auf die Downloadseite zuzugreifen. Sollten Sie noch keinen Zugang haben, melden Sie sich einfach über das Kontaktformular unten auf der Seite bei uns, damit wir Ihnen die Zugangsdaten zuschicken können.";

  display: block;
  order: 2;

  margin: 0 0 18px !important;

  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}


/* Passwortfeld */
form.post-password-form input[type="password"] {
  box-sizing: border-box !important;
  display: block !important;
  order: 3;

  width: 100% !important;
  max-width: 250px !important;

  margin: 0 auto !important;

  font-size: 18px !important;
  text-align: center !important;
}


/* Button darunter zentrieren */
form.post-password-form input[type="submit"] {
  display: block !important;

  margin: 15px auto 0 !important;
  padding: 10px 15px !important;
}

/* Elementor/PhotoSwipe Lightbox: Dateiname/Caption komplett blockieren */
.elementor-slideshow__footer,
.elementor-slideshow__title,
.elementor-slideshow__description {
    display: none !important;
}


/* EXT: CONTACT FORM 7 - OKD */
.wpcf7, .wpcf7 * {
	 text-align: left !important;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="phone"],
.wpcf7 input[type="search"],
.wpcf7 textarea {
	 display: block;
	 width: 100%;
	 font-family: "Inter", sans-serif;
	 font-size: 17px;
	 font-weight: normal;
	 color: inherit;
	 line-height: 1;
	 text-align: left;
	 padding: 14px 14px;
	 background: #fff;
	 border: 1px solid #133044;
	 border-radius: 10px;
	 -webkit-appearance: none;
}
 .wpcf7 input[type="text"]::placeholder, .wpcf7 input[type="email"]::placeholder, .wpcf7 input[type="phone"]::placeholder, .wpcf7 input[type="search"]::placeholder, .wpcf7 textarea::placeholder {
	 color: #133044;
}
 .wpcf7 input[type="text"][readonly], .wpcf7 input[type="email"][readonly], .wpcf7 input[type="phone"][readonly], .wpcf7 input[type="search"][readonly], .wpcf7 textarea[readonly] {
	 background: #f5f5f5;
}
 .wpcf7 textarea {
	 height: 200px;
	 min-height: 200px;
	 max-height: 500px;
	 width: 100%;
	 min-width: 100%;
	 max-width: 100%;
}
 .wpcf7 .row {
	 display: flex;
	 flex-direction: row;
	 flex-wrap: wrap;
	 align-items: stretch;
	 gap: 0 16px;
	 margin: 0 0 24px;
}
.wpcf7-form > p,
.wpcf7 .row > p,
.wpcf7 .column > p {
	 width: 100%;
	 font-size: 15px;
   font-weight: 300;
	 margin-block-end: 0;
}
 .wpcf7 .row label {
	 display: block;
	 margin: 0 0 8px;
	 font-size: 17px;
	 font-weight: 400;
	 text-align: left !important;
}
 .wpcf7 .row > .column {
	 display: flex;
	 flex-direction: column;
	 align-items: stretch;
	 justify-content: stretch;
	 width: calc(50% - (16px / 2));
	 text-align: left;
}
 .wpcf7 .row .wpcf7-form-control-wrap {
	 width: 100%;
	 flex: 0 0 auto;
}
 .wpcf7 .row.submit {
	 margin: 32px 0 0;
}
 .wpcf7 .row.submit p {
	 display: flex;
	 flex-direction: column;
	 justify-content: center;
	 align-items: center;
}
 .wpcf7 .row.submit p .wpcf7-spinner {
	 display: none;
}
 .wpcf7 form.submitting .wpcf7-spinner {
	 display: block !important;
	 margin: 24px 0 0;
}
 .wpcf7 hr {
	 margin: 20px 0;
}
 .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars), .wpcf7 .wpcf7-checkbox, .wpcf7 .wpcf7-acceptance {
	 display: flex;
	 flex-direction: row;
	 flex-wrap: wrap;
	 align-items: center;
	 gap: 16px 32px;
}
 .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) .wpcf7-list-item, .wpcf7 .wpcf7-checkbox .wpcf7-list-item, .wpcf7 .wpcf7-acceptance .wpcf7-list-item {
	 margin: 0;
}
 .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) .wpcf7-list-item label, .wpcf7 .wpcf7-checkbox .wpcf7-list-item label, .wpcf7 .wpcf7-acceptance .wpcf7-list-item label {
	 cursor: pointer;
	 text-align: left;
	 margin: 0;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars).wpcf7-acceptance, .wpcf7 .wpcf7-checkbox.wpcf7-acceptance, .wpcf7 .wpcf7-acceptance.wpcf7-acceptance {
	 height: auto;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars).wpcf7-acceptance .wpcf7-list-item, .wpcf7 .wpcf7-checkbox.wpcf7-acceptance .wpcf7-list-item, .wpcf7 .wpcf7-acceptance.wpcf7-acceptance .wpcf7-list-item {
	 margin-right: 0;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input, .wpcf7 .wpcf7-checkbox input, .wpcf7 .wpcf7-acceptance input {
	 display: none;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span, .wpcf7 .wpcf7-checkbox input + span, .wpcf7 .wpcf7-acceptance input + span {
	 display: block;
	 font-size: 15px;
	 font-weight: 400;
	 line-height: 1.4;
	 color: inherit;
	 padding: 0 0 0 32px;
	 position: relative;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span a, .wpcf7 .wpcf7-checkbox input + span a, .wpcf7 .wpcf7-acceptance input + span a {
	 color: #133044;
	 text-decoration: underline !important;
	 text-underline-offset: 2px;
	 transition: all 0.2s;
}
.wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span a:hover, .wpcf7 .wpcf7-checkbox input + span a:hover, .wpcf7 .wpcf7-acceptance input + span a:hover {
	 color: #133044;
}
 .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span:before, .wpcf7 .wpcf7-checkbox input + span:before, .wpcf7 .wpcf7-acceptance input + span:before {
	 display: block;
	 content: "";
	 width: 20px;
	 height: 20px;
	 background: #fff;
	 border: 1px solid #133044;
	 border-radius: 50%;
	 position: absolute;
	 top: 1px;
	 left: 0;
	 transition: none;
}
 .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input:checked + span:before, .wpcf7 .wpcf7-checkbox input:checked + span:before, .wpcf7 .wpcf7-acceptance input:checked + span:before {
	 background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%23ffffff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"/></svg>') no-repeat center center #133044;
	 background-size: auto 80%;
	 border-color: #133044;
}
 .wpcf7 .wpcf7-checkbox input + span:before, .wpcf7 .wpcf7-acceptance input + span:before {
	 border-radius: 0;
}

.wpcf7 .wpcf7-submit {
  padding: 9px 25px 9px 49px !important;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 35.8"><path d="M17.5,0C7.8,0,0,7.8,0,17.5v.8c0,9.7,7.8,17.5,17.5,17.5s17.5-7.8,17.5-17.5v-.8C35,7.8,27.2,0,17.5,0ZM23.3,21.5c0,.3-.2.5-.5.5s-.5-.2-.5-.5v-8.1l-11.3,11.3c-.2.2-.5.2-.7,0s-.2-.5,0-.7l11.3-11.3h-8.1c-.3,0-.5-.2-.5-.5s.2-.5.5-.5h9.8v9.8Z" style="fill:%23ffffff;"/></svg>') no-repeat left 7px center #133044;
	background-size: auto 30px;
}
.wpcf7 .wpcf7-submit:hover {
	background-color: rgba(19, 48, 68, .85);
}

.wpcf7 .wpcf7-form-control-wrap {
	 display: flex;
	 flex-direction: column;
}
.wpcf7 .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
	 order: 1;
}
.wpcf7 .wpcf7-not-valid-tip {
	 display: block;
	 font-size: 14px;
	 font-weight: 400;
	 color: #ff7676 !important;
	 line-height: 1.1;
	 text-align: left;
	 margin: 8px 0 0;
}
.wpcf7 form .wpcf7-response-output {
	 font-size: 14px;
	 font-weight: 500;
	 color: #333;
	 line-height: 1.4;
	 text-align: left;
	 padding: 16px 24px 15px !important;
	 margin: 40px 0 0 !important;
	 border: 0 !important;
	 border-radius: 3px;
	 background: #ff7676;
}
.wpcf7 form .wpcf7-response-output img, .wpcf7 form .wpcf7-response-output svg {
	 display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
	 color: #ffffff;
   background: #46b450;
}
 @media only screen and (max-width: 767px) {
	 .wpcf7 .row {
		 gap: 10px;
	}
	 .wpcf7 .row .column {
		 width: 100%;
	}
}

#ert-cta .wpcf7 {
	max-width: 802px;
	margin-left: auto;
	margin-right: auto;
}
#ert-cta .wpcf7 .row label,
#ert-cta .wpcf7 p {
	color: #ffffff;
}
#ert-cta .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span, #ert-cta .wpcf7 .wpcf7-checkbox input + span, #ert-cta .wpcf7 .wpcf7-acceptance input + span {
	color: #ffffff;
}
#ert-cta .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span a, #ert-cta .wpcf7 .wpcf7-checkbox input + span a, #ert-cta .wpcf7 .wpcf7-acceptance input + span a {
	 color: #ffffff;
}
#ert-cta .wpcf7 .wpcf7-radio:not(.wpcf7-rating-stars) input + span a:hover, #ert-cta .wpcf7 .wpcf7-checkbox input + span a:hover, #ert-cta .wpcf7 .wpcf7-acceptance input + span a:hover {
	 color: #f5f5f5;
}
#ert-cta .wpcf7 .wpcf7-submit {
	color: #133044;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 35.8"><path d="M17.5,0C7.8,0,0,7.8,0,17.5v.8c0,9.7,7.8,17.5,17.5,17.5s17.5-7.8,17.5-17.5v-.8C35,7.8,27.2,0,17.5,0ZM23.3,21.5c0,.3-.2.5-.5.5s-.5-.2-.5-.5v-8.1l-11.3,11.3c-.2.2-.5.2-.7,0s-.2-.5,0-.7l11.3-11.3h-8.1c-.3,0-.5-.2-.5-.5s.2-.5.5-.5h9.8v9.8Z" style="fill:%23133044;"/></svg>') no-repeat left 7px center #ffffff;
	background-size: auto 30px;
}
#ert-cta .wpcf7 .wpcf7-submit:hover {
	background-color: rgba(255, 255, 255, .85);
}
#ert-cta .wpcf7 input[type="text"],
#ert-cta .wpcf7 input[type="email"],
#ert-cta .wpcf7 input[type="phone"],
#ert-cta .wpcf7 input[type="search"],
#ert-cta .wpcf7 textarea {
	 color: #133044;
}
#ert-cta .wpcf7 input[type="text"]::placeholder, .wpcf7 input[type="email"]::placeholder, #ert-cta .wpcf7 input[type="phone"]::placeholder, #ert-cta .wpcf7 input[type="search"]::placeholder, #ert-cta .wpcf7 textarea::placeholder {
	 color: #133044;
}