/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
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: 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
*/

/* Add your custom styles here */
.hh-contact-section {
  display: flex;
  gap: 48px;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  width: 100%;
  padding: 50px 150px 100px;
  background: #ffffff;
  box-sizing: border-box;
}

.hh-contact-section__left,
.hh-contact-section__right {
  width: 50%;
  box-sizing: border-box;
}

.hh-contact-section__left {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.hh-contact-section__right {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Linke Spalte */
.hh-contact-section__left h4 {
  margin: 0 0 4px;
  color: #1e2939;
  font-family: "Lora", serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.45px;
}

.hh-contact-section__left h6 {
  margin: 10px 0 0;
  color: #1e2939;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.43;
  letter-spacing: -0.15px;
}

.hh-contact-section__left p {
  margin: 0;
  color: #4a5565;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: -0.15px;
}

.hh-contact-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 10px 15px;
  border-radius: 4px;
  background: #eaaa00;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: -0.15px;
}

.hh-contact-pill__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  min-width: 18px;
  height: 18px;
  font-size: 14px;
  line-height: 1;
}

/* Rechte Spalte */
.hh-contact-section__right h4 {
  margin: 0 0 8px;
  color: #eaaa00;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.44px;
}

/* CF7 Form */
.hh-cf7-form {
  width: 100%;
}

.hh-cf7-field {
  margin-bottom: 10px;
}

.hh-cf7-field label {
  display: block;
  margin-bottom: -15px;
  color: #6a7282;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
}

.hh-cf7-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.hh-cf7-input {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #cccccc !important;
  border-radius: 4px !important;
  background: #ffffff;
  color: #1e2939;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 400;
  box-sizing: border-box;
}

.hh-cf7-textarea {
  min-height: 117px;
  resize: vertical;
}

/* Acceptance */
.hh-cf7-field--acceptance .wpcf7-list-item {
  margin: 0;
}

.hh-cf7-field--acceptance .wpcf7-list-item-label {
  color: #1e2939;
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  line-height: 1.5;
}

.hh-cf7-field--acceptance input[type="checkbox"] {
  margin-right: 8px;
  transform: translateY(1px);
  accent-color: #eaaa00;
}

.hh-cf7-field--acceptance a {
  color: #1e2939;
  text-decoration: underline;
}

/* Submit */
.hh-cf7-submit {
  display: inline-block;
  padding: 10px 15px;
  border: 0;
  border-radius: 4px;
  background: #eaaa00;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.43;
  letter-spacing: -0.15px;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.hh-cf7-submit:hover {
  opacity: 0.9;
}

/* Fehlermeldungen / Output */
.hh-cf7-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 12px;
}

.hh-cf7-form .wpcf7-response-output {
  margin: 16px 0 0;
  padding: 10px 12px;
  border-radius: 4px;
  font-size: 13px;
}

/* Responsive */
@media (max-width: 1024px) {
  .hh-contact-section {
    padding: 40px 40px 60px;
    gap: 32px;
  }
}

@media (max-width: 767px) {
  .hh-contact-section {
    flex-direction: column;
    padding: 32px 20px 48px;
  }

  .hh-contact-section__left,
  .hh-contact-section__right {
    width: 100%;
  }

  .hh-contact-section__left h4,
  .hh-contact-section__right h4,
  .hh-contact-section__left h6,
  .hh-contact-section__left p {
    text-align: center;
  }

  .hh-contact-pill {
    margin-left: auto;
    margin-right: auto;
  }

  .hh-cf7-field--submit {
    text-align: center;
  }
}