/* Internationale Rekrutierung · Gestaltung v2 „modern business" (Jositech, 18.10.2026)
   Farben aus dem Logo: Blau #233877, Orange #F08505. Schrift: Plus Jakarta Sans, selbst gehostet.
   Bausteine mit Präfix jt- werden in Elementor über „Classes CSS" vergeben. Effekte in site.js. */
:root {
  --jt-ink: #0f1730;
  --jt-text: #3d4663;
  --jt-muted: #6b7392;
  --jt-paper: #ffffff;
  --jt-soft: #f4f6fb;
  --jt-line: #e3e7f0;
  --jt-navy: #233877;
  --jt-navy-2: #1a2b63;
  --jt-night: #0d1636;
  --jt-orange: #f08505;
  --jt-orange-2: #ff9d33;
  --jt-orange-text: #b35a00;
  --jt-orange-soft: #fff1e0;
  --jt-on-dark: #f5f7fc;
  --jt-on-dark-muted: #aab4d4;
  --jt-danger: #b42318;
  --jt-font: "JT Jakarta", "Segoe UI", Arial, sans-serif;
  --jt-radius: 16px;
  --jt-radius-sm: 10px;
  --jt-shadow: 0 1px 2px rgba(15,23,48,.06), 0 8px 24px rgba(15,23,48,.06);
  --jt-shadow-lg: 0 2px 4px rgba(15,23,48,.06), 0 24px 56px rgba(15,23,48,.14);
  --jt-ease: cubic-bezier(.2,.7,.2,1);
}

/* ---------- Grundlage ---------- */
body, button, input, select, textarea, .ast-button, .ast-custom-button, .elementor-widget-text-editor, .elementor-button { font-family: var(--jt-font) !important; }
body { color: var(--jt-text); font-size: 17px; line-height: 1.65; background: var(--jt-paper); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, .entry-title, .elementor-heading-title {
  font-family: var(--jt-font) !important; font-weight: 800; line-height: 1.12; color: var(--jt-ink); letter-spacing: -0.025em; text-wrap: balance;
}
a { color: var(--jt-navy); transition: color .2s; }
a:hover { color: var(--jt-orange-text); }
:focus-visible { outline: 3px solid var(--jt-orange); outline-offset: 3px; border-radius: 4px; }
::selection { background: var(--jt-orange-soft); color: var(--jt-ink); }

/* ---------- Kopf: klebt oben, Glas-Effekt, schrumpft beim Scrollen ---------- */
#masthead { position: sticky; top: 0; z-index: 999; }
.admin-bar #masthead { top: 32px; }
@media (max-width: 782px) { .admin-bar #masthead { top: 46px; } }
#masthead .ast-primary-header-bar, #masthead .main-header-bar {
  background: rgba(255,255,255,.82) !important; backdrop-filter: saturate(160%) blur(14px); -webkit-backdrop-filter: saturate(160%) blur(14px);
  border-bottom: 1px solid rgba(227,231,240,.8) !important; transition: box-shadow .3s, background .3s;
}
.jt-scrolled #masthead .ast-primary-header-bar, .jt-scrolled #masthead .main-header-bar { box-shadow: 0 10px 30px rgba(15,23,48,.08); background: rgba(255,255,255,.94) !important; }
#masthead .site-primary-header-wrap, #masthead .ast-builder-grid-row { transition: min-height .3s var(--jt-ease); }
.site-header .custom-logo { max-height: 60px; width: auto; transition: max-height .3s var(--jt-ease); }
.jt-scrolled .site-header .custom-logo { max-height: 46px; }
.main-header-menu > .menu-item > .menu-link { font-weight: 600; font-size: 15px; color: var(--jt-ink) !important; position: relative; padding-inline: 14px !important; }
.main-header-menu > .menu-item > .menu-link::after {
  content: ""; position: absolute; left: 14px; right: 14px; bottom: 18px; height: 2px; border-radius: 2px;
  background: linear-gradient(90deg, var(--jt-navy), var(--jt-orange)); transform: scaleX(0); transform-origin: left; transition: transform .3s var(--jt-ease);
}
.main-header-menu > .menu-item:hover > .menu-link::after, .main-header-menu > .current-menu-item > .menu-link::after, .main-header-menu > .current-menu-ancestor > .menu-link::after { transform: scaleX(1); }
.main-header-menu > .current-menu-item > .menu-link { color: var(--jt-navy) !important; }
.main-header-menu .sub-menu {
  background: #fff; border: 1px solid var(--jt-line) !important; border-radius: 14px; padding: 8px; box-shadow: var(--jt-shadow-lg); min-width: 240px;
  transform: translateY(10px); transition: opacity .25s, transform .25s var(--jt-ease), visibility .25s;
}
.main-header-menu .menu-item:hover > .sub-menu, .main-header-menu .menu-item:focus-within > .sub-menu { transform: translateY(0); }
.main-header-menu .sub-menu .menu-link { color: var(--jt-ink) !important; font-weight: 500; font-size: 15px; border-radius: 10px; padding: 10px 14px !important; transition: background .2s, padding .2s; }
.main-header-menu .sub-menu .menu-item:hover > .menu-link { background: var(--jt-soft); padding-left: 18px !important; color: var(--jt-navy) !important; }
.jt-head-login, .ast-header-button-1 .ast-custom-button { white-space: nowrap; }
body.logged-in .ast-header-button-1 { display: none; }
.jt-head-login { display: inline-flex; align-items: center; padding: 10px 18px; border-radius: 999px; color: var(--jt-navy); font-weight: 600; font-size: 15px; text-decoration: none; border: 1.5px solid var(--jt-line); transition: border-color .2s, background .2s; }
.jt-head-login:hover { border-color: var(--jt-navy); color: var(--jt-navy); background: var(--jt-soft); }
.ast-header-button-1 .ast-custom-button {
  background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)) !important; color: var(--jt-ink) !important; border-radius: 999px !important;
  font-weight: 700 !important; font-size: 15px !important; padding: 12px 22px !important; border: 0 !important; box-shadow: 0 8px 20px rgba(240,133,5,.28); transition: transform .2s, box-shadow .2s;
}
.ast-header-button-1 .ast-custom-button:hover { transform: translateY(-1px); box-shadow: 0 12px 26px rgba(240,133,5,.36); }
#ast-mobile-header { position: relative; z-index: 100; }
.ast-mobile-header-content { z-index: 100; box-shadow: var(--jt-shadow-lg); border-top: 1px solid var(--jt-line); padding-bottom: 18px; border-radius: 0 0 18px 18px; }
.ast-mobile-header-content .menu-link { font-weight: 600; color: var(--jt-ink) !important; border-color: var(--jt-line) !important; }
.ast-mobile-header-content .sub-menu .menu-link { font-weight: 500; color: var(--jt-text) !important; }
.ast-mobile-header-content .ast-header-html, .ast-mobile-header-content .ast-header-button-1 { padding: 10px 20px 0; }
.ast-mobile-header-content .jt-head-login, .ast-mobile-header-content .ast-custom-button { width: 100%; justify-content: center; text-align: center; }
.ast-mobile-header-content .ast-header-button-1 .ast-custom-button { display: block; }

