@layer vendor, site;
@layer site {
/* v975 (Wunsch NordFly): Voraussetzungen – Kurzfassung sichtbar, Begründungen aufklappbar.
   Sichtbar bleiben die Regel selbst und harte Hinweise (z. B. GA zählt nicht, Löschung ohne Erstflug,
   Team-/Leitungsfunktion). Alle übrigen Absätze stehen unverändert im aufklappbaren Bereich.
   Schriftgrößen wie bisher; der Schalter nutzt die Größe des Links „Detaillierte Erklärung dazu“ (.9rem). */
.requirements-page .requirement-more,
.requirements-page .requirements-policy-more{margin:4px 0 0}
.requirements-page .requirement-more>summary,
.requirements-page .requirements-policy-more>summary{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 0;list-style:none;cursor:pointer;
  color:#0789df;font-size:.9rem;font-weight:850;
  border-radius:8px;
}
.requirements-page .requirement-more>summary::-webkit-details-marker,
.requirements-page .requirements-policy-more>summary::-webkit-details-marker{display:none}
.requirements-page .requirement-more>summary:hover,
.requirements-page .requirements-policy-more>summary:hover{color:#056cab}
.requirements-page .requirement-more>summary:focus-visible,
.requirements-page .requirements-policy-more>summary:focus-visible{outline:2px solid #18a7e6;outline-offset:3px}
.requirements-page .requirement-more>summary svg,
.requirements-page .requirements-policy-more>summary svg{flex:none;transition:transform .2s cubic-bezier(.23,1,.32,1)}
.requirements-page .requirement-more[open]>summary svg,
.requirements-page .requirements-policy-more[open]>summary svg{transform:rotate(180deg)}
.requirements-page .requirement-more .nf-more-body{padding:6px 0 2px;border-left:2px solid #d6e6f3;padding-left:16px;margin-top:4px}
.requirements-page .requirements-policy-more .nf-more-body{padding:8px 0 2px 18px;border-left:2px solid #d6e6f3;margin-top:6px}
.requirements-page .requirement-more[open] .nf-more-body,
.requirements-page .requirements-policy-more[open] .nf-more-body{animation:nf-more-in .24s cubic-bezier(.23,1,.32,1)}
@keyframes nf-more-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
/* Lernlink und „Detaillierte Erklärung“ bleiben unter dem Schalter */
.requirements-page .requirement-detail .requirement-more+.requirements-learning-link{margin-top:12px}
.requirements-page .requirement-detail .requirement-more+.requirement-detail-more{margin-top:12px}
/* Abschlussabschnitt: beide Begründungen nebeneinander, da sie jetzt kurz sind */
@media (min-width:981px){
  .requirements-page .requirements-va-policy-section .requirements-policy-container{max-width:var(--max)}
  .requirements-page .requirements-va-policy-section .requirements-policy-content{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);gap:clamp(32px,4vw,64px);max-width:none;align-items:start}
  .requirements-page .requirements-va-policy-section .requirements-policy-divider{height:auto;align-self:stretch;margin:0}
  .requirements-page .requirements-va-policy-section .requirements-policy-heading{margin-bottom:34px}
  .requirements-page .requirements-policy-team h3{font-size:clamp(1.3rem,1.8vw,1.6rem)}
}
/* Voraussetzungen als Kachelraster: Titel + Kurzfassung sichtbar, alles Weitere über „Gründe und Details“.
   Mit JavaScript öffnet der Schalter ein Fenster mit dem vollständigen Text (wie die Eventbeschreibung);
   ohne JavaScript klappt der Text in der Kachel auf. */
.requirements-page .requirements-rules-section .requirements-container{max-width:var(--max)}
.requirements-page .requirements-rules-section .requirements-rules-heading{margin-bottom:30px}
.requirements-page .requirements-rules-section .requirements-detail-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
/* v980 (Wunsch NordFly): Icon links neben dem Kurztitel (Variante A: Icon oben an der ersten Titelzeile),
   Kurzfassung und Schalter darunter über die volle Kartenbreite. Der vollständige Titel steht in data-full
   und erscheint im Fenster und beim Drucken. Gilt auf allen Breiten. */
.requirements-page .requirements-rules-section .requirement-detail{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:16px;row-gap:0;align-items:start;padding:22px 22px 12px}
.requirements-page .requirements-rules-section .requirement-detail>div:not(.requirement-icon){display:contents}
.requirements-page .requirements-rules-section .requirement-detail .requirement-icon{grid-column:1;grid-row:1;width:46px;height:46px;border-radius:14px}
.requirements-page .requirements-rules-section .requirement-detail .requirement-icon .nfi{font-size:36px}
.requirements-page .requirements-rules-section .requirement-detail h3{grid-column:2;grid-row:1;align-self:center;margin:0}
.requirements-page .requirements-rules-section .requirement-benefit{grid-column:1/-1;grid-row:2;align-self:start;margin:16px 0 12px;color:#3a4d63;font-weight:400} /* v1000/v1001: neutral statt Cyan-Blau und nicht fett (Rückmeldung: zu viel Blau, nur Überschriften fett) */
.requirements-page .requirements-rules-section .requirement-more{grid-column:1/-1;grid-row:3;margin:0}
/* v982 (Wunsch NordFly): „Gründe und Details“ im Stil des Primärbuttons („Alle Voraussetzungen“):
   gleicher Verlauf, weiße Schrift, Pillenform, Schatten und Anheben beim Überfahren. Schriftgröße wie bisher (.9rem).
   Etwas niedriger als .btn (40 statt 44 px) und mit kleinerem Schatten, weil acht davon nebeneinander stehen. */
.requirements-page .requirements-rules-section .requirement-detail{padding-bottom:18px}
.requirements-page .requirements-rules-section .requirement-more>summary{
  min-height:40px;padding:0 16px 0 18px;border:0;border-radius:999px;
  background:linear-gradient(110deg,#0561ad,#0a7bc3 55%,#2a9fe0);color:#fff;
  box-shadow:0 8px 20px rgba(7,137,223,.24);
  transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .22s cubic-bezier(.23,1,.32,1)}
.requirements-page .requirements-rules-section .requirement-more>summary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 12px 26px rgba(7,137,223,.32)}
.requirements-page .requirements-rules-section .requirement-more>summary:active{transform:scale(.97)}
.requirements-page .requirements-rules-section .requirement-more>summary:focus-visible{outline:2px solid #18a7e6;outline-offset:3px}
@media (max-width:1180px){.requirements-page .requirements-rules-section .requirements-detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.requirements-page .requirements-rules-section .requirements-detail-list{grid-template-columns:1fr}}
/* Kurzfassungen einer Reihe beginnen auf gleicher Höhe, auch wenn ein Titel ein- und der andere zweizeilig ist */
@media (min-width:641px){.requirements-page .requirements-rules-section .requirement-detail{grid-template-rows:minmax(52px,auto) 1fr auto}}
/* Mit JavaScript öffnet der Schalter ein Fenster: Pfeil zeigt nach rechts statt nach unten */
.requirements-page .requirements-rules-section .requirement-more>summary[aria-haspopup] svg{transform:rotate(-90deg)}
.requirements-page .requirements-rules-section .requirement-more>summary[aria-haspopup]:hover svg{transform:rotate(-90deg) translateY(2px)}
/* Checkliste: drei Spalten auf breiten Bildschirmen, damit der Abschnitt in einen Bildschirm passt */
@media (min-width:1181px){
  .requirements-page .requirements-check-card{max-width:var(--max);margin-top:34px;padding:28px 30px}
  .requirements-page .requirements-checklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .requirements-page .requirements-check-item{padding:16px 16px}
}
/* v978 (Wunsch NordFly): alle Abschnitte an derselben linken Kante wie Navigation, Hero und „Klare Regeln“ –
   „Mehr als nur eine Mitgliedschaft“ war auf 1120 px begrenzt, die Checklisten-Überschrift auf 1050 px zentriert. */
.requirements-page .requirements-values-container{max-width:var(--max)}
.requirements-page .requirements-check-heading{max-width:930px;margin-left:0;margin-right:0}
/* v987 (Wunsch NordFly): Abschnitt am Ende in zwei gleichwertige Spalten geteilt – links „Mitgliedschaften in
   virtuellen Airlines“, rechts „Team- & Leitungsfunktionen“, jeweils mit eigenem Kicker und gleich großer Überschrift (h2). */
.requirements-page .requirements-va-policy-section .requirements-policy-block>.requirements-policy-heading{max-width:none;margin-bottom:28px}
.requirements-page .requirements-va-policy-section .requirements-policy-block>.requirements-policy-heading h2{margin:16px 0 0;font-size:clamp(1.7rem,2.5vw,2.35rem);line-height:1.14;letter-spacing:-.03em;text-wrap:balance}
.requirements-page .requirements-va-policy-section .requirements-policy-block>.requirements-policy-heading>p{margin:14px 0 0}
@media (min-width:981px){.requirements-page .requirements-va-policy-section .requirements-policy-content{align-items:start}}
/* v989 (Wunsch NordFly): Kein Ende ohne Weg – der Lernlink „Grundlagen erst noch aneignen?“ steht zusätzlich
   in der Ergebnisleiste der Checkliste (rechts neben dem Stand), damit er auch ohne geöffnetes Fenster sichtbar ist.
   Sind alle Punkte erfüllt, blendet requirements-checklist.js ihn aus. */
.requirements-page .requirements-check-foot{display:flex;align-items:center;gap:12px 28px;margin-top:22px;padding:15px 22px;border-radius:14px;background:#edf7fd}
.requirements-page .requirements-check-foot .requirements-check-result{flex:1 1 auto;margin:0;padding:0;background:none;text-align:left}
.requirements-page .requirements-check-help{flex:0 1 auto;margin:0;color:#34617e;font-size:.95rem;line-height:1.5;text-align:right}
.requirements-page .requirements-check-help a{color:#05609c;font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.requirements-page .requirements-check-help a:hover{color:#0789df}
.requirements-page .requirements-check-foot.is-complete{background:#e8f8ef}
.requirements-page .requirements-check-foot.is-complete .requirements-check-help{display:none}
@media (max-width:900px){.requirements-page .requirements-check-foot{flex-direction:column;align-items:stretch;text-align:center}
  .requirements-page .requirements-check-foot .requirements-check-result,.requirements-page .requirements-check-help{text-align:center}
  .requirements-page .requirements-check-help a{white-space:normal}}
/* Fenster */
.nf-req-modal{width:min(760px,calc(100vw - 32px));max-height:calc(100svh - 48px);padding:0;border:0;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 30px 80px rgba(3,18,37,.35);overflow:hidden}
.nf-req-modal::backdrop{background:rgba(2,10,22,.62);backdrop-filter:blur(3px)}
.nf-req-modal[open]{display:flex;flex-direction:column;animation:nf-req-in .24s cubic-bezier(.23,1,.32,1)}
@keyframes nf-req-in{from{transform:translateY(8px) scale(.98)}to{transform:none}}
/* v984 (Wunsch NordFly): Fensterkopf wie die Kacheln – Icon neben dem Titel, Kurzfassung darunter ab der linken Kante.
   Nur der Titel hält Abstand zum Schließen-Knopf; die Kurzfassung liegt darunter und nutzt die volle Breite. */
.nf-req-modal-head{display:grid;grid-template-columns:55px minmax(0,1fr);column-gap:18px;row-gap:14px;align-items:center;padding:28px 30px 20px;border-bottom:1px solid #e1ebf3}
.nf-req-modal-head>div:not(.requirement-icon){display:contents}
.nf-req-modal-head .requirement-icon{grid-column:1;grid-row:1;width:55px;height:55px;border-radius:16px}
.nf-req-modal-head h2{grid-column:2;grid-row:1;margin:0;padding-right:34px;font-size:1.25rem;line-height:1.28;letter-spacing:-.02em;color:var(--ink)}
.nf-req-modal-head p{grid-column:1/-1;grid-row:2;margin:0;color:#0879b8;font-weight:800;line-height:1.55;font-size:1rem}
.nf-req-modal-body{padding:20px 30px 28px;overflow:auto}
.nf-req-modal-body p{margin:0 0 11px;color:var(--muted);line-height:1.72}
.nf-req-modal-body p:last-child{margin-bottom:0}
.nf-req-modal-body strong{color:#213a58}
.nf-req-modal-body .requirements-learning-link{margin-top:16px;padding-top:14px;border-top:1px solid #e0eaf2}
.nf-req-modal-body .requirements-learning-link a{color:#0789df;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.nf-req-modal-body .requirement-detail-more{display:flex;margin-top:16px;padding-top:14px;border-top:1px solid #e1ebf2}
.nf-req-modal-body .requirement-detail-more a{display:inline-flex;align-items:center;gap:9px;color:#0789df;font-size:.9rem;font-weight:850}
.nf-req-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#eef4fa;color:#0b1d34;font-size:1.35rem;line-height:1;cursor:pointer;transition:transform .16s ease-out,background-color .2s ease}
.nf-req-close svg{display:block}
.nf-req-close:hover{background:#e1ecf6}
.nf-req-close:active{transform:scale(.95)}
.nf-req-close:focus-visible{outline:2px solid #18a7e6;outline-offset:2px}
@media (max-width:640px){.nf-req-modal-head{padding:22px 20px 16px;column-gap:14px}.nf-req-modal-head h2{padding-right:38px}.nf-req-modal-body{padding:16px 20px 22px}}
@media (prefers-reduced-motion:reduce){
  .requirements-page .requirement-more[open] .nf-more-body,
  .requirements-page .requirements-policy-more[open] .nf-more-body{animation:none}
  .requirements-page .requirement-more>summary svg,.requirements-page .requirements-policy-more>summary svg{transition:none}
  .nf-req-modal[open]{animation:none}
}
@media print{
  .requirements-page .requirement-more>summary,.requirements-page .requirements-policy-more>summary{display:none}
}
}
/* v982: Dunkelmodus – Schalter bleibt der Primärbutton (gleicher Verlauf wie im hellen Modus).
   Bewusst außerhalb der Ebenen, weil die erzeugte dark-mode.css (Ebene „theme“) sonst gewinnt; gen-dark überspringt [data-theme]-Regeln. */
html[data-theme="dark"] .requirements-page .requirements-rules-section .requirement-more>summary,
html[data-theme="dark"] .requirements-page .requirements-rules-section .requirement-more>summary:hover{color:#fff;border:0;background-color:transparent;background-image:linear-gradient(110deg,#0561ad,#0a7bc3 55%,#2a9fe0)}
