/* ToRo-Media – Kontakt */
.contact-hero{background:linear-gradient(135deg,#14375B 0%,#1B527E 70%,#176D91 100%);color:#fff;padding:clamp(68px,9vw,122px) 0;position:relative;overflow:hidden}
.contact-hero::after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-100px;top:-110px;pointer-events:none}
.contact-hero-inner{max-width:860px;position:relative;z-index:1}
.contact-eyebrow{display:block;font-size:.79rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#13C5CE;margin-bottom:18px}
.contact-hero h1{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.12;letter-spacing:-.035em;margin:0 0 23px;color:#fff}
.contact-hero h1 span{color:#62E1E3}
.contact-hero p{font-size:clamp(1.05rem,1.7vw,1.22rem);line-height:1.8;color:#E4EFF8;max-width:700px;margin:0}
.contact-section{padding:clamp(55px,8vw,105px) 0;background:#F6F9FC}
.contact-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(30px,6vw,95px);align-items:start}
.contact-info{padding-top:22px}
.contact-info h2,.contact-form-card h2{color:#14375B;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2;margin:0 0 20px}
.contact-info>p,.contact-form-card>p{color:#52677B;line-height:1.85;margin:0 0 27px}
.contact-email-box{padding:26px;background:#fff;border:1px solid #E1EAF2;border-radius:16px;box-shadow:0 12px 35px rgba(20,55,91,.05);margin:30px 0}
.contact-email-box span{display:block;color:#63798D;font-size:.88rem;margin-bottom:9px}
.contact-email-box a{font-weight:750;color:#1769B7;overflow-wrap:anywhere;text-decoration:none;font-size:1.15rem}
.contact-email-box a:hover{text-decoration:underline}
.contact-info-note{font-size:.94rem}
.contact-form-card{background:#fff;padding:clamp(24px,4vw,46px);border:1px solid #E1EAF2;border-radius:22px;box-shadow:0 22px 65px rgba(20,55,91,.09)}
.contact-form-card h2{font-size:1.85rem;margin-bottom:8px}
.contact-form{display:flex;flex-direction:column;gap:11px}
.contact-form>label:not(.contact-privacy){font-weight:700;color:#14375B;margin-top:10px;font-size:.94rem}
.contact-form input:not([type=hidden]):not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;border:1px solid #CBD9E6;border-radius:10px;padding:13px 15px;font:inherit;color:#14375B;background:#fff;min-width:0}
.contact-form textarea{resize:vertical}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:3px solid rgba(19,197,206,.3);border-color:#318CE7}
.contact-form :disabled{cursor:not-allowed;opacity:.58}
.contact-privacy{display:flex;gap:12px;align-items:flex-start;color:#52677B;line-height:1.6;font-size:.9rem;margin-top:12px}
.contact-privacy input{margin-top:5px;flex:none;accent-color:#318CE7}
.contact-privacy a{color:#1769B7;text-decoration:underline}
.contact-required{font-size:.83rem;color:#6D8194;margin:0}
.contact-submit{align-self:flex-start;margin-top:7px}
.contact-alert{border-radius:10px;padding:14px 17px;margin:18px 0;line-height:1.55;font-size:.94rem}
.contact-alert-notice{background:#EDF4FA;border:1px solid #C9DCEB;color:#14375B}
.contact-alert-error{background:#FFF0EE;border:1px solid #EFC7C2;color:#8D3328}
.contact-alert-success{background:#ECF8F2;border:1px solid #BFE5CF;color:#246B48}
.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:850px){.contact-layout{grid-template-columns:1fr}.contact-info{padding-top:0}}
@media(max-width:520px){.contact-hero{padding:62px 0}.contact-form-card{border-radius:15px}.contact-submit{width:100%;text-align:center}}
