/* Erdea Solutions – Kontakt & Support-Formular */
.ek-section{background:#fff;padding:4.5rem 2rem;font-family:'DM Sans',sans-serif;color:#1A202C}
.ek-inner{max-width:1100px;margin:0 auto}
.ek-kopf{text-align:center;max-width:640px;margin:0 auto 2.25rem}
.ek-tag{display:inline-flex;align-items:center;gap:8px;background:#E8F5F0;color:#1A6B5A;padding:6px 16px;border-radius:30px;font-size:13px;font-weight:600;letter-spacing:.02em;margin-bottom:1rem}
.ek-h2{font-family:'DM Serif Display',serif!important;font-size:2.2rem!important;line-height:1.2!important;font-weight:400!important;color:#0D3D2E!important;margin:0 0 .75rem!important}
.ek-sub{font-size:1rem;line-height:1.7;color:#4A5568;margin:0}

.ek-karte{background:#fff;border:1px solid #d4e8e1;border-radius:16px;box-shadow:0 12px 40px rgba(13,61,46,.08);overflow:hidden}
.ek-tabs{display:grid;grid-template-columns:1fr 1fr;background:#F2FAF7;border-bottom:1px solid #d4e8e1}
.ek-tab{appearance:none;border:0;background:transparent;text-align:left;padding:1.25rem 1.5rem;cursor:pointer;display:flex;flex-direction:column;gap:4px;border-bottom:3px solid transparent;color:#4A5568;transition:background .2s,color .2s;font-family:inherit}
.ek-tab:hover{background:#E8F5F0}
.ek-tab.is-active{background:#fff;color:#0D3D2E;border-bottom-color:#1A6B5A}
.ek-tab:focus-visible{outline:2px solid #1A6B5A;outline-offset:-2px}
.ek-tab-titel{font-size:1.05rem;font-weight:700}
.ek-tab-text{font-size:.85rem;color:#718096}
.ek-tab.is-active .ek-tab-text{color:#4A5568}

.ek-panel{padding:2rem}
.ek-panel[hidden]{display:none}
.ek-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.5rem}
.ek-feld{display:flex;flex-direction:column;gap:.35rem}
.ek-feld-voll{grid-column:1 / -1}
.ek-feld label,.ek-feld .ek-label{font-size:.86rem;font-weight:600;color:#0D3D2E}
.ek-feld label span[aria-hidden],.ek-feld .ek-label span[aria-hidden]{color:#B91C1C}
.ek-feld small{font-size:.78rem;color:#718096}
.ek-feld input[type=text],.ek-feld input[type=email],.ek-feld input[type=tel],.ek-feld select,.ek-feld textarea{
  width:100%;box-sizing:border-box;font:inherit;font-size:.95rem;color:#1A202C;background:#fff;
  border:1px solid #CBD5E0;border-radius:8px;padding:.7rem .9rem;transition:border-color .15s,box-shadow .15s;margin:0}
.ek-feld textarea{resize:vertical;min-height:9rem;line-height:1.55}
.ek-feld select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%234A5568' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}
.ek-feld input:focus,.ek-feld select:focus,.ek-feld textarea:focus{outline:none;border-color:#1A6B5A;box-shadow:0 0 0 3px rgba(26,107,90,.18)}
.ek-feld.is-invalid input,.ek-feld.is-invalid select,.ek-feld.is-invalid textarea{border-color:#B91C1C;box-shadow:0 0 0 3px rgba(185,28,28,.12)}
.ek-feld .ek-fehler{font-size:.78rem;color:#B91C1C}
.ek-feld input::placeholder,.ek-feld textarea::placeholder{color:#A0AEC0}

.ek-check label{display:flex;gap:.7rem;align-items:flex-start;font-weight:400;font-size:.86rem;line-height:1.55;color:#4A5568;cursor:pointer}
.ek-check .ek-check-text{flex:1 1 0;min-width:0;display:inline;font-weight:400}
.ek-check .ek-check-text span[aria-hidden]{color:#B91C1C}
.ek-check input{margin:.2rem 0 0;width:1.05rem;height:1.05rem;accent-color:#1A6B5A;flex:0 0 auto}
.ek-check a{color:#1A6B5A;text-decoration:underline;text-underline-offset:2px}
.ek-schutz{display:inline-block;color:#1A6B5A;font-weight:600}
.ek-noscript{grid-column:1 / -1;margin:0;padding:.9rem 1.1rem;border-radius:10px;background:#FFF7ED;border:1px solid #FDBA74;color:#7C2D12;font-size:.85rem;line-height:1.6}
.ek-noscript strong{display:block;margin-bottom:.2rem}
.ek-noscript a{color:#7C2D12;font-weight:600;white-space:nowrap}
.ek-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.ek-prio{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}
.ek-prio-item{position:relative;display:flex;flex-direction:column;gap:2px;border:1px solid #CBD5E0;border-radius:10px;padding:.75rem .85rem;cursor:pointer;background:#fff;transition:border-color .15s,background .15s;font-weight:400}
.ek-prio-item input{position:absolute;opacity:0;pointer-events:none}
.ek-prio-titel{font-weight:700;font-size:.9rem;color:#0D3D2E}
.ek-prio-text{font-size:.76rem;color:#718096;line-height:1.35}
.ek-prio-item:hover{border-color:#9FE1CB}
.ek-prio-item:has(input:checked){background:#F2FAF7;border-color:#1A6B5A;box-shadow:0 0 0 2px rgba(26,107,90,.18)}
/* Farben bei Auswahl: Niedrig/Normal grün, Hoch orange, Kritisch rot */
.ek-prio-niedrig:has(input:checked),.ek-prio-normal:has(input:checked){background:#F2FAF7;border-color:#1A6B5A;box-shadow:0 0 0 2px rgba(26,107,90,.18)}
.ek-prio-niedrig:has(input:checked) .ek-prio-titel,.ek-prio-normal:has(input:checked) .ek-prio-titel{color:#1A6B5A}
.ek-prio-hoch:has(input:checked){background:#FFF7ED;border-color:#D97706;box-shadow:0 0 0 2px rgba(217,119,6,.18)}
.ek-prio-hoch:has(input:checked) .ek-prio-titel{color:#C2410C}
.ek-prio-kritisch:has(input:checked){background:#FEF2F2;border-color:#B91C1C;box-shadow:0 0 0 2px rgba(185,28,28,.15)}
.ek-prio-kritisch:has(input:checked) .ek-prio-titel{color:#B91C1C}
.ek-prio-item:has(input:focus-visible){outline:2px solid #1A6B5A;outline-offset:2px}
.ek-prio-hinweis{margin:.6rem 0 0;font-size:.8rem;line-height:1.5;color:#718096;padding:.55rem .8rem;border-radius:8px;border:1px solid transparent;transition:background .2s,border-color .2s,color .2s}
.ek-prio-hinweis strong{font-weight:600;color:#4A5568}
.ek-feld:has(.ek-prio-kritisch input:checked) .ek-prio-hinweis{background:#FEF2F2;border-color:#FCA5A5;color:#991B1B}
.ek-feld:has(.ek-prio-kritisch input:checked) .ek-prio-hinweis strong{color:#B91C1C}

.ek-aktion{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;padding-top:.5rem;border-top:1px solid #EDF2F7;margin-top:.25rem}
.ek-btn{appearance:none;border:1px solid #1A6B5A;background:#1A6B5A;color:#fff;font:inherit;font-weight:600;font-size:.95rem;padding:.85rem 1.7rem;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s;min-width:14rem;position:relative}
.ek-btn:hover{background:#0D3D2E;border-color:#0D3D2E;transform:translateY(-1px)}
.ek-btn:focus-visible{outline:2px solid #0D3D2E;outline-offset:3px}
.ek-btn[disabled]{opacity:.7;cursor:progress;transform:none}
.ek-btn .ek-btn-wait{display:none}
.ek-btn[disabled] .ek-btn-text{display:none}
.ek-btn[disabled] .ek-btn-wait{display:inline}
.ek-klein{margin:0;font-size:.8rem;color:#718096;line-height:1.6;flex:1 1 18rem}
.ek-klein a{color:#1A6B5A;text-decoration:none;font-weight:600;white-space:nowrap}

.ek-meldung{margin:1.5rem 2rem 0;padding:1rem 1.2rem;border-radius:10px;font-size:.92rem;line-height:1.55;border:1px solid}
.ek-meldung[hidden]{display:none}
.ek-meldung.is-ok{background:#F2FAF7;border-color:#9FE1CB;color:#0D3D2E}
.ek-meldung.is-fehler{background:#FEF2F2;border-color:#FCA5A5;color:#991B1B}
.ek-meldung strong{display:block;font-size:1.05rem;margin-bottom:.25rem}
.ek-meldung .ek-ticket{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;border:1px solid #9FE1CB;border-radius:6px;padding:.15rem .55rem;font-weight:700;letter-spacing:.03em}

.ek-leiste{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}
.ek-leiste>div{background:#F2FAF7;border:1px solid #d4e8e1;border-radius:12px;padding:1rem 1.2rem;display:flex;flex-direction:column;gap:.25rem}
.ek-leiste strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#1A6B5A}
.ek-leiste span{font-size:.86rem;color:#4A5568;line-height:1.5}
.ek-leiste a{color:#0D3D2E;text-decoration:none;font-weight:600;white-space:nowrap}
.ek-leiste span{overflow-wrap:anywhere}

@media (max-width:900px){
  .ek-prio{grid-template-columns:1fr 1fr}
  .ek-leiste{grid-template-columns:1fr}
}
@media (max-width:640px){
  .ek-section{padding:3rem 1rem}
  .ek-inner{max-width:100%}
  .ek-feld input[type=text],.ek-feld input[type=email],.ek-feld input[type=tel],.ek-feld select,.ek-feld textarea{font-size:16px} /* verhindert Auto-Zoom auf iPhone */
  .ek-aktion{flex-direction:column;align-items:stretch;gap:.9rem}
  .ek-klein{flex:none;text-align:center}
  .ek-meldung{overflow-wrap:anywhere}
  .ek-h2{font-size:1.7rem!important}
  .ek-tabs{grid-template-columns:1fr}
  .ek-tab{padding:1rem 1.2rem}
  .ek-panel{padding:1.4rem 1.2rem}
  .ek-grid{grid-template-columns:1fr;gap:1rem}
  .ek-meldung{margin:1.2rem 1.2rem 0}
  .ek-btn{width:100%;min-width:0}
}
@media (max-width:420px){
  .ek-prio{grid-template-columns:1fr}
  .ek-tab-text{display:none}
}
