/* ===== Geteiltes Kontakt-Modal (index, loesungen, bestellen, trackers/fmc650, trackers/ftc880) =====
   Ausgelagert aus den seitenweise duplizierten Inline-Bloecken (byte-identisch).
   Tracker-Seiten ergaenzen zusaetzlich .cf-hint/.cf-options/.cf-option inline (seitenspezifisch). */
.contact-modal{position:fixed;inset:0;z-index:9999;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:cfFade .25s var(--ease)}
.contact-modal.open{display:block}
@keyframes cfFade{from{opacity:0}to{opacity:1}}
.contact-modal-overlay{position:fixed;inset:0;background:rgba(5,9,20,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:1}
.contact-modal-content{position:relative;width:min(560px,calc(100% - 2rem));margin:2rem auto;background:linear-gradient(180deg,#1a1f2e,#0a0f1a);border:1px solid rgba(245,158,11,.3);border-radius:18px;padding:2.4rem 2rem 2rem;box-shadow:0 50px 120px -20px rgba(0,0,0,.85),0 0 60px -10px rgba(245,158,11,.2);animation:cfSlide .35s var(--ease);z-index:2;--ink:#f5f7fb;--ink-2:#cfd6e4;--ink-3:#8a93a6;--ink-4:#8a93a6}
@keyframes cfSlide{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.contact-modal-close{position:absolute;top:.9rem;right:.9rem;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--ink-2);font-size:1.4rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:all .25s var(--ease);padding:0}
.contact-modal-close:hover{background:rgba(245,158,11,.15);border-color:rgba(245,158,11,.4);color:var(--gold-3);transform:rotate(90deg)}
.contact-modal-head h3{font-family:var(--serif);font-size:1.55rem;color:var(--ink);margin-bottom:.4rem;line-height:1.2}
.contact-modal-head h3 em{color:var(--gold-3);font-style:italic}
.contact-modal-head p{color:var(--ink-3);font-size:.88rem;margin-bottom:1.6rem;line-height:1.5}
.contact-form{display:flex;flex-direction:column;gap:.9rem}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
@media(max-width:480px){.cf-row{grid-template-columns:1fr;gap:.9rem}}
.contact-form label{display:flex;flex-direction:column;gap:.35rem;font-family:var(--mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;padding:.7rem .9rem;background:rgba(0,0,0,.35);border:1px solid var(--line-2);border-radius:8px;color:var(--ink);font-family:inherit;font-size:.92rem;transition:all .25s var(--ease);text-transform:none;letter-spacing:0}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--gold);background:rgba(0,0,0,.5);box-shadow:0 0 0 3px rgba(245,158,11,.15)}
.contact-form textarea{resize:vertical;min-height:80px;font-family:inherit}
.contact-form select{cursor:pointer;color-scheme:dark;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23f59e0b' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.cf-checkbox{flex-direction:row !important;align-items:center;gap:.55rem;text-transform:none;font-size:.88rem;color:var(--ink-2);font-family:'DM Sans',system-ui,sans-serif;letter-spacing:0;cursor:pointer}
.cf-checkbox input{width:auto !important;cursor:pointer;accent-color:var(--gold)}
.contact-form button[type=submit]{margin-top:.6rem;justify-content:center;font-size:.9rem;padding:.95rem 1.4rem;position:relative;transition:opacity .25s}
.contact-form button[type=submit][disabled]{opacity:.6;cursor:wait}
.cf-spinner{display:none;width:18px;height:18px;border:2.5px solid rgba(10,15,26,.25);border-top-color:#0a0f1a;border-radius:50%;animation:cfSpin .7s linear infinite}
.contact-form button[type=submit][data-loading="true"] .cf-spinner{display:inline-block}
.contact-form button[type=submit][data-loading="true"] .cf-btn-icon{display:none}
@keyframes cfSpin{to{transform:rotate(360deg)}}
.cf-status{display:none;padding:.85rem 1rem;border-radius:8px;font-family:'DM Sans',system-ui,sans-serif;font-size:.88rem;line-height:1.5;letter-spacing:0;text-transform:none;text-align:center;margin-top:.4rem}
.cf-status.show{display:block}
.cf-status.success{background:rgba(40,200,120,.12);border:1px solid rgba(40,200,120,.4);color:#5be3a3}
.cf-status.error{background:rgba(220,80,80,.12);border:1px solid rgba(220,80,80,.4);color:#ff8585}
.cf-note{font-family:'DM Sans',system-ui,sans-serif;font-size:.74rem;color:var(--ink-4);text-align:center;margin-top:.4rem;letter-spacing:0;text-transform:none}
