/* Rostify EUROCONTROL guidelines (01.10.2026) — on top of vp.css and faq.css (hero, contents card, sticky band heads). Prefix gl- */
.gl{--gl-full:light-dark(#1F4F53,#86C3C4);--gl-full-bg:light-dark(#E3EFEE,#16302F);--gl-part:light-dark(#7A5208,#F2C46B);--gl-part-bg:light-dark(#FCF1D8,#3A2F14)}
.gl-h1{max-width:16ch}

/* contents card foot: disclaimer + link to the guidelines */
.gl-note{justify-content:space-between;line-height:1.45}
.gl-note span{max-width:44ch}
.gl-note a{font-weight:600;color:var(--teal);text-decoration:none;white-space:nowrap}
.gl-note a:hover{text-decoration:underline;text-underline-offset:4px}

/* status legend under the card */
.gl-legend{display:grid;gap:10px;margin:18px 0 0;padding:0}
.gl-legend div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:baseline}
.gl-legend dt{margin:0}
.gl-legend dd{margin:0;font-size:14px;line-height:1.45;color:var(--ink2)}

/* status chip */
.gl-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px 4px 8px;border-radius:999px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.gl-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.gl-chip--full{background:var(--gl-full-bg);color:var(--gl-full)}
.gl-chip--part{background:var(--gl-part-bg);color:var(--gl-part)}
.gl-chip--part::before{background:linear-gradient(90deg,currentColor 50%,transparent 50%);box-shadow:inset 0 0 0 1.5px currentColor}

/* band head tally */
.gl-tally{margin:18px 0 0;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--teal)}

/* rows */
.gl-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.gl-row{display:grid;gap:10px;padding:24px 0 26px;border-bottom:1px solid var(--rule);scroll-margin-top:84px}
.gl-top{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:baseline}
.gl-no{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--teal)}
.gl-t{margin:0;font-stretch:88%;font-weight:650;font-size:clamp(19px,1.6vw,24px);line-height:1.22;letter-spacing:-.005em;text-wrap:balance}
.gl-g,.gl-r{margin:0 0 0 58px;max-width:66ch}
.gl-g{font-size:15px;line-height:1.55;color:var(--mute)}
.gl-r{font-size:17px;line-height:1.62;color:var(--ink2)}
.gl-k{display:block;margin-bottom:3px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.gl-r .gl-k{color:var(--teal)}
.gl-more{margin:4px 0 0 58px;justify-self:start}

/* source band */
.gl-src{padding-top:clamp(40px,4.5vw,64px);padding-bottom:clamp(40px,4.5vw,64px);border-top:1px solid var(--rule)}
.gl-src-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,96px);align-items:start}
.gl-src .v4-ch{margin:0}
.gl-src-t{margin:0;max-width:72ch;font-size:15px;line-height:1.6;color:var(--ink2)}
.gl-src-l{display:flex;flex-wrap:wrap;gap:10px 22px;margin:14px 0 0}
.gl-src-l a{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--teal);text-decoration:none}
.gl-src-l a:hover{text-decoration:underline;text-underline-offset:4px}
.gl-src-n{margin:14px 0 0;font-size:13.5px;line-height:1.5;color:var(--mute)}

@media (max-width:900px){
  .gl-src-grid{grid-template-columns:minmax(0,1fr);gap:14px}
}
@media (max-width:640px){
  .gl-top{grid-template-columns:36px minmax(0,1fr);row-gap:8px}
  .gl-top .gl-chip{grid-column:2;justify-self:start}
  .gl-g,.gl-r,.gl-more{margin-left:0}
  .gl-r{font-size:16px}
  .gl-legend div{grid-template-columns:minmax(0,1fr)}
  .gl-note{flex-direction:column;align-items:flex-start}
}
@media print{
  .gl-row{break-inside:avoid}
}
