
/* TARIFORA FAQ und Nachrichtenformular – unabhängig vom Tarifcheck */
.faq-section{margin:58px 0 32px;padding:37px 36px 42px;background:#144b8b;border-radius:16px;color:#fff}
.faq-heading-area{text-align:center}
.faq-heading-area h2{font-size:clamp(29px,4vw,39px);margin:0 0 27px;letter-spacing:-.035em;color:#fff}
.faq-question-mark{width:46px;height:46px;line-height:46px;text-align:center;margin:0 auto 11px;background:#ffdf22;color:#144b8b;border-radius:50%;font-size:38px;font-weight:850}
.faq-heading-area h3{font-size:clamp(22px,3.4vw,29px);font-weight:720;margin:0 0 30px;color:#fff}
.faq-list{border-top:1px solid #e5edffb5}
.faq-item{border-bottom:1px solid #e5edffb5}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;font-size:17px;line-height:1.45;font-weight:590;padding:19px 1px;color:#fff}
.faq-item summary::-webkit-details-marker{display:none}
.faq-chevron{display:block;flex:0 0 11px;width:11px;height:11px;border-bottom:2px solid #fff;border-right:2px solid #fff;transform:translateY(-3px) rotate(45deg);transition:transform .2s}
.faq-item[open] .faq-chevron{transform:translateY(3px) rotate(225deg)}
.faq-item summary:focus-visible{outline:3px solid #ffdf22;outline-offset:4px}
.faq-answer{padding:0 28px 18px 1px;color:#eaf2ff}
.faq-answer p{margin:0;font-size:15px;line-height:1.65}
.faq-contact-section{margin-top:56px}
.faq-chat-symbol{width:45px;height:45px;border:5px solid #ffdf22;color:#ffdf22;border-radius:50%;line-height:35px;text-align:center;font-weight:800;font-size:28px;margin:0 auto 14px}
.faq-contact-section h3{font-size:clamp(25px,3.5vw,31px);text-align:center;color:#fff;margin:0 0 9px}
.faq-contact-intro{font-size:15px;text-align:center;color:#e9f0fb;margin:0 0 24px}
.faq-form-panel{background:#0d3b75;border-radius:12px;padding:28px 30px}
#faqform{display:flex;flex-direction:column;gap:17px}
.faq-field{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:640;color:#fff}
.faq-field b,.faq-consent b{color:#ffdf22}
.faq-field input,.faq-field textarea{border:1px solid #cfdaea;border-radius:8px;width:100%;background:#fff;color:#0b1c49;font:inherit;font-size:16px;font-weight:400;outline:0;box-shadow:none;padding:14px 16px}
.faq-field input{min-height:53px}
.faq-field textarea{min-height:136px;resize:vertical}
.faq-field input:focus-visible,.faq-field textarea:focus-visible{outline:3px solid #ffdf22;outline-offset:2px}
.faq-field input::placeholder,.faq-field textarea::placeholder{color:#8d97aa}
.faq-consent{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.55;cursor:pointer;color:#e9f2ff}
.faq-consent input{flex:0 0 19px;width:19px;height:19px;margin-top:2px;accent-color:#ffdf22}
.faq-consent a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.faq-send{min-height:53px;border:0;border-radius:8px;background:#ffdf22;color:#0b1c49;font-size:16px;font-weight:790;cursor:pointer;padding:14px 20px}
.faq-send:disabled{opacity:.75;cursor:wait}
.faq-send:focus-visible{outline:3px solid white;outline-offset:2px}
.faq-error{color:#ffe0e0;font-size:14px;line-height:1.45;margin:0}
.faq-error:empty{display:none}
.faq-success{text-align:center;padding:36px 5px}
.faq-success[hidden]{display:none}
.faq-success-check{font-size:36px;color:#ffdf22}
.faq-success h4{font-size:22px;margin:14px 0 10px;color:#fff}
.faq-success p{font-size:16px;line-height:1.5}
.faq-success button{border-radius:7px;border:1px solid #fff;background:transparent;color:#fff;padding:11px 16px;font-weight:650;cursor:pointer}
@media(max-width:580px){.faq-section{margin:43px -4px 22px;padding:28px 18px 29px}.faq-heading-area h2{margin-bottom:26px}.faq-heading-area h3{margin-bottom:26px}.faq-item summary{font-size:16px;padding:17px 0}.faq-answer p{font-size:14px}.faq-form-panel{padding:21px 17px}.faq-contact-section{margin-top:43px}}

#faqform[hidden]{display:none}
