/* Nur Accessibility- und Formularergänzungen; Layout und Divi-Stile bleiben im Builder. */
body.page-id-293, body.single-post.et_pb_pagebuilder_layout, body.single-post.et_pb_pagebuilder_layout #main-content { background-color: #090e1b; }
body.qs-english { background-color: #090e1b; }
.qs-skip { position: fixed; top: 8px; left: 8px; z-index: 100000; padding: 12px 20px; background: #f3f7ff; color: #152039; transform: translateY(-160%); }
.qs-skip:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid #46d7e8; outline-offset: 4px; }
.qs-inquiry { color: #f3f7ff; }
.qs-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.qs-inquiry label { display: block; font-size: 16px; font-weight: 600; margin-bottom: 24px; }
.qs-inquiry input:not([type="hidden"]), .qs-inquiry select, .qs-inquiry textarea { display: block; box-sizing: border-box; width: 100%; min-height: 48px; margin-top: 8px; padding: 12px 16px; border: 1px solid #b8c5dc; border-radius: 8px; background: #121c2f; color: #f3f7ff; font: inherit; }
.qs-inquiry textarea { resize: vertical; }
.qs-inquiry a { color: #46d7e8; text-decoration: underline; }
.qs-inquiry button { min-height: 48px; padding: 12px 24px; border: 0; border-radius: 8px; color: #090e1b; background: #46d7e8; font: inherit; font-weight: 700; cursor: pointer; }
.qs-inquiry button:disabled { opacity: .65; cursor: wait; }
.et_pb_button.et_pb_module { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; line-height: 1.2; padding: 12px 24px; }
.qs-form-note, #qs-data-note { color: #b8c5dc; font-size: 14px; line-height: 1.6; }
.qs-field-error { display: block; color: #ffb4b4; font-size: 14px; margin-top: 8px; }
.qs-form-status { min-height: 24px; }
.qs-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media(max-width:767px) { .qs-fields { grid-template-columns: minmax(0,1fr); gap: 0; } }
.qs-mobile-action { display: none; }
.qs-hero-media { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.qs-hero-media[hidden] { display: none; }
.qs-hero-video { display: block; width: 100%; height: 100%; object-fit: cover; }
.qs-hero-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(rgba(0,0,0,.1),rgba(9,14,27,.35)); }
.qs-video-toggle { min-height: 44px; padding: 8px 16px; border: 1px solid #b8c5dc; border-radius: 96px; background: rgba(9,14,27,.76); color: #f3f7ff; font: inherit; font-size: 14px; cursor: pointer; }
.qs-video-toggle[hidden] { display: none; }
.qs-video-status { display: block; color: #b8c5dc; font-size: 14px; }
.qs-hero-video-control { text-align: center; }
.qs-video-disclosure { display: block; margin-top: 12px; color: #f3f7ff; font-size: 14px; line-height: 1.5; }
.qs-video-disclosure:empty { display: none; }
.qs-brand-model { margin: 0; padding: 12px; text-align: center; }
.qs-brand-stage { position: relative; width: 100%; aspect-ratio: 1; max-width: 220px; margin: 0 auto 12px; }
.qs-brand-stage model-viewer, .qs-brand-poster { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; border-radius: 16px; }
.qs-brand-poster[hidden] { display: none; }
.qs-brand-control { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 16px; border: 1px solid #b8c5dc; border-radius: 96px; background: #121c2f; color: #f3f7ff; font: inherit; font-size: 14px; line-height: 1.2; cursor: pointer; }
.qs-brand-control:disabled { opacity: .65; cursor: default; }
.qs-brand-status { color: #b8c5dc; font-size: 14px; line-height: 1.6; margin-top: 12px; }
.mobile_menu_bar { display: inline-flex; align-items: center; justify-content: center; min-width: 48px; min-height: 48px; cursor: pointer; }
#qs-header .et_mobile_menu { background-color: #121c2f; }
@media(max-width:767px) {
  body:has(#qs-header .mobile_nav.opened) .qs-mobile-action { display: none; }
  body:has(.qs-mobile-action) #page-container { padding-bottom: 90px; }
  .qs-mobile-action { display: inline-flex; align-items: center; justify-content: center; position: fixed; left: 50%; bottom: calc(12px + env(safe-area-inset-bottom)); transform: translateX(-50%); z-index: 9999; min-height: 48px; padding: 8px 24px; border-radius: 96px; background: #46d7e8; color: #090e1b; font-size: 16px; font-weight: 700; text-decoration: none; box-shadow: 0 12px 30px rgba(0,0,0,.3); }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } .et_pb_module, .et_pb_section, .et_pb_row, .et_pb_column { animation: none !important; transition: none !important; } }
@media(prefers-reduced-motion:reduce) { .et_pb_module.et_animated { opacity: 1 !important; transform: none !important; } }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form .wpforms-field-label,
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form .wpforms-field-sublabel { color: #f3f7ff; }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form input:not([type="hidden"]),
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form select,
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form textarea { background: #121c2f; color: #f3f7ff; border: 1px solid #b8c5dc; border-radius: 8px; min-height: 48px; font: inherit; }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form textarea { min-height: 160px; }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form button.wpforms-submit { background: #46d7e8; color: #090e1b; border: 0; border-radius: 96px; min-height: 48px; padding: 12px 24px; font: inherit; font-weight: 700; }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form button.wpforms-submit:hover { background: #f3f7ff; color: #090e1b; }
.wpforms-container.wpforms-container-full.qs-wpforms .wpforms-form em.wpforms-error { color: #ffb4b4; }
@media(min-width:981px) and (max-width:1200px) {
  #qs-header .et_pb_menu .et-menu > li { padding-left: 8px; padding-right: 8px; }
  #qs-header .et_pb_menu .et-menu > li > a { font-size: 14px; }
}
.qs-cookie-withdraw { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; margin-top: 8px; padding: 12px 24px; border: 0; border-radius: 96px; background: #46d7e8; color: #090e1b; font: inherit; font-weight: 700; cursor: pointer; }
.qs-cookie-withdraw:disabled { opacity: .65; cursor: wait; }
