

/* =========================================================
   Contact Form 7 – Clean Premium (DF FINAL STABLE)
   ========================================================= */


/* ---------- Form Container ---------- */

.wpcf7 form{
  max-width:720px;
}


/* =========================================================
   Inputs
   ========================================================= */

.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form textarea{

  display:block;
  width:100%;

  padding:10px 16px;
  padding-right:34px;

  background: rgba(255,252,252,0.90);

  border:1.3px solid rgba(215,130,140,0.12);
  border-radius:12px;

  color: rgba(147,84,59,0.82);

  font-size:15.5px;
  font-weight:500;

  letter-spacing:.04em;
  line-height:1.35;

  box-shadow:
    0 1px 2px rgba(215,130,140,0.035);

  transition:
    border-color .25s ease,
    box-shadow .22s ease,
    transform .18s cubic-bezier(0.33,0,0.2,1);
}


/* ---------- Textarea ---------- */

.wpcf7 form textarea{
  min-height:140px;
  resize:vertical;
}


/* ---------- Hover ---------- */

.wpcf7 form input[type="text"]:hover,
.wpcf7 form input[type="email"]:hover,
.wpcf7 form input[type="tel"]:hover,
.wpcf7 form textarea:hover{

  border-color: rgba(242,218,218,0.82);

  box-shadow:
    0 1px 2px rgba(215,130,140,0.045);

  transform: translateY(-0.2px);
}


/* ---------- Focus ---------- */

.wpcf7 form input:focus,
.wpcf7 form textarea:focus{

  outline:none;

  border-color: rgba(242,218,218,0.82);

  box-shadow:
    0 0 5px rgba(255,235,235,0.08),
    0 1px 2px rgba(215,130,140,0.05);

  transform: translateY(-0.2px);
}


/* ---------- Error ---------- */

.wpcf7 form input.wpcf7-not-valid,
.wpcf7 form textarea.wpcf7-not-valid{

  border-color: rgba(215,130,140,0.24);

  box-shadow:
    0 1px 2px rgba(215,130,140,0.05);
}


/* ---------- Placeholder ---------- */

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder{

  color: rgba(147,84,59,0.46);

  font-size:15px;
  font-weight:400;
}

.wpcf7 input:focus::placeholder,
.wpcf7 textarea:focus::placeholder{
  opacity:0.55;
}


/* =========================================================
   Vertical Rhythm
   ========================================================= */

.wpcf7 form p{
  margin-bottom:24px;
}

.wpcf7 form p:last-of-type{
  margin-bottom:24px;
}


/* =========================================================
   CF7 Validation – INLINE (ICON BLEIBT CF7)
   ========================================================= */

.wpcf7-form-control-wrap{
  position:relative;
}

.wpcf7-form-control-wrap .wpcf7-not-valid-tip{

  position:absolute !important;

  right:14px !important;
  top:50% !important;
  transform:translateY(-50%) !important;

  display:inline-block !important;

  font-size:12px;
  line-height:1;

  color: rgba(147,84,59,0.42);

  background:none !important;
  border:none !important;
  box-shadow:none !important;

  margin:0;
  padding:0;

  white-space:nowrap;

  pointer-events:none;
}


/* Textarea */

.wpcf7-form-control-wrap textarea + .wpcf7-not-valid-tip{

  top:14px !important;
  transform:none !important;
}


/* Checkbox */

.wpcf7-form-control-wrap .wpcf7-checkbox + .wpcf7-not-valid-tip{

  right:0 !important;
  top:2px !important;
  transform:none !important;
}


/* =========================================================
   Checkbox
   ========================================================= */

.wpcf7 input[type="checkbox"]{

  -webkit-appearance:none;
  appearance:none;

  width:16px;
  height:16px;

  border:1.3px solid rgba(215,130,140,0.16);
  border-radius:4px;

  background: rgba(255,252,252,0.58);

  display:inline-block;
  position:relative;

  margin-right:10px;
  vertical-align:middle;

  cursor:pointer;

  box-shadow:
    0 1px 2px rgba(215,130,140,0.035);

  transition:
    border-color .22s ease,
    box-shadow .2s ease,
    background .2s ease;
}


/* Checkmark */

.wpcf7 input[type="checkbox"]:checked::after{

  content:"";

  position:absolute;

  width:4px;
  height:8px;

  border: solid rgba(147,84,59,0.82);
  border-width: 0 1.5px 1.5px 0;

  top:2px;
  left:5px;

  transform: rotate(45deg);
}


/* Label */

.wpcf7 .wpcf7-list-item-label{

  font-size:15px;

  color: rgba(147,84,59,0.82);

  letter-spacing:.04em;
  line-height:1.4;
}


/* =========================================================
   Response
   ========================================================= */

.wpcf7 form > .wpcf7-response-output{
  margin:0 !important;
  padding:0 !important;
  border:none !important;
  background:none !important;
  box-shadow:none !important;
}

.wpcf7 .df-submit{
  display:flex;
  align-items:center;
  gap:16px;
}

.wpcf7 .df-submit .wpcf7-response-output{

  display:inline-flex;
  align-items:center;

  font-size:14.5px;
  line-height:1.25;

  color: rgba(147,84,59,0.64);

  transition: opacity .3s ease;
}


/* =========================================================
   Spinner entfernen
   ========================================================= */

.wpcf7-spinner{
  display:none !important;
}

/* =========================================================
   CF7 RESPONSE – INLINE FIX (SALIENT OVERRIDE)
   ========================================================= */

.wpcf7 form > .wpcf7-response-output{
  display:none !important; /* global deaktivieren */
}


/* Inline Version NUR im Submit Wrapper */

.wpcf7 .df-submit .wpcf7-response-output{

  display:inline-flex !important;
  align-items:center;

  width:auto !important;
  max-width:none !important;

  margin:0 !important;
  padding:0 !important;

  border:none !important;
  background:none !important;
  box-shadow:none !important;

  font-size:14.5px;
  line-height:1.25;

  color: rgba(147,84,59,0.64);

  white-space:nowrap;

  gap:6px;
}


/* WICHTIG: Salient blockt oft flex */

.wpcf7 .df-submit{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
}


/* Verhindert, dass Response „umkippt“ */

.wpcf7 .df-submit .wpcf7-response-output p{
  margin:0 !important;
}


/* Optional: etwas ruhiger */

.wpcf7 .df-submit .wpcf7-response-output{
  opacity:0.85;
}