/* ---------- Seiten ohne Elementor ---------- */
.page .entry-header .entry-title { font-size: clamp(34px, 4.5vw, 52px); }
.site-content > .ast-container { max-width: 1212px; }
body:not(.elementor-page) .site-content { padding-top: 24px; }

/* ---------- Fuß ---------- */
.site-footer, .site-primary-footer-wrap, .site-below-footer-wrap { background: var(--jt-night) !important; color: var(--jt-on-dark-muted); }
.site-footer { position: relative; }
.site-primary-footer-wrap { padding-block: 64px 28px; border-top: 0 !important; background: radial-gradient(600px 220px at 85% 0%, rgba(240,133,5,.14), transparent 70%), var(--jt-night) !important; }
.site-footer::before { content: ""; display: block; height: 4px; background: linear-gradient(90deg, var(--jt-navy), var(--jt-orange)); }
.site-footer .widget-title, .site-footer h2.widget-title { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: #fff; font-weight: 700; margin-bottom: 16px; }
.site-footer .widget ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.site-footer a { color: var(--jt-on-dark-muted); text-decoration: none; transition: color .2s, padding .2s; }
.site-footer a:hover { color: #fff; padding-left: 4px; }
.site-below-footer-wrap { border-top: 1px solid rgba(255,255,255,.08) !important; font-size: 14px; }
.site-below-footer-wrap .ast-footer-copyright { color: var(--jt-on-dark-muted); }

/* ---------- Etiketten, Text ---------- */
.jt-label .elementor-widget-container p, p.jt-label, .jt-espace .jt-label {
  display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 6px 14px; border-radius: 999px;
  background: var(--jt-orange-soft); color: var(--jt-orange-text); font-size: 13px; font-weight: 700; letter-spacing: .01em;
}
.jt-label .elementor-widget-container p::before, p.jt-label::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--jt-orange); }
.jt-dark .jt-label p, .jt-slider .jt-label p, .jt-page-hero .jt-label p { background: rgba(240,133,5,.14); color: #ffbe73; }
.jt-de p { font-size: 14px; font-weight: 600; color: var(--jt-orange-text); margin: 0; }
.jt-lead p { font-size: 19px; color: var(--jt-muted); max-width: 54ch; margin: 0; }
.jt-muted p { color: var(--jt-muted); margin: 0; }
.jt-h1 .elementor-heading-title { font-size: clamp(40px, 5.6vw, 72px); }
.jt-h1 .elementor-heading-title span, .jt-accent {
  display: block; padding-bottom: .06em;
  background: linear-gradient(90deg, var(--jt-orange), var(--jt-orange-2)); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.jt-h1-page .elementor-heading-title { font-size: clamp(36px, 5vw, 60px); }
.jt-h2 .elementor-heading-title { font-size: clamp(30px, 3.8vw, 46px); }
.jt-h3 .elementor-heading-title { font-size: 26px; }

/* ---------- Flächen ---------- */
.jt-band { background: var(--jt-soft); }
.jt-dark, .jt-page-hero, .jt-slider {
  position: relative; overflow: hidden; color: var(--jt-on-dark);
  background:
    radial-gradient(700px 380px at 90% 10%, rgba(240,133,5,.20), transparent 70%),
    radial-gradient(800px 500px at 0% 100%, rgba(35,56,119,.75), transparent 70%),
    var(--jt-night);
}
.jt-dark::before, .jt-page-hero::before, .jt-slider::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: radial-gradient(rgba(255,255,255,.10) 1px, transparent 1px); background-size: 26px 26px;
  -webkit-mask-image: linear-gradient(180deg, #000, transparent 85%); mask-image: linear-gradient(180deg, #000, transparent 85%);
}
.jt-dark > *, .jt-page-hero > *, .jt-slider > * { position: relative; z-index: 1; }
.jt-dark .elementor-heading-title, .jt-page-hero .elementor-heading-title, .jt-slider .elementor-heading-title { color: #fff; }
.jt-dark p, .jt-page-hero p, .jt-slider p { color: var(--jt-on-dark-muted); }
.jt-page-hero .jt-de p { color: #ffbe73; }

/* Weltkugel-Ringe (Deko) */
.jt-rings { position: absolute !important; right: -140px; top: 50%; width: 620px; height: 620px; transform: translateY(-50%); pointer-events: none; z-index: 0 !important; }
.jt-page-hero .jt-rings { width: 460px; height: 460px; right: -120px; }
.jt-rings span { position: absolute; inset: 0; border-radius: 50%; border: 1px solid rgba(255,255,255,.10); }
.jt-rings span:nth-child(2) { inset: 12%; border-style: dashed; border-color: rgba(240,133,5,.35); animation: jt-spin 60s linear infinite; }
.jt-rings span:nth-child(3) { inset: 26%; border-color: rgba(255,255,255,.14); }
.jt-rings span:nth-child(4) { inset: 0; border: 0; animation: jt-spin 22s linear infinite; }
.jt-rings span:nth-child(4)::after { content: ""; position: absolute; top: 50%; left: -6px; width: 12px; height: 12px; border-radius: 50%; background: var(--jt-orange); box-shadow: 0 0 0 6px rgba(240,133,5,.18), 0 0 24px rgba(240,133,5,.7); }
@keyframes jt-spin { to { transform: rotate(360deg); } }

/* ---------- Knöpfe ---------- */
.jt-btn .elementor-button, .jt-btn-ghost .elementor-button, .jt-more .elementor-button { font-weight: 700; font-size: 15px; letter-spacing: 0 !important; text-transform: none !important; transition: transform .2s var(--jt-ease), box-shadow .2s, background .2s, color .2s; }
.jt-btn .elementor-button { background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)); color: var(--jt-ink); border-radius: 999px; padding: 15px 26px; box-shadow: 0 10px 24px rgba(240,133,5,.30); }
.jt-btn .elementor-button:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(240,133,5,.38); color: var(--jt-ink); }
.jt-btn-ghost .elementor-button { background: transparent; color: var(--jt-navy); border: 1.5px solid var(--jt-line); border-radius: 999px; padding: 14px 24px; }
.jt-btn-ghost .elementor-button:hover { border-color: var(--jt-navy); background: var(--jt-soft); color: var(--jt-navy); }
.jt-dark .jt-btn-ghost .elementor-button, .jt-slider .jt-btn-ghost .elementor-button, .jt-page-hero .jt-btn-ghost .elementor-button { color: #fff; border-color: rgba(255,255,255,.28); }
.jt-dark .jt-btn-ghost .elementor-button:hover, .jt-slider .jt-btn-ghost .elementor-button:hover, .jt-page-hero .jt-btn-ghost .elementor-button:hover { background: rgba(255,255,255,.08); border-color: #fff; }
.jt-btn .elementor-button-text::after, .jt-more .elementor-button-text::after { content: "→"; display: inline-block; margin-left: 8px; transition: transform .25s var(--jt-ease); }
.jt-btn .elementor-button:hover .elementor-button-text::after, .jt-more .elementor-button:hover .elementor-button-text::after { transform: translateX(4px); }
.jt-more .elementor-button { background: none; padding: 0; color: var(--jt-orange-text); box-shadow: none; }
.jt-more .elementor-button:hover { color: var(--jt-navy); background: none; }

/* ---------- Slider ---------- */
.jt-slider { padding-bottom: 72px !important; }
.jt-slider-track { display: grid !important; }
.jt-slide { grid-area: 1 / 1; transition: opacity .7s var(--jt-ease), visibility .7s; }
.jt-js .jt-slide { opacity: 0; visibility: hidden; }
.jt-js .jt-slide.is-active { opacity: 1; visibility: visible; }
html:not(.jt-js) .jt-slide:not(:first-child) { display: none !important; }
.jt-js .jt-slide > * { transform: translateY(18px); opacity: 0; transition: transform .8s var(--jt-ease), opacity .8s; }
.jt-js .jt-slide.is-active > * { transform: none; opacity: 1; }
.jt-js .jt-slide.is-active > *:nth-child(2) { transition-delay: .15s; }
.jt-slide .jt-h1 .elementor-heading-title { color: #fff; }
.jt-slider-ui { position: absolute; left: 0; right: 0; bottom: 28px; z-index: 2; }
.jt-slider-ui .jt-ui-in { max-width: 1180px; margin: 0 auto; padding: 0 16px; display: flex; align-items: center; gap: 18px; }
.jt-dots { display: flex; gap: 10px; }
.jt-dots button { position: relative; overflow: hidden; width: 44px; height: 4px; border-radius: 4px; border: 0; padding: 0; background: rgba(255,255,255,.22); cursor: pointer; }
.jt-dots button i { position: absolute; inset: 0; transform-origin: left; transform: scaleX(0); background: var(--jt-orange); }
.jt-dots button.is-active i { animation: jt-progress var(--jt-slide-ms, 6500ms) linear forwards; }
.jt-slider.is-paused .jt-dots button.is-active i { animation-play-state: paused; }
.jt-dots button.is-done i { transform: scaleX(1); }
@keyframes jt-progress { to { transform: scaleX(1); } }
.jt-arrows { margin-left: auto; display: flex; gap: 8px; }
.jt-arrows button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.06); color: #fff; font-size: 18px; cursor: pointer; transition: background .2s, border-color .2s; padding: 0; line-height: 1; }
.jt-arrows button:hover { background: rgba(255,255,255,.14); border-color: #fff; }
.jt-slide-count { color: var(--jt-on-dark-muted); font-size: 14px; font-variant-numeric: tabular-nums; }

/* Glaskarte im Slider */
.jt-glass { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.14); border-radius: 20px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 30px 60px rgba(0,0,0,.25); }
.jt-glass .elementor-heading-title { color: #fff; font-size: 20px; }
.jt-glass ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.jt-glass li { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: start; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.08); color: var(--jt-on-dark-muted); font-size: 15px; line-height: 1.45; }
.jt-glass li:last-child { border-bottom: 0; }
.jt-glass li::before { content: "✓"; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 13px; font-weight: 700; color: var(--jt-ink); background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)); }
.jt-glass li strong { color: #fff; display: block; font-weight: 600; }

/* ---------- Karten ---------- */
.jt-card-m {
  background: #fff; border: 1px solid var(--jt-line); border-radius: var(--jt-radius); box-shadow: var(--jt-shadow); position: relative; overflow: hidden;
  transition: transform .35s var(--jt-ease), box-shadow .35s var(--jt-ease), border-color .35s;
}
.jt-card-m::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--jt-navy), var(--jt-orange)); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--jt-ease); }
.jt-card-m:hover { transform: translateY(-6px); box-shadow: var(--jt-shadow-lg); border-color: transparent; }
.jt-card-m:hover::before { transform: scaleX(1); }
.jt-card-m p strong { display: block; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--jt-muted); font-weight: 700; margin-bottom: 2px; }
.jt-card-m p { margin: 0 0 10px; }
.jt-icon .elementor-icon { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; font-size: 24px; background: linear-gradient(135deg, var(--jt-navy), #3a56a8); color: #fff !important; box-shadow: 0 10px 22px rgba(35,56,119,.28); }
.jt-icon .elementor-icon svg { fill: #fff; width: 24px; height: 24px; }
.jt-icon-o .elementor-icon { background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)); box-shadow: 0 10px 22px rgba(240,133,5,.28); }
.jt-icon-o .elementor-icon svg { fill: var(--jt-ink); }
.jt-card-m .elementor-heading-title { font-size: 22px; }

/* Fotokarten: alle Zeilen auf einer Linie, Link unten */
.jt-card-photo { padding: 0 !important; display: flex !important; flex-direction: column; }
.jt-card-img { margin: 0 !important; overflow: hidden; width: 100%; }
.jt-card-img img { width: 100% !important; height: auto; aspect-ratio: 16 / 10; object-fit: cover; display: block; border-radius: 0 !important; transition: transform .7s var(--jt-ease); }
.jt-card-photo:hover .jt-card-img img { transform: scale(1.06); }
.jt-card-body { flex-grow: 1; position: relative; }
.jt-card-body > .jt-icon { margin-top: -28px !important; margin-bottom: 6px !important; position: relative; z-index: 2; }
.jt-card-body > .jt-icon .elementor-icon { box-shadow: 0 0 0 5px #fff, 0 12px 24px rgba(35,56,119,.28); }
.jt-card-body .jt-de p { min-height: 1.65em; }
.jt-card-body .elementor-heading-title { min-height: 1.15em; }
.jt-card-text p { min-height: calc(1.65em * 3); }
.jt-card-fact { padding-top: 12px; border-top: 1px solid var(--jt-line); }
.jt-card-fact p { margin: 0 !important; min-height: calc(1.2em + 1.65em * 2); color: var(--jt-ink); }
.jt-card-body > .jt-more { margin-top: auto !important; padding-top: 6px; }
@media (max-width: 1024px) {
  .jt-card-text p, .jt-card-fact p { min-height: 0; }
}

/* Ablauf */
.jt-steps { counter-reset: st; position: relative; }
.jt-steps::before { content: ""; position: absolute; left: 6%; right: 6%; top: 27px; height: 2px; background: linear-gradient(90deg, var(--jt-orange), var(--jt-navy)); opacity: .35; }
.jt-step { counter-increment: st; position: relative; text-align: left; }
.jt-step::before {
  content: counter(st, decimal-leading-zero); width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; margin-bottom: 18px;
  font-weight: 800; font-size: 17px; color: var(--jt-navy); background: #fff; border: 1px solid var(--jt-line); box-shadow: var(--jt-shadow); position: relative; z-index: 1;
  transition: transform .3s var(--jt-ease), background .3s, color .3s;
}
.jt-step:hover::before { transform: translateY(-4px) rotate(-4deg); background: var(--jt-navy); color: #fff; }
.jt-step:first-child::before { background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)); color: var(--jt-ink); border: 0; }
.jt-step .elementor-heading-title { font-size: 19px; }
.jt-step p { font-size: 15px; color: var(--jt-muted); margin: 0; }
.jt-step .jt-where p { display: inline-block; margin-top: 8px; font-size: 12px; font-weight: 700; color: var(--jt-navy); background: var(--jt-soft); padding: 4px 10px; border-radius: 999px; }

/* Kacheln auf Dunkel */
.jt-tile { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.10); border-radius: var(--jt-radius); transition: transform .35s var(--jt-ease), background .35s, border-color .35s; }
.jt-tile:hover { transform: translateY(-6px); background: rgba(255,255,255,.09); border-color: rgba(240,133,5,.45); }
.jt-tile .elementor-heading-title { font-size: 20px; color: #fff !important; }

/* Häkchenliste */
.jt-ticks ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.jt-ticks li { position: relative; padding: 18px 20px 18px 62px; background: #fff; border: 1px solid var(--jt-line); border-radius: 14px; color: var(--jt-muted); box-shadow: var(--jt-shadow); transition: transform .3s var(--jt-ease); }
.jt-ticks li:hover { transform: translateX(4px); }
.jt-ticks li::before { content: "✓"; position: absolute; left: 18px; top: 18px; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; font-size: 14px; color: #fff; background: var(--jt-navy); }
.jt-ticks li:last-child::before { content: "!"; background: var(--jt-orange); color: var(--jt-ink); }
.jt-ticks li strong { display: block; color: var(--jt-ink); font-weight: 700; }

/* Eckdaten */
.jt-facts { background: #fff; border: 1px solid var(--jt-line); border-radius: var(--jt-radius); overflow: hidden; box-shadow: var(--jt-shadow); }
.jt-facts .jt-facts-title { background: linear-gradient(135deg, var(--jt-navy), var(--jt-navy-2)); padding: 18px 22px; }
.jt-facts .jt-facts-title .elementor-heading-title { color: #fff; font-size: 19px; }
.jt-facts .jt-facts-body p { display: grid; grid-template-columns: 160px 1fr; gap: 14px; margin: 0; padding: 15px 22px; border-top: 1px solid var(--jt-line); color: var(--jt-ink); }
.jt-facts .jt-facts-body p:first-child { border-top: 0; }
.jt-facts .jt-facts-body strong { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--jt-muted); font-weight: 700; padding-top: 3px; }
.jt-facts .jt-facts-src { background: var(--jt-soft); padding: 12px 22px; }
.jt-facts .jt-facts-src p { font-size: 13px; color: var(--jt-muted); margin: 0; }

/* Dokumentenliste */
.jt-checklist ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.jt-checklist li { position: relative; border: 1px solid var(--jt-line); border-radius: var(--jt-radius); padding: 22px 22px 20px; background: #fff; color: var(--jt-muted); font-size: 15px; box-shadow: var(--jt-shadow); transition: transform .35s var(--jt-ease), box-shadow .35s; }
.jt-checklist li:hover { transform: translateY(-4px); box-shadow: var(--jt-shadow-lg); }
.jt-checklist li strong { display: block; font-weight: 700; font-size: 17px; color: var(--jt-ink); margin-bottom: 4px; }
.jt-checklist li em { font-style: normal; font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: var(--jt-orange-soft); color: var(--jt-orange-text); display: inline-block; margin-top: 10px; }

/* Fragen */
.jt-faq .elementor-toggle .elementor-toggle-item { background: #fff; border: 1px solid var(--jt-line); border-radius: 14px; margin-bottom: 12px; overflow: hidden; transition: box-shadow .3s; }
.jt-faq .elementor-toggle .elementor-toggle-item:hover { box-shadow: var(--jt-shadow); }
.jt-faq .elementor-toggle .elementor-tab-title { border: 0 !important; padding: 20px 22px; font-weight: 700; font-size: 17px; }
.jt-faq .elementor-toggle .elementor-toggle-title { color: var(--jt-ink); }
.jt-faq .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-title { color: var(--jt-navy); }
.jt-faq .elementor-toggle .elementor-toggle-icon { color: var(--jt-orange-text); }
.jt-faq .elementor-toggle .elementor-tab-content { border: 0 !important; padding: 0 22px 20px; color: var(--jt-muted); }

/* Abschluss-Band */
.jt-cta { position: relative; overflow: hidden; border-radius: 24px; background: radial-gradient(500px 240px at 100% 0%, rgba(240,133,5,.35), transparent 70%), linear-gradient(135deg, var(--jt-navy), var(--jt-night)); box-shadow: var(--jt-shadow-lg); }
.jt-cta .elementor-heading-title { color: #fff; font-size: clamp(26px, 3.2vw, 38px); }
.jt-cta p { color: var(--jt-on-dark-muted); margin: 0; }

/* Kontakt/Büro */
.jt-val p { font-weight: 600; color: var(--jt-ink); margin: 0; }
.jt-office { background: #fff; border: 1px solid var(--jt-line); border-radius: var(--jt-radius); box-shadow: var(--jt-shadow); }

/* ---------- Scroll-Einblendung (nur mit JavaScript, ohne Bewegungsreduktion) ---------- */
.jt-js .jt-reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s var(--jt-ease), transform .8s var(--jt-ease); transition-delay: var(--jt-d, 0s); }
.jt-js .jt-reveal.is-in { opacity: 1; transform: none; }

/* ---------- Konto ---------- */
.jt-auth.form-card, .jt-espace { max-width: 640px; }
.form-card { background: #fff; border: 1px solid var(--jt-line); border-radius: 20px; box-shadow: var(--jt-shadow-lg); padding: 34px; display: grid; gap: 22px; }
.jt-tabs { display: grid; grid-template-columns: 1fr 1fr; padding: 5px; background: var(--jt-soft); border-radius: 999px; }
.jt-tabs button { font: inherit; font-weight: 700; font-size: 15px; padding: 11px; background: none !important; border: 0; border-radius: 999px; cursor: pointer; color: var(--jt-muted) !important; transition: background .25s, color .25s, box-shadow .25s; }
.jt-tabs button[aria-selected="true"] { background: #fff !important; color: var(--jt-navy) !important; box-shadow: var(--jt-shadow); }
.jt-form { display: grid; gap: 18px; }
.jt-form[hidden] { display: none; }
.jt-field { display: grid; gap: 6px; margin: 0; }
.jt-field label { font-weight: 600; font-size: 15px; color: var(--jt-ink); }
.jt-check { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; }
.jt-check input { margin-top: 4px; width: 18px; height: 18px; accent-color: var(--jt-navy); flex: none; }
.jt-roles { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.jt-roles legend { font-weight: 600; font-size: 15px; margin-bottom: 10px; padding: 0; color: var(--jt-ink); }
.jt-roles label { border: 1.5px solid var(--jt-line); border-radius: 14px; padding: 18px; cursor: pointer; display: grid; gap: 4px; position: relative; transition: border-color .2s, background .2s, transform .2s; }
.jt-roles label:hover { transform: translateY(-2px); }
.jt-roles input { position: absolute; opacity: 0; pointer-events: none; }
.jt-roles b { font-size: 18px; color: var(--jt-ink); }
.jt-roles span { font-size: 14px; color: var(--jt-muted); }
.jt-roles label:has(input:checked) { border-color: var(--jt-orange); background: var(--jt-orange-soft); }
.jt-roles label:has(input:focus-visible) { outline: 3px solid var(--jt-orange); outline-offset: 2px; }
.jt-hp { position: absolute !important; left: -9999px !important; }
.jt-info { padding: 14px 16px; border-radius: 12px; background: var(--jt-soft); font-size: 14px; color: var(--jt-muted); margin: 0; }
.jt-err { padding: 12px 16px; border-radius: 12px; background: #fdecea; color: var(--jt-danger); font-size: 15px; margin: 0; }
.jt-ok { padding: 14px 16px; border-radius: 12px; background: var(--jt-orange-soft); font-size: 15px; margin: 0; }
.jt-links { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 14px; margin: 0; }
.jt-links a { color: var(--jt-orange-text); font-weight: 600; text-decoration: none; }
button.jt-btn { display: inline-flex; justify-content: center; font-weight: 700; font-size: 15px; padding: 14px 22px; border-radius: 999px; border: 0; cursor: pointer; transition: transform .2s, box-shadow .2s; }
.jt-btn-primary { background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)) !important; color: var(--jt-ink) !important; box-shadow: 0 10px 24px rgba(240,133,5,.28); }
.jt-btn-navy { background: var(--jt-navy) !important; color: #fff !important; box-shadow: 0 10px 24px rgba(35,56,119,.25); }
button.jt-btn:hover { transform: translateY(-1px); }
.jt-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 16px 0 20px; }
.jt-card { border: 1px solid var(--jt-line); border-radius: 16px; padding: 20px; display: grid; gap: 4px; text-decoration: none !important; color: var(--jt-ink); background: #fff; box-shadow: var(--jt-shadow); transition: transform .3s var(--jt-ease), box-shadow .3s, border-color .3s; }
.jt-card:hover { transform: translateY(-4px); box-shadow: var(--jt-shadow-lg); border-color: var(--jt-orange); color: var(--jt-ink); }
.jt-card b { font-size: 18px; color: var(--jt-ink); }
.jt-card span { font-size: 14px; color: var(--jt-muted); }
.jt-card *, .jt-card:hover * { text-decoration: none !important; }

/* ---------- Formulare ---------- */
input[type="text"], input[type="email"], input[type="password"], input[type="url"], input[type="tel"], input[type="number"], select, textarea,
.select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple {
  width: 100%; font: inherit; font-size: 16px; padding: 12px 16px; border: 1.5px solid var(--jt-line) !important; border-radius: 12px !important; background: #fff; color: var(--jt-ink); min-height: 50px; transition: border-color .2s, box-shadow .2s;
}
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--jt-navy) !important; box-shadow: 0 0 0 4px rgba(35,56,119,.12); }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 24px; padding: 0; }
.select2-container--default .select2-selection--single .select2-selection__arrow { top: 12px; right: 10px; }
input[type="submit"], button[type="submit"]:not(.jt-btn):not([role="tab"]), .button, .wpcf7-submit {
  background: linear-gradient(135deg, var(--jt-orange), var(--jt-orange-2)); color: var(--jt-ink); border: 0; border-radius: 999px; padding: 14px 26px; font-weight: 700; font-size: 15px; cursor: pointer; box-shadow: 0 10px 24px rgba(240,133,5,.25); transition: transform .2s, box-shadow .2s;
}
input[type="submit"]:hover, .button:hover, .wpcf7-submit:hover { transform: translateY(-1px); color: var(--jt-ink); }

.job-manager-form { max-width: 860px; background: #fff; border: 1px solid var(--jt-line); border-radius: 20px; box-shadow: var(--jt-shadow-lg); padding: 36px; }
.job-manager-form fieldset { border: 0; padding: 0; margin: 0 0 22px; display: grid; gap: 6px; }
.job-manager-form fieldset .field, .job-manager-form fieldset .account-sign-in { width: 100% !important; float: none !important; }
.job-manager-form fieldset label { font-weight: 600; font-size: 15px; color: var(--jt-ink); }
.job-manager-form fieldset label small { font-weight: 400; color: var(--jt-muted); }
.job-manager-form .description, .job-manager-form small.description { font-size: 13px; color: var(--jt-muted); }
.job-manager-form h2 { font-size: 24px; margin: 30px 0 16px; padding-top: 24px; border-top: 1px solid var(--jt-line); }
.job-manager-form fieldset.fieldset-logged_in, .job-manager-form fieldset.fieldset-login_required { background: var(--jt-soft); border-radius: 14px; padding: 16px 18px; }
.job-manager-form fieldset.fieldset-logged_in .button { padding: 7px 14px; font-size: 13px; margin-left: 8px; box-shadow: none; }
.job-manager-message, .job-manager-info { background: var(--jt-orange-soft); border-radius: 12px; padding: 14px 16px; border: 0; }
.job-manager-error { background: #fdecea; color: var(--jt-danger); border-radius: 12px; padding: 14px 16px; border: 0; }
.wp-editor-wrap { border: 1.5px solid var(--jt-line); border-radius: 12px; overflow: hidden; }

/* Stellenliste */
.job_filters { background: #fff; border: 1px solid var(--jt-line); border-radius: 18px; padding: 22px; margin-bottom: 20px; box-shadow: var(--jt-shadow); }
.job_filters .search_jobs::before, .job_filters .search_jobs::after, ul.job_listings::before, ul.job_listings::after, ul.resumes::before, ul.resumes::after { display: none !important; }
.job_filters .search_jobs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 0; background: none; align-items: end; }
.job_filters .search_jobs > div { float: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; min-width: 0; }
.job_filters .search_jobs > div:empty { display: none; }
.job_filters .search_jobs .search_remote_position { grid-column: 1 / -1; display: flex; gap: 8px; align-items: center; }
.job_filters .search_jobs .search_submit { grid-column: 1 / -1; }
.job_filters .search_jobs .search_submit input { width: 100%; }
.job_filters .job_types { background: none; border: 0; padding: 14px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.job_filters .job_types li { border: 1px solid var(--jt-line); border-radius: 999px; padding: 6px 12px !important; font-size: 14px; }
.job_filters .showing_jobs { background: none; border: 0; padding: 10px 0 0; color: var(--jt-muted); font-size: 14px; }
ul.job_listings { border: 0; display: grid; gap: 12px; margin: 0; }
ul.job_listings li.job_listing, ul.job_listings li.no_job_listings_found { border: 1px solid var(--jt-line) !important; border-radius: 16px; background: #fff; box-shadow: var(--jt-shadow); transition: transform .3s var(--jt-ease), box-shadow .3s; overflow: hidden; }
ul.job_listings li.job_listing:hover { transform: translateY(-3px); box-shadow: var(--jt-shadow-lg); }
ul.job_listings li.job_listing a { padding: 20px 24px; color: var(--jt-ink); }
ul.job_listings li.job_listing .position h3 { font-weight: 700; font-size: 19px; color: var(--jt-ink); }
ul.job_listings li.job_listing .meta .job-type { font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: var(--jt-orange-soft); color: var(--jt-orange-text); }
ul.job_listings li.no_job_listings_found { padding: 26px; background: var(--jt-soft); }
.load_more_jobs, .load_more_resumes { border-radius: 999px; background: var(--jt-navy) !important; color: #fff !important; text-align: center; }
ul.resumes { border: 0; display: grid; gap: 12px; }
ul.resumes li.resume { border: 1px solid var(--jt-line) !important; border-radius: 16px; box-shadow: var(--jt-shadow); }

/* Dashboards */
.job-manager-jobs, .resume-manager-resumes, .job-alerts, #job-manager-job-dashboard table, #resume-manager-candidate-dashboard table {
  width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--jt-line); border-radius: 16px; overflow: hidden; font-size: 15px; box-shadow: var(--jt-shadow);
}
.job-manager-jobs th, .resume-manager-resumes th, .job-alerts th, #job-manager-job-dashboard th, #resume-manager-candidate-dashboard th { background: var(--jt-soft); color: var(--jt-ink); font-size: 13px; font-weight: 700; text-align: left; padding: 14px 16px; }
.job-manager-jobs td, .resume-manager-resumes td, .job-alerts td, #job-manager-job-dashboard td, #resume-manager-candidate-dashboard td { padding: 14px 16px; border-top: 1px solid var(--jt-line); }

/* Contact Form 7 */
.wpcf7-form p { margin: 0 0 16px; }
.wpcf7-form label { font-weight: 600; font-size: 15px; display: grid; gap: 6px; color: var(--jt-ink); }
.wpcf7-list-item-label { font-weight: 500; }
.wpcf7-radio .wpcf7-list-item { margin: 0 16px 0 0; }
.wpcf7-response-output { border-radius: 12px; }

/* ---------- Mobil ---------- */
@media (max-width: 1024px) {
  .jt-checklist ul { grid-template-columns: 1fr 1fr; }
  .jt-steps::before { display: none; }
  .jt-rings { opacity: .45; }
}
@media (max-width: 767px) {
  .jt-checklist ul, .jt-cards, .jt-roles { grid-template-columns: 1fr; }
  .job_filters .search_jobs { grid-template-columns: 1fr; }
  .form-card, .job-manager-form { padding: 22px 18px; }
  .jt-facts .jt-facts-body p { grid-template-columns: 1fr; gap: 2px; }
  .site-header .custom-logo { max-height: 46px; }
  .jt-slider { padding-bottom: 96px !important; }
  .jt-arrows { display: none; }
  .jt-rings { width: 360px; height: 360px; right: -180px; top: 22%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .jt-js .jt-reveal, .jt-js .jt-slide > * { opacity: 1 !important; transform: none !important; }
}

/* ---------- Schriftzug-Logo (Rot/Gold/Schwarz) im Kopf, 18.10.2026 ---------- */
.site-header .custom-logo { max-height: 62px; width: auto; }
.jt-scrolled .site-header .custom-logo { max-height: 50px; }
.ast-site-identity { padding-block: 8px; }
@media (max-width: 767px) { .site-header .custom-logo { max-height: 48px; } }

/* ==========================================================================
   Menü v2 (18.10.2026): Desktop-Untermenüs als Karten mit Symbol + Text,
   Handy als seitliches Menü (Astra „off-canvas"), saubere Abstände.
   ========================================================================== */

/* --- Desktop: Hauptpunkte --- */
.main-header-menu > .menu-item > .menu-link { border-radius: 10px; transition: color .2s, background .2s; }
.main-header-menu > .menu-item:hover > .menu-link { background: var(--jt-soft); }
.main-header-menu > .menu-item > .menu-link::after { bottom: 10px; left: 16px; right: 16px; }
.main-header-menu .ast-header-navigation-arrow, .main-header-menu .dropdown-menu-toggle { transition: transform .25s var(--jt-ease); }
.main-header-menu > .menu-item:hover .ast-header-navigation-arrow, .main-header-menu > .menu-item:hover .dropdown-menu-toggle { transform: rotate(180deg); }

/* --- Desktop: Untermenü als Karte --- */
@media (min-width: 922px) {
  .main-header-menu .sub-menu {
    min-width: 360px; padding: 10px; border-radius: 18px; border: 1px solid var(--jt-line) !important;
    box-shadow: 0 2px 6px rgba(15,23,48,.06), 0 30px 60px rgba(15,23,48,.16); top: calc(100% - 6px);
  }
  .main-header-menu .sub-menu::before {
    content: ""; position: absolute; top: -7px; left: 32px; width: 14px; height: 14px; background: #fff;
    border-left: 1px solid var(--jt-line); border-top: 1px solid var(--jt-line); transform: rotate(45deg);
  }
  .main-header-menu .sub-menu .jt-mi > .menu-link {
    display: grid !important; grid-template-columns: 42px 1fr; column-gap: 14px; row-gap: 1px; align-items: center;
    padding: 10px 12px !important; border-radius: 12px; white-space: normal;
  }
  .main-header-menu .sub-menu .jt-mi:hover > .menu-link { padding-left: 12px !important; background: var(--jt-soft); }
}
.jt-mi-ico {
  grid-row: span 2; width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center;
  background: var(--jt-soft); color: var(--jt-navy); transition: background .2s, color .2s, transform .25s var(--jt-ease);
}
.jt-mi:hover .jt-mi-ico { background: var(--jt-orange-soft); color: var(--jt-orange-text); transform: scale(1.06); }
.jt-mi .menu-text { font-weight: 700; font-size: 15px; color: var(--jt-ink); line-height: 1.3; align-self: end; }
.jt-mi-desc { grid-column: 2; font-size: 13px; font-weight: 400; color: var(--jt-muted); line-height: 1.35; align-self: start; }

/* --- Hamburger-Knopf --- */
.ast-mobile-menu-trigger-minimal, .menu-toggle.main-header-menu-toggle {
  width: 46px; height: 46px; border-radius: 12px !important; border: 1.5px solid var(--jt-line) !important;
  background: #fff !important; color: var(--jt-navy) !important; display: inline-grid !important; place-items: center; padding: 0 !important;
}
.ast-mobile-menu-trigger-minimal:hover { border-color: var(--jt-navy) !important; }
.ast-mobile-svg { fill: var(--jt-navy) !important; width: 22px; height: 22px; }

/* --- Handy: seitliches Menü --- */
.ast-mobile-popup-drawer .ast-mobile-popup-overlay { background: rgba(13,22,54,.55); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
  background: #fff !important; width: min(88vw, 390px) !important; max-width: none; box-shadow: -20px 0 60px rgba(13,22,54,.25);
  display: flex; flex-direction: column;
}
.ast-mobile-popup-drawer .ast-mobile-popup-header { padding: 16px 18px 6px; position: relative; }
.ast-mobile-popup-drawer .ast-mobile-popup-header::before {
  content: "Menu"; position: absolute; left: 22px; top: 50%; transform: translateY(-30%);
  font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--jt-muted);
}
.ast-mobile-popup-drawer .menu-toggle-close {
  width: 42px; height: 42px; border-radius: 12px; border: 1.5px solid var(--jt-line) !important; background: #fff !important;
  color: var(--jt-navy) !important; display: grid; place-items: center; padding: 0 !important;
}
.ast-mobile-popup-drawer .menu-toggle-close .ast-mobile-svg { width: 18px; height: 18px; }
.ast-mobile-popup-drawer .ast-mobile-popup-content { padding: 6px 18px 28px; flex: 1; display: flex; flex-direction: column; gap: 6px; }
.ast-mobile-popup-drawer .main-header-menu { border: 0 !important; }
.ast-mobile-popup-drawer .main-header-menu > .menu-item { border: 0 !important; border-bottom: 1px solid var(--jt-line) !important; }
.ast-mobile-popup-drawer .main-header-menu > .menu-item > .menu-link {
  font-size: 18px; font-weight: 700; color: var(--jt-ink) !important; padding: 15px 4px !important; background: none !important; border: 0 !important;
}
.ast-mobile-popup-drawer .main-header-menu > .menu-item > .menu-link::after { display: none; }
.ast-mobile-popup-drawer .main-header-menu > .current-menu-item > .menu-link { color: var(--jt-orange-text) !important; }
.ast-mobile-popup-drawer .ast-menu-toggle {
  width: 38px; height: 38px; top: 9px !important; right: 0 !important; border-radius: 10px !important; background: var(--jt-soft) !important;
  color: var(--jt-navy) !important; border: 0 !important; display: grid; place-items: center; padding: 0 !important;
}
.ast-mobile-popup-drawer .ast-submenu-expanded > .ast-menu-toggle { background: var(--jt-orange-soft) !important; color: var(--jt-orange-text) !important; }
.ast-mobile-popup-drawer .sub-menu { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 0 12px !important; margin: 0 !important; transform: none !important; }
.ast-mobile-popup-drawer .sub-menu::before { display: none; }
.ast-mobile-popup-drawer .sub-menu .jt-mi { border: 0 !important; }
.ast-mobile-popup-drawer .sub-menu .jt-mi > .menu-link {
  display: grid !important; grid-template-columns: 40px 1fr; column-gap: 12px; align-items: center;
  padding: 9px 8px !important; border-radius: 12px; border: 0 !important; background: none !important;
}
.ast-mobile-popup-drawer .sub-menu .jt-mi > .menu-link:active { background: var(--jt-soft) !important; }
.ast-mobile-popup-drawer .jt-mi-ico { width: 40px; height: 40px; }
.ast-mobile-popup-drawer .jt-mi .menu-text { font-size: 15px; }
.ast-mobile-popup-drawer .ast-header-html, .ast-mobile-popup-drawer .ast-header-button-1 { padding: 0 !important; margin-top: 10px; }
.ast-mobile-popup-drawer .ast-header-html:first-of-type { margin-top: auto; padding-top: 18px !important; }
.ast-mobile-popup-drawer .jt-head-login, .ast-mobile-popup-drawer .ast-header-button-1 .ast-custom-button {
  display: flex !important; width: 100%; justify-content: center; padding: 14px 18px !important; font-size: 16px !important; border-radius: 14px !important;
}
.ast-mobile-popup-drawer .ast-header-button-1 .ast-button-wrap, .ast-mobile-popup-drawer .ast-header-button-1 .menu-link { width: 100%; display: block; }
/* Menü v2, Korrektur: Astra-Pfeil in Untermenüs aus, Titel ist reiner Text im Link */
.jt-mi > .menu-link > .ast-icon, .jt-mi > .menu-link > .icon-arrow { display: none !important; }
.jt-mi > .menu-link { font-weight: 700 !important; font-size: 15px !important; color: var(--jt-ink) !important; line-height: 1.3; }
.jt-mi > .menu-link .jt-mi-desc { font-weight: 400; }

/* Menü v2: mittlere Breiten (922–1400 px) kompakter, damit alles in eine Zeile passt.
   Astra schaltet erst unter 922 px auf das Handymenü (fest im Astra-CSS, nicht umstellen). */
@media (min-width: 922px) and (max-width: 1400px) {
  .site-header .custom-logo { max-height: 40px; }
  .main-header-menu > .menu-item > .menu-link { padding-inline: 9px !important; font-size: 14px; }
  .main-header-menu > .menu-item > .menu-link::after { left: 9px; right: 9px; }
  .jt-head-login { padding: 8px 12px; font-size: 14px; }
  .ast-header-button-1 .ast-custom-button { padding: 10px 14px !important; font-size: 14px !important; }
  #masthead .ast-builder-grid-row { column-gap: 12px; }
}
@media (min-width: 922px) and (max-width: 1080px) {
  .jt-head-login { display: none; }
}
/* Menü v2, Handy: Astra-Hintergrund und Zeilenhöhe der Einträge zurücksetzen */
.ast-mobile-popup-drawer .main-header-menu, .ast-mobile-popup-drawer .main-header-menu .menu-item { background: transparent !important; }
.ast-mobile-popup-drawer .main-header-menu > .menu-item > .menu-link { line-height: 1.3 !important; min-height: 0; padding: 16px 48px 16px 4px !important; }
.ast-mobile-popup-drawer .ast-menu-toggle { top: 50% !important; transform: translateY(-50%); }
.ast-mobile-popup-drawer .main-header-menu > .menu-item { position: relative; }
.ast-mobile-popup-drawer .main-header-menu > .menu-item.ast-submenu-expanded > .ast-menu-toggle,
.ast-mobile-popup-drawer .main-header-menu > .menu-item-has-children > .ast-menu-toggle { top: 26px !important; transform: translateY(-50%); }
.ast-mobile-popup-drawer .sub-menu .jt-mi > .menu-link { line-height: 1.3 !important; }

/* Menü v2: Hauptmenü nie umbrechen */
@media (min-width: 922px) {
  .main-header-menu { flex-wrap: nowrap !important; }
  .main-header-menu > .menu-item > .menu-link { white-space: nowrap; }
  #masthead .site-header-primary-section-center { flex: 1 1 auto; justify-content: center; min-width: 0; }
}
